FB_DALIV2xSendDALICommand

FB_DALIV2xSendDALICommand 1:

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).

FB_DALIV2xSendDALICommand 2: 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

E_DALIV2AddrType

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

E_DALIV2CommandPriority

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

FB_DALIV2xSendDALICommand 3: 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).

FB_DALIV2xSendDALICommand 4: 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