Viele Menschen, die ihr Haus für längere Zeit verlassen, z. B. in den Urlaub fahren, fragen sich, wie sie ihr Haus vor einem möglichen Einbruch schützen können. Eine der Optionen ist ein Alarmsystem, einbruchhemmende Rollläden und Überwachung. Ein potenzieller Einbrecher kann jedoch das Haus beobachten, und der Anblick tagelang geschlossener Rollläden ist ein deutliches Zeichen dafür, dass das Haus leer ist. Ein kostengünstiger und sehr effektiver Abschreckungsfaktor ist der Anblick eingeschalteter Lichter, was für den Einbrecher ein Signal ist, dass Bewohner zu Hause sind. Wie kann man dies jedoch so umsetzen, dass die Lichter nicht ständig brennen, sondern nur zu bestimmten Tageszeiten und dabei natürliches menschliches Verhalten nachahmen? Hier kommt die Installation eines intelligenten Hauses mit Anwesenheitssimulationsfunktion ins Spiel. Im weiteren Teil dieses Tutorials beschreiben wir, wie man eine solche Funktion in einem Haus mit installiertem DOMIQ/Base-Modul umsetzen kann.
1. Konzept des Anwesenheitssimulators #
Die grundlegende Funktionalität des Anwesenheitssimulators besteht in der Steuerung der Beleuchtung, die menschliches Verhalten nachahmt – ausgewählte Lichter werden in zufälliger Reihenfolge eingeschaltet und bleiben für eine zufällige Zeitdauer eingeschaltet. Dadurch arbeitet das System unregelmäßig, was die Realitätsnähe des Simulators zusätzlich erhöht.
Ein weiteres Element des Anwesenheitssimulators kann die Steuerung von Rollläden/Jalousien nach Zeitregeln sein. Zum Beispiel können Rollläden nach Sonnenuntergang heruntergelassen und zum Sonnenaufgang hochgezogen werden. Ebenso kann die Außenbeleuchtung des Gebäudes gesteuert werden.
Ist das Haus mit einem Bewässerungssystem für Grünflächen ausgestattet, ist es auch eine gute Idee, dieses System als Teil des Anwesenheitssimulators zu verwenden.
Die Simulation kann auf zwei Arten gestartet/gestoppt werden. Die erste ist vollständig automatisch, da sie auf Zeitregeln basiert, die im Base-Modul festgelegt sind. Während der Konfiguration muss die Startzeit der Simulation bestimmt werden, z. B. Sonnenuntergang, und die Endzeit der Simulation, z. B. die Uhrzeit, zu der die Bewohner gewöhnlich schlafen gehen.
Die zweite Möglichkeit sieht das manuelle Ein- und Ausschalten der Simulation durch die Benutzer des Systems zu jeder Zeit mittels der DOMIQ/Remote- oder DOMIQ/AirDisplay-App vor.
Nach dem Start der Simulation werden die Lichter in zufälliger Reihenfolge eingeschaltet und bleiben für eine zufällige Zeitdauer an. Der Zyklus wird wiederholt, bis die eingestellte Endzeit der Simulation erreicht ist.
2. Inbetriebnahme #
Die Inbetriebnahme des Anwesenheitssimulators besteht aus mehreren Schritten, die im weiteren Teil dieses Kapitels beschrieben werden. Die Beschreibung beschränkt sich auf die Inbetriebnahme der Beleuchtungssteuerung in zufälliger Weise. Die Steuerung von Rollläden/Jalousien, Außenbeleuchtung und optional Gartenbewässerung sollte mit Standard-Timern realisiert werden.
2.1. Skript #
Den wesentlichen Bestandteil des Anwesenheitssimulators bildet das Skript, das diesem Tutorial als Anhang beiliegt. Das Skript muss im Base-Modul im Reiter Ressourcen > Skripte geladen werden. Danach muss es im Reiter Logik mit folgendem Befehl importiert werden:
import’presencesimulator’
Der nächste Schritt ist die Konfiguration des Skripts, um es an die jeweilige Installation anzupassen. Zuerst müssen die Lichter angegeben werden, die an der Simulation teilnehmen sollen. Dazu im Reiter Logik die Funktion addDevice für jedes Gerät aufrufen und dessen Identifikator als Argument übergeben. Beispiel für das Hinzufügen von zwei Geräten:
addDevice(’LCN.output.0.10.1’)
addDevice(’EXP.ouput.7.1’)
Im nächsten Schritt ist die maximale Zeit in Minuten anzugeben, für die ein Licht eingeschaltet wird. Dieser Wert ist gleichzeitig die maximale Pause zwischen den Einschaltungen desselben Lichts. Der Standardwert beträgt 30 Minuten. Wenn dieser Standardwert verwendet werden soll, kann dieser Schritt übersprungen werden. Um den Standardwert zu ändern, ist im Reiter Logik die Funktion setInterval aufzurufen. Beispiel für das Setzen auf 60 Minuten:
setInterval(60)
Zum Schluss muss folgende Zeile eingefügt werden: checkStart()
2.2. Zeitregeln #
Damit der Anwesenheitssimulator automatisch funktionieren kann, müssen zwei Timer definiert werden – einer, der den Simulator startet, und ein zweiter, der ihn ausschaltet. Wir empfehlen, dass der Timer, der die Simulation startet, 30 Minuten nach Sonnenuntergang ausgelöst wird. Die Definition der Timer ist wie folgt:
WICHTIG: Es dürfen ausschließlich die unten aufgeführten MEM-Variablennamen verwendet werden.
Die Verwendung anderer Namen verhindert das ordnungsgemäße Funktionieren des Simulators.
- Füge einen neuen Timer hinzu – dieser wird zur geplanten Startzeit der Anwesenheitssimulation ausgelöst:
- Im Feld Stunde schreibe: sunset, wenn die Simulation bei Sonnenuntergang starten soll, oder MEM.simulationstart.hour, wenn der Benutzer die Startzeit der Simulation wählen soll.
- Im Feld Minute schreibe: 30, damit der Timer 30 Minuten nach Sonnenuntergang ausgelöst wird. Natürlich kann auch ein anderer Minutenwert als Verschiebung zur Sonnenuntergangszeit eingegeben werden. Schreibe MEM.simulationstart.minute, wenn der Benutzer die Startzeit der Simulation bestimmen soll.
- Im Abschnitt Aktionen klicke auf Befehl hinzufügen. Im Feld Name schreibe: C.MEM.simulationtrigger, und im Feld Wert: on.
- Füge einen weiteren Befehl hinzu und schreibe ins Feld Name: C.LOGIC, ins Feld Wert: checkStart().
Die Reihenfolge der Befehle ist sehr wichtig!
- Im Feld Stunde schreibe: sunset, wenn die Simulation bei Sonnenuntergang starten soll, oder MEM.simulationstart.hour, wenn der Benutzer die Startzeit der Simulation wählen soll.
- Füge einen zweiten Timer hinzu – dieser wird zur gewünschten Uhrzeit für das Ende der Simulation ausgelöst. Die Uhrzeit für das Ende darf nicht später als 23:59 und nicht früher als die Startzeit sein.
- Im Feld Stunde schreibe: MEM.simulationend.hour
- Im Feld Minute schreibe: MEM.simulationend.minute
- Im Abschnitt Aktionen klicke auf Befehl hinzufügen. Im Feld Name schreibe: C.MEM.simulationtrigger, im Feld Wert: off.
2.3. Benutzeroberfläche #
Die Benutzeroberfläche zur Bedienung des Anwesenheitssimulators wird aus zwei oder drei Steuerelementen bestehen, je nachdem, ob die Option zum Starten der Simulation durch den Benutzer gewählt wurde oder automatisch per Timer.
- Füge einen Schalter hinzu und doppelklicke darauf. Im Feld Kanal schreibe: MEM.presencesimulation. Der Status des Schalters wird durch das Skript des Anwesenheitssimulators überprüft und stellt eine Art Sperre für den Start der Simulation dar. Wenn der Schalter zum geplanten Startzeitpunkt ausgeschaltet ist, wird die Simulation nicht gestartet. Wenn der Schalter jedoch nach Ablauf der geplanten Startzeit, aber vor Ende der Simulation eingeschaltet wird, wird die Simulation sofort gestartet. Analog dazu wird die Simulation gestoppt, wenn der Schalter während der aktiven Simulation ausgeschaltet wird.
- Füge ein Steuerelement vom Typ Zeit hinzu – es wird zur Festlegung der Startzeit der Simulation verwendet. Du kannst diesen Schritt überspringen, wenn du planst, die Simulation zur Sonnenuntergangszeit zu starten.
- Im Feld Kanal für Stunde schreibe: MEM.simulationstart.hour
- Im Feld Kanal für Minute schreibe: MEM.simulationstart.minute
2.4. Ereignisse #
Wie im vorherigen Unterkapitel erwähnt, erlaubt der Schalter in der Benutzeroberfläche das manuelle Starten der Simulation nach Ablauf der geplanten Startzeit. Um diese Funktion umzusetzen, muss ein Ereignis hinzugefügt werden, das durch das Einschalten des Schalters ausgelöst wird. Die Vorgehensweise ist wie folgt:
- Fügen Sie ein neues Ereignis hinzu.
- Im Feld Kanal schreibe: E.MEM.presencesimulation
- Im Feld Daten schreibe: on
- Im Abschnitt Aktionen klicke auf Befehl hinzufügen, dann schreibe ins Feld Name: C.LOGIC, und ins Feld Wert: checkStart()
Zusätzlich muss ein Ereignis definiert werden, das beim Ändern der Endzeit der Simulation ausgelöst wird. Dies ist für die korrekte Funktion des Simulationsskripts erforderlich. Füge ein Ereignis gemäß folgender Anleitung hinzu:
- Fügen Sie ein neues Ereignis hinzu.
- Im Feld Kanal schreibe: E.MEM.simulationend.(.+)
- Das Feld Daten bleibt leer.
- Klicke auf Befehl hinzufügen und schreibe im Feld Name: C.LOGIC, im Feld Wert: calculateEndTime()
2.5. Reihenfolge der Aktionen #
Die Inbetriebnahme des Anwesenheitssimulators sollte in folgender Reihenfolge erfolgen:
- Laden des Skripts (Reiter Ressourcen) und Konfiguration im Reiter Logik.
- Erstellung der Benutzeroberfläche im Reiter Remote.
- Definition der Timer und Ereignisse.
- Einschalten des Schalters zur Aktivierung des Simulators.
- Festlegung der Endzeit und optional der Startzeit der Simulation über die Benutzeroberfläche.