WORD_To_AcsiQuality

Converts the binary data of the type WORD into the components of the structured type ST_AcsiQuality. The coding of the components in the WORD corresponds to the TwinCAT Quality-WORD format specification.

Namespace: Tc3_Acsi
Library: Tc3_Acsi (Tc3_Acsi.compiled-library)

Syntax

FUNCTION Word_To_AcsiQuality : ST_AcsiQuality
VAR_INPUT
    in : WORD(0..8191);
END_VAR

WORD_To_AcsiQuality 1: Inputs

Name

Type

Description

in

WORD(0..8191)

The information to be converted as Quality binary data.

WORD_To_AcsiQuality 2: Return value

Name

Type

Description

WORD_To_AcsiQuality

ST_AcsiQuality

Converted information as a Quality structure.

Sample

METHOD AcsiQuality_ToFrom_WORD : BOOL
VAR_INPUT
    fbIED : REFERENCE TO FB_IED;
END_VAR
VAR
    qValue : ST_AcsiQuality;
    sValue : STRING;
    nValue : WORD;
END_VAR

IF NOT __ISVALIDREF(fbIED) THEN
    RETURN;
END_IF

qValue := WORD_To_AcsiQuality(0);
sValue := AcsiQuality_To_String(qValue);(* sValue := 'Q#00|00000000|0|00' *)
nValue := AcsiQuality_To_WORD(qValue);(* nValue := 2#00000000_00000000 *)
IF fbIED.Relay.LLN0.Beh.q.nValue <> nValue 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' *)
nValue := AcsiQuality_To_Word(qValue);(* nValue := 2#00010011_00110010 *)
IF fbIED.Relay.LLN0.Health.q.nValue <> nValue 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' *)
nValue := AcsiQuality_To_Word(qValue);(* nValue := 2#00001100_11001101 *)
IF fbIED.Relay.LLN0.Mod_.q.nValue <> nValue THEN
    qValue := fbIED.Relay.LLN0.Mod_.q.qValue;
END_IF

AcsiQuality_ToFrom_WORD := TRUE;