AutoShuttersControl: Unterschied zwischen den Versionen

Aus FHEMWiki
(Anpassung der "Vorbereitung", da das Modul jetzt zum Standardumfang von FHEM gehört. Minor Proofreading)
Zeile 30: Zeile 30:


{{Hinweis|Ihr benötigt ein aktuelles FHEM. Update ab dem 04.09.2018 Voraussetzung!}}
{{Hinweis|Ihr benötigt ein aktuelles FHEM. Update ab dem 04.09.2018 Voraussetzung!}}
Zunächst müssen das Modul (aus dem Link im Forum) entpackt, die Datei 73_AutoShuttersControl.pm in das Unterverzeichnis für die Module kopiert und die Rechte angepaßt werden.
Speicherort für Linux-Standardinstallationen: /opt/fhem/FHEM<br>
Rechte: <code>sudo chown 73_AutoShuttersControl.pm</code> und <code>sudo chmod 644 73_AutoShuttersControl.pm</code>
Danach sollte ein <code>reload AutoShuttersControl</code> in FHEM-Eingabefeld ausreichen, um das Modul verfügbar zu machen.
{{Hinweis|Eventuell muß FHEM auch einmalig neu gestartet werden, um das Modul nutzen zu können.}}


=== Define des ASC-Devices ===
=== Define des ASC-Devices ===
Es genügt ein einfaches define ohne weitere Parameter.
Es genügt ein einfaches define ohne weitere Parameter.
<code>define <name> AutoShuttersControl</code>
<code>define <name> AutoShuttersControl</code>
Dies bewirkt neben der Anlage des Devices selbst auch, dass als weiteres globales Attribut ''AutoShuttersControl'' verfügbar wird.
Dies bewirkt neben der Anlage des Devices selbst auch, dass als weiteres globales Attribut ''ASC'' verfügbar wird.


=== Einstellung zentraler Vorgaben ===
=== Einstellung zentraler Vorgaben ===
Es stehen am ASC-Device einige Attribute zur Verfügung, über die sich das Verhalten des ASC-Devices insgesamt steuern läßt, z.B. zur Vermeidung von morgendlichen oder abendlichen Fahrten sowie bei Gefahr von Schäden an den Rollläden durch Frost oder zur Reaktion auf Fensterkontakte. Details sind der Commandref zu entnehmen.
Es stehen am ASC-Device einige Attribute zur Verfügung, über die sich das Verhalten des ASC-Devices insgesamt steuern lässt, z.B. zur Vermeidung von morgendlichen oder abendlichen Fahrten sowie bei Gefahr von Schäden an den Rollläden durch Frost oder zur Reaktion auf Fensterkontakte. Details sind der Commandref zu entnehmen.
Diese Attribute können auch nachträglich noch geändert werden.
Diese Attribute können auch nachträglich noch geändert werden.


=== Markieren zu steuernder Rollladen-Devices ===
=== Markieren zu steuernder Rollladen-Devices ===
Um einen oder mehrere Rollläden durch das ASC-Device zu steuern, wird für jeden Rollladen jeweils das neue globale Attribut ''AutoShuttersControl'' gesetzt. Der Wert ist mit 1 oder 2 festzulegen, wobei '''1''' bedeutet, dass  
Um einen oder mehrere Rollläden durch das ASC-Device zu steuern, wird für jeden Rollladen jeweils das neue globale Attribut ''ASC'' gesetzt. Der Wert ist mit 1 oder 2 festzulegen, wobei '''1''' bedeutet, dass  
* die Offen-Position kleiner ist als die Geschlossen-Position, also typischerweise 0 ''offen'' bedeutet und 100 für ''geschlossen'' steht
* die Offen-Position kleiner ist als die Geschlossen-Position, also typischerweise 0 ''offen'' bedeutet und 100 für ''geschlossen'' steht
* eine bestimmte Position mit '''position''' angefahren wird, also z.B. <code>set <name> position 70</code>.
* eine bestimmte Position mit '''position''' angefahren wird, also z.B. <code>set <name> position 70</code>.
Dies ist z.B. die  passende Wahl für ROLLO-Devices
Dies ist z.B. die  passende Wahl für ROLLO-Devices


Die '''2''' steht für ein umgekehrtes Verhalten und den Befehlsteil ''pct'', also ''offen'' für <code>set <name> pct 100</code>. Typischer Vertreter dieses Typs sind HomeMatic (CUL_HM-) Geräte.
Die '''2''' steht für ein umgekehrtes Verhalten und den Befehlsteil ''pct'', also ''offen'' für <code>set <name> pct 100</code>. Typischer Vertreter dieses Typs sind HomeMatic (CUL_HM-) Geräte oder die Shelly2-Aktoren.


=== Einbinden in das ASC-Device ===
=== Einbinden in das ASC-Device ===
Zeile 62: Zeile 53:


=== Einstellen der individuellen Vorgaben ===
=== Einstellen der individuellen Vorgaben ===
Danach sind jeweils an den Rollladen-Devices weitere Attribute verfügbar, mit denen die für den jeweiligen Rollladen geltenden Einstellungen vorgenommen werden können.  
Nach der Einbindung sind an den Rollladen-Devices weitere Attribute verfügbar, mit denen die für den jeweiligen Rollladen geltenden Einstellungen vorgenommen werden können.  
Die Beschreibung der Attribute ist in der commandref enthalten.
Die Beschreibung der Attribute ist in der commandref enthalten.


== Readings ==
== Readings ==


===Readings im AutoShuttersControl Device selbst.===
===Readings im ASC-Device selbst.===


