Automatische Beschattung Rollos nach Uhrzeit

Begonnen von münster, 09 Mai 2015, 12:39:20

Vorheriges Thema - Nächstes Thema

münster

Hallo,

Ich hätte gerne das meine Rollos dem Sonnestand folgend zur Beschattung automatisch hoch und runter fahren.

Ich habe auch schon was in der fhem.cfg gebastelt womit es klappen könnte. Als erstes habe ich die Rollos in der Ost, Süd und Westseite zusammengefasst und mit den at Befehl sollen sie dann automatisch zur gegebenen Zeit hoch und runter fahren. Das sieht schon sehr gut aus jetzt hätte ich gerne noch einen Button auf meine FHEM App womit ich die Steuerung An und Aus Schalten kann. Sprich ich weiss heute benötige ich die Beschattung nicht dann kann ich die ganze Steuerung aussetzen und wenn ich weiss heute brennt die Sonne die Steuerung wieder aktivieren.

Hier der Auszug aus meiner fhem.cfg:

################################
#Beschattung im Sommer                                    #
################################

#Westseite##############################################################
define Westseite_Haus structure Westseite_Beschattung Kind_Rollo Schlaf_Rollo WZ_RolloLinks WZ_RolloRechts
attr Westseite_Haus room Westseite
define Westseite_Beschattung_runter at *16:30:00 set Westseite_Haus 65
define Westseite_Beschattung_hoch at *19:30:00 set Westseite_Haus off

#Suedseite#############################################################
define Suedseite_Haus structure Suedseite_Beschattung Kue_Rollo
attr Suedseite_Haus room Suedseite
define Suedseite_Beschattung_runter at *12:30:00 set Suedseite_Haus 65
define Suedseite_Beschattung_hoch at *15:30:00 set Suedseite_Haus off

#Ostseite##############################################################
define Ostseite_Haus structure Ostseite_Beschattung Bad_Rollo Buero_Rollo Gaeste_WC_Rollo HWR_Rollo Volker_Rollo
attr Ostseite_Haus room Ostseite
define Ostseite_Beschattung_runter at *08:30:00 set Ostseite_Haus 65
define Ostseite_Beschattung_hoch at *11:00:00 set Ostseite_Haus off

#gibt noch Fehlermeldung################################################
#define Gesamte_Wohnung structure Alle_Rollos Bad_Rollo Buero_Rollo #Gaeste_WC_Rollo HWR_Rollo Kind_Rollo Kue_Rollo Schlaf_Rollo Volker_Rollo #WZ_RolloLinks WZ_RolloRechts
#attr Gesamte_Wohnung room Wohnung


Ich habe mal Spaßeshalber versucht alle Rollos im Haus zusammenzufassen falls mal ein Regenschauer kommt und die Fenster sind frisch geputzt nur leider funktioniert der letzte abschnitt nicht richtig und fhem stürzt nach einiger zeit und 100% Cpu Auslastung ab. Jemand eine Idee woran das liegen könnte?

Gruß Volker

münster


mchris

Du kannst ein dummy anlegen und im at den Wert des dummys abfragen. Bei entsprechendem dummy Wert wird geschalten oder eben nicht.

Gruß, chris

Damian

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

münster

#4
Jo vielen Dank erst mal für die Hilfe.

Sollte ich es lieber mit "DOIF":

Anwendungsbeispiel: Beschattungssteuerung abhängig von der Temperatur. Der Rollladen soll runter von 11:00 Uhr bis Sonnenuntergang, wenn die Temperatur über 26 Grad ist. Temperaturschwankungen um 26 Grad werden mit Hilfe des wait-Attributes durch eine 15 minutige Verzögerung ausgeglichen.

