FB_DALIV2Dimmer1SwitchMultiple
Der Funktionsbaustein FB_DALIV2Dimmer1SwitchMultiple dient zum Schalten und Dimmen von DALI-Geräten mit einem Taster. Für Anwendungen, bei denen bis zu fünf DALI-Linien (0..4) installiert sein können. Die Grundfunktion dieses Funktionsbausteines ist aus der Beschreibung des FB_DALIV2Dimmer1Switch zu entnehmen.
Eingänge
VAR_INPUT
bSwitchDimm : BOOL;
bOn : BOOL;
bOff : BOOL;
bSetDimmValue : BOOL;
nDimmValue : BYTE;
tSwitchOverTime : TIME := t#400ms;
tCycleDelay : TIME := t#500ms;
bMemoryModeOn : BOOL := FALSE;
nOnValueWithoutMemoryMode : BYTE := 254;
nAddr : BYTE := 0;
eAddrType : E_DALIV2AddrType := eDALIV2AddrTypeShort;
nMasterDevAddr : BYTE := 0;
nMasterDevLine : BYTE := 0;
nMinLevelMasterDev : BYTE := 126;
nMaxLevelMasterDev : BYTE := 254;
tCycleActualLevelMasterDev : TIME := t#0s;
nDALILineEnable : BYTE := 2#0000_0001;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bSwitchDimm | BOOL | Schaltet oder dimmt die angesprochenen Geräte. |
bOn | BOOL | Schaltet die angesprochenen Geräte auf den letzten Ausgangswert oder auf den Wert nOnValueWithoutMemoryMode. |
bOff | BOOL | Schaltet die angesprochenen Geräte aus (Wert 0). |
bSetDimmValue | BOOL | Eine positive Flanke an diesem Eingang setzt die angesprochenen Geräte direkt auf den Helligkeitswert, der am Eingang nDimmValue ansteht. Ändert sich der Wert nDimmValue, so wird der Helligkeitswert direkt auf den geänderten Wert eingestellt, wenn der Eingang bSetDimmValue auf FALSE steht. |
nDimmValue | BYTE | siehe bSetDimmValue |
tSwitchOverTime | TIME | Umschaltzeit zwischen Licht ein/aus und Licht dimmen für den Eingang bSwitchDimm |
tCycleDelay | TIME | Wartezeit, wenn der Min- bzw. Max-Wert erreicht ist. |
bMemoryModeOn | BOOL | Schaltet auf Memoryfunktion um, sodass beim Einschalten der vorherige Wert an den Ausgang geschrieben wird. |
nOnValueWithoutMemoryMode | BYTE | Einschaltwert, wenn die Memoryfunktion nicht eingeschaltet ist. |
nAddr | BYTE | Adresse eines Teilnehmers oder einer Gruppe |
eAddrType | Kurzadresse, Gruppenadresse oder Sammelruf (Broadcast) | |
nMasterDevAddr | BYTE | Adresse des Master-Gerätes (Referenzgerät) bei Gruppen- und Sammelschaltungen |
nMasterDevLine | BYTE | Linie, in der sich das Master-Gerät für Gruppen- und Sammelkonfiguration befindet. Je Funktionsbaustein gibt es nur ein Master-Gerät, das aus einer der aktivierten DALI-Linien zu wählen ist. Es gibt die Linien 0 bis 4. |
nMinLevelMasterDev | BYTE | Minimalwert des Master-Gerätes |
nMaxLevelMasterDev | BYTE | Maximalwert des Master-Gerätes |
tCycleActualLevelMasterDev | TIME | Zykluszeit, mit der im Hintergrund der aktuelle Istwert ausgelesen wird (siehe ACTUAL DIM LEVEL). Damit das Dimmen der Lampen nicht gestört wird, wird das Auslesen immer in der niedrigsten Priorität durchgeführt. Wird der Wert auf 0 gesetzt, so wird das Auslesen gesperrt. |
nDALILineEnable |
| Eingangsvariable in Form eines Bitmuster. Eine 1 im Bitmuster sagt aus, dass die DALI-Linie aktiviert ist. Beispiel: 2#01001 bedeutet, dass die DALI-Linien 0 und 3 aktiviert sind. |
Ein-/Ausgänge
VAR_IN_OUT
stCommandBuffer00 : ST_DALIV2CommandBuffer;
stCommandBuffer01 : ST_DALIV2CommandBuffer;
stCommandBuffer02 : ST_DALIV2CommandBuffer;
stCommandBuffer03 : ST_DALIV2CommandBuffer;
stCommandBuffer04 : ST_DALIV2CommandBuffer;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
stCommandBuffer00 - stCommandBuffer04 | ST_DALIV2CommandBuffer | Verweis auf die internen Strukturen zur Kommunikation mit den Funktionsbausteinen FB_KL6811Communication (KL6811) oder FB_KL6821Communication (KL6821). |
Ausgänge
VAR_OUTPUT
nActualLevelMasterDev : BYTE;
bBusy : BOOL;
bError : BOOL;
nErrorId : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
nActualLevelMasterDev | BYTE | Aktueller Ausgabewert des Master-Gerätes (bei eAddrType = eAddrTypeShort immer des jeweilig angesprochenen Gerätes) |
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). |
Voraussetzungen
Entwicklungsumgebung | Einzubindende SPS-Bibliothek |
---|---|
TwinCAT ab v3.1.4020.14 | Tc2_DALI ab v3.4.3.0 |