{|class="wikitable"
{|class="wikitable"
Zeile 73: Zeile 64:
! Name !! Datentyp/<BR/>Wertebereich !! Bedeutung   
! Name !! Datentyp/<BR/>Wertebereich !! Bedeutung   
|-
|-
|..._nextAstroTimeEvent || ||Uhrzeit des nächsten Astro Events, Sonnenauf, Sonnenuntergang oder feste Zeit pro Rollonamen  
|..._nextAstroTimeEvent || ||Uhrzeit des nächsten Astro Events, Sonnenauf- oder Sonnenuntergang oder feste Zeit pro Rollonamen  
|-
|-
|..._lastPosValue || ||letzter abgesetzter Fahrbefehl pro Rollonamen
|..._lastPosValue || ||letzter abgesetzter Fahrbefehl pro Rollonamen
Zeile 79: Zeile 70:
|..._lastDelayPosValue || ||letzter abgesetzter Fahrbefehl welcher beim nächsten zulässigen Event ausgeführt wird.
|..._lastDelayPosValue || ||letzter abgesetzter Fahrbefehl welcher beim nächsten zulässigen Event ausgeführt wird.
|-
|-
|partyMode ||on, off || aktiviert den globalen Partymodus, alle Rollläden welche das Attribut AutoShuttersControl_Partymode bei sich auf on gestellt haben werden nicht mehr gesteuert. Der letzte Schaltbefehle welcher durch ein Fensterevent oder Bewohnerstatus an die Rollläden gesendet wurde, wird beim off setzen durch set ASC-Device partyMode off ausgeführt
|partyMode ||on, off || aktiviert den globalen Partymodus. Alle Rollläden, welche das Attribut AutoShuttersControl_Partymode bei sich auf on gestellt haben, werden nicht mehr gesteuert. Der letzte Schaltbefehl, welcher durch ein Fensterevent oder Bewohnerstatus an die Rollläden gesendet wurde, wird beim off setzen durch set ASC-Device partyMode off ausgeführt
|-
|-
|lockOut || on, off ||für das aktivieren des Aussperrschutzes gemäß dem entsprechenden Attribut AutoShuttersControl_lock-out im jeweiligen Rolladen. (siehe Beschreibung bei den Attributen für die Rolladendevices)
|lockOut || on, off ||für das Aktivieren des Aussperrschutzes gemäß des entsprechenden Attributs AutoShuttersControl_lock-out im jeweiligen Rolladen. (siehe Beschreibung bei den Attributen für die Rolladendevices)
|-
|-
|room_... || ||Auflistung aller Rollläden welche in den jeweiligen Rämen gefunden wurde, Bsp.: room_Schlafzimmer,Terrasse
|room_... || ||Auflistung aller Rollläden welche in den jeweiligen Rämen gefunden wurde, Bsp.: room_Schlafzimmer,Terrasse
Zeile 87: Zeile 78:
|state || ||Status des Devices active, enabled, disabled
|state || ||Status des Devices active, enabled, disabled
|-
|-
|sunriseTimeWeHoliday|| on,off ||wird das Rolladen Device Attribut Attributes AutoShuttersControl_Time_Up_WE_Holiday Beachtet oder nicht
|sunriseTimeWeHoliday|| on,off ||wird das Rolladen Device Attribut Attributes AutoShuttersControl_Time_Up_WE_Holiday beachtet oder nicht
|-
|-
|userAttrList || rolled out ||Status der UserAttribute welche an die Rollläden gesendet werden
|userAttrList || rolled out ||Status der UserAttribute, welche an die Rollläden gesendet werden
|}
|}


Zeile 107: Zeile 98:
== Settings ==
== Settings ==


===Set Befehle für AutoShuttersControl Device===
===Set Befehle für ASC-Device===


