FB_DALI102QueryDeviceTypes

FB_DALI102QueryDeviceTypes 1:

The function block returns a list of all device types supported by the DALI control gear.

The DALI commands QUERY DEVICE TYPE and QUERY NEXT DEVICE TYPE are called internally.

As long as the function block is active (bBusy = TRUE), no further DALI commands may be sent. Otherwise, the list of supported device types may not be read completely.

The output aDeviceTypes contains a valid value only if the function block was executed without errors (bError = FALSE).

FB_DALI102QueryDeviceTypes 2: Inputs

VAR_INPUT
  bStart            : BOOL;
  nAddress          : BYTE;
  eAddressType      : E_DALIAddressType := E_DALIAddressType.Short;
  eCommandPriority  : E_DALICommandPriority := E_DALICommandPriority.MiddleLow;
END_VAR

Name

Type

Description

bStart

BOOL

Execution of the DALI commands is triggered via a positive edge at this input.

nAddress

BYTE

Address of a DALI control gear or a DALI group.

eAddressType

E_DALIAddressType

Defines whether the input nAddress contains a short address (0…63) or a group address (0…15). The input nAddress has no meaning if a broadcast or a broadcast to unaddressed devices (BroadcastUnaddr) has been selected.

eCommandPriority

E_DALICommandPriority

Priority (low, middle low, middle, middle high, high) with which the DALI commands are sent.

FB_DALI102QueryDeviceTypes 3:

eCommandPriority has no function with the KL6811. The DALI command priorities are supported by the KL6821 from the firmware version BD.

FB_DALI102QueryDeviceTypes 4: Outputs

VAR_OUTPUT
  bError              : BOOL;
  ipResultMessage     : I_TcMessage;
  bBusy               : BOOL;
  aDeviceTypes        : ARRAY [1..20] OF E_DALIDeviceType;
END_VAR

Name

Type

Description

bError

BOOL

This output is switched to TRUE if an error occurs during the execution. Further information about the error can be queried via the variable ipResultMessage. The output is set to FALSE again as soon as bBusy switches to TRUE.

ipResultMessage

I_TcMessage

Interface pointer (see error evaluation) that can be used to obtain detailed information about the processing of the function block (see runtime messages). The interface pointer is valid after bBusy has changed from TRUE to FALSE.

bBusy

BOOL

The output is set as soon as execution of the DALI commands has commenced. It remains active until all DALI commands have been processed.

aDeviceTypes

ARRAY OF E_DALIDeviceType

List of supported device types.

FB_DALI102QueryDeviceTypes 5: Properties

Name

Type

Access

Initial value

Description

ipDALICommunication

I_DALICommunication

Get,Set

0

Interface Pointer to the communication block (see Transfer of the reference to the communication block).

Requirements

Development environment

Required PLC library

TwinCAT from v3.1.4024.11

Tc3_DALI from v3.5.0.0