FB_WriteBoolOnDelta

FB_WriteBoolOnDelta 1:

Ereignisgesteuertes Schreiben einer Variablen vom Typ BOOLEAN.

Der Funktionsbaustein FB_WriteBoolOnDelta() überprüft zyklisch, ob sich der Wert am Eingang bSignal geändert hat. Die Zykluszeit, für die Überprüfung wird durch den Parameter tCycleTime bestimmt. Wird für tCycleTime 0 sec angegeben, so wird in jedem SPS-Zyklus das Eingangssignal überprüft. Wurde eine Änderung erkannt, so wird der Wert des Signals an das angegebende ADS-Gerät verschickt. Adressiert wird der Empfänger durch die AMS-NetId und durch die Portnummer (siehe auch Identifikation ADS-Gerät). Die Position innerhalb des Empfängers wird durch die Index-Group/Index-Offset oder dem Symbolnamen angegeben. Üblicherweise ist dieses das Eingangsabbild oder der Merkerbereich.

Wird der Eingang bEnable auf FALSE gesetzt, so erfolgt keine weitere Übertragung des Signals.

VAR_INPUT

bEnable      : BOOL := FALSE;
sNetId       : T_AmsNetId;
nPort        : T_AmsPort := AMSPORT_R0_PLC_RTS1;
nIdxGrp      : UDINT;
nIdxOffs     : UDINT;
sVarName     : STRING;
bSignal      : BOOL;
tCycleTime   : TIME := t#0s;
bSendNow     : BOOL;

bEnable: Baustein Freischalten.

sNetId: AMS-NetId des ADS-Gerätes, nach dem der Wert übertragen werden soll.

nPort: AMS-Portnummer des ADS-Gerätes, nach dem der Wert übertragen werden soll.

nIdxGrp: Index-Group innerhalb des ADS-Gerätes, in der der Wert übertragen werden soll.

nIdxOffs: Index-Offset innerhalb des ADS-Gerätes, in der der Wert übertragen werden soll.

sVarName: Symbolname innerhalb des ADS-Gerätes, in der der Wert übertragen werden soll.

bSignal: Variable, dessen Wert übertragen werden soll.

tCycleTime: Zykluszeit, in der überprüft wird, ob sich das Eingangssignal geändert hat.

bSendNow: Durch eine positive Flanke wird der Wert unmittelbar übertragen.

VAR_OUTPUT

bBusy        : BOOL;
bLastSignal  : BOOL;
bError       : BOOL;
nErrorId     : UDINT;
nErrorCnt    : UDINT;

bBusy: Übertragung ist aktiv.

bLastSignal: zuletzt übertragender Wert.

bError: Bei der Übertragung ist ein Fehler aufgetreten.

nErrorId: Fehlernummer, falls ein Fehler aufgetreten ist.

nErrorCnt: Anzahl der fehlerhaften Übertragungsversuche.

Voraussetzungen

Entwicklungsumgebung

Zielsystem

erforderliche Bibliotheken

TwinCAT 2.11 R3/x64

PC/CX, BX oder BC

TcDataExchange-Bibliothek ab V1.0.0