FB_WriteLRealOnDelta

Der Funktionsbaustein ermöglicht das ereignisgesteuerte Schreiben einer Variablen vom Typ LREAL.
Der Funktionsbaustein FB_WriteLRealOnDelta prüft zyklisch, ob sich der Wert am Eingang fSignal geändert hat. Die Zykluszeit für die Prüfung wird durch den Parameter tCycleTime bestimmt. Wird für tCycleTime 0 s angegeben, so wird das Eingangssignal in jedem SPS-Zyklus überprüft. Wird bei dem Vergleich festgestellt, dass der aktuelle Wert um den Wert fUpperLimit größer oder um den Wert fLowerLimit kleiner ist, so wird der Wert des Signals an das angegebene ADS-Gerät geschickt. Der Empfänger wird durch die AMS-NetId und durch die Portnummer adressiert (siehe auch Identifikation ADS-Gerät). Die Position innerhalb des Empfängers wird durch die Index-Group/Index-Offset oder den Symbolnamen angegeben. Üblicherweise ist dieses das Eingangsabbild oder der Merkerbereich.
Wird der Eingang bEnable auf FALSE gesetzt, so erfolgt keine weitere Übertragung des Signals.
Eingänge
VAR_INPUT
bEnable : BOOL := FALSE;
sNetId : T_AmsNetId;
nPort : T_AmsPort;
nIdxGrp : UDINT;
nIdxOffs : UDINT;
sVarName : STRING;
fSignal : LREAL;
fLowerLimit : LREAL;
fUpperLimit : LREAL;
tCycleTime : TIME := t#0s;
bSendNow : BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bEnable | BOOL | Baustein freischalten. |
sNetId | T_AmsNetID | AMS-NetId des ADS-Gerätes, in das der Wert übertragen werden soll. |
nPort | T_AmsNetID | AMS-Portnummer des ADS-Gerätes, in das der Wert übertragen werden soll. |
nIdxGrp | UDINT | Index-Group innerhalb des ADS-Gerätes, in der der Wert übertragen werden soll. |
nIdxOffs | UDINT | Index-Offset innerhalb des ADS-Gerätes, in dem der Wert übertragen werden soll. |
sVarName | STRING | Symbolname innerhalb des ADS-Gerätes, in dem der Wert übertragen werden soll. |
fSignal | LREAL | Variable, deren Wert übertragen werden soll. |
nLowerLimit |
LREAL |
Unterer Grenzwert. |
nUpperLimit |
LREAL |
Oberer Grenzwert. |
tCycleTime |
TIME |
Zykluszeit, in der überprüft wird, ob das Eingangssignal die Grenzwerte überschritten hat. |
bSendNow | BOOL | Durch eine positive Flanke wird der Wert unmittelbar übertragen. |
Ausgänge
VAR_OUTPUT
bBusy : BOOL := FALSE;
fLastSignal : LREAL;
bError : BOOL := FALSE;
nErrorId : UDINT := 0;
nErrorCnt : UDINT := 0;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bBusy | BOOL | Die Übertragung ist aktiv. |
fLastSignal | LREAL | Zuletzt übertragender Wert. |
bError | BOOL | Bei der Übertragung ist ein Fehler aufgetreten. |
nErrorId | UDINT | ADS-Fehlernummer, falls ein Fehler aufgetreten ist. |
nErrorCnt | UDINT | Anzahl der fehlerhaften Übertragungsversuche. |
Voraussetzungen
Entwicklungsumgebung | erforderliche TC3 SPS-Bibliothek |
---|---|
TwinCAT v3.0.0 | Tc2_DataExchange |