FB_BA_LightCtrlConst

FB_BA_LightCtrlConst 1:

Dieser Baustein stellt eine Konstantlichtregelung mit manueller Übersteuerung dar.

Er kann sich, wie in VDI 3813 Blatt 2 beschrieben, in den folgenden Betriebsstatus befinden:

In den aktiven Zuständen (Regelbetrieb, Handübersteuerung) kann der Lichtausgabewert fOut beliebige Werte von 0…100% annehmen, im nicht aktiven Zustand ist er fest auf 0%.

Die Unterscheidung "aktiv" und "nicht aktiv" ist dann von Bedeutung, wenn mehrere Lichtsteuerfunktionen im Wechsel auf Aktoren zugreifen.

Damit eignet der Baustein sich für das Zusammenspiel mit anderen Lichtfunktionen in einer Prioritätsauswahl, in der der Ausgang fOut in Abhängigkeit der Betriebsstatusausgänge als gültiger Steuerwert angesehen wird.

Aufgrund des möglichen Zusammenspiels mit anderen Lichtsteuerfunktionen arbeitet die Lichtsteuerfunktion mit einem Eingang für den Helligkeitsstatus einer Referenzleuchte. Steuern mehrere Lichtfunktionen unabhängig voneinander per Prioritätssteuerung dieselbe Leuchte bzw. dieselbe Lichtgruppe an, so ist dem Baustein nicht bekannt, ob er der aktive ist. Mit Hilfe des Referenzeinganges kann jedoch immer vor jeder Schaltaktion auf den aktuellen Wert synchronisiert werden und vor einer Umschalt- (toggle-) Aktion beurteilt werden, ob das Licht im nächsten Schritt ein- oder ausgeschaltet werden soll.

Ist sichergestellt, dass die Funktion die alleinige ist, die das Licht ansteuert, so ist der Eingang nicht zu belegen. Er ist mit dem Wert -1 vorinitialisiert, was dem Baustein anzeigt, dass der Eingang nicht verknüpft ist.

Das bedeutet aber auch, dass es nicht möglich ist, online eine Eingangsverknüpfung zu löschen, ohne die Funktionsweise des Bausteines zu verfälschen!

Funktion

Vom nicht aktivierten Zustand aus gesehen arbeitet dieser Baustein in zwei Stufen: Kurze Tastendrücke an bSwi, bSwiUp oder bSwiDown sowie steigende Flanken an bOn, bSetCtrlMod oder bPrc schalten die Funktion zunächst in den Regelbetrieb. Der Präsenzmeldeeingang bPrc ist dabei jedoch nur im Vollautomatikmodus aktiv.

Der Betriebsmodus Vollautomatik oder Halbautomatik lässt sich am Eingang (eMode) parametrieren.

Einschaltverhalten

Die Lichtregelung wird zunächst auf den Wert fOnValCtrl geschaltet.

Das Schalten des Lichtes erfolgt dabei mit einer Rampe, die unter nSwiTi in Sekunden bezogen auf 0 bis 100% angegeben ist.

Ist der gewählte Lichtwert erreicht, so verharrt die Regelung für die Zeit nBrtnsAdjTi [s] auf diesem Wert, damit der Helligkeitssensor den korrekten Wert erfasst.

Bereits während dieser Wartezeit kann die Funktion in Handübersteuerung geschaltet werden.

Regelverhalten

Die Regelung versucht nun diesen Sollwert zu halten: erhöht sich der Tageslichteinfall, wird der Lichtstellwert am Ausgang fOut reduziert. Wird die Gesamthelligkeit schwächer, so wird der Lichtstellwert erhöht. Die Änderung folgt dabei ebenfalls einer Rampe, welche unter nRampTi in Sekunden bezogen auf 0 bis 100% angegeben ist. Die Konstantlichtregelung ist damit ein einfacher I-Regler.

Um zu verhindern, dass der Rampenbaustein ständig neue Lichtwerte vorgibt, kann am Eingang fHys ein Hysteresebereich angegeben werden.

