Für einige Automatisierungsfälle habe ich mir ein Modul entwickelt, mit dem sich auf bestimmte Ereignisse zeitversetzt beziehungsweise im Nachgang reagieren lässt. Bisher hatte ich diese Funktionen über verschiedene Skripte umgesetzt und bin im Zuge der Inventur nun endlich dazu gekommen, daraus ein eigenes Modul zu machen.
Das Modul unterscheidet sich in einigen Punkten von der Treppenlichtsteuerung im Store, kann jedoch auch für ähnliche Anwendungsfälle eingesetzt werden. Die vorhandene Treppenlichtsteuerung konnte meine Anforderungen allerdings nicht vollständig abdecken. Vielleicht sucht jemand nach einer vergleichbaren Lösung – deshalb möchte ich das Modul hier gerne der Allgemeinheit zur Verfügung stellen.
Im Symcon Store als Beta zu suchen mit “Nachlaufsteuerung”.
Das Modul dient dazu, ein Ziel (z. B. Lüfter, Pumpe oder Licht) abhängig von einer oder mehreren überwachten Variablen, einer Nachlaufzeit und einem Wochenplan automatisch ein- und auszuschalten.
Inhaltsverzeichnis
1. Funktionsumfang
-
Schalten eines Zieles
-
Überwachung einer oder mehrerer Variablen
-
ODER-Verknüpfung mehrerer überwachter Variablen
-
Einstellbare Nachlaufzeit
-
Nachlaufstart beim Erreichen oder Verlassen des Auslösewertes
-
Wochenplan mit den Zuständen „Ein“ und „Inaktiv“
-
Wochenplan kann das Ziel dauerhaft eingeschaltet halten
-
Statusvariable zur Anzeige eines aktiven Nachlaufes
-
Nachlaufzeit direkt im Objektbaum anpassbar
-
Hauptschalter zum Aktivieren oder Deaktivieren der gesamten Modulsteuerung
2. Voraussetzungen
- Symcon ab Version 7.1
3. Software-Installation
-
Über den Module Store das Modul „Nachlaufsteuerung“ installieren.
-
Alternativ über das Module Control die entsprechende Repository-URL hinzufügen.
4. Einrichten der Instanzen in Symcon
Unter „Instanz hinzufügen“ kann das Modul „Nachlaufsteuerung“ mithilfe des Schnellfilters gefunden werden.
Konfigurationsseite
| Name | Beschreibung |
|---|---|
| Geschaltetes Ziel | Variable, die durch das Modul geschaltet werden soll |
| Überwachte Variablen | Eine oder mehrere Variablen, die das Modul überwacht |
| Reaktion auf TRUE/FALSE | Definiert den Auslösewert der Überwachung |
| Nachlaufzeit starten bei | Definiert, ob die Nachlaufzeit beim Erreichen oder Verlassen des Auslösewertes startet |
Funktionsweise
Das Modul dient dazu, ein Ziel (z. B. Lüfter, Pumpe oder Licht) abhängig von einer überwachten Variable, einer Nachlaufzeit und einem Wochenplan automatisch ein- und auszuschalten.
Unterhalb der Instanz wird zusätzlich ein Hauptschalter angelegt. Über diesen Hauptschalter kann die gesamte Funktion des Moduls ein- oder ausgeschaltet werden. Ist der Hauptschalter eingeschaltet, arbeitet das Modul wie konfiguriert. Ist der Hauptschalter ausgeschaltet, reagiert das Modul nicht auf überwachte Variablen und führt keine Nachlaufsteuerung aus. Der Hauptschalter dient damit als zentrale Freigabe für die gesamte Steuerung.
Im Modul wird zunächst eine überwachte Variable ausgewählt. Diese Variable löst die Steuerung aus. Zusätzlich wird ein geschaltetes Ziel ausgewählt. Dieses Ziel wird vom Modul über RequestAction() geschaltet.
Es kann festgelegt werden, auf welchen Zustand der überwachten Variable reagiert werden soll. Dabei kann entweder auf TRUE oder auf FALSE reagiert werden. Der gewählte Zustand ist der sogenannte Auslösewert.
Zusätzlich kann eingestellt werden, wann die Nachlaufzeit beginnen soll. Dabei gibt es zwei Möglichkeiten.
Die Nachlaufzeit kann direkt beim Erreichen des Auslösewertes starten. In diesem Fall wird beim Erreichen des Auslösewertes das Ziel eingeschaltet und gleichzeitig sofort die Nachlaufzeit gestartet. Nach Ablauf der eingestellten Zeit prüft das Modul, ob ausgeschaltet werden darf.
Alternativ kann die Nachlaufzeit erst beim Verlassen des Auslösewertes starten. Das entspricht dem klassischen Verhalten einer Nachlaufsteuerung. Dabei wird beim Erreichen des Auslösewertes zunächst nur das Ziel eingeschaltet. Erst wenn die überwachte Variable den Auslösewert wieder verlässt, beginnt die Nachlaufzeit. Nach Ablauf der Zeit wird geprüft, ob ausgeschaltet werden darf.
Beispiel: Wird auf TRUE reagiert und die Nachlaufzeit soll erst beim Ausschalten starten, dann passiert Folgendes: Sobald die überwachte Variable TRUE wird, schaltet das Modul das Ziel ein. Solange die Variable TRUE bleibt, bleibt auch das Ziel eingeschaltet. Erst wenn die Variable wieder FALSE wird, startet die Nachlaufzeit. Nach Ablauf der Nachlaufzeit wird das Ziel ausgeschaltet, sofern der Wochenplan dies erlaubt.
Wird der Auslösewert während einer laufenden Nachlaufzeit erneut erreicht, bleibt das Ziel eingeschaltet und der laufende Nachlauf wird beendet beziehungsweise neu gestartet. Dadurch wird verhindert, dass das Ziel während einer erneuten Aktivität ausgeschaltet wird.
Unterhalb der Instanz erstellt das Modul automatisch einen Wochenplan. Der Wochenplan besitzt die Zustände „Ein“ und „Inaktiv“.
Steht der Wochenplan aktuell auf „Ein“, wird das Ziel eingeschaltet gehalten. In diesem Zustand darf die Nachlaufsteuerung das Ziel nicht ausschalten. Der Wochenplan hat dann Vorrang.
Steht der Wochenplan auf „Inaktiv“, ist der Wochenplan deaktiviert oder ist aktuell keine definierte Zeit aktiv, darf die Nachlaufsteuerung das Ziel ausschalten.
Wechselt der Wochenplan von „Ein“ auf „Inaktiv“, erfolgt sofort eine neue Zustandsbewertung. Das Ziel kann dann direkt ausgeschaltet werden. Es wird nicht erst auf eine Nachlaufzeit gewartet.
Zusätzlich erstellt das Modul eine Statusvariable „Nachlauf aktiv“. Diese zeigt an, ob aktuell eine Nachlaufzeit läuft. Außerdem wird eine Variable für die Nachlaufzeit in Minuten erstellt. Über diese Variable kann die Nachlaufzeit jederzeit angepasst werden. Änderungen werden sofort berücksichtigt.
5. Statusvariablen und Profile
Die Statusvariablen und Kategorien werden automatisch angelegt. Das Löschen einzelner Objekte kann zu Fehlfunktionen führen.
Statusvariablen
| Name | Typ | Beschreibung |
|---|---|---|
| Aktiv | Boolean | Hauptschalter für die gesamte Modulsteuerung |
| Nachlauf aktiv | Boolean | Zeigt an, ob aktuell eine Nachlaufzeit aktiv ist |
| Nachlaufzeit | Integer | Definiert die Nachlaufzeit in Minuten |
Profile
Es werden keine zusätzlichen Variablenprofile benötigt.
6. Visualisierung
Der Hauptschalter kann direkt im Objektbaum oder im WebFront bedient werden. Ist der Hauptschalter ausgeschaltet, ist die gesamte Steuerung deaktiviert.
Die Nachlaufzeit kann direkt im Objektbaum oder im WebFront geändert werden.
Die Variable „Nachlauf aktiv“ zeigt den aktuellen Status der Nachlaufsteuerung an.
Der automatisch angelegte Wochenplan kann direkt bearbeitet werden.
7. Vorsicht und Haftungsausschluss
Die Verwendung des Moduls erfolgt auf eigene Verantwortung. Der Anwender ist selbst dafür verantwortlich, dass die angeschlossene Anlage fachgerecht betrieben wird und alle technischen, sicherheitsrelevanten und rechtlichen Anforderungen eingehalten werden.
Das Modul darf nicht dazu verwendet werden, sicherheitskritische Einrichtungen ohne zusätzliche Schutzmaßnahmen zu steuern. Vor dem Einsatz sollte geprüft werden, ob das geschaltete Ziel bei einer Fehlkonfiguration, einem Ausfall der Steuerung oder einer dauerhaft deaktivierten Funktion Schäden verursachen kann.
Besondere Vorsicht gilt bei der Verwendung für Heizungs-, Warmwasser- oder Zirkulationsanlagen. Wird mit dem Modul eine Warmwasser- oder Heizungszirkulation gesteuert, muss sichergestellt werden, dass die Zirkulation regelmäßig und ausreichend lange läuft. Eine Zirkulation darf nicht über längere Zeit vollständig abgeschaltet bleiben, wenn dadurch hygienische Risiken entstehen können. Insbesondere ist darauf zu achten, dass geeignete Maßnahmen zur Vorbeugung von Legionellenbildung eingehalten werden.
Das Modul ersetzt keine fachliche Planung, keine hygienische Bewertung und keine sicherheitstechnische Prüfung der Anlage. Bei Unsicherheit sollte eine qualifizierte Fachperson hinzugezogen werden.
8. PHP-Befehlsreferenz
Das Modul arbeitet vollständig ereignisbasiert und benötigt keine zusätzlichen PHP-Befehle.
9. Screenshots
Ansicht im Konfigurationsformular:
