SimpleReadCoilInput

SimpleReadCoilInput (FB)

FUNCTION_BLOCK SimpleReadCoilInput

Auswertung der Istwerte bei den Function-Codes 01 ( Read Coils ) bzw. 02 ( Read Discrete Inputs )

Bei der Auswertung der Istwerte ist nur der Ausgang ‘arxValue’ zu beachten. Es handelt sich dabei um ein Array mit 64 Elementen vom Typ BOOL ( 1 - 64 Coils / Inputs ). Die Festlegung der zu übertragenden Bits erfolgt primär durch die Wahl des Function-Codes ( eFunctionCode ), der Start-Adresse ( wStartAddr ) und der gewünschten Anzahl an Coils / Inputs (‘wNumberOfCoils’) im Bereich 1 - 64. Die Istwerte stehen wie folgt zur Verfügung: Das erste Element ‘arxValue[0]’ enthält den Zustand des Coils mit der Nummer ‘wStartAddress’ Das zweite Element ‘arxValue[1]’ enthält den Zustand des Coils mit der Nummer ‘wStartAddress’ + 1 Das dritte Element ‘arxValue[2]’ enthält den Zustand des Coils mit der Nummer ‘wStartAddress’ + 2, usw. Nicht benötigte Elemente von ‘arxValue’ werden mit FALSE beschrieben. Aufgabe: Lese den Istwert von Coil 17 Einstellungen: eFunctionCode: ReadFunctionCodesCoilInput.FC01_ReadCoils wStartAddr = 17 wNumberOfCoils = 1 ‘arxValue[0]’: Istwert von Coil 17 ‘arxValue[1]’: FALSE ‘arxValue[2]’: FALSE … ‘arxValue[63]’: FALSE \

CODESYS

InOut:

Scope
Name
Type
Initial
Comment

Input

xEn

BOOL

TRUE

Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )

Input

byUnitId

BYTE

0

Adresse des Geräts

Input

xUpdateActual

BOOL

FALSE

Aktualisierung der Istwerte ( 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

eFunctionCodeFb

ReadFunctionCodesCoilsInputs

Rückmeldung - Modbus-Function-Code für das Modbus-Telegramm

Output

wStartAddrFb

WORD

Rückmeldung - Startadresse der zu lesenden Coils/Inputs

Output

wNumberOfCoilsFb

WORD

Rückmeldung - Anzahl der zu lesenden Coils/Inputs ( 1 - 64 )

Output

arxValue

ARRAY [0..63] OF BOOL

Array mit den aktuellen Coil- / Input - Zuständen

Output

xAlarm

BOOL

Sammelstörung ( TRUE = Störung )

Output

xAlarmCom

BOOL

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

Output

eErrorCodeCom

ModbusErrorCode

Fehlercode - Kommunikation ( 0 = kein Fehler )

Output

eErrorCodeDev

SIMPLE_READ_COIL_INPUT_ERROR_CODE

Fehlercode - Gerät ( 0 = kein Fehler )

Output

xBusy

BOOL

Kommunikationsanzeige ( TRUE = Kommunikation )

Input Const

wNumberOfCoils

WORD

1

Anzahl der zu lesenden Coils/Inputs ( 1 - 64 )

Input Const

eFunctionCode

ReadFunctionCodesCoilsInputs

ReadFunctionCodesCoilsInputs.FC01_ReadCoils

Modbus-Function-Code für das Modbus-Telegramm

Input Const

wStartAddr

WORD

Startadresse der zu lesenden Coils/Inputs

Input Const

tTimeUpdateActual

TIME

TIME#3s0ms

Updateintervall für die Vorgänge, die durch den Eingang ‘xUpdateActual’ beeinflusst werden

Zuletzt aktualisiert