FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Stefan 69 am 02 April 2013, 11:02:13

Titel: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: Stefan 69 am 02 April 2013, 11:02:13
Hallo,

brauch schon wieder mal eure Hilfe, da ich folgendes realisieren möchte:

Momentan laufen die Rollläden über zeitliche- sowie sunrice und sunset Steuerung, was auch gut funktioniert.
Die Terassentür ist mit einem Drehgriffkontakt HM-Sec-RHS ausgestattet und der Rolladen soll jedoch nicht fahren, wenn der Griffkontakt den Status "open" hat.

Die entsprechenden Codeschnipsel zu diesem Thema hier im Forum hatte ich soweit versucht, habs aber wieder einmal nicht hinbekommen :-(

Somit habe ich folgendes versucht, aber es hat gestern Abend auch nicht funktioniert. Statt dessen fährt der Rollladen immer, wenn ich auf "save fhem.cfg" gehe, jedoch bei sunset nicht.

Zitatdefine Roll_WZ_T_ZU notify Griffkontakt_EG_Terasse {\
    my $Stat=Value("Griffkontakt_EG_Terasse");;\
    if($Stat eq "closed" && sunset("civil")){fhem ("set Ro_EG_WZ_T off")}}

Ist es evtl. besser einen Dummy mittels des Griffkontaktes zu schalten und den dann mit ein zu bauen?

Wie gesagt, der Rollladen soll einfach beim open-Status der Griffe nicht fahren. Das reicht völlig aus.
Könnte man das evtl. noch anders realisieren?

Gruß Stefan
Titel: Aw: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: jhohn am 02 April 2013, 11:37:31
Wenn ich das mit meinen bescheidenen Perlkenntnissen richtig interpretiere, prüft Dein notify ob jemand die Terassentür zu gemacht hat und ob "sunset("civil")" existiert (da bin ich mir nicht sicher).
Nach dem was Du sonst so schreibst, gehe ich mal davon aus, dass die Rolladen bei "sunset("civil")" runter fahren sollen sofern die Terassentür geschlossen ist.

Das müsste dann irgendwie sowas sein (aus dem Kopf und ohne Gewähr):
define Roll_WZ_T_ZU at *{sunset("CIVIL")} {\
  if (Value("Griffkontakt_EG_Terasse") eq "closed") {\
    fhem("set Ro_EG_WZ_T off");\
    }\
  }


Da passiert dann natürlich nix mehr wenn zu sunset die Tür offen war und später geschlossen wird. Das müsste dann über ein notify des Türgriffs, mit Prüfung ob es später als sunset ist, gelöst werden.
Titel: Aw: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: Stefan 69 am 02 April 2013, 12:06:25
Ah, danke für den Tipp!

Das scheint mir auch einfacher und logischer wie mein Versuch.

War mir nicht sicher, ob man diese if-Sache auch ohne ein notify lösen kann und wie ich das at *  einbinden soll.

ZitatRo_EG_WZ_T off");\
Hab da mal ein weiteres ; eingefügt, da eine Fehlermeldung gekommen ist. Hoffe mal, das es richtig ist.
Nun warte ich den Sonnenuntergang ab.

ZitatDa passiert dann natürlich nix mehr wenn zu sunset die Tür offen war und später geschlossen wird. Das müsste dann über ein notify des Türgriffs, mit Prüfung ob es später als sunset ist, gelöst werden.

Das ist natürlich die höhere und fortgeschrittenere Variante :-)

Da ich jedoch neben der Tür den Schalter (Aktor) habe, ist es meiner Family sicher zuzumuten, da mal drauf zu drücken wenn sie vom Sternegucken rein kommen :-)

Danke, Gruß Stefan
Titel: Aw: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: jhohn am 02 April 2013, 14:10:50
Zitat von: Stefan 69 schrieb am Di, 02 April 2013 12:06Hab da mal ein weiteres ; eingefügt, da eine Fehlermeldung gekommen ist. Hoffe mal, das es richtig ist.

Ja, meines war die Version für das Eingabefeld auf der Webseite.
Titel: Aw: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: Stefan 69 am 02 April 2013, 14:50:05
So. Hab es jetzt mal getestet, indem ich den Sonnenuntergang "vorverlegt" habe.

Es geht :-)

Zitatdefine Roll_WZ_T_ZU at *{sunset("CIVIL",-26300)} {\
  if (Value("Griffkontakt_EG_Terasse") eq "closed") {\
    fhem("set Ro_EG_WZ_T off");;;;\
    }\
  }
attr Roll_WZ_T_ZU room Rolladen

ABER...

ZitatJa, meines war die Version für das Eingabefeld auf der Webseite.

genau das ist mir eben auch aufgefallen, dass die Anzeige anders ist wie auf der Seite wo die .cfg bearbeitet werden kann. Dort sind zwei ;;

Frage an die "fhem-Profis"

Da ich dachte, dass es zwei ;; sein müssen, hatte ich dies auch unter "Room - Rolladen - at" geändert, weil da eben nur ein ; angezeigt wird.
Nach dieser Änderung hat es funktioniert, aber nun stehen in der .cfg vier ;;;;

verstehe nix mehr :-(
Wenn ich diese nun wieder in zwei ;; änder, geht es nicht mehr.

Gruß Verwirter Stefan
Titel: Aw: Rolladen blockieren wenn Terassentür offen ist
Beitrag von: Stefan 69 am 02 April 2013, 20:41:26
So, die Sonne ist nun "civil" untergegangen und es hat funktioniert :-)

.cfg schaut so aus:

Zitatdefine Roll_WZ_T_ZU at *{sunset("CIVIL",5)} {\
  if (Value("Griffkontakt_EG_Terasse") eq "closed") {\
    fhem("set Ro_EG_WZ_T off");;\
    }\
  }
attr Roll_WZ_T_ZU room Rolladen

Zu dem ganzen "komischen Verhalten" im Laufe des Tages hab ich keine Erklärung, da es aber nun so funktioniert, denke ich mal dass mein eigentliches Problem somit gelöst ist.

Danke, Gruß Stefan