Die Konstantlichtregelung steuert den Ausgang soweit hoch oder 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 der Hysterese richten sich nach dem Helligkeitssensor.

Minimalwert der Regelung

Änderungen im unteren Helligkeitsbereich werden häufig als störend empfunden.

Daher kann es sinnvoll sein, die Lichtregelung auf einen Minimal-Stellwert zu begrenzen und bei sehr hoher Außenhelligkeit das Licht dann ganz abzuschalten.

Hat die Regelung ihren Minimalstellwert fMinVal erreicht und soll noch weiter herunter regeln, so verharrt sie auf dem Minimalwert für die Zeit nOffDly [s] und schaltet dann auf den Ausgabewert 0.

Vor und nach dem Schalten wird jeweils der gemessene Helligkeitswert gespeichert. Die Differenz, welche sich daraus ergibt, ist der Helligkeitszuwachs durch Einschalten auf den Minimalwert.

Als neuer Schwellwert für das Wiedereinschalten gilt nun der Regelungssollwert minus dem Helligkeitszuwachs. Erreicht oder unterschreitet die gemessene Helligkeit diesen Schwellwert für die Zeit nOnDly [s], so wird das Licht wieder eingeschaltet und danach auf den Sollwert geregelt.

Die Wahl dieses Schwellwertes soll das folgende Diagramm verdeutlichen:

FB_BA_LightCtrlConst 2:
  1. Die gemessene Helligkeit fBrtns bewegt sich zunächst innerhalb der Toleranzgrenzen um den Sollwert fSP. Zum Ende hin überschreitet die Helligkeit jedoch den Toleranzbereich.
  2. Die Lichtregelung dimmt das Licht (Stellwert fOut) so weit herunter, bis der Lichtsollwert erreicht bzw. in dem SPS-Zyklus gerade unterschritten wird. Der gemessene Lichtwert fBrtns kann demnach etwas unter dem Sollwert liegen, was jedoch in Kauf genommen wird, um ständiges Nachregeln zu vermeiden.
  3. Die gemessene Helligkeit fBrtns bewegt sich wieder innerhalb der Toleranzgrenzen, wie in Phase 1.
  4. Es wird erneut geregelt, diesmal auf den minimalen Ausgabestellwert, wodurch die gesamte gemessene Helligkeit jedoch wieder in den Toleranzbereich rückt.
  5. Die gemessene Helligkeit steigt durch Außenhelligkeit erneut an und überschreitet den Toleranzbereich.
  6. Die gemessene Helligkeit fBrtns bleibt weiterhin oberhalb des Toleranzbereiches, die interne Zeit nOffDly [s] läuft ab.
  7. Das Licht wird abgeschaltet (fOut = 0). Die Differenz der gemessenen Helligkeit vor und nach dem Abschalten wird als Helligkeitszugewinn durch Einschalten des Lichtes auf den Minimalstellwert intern gemerkt. Der neue Schwellwert, der nun unterschritten werden muss, ist der Regelungssollwert minus dem Helligkeitszugewinn. Der Wahl dieses Schwellwertes liegen folgende Überlegungen zugrunde:
  1. Der Schwellwert wird für die Zeit nOnDly [s] unterschritten.
  2. Das Licht wird wieder zunächst auf den Minimalwert geschaltet und danach so lange hochgedimmt, bis die gemessene Helligkeit dem Sollwert fSP entspricht.
  3. Die gemessene Helligkeit fBrtns bewegt sich wieder innerhalb der Toleranzgrenzen um den Sollwert fSP.

Handübersteuerung

Aus dem Regelbetrieb heraus lassen folgende Aktionen die Funktion in den Handbetrieb (Ausgänge bControlMode = FALSE und bManualMode = TRUE) wechseln:

"Aus" im Handbetrieb bedeutet dabei, dass die Gesamtfunktion weiterhin aktiv ist!

Mit einer positiven Flanke an bRstManMod oder bSetCtrlMod wird aus der Handübersteuerung wieder in den Regelbetrieb geschaltet.

Memory-Mode

