UTC-Time-String-Formatspezifikation
Die Zeichenfolge eines TwinCAT UTC-Time-Strings hat folgenden Aufbau: ‘UT#YYYY-MM-DD-hh:mm:ss.nnnnnnnnn|LFC|A[A]'.
Variable | Darstellung | Wertebereich | Beschreibung |
---|---|---|---|
Prefix | UT# | ‘UT#‘ | Konstanter Präfix. |
Year | YYYY | ‘1970‘..‘2106‘ | Jahr (4 Dezimalstellen). |
Month | MM | ‘01‘..‘12‘ | Monat (2 Dezimalstellen). |
Day | DD | ‘01‘..‘31‘ | Tag (2 Dezimalstellen). |
Hour | hh | ‘00‘..‘23‘ | Stunde (2 Dezimalstellen). |
Minute | mm | ‘00‘..‘59‘ | Minute (2 Dezimalstellen). |
Second | ss | ‘00‘..‘59‘ | Sekunde (2 Dezimalstellen). |
Nanosecond | nnnnnnnnn | ‘000000000‘..‘999999999‘ | Nanosekunden: (9 Dezimalstellen). |
LeapSecondsKnown | L | ‘0‘..‘1‘ | Qualität der Schaltsekunden ('0':=Unbekannt, '1':=Bekannt). |
ClockFailure | F | ‘0‘..‘1‘ | Qualität des Zeitgebers ('0':=Gut, '1':=Fehlerhaft). |
ClockNotSynchronized | C | ‘0‘..‘1‘ | Qualität der Uhrzeitsynchronisierung ('0':=Synchron, '1':=Nicht synchron). |
Accuracy | A[A] | ‘0‘..‘31‘ | Genauigkeit der Zeitinformation (Präzision des Bruchteils der Sekunde). Max. Anzahl der signifikanten Bits in der T_UtcTime.fractionOfSecond-Komponente (1 oder 2 Dezimalstellen). |
Beispiele
Die folgende Tabelle enthält Zeichenfolgen und die Werte der Komponenten nach einer Konvertierung in den strukturierten Typ: T_UtcTime.
STRING(39) | T_UtcTime | Beschreibung |
---|---|---|
'UT#1970-01-01-00:00:00.000000000|000|0' | STRUCT(0) | Alle Komponenten haben den Wert: 0. Datum: 1. Januar 1970. Uhrzeit: 00:00:00 Uhr. Sekundenbruchteil: 0 ms. Präzision: 0 Bit. |
'UT#2018-01-02-03:04:05.125000000|010|3' | STRUCT(secondSinceEpoch:=DT#2018-01-02-03:04:05, fractionOfSecond:=[4,0,0], quality:=(ClockFailure:=1, Accuracy3:=1, Accuracy4:=1)) | Datum: 2. Januar 2018. Uhrzeit: 03:04:05 Uhr. Sekundenbruchteil: 125000000 ns := 125 ms. Zeitgeber meldet einen Fehler. Präzision: 3 Bit. Alle anderen Komponenten haben den Wert: 0. |
'UT#2018-01-02-03:04:05.750000000|001|24' | STRUCT(secondSinceEpoch:=DT#2018-01-02-03:04:05, fractionOfSecond:=[3,0,0], quality:=(ClockNotSynchronized:=1, Accuracy0:=1, Accuracy1:=1)) | Datum: 2. Januar 2018. Uhrzeit: 03:04:05 Uhr. Sekundenbruchteil: 750000000 ns := 750 ms. Zeitgeber ist nicht synchronisiert. Präzision: 24 Bit. Alle anderen Komponenten haben den Wert: 0. |