So. nach 2 Tagen testen kann ich berichten, dass alles reibungslos läuft. Deswegen poste ich wie folgt ein Update.
Folgende Anforderungen gibt es an das System:
- Jeder Rollladen hat ein eigenes Programm
- 2 Lichtsensoren (SO/NW) triggern folgendes je nach Raumausrichtung
- Öffnen der Rollläden (100%) bei Wechsel zu "Tag" an Werktagen, erst um 9:00 an Wochenenden
- Schließen der Rollläden bei Wechsel zu "Nacht"
- Beschattungssteurung bei "Sonne"
- 1 Außentemperatursensor im Schatten und jeweils ein Innentemperatursensor pro Raum als Input für die Rollladensteuerung
- Berechnung von 4 Positionen (100%, 70%, 50%, 30%) je nach Temperaturmodell (Skript), aber Ansteuerung über Programm
- Bei manuellem Betätigen eines Rollladen (Sprache oder Taster) wird die Automatik für 45 Minuten deaktiviert
Positionierung der Sensoren und Aktoren
Temperaturkennlinie und Skript für die Behanghöhe:
Ich habe hier im Vergleich zu vorher diverse Systemvariablem angelegt, was erst einmal mehr Programme bewirkt, den Ablauf aber übersichtlicher und stabil macht. Ich konnte es realisieren, dass in einem Tab die HmIP Geräte eingetragen werden und im anderen Tab nur der Raum ausgewählt wird und das jeweilige Skipt zur Bestimmung der Behanghöhe je Rollladen automatisch erstellt wird. Man kann es also nur mit Copy-Paste im Programm einfügen
Bei Interesse einfach melden, dann schaue ich, dass ich es hier irgendwie sharen kann ohne private Daten preiszugeben.
Modelierung:
Komplettes Behanghöhe-Skript exemplarisch für den Raum "Buero"
Code: Alles auswählen
integer behanghoehe = dom.GetObject("HmIP-RF.00111A499FFB4A:4.LEVEL").Value();
real Ta = dom.GetObject("HmIP-RF.000EE0C992F62D:1.ACTUAL_TEMPERATURE").Value();
real Ti = dom.GetObject("HmIP-RF.000C9A4999F0AE:1.ACTUAL_TEMPERATURE").Value();
if (((Ta <20) && (Ti <21)) || ((Ta <19) && (Ti >=21) && (Ti <22)) || ((Ta <18) && (Ti >=22) && (Ti <23)) ||((Ta <17) && (Ti >=23) && (Ti <24)) || ((Ta <16) && (Ti >=24) && (Ti <25)) || ((Ta <15) && (Ti >=25))) {behanghoehe = 100;}
if (((Ta >20) && (Ti <21) && (Ta <=23)) || ((Ta >19) && (Ti >=21) && (Ti <22) && (Ta <=22)) || ((Ta >18) && (Ti >=22) && (Ti <23) && (Ta <=21)) ||((Ta >17) && (Ti >=23) && (Ti <24) && (Ta <=20)) || ((Ta >16) && (Ti >=24) && (Ti <25) && (Ta <=19)) || ((Ta >15) && (Ti >=25) && (Ta <=18))) {behanghoehe = 70;}
if (((Ta >23) && (Ti <21) && (Ta <=26)) || ((Ta >22) && (Ti >=21) && (Ti <22) && (Ta <=25)) || ((Ta >21) && (Ti >=22) && (Ti <23) && (Ta <=24)) ||((Ta >20) && (Ti >=23) && (Ti <24) && (Ta <=23)) || ((Ta >19) && (Ti >=24) && (Ti <25) && (Ta <=22)) || ((Ta >18) && (Ti >=25) && (Ta <=21))) {behanghoehe = 50;}
if (((Ta >26) && (Ti <21)) || ((Ta >25) && (Ti >=21) && (Ti <22)) || ((Ta >24) && (Ti >=22) && (Ti <23)) ||((Ta >23) && (Ti >=23) && (Ti <24)) || ((Ta >22) && (Ti >=24) && (Ti <25)) || ((Ta >21) && (Ti >=25))) {behanghoehe = 30;}
dom.GetObject("Behanghoehe_Buero").State(behanghoehe);
Programme
Es sind keine Skripte, sondern echte Homematic Programme. Ich habe diese aus Platzgründen statt mit Screenshots ab hier nur als repräsentativen Code dargestellt
Code: Alles auswählen
!!Licht_SO_prog
WENN Licht_SO:1 Durchschnittliche Helligkeit <20000 Lux [Bei Änderung Auslösen]
DANN Licht_SO verzögert 1 Minute [Schatten]
SONST Licht_SO verzögert 1 Minute [Sonne]
Code: Alles auswählen
!!Licht_NW_prog
WENN Licht_NW:1 Durchschnittliche Helligkeit <20000 Lux [Bei Änderung Auslösen]
DANN Licht_NW verzögert 1 Minute [Schatten]
SONST Licht_NW verzögert 1 Minute [Sonne]
Code: Alles auswählen
!!Roll_Oeffnen_{Z}_prog
WENN Tageszeit Tag [Bei Änderung Auslösen]
UND Systemzustand Rollladenautomatik An [Bei Änderung Auslösen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [100%]
…
Geräteauswahl HmIP-BROLL{Zn} Behanghöhe [100%]
Code: Alles auswählen
!!Roll_Schliessen_{Z}_prog
WENN Tageszeit Nacht [Bei Änderung Auslösen]
UND Systemzustand Rollladenautomatik An [Nur Prüfen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [0%]
…
Geräteauswahl HmIP-BROLL{Zn} Behanghöhe [0%]
Code: Alles auswählen
!!Tageszeit_prog
WENN Licht_SO:1 Durchschnittliche Helligkeit >150 Lux [Bei Änderung Auslösen]
UND Täglich von 07:00 bis 16:30 [Zu Zeitpunkten Auslösen]
ODER
Licht_SO:1 Durchschnittliche Helligkeit >150 Lux [Bei Änderung Auslösen]
UND Täglich von 07:00 bis 16:30 [Zu Zeitpunkten Auslösen]
DANN
Systemzustand Tageszeit verzögert 1 Minute [Tag]
SONST WENN Licht_NW:1 Durchschnittliche Helligkeit >150 Lux [Bei Änderung Auslösen]
UND Täglich von 07:00 bis 16:30 [Zu Zeitpunkten Auslösen]
ODER
Licht_NW:1 Durchschnittliche Helligkeit >150 Lux [Bei Änderung Auslösen]
UND Täglich von 07:00 bis 16:30 [Zu Zeitpunkten Auslösen]
DANN
Systemzustand Tageszeit verzögert 1 Minute [Nacht]
Code: Alles auswählen
!!Pause_{Z}_prog
WENN HmIP-BROLL {Z}:1 Rolllade fährt [Bei Änderung Auslösen]
DANN (Kein Haken!!)
Systemzustand pause{Z} sofort [An]
Systemzustand pause{Z} verzögert um 30 Minuten [Aus]
Code: Alles auswählen
!!Behanghoehe_{Z}_prog
WENN -50°C < Temp_aussen:1 <= 50°C [Bei Änderung Auslösen]
UND Systemzustand Tageszeit Tag [ Nur Prüfen]
ODER
WENN -50°C < HmIP-BROLL_{Z}:1 <= 50°C [Bei Änderung Auslösen]
UND Systemzustand Tageszeit Tag [ Nur Prüfen]
DANN SKRIPT
Code: Alles auswählen
!!Roll_{Z}_prog
WENN Tageszeit Tag [ Nur Prüfen]
UND Systemzustand Rollladenautomatik An [ Nur Prüfen]
UND Systemzustand Behanghoehe_{Z] = 100 [Bei Änderung Auslösen]
UND Systemzustand Licht_{SO;NW] Sonne [Bei Änderung Auslösen]
UND Systemzustand pause_{Z} Aus [ Nur Prüfen]
ODER
Tageszeit Tag [ Nur Prüfen]
UND Systemzustand Rollladenautomatik An [ Nur Prüfen]
UND Systemzustand Licht_{SO;NW] Schatten [Bei Änderung Auslösen]
UND Systemzustand pause_{Z} Aus [ Nur Prüfen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [100%]
Systemzustand pause_{Z} verzögert 10 s [Aus]
SONST WENN Tageszeit Tag [ Nur Prüfen]
UND Systemzustand Rollladenautomatik An [ Nur Prüfen]
UND Systemzustand Behanghoehe_{Z] = 70 [Bei Änderung Auslösen]
UND Systemzustand Licht_{SO;NW] Sonne [Bei Änderung Auslösen]
UND Systemzustand pause_{Z} Aus [ Nur Prüfen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [70%]
Systemzustand pause_{Z} verzögert 10 s [Aus]
SONST WENN Tageszeit Tag [ Nur Prüfen]
UND Systemzustand Rollladenautomatik An [ Nur Prüfen]
UND Systemzustand Behanghoehe_{Z] = 50 [Bei Änderung Auslösen]
UND Systemzustand Licht_{SO;NW] Sonne [Bei Änderung Auslösen]
UND Systemzustand pause_{Z} Aus [ Nur Prüfen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [50%]
Systemzustand pause_{Z} verzögert 10 s [Aus]
SONST WENN Tageszeit Tag [ Nur Prüfen]
UND Systemzustand Rollladenautomatik An [ Nur Prüfen]
UND Systemzustand Behanghoehe_{Z] = 30 [Bei Änderung Auslösen]
UND Systemzustand Licht_{SO;NW] Sonne [Bei Änderung Auslösen]
UND Systemzustand pause_{Z} Aus [ Nur Prüfen]
DANN
Geräteauswahl HmIP-BROLL{Z1} Behanghöhe [30%]
Systemzustand pause_{Z} verzögert 10 s [Aus]