FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Basti-K am 01 Juni 2021, 15:00:13

Titel: Rollandensteuerung nach Lichteinfall
Beitrag von: Basti-K am 01 Juni 2021, 15:00:13
Servus.

Ich bin auf die Idee gekommen die beiden Strings der PV Anlage aus Lichtsensor zu missbrauchen.
Ost / West Anlage:
defmod di_Kuechenfenster_Sonne DOIF ([S10E:String1-Leistung] > 4000 ) (set MQTT2_shellyswitch25_8CAAB50598A3 pct 50)\
DOELSE   ([S10E:String1-Leistung] < 500) (set MQTT2_shellyswitch25_8CAAB50598A3 pct 100))
attr di_Kuechenfenster_Sonne icon weather_sun
attr di_Kuechenfenster_Sonne repeatcmd 600



Grundsätzlich Funktioniert es, aber wie realisiert man am besten eine "Dämpung" in der Regelung? weil die Rollladen fahren sehr oft rauf und runter.
cmdpause ?

Eine gefällte Entscheidung sollte doch mindestens 30  Minuten gültig sein, oder bildet am besten eine Durchschnitt auf Zeit wegen Wolken?
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Otto123 am 01 Juni 2021, 15:12:50
Hi,

ZitatGrundsätzlich Funktioniert es
Glaub ich nicht ...
Dein DOIF ist falsch! entweder DOELSE ohne Bedingung oder DOELSEIF mit Bedingung
Wozu ist repeatcmd?

Zur Dämpfung würde ich attr di_Kuechenfenster_Sonne wait 900:900 oder wait 1800:1800 machen

Gruß Otto
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Basti-K am 01 Juni 2021, 15:22:09
Die Rollladen waren auf 50% als ich nach hause gekommen bin. (heute morgen remote eingetragen)

die falsche syntax wurde aber akzeptiert. vielleicht auch die Erklärung für das raus und runter...

ich probiere es mal so wie du sagst.
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Otto123 am 01 Juni 2021, 16:09:08
ich kann es kaum glauben, es ist noch ein Fehler - zum Schluss eine Klammer zu viel.
DOELSE erwartet einfach Befehle, das können bei DOIF auch mehrere in einem Zweig in getrennten Klammern sein.
Der erste Befehl im zweiten Zweig: ([S10E:String1-Leistung] < 500) ist wahr oder auch auch nicht, da interessiert sich in Deinem Konstrukt keiner für.  :D
Bei uns schien heute den ganzen Tag die Sonne, da trat sicher bisher nur cmd_1 in Aktion :)
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Basti-K am 01 Juni 2021, 18:42:33
Ich fürchte ich hab ein Problem mit Klammern.

dies hier wurde formal akzeptiert:

[S10E:String1-Leistung] > 3500 
(set MQTT2_shellyswitch25_8CAAB50598A3 pct 50)
DOELSEIF [S10E:String1-Leistung] < 800
(set MQTT2_shellyswitch25_8CAAB50598A3 pct 100)


aber erzeugt unten in den Readings die Meldung:
error:  condition c02: syntax error, line 1, near "800  ("

Ich bin blind, wo fehlt den was?
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Otto123 am 01 Juni 2021, 18:47:20
Hattest Du doch oben schon richtig, bis auf die letzte zuviel?
DOIF (Bedingung) (Ausführung) DOELSEIF (Bedingung) (Ausführung)
Titel: Antw:Rollandensteuerung nach Lichteinfall
Beitrag von: Basti-K am 01 Juni 2021, 19:54:43
die wait Geschichte hat für Irritation geführt.
ich hab noch etwas an den Schwellwerten gedreht aber grundsätzlich tuts das Konstrukt nun.

Morgen mal die Geschichte für die andere Fenster realisieren...
danke für den Denkanstoß.