FB_DALIV2xSendDALICommand

The function block FB_DALIV2xSendDALICommand is used for the general sending of a DALI command, defined by command number and - if necessary - transfer parameter. Moreover, it is possible to set whether the command is sent twice in succession and whether to wait for a response. The latter can be used, for example, to realize a fast sequence of step-up commands.
In contrast to the function block FB_DALIV2SendDALICommand, this function block is also able to control DALI control devices (sensors).
Inputs
VAR_INPUT
bStart : BOOL;
nAddr : BYTE;
eAddrType : E_DALIV2AddrType := eDALIV2AddrTypeShort;
nInstAddr : BYTE := 0;
eInstAddrType : E_DALIV2InstAddrType := eDALIV2InstAddrTypeNumber;
eCommandPriority : E_DALIV2CommandPriority := eDALIV2CommandPriorityMiddle;
nCommand : INT := 0;
nParameter01 : BYTE := 0;
nParameter02 : DINT := 0;
bWaitingForDALISlaveResponse : BOOL := FALSE;
bRepeatCommand : BOOL := FALSE;
bSuppressResponseBuffer : BOOL := FALSE;
nDeviceType : BYTE := 0;
nOptions : DWORD := 0;
eDataFrameType : E_DALIV2DataFrameType := eDALIV2DataFrameType16Bit;
END_VAR
Name | Type | Description |
---|---|---|
bStart | BOOL | The function block is activated by a positive edge at this input. |
nAddr | BYTE | The address of a device or of a group |
eAddrType | Short address, group address or broadcast | |
nInstAddr | BYTE | Address of the instance within the device |
eInstAddrType | E_DALIV2InstAddrType | Defines the meaning of the variable nInstAddr for addressing the instance (e.g. by instance number, instance type,...). |
eCommandPriority | Priority (high, medium or low) with which the command is processed by the library. | |
nCommand | INT | Number of the DALI command to be sent |
nCommand01 | BYTE | Parameter for the value transfer |
nCommand02 | DINT | Parameter for the value transfer |
bWaitingForDALISlaveResponse | BOOL | If FALSE, the system does not wait for the response from the DALI device. Its application makes no sense in connection with any kind of query command. |
bRepeatCommand | BOOL | Decides whether the command is to be sent twice in succession. |
bSuppressResponseBuffer | BOOL | If TRUE, the internal buffer is not filled with the response from the function block FB_KL6811Communication (KL6811) or FB_KL6821Communication (KL6821). |
nDeviceType | BYTE | Identifier for the device type (see table below) |
nOptions | DWORD | Reserved for future developments. |
eDataFrameType | E_DALIV2DataFrameType | Output format of the DALI command (eDALIV2DataFrameType24Bit, eDALIV2DataFrameType16Bit or eDALIV2DataFrameTypeOsram) |
Identifiers for the device type
Value | Description |
---|---|
0 | Standard device |
1 | Device for emergency lighting |
2 | Device for discharge lamps |
3 | Device for low-voltage halogen lamps |
4 | Device for dimming incandescent lamps |
5 | Device for converting digital signals into DC signals |
6 | Device for light emitting diodes (LEDs) |
7 | Device for switching functions |
8 | Device for controlling the color/color temperature |
9 | Sequencer |
Inputs/outputs
VAR_IN_OUT
stCommandBuffer : ST_DALIV2CommandBuffer;
END_VAR
Name | Type | Description |
---|---|---|
stCommandBuffer | ST_DALIV2CommandBuffer | Reference to the internal structure for communication with FB_KL6811Communication (KL6811) or FB_KL6821Communication (KL6821). |
Outputs
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrorId : UDINT;
arrResponseData : ARRAY [0..3] OF BYTE;
END_VAR
Name | Type | Description |
---|---|---|
bBusy | BOOL | When the function block is activated the output is set, and it remains active until execution of the command has been completed. |
bError | BOOL | This output is switched to TRUE as soon as an error occurs during the execution of a command. The command-specific error code is contained in nErrorId. Is reset to FALSE by the execution of a command at the inputs. |
nErrorId | UDINT | Contains the command-specific error code of the most recently executed command. Is reset to 0 by the execution of a command at the inputs (see error codes). |
arrResponseData | ARRAY OF BYTE | The value received from the DALI device if a query command was invoked. |
Requirements
Development Environment | PLC library to include |
---|---|
TwinCAT from v3.1.4022.4 | Tc2_DALI from v3.6.2.0 |