FB_DALIV2SetSettingsType01
This function block initializes the variables (EMERGENCY LEVEL, FUNCTION TEST DELAY TIME, DURATION TEST DELAY TIME…) of all emergency lighting control gears in a DALI line with the values that are stored in a structure of type ST_DALIV2DeviceSettingsType01.
Applying a positive edge to the input bStart starts the function block, and the output bBusy goes TRUE. The system first checks whether the bPresent bit is set in the respective structure (see ST_DALIV2DeviceSettingsType01). If this is the case, all control gear variables that are not read-only are initialized with the respective values of the structure. The structure index here reflects the address of the control gear. In other words, data for the device with short address 0 is located at arrDALIDeviceSettingsType01[0], and so on through to the control gear with short address 63 having its data at arrDALIDeviceSettingsType01[63]. If a write error occurs for a device, the element nErrors is set for the respective structure without the function block itself switching to error mode. The following table shows which bit is set in the variable nErrors when an error occurs during the writing of a variable to a control gear.
Bit |
Error |
---|---|
5 |
Error whilst writing the variable EMERGENCY LEVEL |
9 |
Error whilst writing the variable FUNCTION TEST DELAY TIME |
10 |
Error whilst writing the variable DURATION TEST DELAY TIME |
11 |
Error whilst writing the variable FUNCTION TEST INTERVAL |
12 |
Error whilst writing the variable DURATION TEST INTERVAL |
13 |
Error whilst writing the variable TEST EXECUTION TIMEOUT |
14 |
Error whilst writing the variable PROLONG TIME |
When the function block has been processed, the output bBusy changes from TRUE to FALSE. Processing this function block can take several seconds, depending on how many control gears are connected.
Inputs
VAR_INPUT
bStart : BOOL;
bCancel : BOOL;
eCommandPriority : E_DALIV2CommandPriority := eDALIV2CommandPriorityHigh;
nOptions : DWORD;
END_VAR
Name | Type | Description |
---|---|---|
bStart | BOOL | The function block is activated by a positive edge at this input. |
bCancel | BOOL | A positive edge at this input will disable the function block and hence abort the reading of the variables. |
eCommandPriority | Priority (high, medium or low) with which the command is processed by the library. | |
nOptions | DWORD | Options for reading the variables (see table). The individual constants must be linked with OR operators. |
Constant |
Description |
---|---|
DALIV2_OPTION_EMERGENCY_LEVEL |
The variable EMERGENCY LEVEL is initialized. |
DALIV2_OPTION_NEXT_FUNCTION_TEST |
The variable FUNCTION TEST DELAY TIME is initialized. |
DALIV2_OPTION_NEXT_DURATION_TEST |
The variable DURATION TEST DELAY TIME is initialized. |
DALIV2_OPTION_FUNCTION_TEST_INTERVAL |
The variable FUNCTION TEST INTERVAL is initialized. |
DALIV2_OPTION_DURATION_TEST_INTERVAL |
The variable DURATION TEST INTERVAL is initialized. |
DALIV2_OPTION_TEST_EXECUTION_TIMEOUT |
The variable TEST EXECUTION TIMEOUT is initialized. |
DALIV2_OPTION_PROLONG_TIME |
The variable PROLONG TIME is initialized. |
DALIV2_OPTION_ALL |
All variables are initialized. |
DALIV2_OPTION_PUSH_DALI_COMMANDS |
The buffer containing the feedback messages from the control gears is not read. Hence, writing becomes faster, but errors are not recognized. |
Inputs/outputs
VAR_IN_OUT
stCommandBuffer : ST_DALIV2CommandBuffer;
arrDALIDeviceSettingsType01 : ARRAY [0..63] OF ST_DALIV2DeviceSettingsType01;
END_VAR
Name | Type | Description |
---|---|---|
stCommandBuffer | ST_DALIV2CommandBuffer | Reference to the internal structure for communication with FB_KL6811Communication (KL6811) or FB_KL6821Communication (KL6821). |
arrDALIDeviceSettingsType01 | ARRAY OF ST_DALIV2DeviceSettingsType01 | Reference to an array with 64 elements. The settings of each individual DALI control gear are stored in this variable. |
Outputs
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrorId : UDINT;
nCurrentShortAddr : 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). |
nCurrentShortAddr | BYTE | Short address of the current control gear from which an attempt is being made to read the variables. |
Requirements
Development Environment | PLC library to include |
---|---|
TwinCAT from v3.1.4020.14 | Tc2_DALI from v3.4.3.0 |