Einleitung
Die IEC 62386-301 beschreibt DALI-Steuergeräte, die als Taster definiert werden.
DALI-Steuergeräte nach IEC 62386-301 entsprechen dem Instanz-Typ 1. Der Typ einer Instanz kann mit dem Baustein FB_DALI103QueryInstanceType abgefragt werden.
Eingangswert
Über den Baustein FB_DALI103QueryInputValue kann der aktuelle Zustand (inputValue) des Tasters abgefragt werden. Der Wert ist 16#FF, wenn der Taster betätigt ist. Unbetätigt ist der Wert 16#00.
Timer
Die IEC 62386-301 definiert spezifische Timer, über die das Versenden der verschiedenen Ereignisse beeinflusst werden kann.
Die jeweilige Zeit errechnet sich aus

Time (Zeitangabe) | Multiplier | Voreinstellwert des Multipliers | Tincr Inkrementalwert | Tdefault Standardwert | Tmin niedrigst- möglicher Einstellwert | Tmax höchst- möglicher Einstellwert |
---|---|---|---|---|---|---|
Tshort | tShort | Max (25, tShortMin) | 20 ms | Max (25, tShortMin) * 20 ms | tShortMin * 20 ms | 5100 ms |
Tdouble | tDouble | 0 | 20 ms | tDoubleMin * 20 ms | tDoubleMin * 20 ms | 2000 ms |
Trepeat | tRepeat | 8 | 20 ms | 160 ms | 100 ms | 2000 ms |
Tstuck | tStuck | 20 | 1 s | 20 s | 5 s | 255 s |
tShortMin: Herstellerspezifisch (siehe tShortMin).
tDoubleMin: Herstellerspezifisch (siehe tDoubleMin).
![]() | Stellen Sie die Zeiten so ein, dass möglichst wenige Ereignisse versendet werden. Werden zu viele Ereignisse versendet, kann sich das negativ auf das Verhalten der Anwendung auswirken. |
Ereignis-Filter
DALI-Steuergeräte sind in der Lage verschiedene Ereignisse zu versenden. Der Ereignis-Filter besteht aus einem 8 Bit-Wert, wobei jedes einzelne Bit festlegt, ob ein Ereignis gesperrt oder freigegeben wird. Ist das entsprechende Bit gesetzt, so ist das Ereignis freigegeben, sonst ist es gesperrt.
Mit dem Baustein FB_DALI103QueryEventFilter kann der Wert des Ereignis-Filters gelesen und mit dem Baustein FB_DALI103SetEventFilter beschrieben werden.
Zum Auslösen zeitgesteuerter Ereignisse muss der Ereignis-Filter (siehe eventFilter) entsprechend konfiguriert sein.
Bit | Ereignis | Beschreibung |
---|---|---|
0 | Button Released | Der Taster wurde losgelassen. |
1 | Button Pressed | Der Taster wurde gedrückt. |
2 | Short Press | Der Taster wurde betätigt und schnell wieder losgelassen, ohne erneut betätigt zu werden (kurzer Tastendruck). |
3 | Double Press | Der Taster wurde betätigt, losgelassen und schnell erneut betätigt (doppelter Tastendruck). |
4 | Long Press Start | Der Taster wurde betätigt, ohne dass dieser zwischenzeitig losgelassen wurde (langer Tastendruck). |
5 | Long Press Repeat | Wurde der Taster lange betätigt (Long Press Start), ohne zwischenzeitig losgelassen zu werden, so wird in regelmäßigen Abständen dieses Ereignis versendet. |
6 | Long Press Stop | Wird nach einem langen Tastendruck der Taster wieder losgelassen, so wird dieses Ereignis versendet. |
7 | Button Free / Button Stuck | Ist der Taster für eine sehr lange Zeit betätigt, so wird davon ausgegangen das dieser klemmt und das Ereignis Button Stuck wird versendet. Button Free wird versendet, wenn der Taster wieder als unbetätigt erkannt wurde. |
![]() | Schalten Sie nur die Ereignisse frei, die Sie für die Anwendung benötigen. Werden zu viele Ereignisse versendet, kann sich das negativ auf das Verhalten der Anwendung auswirken. |
Ereignis Input Notification
Beim Instanz-Typ 1 besteht die Möglichkeit mit Hilfe des Ereignisfilters verschiedene Ereignisse freizugeben. Alle Ereignisse werden vom DALI-Steuergerät durch eine Input Notification gesendet und können mit FB_DALIGetInputNotification empfangen werden.
In der folgenden Tabelle sind die möglichen Ereignisse (Spalte Ereignis Name) und deren binäre Darstellung (Spalte Ereignis Information) aufgeführt.
Ereignis Name | Ereignis Information | Beschreibung |
---|---|---|
Button Released | 2#00_0000_0000 | Der Taster wurde losgelassen. |
Button Pressed | 2#00_0000_0001 | Der Taster wurde gedrückt. |
Short Press | 2#00_0000_0010 | Der Taster wurde betätigt und schnell wieder losgelassen, ohne erneut betätigt zu werden (kurzer Tastendruck). |
Double Press | 2#00_0000_0101 | Der Taster wurde betätigt, losgelassen und schnell erneut betätigt (doppelter Tastendruck). |
Long Press Start | 2#00_0000_1001 | Der Taster wurde betätigt, ohne dass dieser zwischenzeitig losgelassen wurde. |
Long Press Repeat | 2#00_0000_1011 | Wurde der Taster lange betätigt (Long Press Start), ohne zwischenzeitig losgelassen zu werden, so wird in regelmäßigen Abständen dieses Ereignis versendet. |
Long Press Stop | 2#00_0000_1100 | Wird nach einem langen Tastendruck der Taster wieder losgelassen, so wird dieses Ereignis versendet. |
Button Free | 2#00_0000_1110 | Button Free wird versendet, wenn der Taster nach dem Ereignis Button Stuck wieder als unbetätigt erkannt wurde. |
Button Stuck | 2#00_0000_1111 | Ist der Taster für eine sehr lange Zeit betätigt, so wird davon ausgegangen das dieser klemmt und das Ereignis Button Stuck wird versendet. |
Ereignis Short Press