Ist der Memory-Mode am Eingang bMemMod aktiviert, so wird sich intern der Wert gemerkt, den der Baustein vor dem letzten manuellen Abschalten innehatte. Beim nächsten Einschalten im Handmodus wird dieser Wert dann übernommen.

Ist Memory-Mode deaktiviert, erfolgt das Einschalten im Handmodus immer mit dem Wert fOnValMan.

Deaktivieren der Funktion

Aus dem Regelbetrieb oder Handbetrieb heraus lassen zwei Ereignisse die Funktion in den deaktivierten Zustand (Ausgänge bControlMode = FALSE und bManualMode = FALSE) wechseln:

Bei der Deaktivierung wird über eine Rampe nPreOffRampTi (in Sekunden bezogen auf 100% bis 0%) auf einen Basiswert fPreOffVal herabgedimmt. Dieser Wert steht für die Zeit nPreOffDly [s] am Ausgang an, bevor ausgeschaltet wird. Der Funktionsbaustein ist dann deaktiviert.

Während der Ausschaltphase kann der Baustein wieder aktiviert werden, wobei er dann wieder in den Regelbetrieb übergeht.

Die Aktivierung erfolgt dabei über Kurze Tastendrücke an bSwi, bSwiUp oder bSwiDown sowie steigende Flanken an bOn oder bPrc. Der Präsenzmeldeeingang bPrc ist dabei jedoch nur im Vollautomatikmodus aktiv.

FB_BA_LightCtrlConst 3:

Ist der Lichtausgabewert vor der Deaktivierung bereits kleiner als der erwähnte Basiswert, so wird die Abschaltroutine übersprungen und unmittelbar ausgeschaltet.

FB_BA_LightCtrlConst 4: Eingänge

VAR_INPUT
  bSwi              : BOOL;
  bSwiUp            : BOOL;
  bSwiDwn           : BOOL;
  bOn               : BOOL;
  bOff              : BOOL;
  fSetValMan        : REAL;
  bSetValMan        : BOOL;
  bSetCtrlMod       : BOOL;
  bRstManMod        : BOOL;
  bRst              : BOOL;
  bPrc              : BOOL;
  fBrtns            : REAL;
  fSP               : REAL;
  fHys              : REAL := 50;
  nSwiOvrTi         : UDINT := 250;
  nSwiTi            : UDINT := 2;
  nDimTi            : UDINT := 5;
  nRampTi           : UDINT := 60;
  nPreOffRampTi     : UDINT := 10;
  nBrtnsAdjTi       : UDINT := 5;
  fOnValCtrl        : REAL := 50;
  fOnValMan         : REAL  := 100;
  fPreOffVal        : REAL  := 20;
  nPreOffDly        : UDINT := 20;
  fMinVal           : REAL;
  nMinOffDly        : UDINT := 300;
  nMinOnDly         : UDINT := 300;
  bMemMod           : BOOL;
  eLgtActMod        : E_BA_LightActivationMode;
  fRefLgtVal        : REAL  := -1;
END_VAR

Name

Typ

Beschreibung

bSwi

BOOL

Ist der Konstantlichtregelbaustein noch nicht aktiv, so schaltet ein kurzer Tastendruck zunächst die Regelung ein, danach lassen weitere Signale den Baustein in die Handfunktion übergehen und es gilt: kurzer Tastendruck: an/aus, lange Tastendrücke: wechselweise hoch- oder herunterdimmen.

bSwiUp

BOOL

Ist der Konstantlichtregelbaustein noch nicht aktiv, so schaltet ein kurzer Tastendruck zunächst die Regelung ein, danach lassen weitere Signale den Baustein in die Handfunktion übergehen und es gilt: kurzer Tastendruck: an/aus, lange Tastendrücke: gezielt hochdimmen.

bSwiDwn

BOOL

Ist der Konstantlichtregelbaustein noch nicht aktiv, so schaltet ein kurzer Tastendruck zunächst die Regelung ein, danach lassen weitere Signale den Baustein in die Handfunktion übergehen und es gilt: kurzer Tastendruck: an/aus, lange Tastendrücke: gezielt herabdimmen.