define di_shutters DOIF ([sensor:temperature] > 26 and [11:00-{sunset_abs()}] (set shutters down) DOELSE (set shutters up)
attr di_shutters wait 900:900



oder mit "THRESHOLD"

Beispiele für Beschattungssteuerung:

Beispiel für einfache Beschattung im Sommer:

Zwischen 12:00 und 20:00 Uhr (potenzielle Sonnengefahr auf der Südseite) wird der Rolladen auf 30 % heruntergefahren,
wenn die Raumtemperatur über 23 Grad ist und die Sonne scheint. Im Winter, wenn die Zimmertemperatur niedriger ist (< 23),
will man von der Sonnenenergie profitieren und den Rollladen oben lassen.

define TH_shutter_room THRESHOLD T_room AND sun:state:on shutter_room|set @ 30||2
define di_shutter DOIF ([12:00-20:00]) (set TH_shutter desired 23) DOELSE (set TH_shutter desired 30)


realisieren ? Woher weiß FHEM beim THRESHOLD Beispiel das "sun:state:on" ist also die sonne scheint?

Gruß Volker

Damian

Zitat von: münster am 27 Mai 2015, 16:34:21
Jo vielen Dank erst mal für die Hilfe.

Sollte ich es lieber mit "DOIF":

Anwendungsbeispiel: Beschattungssteuerung abhängig von der Temperatur. Der Rollladen soll runter von 11:00 Uhr bis Sonnenuntergang, wenn die Temperatur über 26 Grad ist. Temperaturschwankungen um 26 Grad werden mit Hilfe des wait-Attributes durch eine 15 minutige Verzögerung ausgeglichen.

define di_shutters DOIF ([sensor:temperature] > 26 and [11:00-{sunset_abs()}] (set shutters down) DOELSE (set shutters up)
attr di_shutters wait 900:900



oder mit "THRESHOLD"

Beispiele für Beschattungssteuerung:

Beispiel für einfache Beschattung im Sommer:

Zwischen 12:00 und 20:00 Uhr (potenzielle Sonnengefahr auf der Südseite) wird der Rolladen auf 30 % heruntergefahren,
wenn die Raumtemperatur über 23 Grad ist und die Sonne scheint. Im Winter, wenn die Zimmertemperatur niedriger ist (< 23),
will man von der Sonnenenergie profitieren und den Rollladen oben lassen.

define TH_shutter_room THRESHOLD T_room AND sun:state:on shutter_room|set @ 30||2
define di_shutter DOIF ([12:00-20:00]) (set TH_shutter desired 23) DOELSE (set TH_shutter desired 30)


realisieren ? Woher weiß FHEM beim THRESHOLD Beispiel das "sun:state:on" ist also die sonne scheint?

Gruß Volker

DOIF ist wesentlich flexibler als THRESHOLD. Beim THRESHOLD-Beispiel wird dein Device namens "sun" vorausgesetzt, welches den Zustand "on" hat, wenn die Sonne scheint.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

münster

Das wäre meine erste Überlegung:

define Westseite_Haus_Beschattung DOIF ([sensor:temperature] > 26 and [09:00-12:00] (set Westseite_Haus 35) DOELSE (set Westseite_Haus on)
attr Westseite_Haus_Beschattung wait 900:900 


muss ich hier noch etwas ändern?: "[sensor:temperature]" mein Thermometer  heisst: "Thermometer_au"

Gruß Volker

Damian

Zitat von: münster am 27 Mai 2015, 18:58:40
Das wäre meine erste Überlegung:

define Westseite_Haus_Beschattung DOIF ([sensor:temperature] > 26 and [09:00-12:00] (set Westseite_Haus 35) DOELSE (set Westseite_Haus on)
attr Westseite_Haus_Beschattung wait 900:900 


muss ich hier noch etwas ändern?: "[sensor:temperature]" mein Thermometer  heisst: "Thermometer_au"

Gruß Volker

Dann musst du den natürlich statt "sensor" dort eintragen, ansonsten solltest du dir eine halbe Stunde Zeit nehmen und dir die Dokumentation zu DOIF durchlesen, um das Konzept des Moduls zu verstehen, wenn du es benutzen willst.

Gruß

Damian


Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

dieda

Nur mal so ein Gedanke, da könnte man doch noch Twighlight mit einbauen. Dann geht der Laden nur noch in der Zeit von x bis y runter, wenn die Raumtemperatur über 26 Grad ist und die Sonne scheint.
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

Mumpitz

Die andere Möglichkeit ist, dass du es so machst wie ich. Ich habe einen dummy Namens Auto_Beschattung. Wenn der auf On ist dann fahren die Rollläden in der definierten Zeit runter. Das aber nur wenn das Wetter das nötig macht. Die Wetterdaten beziehe ich von Yahoo mit dem Wettermodul.
Besser geht es in meine Augen fast nicht... So entfallen deine ein und ausschalten der Beschattubg!

Hier der Link zu meiner Lösung:
http://forum.fhem.de/index.php/topic,12548.msg297398.html#msg297398

Gruß

t_enocean

ZitatDas aber nur wenn das Wetter das nötig macht. Die Wetterdaten beziehe ich von Yahoo mit dem Wettermodul.

Ich habe zusätzlich auch openweather konfiguriert, bin aber mit den Vorhersagen nicht immer glücklich.

Sinnvoll finde ich aber auch das Twilight Modul. Ich steuere damit mit azimuth und elevation bei Sonne den Rolladen. Z.B. für den Rollladen im Westen sobald azimuth >  220 ist. Wenn im Winter die Sonne tief steht (elevation) geht der Rolladen nicht runter, da will man die Sonne ja im Zimmer haben.

dieda

Zitat von: t_enocean am 28 Mai 2015, 14:54:04
Ich habe zusätzlich auch openweather konfiguriert, bin aber mit den Vorhersagen nicht immer glücklich.

Sinnvoll finde ich aber auch das Twilight Modul. Ich steuere damit mit azimuth und elevation bei Sonne den Rolladen. Z.B. für den Rollladen im Westen sobald azimuth >  220 ist. Wenn im Winter die Sonne tief steht (elevation) geht der Rolladen nicht runter, da will man die Sonne ja im Zimmer haben.

Die Sache mit Azimuth interessiert mich. Twighlight liefert mir ja nicht alles was ich brauche. Wenn ich da noch die Himmelsrichtung des Fensters mit einbeziehen könnte... Das ändert sich ja leider auch immer im Laufe der Monate.
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

t_enocean

#12
Doch Twighlight liefert auch Winkel und Höhe.

Einfach bei xxxx und yyyy die eigenen Koordinaten eingeben. Mit stateFormat wird noch die Ausgabe von Sonnenauf/untergang/Winkel und Höhe formatiert.

define Sonne Twilight 47.xxxx 9.yyyy
attr Sonne stateFormat SA: sr <br/>SU: ss <br/>Winkel:azimuth °<br/> Höhe: elevation °


Und dann z.B. so

define DI_OG_R_Sz_Sonne_zu DOIF ([15:00-21:00] and [Sonne:azimuth] > 225 and [Sonne:elevation] < 50) (...)

dieda

Danke, dass mit dem StateFormat muss ich mir dann noch anschauen.
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

Otto123

Zitat von: Damian am 26 Mai 2015, 20:08:43
http://fhem.de/commandref_DE.html#DOIF

Dort nach Beschattungssteuerung suchen.

Gruß

Damian
Hallo Damian,

sag mal, fehlt in Deinem Beispiel in der Commandref nicht eine Klammer zu?
Zitatdefine di_shutters DOIF ([sensor:temperature] > 26 and [11:00-{sunset_abs()}] (set shutters down) DOELSE (set shutters up)
Also so:
Zitatdefine di_shutters DOIF ([sensor:temperature] > 26 and [11:00-{sunset_abs()}]) (set shutters down) DOELSE (set shutters up)

Bin ich zufällig drauf gestossen ...

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz