String_To_BinaryTime6

Konvertiert die als String formatierte Binary-Time-Zeitinformation in die Komponenten des strukturierten Typs T_BinaryTime. Die Zeichenfolge des zu konvertierenden Strings ist vorgegeben und hat folgenden Aufbau: ‘BT#[YYYY-MM-DD-]hh:mm:ss[.n[n[n]]]‘. Sie entspricht der TwinCAT Binary-Time-String-Formatspezifikation.

Namensraum: Tc3_Collections
Bibliothek: Tc3_Collections (Tc3_Collections.compiled-library)

Syntax

FUNCTION String_To_BinaryTime6 : T_BinaryTime
VAR_INPUT
    in     : STRING(26);
END_VAR
VAR_OUTPUT
    bError : BOOL;
END_VAR

String_To_BinaryTime6 1: Eingänge

Name

Typ

Beschreibung

in

STRING(26)

Die zu konvertierende Zeitinformation als Binary-Time-String.

String_To_BinaryTime6 2: Ausgänge

Name

Typ

Beschreibung

bError

BOOL

Dieser Ausgang ist „TRUE“ wenn die Zeichenfolge des Eingangsstrings nicht fehlerfrei konvertiert werden konnte. In diesem Fall liefert die Funktion den Rückgabewert „STRUCT(timeOfDay := TOD#00:00:00, day := 0)“ zurück.

String_To_BinaryTime6 3: Rückgabewert

Name

Typ

Beschreibung

String_To_BinaryTime6

T_BinaryTime

Konvertierte Zeitinformation als Binary-Time-Struktur.

Beispiel

METHOD BinaryTime6_ToFrom_String : BOOL
VAR_INPUT
    fbIED  : REFERENCE TO FB_IED;
END_VAR
VAR
    tValue : T_BinaryTime;
    sValue : STRING;
END_VAR
IF NOT __ISVALIDREF(fbIED) THEN
    RETURN;
END_IF

tValue := String_To_BinaryTime6('BT#01:02:03');
sValue := BinaryTime6_To_String(tValue); (* sValue := 'BT#1984-01-01-01:02:03' *)
IF fbIED.Relay.LLN0.brcb1.TimeOfEntry.sValue <> sValue THEN
    tValue := fbIED.Relay.LLN0.brcb1.TimeOfEntry.tValue;
END_IF

tValue := String_To_BinaryTime6('BT#04:05:06.7');
sValue := BinaryTime6_To_String(tValue);(* sValue := 'BT#1984-01-01-04:05:06.700' *)
IF fbIED.Relay.LLN0.brcb2.TimeOfEntry.sValue <> sValue THEN
    tValue := fbIED.Relay.LLN0.brcb2.TimeOfEntry.tValue;
END_IF

tValue := String_To_BinaryTime6('BT#2017-01-18-11:12:13');
sValue := BinaryTime6_To_String(tValue);(* sValue := 'BT#2017-01-18-11:12:13' *)
IF fbIED.Relay.LLN0.brcb3.TimeOfEntry.sValue <> sValue THEN
    tValue := fbIED.Relay.LLN0.brcb3.TimeOfEntry.tValue;
END_IF

BinaryTime6_ToFrom_String := TRUE;