bOn

BOOL

Ist der Konstantlichtregelbaustein noch nicht aktiv, so schaltet ein TRUE-Signal zunächst die Regelung ein, danach bezieht sich dieser Eingang nur auf das Einschalten im Hand-Modus.

bOff

BOOL

Schaltet das Licht aus, der Konstantlichtregelbaustein befindet sich weiterhin im Handbetrieb. War der Konstantlichtregelbaustein vorher im Regelbetrieb, so befindet er sich nun im Handbetrieb.

fSetValMan

REAL

Handvorgabewert. Die Werte am Eingang fSetValMan werden bei durch eine steigende Flanke an bSetValMan als Lichtausgabewert übernommen. Der Baustein geht durch das Setzen direkt in den Handbetrieb über, egal, ob er vorher im Regelbetrieb oder im deaktivierten Zustand war.

bSetValMan

BOOL

Übernahme des Handvorgabewertes, siehe fSetValMan.

bSetCtrlMod

BOOL

Eine steigende Flanke versetzt den Baustein direkt in den Regelbetrieb, unabhängig davon, ob er vorher im deaktivierten Zustand oder im Handbetrieb war.

bRstManMod

BOOL

Dieser Eingang lässt den Konstantlichtregelbaustein, sollte er sich im Handbetrieb befinden, zurück in den Automatikmodus wechseln.

bRst

BOOL

Dieser Eingang schaltet den Konstantlichtregelbaustein ab. Die Abschaltung erfolgt über eine Rampe und Verweilzeit auf einem Basislichtwert, siehe unten: fPreOffVal, nPreOffDly und nPreOffRampT.

bPrc

BOOL

Präsenzmeldeeingang. Ist der Konstantlichtregelbaustein im Vollautomatikbetrieb konfiguriert, so kann über diesen Eingang eine steigende Flanke die Funktion aktivieren, falls sie vorher nicht aktiv war und eine fallende Flanke deaktivieren.

Im Halbautomatikbetrieb deaktiviert nur eine fallende Flanke an diesem Eingang den Konstantlichtregelbaustein.

"Aktivieren" bedeutet hierbei, dass die Funktion um Handbetrieb eingeschaltet wird (Ausgänge bControlMode = TRUE und bManualMode = FALSE). Deaktivieren bedeutet: die Funktion ist weder im Hand-, noch im Regelbetrieb aktiv (Ausgänge bControlMode = FALSE und bManualMode = FALSE).

fBrtns

REAL

Aktuelle Helligkeit für die Konstantlichtautomatik: Bereich und Einheit richten sich nach dem Helligkeitssensor.

fSP

REAL

Helligkeits-Sollwert für die Konstantlichtautomatik: Es wird ein Abgleich mit fBrtnsSen angestrebt. Bereich und Einheit richten sich daher nach dem Helligkeitssensor.

fHys

REAL

Konstantlicht-Automatik: Hystereseband. Die Konstantlichtregelung steuert den Ausgang soweit 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.

nSwiOvrTi

UDINT

Zeit [ms] zur Unterscheidung zwischen kurzem- und langem Tastendruck.

nSwiTi

UDINT

Rampe für die Schaltfunktionen in Sekunden, bezogen auf ein Dimmen von 0 bis 100 %.

nDimTi

UDINT

Rampe für die Dimmfunktionen in Sekunden, bezogen auf ein Dimmen von 0 bis 100 %.

nRampTi

UDINT

Regelrampe der Konstantlichtautomatik in Sekunden, bezogen auf ein Dimmen von 0 bis 100%.

nPreOffRampTi

UDINT

Rampe, mit der vor dem Abschalten auf einen Basiswert fPreOffVal gefahren wird.

nBrtnsAdjTi

UDINT

Wartezeit [s] nach Einschalten des Lichts, damit der Helligkeitssensor den korrekten Wert erfasst.

fOnValCtrl

REAL

Einschaltwert für den Regelbetrieb, sollte dieser bei vorher ausgeschalteter Funktion aktiviert werden.