Das Short Press Ereignis wird ausgelöst, wenn innerhalb der Zeit Tshort die Taste wieder losgelassen und mindestens für die Zeit Tdouble nicht erneut betätigt wurde. Wenn nach Ablauf der Zeit Tdouble die Taste erneut gedrückt wird, kann ein erneutes Short Press Ereignis ausgelöst werden.
Ereignis Double Press

Das Ereignis Double Press wird ausgelöst, wenn innerhalb der Zeit TShort die Taste losgelassen und vor Ablauf der Zeit Tdouble erneut gedrückt wurde.
Ereignisse Long Press Start, Long Press Repeat und Long Press Stop

Das Long Press Ereignis wird ausgelöst, wenn nach Ablauf der Zeit Tshort die Taste weiterhin gedrückt bleibt. Anschließend startet die Zeit Trepeat. Ist diese Zeit abgelaufen, wird das Long Press Repeat Ereignis ausgelöst. Bleibt die Taste weiterhin gedrückt, so startet die Zeit Trepeat wiederholt und nach jedem Ablauf wird das Long Press Repeat Ereignis ausgelöst.
Das Loslassen der Taste löst das Long Press Stop Ereignis aus.
Ereignisse Button Free und Button Stuck
Das Button Stuck Ereignis wird ausgelöst, sobald der Taster für die Zeit Tstuck betätigt wird, ohne das er zwischenzeitlich losgelassen wurde. Wird der Taster nach dem Button Stuck Ereignis losgelassen, so tritt unmittelbar das Button Free Ereignis ein.
Der minimale Einstellwert für diese Zeit beträgt 5 s, der Standardeinstellwert beträgt 20 s (siehe Tabelle oben).
Es ist zu beachten, dass sich das Long Press Ereignis nicht zeitlich mit dem Button Stuck Ereignis überschneidet, daher sollte der Wert nicht zu klein gewählt werden.