SimpleWriteArrayOfWord

SimpleWriteArrayOfWord (FB)

FUNCTION_BLOCK SimpleWriteArrayOfWord

Darstellung

Auslösung der Übertragung von Modbus-Daten

Die Datenübertragung wird ausgelöst, falls mindestens eine der nachfolgend beschriebenen Bedingungen erfüllt ist:

Voraussetzung: Es ist ein geeignetes Array am Eingang arwInputArray angeschlossen. Dies wird durch den Ausgang xInputArrayValid (= TRUE) signalisiert.

  1. nach einem Flankenwechsel am Eingang xUpdateSetp (FALSE >> TRUE) (einmalig)

  2. nach Ablauf der Zeitdauer tTimeUpdateSetp (tTimeUpdateSetp > 0) (zyklisch)

  3. nach einer Änderung des Arrays am Eingang arwInputArray (Datentyp, Grösse, Inhalte) (einmalig)

  4. nach einer Änderung wesentlicher Parameter (byUnitId, wRegisterAddr) (einmalig)

  5. nach einem Flankenwechsel am Eingang xEn (FALSE >> TRUE) (einmalig)

  6. nach jedem Kaltstart (einmalig)

Hinweis: Der Datentyp des Arrays am Eingang arwInputArray kann Stand 07.07.2023 nicht erkannt und ausgewertet werden (CDS-43675 Compiler, AnyType: Extension for Arrays needed) In der ToolTipp-Hilfe zum Eingang arwInputArray werden die möglichen Array-Datentypen in Abhängigkeit vom gewählten Function-Code angezeigt.

InOut:

Scope
Name
Type
Initial
Comment

Input

xEn

BOOL

TRUE

Freigabe / Sperrung der Kommunikation (TRUE = Freigabe)

Input

byUnitId

BYTE

0

Modbus-Adresse des Geräts

Input

arwInputArray

__SYSTEM.AnyType

Eingang für das Array der zu schreibenden Daten (FC16, ARRAY OF WORD, ARRAY OF UINT (16 Bit je Element))

Input

xUpdateSetp

BOOL

FALSE

Aktualisierung der Sollwerte (bei jeder ansteigenden Flanke)

Input

xResError

BOOL

FALSE

Reinitialisierung der Ausgänge eErrorCodeCom bzw. eErrorCodeDev auf den fehlerfreien Zustand (bei jeder ansteigenden Flanke)

Inout

ModbusClient

ModbusClientBase

Client des Geräts

Output

wRegisterAddrFb

WORD

0

Rückmeldung - Startadresse des Registers für das Modbus- Telegramm

Output

diInputArrayNumb

DINT

0

Anzahl der Arrayelemente am Eingang arwInputArray

Output

xInputArrayValid

BOOL

FALSE

Gültigkeit des Arrays am Eingang arwInputArray (Datentyp, Grösse) (FALSE = nicht gültig, TRUE = gültig)

Output

xAlarm

BOOL

FALSE

Sammelstörung (TRUE = Störung)

Output

xAlarmCom

BOOL

FALSE

Sammelstörung - Kommunikation (TRUE = Störung)

Output

eErrorCodeCom

ModbusErrorCode

ModbusErrorCode.NO_ERROR

Fehlercode - Kommunikation (0 = kein Fehler)

Output

eErrorCodeDev

SIMPLE_WRITE_ARRAY_OF_WORD_ERROR_CODE

SIMPLE_WRITE_ARRAY_OF_WORD_ERROR_CODE.NO_ERROR

Fehlercode - Gerät (0 = kein Fehler)

Output

xBusy

BOOL

FALSE

Kommunikationsanzeige (TRUE = Kommunikation)

Input Const

wRegisterAddr

WORD

Startadresse des Registers für das Modbus-Telegramm

Input Const

tTimeUpdateSetp

TIME

TIME#0ms

Updateintervall für die Vorgänge, die durch den Eingang xUpdateSetp beeinflusst werden

Zuletzt aktualisiert