FB_BA_LightGroupPresence

In einer Licht-Zone werden ein oder mehrere Lichtaktoren zur gleichzeitigen Ansteuerung zusammengefasst, je nachdem wie es die örtlichen Gegebenheiten erfordern.
Dieses Template stellt eine Licht-Zone (Raum) dar, welche nur über Präsenz geschaltet wird. Typische Anwendungsfälle sind Sanitärbereiche oder innenliegende Flure.
Funktion
Eine steigende Flanke an bPresence schaltet das Licht über den internen Lichtsteuerbaustein LightSwitch ein.
Der Ausgang bAutomaticMode wechselt auf TRUE und der Lichtwert wird über den Baustein LightEvent als Telegramm ST_BA_Lighting ausgegeben.
Bei einer fallenden Flanke an bPresence wird das Licht zunächst über eine Rampe auf einen Minimalwert gedimmt (falls parametriert, siehe FB_BA_LightCtrl) und dann abgeschaltet. Der Ausgang bAutmaticMode wechselt auf FALSE und das Lichttelegramm wird am Baustein LightEvent deaktiviert.
Über eine steigende Flanke den Eingang bResetRoomFunction kann eine vorzeitige Abschaltung und Deaktivierung erreicht werden.
Eingang stReferenceFeedback
Über diesen Eingang werden Informationen über den angesteuerten Lichtaktor bzw. den Referenzaktor einer Gruppe in die Lichtsteuerfunktion zurückgeführt.
Hierbei ist der Lichtwert des Referenzaktors von besonderer Bedeutung: Ist der Lichtaktor bereits von einer anderen Funktion gleicher oder niederer Priorität angesteuert und das hier beschriebene Template "übernimmt" nun die Kontrolle, so muss es den Aktor ausgehend von seinem bestehenden Lichtwert aus ansteuern.
Darüber hinaus werden aktuelle Werte und Status übertragen, die über die HMI zur Anzeige gebracht werden können.
Datenaustausch HMI
Der Datenaustausch mit der HMI wird hier in der Basisklasse FB_BA_Ext_LightBase (interner Baustein) realisiert. In diesem Template sichtbar ist die Verwendung folgender Variablen:
- bLightOn_Out: Ausgabeinformation "Licht Ein" an die HMI.
- bErr_Out: Ausgabeinformation "Referenzaktor in Störung" an die HMI.
- eActualPrio_Out: Aktuell steuernde Telegrammpriorität an die HMI.
![]() | Die Initialisierung des Templates erfolgt innerhalb der Methode FB_Init. |
Blockschaltbild

Syntax
FUNCTION_BLOCK FB_BA_LightGroupPresence EXTENDS FB_BA_Ext_LightBase
VAR_INPUT
bResetRoomFunction : BOOL;
bPresence : BOOL;
stAreaLighting : ST_BA_Lighting;
stScene : ST_BA_Lighting;
stReferenceFeedback : ST_BA_LightActuatorFeedback;
END_VAR
VAR_OUTPUT
stLighting : ST_BA_Lighting;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
nSwiTi : UDINT;
nPreOffRampTi : UDINT;
fOnVal : REAL;
fPreOffVal : REAL;
nPreOffDly : UDINT;
fLgtT : REAL;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
LightEvent : FB_BA_LightingEvt :=( ePrio:= E_BA_LightingPrio.eSimple);
END_VAR
VAR
LightSwitch : FB_BA_LightCtrl;
PrioSwi : FB_BA_LightingTgmSel4;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
bResetRoomFunction | BOOL | Dieser Eingang schaltet den Lichtbaustein LightSwitch ab - er ist dann nicht mehr aktiv (Ausgang bAutmaticMode/bManualMode = FALSE). Die Abschaltung erfolgt über eine Rampe und Verweilzeit auf einem Basislichtwert, siehe Parameter: fPreOffVal, nPreOffDly und nPreOffRampT. |
bPresence | BOOL | Präsenzmeldeeingang. Eine steigende Flanke die schaltet das Licht ein und eine fallende Flanke aus. Das Ein- und Ausschalten über Präsenz geht mit einer Aktivierung und Deaktivierung des Lichtbausteins einher. |
stAreaLighting | Resultierendes Telegramm aus den übergeordneten Ebenen (Bereich/area, Etage/floor und Gebäude/building), welches im Baustein FB_BA_AreaLighting gebildet wird. | |
stScene | Reservierter Telegramm-Eingang für eine Szenenansteuerung. | |
stReferenceFeedback | Rückmeldeeingang des angesteuerten Lichtaktors bzw. der Führungsleuchte der angesteuerten Gruppe. |
Eingänge CONSTANT PERSISTENT
Name | Typ | Beschreibung |
---|---|---|
nSwiTi | UDINT | Rampe für die Schaltfunktionen in Sekunden, bezogen auf ein Dimmen von 0 bis 100%. In FB_Init voreingestellt auf 2s. |
nPreOffRampTi | UDINT | Rampe, mit vor dem Abschalten auf einen Basiswert fPreOffVal gefahren wird. In FB_Init voreingestellt auf 2s. |
fOnVal | REAL | Einschaltwert. In FB_Init voreingestellt auf 100%. |
fPreOffVal / nPreOffDly | REAL / UDINT | Basiswert und Haltezeit auf diesem Wert vor dem Ausschalten der Gesamtfunktion. Unterschreitet der aktuelle Lichtwert den Basiswert bereits, so ist diese Funktion nicht aktiv und es wird unmittelbar abgeschaltet. In FB_Init voreingestellt auf 4% und 10s. |
fLgtT | REAL | Lichttemperatur: In FB_Init voreingestellt auf 3000K. |
Eingänge CONSTANT
Name | Typ | Beschreibung |
---|---|---|
LightEvent | Telegrammerzeuger für die Lichtwerte. Die Priorität ist voreingestellt auf eManualActuator. |
VAR
Name | Typ | Beschreibung |
---|---|---|
LightSwitch | Lichtsteuerbaustein. | |
PrioSwi | Telegrammauswahl. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche Function |
---|---|
TwinCAT ab v3.1.4024.56 | TF8040 | TwinCAT Building Automation ab V5.8.0.0 |