{|class="wikitable"
{|class="wikitable"
Zeile 121: Zeile 112:
|scanForShutters || ||sucht alle FHEM Devices mit dem Attribut "AutoShuttersControl" 1, 2
|scanForShutters || ||sucht alle FHEM Devices mit dem Attribut "AutoShuttersControl" 1, 2
|-
|-
|sunriseTimeWeHoliday || on,off ||aktiviert/deaktiviert die Beachtung des Rolladen Device Attributes AutoShuttersControl_Time_Up_WE_Holiday
|sunriseTimeWeHoliday || on,off ||aktiviert/deaktiviert die Beachtung des Attributes AutoShuttersControl_Time_Up_WE_Holiday für Rollladen-Devices
|-
|-
|createNewNotifyDev || ||Legt die interne Struktur für NOTIFYDEV neu an
|createNewNotifyDev || ||Legt die interne Struktur für NOTIFYDEV neu an
|-
|-
|selfDefence ||on, off||aktiviert/deaktiviert den Selbstschutz, wenn das Residents Device absent meldet und selfDefence aktiv ist und ein Fenster im Haus steht noch offen, wird an diesem Fenster das Rollo runter gefahren
|selfDefence ||on, off||aktiviert/deaktiviert den Selbstschutz, wenn das Residents Device absent meldet und selfDefence aktiv ist und ein Fenster im Haus steht noch offen, wird an diesem Fenster das Rollo runtergefahren
|-
|-
|wiggle ||||Bewegt einen Rollladen oder alle Rollläden (für Abschreckungszwecke bei der Alarmierung) um 5%, und nach 1 Minute wieder zurück zur Ursprungsposition
|wiggle ||||Bewegt einen Rollladen oder alle Rollläden (für Abschreckungszwecke bei der Alarmierung) um 5%, und nach 1 Minute wieder zurück zur Ursprungsposition
Zeile 140: Zeile 131:
| showShuttersInformations ||zeigt eine Übersicht der Autofahrzeiten
| showShuttersInformations ||zeigt eine Übersicht der Autofahrzeiten
|-
|-
| showNotifyDevsInformations ||zeigt eine Übersicht der abgelegten NOTIFYDEV Struktur. Diehnt zur Kontrolle
| showNotifyDevsInformations ||zeigt eine Übersicht der abgelegten NOTIFYDEV Struktur. Dient zur Kontrolle
|}
|}
== Attribute ==
== Attribute ==
Zeile 154: Zeile 145:
|ASC_autoAstroModeEvening ||aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC || || (in genau dieser Schreibweise)
|ASC_autoAstroModeEvening ||aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC || || (in genau dieser Schreibweise)
|-
|-
|ASC_autoAstroModeEveningHorizon || || || Höhe über Horizont wenn beim Attribut AutoShuttersControl_autoAstroModeEvening HORIZON ausgewählt
|ASC_autoAstroModeEveningHorizon || || || Höhe über Horizont, wenn beim Attribut AutoShuttersControl_autoAstroModeEvening HORIZON ausgewählt
|-
|-
|ASC_autoAstroModeMorning ||aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC || ||(in genau dieser Schreibweise)
|ASC_autoAstroModeMorning ||aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC || ||(in genau dieser Schreibweise)
|-
|-
|ASC_autoAstroModeMorningHorizon || || ||Höhe über Horizont wenn beim Attribut AutoShuttersControl_autoAstroModeMorning HORIZON ausgewählt
|ASC_autoAstroModeMorningHorizon || || ||Höhe über Horizont, wenn beim Attribut AutoShuttersControl_autoAstroModeMorning HORIZON ausgewählt
|-
|-
|ASC_autoShuttersControlComfort ||on, off || ||schaltet die Komfortfunktion an. Bedeutet das ein Rollladen mit einem threestate Sensor am Fenster beim öffnen in eine weit offen Position fährt. Die Offenposition wird beim Rollladen über das Attribut AutoShuttersControl_Pos_after_ComfortOpen eingestellt.
|ASC_autoShuttersControlComfort ||on, off || ||schaltet die Komfortfunktion an. Bedeutet, dass ein Rollladen mit einem threestate Sensor am Fenster beim Öffnen in eine weit offen Position fährt. Die Offenposition wird beim Rollladen über das Attribut AutoShuttersControl_Pos_after_ComfortOpen eingestellt.
|-  
|-  
|ASC_autoShuttersControlEvening ||on, off || ||ob Abends die Rollläden automatisch nach Zeit gesteuert werden sollen
|ASC_autoShuttersControlEvening ||on, off || ||ob Abends die Rollläden automatisch nach Zeit gesteuert werden sollen
Zeile 166: Zeile 157:
|ASC_autoShuttersControlMorning ||on, off || ||ob Morgens die Rollläden automatisch nach Zeit gesteuert werden sollen
|ASC_autoShuttersControlMorning ||on, off || ||ob Morgens die Rollläden automatisch nach Zeit gesteuert werden sollen
|-
|-
|ASC_temperatureReading || || ||Reading für die Aussentemperatur
|ASC_temperatureReading || || ||Reading für die Außentemperatur
|-
|-
|ASC_temperatureSensor || || ||Device für die Aussentemperatur
|ASC_temperatureSensor || || ||Device für die Außentemperatur
|-
|-
|ASC_timeUpHolidayDevice || || ||Device zur Urlaubserkennung oder Sonstiges / muss 0 oder 1 im Reading state beinhalten.
|ASC_timeUpHolidayDevice || || ||Device zur Urlaubserkennung oder Sonstiges / muss 0 oder 1 im Reading state beinhalten.
|-
|-
|ASC_residentsDevice|| || ||Devicenamen vom Residents Device der obersten Ebene
|ASC_residentsDevice|| || ||Devicenamen des Residents-Device der obersten Ebene
|-
|-
|ASC_residentsDeviceReading|| || ||Status Reading vom Residents Device der obersten Ebene
|ASC_residentsDeviceReading|| || ||Status Reading des Residents-Device der obersten Ebene
|-
|-
|ASC_brightnessMinVal|| || ||minimaler Lichtwert ab welchen Schaltbedingungen geprüft werden sollen
|ASC_brightnessMinVal|| || ||minimaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen
|-
|-
|ASC_brightnessMaxVal || || ||maximaler Lichtwert ab welchen Schaltbedingungen geprüft werden sollen
|ASC_brightnessMaxVal || || ||maximaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen
|-
|-
|ASC_rainSensorDevice || || ||Device welches bei Regen getriggert werden soll
|ASC_rainSensorDevice || || ||Device, welches bei Regen getriggert werden soll
|-
|-
|ASC_rainSensorReading || || ||das ensprechende Reading zum Regendevice
|ASC_rainSensorReading || || ||das ensprechende Reading zum Regendevice
|-
|-
|ASC_rainSensorShuttersClosedPos || || ||Position n welche der Rolladen fahren soll wenn es Regnet
|ASC_rainSensorShuttersClosedPos || || ||Position in pct, welche der Rollladen bei Regen anfahren soll  
|-
|-
|ASC_shuttersDriveOffset  || || ||maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet sofort
|ASC_shuttersDriveOffset  || || ||maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet keine Verzögerung
|-
|-
| || || ||
| || || ||
Zeile 211: Zeile 202:
|ASC_AutoAstroModeMorningHorizon || || ||Höhe über Horizont wenn beim Attribut ASC_autoAstroModeMorning HORIZON ausgewählt
|ASC_AutoAstroModeMorningHorizon || || ||Höhe über Horizont wenn beim Attribut ASC_autoAstroModeMorning HORIZON ausgewählt
|-
|-
|ASC_Closed_Pos || || ||in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut AutoShuttersControl
|ASC_Closed_Pos || || ||in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut ASC
|-
|-
|ASC_Down || astro, time, brightness || ||bei Astro wird Sonnenuntergang berechnet, bei time wird der Wert aus ASC_Time_Down_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Down_Early und ASC_Time_Down_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Down_Late Zeit,es wird aber in der Zeit zwischen ASC_Time_Down_Early und ASC_Time_Down_Late geschaut ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde, wenn ja wird der Rolladen runter gefahren
|ASC_Down || astro, time, brightness || ||bei Astro wird Sonnenuntergang berechnet, bei time wird der Wert aus ASC_Time_Down_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Down_Early und ASC_Time_Down_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Down_Late Zeit,es wird aber in der Zeit zwischen ASC_Time_Down_Early und ASC_Time_Down_Late geschaut ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde, wenn ja wird der Rolladen runter gefahren
Zeile 219: Zeile 210:
|ASC_Mode_Up ||always, home, absent, off || ||wann darf die Automatik steuern. immer,niemals,bei abwesenheit des Roommate (ist kein Roommate und absent eingestellt wird gar nicht gesteuert)
|ASC_Mode_Up ||always, home, absent, off || ||wann darf die Automatik steuern. immer,niemals,bei abwesenheit des Roommate (ist kein Roommate und absent eingestellt wird gar nicht gesteuert)
|-
|-
|ASC_Drive_Offset || || ||maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet sofort, -1 bedeutet das das gleichwertige Attribut aus dem ASC Device ausgewertet werden soll.
|ASC_Drive_Offset || || ||maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet sofort, -1 bedeutet das das gleichwertige Attribut aus dem ASC-Device ausgewertet werden soll.
|-
|-
|ASC_Open_Pos || || ||in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut AutoShuttersControl
|ASC_Open_Pos || || ||in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut ASC
|-
|-
|ASC_Partymode || on, off || ||schaltet den Partymodus an oder aus,Wird dann am ASC Device set ASC-DEVICE partyMode on geschalten, werden alle Fahrbefehle an den Rolläden welche das Attribut auf on haben zwischen gespeichert und später erst ausgeführt
|ASC_Partymode || on, off || ||schaltet den Partymodus an oder aus. Wird dann am ASC Device set ASC-DEVICE partyMode on geschalten, werden alle Fahrbefehle an den Rollläden, welche das Attribut auf on haben, zwischengespeichert und erst später ausgeführt
|-
|-
|ASC_Pos_Reading || || ||Name des Readings welches die Position des Rolladen in Prozent an gibt, wird bei unbekannten Device Typen auch als set Befehl zum fahren verwendet
|ASC_Pos_Reading || || ||Name des Readings, welches die Position des Rollladen in Prozent an gibt. Wird bei unbekannten Device -ypen auch als set Befehl zum Fahren verwendet
|-
|-
|ASC_Pos_after_ComfortOpen || || ||in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut AutoShuttersControl
|ASC_Pos_after_ComfortOpen || || ||in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut ASC
|-
|-
|ASC_Roommate_Reading || || ||das Reading zum Roommate Device welches den Status wieder gibt
|ASC_Roommate_Reading || || ||das Reading zum Roommate-Device, welches den Status wieder gibt
|-
|-
|ASC_Roommate_Device || || ||mit Komma getrennte Namen des/der Roommate Device/s welche den/die Bewohner des Raumes vom Rolladen wieder gibt. Es macht nur Sinn in Schlaf- oder Kinderzimmern
|ASC_Roommate_Device || || ||mit Komma getrennte Namen des/der Roommate-Device/s welche den/die Bewohner des Raumes vom Rollladen wieder gibt. Es macht nur Sinn in Schlaf- oder Kinderzimmern
|-
|-
|ASC_Time_Down_Early || || ||Sunset frühste Zeit zum runter fahren
|ASC_Time_Down_Early || || ||Sunset frühste Zeit zum Runterfahren
|-
|-
|ASC_Time_Down_Late || || ||Sunset späteste Zeit zum runter fahren
|ASC_Time_Down_Late || || ||Sunset späteste Zeit zum Runterfahren
|-
|-
|ASC_Time_Up_Early || || ||Sunrise frühste Zeit zum hoch fahren
|ASC_Time_Up_Early || || ||Sunrise frühste Zeit zum Hochfahren
|-
|-
|ASC_Time_Up_Late || || ||Sunrise späteste Zeit zum hoch fahren
|ASC_Time_Up_Late || || ||Sunrise späteste Zeit zum Hochfahren
|-
|-
|ASC_Time_Up_WE_Holiday || || ||Sunrise frühste Zeit zum hochfahren am Wochenende und/oder Urlaub (we2holiday wird beachtet), Achtung sollte nicht größer sein wie ASC_Time_Up_Late sonst wird ASC_Time_Up_Late verwendet
|ASC_Time_Up_WE_Holiday || || ||Sunrise frühste Zeit zum Hochfahren am Wochenende und/oder Urlaub (we2holiday wird beachtet). Achtung! Sollte nicht größer sein als ASC_Time_Up_Late, sonst wird ASC_Time_Up_Late verwendet
|-
|-
|ASC_Up || astro, time, brightness || ||bei Astro wird Sonnenaufgang berechnet,bei time wird der Wert aus ASC_Time_Up_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Up_Early und ASC_Time_Up_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Up_Late Zeit,es wird aber in der Zeit zwischen ASC_Time_Up_Early und ASC_Time_Up_Late geschaut ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde, wenn ja wird der Rolladen runter gefahren
|ASC_Up || astro, time, brightness || ||bei astro wird Sonnenaufgang berechnet, bei time wird der Wert aus ASC_Time_Up_Early als Fahrzeit verwendet und bei brightness müssen ASC_Time_Up_Early und ASC_Time_Up_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Up_Late Zeit, es wird aber in der Zeit zwischen ASC_Time_Up_Early und ASC_Time_Up_Late geschaut, ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde. Wenn ja, wird der Rolladen runter gefahren
|-
|-
|ASC_Ventilate_Pos || || ||in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut AutoShuttersControl
|ASC_Ventilate_Pos || || ||in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut ASC
|-
|-
|ASC_Ventilate_Window_Open || || ||auf lüften, wenn das Fenster gekippt/geöffnet wird und aktuelle Position unterhalb der Lüften-Position ist
|ASC_Ventilate_Window_Open || || ||auf lüften, wenn das Fenster gekippt/geöffnet wird und aktuelle Position unterhalb der Lüften-Position ist
|-
|-
|ASC_WindowRec || || ||Name des Fensterkontaktes an welchen Fenster der Rolladen angebracht ist
|ASC_WindowRec || || ||Name des Fensterkontakts an welchen Fenster der Rollladen angebracht ist
|-
|-
|ASC_WindowRec_subType || || ||Typ des verwendeten Fensterkontakts: twostate (optisch oder magnetisch) oder threestate (Drehgriffkontakt)
|ASC_WindowRec_subType || || ||Typ des verwendeten Fensterkontakts: twostate (optisch oder magnetisch) oder threestate (Drehgriffkontakt)
|-
|-
|ASC_lock-out || soft, hard || ||stellt entsprechend den Aussperrschutz ein. Bei global aktiven Aussperrschutz (set ASC-Device lockOut soft) und einem Fensterkontakt open bleibt dann der Rolladen oben. Dies gilt nur bei Steuerbefehle über das ASC Modul. Stellt man global auf hard,wird bei entsprechender Möglichkeit versucht den Rolladen Hardwareseitig zu blockieren. Dann ist auch ein fahren über die Taster nicht mehr möglich.
|ASC_lock-out || soft, hard || ||stellt entsprechend den Aussperrschutz ein. Bei global aktiven Aussperrschutz (set ASC-Device lockOut soft) und einem Fensterkontakt open bleibt dann der Rolladen oben. Dies gilt nur bei Steuerbefehle über das ASC Modul. Stellt man global auf hard, wird bei entsprechender Möglichkeit versucht, den Rollladen hardwareseitig zu blockieren. Dann ist auch ein Fahren über die Taster nicht mehr möglich.
|-
|-
|ASC_lock-outCmd || inhibit, blocked || ||set Befehl für das Rolladen-Device zum Hardware sperren. Zum gesetzt werden wenn man "ASC_lock-out" auf hard setzt
|ASC_lock-outCmd || inhibit, blocked || ||set Befehl für das Rolladen-Device zum Hardware sperren. Der Befehl wird verwendet, wenn man "ASC_lock-out" auf hard setzt
|-
|-
|ASC_Self_Defense_Exclude || on, off || ||bei on Wert wird dieser Rolladen bei aktiven Self Defense und offenen Fenster nicht runter gefahren wenn Residents absent ist.
|ASC_Self_Defense_Exclude || on, off || ||bei on Wert wird dieser Rolladen bei aktiven Self Defense und offenen Fenster nicht runter gefahren, wenn Residents absent ist.
|-
|-
|ASC_Shading_Brightness_Sensor || || ||Sensor Device welches für die Lichtwerte verwendet wird. ACHTUNG! Findet auch Verwendung bei ASC_Down - brightness
|ASC_Shading_Brightness_Sensor || || ||Sensor-Device, welches für die Lichtwerte verwendet wird. ACHTUNG! Findet auch Verwendung bei ASC_Down - brightness
|-
|-
|ASC_BrightnessMinVal || || ||minimaler Lichtwert ab welchen Schaltbedingungen geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
|ASC_BrightnessMinVal || || ||minimaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
|-
|-
|ASC_BrightnessMaxVal || || ||maximaler Lichtwert ab welchen Schaltbedingungen geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
|ASC_BrightnessMaxVal || || ||maximaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
|-
|-
|ASC_ShuttersPlace || window, terrace || ||wenn dieses Attribut auf terrace gesetzt ist und das Residence Device in den Status "done" geht und SelfDefence aktiv ist wird das Rollo geschlossen
|ASC_ShuttersPlace || window, terrace || ||wenn dieses Attribut auf terrace gesetzt ist und das Residence Device in den Status "done" geht und SelfDefence aktiv ist wird das Rollo geschlossen

