FB_DALIV2xSendDALICommand

FB_DALIV2xSendDALICommand 1:

Der Funktionsbaustein FB_DALIV2xSendDALICommand dient zum allgemeinen Senden eines DALI-Kommandos, definiert per Befehlsnummer und -falls erforderlich- Übergabeparameter. Dabei kann weiterhin eingestellt werden, ob der Befehl zweimal wiederholt gesendet wird und, ob auf eine Antwort gewartet werden soll. Letzteres kann beispielsweise dazu benutzt werden, eine schnelle Abfolge von Step-Up-Befehlen zu realisieren.

Gegenüber dem Funktionsbaustein FB_DALIV2SendDALICommand ist dieser Funktionsbaustein auch in der Lage, DALI-Steuergeräte (Sensoren) anzusteuern.

FB_DALIV2xSendDALICommand 2: Eingänge

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

Typ

Beschreibung

bStart

BOOL

Über eine positive Flanke an diesem Eingang wird der Funktionsbaustein aktiviert.

nAddr

BYTE

Adresse eines Teilnehmers oder einer Gruppe

eAddrType

E_DALIV2AddrType

Kurzadresse, Gruppenadresse oder Sammelruf (Broadcast)

nInstAddr

BYTE

Adresse der Instanz innerhalb des Teilnehmers

eInstAddrType

E_DALIV2InstAddrType

Definiert die Bedeutung der Variable nInstAddr für das Ansprechen der Instanz (z. B. per Instanznummer, Instanztyp, …).

eCommandPriority

E_DALIV2CommandPriority

Priorität (hoch, mittel oder niedrig), mit der der Befehl von der Library abgearbeitet wird.

nCommand

INT

Nummer des zu sendenden DALI-Befehls

nCommand01

BYTE

Parameter zur Wertübergabe

nCommand02

DINT

Parameter zur Wertübergabe

bWaitingForDALISlaveResponse

BOOL

Bei FALSE wird nicht auf die Antwort des DALI-Gerätes gewartet. Die Anwendung ist im Zusammenhang mit jeder Art von Abfragebefehlen sinnlos.

bRepeatCommand

BOOL

Entscheidet, ob das Kommando zweimal hintereinander gesendet werden soll.

bSuppressResponseBuffer

BOOL

Falls TRUE anliegt, wird der interne Puffer nicht mit der Antwort vom Baustein FB_KL6811Communication (KL6811) oder FB_KL6821Communication (KL6821) gefüllt.

nDeviceType

BYTE

Kennung für den Gerätetyp (siehe Tabelle unten)

nOptions

DWORD

Reserviert für zukünftige Entwicklungen.

eDataFrameType

E_DALIV2DataFrameType

Ausgabeformat des DALI-Befehls (eDALIV2DataFrameType24Bit, eDALIV2DataFrameType16Bit oder eDALIV2DataFrameTypeOsram)

Kennungen für den Gerätetyp

Wert

Beschreibung

0

Standardgerät

1

Gerät für Notbeleuchtung

2

Gerät für Entladungslampen

3

Gerät für Niedervolt-Halogenlampen

4

Gerät zum Dimmen von Glühlampen

5

Gerät zur Umwandlung von digitalen Signalen in Gleichspannungssignale

6

Gerät für Licht emittierende Dioden (LED)

7

Gerät für Schaltfunktionen

8

Gerät zur Farb-/Farbtemperatursteuerung

9

Sequenzer

FB_DALIV2xSendDALICommand 3: Ein-/Ausgänge

VAR_IN_OUT
  stCommandBuffer : ST_DALIV2CommandBuffer;
END_VAR

Name

Typ

Beschreibung

stCommandBuffer

ST_DALIV2CommandBuffer

Verweis auf die interne Struktur zur Kommunikation mit FB_KL6811Communication (KL6811) oder FB_KL6821Communication (KL6821).

FB_DALIV2xSendDALICommand 4: Ausgänge

VAR_OUTPUT
  bBusy    :        BOOL;
  bError   :        BOOL;
  nErrorId :        UDINT;
  arrResponseData : ARRAY [0..3] OF BYTE;
END_VAR

Name

Typ

Beschreibung

bBusy

BOOL

Bei der Aktivierung des Funktionsbausteins wird der Ausgang gesetzt und bleibt so lange aktiv, bis der Befehl abgearbeitet wurde.

bError

BOOL

Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt.

nErrorId

UDINT

Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt (siehe Fehlercodes).

arrResponseData

ARRAY OF BYTE

Der empfangende Wert vom DALI-Gerät, falls ein Abfragebefehl aufgerufen wurde.

Voraussetzungen

Entwicklungsumgebung

Einzubindende SPS-Bibliothek

TwinCAT ab v3.1.4022.4

Tc2_DALI ab v3.6.2.0