FHEM Forum

FHEM => Automatisierung => Thema gestartet von: bastelwastel am 07 November 2017, 13:00:02

Titel: [Gelöst] Rolladensteuerung
Beitrag von: bastelwastel am 07 November 2017, 13:00:02
Hi!

Ich möchte meine Rolladensteuerung noch etwas optimieren. Ich lasse meinen Rolladen zu Sonnenuntergang schliessen, zu Sonnenaufgang auf 80%, zu Sonnenaufgang+300sec auf 60%, weitere 300sec später geht er ganz auf. Soweit kein Problem. Wenn ich nun aber nachts den Rolladen zum Lüften öffne, fährt er zuerst runter, damit er anschliessend wieder hochfährt. Wie bekomme ich das hin, daß der Rolladen nur dann auf 80% bzw. 60% fährt, wenn er unterhalb des Wertes steht?

Gruß, Stefan
Titel: Antw:Rolladensteuerung
Beitrag von: ripper am 07 November 2017, 13:05:05
Indem du erst prüfst auf welcher Position sich der Rollladen befindet und dann erst entscheidest ob ein Fahrbefehl notwendig ist.
Titel: Antw:Rolladensteuerung
Beitrag von: Beta-User am 07 November 2017, 13:08:03
Da du etwas wenig an Infos lieferst, ist das ziemlich Glaskugel.