Version vom 12. November 2018, 18:45 Uhr


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.


AutoShuttersControl
Zweck / Funktion
Steuerung von Rollläden
Allgemein
Typ Inoffiziell
Details
Dokumentation siehe Forum
Support (Forum) Automatisierung
Modulname 73_AutoShuttersControl.pm
Ersteller CoolTux
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!

Mit AutoShuttersControl oder kurz ASC können typische Aufgabenstellungen im Zusammenhang mit Rollläden u.ä. automatisiert werden, wie zum Beispiel das Öffnen bei Sonnenaufgang, Schließen bei Sonnenuntergang oder das Anfahren von Lüftungspositionen beim Öffnen des zugehörigen Fensters.


Info blue.png
Das Modul befindet sich derzeit noch in der Entwicklung; der jeweils aktuelle Stand ist diesem "Thread im Forum" zu entnehmen.


Basics

Zur Nutzung des Moduls sollten folgende andere FHEM-Devices vorhanden sein:

  • Rollläden
  • Fensterkontakte und
  • Bewohnerstatus auf Basis von Residents/Roomates in englisch. Ersatzweise andere Devices, z.B. Dummys, welche als state home, asleep, gotosleep und awoken setzen sowie ein Reading lastState.

Die Einrichtung des Moduls bzw. dessen Funktionalität erfolgt in mehreren Schritten:

  • Definition des ASC-Devices
  • Einstellung zentraler Vorgaben am ASC-Device
  • Markieren der zukünftig zu steuernden Rollladen-Devices
  • Einbinden der Rollladen-Devices in das ASC-Device
  • Einstellen der individuellen Vorgaben je Rollladen (am Rollladen-Device)

