Modul YAAHM: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 27: Zeile 27:
**''Überwacht'' =
**''Überwacht'' =
== Tages-Profil ==
== Tages-Profil ==
*'''housetime''' ist ein bestimmtes Ereignis (Event), mit dem das SmartHome seinen Zustand wechselt. Die vordefinierten Events umfassen
Das Tagesprofil besteht aus einer Kette von Ereignissen (Events), die an jedem Tag zeitgesteuert ablaufen. Welcher Event als letztes durchgeführt wurde, steht im Reading '''housetime''', der vorhergehende Event im Reading ''prev_housetime'' und der vom gegenwärtigen Zeitpznkt aus nächste Event im Reading ''next_housetime''.  
**''Nach Mitternacht'' und ''Vor Mitternacht'' (aftermidnight, beforemidnight) sind Events, die mit einem Offset an jedem Tag nach bzw. vor Mitternacht ausgeführt werden.
**''Sonnenaufgang'', ''Vor Sonnenaufgang'' und ''Nach Sonnenaufgang'' (sunrise, beforesunrise, aftersunrise) sind Events, die an jedem Tag zu Sonnenaufgang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenaufgangs wird aus dem Modul 95_Astro.pm berechnet.
**''Sonnenuntergang'', ''Vor Sonnenuntergang'' und ''Nach Sonnenuntergang'' (sunset, beforesunset, aftersunset) sind Events, die an jedem Tag zu Sonnenuntergang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenuntergangs wird aus dem Modul 95_Astro.pm berechnet.
**''Morgen'', ''Mittag'', ''Nachmittag'', ''Abend'' und ''Nacht'' (morning, noon, afternoon, evening, night) sind Events, die zu einer einstellbaren Zeit an jedem Tag ausgeführt werden.
*'''housephase''' nimmt zwischen ''Morgen'' und ''Nacht'' den Wert ''Tageszeit'' an, sonst den Wert ''Nachtzeit''.
Die Anzeige im Webinterface erfolgt dabei als
[[Datei:daily_2.png|600 px]]


Die vordefinierten Events umfassen
*''Nach Mitternacht'' und ''Vor Mitternacht'' (aftermidnight, beforemidnight) sind Events, die mit einem Offset an jedem Tag nach bzw. vor Mitternacht ausgeführt werden.
*''Sonnenaufgang'', ''Vor Sonnenaufgang'' und ''Nach Sonnenaufgang'' (sunrise, beforesunrise, aftersunrise) sind Events, die an jedem Tag zu Sonnenaufgang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenaufgangs wird aus dem Modul 95_Astro.pm berechnet.
*''Sonnenuntergang'', ''Vor Sonnenuntergang'' und ''Nach Sonnenuntergang'' (sunset, beforesunset, aftersunset) sind Events, die an jedem Tag zu Sonnenuntergang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenuntergangs wird aus dem Modul 95_Astro.pm berechnet.
*''Morgen'', ''Mittag'', ''Nachmittag'', ''Abend'' und ''Nacht'' (morning, noon, afternoon, evening, night) sind Events, die zu einer einstellbaren Zeit an jedem Tag ausgeführt werden.
Das Reading '''housephase''' nimmt zwischen ''Morgen'' und ''Nacht'' den Wert ''Tageszeit'' an, sonst den Wert ''Nachtzeit''.
*''Wecken'' und ''Schlafen'' (wakeup,sleep) sind
== Wochen-Profile ==
Jedes Wochenprofil besteht aus einem Ereignis (Event) je Wochentag
=YAAHM-Device=
==Definition==
==Definition==
Das YAAHM_Device - hier mit dem Namen ''YYY'' versehen - selbst wird über
Das YAAHM_Device - hier mit dem Namen ''YYY'' versehen - selbst wird über
Zeile 115: Zeile 118:
[[Datei:summary_2.png|600px|]]
[[Datei:summary_2.png|600px|]]


===Tages-Profil===


[[Datei:daily_2.png|600 px]]


==Wochen-Profile==
==Wochen-Profile==

Version vom 10. August 2017, 12:49 Uhr

YAAHM
Zweck / Funktion
Das Modul stellt eine komfortable Oberfläche bereit, um per Webinterface die zyklische Ausführung von Kommandos - mit Tages- und Wochenprofil - zu konfigurieren
Allgemein
Typ Hilfsmodul
Details
Dokumentation EN / DE
Support (Forum) Unterstuetzende Dienste
Modulname 95_YAAHM.pm
Ersteller Prof. Dr. Peter A. Henning
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!

