FB_MBWriteSingleReg (Modbus-Funktion 6)

Diese Funktion wird zum Beschreiben eines einzelnen Ausgangsregisters benutzt. Dabei handelt es sich um einen 16 Bit-Zugriff.
Eingänge
VAR_INPUT
sIPAddr : STRING(15);
nTCPPort : UINT:= MODBUS_TCP_PORT;
nUnitID : BYTE:=16#FF;
nMBAddr : WORD;
nValue : WORD;
bExecute : BOOL;
tTimeout : TIME;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
sIPAddr | STRING (15) | Ist ein String, der die IP-Adresse des Zielgerätes enthält. |
nTCPPort | UINT | Portnummer des Zielgerätes. |
nUnitID | BYTE | Identifizierungsnummer eines Gerätes eines seriellen Sub-Netzwerkes. Wenn ein Gerät direkt über TCP/IP angesprochen wird, muss dieser Wert 16#FF entsprechen. |
nMBAddr | WORD | Adresse des Ausgangs-Registers (Wortoffset). |
nValue | WORD | Wert, der in das Register geschrieben werden soll (Datenwort). |
bExecute | BOOL | Durch eine steigende Flanke an diesem Eingang wird der Funktionsbaustein aktiviert. |
tTimeout | TIME | Gibt die Timeout-Zeit an, die bei der Ausführung des ADS-Kommandos nicht überschritten werden darf. |
Ausgänge
VAR_OUTPUT
bBUSY : BOOL;
bError : BOOL;
nErrId : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bBusy | BOOL | Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. |
bError | BOOL | Sollte ein ADS-Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde. |
nErrId | UDINT | Liefert bei einem gesetzten bError-Ausgang die ADS-Fehlernummer. |
Beispiel für den Aufruf des Bausteins in FBD
PROGRAM Test
VAR
fbWriteSingleReg : FB_MBWriteSingleReg;
bWriteReg : BOOL;
bWriteRegBusy : BOOL;
bWriteRegError : BOOL;
nWriteRegErrorId : UDINT;
nMBAddr : WORD := 4;
nValue : WORD := 16#1234;
END_VAR

Nach steigender Flanke von "bExecute" und erfolgreicher Ausführung des WriteSingleReg-Befehls, wird in das Register 5 der Wert 16#1234 geschrieben.
Voraussetzungen
Entwicklungsumgebung |
Zielplattform |
Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.0.0 |
PC or CX (x86) |
Tc2_ModbusSrv |