FB_BA_Switch4DALI

Das Template dient dem Auslesen eines 4-fach-Schalters.
Datenaustausch HMI
Der Datenaustausch mit der HMI wird hier in der Basisklasse FB_BA_BaseSwitch (interner Baustein) realisiert. In diesem Template sichtbar ist die Verwendung folgender Variable:
- bInitializeRm: Start DALI-Initialisierungsroutine aus der HMI.
Funktion
Das Gerät selbst wird spezifiziert durch die Instanznummern der Taster, nInstButton1 … nInstButton4.
Es wird grundsätzlich das geräteinterne Ereignissystem (notifications) verwendet, welches selbsttätig ein Telegramm losschickt, sobald ein Tastendruck bzw. ein Loslassen einer Taste erkannt wird.
Im internen Baustein FB_BA_Swi4DALI werden die Zustände der Tasten zusätzlich zyklisch abgefragt. So wird sichergestellt, dass der Zustand der Tasten immer wieder korrigiert wird, sollte einmal ein Telegramm "verloren" gehen.
Der DALI-Tasterbaustein kann über den Eingang bInitialize oder über die HMI (bInitializeRm) mit seinen eingestellten Parametern initialisiert werden, siehe FB_BA_Swi4DALI.
![]() | Die Initialisierung des Templates erfolgt innerhalb der Methode FB_Init. |
Blockschaltbild

Syntax
FUNCTION_BLOCK FB_BA_Switch4DALI EXTENDS FB_BA_Ext_SwitchBase
VAR_INPUT
bEn : BOOL;
bInitialize : BOOL;
END_VAR
VAR_OUTPUT
bButton1 : BOOL;
bButton2 : BOOL;
bButton3 : BOOL;
bButton4 : BOOL;
bInitializing : BOOL;
bErr : BOOL;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
nAdr : BYTE;
nInstButton1 : BYTE := 0;
nInstButton2 : BYTE := 1;
nInstButton3 : BYTE := 2;
nInstButton4 : BYTE := 3;
ipDALICommunication : Tc3_DALI.I_DALICommunication;
END_VAR
VAR_INPUT CONSTANT
SwitchSns : FB_BA_Swi4DALI;
END_VAR
VAR_INPUT
Name | Typ | Beschreibung |
---|---|---|
bEn | BOOL | Freigabe des Bausteines: ein TRUE-Signal an diesem Eingang aktiviert die Funktion. |
bInitialize | BOOL | Eine positive Flanke an diesem Eingang startet die DALI-Initialisierungsroutine, welche die eingestellten Parameter in das DALI-Gerät überträgt, siehe FB_BA_Swi4DALI. |
VAR_OUTPUT
Name | Typ | Beschreibung |
---|---|---|
bButton1…bButton4 | BOOL | Zustand der einzelnen Taster (TRUE = gedrückt). |
bInitializing | BOOL | Der Tastsensor befindet sich in der DALI-Initialisierungsphase, d.h. die eingetragenen Parameter werden in das DALI-Gerät übertragen. |
bErr | BOOL | Fehlerausgang. Ein Klartext wird in TwinCAT im Ausgabefenster in der Fehlerliste (Error List) ausgegeben. |
VAR_INPUT CONSTANT PERSISTENT
Name | Typ | Beschreibung |
---|---|---|
nAdr | BYTE | DALI-Einzeladresse des Tastsensors. |
nInstButton1…nInstButton4 | BYTE | Nummern der abzufragenden Taster-Instanzen. |
ipDALICommunication | Interface-Pointer auf den DALI-Kommunikationsbaustein. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche Function |
---|---|
TwinCAT ab v3.1.4024.35 | TF8040 | TwinCAT Building Automation ab V5.0.0.0 |