Diese Seite beschreibt die Konfiguration und Verwendung des Moduls 95_YAAHM.pm.

Allgemeines

Das Modul 95_YAAHM.pm stellt eine komfortable Oberfläche bereit, um per Webinterface die zyklische Ausführung von Kommandos - mit Tages- und Wochenprofil - zu konfigurieren. Der Titel YAAHM ist das Akronym für Yet Another Auto Home Module, denn es gibt ja schon verschiedene Module, die den Zeitablauf in einem SmartHome vereinfachen sollen. Warum also noch Eines ?

Ganz einfach: Die Philosophie von YAAHM ist die einfache Bedienbarkeit im Frontend, mit Eingabefeldern und Visualisierungselementen - statt dabei Unmengen von Attributen zu setzen. Dafür gibt es verschiedene Begriffe zu verstehen.

Modus und (Sicherheits-)Zustand

  • housemode (bzw. Modus) besagt, dass sich das SmartHome in einem der drei Modi Normal, Party oder Abwesenheit befindet. Die Festsetzung des Modus bleibt bestehen, bis eine erneute manuelle Änderung durchgeführt wird. Ausnahme: Wenn das Attribut modeAuto gesetzt wird, kann sich der Modus auch bei bestimmten Events ändern. Dabei bedeutet:
    • Normal = normale Tages- und Wochen-Profile werden angewandt, keine speziellen Anordnungen.
    • Party = kann in Hilfsfunktionen verwendet werden, um spezielle Anordnungen betreffend die Sicherheit und den Übergang in den Nachtzustand zu realisieren.
      • Das Modul selbst sorgt dafür, dass im Party-Modus das SmartHome nicht in einen gesicherten Zustand versetzt werden kann.
    • Abwesenheit = kann in Hilfsfunktionen verwendet werden, um spezielle Anordnungen zu realisieren.
  • housestate (bzw. (Sicherheits-)Zustand) besagt, dass sich das SmartHome in einem der vier Zustände Nicht gesichert, Gesichert, Geschützt oder Überwacht befindet. Die Festsetzung des Modus bleibt bestehen, bis eine erneute manuelle Änderung durchgeführt wird. Ausnahme: Wenn das Attribut stateAuto gesetzt wird, kann sich der Zustand auch bei bestimmten Events ändern. Dabei bedeutet:
    • Nicht gesichert =
    • Gesichert =
    • Geschützt =
    • Überwacht =

Tages-Profil

Das Tagesprofil besteht aus einer Kette von Ereignissen (Events), die an jedem Tag zeitgesteuert ablaufen. Welcher Event als letztes durchgeführt wurde, steht im Reading housetime, der vorhergehende Event im Reading prev_housetime und der vom gegenwärtigen Zeitpznkt aus nächste Event im Reading next_housetime.

Die vordefinierten Events umfassen

  • Nach Mitternacht und Vor Mitternacht (aftermidnight, beforemidnight) sind Events, die mit einem Offset an jedem Tag nach bzw. vor Mitternacht ausgeführt werden.
  • Sonnenaufgang, Vor Sonnenaufgang und Nach Sonnenaufgang (sunrise, beforesunrise, aftersunrise) sind Events, die an jedem Tag zu Sonnenaufgang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenaufgangs wird aus dem Modul 95_Astro.pm berechnet.
  • Sonnenuntergang, Vor Sonnenuntergang und Nach Sonnenuntergang (sunset, beforesunset, aftersunset) sind Events, die an jedem Tag zu Sonnenuntergang bzw. mit einem Offset davor und danach ausgeführt werden. Der Zeitpunkt des Sonnenuntergangs wird aus dem Modul 95_Astro.pm berechnet.
  • Morgen, Mittag, Nachmittag, Abend und Nacht (morning, noon, afternoon, evening, night) sind Events, die zu einer einstellbaren Zeit an jedem Tag ausgeführt werden.

Das Reading housephase nimmt zwischen Morgen und Nacht den Wert Tageszeit an, sonst den Wert Nachtzeit.

  • Wecken und Schlafen (wakeup,sleep) sind

Wochen-Profile

Jedes Wochenprofil besteht aus einem Ereignis (Event) je Wochentag

YAAHM-Device