fOnValMan

REAL

Einschaltwert der Handfunktion, sollte nicht über den Parameter eOperationalMode "Memory-Mode" angewählt sein.

fPreOffVal / nPreOffDly

REAL / UDINT

Basiswert und Haltezeit auf diesem Wert vor Ausschalten der Gesamtfunktion. Unterschreitet der aktuelle Lichtwert den Basiswert bereits, so ist diese Funktion nicht aktiv und es wird unmittelbar abgeschaltet.

fMinVal

REAL

Konstantlichtautomatik: 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 [s] ab. Ist das Licht ausgeschaltet und die Regelung erkennt wieder Bedarf an Licht über dem Minimumwert, so schaltet die Regelung nach nOnDly [s] das Licht wieder auf zunächst fMinVal ein.

nMinOffDly

UDINT

Konstantlichtautomatik: Abschaltwartezeit in Sekunden, siehe fMinVal.

nMinOnDly

UDINT

Konstantlichtautomatik: Einschaltwartezeit in Sekunden, siehe fMinVal.

bMemMod

BOOL

Memory-Mode: Beim Einschalten des Lichts im Handbetrieb nimmt das Licht den Wert an, den die Funktion vor dem letzten Ausschalten innehatte. Ist der "Memory-Mode" nicht aktiv, so ist der Einschaltwert über fOnValMan definiert.

eLgtActMod

E_BA_LightActivationMode

Aktivierungsmodus der Lichtsteuerfunktion.

Vollautomatik: Die Lichtsteuerfunktion wird über erkannte Präsenz aktiviert und über wegfallende Präsenz deaktiviert. Tastendrücke können die Funktion auch aktivieren.

Halbautomatik: Aktivierung der Lichtsteuerfunktion nur über Tastendruck, über wegfallende Präsenz ist sie automatisch deaktiviert.

fRefLgtVal

REAL

Lichtwert eines einzelnen Lichtaktors, der die Lichtzone repräsentiert. Dieser Eingang dient der Beurteilung, ob im Handbetrieb mit dem nächsten Tastendruck ein- oder ausgeschaltet wird oder ab welchem Wert gedimmt werden soll.

Dieser Eingang ist mit "-1" vorinitialisiert. Bei einer Nichtbelegung wird dieses erkannt und davon ausgegangen, dass diese Funktion die alleinige zur Ansteuerung der Leuchten ist. Damit wird der Ausgabewert fOut als Lichtwert zur Beurteilung der nächsten Schaltaktionen herangezogen.

FB_BA_LightCtrlConst 5: Ausgänge

VAR_OUTPUT
  fOut              : REAL;
  bControlMode      : BOOL;
  bManualMode       : BOOL;
  bAdjusting        : BOOL;
  nRemTiminOff      : UDINT;
  nRemTiminOn       : UDINT;
END_VAR

Name

Typ

Beschreibung

fOut

REAL

Lichtausgabewert in 0…100 %.

bControlMode

BOOL

Zeigt an, ob der Baustein im Regelbetrieb arbeitet.

bManualMode

BOOL

Zeigt an, ob der Baustein im Handbetrieb arbeitet.

bAdjusting

BOOL

Der Konstantlichtregelbaustein befindet sich im Ausregelbetrieb. 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.

nRemTiMinOff

UDINT

Kontrollausgang: Die Regelausgabe befindet sich am Minimalwert und es läuft der Timer bis zum Schalten auf "0%" ab. Dieser Ausgang zeigt die verbleibenden Sekunden.

nRemTiMinOn

UDINT

Kontrollausgang: Die Konstantlichtregelung hat das Licht wegen genügend Umgebungslicht abgeschaltet, nun ist jedoch wieder Lichtbedarf vorhanden und es läuft der Timer bis zum Wiedereinschalten ab. Dieser Ausgang zeigt die verbleibenden Sekunden.

Voraussetzungen

Entwicklungsumgebung

Erforderliche SPS-Bibliothek

TwinCAT ab v3.1.4024.55

Tc3_BA2 ab v5.3.19.0