AutoShuttersControl
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.
Basics
Zur Nutzung des Moduls sollten folgende andere FHEM-Devices vorhanden sein:
- Rollä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 Rolladen (am Rollladen-Device)
Einrichtung
Vorbereitung
Ihr benötigt ein aktuelles FHEM. Update ab dem 04.09.2018 Voraussetzung!
Zunächst muß das Modul aus dem Link im Forum entpackt werden und die Datei 73_AutoShuttersControl.pm in das Unterverzeichnis für die Module kopiert werden und die Rechte angepaßt.
Speicherort für Linux-Standardinstallationen: /opt/fhem/FHEM
Rechte: sudo chown 73_AutoShuttersControl.pm
und sudo chmod 644 73_AutoShuttersControl.pm
Danach sollte ein reload AutoShuttersControl
in FHEM-Eingabefeld ausreichen, um das Modul verfügbar zu machen.
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 AutoShuttersControl 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äß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. Diese 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 AutoShuttersControl 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.
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
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. Die Beschreibung der Attribute ist in der commandref enthalten.
Settings
Set Befehle für AutoShuttersControl Device
Name | Datentyp/ Wertebereich |
Beschreibung |
---|---|---|
scanForShutters | erkennt alle Devices welche mit dem Attribut AutoShuttersControl 1/2 versehen sind | |
renewSetSunriseSunsetTimer | setzt bei allen Rolläden die Sunrise und Sunset Timer neu | |
partyMode | on,off | schaltet den globalen Partymodus an und alle Rolläden welche das Attribut Partymodus on haben werden nicht weiter gesteuert. Wird der Partymodus beendet fahren alle Rolladen welche das Attribut Partymode on hatten in die letzte Befehlsposition welche innerhalb des Partymodus an kam. |
Attribute
Attribute im AutoShuttersControl Device selbst.
Name | Datentyp/ Wertebereich |
Default-Wert | Beschreibung |
---|---|---|---|
AutoShuttersControl_antifreezeTemp | Temperatur ab welcher der Frostschutz greifen soll | ||
AutoShuttersControl_autoAstroModeEvening | aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC | REAL | (in genau dieser Schreibweise) |
AutoShuttersControl_autoAstroModeMorning | aktuell REAL, CIVIL, NAUTIC, ASTRONOMIC | REAL | (in genau dieser Schreibweise) |
AutoShuttersControl_autoAstroModeEveningHorizon | Höhe über Horizont wenn HORIZON ausgewählt | ||
AutoShuttersControl_autoAstroModeMorningHorizon | Höhe über Horizont wenn HORIZON ausgewählt | ||
AutoShuttersControl_autoShutterControlMorning | on | ob Morgens die Rolläden automatisch gesteuert werden sollen (zur Zeit für Sunrise) | |
AutoShuttersControl_autoShuttersControlEvening | on | ob Abends die Rolläden automatisch gesteuert werden sollen (zur Zeit für Sunset) | |
AutoShuttersControl_temperatureReading | Reading für die Aussentemperatur | ||
AutoShuttersControl_temperatureSensor | Device für die Aussentemperatur |
Attribute in den Rolllädendevices
Name | Datentyp/ Wertebereich |
Default-Wert | Beschreibung |
---|---|---|---|
AutoShuttersControl | 0, 1, 2 | 0 nimmt das Device aus der Liste des Modules, 1 bedeutet default Werte für AutoShuttersControl_Closed_Pos von 100, für AutoShuttersControl_Open_Pos von 0, für AutoShuttersControl_Ventilate_Pos von 80, für AutoShuttersControl_Pos_Cmd von position / 2 bedeutet default Werte für AutoShuttersControl_Closed_Pos von 0, für AutoShuttersControl_Open_Pos von 100, für AutoShuttersControl_Ventilate_Pos von 30, für AutoShuttersControl_Pos_Cmd von pct | |
AutoShuttersControl_Antifreeze | on, off | ||
AutoShuttersControl_Closed_Pos | 100 | in 10 Schritten von 0 bis 100 | |
AutoShuttersControl_Open_Pos | 0 | in 10 Schritten von 0 bis 100 | |
AutoShuttersControl_Ventilate_Pos | 80 | in 10 Schritten von 0 bis 100 | |
AutoShuttersControl_Pos_Cmd | pct | der set Befehl um den Rolladen in Prozent Angaben zu fahren. | |
AutoShuttersControl_Roommate_Device | rr_Daughter | Name des Roommate Devices passend zum Fenster | |
AutoShuttersControl_Roommate_Reading | state | das Reading zum Roommate Device welches den Status wieder gibt | |
AutoShuttersControl_WindowRec | FensterKinZimLi | Name des Fensterkontaktes an welchen Fenster der Rolladen angebracht ist | |
AutoShuttersControl_WindowRec_subType | twostate | Wird aktuell noch nicht beachtet | |
AutoShuttersControl_Down | astro, time | bei Astro wird Sonnenuntergang berechnet, bei time wird der Wert aus AutoShuttersControl_Time_Down_Early als Fahrzeit verwendet | |
AutoShuttersControl_Up | astro, time | bei Astro wird Sonnenaufgang berechnet, bei time wird der Wert aus AutoShuttersControl_Time_Up_Early als Fahrzeit verwendet | |
AutoShuttersControl_Time_Down_Early | 15:30:00 | Sunset frühste Zeit zum runter fahren | |
AutoShuttersControl_Time_Down_Late | 22:30:00 | Sunset späteste Zeit zum runter fahren | |
AutoShuttersControl_Time_Up_Early | 05:30:00 | Sunrise frühste Zeit zum hoch fahren | |
AutoShuttersControl_Time_Up_Late | 09:00:00 | Sunrise späteste Zeit zum hoch fahren | |
AutoShuttersControl_Mode_Down | always wann darf die Automatik steuern, always, absent,off - immer, gar nicht, bei abwesenheit des Roomate (ist kein Roommate und absent eingestellt wird gar nicht gesteuert) | ||
AutoShuttersControl_Partymode | on, off | schaltet des Partymodus an oder aus | |
AutoShuttersControl_lock-out | on, off | aktiviert oder deaktiviert den Aussperrschutz. Bei aktiven Aussperrschutz und einem Kontakt open bleibt dann der Rolladen oben. | |
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_.*)..:?AutoShuttersControl_Closed_Pos,?AutoShuttersControl_Open_Pos,?AutoShuttersControl_Shading_Pos,?AutoShuttesControl_Ventilate_Pos attr rg_ASC_Rollaeden_Level commands { AutoShuttersControl_Closed_Pos => 'AutoShuttersControl_Closed_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\ AutoShuttersControl_Open_Pos => 'AutoShuttersControl_Open_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\ AutoShuttersControl_Shading_Pos => 'AutoShuttersControl_Shading_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',\ AutoShuttersControl_Ventilate_Pos => 'AutoShuttersControl_Ventilate_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100'}
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,?AutoShuttersControl_Time_Up_Early,?AutoShuttersControl_Time_Up_WE_Holiday,?AutoShuttersControl_Time_Up_Late,?AutoShuttersControl_Time_Down_Early,?AutoShuttersControl_Time_Down_Late,?AutoShuttersControl_Mode_Down,?AutoShuttersControl_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', \ AutoShuttersControl_Mode_Down => 'AutoShuttersControl_Mode_Down:always,absent,off',\ AutoShuttersControl_Mode_Up => 'AutoShuttersControl_Mode_Up:always,absent,off',\ AutoShuttersControl_Time_Down_Early => 'AutoShuttersControl_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', \ AutoShuttersControl_Time_Down_Late => 'AutoShuttersControl_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',\ AutoShuttersControl_Time_Up_Early => 'AutoShuttersControl_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', \ AutoShuttersControl_Time_Up_Late =>'AutoShuttersControl_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',AutoShuttersControl_Time_Up_WE_Holiday => 'AutoShuttersControl_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'}
Weblinks
- "Thread zur Entwicklung im Forum"
- "Thread zu den Scripten von user cluni", die der Entwicklung des Moduls zugrunde liegen