Ergänzend zu ripper:
In Einsteiger-pdf ist ab ca. S. 37 beschrieben, wie man at und notify mit perl-Abfragen kombiniert.
define Schalter1Notify notify Schalter1 { if ( Value("Schalter1") eq "off") {fhem("set
wz_Media off")} }

Bei dir sollte dass dann statt "eq "off"" ein ">80" usw. sein...

Vielleicht solltest du das Einsteiger-pdf mal durcharbeiten und beim posten die in dem in der Signatur verlinkten Hilfestellungen für Threads beachten.

Gruß und viel Erfolg,

Beta-User
Titel: Antw:Rolladensteuerung
Beitrag von: bastelwastel am 08 November 2017, 10:05:35
Jetzt sitze ich am richtigen Rechner.

So sieht es zur Zeit aus:
Zitat# Rolladen fahren
define Rolladen_ab at *{sunset(0,"17:00","22:00")} set Rolladen 100   # 100 Prozent zu
define Rolladen_auf_80 at *{sunrise(300,"06:00","07:30")} set Rolladen 80    # 80 Prozent zu 300 Sekunden (5 Minuten) nach sunrise
define Rolladen_auf_60 at *{sunrise(600,"06:00","07:30")} set Rolladen 60    # 60 Prozent zu 600 Sekunden (10 Minuten) nach sunrise
define Rolladen_auf at *{sunrise(900,"06:00","07:30")} set Rolladen 0        # auf 900 Sekunden (15 Minuten) nach sunrise

Gruß, Stefan
Titel: Antw:Rolladensteuerung
Beitrag von: Beta-User am 08 November 2017, 10:12:03
Moin,

vorab: direktes Editieren der cfg ist keine gute Idee (oder deute ich den Code-Auszug falsch)...

Mal ein Beispiel (ungetestet), wie das dann aussehen sollte:

define Rolladen_auf_80 at *{sunrise(300,"06:00","07:30")} { if ( Value("Rolladen ") > 80) {fhem("set Rolladen 80")} }    # 80 Prozent zu 300 Sekunden (5 Minuten) nach sunrise


Aber grundsätzlich wäre etwas mehr an eigener Arbeit (und dokumentierter Versuche) nicht schlecht ;) . Einsteiger-pdf liegt neben dir?

Gruß, Beta-User
Titel: Antw:Rolladensteuerung
Beitrag von: ripper am 08 November 2017, 11:14:47
Zitat von: bastelwastel am 07 November 2017, 13:00:02
Wenn ich nun aber nachts den Rolladen zum Lüften öffne, fährt er zuerst runter, damit er anschliessend wieder hochfährt. Wie bekomme ich das hin, daß der Rolladen nur dann auf 80% bzw. 60% fährt, wenn er unterhalb des Wertes steht?

Es kann ja auch sein dass ich mich täusche, aber in deinem Fall ist doch ein notify im Spiel. Oder versteh ich die Frage nicht?

Gruß
Flo
Titel: Antw:Rolladensteuerung
Beitrag von: Beta-User am 08 November 2017, 11:26:50
Zitat von: ripper am 08 November 2017, 11:14:47
Es kann ja auch sein dass ich mich täusche, aber in deinem Fall ist doch ein notify im Spiel. Oder versteh ich die Frage nicht?
Was für ein notify? Es wurde nur sinngemäß erklärt: "wenn ich den Rolladen nachts bereits geöffnet habe, soll er nicht wieder nach unten, um dann geöffnet zu werden"
Es ist bei der Konstruktion doch im Prinzip egal, durch was (notify, Tastendruck usw.) der Rolladen weiter oben steht, wenn die at's greifen. Wenn er aber z.B. um 5 Min. nach sunrise bereits offen ist, wird ihn das at (ohne den perl-if-Teil) wieder nach unten schicken...

Das sollte nach meinem Verständnis verhindert werden.

Btw.: Das hier (https://forum.fhem.de/index.php/topic,73964.0.html) kennt ihr?
Titel: Antw:Rolladensteuerung
Beitrag von: ripper am 08 November 2017, 11:35:36
ok dann hab ich dass Falsch verstanden, ich lasse meine Jalousien öffnen bzw. ankippen wenn ich das Fenster zum lüften öffne. Aber eben auch nur wenn diese bereits geschlossen sind.
Das "modul" kenne ich. Danke

Gruß
Flo
Titel: Antw:Rolladensteuerung
Beitrag von: CoolTux am 08 November 2017, 11:39:24
Zitat von: Beta-User am 08 November 2017, 10:12:03
Moin,

vorab: direktes Editieren der cfg ist keine gute Idee (oder deute ich den Code-Auszug falsch)...

Mal ein Beispiel (ungetestet), wie das dann aussehen sollte:

define Rolladen_auf_80 at *{sunrise(300,"06:00","07:30")} { if ( Value("Rolladen ") > 80) {fhem("set Rolladen 80")} }    # 80 Prozent zu 300 Sekunden (5 Minuten) nach sunrise


Aber grundsätzlich wäre etwas mehr an eigener Arbeit (und dokumentierter Versuche) nicht schlecht ;) . Einsteiger-pdf liegt neben dir?

Gruß, Beta-User


define Rolladen_auf_80 at *{sunrise(300,"06:00","07:30")} { fhem("set Rolladen:FILTER=STATE>80 80")}
Titel: Antw:Rolladensteuerung
Beitrag von: Beta-User am 08 November 2017, 11:41:43
...oder eben so...
Zitat von: CoolTux am 08 November 2017, 11:39:24

define Rolladen_auf_80 at *{sunrise(300,"06:00","07:30")} { fhem("set Rolladen:FILTER=STATE>80 80")}

Danke für den Hinweis auf FILTER. Gibt eben viele Wege nach Rom...
Titel: Antw:Rolladensteuerung
Beitrag von: bastelwastel am 08 November 2017, 12:21:57
An Value hab ich garnicht gedacht, ich habe mir mit dem EventMonitor ein notify auf das Reading Level gemacht und versucht, diese dann mit < zu benutzen.

Danke an alle!
Titel: Antw:Rolladensteuerung
Beitrag von: Beta-User am 08 November 2017, 12:29:40
Schön, dass es jetzt so ist, wie du wolltest.

Kannst du den Thread auf [gelöst] setzten?

Und das Durcharbeiten der Beispiele im Einsteiger-pdf würde ich wirklich wärmstens empfehlen (nur bitte die cfg. nicht direkt editieren, sondern FHEMWEB benutzen) ;) .
Titel: Antw:[Gelöst] Rolladensteuerung
Beitrag von: Bäschdler am 21 November 2017, 15:01:01
Hallo,
ich habe versucht das oben stehende umzusetzen. Es hat aber leider nicht funktioniert.  :'(


Das hier steht in der Config:
# Rolladen OG Kinderzimmer am Morgen auf fahren
define Roll_OG_KiZ_Morgen_80 at *{sunrise(1200,"06:00","09:00")} {fhem("set OG_KiZ_Roll:FILTER=STATE>80 80")} # auf 80% _ 1200 Sekunden (20 Min) nach sunrise
define Roll_OG_KiZ_Morgen_60 at *{sunrise(1320,"06:00","09:02")} {fhem("set OG_KiZ_Roll:FILTER=STATE>60 60")} # auf 60% _ 1320 Sekunden (22 Min) nach sunrise
define Roll_OG_KiZ_Morgen_auf at *{sunrise(1800,"06:00","09:10")} set OG_KiZ_Roll 0 # auf 0% _ 1800 Sek (30 Min) nach sunrise

define Roll_OG_KiZ_Test_21 at *{sunrise(1100,"06:00","09:00")} { fhem("set OG_KiZ_Roll:FILTER=STATE>90 90")}
define Roll_OG_KiZ_Test_22 at *{sunrise(1230,"06:00","09:00")} { fhem("set OG_KiZ_Roll:FILTER=STATE>70 70")}



Sonnenaufgang war an dem Tag an dem ie es getestet hatte und von dem unten stehender Logbucheintrag ist um 7:05:13


2017-11-21_07:35:13 OG_KiZ_Roll level: set_0
2017-11-21_07:35:13 OG_KiZ_Roll set_0
2017-11-21_07:35:13 OG_KiZ_Roll deviceMsg: on (to myHmUART)
2017-11-21_07:35:13 OG_KiZ_Roll level: 100
2017-11-21_07:35:13 OG_KiZ_Roll motor: down:on
2017-11-21_07:35:13 OG_KiZ_Roll pct: 100
2017-11-21_07:35:13 OG_KiZ_Roll on
2017-11-21_07:35:13 OG_KiZ_Roll timedOn: off
2017-11-21_07:35:42 OG_KiZ_Roll deviceMsg: off (to myHmUART)
2017-11-21_07:35:42 OG_KiZ_Roll level: 0
2017-11-21_07:35:42 OG_KiZ_Roll motor: stop:off
2017-11-21_07:35:42 OG_KiZ_Roll pct: 0
2017-11-21_07:35:42 OG_KiZ_Roll off
2017-11-21_07:35:42 OG_KiZ_Roll timedOn: off



Somit hat nur der eine Fahrbefehl funktioniert der ohne Filter ist.



Hat mir jemand von euch einen Tipp was ich falsch gemacht habe?


Danke schon mal und viele Grüsse
Ralf
Titel: Antw:[Gelöst] Rolladensteuerung
Beitrag von: CoolTux am 21 November 2017, 15:05:08
setz den Filter mal auf pct statt auf STATE. Wer weiß was bei Dir im STATE steht