String_To_AcsiQuality

Konvertiert die als String formatierte Quality-Information in die Komponenten des strukturierten Typs ST_AcsiQuality. Die Zeichenfolge des zu konvertierenden Strings ist vorgegeben und hat folgenden Aufbau: 'Q#vv|ORBSFDCA|s|TB'. Sie entspricht der TwinCAT Quality-String-Formatspezifikation.

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

Syntax

FUNCTION String_To_AcsiQuality : ST_AcsiQuality
VAR_INPUT
    in     : STRING(18) := 'Q#00|00000000|0|00';
END_VAR
VAR_OUTPUT
    bError : BOOL;
END_VAR

String_To_AcsiQuality 1: Eingänge

Name

Typ

Beschreibung

in

STRING(18)

Die zu konvertierende Information als Quality-String.

String_To_AcsiQuality 2: Ausgänge

Name

Typ

Beschreibung

bError

BOOL

Dieser Ausgang ist TRUE wenn die Zeichenfolge des Eingangsstrings nicht fehlerfrei konvertiert werden konnte.

String_To_AcsiQuality 3: Rückgabewert

Name

Typ

Beschreibung

String_To_AcsiQuality

ST_AcsiQuality

Konvertierte Information als Quality-Struktur.

Beispiel

METHOD AcsiQuality_ToFrom_String : BOOL
VAR_INPUT
    fbIED  : REFERENCE TO FB_IED;
END_VAR
VAR
    qValue : ST_AcsiQuality;
    sValue : STRING;
END_VAR

IF NOT __ISVALIDREF(fbIED) THEN
    RETURN;
END_IF

qValue := String_To_AcsiQuality('Q#00|00000000|0|00');
sValue := AcsiQuality_To_String(qValue);(* sValue := 'Q#00|00000000|0|00' *)
IF fbIED.Relay.LLN0.Beh.q.sValue <> AcsiQuality_To_String(qValue) THEN
    qValue := fbIED.Relay.LLN0.Beh.q.qValue;
END_IF

qValue := String_To_AcsiQuality('Q#01|00110011|0|01');
sValue := AcsiQuality_To_String(qValue);(* sValue := 'Q#01|00110011|0|01' *)
IF fbIED.Relay.LLN0.Health.q.sValue <> AcsiQuality_To_String(qValue) THEN
    qValue := fbIED.Relay.LLN0.Health.q.qValue;
END_IF

qValue := String_To_AcsiQuality('Q#10|11001100|1|10');
sValue := AcsiQuality_To_String(qValue);(* sValue := 'Q#10|11001100|1|10' *)
IF fbIED.Relay.LLN0.Mod_.q.sValue <> AcsiQuality_To_String(qValue) THEN
    qValue := fbIED.Relay.LLN0.Mod_.q.qValue;
END_IF

AcsiQuality_ToFrom_String := TRUE;