Universelle Zeitschaltuhr

Dokumentation direkt aus GitHub Wilkware/UniversalTimer ↗

Version Product Version License Actions

Dieses Modul ermöglicht gezielte Schaltvorgänge zu bestimmten Uhrzeiten oder in Abhängigkeit von Ereignissen.

1. Funktionsumfang

Für eine einfache Zeitschaltung wäre dieses Modul normalerweise nicht notwendig. Die Erstellung einen Wochenplanes oder eines zyklischen Ereignisses ist mit IPS Bordmitteln recht einfach möglich. Interessant wird die Sache erst wenn man bedingtes und zyklisches Schalten verbinden möchte. Für eine solche Kombination gibt es eine Reihe von Anwendungsfälle, wie z.B. …

  • Rollläden/Jalousien am Morgen zu einer definierten Zeit hochfahren (Arbeitstag unabhängig von Jahreszeit), aber abends zum Sonnenuntergang runterfahren
  • Außenbeleuchtung bei einsetzender Dunkelheit einschalten, aber pünktlich um Mitternacht wieder ausschalten
  • Haustür Notlicht bei einsetzen der Dämmerung Ein- bzw.- Ausschalten
  • oder zur Weihnachtszeit die Beleuchtung situativ schalten.

Das nur um einige Anregungen zu geben. Wahrscheinlich gibt es da noch einiges mehr an Ideen, welche sich so umsetzen lassen.

Mit diesem Modul kann man mehrere Zeitpläne anlegen und so ein hohes Maß an Flexibilität erreichen, z.B. an verschiedenen Wochentagen unterschiedliche Zeiten verwenden oder Feriertage und Schulferien unterschiedlich berücksichtigen.


Wie aktiviert bzw. deaktiviert man die Zeitschaltuhr?

Um alle Zeitpläne (unabhängig von ihrem eigenen Status) einer Zeitschaltuhr global zu aktivieren bzw. deaktivieren nutzt man den Schalter im Panel “Schaltung …”. Dieser schaltet die Instanz ensprechend aktiv oder inaktiv.


Wie erstellt man einen Zeitplan?

Dies ist die komplexeste Aufgabe innerhalb der Modulkonfiguration und befindet sich im Panel “Zeitsteuerung …”. Über den Schalter HINZUFÜGEN wird ein neuer Zeitplan in der Zeitplan-Liste angelegt.


Wie bearbeitet man einen Zeitplan?

Um einen Zeitplan zu bearbeiten und anzupassen muss dieser zuerst markiert werden (grau hinterlegt). Dies erfolgt durch einfachen Mausklick auf die erste Spalte (Selektor ≡) der entsprechenden Zeile in der Liste.
ACHTUNG: nur der Klick auf ‘≡’ führt hier zum Ziel!!!
Danach werden die aktuellen Werte eines Zeitplans unterhalb der Schalterreihe angezeigt! Hat man dann seine Anpassungen in den einzelnen Sektionen getätigt, speichert man über den Schalter AKTUALISIEREN die Änderungen zurück in die Liste (immer noch grau selektierter Listeneintrag).


Wie löscht man einen Zeitplan?

Einfach auf das Mülleimersymbol am Ende eines jeden Listeneintrags drücken.
ACHTUNG: Es erfolgt keine Nachfrage, alle Daten gehen sofort verloren!


Wie kann ich schnell einen Zeitplan anlegen mit leichten Änderungen zu einem anderen Zeitplan?

Einfach einen Zeitplan auswählen (klick auf auf ≡ Zelle) und dann den Schalter DUPLIZIEREN drücken. Dannach kann man den neu erzeugten Plan wieder markieren (≡) und ändern.


Wie kann ich Zeitpläne sortieren?

