DAIKIN_EKMBDXB7V1_IDU_ERROR_STATES

DAIKIN_EKMBDXB7V1_IDU_ERROR_STATES (FB)

FUNCTION_BLOCK DAIKIN_EKMBDXB7V1_IDU_ERROR_STATES

Short description

Detection of the error states of up to 64 Daikin indoor units Typical application: Central control of Daikin indoor units via the Daikin Modbus interface EKMBDXB7V1\

Guidelines - Software creation

The following function codes (FC) are supported: 3, 4, 6 and 16 The following transmission rates are supported: 9600 and 19200 bit/s For addressing, use the address values, not the register addresses (address = register - 1) The Modbus addresses 1 - 15 can be set directly on the DIP switches in the interface. In FC03 a maximum of 32 registers may be requested in one request telegram (deviating from the Modbus standard) In FC04 a maximum of 32 registers may be requested in one request telegram (deviating from the Modbus standard) In FC16 a maximum of 30 registers may be written in one request telegram (deviating from the Modbus standard) The following transmission parameters were tested: 19200 Baud, 8-N-1 The interface supports the following exception codes: 0x81, 0x82 and 0x83 The number of control commands per indoor unit is limited to 7000 / year !!! Considering the tested transmission parameters, the time interval between the end of the response telegram and the next request telegram must be at least 22.5 ms All registers read with FC04 are always available up to date All registers read with FC03 are available up to date only once during each gateway restart Procedure to change a setpoint (FC06 or FC16): &#xNAN;************** &#xNAN;* Functions * &#xNAN;************** In this FB the error states of all up to 64 indoor units are detected and evaluated (FC04: addresses 3600 - 3727 ) They are available in the array ‘arstIndoorUnits_ErrorStates’ separated per indoor unit as a structure element. The structure element of an indoor unit is only updated if the corresponding read/write authorization exists (input ‘arxIndoorUnits_ReadWriteState’). \

InOut:

Scope
Name
Type
Initial
Comment

Input

xEn

BOOL

TRUE

Enable / disable of communication ( TRUE = enabled )

Input

byUnitId

BYTE

0

Device (interface) address (1 .. 15)

Input

xUpdateActual

BOOL

FALSE

Update of actual values ( on each rising edge )

Input

xResError

BOOL

FALSE

Reinitialization of the output ‘eErrorCodeCom’ (on each rising edge)

Input

arxIndoorUnits_ReadWriteState

ARRAY [1..4, 0..15] OF BOOL

Array with the read/write authorizations of the indoor units of all groups (1-00 … 4-15) 1st dimension: group, 2nd dimension: indoor unit number Array element = FALSE: no read/write authorization Array element = TRUE: read/write authorization

Inout

ModbusClient

ModbusClientBase

Client of the device

Output

arstIndoorUnits_ErrorStates

ARRAY [1..4, 0..15] OF EKMBDXB7V1_ERROR_STATES

Array with the error states of the indoor units of all groups (1-00 … 4-15) 1st dimension: group, 2nd dimension: indoor unit number Array element = structure with the individual error states

Output

xAlarm

BOOL

FALSE

Collective fault ( TRUE = fault )

Output

xAlarmCom

BOOL

FALSE

Collective fault - communication ( TRUE = fault )

Output

eErrorCodeCom

ModbusErrorCode

Error code - communication ( 0 = no error )

Output

xBusy

BOOL

Communication indicator ( TRUE = communication )

Input Const

tTimeUpdateActual

TIME

TIME#3s0ms

Update interval for the processes affected by the input ‘xUpdateActual’

Last updated