Einrichtung

Vorbereitung

Info blue.png
Ihr benötigt ein aktuelles FHEM. Update ab dem 04.09.2018 Voraussetzung!


Define des ASC-Devices

Es genügt ein einfaches define ohne weitere Parameter. define <name> AutoShuttersControl Dies bewirkt neben der Anlage des Devices selbst auch, dass als weiteres globales Attribut ASC verfügbar wird.

Einstellung zentraler Vorgaben

Es stehen am ASC-Device einige Attribute zur Verfügung, über die sich das Verhalten des ASC-Devices insgesamt steuern lässt, z.B. zur Vermeidung von morgendlichen oder abendlichen Fahrten sowie bei Gefahr von Schäden an den Rollläden durch Frost oder zur Reaktion auf Fensterkontakte. Details sind der Commandref zu entnehmen. Diese Attribute können auch nachträglich noch geändert werden.

Markieren zu steuernder Rollladen-Devices

Um einen oder mehrere Rollläden durch das ASC-Device zu steuern, wird für jeden Rollladen jeweils das neue globale Attribut ASC gesetzt. Der Wert ist mit 1 oder 2 festzulegen, wobei 1 bedeutet, dass

  • die Offen-Position kleiner ist als die Geschlossen-Position, also typischerweise 0 offen bedeutet und 100 für geschlossen steht
  • eine bestimmte Position mit position angefahren wird, also z.B. set <name> position 70.

