AutoShuttersControl: Unterschied zwischen den Versionen
(Kleinigkeiten, v.a. aus 112325.msg1076047#msg1076047 übernommen) |
(→Sonstige Hinweise und Problemlösungen: Lösungsvorschlag, falls zu viele Fahrbefehle gesendet werden und ein Device den Befehl nicht bekommt (zeitverzögertes Fahren)) |
||
Zeile 560: | Zeile 560: | ||
* Hin und wieder berichten Nutzer davon, wenn Sie die ''Privacy Funktion'' nutzen, dass sich im NOTIFYDEV anstelle des Device Namen ein Raumname befindet. Diese Problem kann damit gelöst werden, dass in dem betroffenen '''Rollo Device''' das Atribut <code>attr event-on-change .*</code> gesetzt wird. | * Hin und wieder berichten Nutzer davon, wenn Sie die ''Privacy Funktion'' nutzen, dass sich im NOTIFYDEV anstelle des Device Namen ein Raumname befindet. Diese Problem kann damit gelöst werden, dass in dem betroffenen '''Rollo Device''' das Atribut <code>attr event-on-change .*</code> gesetzt wird. | ||
'''Wichtig!''' Nicht verwechseln mit dem ASC Device dort darf <code>attr event-on-change</code> '''nicht''' gesetzt sein! | '''Wichtig!''' Nicht verwechseln mit dem ASC Device dort darf <code>attr event-on-change</code> '''nicht''' gesetzt sein! | ||
* Wenn mehrere Rollladen gleichzeitig den Fahrbefehl bekommen, kann es (z. B. bei zwave) dazu kommen, dass ein Rollladen seinen Befehl nicht bekommt. Dies kann durch eine zeitverzögerte Aussendung der Fahrbefehle vermieden werden. Dazu in den jeweiligen Rollo Devices das Attribut ASC_Drive_DelayStart wie folgt benutzen im: ersten Rollo Device braucht das Attribut nicht gesetzt werden, im zweiten Rollo Device im Attribut ASC_Drive_DelayStart dann 4 Sekunden eintragen, im dritten Rollo Device im Attribut ASC_Drive_DelayStart 8 Sekunden eintragen, usw. Ein Abstand von 3-4 Sekunden ist dabei zielführend. | |||
==== Spezielle Hardware ==== | ==== Spezielle Hardware ==== |
Version vom 20. September 2020, 12:40 Uhr
An dieser Seite wird momentan noch gearbeitet. |
AutoShuttersControl | |
---|---|
Zweck / Funktion | |
Steuerung von Rollläden | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Automatisierung |
Modulname | 73_AutoShuttersControl.pm |
Ersteller | CoolTux (Forum /Wiki) |
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:
- Rollläden
- Fensterkontakte und
- Bewohnerstatus auf Basis von Residents/Roomates in englisch. Ersatzweise andere Devices, z.B. Dummys, welche als state home, absent, asleep, gotosleep und awoken setzen sowie ein Reading lastState.
- Optional:
- Ein Helligkeitssensor (Steuerung nach Helligkeit und Beschattung)
- Ein Device zur Bestimmung des Sonnenstands (nur für Beschattung). Unterstützt werden derzeit Astro und Twilight[1].
- Wenn Feiertage berücksichtigt werden sollen: Ein oder mehrere holiday2we-Angaben in global samt entsprechender holiday-Dateien[2] [3].
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)
Dabei geht man am einfachsten schrittweise vor und erweitert die Funktionalität nach und nach um die gewünschten Funktionen. Dann benötigt man jeweils nur einen kleinen Teil der vielen per Attribut einstellbaren Optionen, und kann die Auswirkungen der jeweiligen Änderung besser nachvollziehen.
Einrichtung
Vorbereitung
Zunächst sollten die in den Basics beschriebenen Geräte vorhanden und funktionsfähig sein.
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.
Aus dieser Vorgabe leitet das Modul dann jeweils bestimmte Voreinstellungen (defaults) für den Rolladen ab, ohne dass die betreffenden, dafür vorgesehenen Attribute ausdrücklich gesetzt werden müssen. Es genügt daher, nur jeweils die Einstellungen zu verändern, die anders gewünscht werden oder für den Rollladenaktortyp anders sein müssen (z.B. dim 99 für vollständiges Öffnen eines ZWave-Aktors).
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 | Zeit wird abhängig von der eingestellten Attribute ASC_Time_Up/ASC_Time_Down angezeigt. Bei astro die Uhrzeit des Sonnenauf- oder Sonnenuntergang, bei time und brightness die Zeit aus ASC_Time_Up_Early/ASC_Time_Down_Late pro Rollonamen | |
..._lastPosValue | Position pro Rollonamen bevor ASC die Rolläden verfahren hat | |
..._PosValue | aktuelle Position pro Rollonamen | |
ascEnable | on, off | globale ASC Steuerung bei den Rollläden aktiv oder inaktiv |
controlShading | on, off | globale Beschattungsfunktion aktiv oder inaktiv |
hardLockOut | on, off | Status des hardwareseitigen Aussperrschutzes / gilt nur für Rolläden mit dem Attribut bei denen das Attributs ASC_LockOut entsprechend auf hard gesetzt ist |
selfDefense | on, off | globale Selbstschutzfunktion aktiv oder inaktiv |
partyMode | on, off | globaler Partymodus aktiv oder inaktiv |
state | Status des ASC-Devices: active, enabled, disabled oder weitere Statusinformationen wie z.B. Grund der letzen Fahrt | |
room_... | Auflistung aller Rollläden, welche in den jeweiligen Räumen gefunden wurden, Bsp.: room_Schlafzimmer,Terrasse | |
sunriseTimeWeHoliday | on,off | globale Wochenendunterstützung aktiv oder inaktiv |
userAttrList | rolled out | Das ASC-Modul verteilt an die gesteuerten Rollladen-Geräte diverse Benutzerattribute (userattr). In diesem Reading kann der Status dieser Verteilung geprüft werden. |
Readings in den Rolllädendevices
Name | Bedeutung |
---|---|
ASC_Enable | Status von ASC_Enable (on,off) |
ASC_ShuttersLastDrive | Grund des letzten Fahrens des Rolladens |
ASC_Time_DriveDown | Zeit wird abhängig von der eingestellten Attribute ASC_Time_Down angezeigt. Bei astro die Uhrzeit des Sonnenuntergangs, bei time und brightness die Zeit aus /ASC_Time_Down_Late |
ASC_Time_DriveUp | Zeit wird abhängig von der eingestellten Attribute ASC_Time_Up angezeigt. Bei astro die Uhrzeit des Sonnenaufgangs, bei time und brightness die Zeit aus /ASC_Time_Up_Early |
set- und get-Befehle für das ASC-Device
set-Anweisungen
Name | Datentyp/ Wertebereich |
Beschreibung |
---|---|---|
advDriveDown | on, off | holt bei allen Rollläden durch ASC_Adv on ausgesetzte Fahrten nach |
ascEnable | on, off | Aktiviert oder deaktiviert die globale ASC-Steuerung |
controlShading | on, off | Aktiviert oder deaktiviert die globale Beschattungssteuerung |
createNewNotifyDev | Legt die interne Struktur für NOTIFYDEV neu an. (Diese Funktion steht nur zur Verfügung, wenn Attribut ASC_expert auf 1 gesetzt ist.) | |
hardLockOut | on, off | Aktiviert den hardwareseitigen Aussperrschutz für die Rollläden, bei denen das Attributs ASC_LockOut entsprechend auf hard gesetzt ist. Mehr Informationen in der Beschreibung bei den Attributen für die Rollladengeräten. |
partyMode | on, off | Aktiviert den globalen Partymodus. Alle Rollladen-Geräten, in welchen das Attribut ASC_Partymode auf on gesetzt ist, werden durch ASC nicht mehr gesteuert. Der letzte Schaltbefehl, der bspw. durch ein Fensterevent oder Wechsel des Bewohnerstatus an die Rollläden gesendet wurde, wird beim Deaktivieren des Partymodus ausgeführt |
renewAllTimer | erneuert bei allen Rollläden die Zeiten gemäß ASC_UP/ASC_DOWN und setzt die internen Timer neu. | |
renewTimer | erneuert bei dem ausgewählten Rolladen die Zeiten gemäß ASC_UP/ASC_DOWN und setzt die internen Timer neu. | |
scanForShutters | sucht alle FHEM Devices mit dem Attribut ASDC 1 oder 2 und legt diese im ASC-Modul an | |
selfDefence | on, off | Aktiviert bzw. deaktiviert die Selbstschutzfunktion. Beispiel 1: Wenn das Residents-Gerät gone meldet, alle Rollläden dann heruntergefahren. Beispiel 2 : Wenn das Residents-Gerät absent meldet, das Attribut ASC_ShuttersPlace=terrace ist und ein Fenster im Haus noch geöffnet ist, so wird an diesem Fenster der Rollladen dann heruntergefahren. |
shutterASCenableToggle | Aktivieren oder deaktivieren der ASC Kontrolle beim einzelnen Rollladens | |
sunriseTimeWeHoliday | on,off | Aktiviert die Wochenendunterstützung und somit, ob im Rollladen das Attribut ASC_Time_Up_WE_Holiday beachtet werden soll oder nicht. |
wiggle | bewegt einen oder mehrere Rollläden um einen definierten Wert (Default: 5%) und nach einer Minute wieder zurück in die Ursprungsposition. Diese Funktion könnte bspw. zur Abschreckung in einem Alarmsystem eingesetzt werden. | |
get-Anweisungen
Name | Beschreibung |
---|---|
showNotifyDevsInformations | zeigt eine Übersicht der abgelegten NOTIFYDEV Struktur. Diese Funktion wird primär fürs Debugging genutzt. Hierzu ist das Attribut ASC_expert = 1 zu setzen. |
Attribute
ASC_BrightnessSensor Sensorname[:brightness [400:800]]
. Dabei sind die Angaben in den eckigen Klammern optional. Dies müssen also nicht angegeben werden, stattdessen verwendet das Modul dann Standardwerte (siehe cref), die in der cref zu findenden Angaben entsprechen dabei den defaults. Werden Werte angegeben, sind die eckigen Klammern wegzulassen! Beispiel: ASC_BrightnessSensor hm_motion_1 70:100
würde das brightness-Reading des Sensors hm_motion_1 verwenden und einen morgendlichen Schwellenwert von 70 bzw. 100 für abends.
Attribute direkt am ASC-Device
Name | Datentyp/ Wertebereich |
Default-Wert | Beschreibung |
---|---|---|---|
ASC_autoAstroModeEvening | REAL, CIVIL, NAUTIC, ASTRONOMIC oder HORIZON | nach welchem ASTRO-Modus soll die Abendfahrt berechnet werden | |
ASC_autoAstroModeEveningHorizon | - 9 bis 9 | 0 | Höhe über dem Horizont. Wird nur berücksichtigt, wenn im Attribut ASC_autoAstroModeEvening der Wert HORIZON ausgewählt wurde. |
ASC_autoAstroModeMorning | REAL, CIVIL, NAUTIC, ASTRONOMIC oder HORIZON | nach welchem ASTRO-Modus soll die Morgendfahrt berechnet werden | |
ASC_autoAstroModeMorningHorizon | - 9 bis 9 | 0 | Höhe über dem Horizont. Wird nur berücksichtigt, wenn im Attribut ASC_autoAstroModeMorning der Wert HORIZON ausgewählt wurde. |
ASC_autoShuttersControlComfort | on, off | off | schaltet die Komfortfunktion an. Bedeutet, dass ein Rollladen mit einem threestate-Sensor am Fenster beim Öffnen in eine Offenposition fährt. Hierzu muss beim Rollladen das Attribut ASC_ComfortOpen_Pos entsprechend konfiguriert sein. |
ASC_autoShuttersControlEvening | on, off | Aktiviert die automatische Steuerung durch das ASC-Modul am Abend. | |
ASC_autoShuttersControlMorning | on, off | Aktiviert die automatische Steuerung durch das ASC-Modul am Morgen. | |
ASC_blockASCDrivesAfterManual | 0, 1 | wenn dieser Wert auf 1 gesetzt ist, dann werden Rollläden vom ASC-Modul nicht mehr gesteuert, wenn zuvor manuell eingegriffen wurde. Voraussetzung hierfür ist jedoch, dass im Reading ASC_ShuttersLastDrive der Status manual enthalten ist und sich der Rollladen auf eine unbekannte (nicht in den Attributen anderweitig konfigurierte) Position befindet. | |
ASC_brightnessDriveUpDown | Werte (z.B. Lux) bei dem Schaltbedingungen für Sonnenauf- und -untergang geprüft werden sollen. Diese globale Einstellung kann durch die WERT-MORGENS:WERT-ABENDS Einstellung von ASC_BrightnessSensor im Rollladen selbst überschrieben werden. | ||
ASC_debug | 0, 1 | 0 | Aktiviert die erweiterte Logausgabe für Debugausgaben (nur nach Aufforderung nutzen) |
ASC_expert | 0, 1 | 0 | ist der Wert 1, so werden erweiterte Informationen bezüglich des NotifyDevs unter set und get angezeigt |
ASC_freezeTemp | -5 bis 5 | Temperatur, ab welcher der Frostschutz greifen soll und der Rollladen nicht mehr fährt. Der letzte Fahrbefehl wird gespeichert. | |
ASC_rainSensor | DEVICENAME[:READINGNAME] MAXTRIGGER[:HYSTERESE] [CLOSEDPOS] - der Inhalt ist eine Kombination aus Devicename, Readingname, Wert ab dem getriggert werden soll, Hysterese Wert ab dem der Status Regenschutz aufgehoben werden soll und der "wegen Regen geschlossen Position". | ||
ASC_residentsDev | DEVICENAME[:READINGNAME] - der Inhalt ist eine Kombination aus Devicenamen und Readingnamen des Residents-Device der obersten Ebene (z.B. rgr_Residents:state) | ||
ASC_shuttersDriveDelay | maximale Zufallsverzögerung in Sekunden bei der Berechnung der Fahrzeiten. 0 bedeutet keine Verzögerung | ||
ASC_tempSensor | DEVICENAME[:READINGNAME] - der Inhalt ist eine Kombination aus Device und Reading für die Außentemperatur | ||
ASC_twilightDevice | das Device, welches die Informationen zum Sonnenstand liefert. Wird unter anderem für die Beschattung verwendet. | ||
ASC_windSensor | DEVICE[:READING] - Sensor für die Windgeschwindigkeit. Kombination aus Device und Reading. | ||
Attribute in den Rolllädendevices
Name | Datentyp/ Wertebereich |
Default-Wert | Beschreibung | ||||
---|---|---|---|---|---|---|---|
ASC | 0, 1, 2 | "kein Anlegen der Attribute beim ersten Scan bzw. keine Beachtung eines Fahrbefehles",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_Adv | on, off | bei on wird das runterfahren des Rollos während der Weihnachtszeit (1. Advent bis 6. Januar) ausgesetzt! Durch set <ASCDEVICE> advDriveDown werden alle ausgesetzten Fahrten nachgeholt. | |||||
ASC_Antifreeze | off, soft, hard, am, pm | Frostschutz, wenn soft fährt der Rollladen in die ASC_Antifreeze_Pos, bei hard/am/pm wird gar nicht oder innerhalb der entsprechenden Tageszeit nicht gefahren | |||||
ASC_Antifreeze_Pos | Position des Rolllades die angefahren werden soll, wenn der Fahrbefehl komplett schließen lautet, aber der Frostschutz aktiv ist !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!! | ||||||
ASC_autoAstroModeEvening | REAL, CIVIL, NAUTIC, ASTRONOMIC oder HORIZON | nach welchem ASTRO-Modus soll die Abendfahrt berechnet werden | |||||
ASC_autoAstroModeEveningHorizon | - 9 bis 9 | 0 | Höhe über dem Horizont. Wird nur berücksichtigt, wenn im Attribut ASC_autoAstroModeEvening der Wert HORIZON ausgewählt wurde. | ||||
ASC_autoAstroModeMorning | REAL, CIVIL, NAUTIC, ASTRONOMIC oder HORIZON | nach welchem ASTRO-Modus soll die Morgendfahrt berechnet werden | |||||
ASC_autoAstroModeMorningHorizon | - 9 bis 9 | 0 | Höhe über dem Horizont. Wird nur berücksichtigt, wenn im Attribut ASC_autoAstroModeMorning der Wert HORIZON ausgewählt wurde. | ||||
ASC_BlockingTime_afterManual | 1200 | wie viel Sekunden soll die Automatik nach einer manuellen Fahrt aussetzen | |||||
ASC_BlockingTime_beforeDayOpen | 3600 | wie viel Sekunden vor dem morgendlichen öffnen soll keine schließen Fahrt mehr stattfinden. | |||||
ASC_BlockingTime_beforeNightClose | 3600 | ie viel Sekunden vor dem nächtlichen schließen soll keine öffnen Fahrt mehr stattfinden. | |||||
ASC_BrightnessSensor | none | DEVICE[:READING] WERT-MORGENS:WERT-ABENDS / 'Sensorname[:brightness [400:800]]' Angaben zum Helligkeitssensor mit (Readingname, optional) für die Beschattung und dem Fahren der Rollladen nach brightness und den optionalen Brightnesswerten für Sonnenauf- und Sonnenuntergang | |||||
ASC_Closed_Pos | default Vorgabe ist abhängig vom Attribut ASC | in 10er-Schritten von 0 bis 100
wird angefahren wenn SelfDefense aktiv ist | |||||
ASC_ComfortOpen_Pos | in 10er Schritten von 0 bis 100 !!! Die eingestellte Position wird bei einem threestate Sensor angefahren. Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!! | ||||||
ASC_Down | time, astro, brightness, roommate | astro | 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_brightnessDriveUpDown der Down Wert erreicht wurde. Wenn ja, wird der Rollladen runter gefahren. | ||||
ASC_DiveUpMaxDuration | 60 | die Dauer des Hochfahrens des Rollladens plus 5 Sekunden | |||||
ASC_Drive_Delay | -1 | maximaler Wert für einen zufällig ermittelte Verzögerungswert in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet keine Verzögerung, -1 bedeutet, dass das gleichwertige Attribut aus dem ASC Device ausgewertet werden soll | |||||
ASC_DriveDelayStart | -1 | in Sekunden verzögerter Wert ab welchen dann erst das Offset startet und dazu addiert wird. Funktioniert nur wenn gleichzeitig ASC_DriveDelay gesetzt wird. | |||||
ASC_ExternalTrigger | DEVICE:READING VALUEACTIVE:VALUEINACTIVE POSACTIVE:POSINACTIVE, Beispiel: "WohnzimmerTV:state on:off 66:100" bedeutet das wenn ein "state:on" Event kommt soll das Rollo in Position 66 fahren, kommt ein "state:off" Event soll es in Position 100 fahren. Es ist möglich die POSINACTIVE weg zu lassen dann fährt das Rollo in LastStatus Position. | ||||||
ASC_GuestRoom | on, off | aktuell noch nicht umgesetzt... | |||||
ASC_LockOut | soft, hard, off | off | stellt entsprechend den Aussperrschutz ein. Bei global aktivem Aussperrschutz (set ASC-Device lockOut soft) und einem Fensterkontakt open bleibt dann der Rollladen oben. Dies gilt nur bei Steuerbefehlen ü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_LockOut_Cmd | inhibit, blocked, protection | none | set Befehl für das Rollladen-Device zum Hardware sperren. Dieser Befehl wird gesetzt werden, wenn man "ASC_LockOut" auf hard setzt | ||||
ASC_Mode_Down | absent, always, off, home | always | Wann darf die Automatik steuern. immer, niemals, bei Abwesenheit des Roommate (ist kein Roommate und absent eingestellt, wird gar nicht gesteuert) | ||||
ASC_Mode_Up | absent, always, off, home | always | Wann darf die Automatik steuern. immer, niemals, bei Abwesenheit des Roommate (ist kein Roommate und absent eingestellt, wird gar nicht gesteuert) | ||||
ASC_Open_Pos | default Vorgabe ist abhängig vom Attribut ASC | in 10er-Schritten von 0 bis 100 | |||||
ASC_Partymode | on, off | off | schaltet den Partymodus an oder aus. Wird am ASC Device set ASC-DEVICE partyMode on geschalten, werden alle Fahrbefehle an den Rollläden, welche das Attribut auf on haben, zwischengespeichert und später erst ausgeführ | ||||
ASC_Pos_Reading | Name des Readings, welches die Position des Rollladen in Prozent angibt. Wird bei unbekannten Device-Typen auch als set Befehl zum Fahren verwendet | ||||||
ASC_PrivacyDownValue_beforNightClose | -1 | wie viele Sekunden vor dem abendlichen schließen soll der Rollladen in die Sichtschutzposition fahren, oder bei Brightness ab welchem minimum Brightnesswert soll das Rollo in die Privacy Position fahren. Bei Brightness muss zusätzlich zum Zeitwert der Brightnesswert mit angegeben werden 1800:300 bedeutet 30 min vor night close oder bei unter einem Brightnesswert von 300 | |||||
ASC_PrivacyDown_Pos | 50 | Position den Rollladens für den abendlichen Sichtschutz!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!! | |||||
ASC_PrivacyUpValue_beforDay | -1 | wie viele Sekunden vor dem morgendlichen öffnen soll der Rollladen in die Sichtschutzposition fahren, oder bei Brightness ab welchem minimum Brightnesswert soll das Rollo in die Privacy Position fahren. Bei Brightness muss zusätzlich zum Zeitwert der Brightnesswert mit angegeben werden 1800:600 bedeutet 30 min vor day open oder bei über einem Brightnesswert von 600 | |||||
ASC_PrivacyUp_Pos | 50 | Position den Rollladens für den morgendlichen Sichtschutz!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!! | |||||
ASC_RainProtection | on, off | soll der Rollladen beim Regenschutz beachtet werden. on=JA, off=NEIN. | |||||
ASC_Roommate_Device | none | mit Komma getrennte Namen des/der Roommate-Device/s welche den/die Bewohner des Rollladen-Raumes wiedergibt. Macht nur Sinn in Schlaf- oder Kinderzimmern | |||||
ASC_Roommate_Reading | Reading des Roommate-Device, welches den Status wieder gibt | ||||||
ASC_Self_Defense_AbsentDelay | 300 | um wie viele Sekunden soll das fahren in Selfdefense bei Residents absent verzögert werden | |||||
ASC_Self_Defense_Mode | gone | ab welchen Residents Status soll Selfdefense aktiv werden ohne das Fenster auf sind | |||||
ASC_Shading_InOutAzimuth | 95:265 | Azimut Wert ab dem bei Überschreiten Beschattet und bei Unterschreiten Endschattet werden soll | |||||
ASC_Shading_MinMax_Elevation | 25.0:100.0 | ab welcher min Höhe des Sonnenstandes soll beschattet und ab welcher max Höhe wieder beendet werden, immer in Abhängigkeit der anderen einbezogenen Sensorwerte | |||||
ASC_Shading_MinOutsideTemperature_ | 18 | ab welcher Temperatur soll Beschattet werden, immer in Abhängigkeit der anderen einbezogenen Sensorwert | |||||
ASC_ShadingMode | absent, always, off, home | off | wann soll die Beschattung nur stattfinden | ||||
ASC_Shading_Pos | Position des Rollladens für die Beschattung !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!! | ||||||
ASC_Shading_StateChange_SunnyCloudy | 35000:20000 | Brightness Wert ab welchen die Beschattung stattfinden und aufgehoben werden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte | |||||
ASC_Shading_WaitingPeriod | 1200 | wie viele Sekunden soll gewartet werden bevor eine weitere Auswertung der Sensordaten für die Beschattung stattfinden soll | |||||
ASC_Shutter_IdleDetection | READING:VALUE gibt das Reading an welches Auskunft über den Fahrstatus des Rollos gibt, sowie als zweites den Wert im Reading welcher aus sagt das das Rollo nicht fährt | ||||||
ASC_ShuttersPlace | window, terrace | wenn dieses Attribut auf terrace gesetzt ist und das Residents-Device in den Status absent geht, selfDefence aktiv ist und das Fenster geöffnet ist, wird das Rollo geschlossen. Wenn ein twostate Senso genutzt wird und dieses Attribut auf terrace gesetzt ist wird ASC_Ventilate_Pos ignoriert und das Rollo wird beim öffnen des Fenster komplett geöffnet. Wenn dieses Attribut auf window gesetzt ist wird ASC_Ventilate_Pos berücksichtigt und das Rollo wird entsprechend der ASC_Ventilate_Pos geöffnet. Wenn das Fenster wieder geschlossen wird, dann wird das Rollo unabhängig von windows oder terrace vollständig geschlossen. | |||||
ASC_Sleep_Pos | in 10er-Schritten von 0 bis 100, default Vorgabe ist abhängig vom Attribut ASC. Position wird angefahren wenn Bedingung für modeDown aktiv ist. Hiermit kann z.B. das komplette abendliche Schließen des Rollos begrenzt werden. | ||||||
ASC_TempSensor | DEVICENAME[:READINGNAME] - der Inhalt ist eine Kombination aus Device und Reading für die Außentemperatur | ||||||
ASC_Time_Down_Early | 16:00 | Sonnenuntergang frühste Zeit zum Runterfahren !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!! | |||||
ASC_Time_Down_Late | 22:00 | Sonnenuntergang späteste Zeit zum Runterfahren !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!! | |||||
ASC_Time_Up_Early | 05:00 | Sonnenaufgang frühste Zeit zum Hochfahren !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!! | |||||
ASC_Time_Up_Late | 08:30 | Sonnenaufgang späteste Zeit zum Hochfahren !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!! | |||||
ASC_Time_Up_WE_Holiday | 08:00 | Sonnenaufgang frühste Zeit zum Hochfahren am Wochenende und/oder Urlaub (holiday2we wird beachtet).ACHTUNG!!! in Verbindung mit Brightness für ASC_Up muss die Uhrzeit kleiner sein wie die Uhrzeit aus ASC_Time_Up_Late !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!! | |||||
ASC_Ventilate_Window_Open | on, off | on | auf lüften, wenn das Fenster gekippt/geöffnet wird und aktuelle Position unterhalb der Lüften-Position ist | ||||
ASC_WiggleValue | 5 | Wert, um welchen sich die Position des Rollladens bei Wiggle ändern soll | |||||
ASC_WindParameters | 5 | TRIGGERMAX[:HYSTERESE] [DRIVEPOSITION] / Angabe von Max Wert ab dem für Wind getriggert werden soll, Hytsrese Wert ab dem der Windschutz aufgehoben werden soll TRIGGERMAX - HYSTERESE / Ist es bei einigen Rollläden nicht gewünscht das gefahren werden soll, so ist der TRIGGERMAX Wert mit -1 an zu geben. (default: '50:20 ClosedPosition') | |||||
ASC_WindProtection | on, off | soll der Rollladen beim Windschutz beachtet werden. on=JA, off=NEIN. | |||||
ASC_WindowRec | none | Name des Fensterkontakts, an welchen Fenster der Rollladen angebracht ist. WINDOWREC:[READING], Name des Fensterkontaktes, an dessen Fenster der Rollladen angebracht ist. Reading ist optional | |||||
ASC_WindowRec_PosAfterDayClosed | open, lastManual | open | Name des Fensterkontakts, an welchen Fenster der Rollladen angebracht ist. Sein Reading state muss die Werte open, closed oder tilted enthalten. | ||||
ASC_WindowRec_subType | twostate, threestate | twostate | Typ des verwendeten Fensterkontaktes: twostate (optisch oder magnetisch) oder threestate (Drehgriffkontakt) | ||||
Hilfsmittel
- Erfolgreich getestet mit Homematic Devices, Beta-User
- Die Farbgebung entspricht dem Standard, wenn unter dem Style f18 der Farbpreset light gewählt wird.
readingsGroup für Level
defmod rg_ASC_Rolllaeden_Level readingsGroup <Gerät>,<Stand>,<Schliessen bis>,<Öffnen auf>,<Beschattung>,<Komfort>,<Lüften>,<Privacy> (Rollladen_.*|Jalousie_.*)..:level,!?ASC_Closed_Pos,!?ASC_Open_Pos,!?ASC_Shading_Pos,!?ASC_ComfortOpen_Pos,!?ASC_Ventilate_Pos,!?ASC_PrivacyDown_Pos attr rg_ASC_Rolllaeden_Level commands {level => 'pct:selectnumbers,0,5,100,0,lin',\ ASC_Closed_Pos => 'ASC_Closed_Pos:selectnumbers,0,5,100,0,lin',\ ASC_Open_Pos => 'ASC_Open_Pos:selectnumbers,0,5,100,0,lin',\ ASC_Shading_Pos => 'ASC_Shading_Pos:selectnumbers,0,5,100,0,lin',\ ASC_Ventilate_Pos => 'ASC_Ventilate_Pos:selectnumbers,0,5,100,0,lin',\ ASC_ComfortOpen_Pos => 'ASC_ComfortOpen_Pos:selectnumbers,0,5,100,0,lin',\ ASC_PrivacyDown_Pos => 'ASC_PrivacyDown_Pos:selectnumbers,0,5,100,0,lin'}
readingsGroup für Zeiten
defmod rg_ASC_Rolllaeden_Times readingsGroup <Gerät>,<Position>,<Time_Up_Early>,<Time_Up_Late>,<Time_Up_WE/Hol>,<Time_Down_Early>,<Time_Down_Late>,<Mode_Down>,<Mode_Up> \ (.*Rollo.*|.*Rollladen|Jalousie_.*):level,!?ASC_Time_Up_Early,!?ASC_Time_Up_Late,!?ASC_Time_Up_WE_Holiday,!?ASC_Time_Down_Early,!?ASC_Time_Down_Late,!?ASC_Mode_Down,!?ASC_Mode_Up attr rg_ASC_Rolllaeden_Times commands {level => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100', \ 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: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,22:15,22:30,22:45,23:00,23:15,23:30', \ 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',\ ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:55,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_Mode_Down => 'ASC_Mode_Down:always,absent,off', \ ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off' } attr rg_ASC_Rolllaeden_Times room Rollladen
Neue Version mit time-Widgets und pct/dim/position-widget (5-er Schritte), passend für CUL_HM, ZWave und Siro-Geräte:
defmod rg_ASC_Rolllaeden_Times readingsGroup <Gerät>,<Stand>,<Time_Up_Early >,<Time_Up_WE >,<Time_Up_Late >,<Time_Down_Early>,<Time_Down_Late>,<Mode_Down>,<Mode_Up> (Rollo_.*|Jalousie_.*)..:(level|dim|position),!?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_Rolllaeden_Times commands {level => 'pct:selectnumbers,0,5,100,0,lin', \ dim => 'dim:selectnumbers,0,5,99,0,lin',\ position => 'pct:selectnumbers,0,5,99,0,lin',\ 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:time', \ ASC_Time_Down_Late => 'ASC_Time_Down_Late:time',\ ASC_Time_Up_Early => 'ASC_Time_Up_Early:time', \ ASC_Time_Up_Late =>'ASC_Time_Up_Late:time',\ ASC_Time_Up_WE_Holiday =>'ASC_Time_Up_WE_Holiday:time'} attr rg_ASC_Rolllaeden_Times room Rollladen
readingsGroup für die Beschattung
defmod rg_ASC_Rolllaeden_Shading readingsGroup <Gerät>,<Modus>,<Position>,<Richtung>,<°links>,<°rechts>,<Elevation>,<Sunny>,<Cloudy>,<Min Temp> (Rollo|Jalousie)_.*..:!?ASC_Shading_Mode,!?ASC_Shading_Pos,!?ASC_Shading_Direction,!?ASC_Shading_Angle_Left,!?ASC_Shading_Angle_Right,!?ASC_Shading_MinMax_Elevation,!?ASC_Shading_StateChange_Sunny,!?ASC_Shading_StateChange_Cloudy,!?ASC_Shading_Min_OutsideTemperature attr rg_ASC_Rolllaeden_Shading alias Rollläden: Beschattung attr rg_ASC_Rolllaeden_Shading commands {ASC_Shading_Pos => 'ASC_Shading_Pos:knob,min:0,max:100,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:5,lineCap:round',\ ASC_Shading_Mode => 'ASC_Shading_Mode:always,home,absent,off',\ ASC_Shading_Direction => 'ASC_Shading_Direction:knob,min:0,max:360,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:1,cursor:true,lineCap:round',\ ASC_Shading_Angle_Left => 'ASC_Shading_Angle_Left:knob,min:0,max:85,angleArc:85,rotation:anticlockwise,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:5,lineCap:round,angleOffset:270',\ ASC_Shading_Angle_Right => 'ASC_Shading_Angle_Right:knob,min:0,max:85,angleArc:85,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:5,lineCap:round,',\ ASC_Shading_MinMax_Elevation => 'ASC_Shading_MinMax_Elevation:knob,min:0,max:35,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:1,lineCap:round,angleArc:120,angleOffset:270',\ ASC_Shading_StateChange_Sunny => 'ASC_Shading_StateChange_Sunny:knob,min:100,max:40000,angleArc:85,rotation:anticlockwise,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:20,lineCap:round,angleOffset:270',\ ASC_Shading_StateChange_Cloudy => 'ASC_Shading_StateChange_Cloudy:knob,min:100,max:40000,angleArc:85,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:20,lineCap:round,',\ ASC_Shading_Min_OutsideTemperature => 'ASC_Shading_Min_OutsideTemperature:knob,min:5,max:30,width:50,height:50,fgColor:#FF9900,bgColor:#CCCCCC,step:0.5,lineCap:round,angleArc:120,angleOffset:270'} attr rg_ASC_Rolllaeden_Shading room Rollladen
Anderes Foren-Beispiel für eine RG zu Beschattung (für V. 0.6.x):
defmod rg_ASC_Shading readingsGroup <Gerät>,<Grad>,<Position>,<Mode>,<Links>,<Rechts>,<Wait>,<ShadeIn>,<ShadeOut>,<Elevation>,<Temperature>,<Device>\ (Rollo_.*|Jalousie.*):!?ASC_Shading_Direction,!?ASC_Shading_Pos,!?ASC_Shading_Mode,!?ASC_Shading_Angle_Left,!?ASC_Shading_Angle_Right,!?ASC_Shading_WaitingPeriod,!?ASC_Shading_StateChange_Sunny,!?ASC_Shading_StateChange_Cloudy,!?ASC_Shading_MinMax_Elevation,!?ASC_Shading_Min_OutsideTemperature,!?ASC_BrightnessSensor\ attr rg_ASC_Shading commands {ASC_Shading_Direction => 'ASC_Shading_Direction:129,255,309',\ ASC_Shading_Pos => 'ASC_Shading_Pos:selectnumbers,0,5,100,0,lin',\ ASC_Shading_Mode => 'ASC_Shading_Mode:absent,always,off,home',\ ASC_Shading_Angle_Left => 'ASC_Shading_Angle_Left:selectnumbers,0,5,100,0,lin',\ ASC_Shading_Angle_Right => 'ASC_Shading_Angle_Right:selectnumbers,0,5,100,0,lin',\ ASC_Shading_WaitingPeriod => 'ASC_Shading_WaitingPeriod:selectnumbers,0,60,1200,0,lin',\ ASC_Shading_StateChange_Sunny => 'ASC_Shading_StateChange_Sunny:selectnumbers,0,20,1000,0,lin',\ ASC_Shading_StateChange_Cloudy => 'ASC_Shading_StateChange_Cloudy:selectnumbers,0,20,1000,0,lin',\ ASC_Shading_MinMax_Elevation =>\ 'ASC_Shading_Min_Elevation:selectnumbers,0,1,40,0,lin' ,\ ASC_Shading_Min_OutsideTemperature =>\ 'ASC_Shading_Min_OutsideTemperature:selectnumbers,0,1,30,0,lin'} attr rg_ASC_Shading room Rollladen
readingsGroup für FIBARO Roller Shutter FGR-222 Devices
- https://forum.fhem.de/index.php/topic,92628.msg897099.html#msg897099
- Die Farbgebung entspricht dem Standard, wenn unter dem Style f18 der Farbpreset dark gewählt wird
define ASC_Jalousien_Times readingsGroup <Gerät>,<Stand>,<Time_Up_Early>,<Time_Up_WE>,<Time_Up_Late>,<Time_Down_Early>,<Time_Down_Late>,<Mode_Down>,<Mode_Up>,<PartyMode>,<LockOut> (.*_Jalousie.*):position,!?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,!?ASC_Partymode,!?ASC_LockOut attr ASC_Jalousien_Times commands {position => 'dim:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99', ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off', ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off', ASC_Partymode => 'ASC_Partymode:on,off', ASC_LockOut => 'ASC_LockOut:soft,hard,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'} attr ASC_Jalousien_Times room Jalousien
define Jalousien_Level readingsGroup <Gerät>,<Closed_Pos>,<Open_Pos>,<Comfort_Pos>,<Ventilate_Pos>,<PrivacyDown_Pos>,<Shading_Pos> (.*_Jalousie.*):!?ASC_Closed_Pos,!?ASC_Open_Pos,!?ASC_ComfortOpen_Pos,!?ASC_Ventilate_Pos,!?ASC_PrivacyDown_Pos,!?ASC_Shading_Pos attr Jalousien_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,99', ASC_Open_Pos => 'ASC_Open_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99', ASC_ComfortOpen_Pos => 'ASC_ComfortOpen_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99', ASC_Ventilate_Pos => 'ASC_Ventilate_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99', ASC_PrivacyDown_Pos => 'ASC_PrivacyDown_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99', ASC_Shading_Pos => 'ASC_Shading_Pos:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,99'} attr Jalousien_Level room Jalousien
Einrichtungsbeispiel (nach Sonnenstand)
Zielsetzung und Vorgaben
Es sollen alle Rollläden und Jalousien in einem Haus innerhalb bestimmter zeitlicher Grenzen Morgens und Abends sonnenstandsabhängig gefahren werden, an den Wochenenden und an Ferientagen soll etwas später geöffnet werden. Es sind Tür- und Fensterkontakte vorhanden (Türkontakte: twoState, Fensterkontakte: threeState), wobei bei jeder Öffnung ein eventuell geschlossener Rollladen geöffnet werden soll. Bei allen Rollladenaktoren, Tür- und Fensterkontakten handelt es sich um CUL_HM-Geräte.
Vorarbeiten
Im global-Device sind Angaben zu latitude und longitude vorhanden, holiday2we wie folgt[4]:
attr global holiday2we bw,ferien
Weitere Angaben benötigen wir zunächst nicht, die Festlegung eines Astro-Devices erfolgt hier erst im Rahmen der Beschattung.
Dann erfolgt das Define des ASC-Devices wie oben beschrieben:
define Rollladenautomatik AutoShuttersControl
Folgen die einzubindenden Rollladenaktoren einem einheitlichen Namensschema, können diese sodann z.B. mit
attr (Jalousie|Rollladen)_.* ASC 2
auf einen Rutsch mit dem passenden ASC-Typ gekennzeichnet werden.
Dann verteilen wir mir
set Rollladenautomatik scanForShutters
die nachfolgend weiter zu bearbeitenden Attribute.
Schließen morgens und abends
Konfiguration des ASC-Devices
Da wir sonnenstandsabhängig Fahrzeiten wollen, legen wir erst einmal fest, dass dies morgens und abends berücksichtigt werden soll:
attr Rollladenautomatik ASC_autoAstroModeEvening CIVIL attr Rollladenautomatik ASC_autoAstroModeMorning CIVIL
Aus der Angabe CIVIL und den Vorgaben in den einzelnen Rollladen wird dabei mit Hilfe von SUNRISE_EL die effektive Fahrzeit berechnet, dort finden sich auch weitere Hinweise, zu den meisten anderen Optionen für die ersten beiden Attribute. Bei allen Fensteröffnungen soll auf eine Lüften-Position gefahren werden, also schalten wir diese Funktion ebenfalls zentral an[5]:
attr Rollladenautomatik ASC_autoShuttersControlComfort on
Zuletzt legen wir noch einen Temperatur-Sensor fest. Dieser wird beim Frostschutz sowie bei der Beschattung berücksichtigt.
attr Rollladenautomatik ASC_tempSensor Aussentemperatur_Nord:temperature attr Rollladenautomatik ASC_freezeTemp 3
tbd:
- Rain
- Wind
Konfiguration der Rollladendevices
Fahrzeiten
Zur Konfiguration der Fahrzeiten bietet es sich an, eine ReadingsGroup zu nutzen, wie unter Hilfsmittel dargestellt. Alternativ kann man die Zeiten auch manuell in den einzelnen Rollläden hinterlegen.
Bewohner
Wird ein Raum von einer oder mehreren bestimmten Person/en bewohnt oder gibt es ein Sammel-Gerät für mehrere Bewohner, kann dies mit den Attributen ASC_Roommate_Device und ASC_Roommate_Reading einem Rollladen zugeordnet werden. Ist einer der Bewohner asleep, wird morgens erst geöffnet, wenn auch der letzte Roommate nicht mehr asleep ist.
Fensterkontakte
Dann werden ggf. vorhandene Fensterkontakte mit ASC_WindowRec zugeordnet und der Sensortyp mit ASC_WindowRec_subType festgelegt. Im Falle von threeState-Sensoren wird das übergreifende ASC_autoShuttersControlComfort beachtet, wobei dann bei vollständiger Öffnung des Fensters auf den in ASC_ComfortOpen_Pos festgelegten Wert gefahren wird.
Frostschutz
Zuletzt können die Attribute ASC_Antifreeze und ASC_Antifreeze_Pos festgelegt werden, wenn die Frostschutzfunktion aktiviert werden soll.
Beschattung
Konfiguration des ASC-Devices
IM ASC DEVICE das Reading "controlShading" mit dem Wert on, sowie ein Astro/Twilight Device im Attribut "ASC_twilightDevice" und das Attribut "ASC_tempSensor".
Konfiguration der Rollladendevices
Ihr benötigt einen Helligkeitssensor als Attribut "ASC_BrightnessSensor", sofern noch nicht vorhanden. Findet der Sensor nur für die Beschattung Verwendung ist der Wert DEVICENAME[:READING] ausreichend.
Alle weiteren Attribute sind optional und wenn nicht gesetzt mit Default-Werten belegt. Ihr solltet sie dennoch einmal anschauen und entsprechend Euren Gegebenheiten setzen. Die Werte für die Fensterposition und den Vor- Nachlaufwinkel (ASC_Shading_InOutAzimuth) sowie die Grenzwerte für ASC_shading_StateChange_SunnyCloudy
solltet ihr besondere Beachtung dabei schenken.
Bedingungen
Damit die Beschattung startet müssen alle Bedingungen erfüllt sein. Entschattet wird sobald einer der Bedingungen wegfällt und die Zeit aus ASC_Shading_WaitingPeriod
abgelaufen ist.
Der Sonnensensor <ASC_BrightnessSensor> muss mindestens 2 Messwerte liefern, bevor das ASC-Modul in die Beschattungsposition fährt! Beim (zeitlich gesehen) ersten Messwert wird der Zustand in-reserved eingenommen und erst beim zweiten Messwert dann der Zustand in shading eingenommen. Die Anzahl der Messwerte ist abhängig vom "moving average window", der mit dem dritten Parameter des Attributs ASC_Shading_StateChange_SunnyCloudy konfiguriert wird.
Von Standardwerten ausgehend ist nachfolgender Ablauf angestrebt:
- Ein Event vom Astro oder Helligkeits Device kommt -> sind alle Werte innerhalb des Arbeitsbereiches, ändert sich der ASC Info-Zustand im Rollo von xx auf „in reserved“ (Beschattung vorbereitet)
- Ein erneutes Event vom Astro oder Helligkeits Device kommt -> Überprüfung der Werte -> sind diese weiterhin gegeben folgt der Wechsel von „in reserved“ auf „in“ (Beschattung aktiv)
- Bei Verwendung von ASC_Shading_StateChange_SunnyCloudy ist zu beachten, dass ein Durchschnitt über die letzten drei Brightness Events gerechnet wird. Möchte man das vermeiden muss man SUNNY:CLOUDY 1[2] setzen.
- Die Zeiten ASC_Shading_WaitingPeriod und ASC_BlockingTime_afterManual können hier zusätzlich für eine Verzögerung sorgen.
Wichtig zu beachten: Es müssen immer mehrere (mind. 2) Events für den Betrieb erfolgen. In den Standardeinstellungen vom Astro Modul erfolgt dieses z.B. nur 1 x pro Stunde. Kommt also ein Helligkeits-Event auch nur 1x pro Stunde, könnte es 2 Std dauern, bis die Beschattungsfunltion greift.
Wenn das Rollo einmal aus der Beschattung manuell (im Rollo Device muss bei ASC_ShuttersLastDrive manuel stehen gefahren wurde wird das Rollo erst wieder nach einer Entschattung und erneuter Beschattung gefahren. Also es muss einmal shading out kommen und beim nächsten shading in fährt er dann wieder.
Weitere Funktionen
Beschreibung WeekendHoliday Funktion im Brightnessbetrieb.
Wenn Wochenende oder Feiertag ist und WeekendHoliday aktiviert wurde und im Rollo das Attribut ASC_Time_Up_WE_Holiday gesetzt ist dann wird ausschließlich zur angebenden ASC_Time_Up_WE_Holiday Zeit gefahren ungeachtet des Brightnesswertes.
Privacy
Werden hierfür Werte festgelegt, werden die betreffenden Rollläden die festgelegte Zeit/Helligkeit vor dem abendlichen Schließen vorab teilweise geschlossen. Dies kann z.B. gewünscht sein, um Rollläden zur Straße hin mit viel Fußgängerverkehr zwar nicht vollständig abzudunkeln, aber gleichzeitig zu verhindern, dass von außen in Wohnräume geschaut werden kann, sobald dort das Licht angeschaltet wird
BlockingTime
Bewirkt, dass nach einer manuellen Fahrt, eine vom ASC Modul initiierte Fahrt zunächst ausgesetzt wird, bis die im Attribute angegebene Zeit überschritten ist. Erst dann wird eine vom ASC Modul initiierte Fahrt tatsächlich durchgeführt. Genau so wird ein Hochfahren eines Rollos durch das ASC Modul nicht mehr ausgeführt, wenn es innerhalb der Zeit von ASC_BlockingTime_beforNightClose und das Runterfahren wird nicht mehr erfolgen, wenn es innerhalb von ASC_BlockingTime_beforDayOpen ist. Beispiel: Meine Tochter geht früh außer Haus und Ihre Rollos sind nicht hochgefahren. Diese fahren auch nicht mehr hoch, da die ausschließlich bei home (anwesend) fahren sollen. Nun kommt sie am Nachmittag um 16:23 Uhr nach Hause. Eigentlich sollten nun die Rollos fahren. Doch die Sonnenuntergangsfahrt (schließen) wäre schon 16:51 Uhr und damit innerhalb der 3600 ASC_BlockingTime_beforNightClose. Die Rollos bleiben also unten. Es lohnt sich für die paar Minuten einfach nicht mehr.
wiggle
Mit einem set <ASC-Device> wiggle
können alle Rollladen mit einem entsprechenden Attribut zu einer kurzen Fahrt veranlasst werden, nach Ablauf von einer Minute wieder um denselben Wert zurück. Dabei wird jeweils in die Richtung gefahren, die den weiteren Weg ermöglicht. Wenn also zu 70% geschlossen ist, wird der Rollladen hoch fahren.
Partymode
Dieser wird am ASC-Device selbst aktiviert mittels set <ASC-Device> partyMode on
. Alle Rollladen-Devices, welche das Attribut ASC_Partymode auf on gestellt haben, werden nicht mehr gesteuert. Der letzte Schaltbefehl, der durch ein Fensterevent oder Bewohnerstatus an die Rollläden gesendet wurde, beim Beenden des Modus durch set ASC-Device partyMode off
ausgeführt.
lock-out
Man kann mit dem Befehl set <ASC-Device> hardLockOut
auf einen Schlag alle Rollos sperren welche attr <ROLLO-Device> ASC_LockOut hard
gesetzt haben.
Das ist dafür gedacht, wenn Du eine gewisse Zeit den Rolloaktor sperren willst. Zum Beispiel das die Kinder nicht schalten sollen.
Sonstige Hinweise und Problemlösungen
- Werden Attribute geändert, kann es vereinzelt vorkommen, dass das ASC-Modul dies nicht mitbekommt und das tatsächliche Verhalten nicht den Erwartungen entspricht. In so einem Fall empfielt es sich, das NOTIFYDEV nochmals aufbauen zu lassen. Dazu werden zunächst mit
set <ASC-Modul> expert 1
erweiterte Informationen bezüglich des NotifyDevs unter set und get aktiviert und anschließend einset <ASC-Modul> createNewNotifyDev
ausgeführt.
- Hin und wieder berichten Nutzer davon, wenn Sie die Privacy Funktion nutzen, dass sich im NOTIFYDEV anstelle des Device Namen ein Raumname befindet. Diese Problem kann damit gelöst werden, dass in dem betroffenen Rollo Device das Atribut
attr event-on-change .*
gesetzt wird.
Wichtig! Nicht verwechseln mit dem ASC Device dort darf attr event-on-change
nicht gesetzt sein!
- Wenn mehrere Rollladen gleichzeitig den Fahrbefehl bekommen, kann es (z. B. bei zwave) dazu kommen, dass ein Rollladen seinen Befehl nicht bekommt. Dies kann durch eine zeitverzögerte Aussendung der Fahrbefehle vermieden werden. Dazu in den jeweiligen Rollo Devices das Attribut ASC_Drive_DelayStart wie folgt benutzen im: ersten Rollo Device braucht das Attribut nicht gesetzt werden, im zweiten Rollo Device im Attribut ASC_Drive_DelayStart dann 4 Sekunden eintragen, im dritten Rollo Device im Attribut ASC_Drive_DelayStart 8 Sekunden eintragen, usw. Ein Abstand von 3-4 Sekunden ist dabei zielführend.
Spezielle Hardware
"Thread zu getesteter Hardware im Forum"
Weblinks
- "Thread zum Modul im Forum"
- "Thread zur Entwicklung im Forum"
- "Thread zu den Scripten von user cluni", die der Entwicklung des Moduls zugrunde liegen
- ↑ Dabei müssen ggf. in global auch Angaben zu longitude und latitude vorhanden sein
- ↑ Es kann auch z.B. ein Dummy-Device verwendet werden, dieses sollte dann aber neben dem eigentlichen Feiertags-state auch in einem Reading tomorrow Angaben zu anstehenden Feiertagen enthalten.
- ↑ Bitte verfahren Sie entsprechend, wenn Urlaubs- oder Ferientage wie Feiertage behandelt werden sollen.
- ↑ ferien ist eine automatisiert erstellte holiday-Datei nach diesem Foren-Beitrag.
- ↑ Sonst wird bei threeState-Sensoren nur bei tilted auf die in ASC_Ventilate_Pos gefahren.