Validity_To_AcsiQualityValidity

Konvertiert den Wert des Aufzählungstyps E_AcsiQualityValidity in zwei boolische Werte. Diese zwei Ausgangswerte entsprechen den Validity0- und Validity1-Bit-Komponenten des strukturierten Typs ST_AcsiQuality. Siehe auch: Kodierung der Validity0..1-Bits.

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

Syntax

FUNCTION Validity_To_AcsiQualityValidity 
VAR_INPUT
    in         : E_AcsiQualityValidity;
END_VAR
VAR_OUTPUT
    bValidity0 : BOOL;
    bValidity1 : BOOL;
END_VAR

Validity_To_AcsiQualityValidity 1: Eingänge

Name

Typ

Beschreibung

in

E_AcsiQualityValidity

Die zu konvertierende Information als Aufzählungstyp.

Validity_To_AcsiQualityValidity 2: Ausgänge

Konvertierte Information als ST_AcsiQuality.Validity0..1-Bit-Komponenten.

Name

Typ

Beschreibung

bValidity0

BOOL

Gültigkeit MSB-Bit.

bValidity1

BOOL

Gültigkeit LSB-Bit.

Validity_To_AcsiQualityValidity 3: Rückgabewert

Keiner.

Beispiel

METHOD AcsiQualityValidity_ToFrom_Validity : 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
Validity_To_AcsiQualityValidity(E_AcsiQualityValidity.Good, bValidity0=>qValue.Validity0, bValidity1=>qValue.Validity1);
qValue.Overflow := FALSE;
qValue.OutOfRange := FALSE;
qValue.BadReference := FALSE;
qValue.Oscillatory := FALSE;
qValue.Failure := FALSE;
qValue.OldData := FALSE;
qValue.Inconsistent := FALSE;
qValue.Inaccurate := FALSE;
qValue.Source := Source_To_AcsiQualitySource(E_AcsiQualitySource.Process);
qValue.Test := FALSE;
qValue.OperatorBlocked := FALSE;
sValue := AcsiQuality_To_String(qValue);(* sValue := 'Q#00|00000000|0|00' *)

IF fbIED.Relay.LLN0.Beh.q.eValidity <> AcsiQualityValidity_To_Validity(qValue) THEN
    qValue := fbIED.Relay.LLN0.Beh.q.qValue;
END_IF

AcsiQualityValidity_ToFrom_Validity := TRUE;