Dies ist z.B. die passende Wahl für ROLLO-Devices

Die 2 steht für ein umgekehrtes Verhalten und den Befehlsteil pct, also offen für set <name> pct 100. Typischer Vertreter dieses Typs sind HomeMatic (CUL_HM-) Geräte oder die Shelly2-Aktoren.

Einbinden in das ASC-Device

Nachdem man das obige Attribut bei einem oder mehreren Rollladen-Devices gesetzt hat, kann mit set <name> scanForShutters ein Suchlauf gestartet werden, mit dem dann diese Rollläden durch das Modul gefunden und in die Steuerungslogik eingebunden werden.

Einstellen der individuellen Vorgaben

Nach der Einbindung sind an den Rollladen-Devices weitere Attribute verfügbar, mit denen die für den jeweiligen Rollladen geltenden Einstellungen vorgenommen werden können. Die Beschreibung der Attribute ist in der commandref enthalten.

Readings

Readings im ASC-Device selbst.

Name Datentyp/
Wertebereich
Bedeutung
..._nextAstroTimeEvent Uhrzeit des nächsten Astro Events, Sonnenauf- oder Sonnenuntergang oder feste Zeit pro Rollonamen
..._lastPosValue letzter abgesetzter Fahrbefehl pro Rollonamen
..._lastDelayPosValue letzter abgesetzter Fahrbefehl welcher beim nächsten zulässigen Event ausgeführt wird.
partyMode on, off aktiviert den globalen Partymodus. Alle Rollläden, welche das Attribut AutoShuttersControl_Partymode bei sich auf on gestellt haben, werden nicht mehr gesteuert. Der letzte Schaltbefehl, welcher durch ein Fensterevent oder Bewohnerstatus an die Rollläden gesendet wurde, wird beim off setzen durch set ASC-Device partyMode off ausgeführt
lockOut on, off für das Aktivieren des Aussperrschutzes gemäß des entsprechenden Attributs AutoShuttersControl_lock-out im jeweiligen Rolladen. (siehe Beschreibung bei den Attributen für die Rolladendevices)
room_... Auflistung aller Rollläden welche in den jeweiligen Rämen gefunden wurde, Bsp.: room_Schlafzimmer,Terrasse
state Status des Devices active, enabled, disabled
sunriseTimeWeHoliday on,off wird das Rolladen Device Attribut Attributes AutoShuttersControl_Time_Up_WE_Holiday beachtet oder nicht
userAttrList rolled out Status der UserAttribute, welche an die Rollläden gesendet werden

Readings in den Rolllädendevices

Name Bedeutung
ASC_Time_DriveUp Sonnenaufgangszeit für das Rollo
ASC_Time_DriveDown Sonnenuntergangszeit für das Rollo
ASC_ShuttersLastDrive Grund des letzten fahrens vom Rolladen

Settings

Set Befehle für ASC-Device

Name Datentyp/
Wertebereich
Beschreibung
partyMode on, off aktiviert den globalen Partymodus. Siehe Reading partyMode
lockOut on, off aktiviert den globalen Aussperrschutz. Siehe Reading partyMode
renewSetSunriseSunsetTimer erneuert bei allen Rollläden die Zeiten für Sunset und Sunrise und setzt die internen Timer neu.
scanForShutters sucht alle FHEM Devices mit dem Attribut "AutoShuttersControl" 1, 2
sunriseTimeWeHoliday on,off aktiviert/deaktiviert die Beachtung des Attributes AutoShuttersControl_Time_Up_WE_Holiday für Rollladen-Devices
createNewNotifyDev Legt die interne Struktur für NOTIFYDEV neu an
selfDefence on, off aktiviert/deaktiviert den Selbstschutz, wenn das Residents Device absent meldet und selfDefence aktiv ist und ein Fenster im Haus steht noch offen, wird an diesem Fenster das Rollo runtergefahren
wiggle Bewegt einen Rollladen oder alle Rollläden (für Abschreckungszwecke bei der Alarmierung) um 5%, und nach 1 Minute wieder zurück zur Ursprungsposition

