FB_BA_LightGroupDaylight

Dieses Template stellt eine tageslichtabhängige Lichtsteuerung dar, welche präsenzabhängig automatisch ein- und ausschaltet. Sie ist für Flure und Durchgangsbereiche gedacht. Eine vorgelagerte, optimierende Einschaltfuntkion FB_BA_LightCtrlValue sorgt für die Vorgabe eines Lichteinschaltwertes, der die nachgelagerte Konstantlichtregelung nahe an den gewünschten Sollwert schaltet. Sobald das Licht über Präsenz eingeschaltet ist, wird es automatisch dem Sollwert entsprechend nachgeregelt.
Funktion
Im Gegensatz zum Template FB_BA_LightGroupConstant (Konstantlichtregelung) wird hier nur der Regelbetrieb des Bausteines FB_BA_LightCtrlConst genutzt. Ein manuelles Übersteuern der Konstantlichtregelung ist für Flure und Durchgangsbereiche nicht notwendig, weshalb auf einen Schaltereingang verzichtet wird. Ist dennoch ein manuelles Einschalten erwünscht, so ist der Schalter wie ein Präsenzmelder zu behandeln und nicht an die Eingänge bSwi, bSwiUp oder bSwiDwn zu verknüpfen, da diese die Übersteuerung ohne Regelung auslösen.
Eine steigende Flanke an bPresence aktiviert den Baustein und er wird direkt auf den durch FB_BA_LightCtrlValue optimierten Einschaltwert gesetzt.
Bei einer fallenden Flanke am Templateeingang bPresence oder durch Setzen von bResetRoomFunction wird der Lichtsteuerbaustein deaktiviert, wobei er, falls angewählt, noch über eine Ausschaltrampe mit Verweilzeit auf einem Vor-Ausschhaltwert sein Abschalten ankündigt. Danach ist die Funktion inaktiv und der Ausgang bControlMode wird abgelöscht.
Neben den internen Telegrammen von LightEvent und OnValue (Einlernfunktion) werden auch die eingangsseitigen stAreaLighting und stScene mit auf den Selektor (PrioSwi) geführt.
Dabei stellt stArea das resultierende Telegramm aus den übergeordneten Ebenen (Bereich/area, Etage/floor und Gebäude/building) dar, während stScene für eine beliebige, die Konstantlichtregelung zu übersteuernde Lichtszene reserviert ist.
Das Telegramm OnValue.stTeachLighting ist nur während des Einlernvorgangs von OnValue (FB_BA_LightCtrlValue) aktiv.
Der Telegrammselektor (PrioSwi) leitet das höchst priorisierte Telegramm durch - bei gleicher Priorität das zuletzt gesendete (last writer wins).
Der Sollwert für die Konstantlichtregelung wird mithilfe eines Analogobjekts SpBrightness eingestellt.
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.
Der Lichtvorgabebaustein fOnValue benötigt ebenfalls die Information des aktuellen Lichtwertes der angesteuerten Gruppe. Da er selbst nur den Helligkeitszugewinn ermitteln kann, kann er auch nur den Aufschlag auf den aktuellen Lichtwert benennen - der absolute Wert ergibt sich dann aus der Summe von aktuellem Lichtwert und Aufschlag.
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_LightGroupDaylight EXTENDS FB_BA_Ext_LightBase
VAR_INPUT
bResetRoomFunction : BOOL;
bPresence : BOOL;
bTeachOnValue : BOOL;
fBrightness : REAL;
stAreaLighting : ST_BA_Lighting;
stScene : ST_BA_Lighting;
stReferenceFeedback : ST_BA_LightActuatorFeedback;
END_VAR
VAR_OUTPUT
stLighting : ST_BA_Lighting;
bAdjusting : BOOL;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
fHys : REAL;
nRampTi : UDINT;
nPreOffRampTi : UDINT;
nBrtnsAdjTi : UDINT;
fPreOffVal : REAL;
nPreOffDly : UDINT;
fMinVal : REAL;
nMinOffDly : UDINT;
nMinOnDly : UDINT;
fLgtT : REAL;
END_VAR
VAR_INPUT CONSTANT
SpBrightness : FB_BA_AV_Op;
OnValue : FB_BA_LightCtrlValue := ( ePrio := E_BA_LightingPrio.eMaintenance);
LightEvent : FB_BA_LightingEvt := ( ePrio := E_BA_LightingPrio.eSimple);
END_VAR
VAR
ConstLgtCtrl : FB_BA_LightCtrlConst;
PrioSwi : FB_BA_LightingTgmSel4;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
bResetRoomFunction | BOOL | Dieser Eingang schaltet den Konstantlichtregelbaustein ab. Die Abschaltung erfolgt über eine Rampe und Verweilzeit auf einem Basislichtwert, siehe Parameter: fPreOffVal, nPreOffDly und nPreOffRampT. |
bPresence | BOOL | Präsenzmeldeeingang. Im Template ist der Konstantlichtregelbaustein im Vollautomatikbetrieb vorkonfiguriert, so dass eine steigende Flanke an diesem Eingang die Funktion ein- und eine fallende Flanke die Funktion ausschaltet. |
bTeachOnValue | BOOL | Startet den Einlernvorgang am Baustein FB_BA_LightCtrlValue. Über ein Lichtsteuertelegramm der Priorität eMaintenance wird das Licht einmal auf 0% und einmal auf 100% geschaltet. Durch die hohe Priorität des Telegrammes (eMaintenance) werden Hand- und Automatiktelegramme am Prioritätenschalter PrioSwi übersteuert. |
fBrightness | REAL | Aktuelle Helligkeit für die Konstantlichtautomatik: Bereich und Einheit richten sich nach dem Helligkeitssensor. |
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. |
Ausgänge
Name | Typ | Beschreibung |
---|---|---|
stLighting | Resultierendes Ausgabeprogramm. | |
bAdjusting | BOOL | Der Konstantlichtregelbaustein befindet sich im Ausregelbetrieb oder aber die Einschaltfuntkion im Einlernbetrieb. Dieses Signal kann dazu genutzt werden, Helligkeitssensoren, welche nicht analog, sondern über eine Kommunikation arbeiten, häufiger abzufragen und damit ein günstigeres Regelverhalten zu erzielen. |
Eingänge CONSTANT PERSISTENT
Name | Typ | Beschreibung |
---|---|---|
fHys | REAL | Konstantlicht-Automatik: Hystereseband. Die Konstantlichtregelung steuert den Ausgang so weit hoch, bzw. herunter, bis die gemessene Helligkeit den Zielwert erreicht, bzw. leicht über- oder unterschreitet. Das Licht gilt dann als ausgeregelt. Erst wenn die gemessene Helligkeit den Sollwert um fHys/2 über- oder unterschreitet, wird erneut nachgeregelt. Bereich und Einheit richten sich nach dem Helligkeitssensor, siehe oben: fBrtnsSP und fBrtnsSen. In FB_Init voreingestellt auf 50. |
nRampTi | UDINT | Regelrampe der Konstantlicht-Automatik in Sekunden, bezogen auf ein Dimmen von 0 bis 100%. In FB_Init voreingestellt auf 60 s. |
nPreOffRampTi | UDINT | Rampe, mit vor dem Abschalten auf einen Basiswert fPreOffVal gefahren wird. In FB_Init voreingestellt auf 2 s. |
nBrtnsAdjTi | UDINT | Wartezeit in Sekunden nach Einschalten des Lichts, damit der Helligkeitssensor den korrekten Wert erfasst. Wird sowohl von der Lichtvorgabefunktion OnValue als auch von dem Lichtsteuerbaustein ConstLgtCtrl genutzt. |
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 10 s. |
fMinVal | REAL | Konstantlicht-Automatik: Mindestausgabewert. Wird dieser Wert intern unterschritten (d.h. es ist hell genug, dass kein künstliches Licht benötigt wird), so schaltet die Konstantlichtregelung das Licht nach Ablauf von nOffDly in Sekunden ab. Ist das Licht ausgeschaltet und die Regelung erkennt wieder Bedarf an Licht über dem Minimumwert, so schaltet die Regelung nach nOnDly in Sekunden das Licht wieder auf zunächst fMinVal ein. In FB_Init voreingestellt auf 4% |
nMinOffDly | UDINT | Konstantlicht-Automatik: Abschaltwartezeit in Sekunden, siehe fMinVal. In FB_Init voreingestellt auf 300s. |
nMinOnDly | UDINT | Konstantlicht-Automatik: Einschaltwartezeit in Sekunden, siehe fMinVal. In FB_Init voreingestellt auf 300s. |
fLgtT | REAL | Lichttemperatur: In FB_Init voreingestellt auf 3000K. |
Eingänge CONSTANT
Name | Typ | Beschreibung |
---|---|---|
SpBrightness | Analoges Eingabeobjekt: Sollwert der Regelung [lx]. | |
OnValue | Optimierende Einschaltfuntkion | |
LightEvent | Telegrammerzeuger für die Lichtwerte. Die Priorität ist voreingestellt auf eManualActuator. |
VAR
Name | Typ | Beschreibung |
---|---|---|
ConstLgtCtrl | Konstanlichtregelbaustein. | |
PrioSwi | Telegrammauswahl. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche Function |
---|---|
TwinCAT ab v3.1.4024.56 | TF8040 | TwinCAT Building Automation ab V5.8.0.0 |