Mittels Drag&Drop via der Selektionsspalte (≡) kann die Reihenfolge der Zeitpläne innerhalb der Liste verändert werden. Wenn man die richtige Reihenfolge festgelegt hat, erfolgt durch Drücken des Schalters NEUSORTIERUNG die Umbennenung der IDs (Spalte #).


Wie kann ich einen externen Auslöser festlegen?

Im Panel “Erweiterte Einstellungen …” kann man eine Variable vom Typ Boolean als Auslöser hinterlegen.

2. Voraussetzungen

  • Symcon ab Version 8.1

3. Installation

  • Über den Modul Store das Modul Universelle Zeitschaltuhr installieren.
  • Alternativ über das Modul Control folgende URL hinzufügen.
    https://github.com/Wilkware/UniversalTimer oder git://github.com/Wilkware/UniversalTimer.git

4. Einrichtung

  • Unter ‘Instanz hinzufügen’ ist das Universelle Zeitschaltuhr-Modul unter dem Hersteller ‘(Geräte)’ aufgeführt.

Konfigurationsseite:

Einstellungsbereich:

🎛️ Schaltung …

NameBeschreibung
An /AusSchalter zum Aktivieren bzw. Deaktivieren der gesamten Schaltuhr

⏱️ Zeitsteuerung …

NameBeschreibung
ZeitplanListe, welche alle Zeitpläne speichert
HINZUFÜGENFügt einen neuen Zeitplan zur Liste hinzu
DUPLIZIERENDupliziert den aktuell ausgewählten Plan (grau markiert) in der Liste (inklusive der Einstellungen)
NEUSORTIERENNummeriert die Pläne von 1 bis N entsprechend der aktuellen Reihgenfolge in der Liste
AKTUALISIERENSpeichert alle Ändererungen an einem Zeitplan (grau markiert) in die Liste
— Ausgewählte Schaltung —
(Nummer)Nummer des Zeitplans in der Liste (nicht editierbar)
StatusSchaltet einen Zeitplan aktiv bzw. inaktiv
RegelVordefinierte Regeln, die bei der Schaltung berücksichtigt weden soll
AktionAusführende Aktion, also Ein- bzw. Ausschalten der Geräte
— Wochentage —
Montag - SonntagAktiv oder Inaktiv an diesem Wochentag
— Zeitpunkt —
UhrzeitZeitpunkt zum Schalten (HINWEIS: Wird bei Auswahl eines Auslösers bzw. Ereignisses überschrieben!)
⭙ (Löschen)Uhrzeit löschen
— Auslöser / Ereignis —
FrühstensFrühster Zeitpunkt zum Schalten (in Bezug zum ausgewählten Ereignis)
⭙ (Löschen)Uhrzeit löschen (Frühstens)
EreignisEreignis auf das reagiert werden soll
SpätestensSpätester Zeitpunkt zum Schalten (in Bezug zum ausgewählten Ereignis)
⭙ (Löschen)Uhrzeit löschen (Spätestens)
— Bedingung —
HINZUFÜGENFügt eine Bedingung hinzu, welche zum Zeitpunkt des Schaltes erfüllt sein muss.

💡 Geräte …

NameBeschreibung
SchaltvariablenListe von Geräten (mehrere Geräte)
SkriptAuszuführendes Skript (Status true/false wird als Array ‘State’ übergeben)

⚙️ Erweiterte Einstellungen …

NameBeschreibung
Externer AuslöserVariable vom Typ Boolean, welcher als Auslöser bei bedingtem Schalten benutzt werden soll.
Gleichzeitiges Ausführen eines ScriptesAuswahl eines Skriptes, welches zusätzlich ausgeführt werden soll (IPS_ExecScript).

5. Statusvariablen

Die Statusvariablen werden automatisch angelegt. Das Löschen einzelner kann zu Fehlfunktionen führen.

NameTypBeschreibung
SchalterBooleanVariable zum manuellen Auslösen der Geräteschaltung

Hinweis: Die Variable Schalter wird nur unter Berücksichtigung der erweiterten Einstellungen (‘Zusätzlich noch eine normale Schaltervariable anlegen’) angelegt.

6. Darstellungen

Es werden keine Darstellungen oder Profile benötigt.

7. Visualisierung

Man kann die Statusvariable (Schalter) direkt in der Visualisierung verlinken.

8. Befehlsreferenz

Ein direkter Aufruf von öffentlichen Funktionen ist nicht notwendig!

9. Versionshistorie

v2.0.20260201

  • NEU: Projektumstrukturierung hin zu einer globalen CI/CD-Pipeline
  • NEU: Kompatibilität auf IPS 8.1 hoch gesetzt
  • NEU: Umstellung auf IPSModuleStrict
  • NEU: Kompatibilität für IPS 8.2 vorbereitet
  • NEU: Modulversion wird in Quellcodesektion angezeigt
  • FIX: Bibliotheksfunktionen angeglichen

v1.0.20220228

  • NEU: Initialversion

Entwickler

Seit nunmehr über 10 Jahren fasziniert mich das Thema Haussteuerung. In den letzten Jahren betätige ich mich auch intensiv in der Symcon Community und steuere dort verschiedenste Skript und Module bei. Ihr findet mich dort unter dem Namen @pitti ;-)

GitHub

Spenden

Die Software ist für die nicht kommerzielle Nutzung kostenlos, über eine Spende bei Gefallen des Moduls würde ich mich freuen.

PayPal

Lizenz

Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 4.0 International

Licence