Get

Name Beschreibung
showShuttersInformations zeigt eine Übersicht der Autofahrzeiten
showNotifyDevsInformations zeigt eine Übersicht der abgelegten NOTIFYDEV Struktur. Dient zur Kontrolle

Attribute

Attribute im AutoShuttersControl Device selbst.

Name Datentyp/
Wertebereich
Default-Wert Beschreibung
ASC_antifreezeTemp Temperatur ab welcher der Frostschutz greifen soll und das Rollo nicht mehr fährt. Der letzte Fahrbefehl wird gespeichert.
ASC_autoAstroModeEvening aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC (in genau dieser Schreibweise)
ASC_autoAstroModeEveningHorizon Höhe über Horizont, wenn beim Attribut AutoShuttersControl_autoAstroModeEvening HORIZON ausgewählt
ASC_autoAstroModeMorning aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC (in genau dieser Schreibweise)
ASC_autoAstroModeMorningHorizon Höhe über Horizont, wenn beim Attribut AutoShuttersControl_autoAstroModeMorning HORIZON ausgewählt
ASC_autoShuttersControlComfort on, off schaltet die Komfortfunktion an. Bedeutet, dass ein Rollladen mit einem threestate Sensor am Fenster beim Öffnen in eine weit offen Position fährt. Die Offenposition wird beim Rollladen über das Attribut AutoShuttersControl_Pos_after_ComfortOpen eingestellt.
ASC_autoShuttersControlEvening on, off ob Abends die Rollläden automatisch nach Zeit gesteuert werden sollen
ASC_autoShuttersControlMorning on, off ob Morgens die Rollläden automatisch nach Zeit gesteuert werden sollen
ASC_temperatureReading Reading für die Außentemperatur
ASC_temperatureSensor Device für die Außentemperatur
ASC_timeUpHolidayDevice Device zur Urlaubserkennung oder Sonstiges / muss 0 oder 1 im Reading state beinhalten.
ASC_residentsDevice Devicenamen des Residents-Device der obersten Ebene
ASC_residentsDeviceReading Status Reading des Residents-Device der obersten Ebene
ASC_brightnessMinVal minimaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen
ASC_brightnessMaxVal maximaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen
ASC_rainSensorDevice Device, welches bei Regen getriggert werden soll
ASC_rainSensorReading das ensprechende Reading zum Regendevice
ASC_rainSensorShuttersClosedPos Position in pct, welche der Rollladen bei Regen anfahren soll
ASC_shuttersDriveOffset maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet keine Verzögerung

Attribute in den Rolllädendevices