Definition

Das YAAHM_Device - hier mit dem Namen YYY versehen - selbst wird über

define YYY YAAHM

definiert. Diese Definition legt einen versteckten Raum "ProfileRoom" an, welcher über einen Weblink im oberen Menü des Webinterfaces erreichbar ist.

  • Der Name dieses Raumes kann durch das Attribut hiddenRoom geändert werden.
  • Dieses Modul verwendet das globale Attribut language zur Bestimmung der Anzeigedaten (Standard: EN=english). Für deutsche Ausgabedaten muss in FHEM das Attribut
attr global language DE

gesetzt werden. Für dieses Wiki werden die deutschen Ausgabedaten verwendet.

Beim Anklicken des Begriffes Profile (eben der genannte Weblink) im oberen Menü des Webinterfaces wird dieser versteckte Raum angezeigt. Er enthält an erster Stelle das YAAHM-Device. Für die Konfiguration dieses Devices siehe den nächsten Abschnitt, für die Bedienung siehe den Abschnitt [Bedienung].

Konfiguration

Das YAAHM-Device kennt die folgenden Set-Befehle:

set YYY time <timeevent>

Erzeugt manuell </a>

                   Set the current house time (event), i.e. one of several values:
  • (after|before) midnight | [before|after] sunrise | [before|after] sunset are calculated from astronomical data (±offset). These values vary from day to day, only the offset can be specified in the daily profile.
  • morning | noon | afternoon | evening | night are fixed time events specified in the daily profile. The time phase between events morning and night is called daytime, the time phase between events night and morning is called nighttime
  • wakeup|sleep are time events specified in the weekly default profiles Wakeup and Sleep, i.e. the value may change from day to day.
  • <a name="yaahm_manualnext"> set <name> manualnext <timernumber> <time></a>
    set <name> manualnext <timername> <time></a>
    For the weekly timer identified by its number (starting at 0) or its name, set the next ring time manually. The time specification <time>must be in the format hh:mm or "off" If the time specification <time> is later than the current time, it will be used for today. If it is earlier than the current time, it will be used tomorrow.
  • <a name="yaahm_mode"> set <name> mode normal | party | absence </a>
    Set the current house mode, i.e. one of several values:
    • <a name="yaahm_state"> set <name> state unsecured | secured | protected | guarded </a>
      Set house (security) state, i.e. one of several values:
      • unsecured - Example: doors etc. are unlocked, windows may be open, movement alarm is disarmed, danger alarm is armed. Alarm is targeted at people present in the house.
      • secured - Example: doors etc. are locked, windows may not be open, movement alarm is disarmed, danger alarm is armed. Alarm is targeted at people present in the house.
      • protected - Example: doors etc. are locked, windows may not be open, movement alarm is armed, danger alarm is armed. Alarm is targeted at people present in the house.
      • guarded - Example: doors etc. are locked, windows may not be open, movement alarm is armed, danger alarm is armed. Alarm is targeted at absent people.
      House (security) states are valid until manual change. If the attribute stateAuto is set (see below), state will change automatically at certain times.
    • <a name="yaahm_createweekly"> set <name> createWeekly <string> </a>
      Create a new weekly profile <string>
    • <a name="yaahm_deleteweekly"> set <name> deleteWeekly <string> </a>
      Delete the weekly profile <string>
    • <a name="yaahm_lock"> set <name> locked|unlocked </a>
      Set the lockstate of the yaahm module to locked (i.e., yaahm setups may not be changed) resp. unlocked (i.e., yaahm setups may be changed>)

    Bedienung

    In diesem Abschnitt wird die Bedienung der Weboberfläche und damit die Konfiguration der Hausautomatik beschrieben. Um sie zu erreichen, klickt man auf den Begriff Profile im oberen Menü des Webinterfaces

    Aktion

    Action 2.png

    Zusammenfassung

    Summary 2.png

    Tages-Profil

    Daily 2.png

    Wochen-Profile

    Weekly 2.png

    Konfiguration

    Sperrung

    Das Reading lockstate muss den Wert unlocked haben, damit durch Anklicken der Start-Buttons für die Timer diese auch gestartet werden. Das ist in der Regel beim ersten Laden des Moduls nicht der Fall, hierzu muss also das Reading von Hand auf den richtigen Wert gesetzt werden. Dazu muss der Befehl set ... unlocked ausgeführt werden.