Name Datentyp/
Wertebereich
Default-Wert Beschreibung
ASC 0, 1, 2 1 = "Inverse oder Rollo Bsp.: Rollo Oben 0,Rollo Unten 100 und der Befehl zum Prozentualen fahren ist position",2 = "Homematic Style Bsp.: Rollo Oben 100,Rollo Unten 0 und der Befehl zum Prozentualen fahren ist pct
ASC_Antifreeze on, off Frostschutz an oder aus
ASC_AutoAstroModeEvening REAL, CIVIL, NAUTIC, ASTRONOMIC aktuell REAL,CIVIL,NAUTIC,ASTRONOMIC
ASC_AutoAstroModeEveningHorizon Höhe über Horizont wenn beim Attribut ASC_autoAstroModeEvening HORIZON ausgewählt
ASC_AutoAstroModeMorning REAL, CIVIL, NAUTIC, ASTRONOMIC aktuell REAL,CIVIL,NAUTIC,ASTRONOMIC
ASC_AutoAstroModeMorningHorizon Höhe über Horizont wenn beim Attribut ASC_autoAstroModeMorning HORIZON ausgewählt
ASC_Closed_Pos in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut ASC
ASC_Down astro, time, brightness bei Astro wird Sonnenuntergang berechnet, bei time wird der Wert aus ASC_Time_Down_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Down_Early und ASC_Time_Down_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Down_Late Zeit,es wird aber in der Zeit zwischen ASC_Time_Down_Early und ASC_Time_Down_Late geschaut ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde, wenn ja wird der Rolladen runter gefahren
ASC_Mode_Down always, home, absent, off wann darf die Automatik steuern. immer,niemals,bei abwesenheit des Roommate (ist kein Roommate und absent eingestellt wird gar nicht gesteuert)
ASC_Mode_Up always, home, absent, off wann darf die Automatik steuern. immer,niemals,bei abwesenheit des Roommate (ist kein Roommate und absent eingestellt wird gar nicht gesteuert)
ASC_Drive_Offset maximale zufällige Verzögerung in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet sofort, -1 bedeutet das das gleichwertige Attribut aus dem ASC-Device ausgewertet werden soll.
ASC_Open_Pos in 10 Schritten von 0 bis 100,default Vorgabe ist abhängig vom Attribut ASC
ASC_Partymode on, off schaltet den Partymodus an oder aus. Wird dann am ASC Device set ASC-DEVICE partyMode on geschalten, werden alle Fahrbefehle an den Rollläden, welche das Attribut auf on haben, zwischengespeichert und erst später ausgeführt
ASC_Pos_Reading Name des Readings, welches die Position des Rollladen in Prozent an gibt. Wird bei unbekannten Device -ypen auch als set Befehl zum Fahren verwendet
ASC_Pos_after_ComfortOpen in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut ASC
ASC_Roommate_Reading das Reading zum Roommate-Device, welches den Status wieder gibt
ASC_Roommate_Device mit Komma getrennte Namen des/der Roommate-Device/s welche den/die Bewohner des Raumes vom Rollladen wieder gibt. Es macht nur Sinn in Schlaf- oder Kinderzimmern
ASC_Time_Down_Early Sunset frühste Zeit zum Runterfahren
ASC_Time_Down_Late Sunset späteste Zeit zum Runterfahren
ASC_Time_Up_Early Sunrise frühste Zeit zum Hochfahren
ASC_Time_Up_Late Sunrise späteste Zeit zum Hochfahren
ASC_Time_Up_WE_Holiday Sunrise frühste Zeit zum Hochfahren am Wochenende und/oder Urlaub (we2holiday wird beachtet). Achtung! Sollte nicht größer sein als ASC_Time_Up_Late, sonst wird ASC_Time_Up_Late verwendet
ASC_Up astro, time, brightness bei astro wird Sonnenaufgang berechnet, bei time wird der Wert aus ASC_Time_Up_Early als Fahrzeit verwendet und bei brightness müssen ASC_Time_Up_Early und ASC_Time_Up_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Up_Late Zeit, es wird aber in der Zeit zwischen ASC_Time_Up_Early und ASC_Time_Up_Late geschaut, ob die als Attribut im Moduldevice hinterlegte ASC_brightnessMinVal erreicht wurde. Wenn ja, wird der Rolladen runter gefahren
ASC_Ventilate_Pos in 10 Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut ASC
ASC_Ventilate_Window_Open auf lüften, wenn das Fenster gekippt/geöffnet wird und aktuelle Position unterhalb der Lüften-Position ist
ASC_WindowRec Name des Fensterkontakts an welchen Fenster der Rollladen angebracht ist
ASC_WindowRec_subType Typ des verwendeten Fensterkontakts: twostate (optisch oder magnetisch) oder threestate (Drehgriffkontakt)
ASC_lock-out soft, hard stellt entsprechend den Aussperrschutz ein. Bei global aktiven Aussperrschutz (set ASC-Device lockOut soft) und einem Fensterkontakt open bleibt dann der Rolladen oben. Dies gilt nur bei Steuerbefehle über das ASC Modul. Stellt man global auf hard, wird bei entsprechender Möglichkeit versucht, den Rollladen hardwareseitig zu blockieren. Dann ist auch ein Fahren über die Taster nicht mehr möglich.
ASC_lock-outCmd inhibit, blocked set Befehl für das Rolladen-Device zum Hardware sperren. Der Befehl wird verwendet, wenn man "ASC_lock-out" auf hard setzt
ASC_Self_Defense_Exclude on, off bei on Wert wird dieser Rolladen bei aktiven Self Defense und offenen Fenster nicht runter gefahren, wenn Residents absent ist.
ASC_Shading_Brightness_Sensor Sensor-Device, welches für die Lichtwerte verwendet wird. ACHTUNG! Findet auch Verwendung bei ASC_Down - brightness
ASC_BrightnessMinVal minimaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
ASC_BrightnessMaxVal maximaler Lichtwert, bei dem Schaltbedingungen noch geprüft werden sollen / wird der Wert von -1 nicht geändert, so wird automatisch der Wert aus dem Moduldevice genommen
ASC_ShuttersPlace window, terrace wenn dieses Attribut auf terrace gesetzt ist und das Residence Device in den Status "done" geht und SelfDefence aktiv ist wird das Rollo geschlossen

Hilfsmittel

tbd

readingsGroup, um die diversen Level einzustellen:

define rg_ASC_Rollaeden_Level readingsGroup <Gerät>,<Closed_Pos>,<Open_Pos>,<Shading_Pos>,<Ventilate_Pos> (Rolladen_.*|Jalousie_.*)..:?ASC_Closed_Pos,?ASC_Open_Pos,?ASC_Shading_Pos,?ASC_Ventilate_Pos
attr rg_ASC_Rollaeden_Level commands { ASC_Closed_Pos => 'ASC_Closed_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\
ASC_Open_Pos => 'ASC_Open_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\
ASC_Shading_Pos => 'ASC_Shading_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\
ASC_Ventilate_Pos => 'ASC_Ventilate_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100'}

ReadingsGroup ASC Level.png readingsGroup, um die diversen Zeiten einzustellen:

define rg_ASC_Rollaeden_Times readingsGroup <Gerät>,<Stand>,<Time_Up_Early>,<Time_Up_WE>,<Time_Up_Late>,<Time_Down_Early>,Time_Down_Late>,<Mode_Down>,<Mode_Up> (Rolladen_.*|Jalousie_.*)..:level,?ASC_Time_Up_Early,?ASC_Time_Up_WE_Holiday,?ASC_Time_Up_Late,?ASC_Time_Down_Early,?ASC_Time_Down_Late,?ASC_Mode_Down,?ASC_Mode_Up
attr rg_ASC_Rollaeden_Times commands {level => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100', \
ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off',\
ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off',\
ASC_Time_Down_Early => 'ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00', \
ASC_Time_Down_Late  => 'ASC_Time_Down_Late:20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30',\
ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00', \
ASC_Time_Up_Late =>'ASC_Time_Up_Late:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',ASC_Time_Up_WE_Holiday => 'ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00'}

ReadingsGroup ASC Times.png

Weblinks