FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: smeagel am 13 Juni 2021, 08:44:29

Titel: DOIF mit Intervall nach Zuständen
Beitrag von: smeagel am 13 Juni 2021, 08:44:29
Hi,

ich habe mir hier schon verschiedene Beiträge angeschaut, komme aber leider nicht auf eine Lösung.

Ich habe eine Teichpumpe die alle 2 Stunden für 20 Minuten anlaufen soll wenn die Temperatur über 20° ist und die Teichpumpe aus ist. Wenn die Teichpumpe schon läuft, soll nichts passieren.

([08:00-21:00] and [HMIP_Aussentemperatursensor:1.ACTUAL_TEMPERATURE] >= 20 and [Teichpumpe:POWER1] eq off) (set Teichpumpe on-for-timer 1200)

Das funktioniert schon mal - aber wie bekomme ich es hin das nun innerhalb der Parameter geschaltet wird?

Hat jemand ne Idee?
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: Stelaku am 13 Juni 2021, 09:22:05
Hallo smeagel

Vielleicht funktioniert schon ein repeatcmd 7200
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: smeagel am 13 Juni 2021, 09:50:23
Hi,

wenn ich repeatcmd setzte, geht es dauernd an.
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: Sany am 13 Juni 2021, 10:03:10
Hi,

deine Fragestellung kam mir so vor, als hätte ich das schon mal gelesen...

aus der Commandref:
ZitatZeitangaben nach Zeitraster ausgerichtet alle X Stunden   back

Format: [+[h]:MM] mit: h sind Stundenangaben zwischen 1 und 23 und MM Minuten zwischen 00 und 59

Anwendungsbeispiel: Es soll immer fünf Minuten nach einer vollen Stunde alle 2 Stunden eine Pumpe eingeschaltet werden, die Schaltzeiten sind 00:05, 02:05, 04:05 usw.

define di_gong DOIF ([+[2]:05]) (set pump on-for-timer 300)
attr di_gong do always
siehe: https://fhem.de/commandref_modular_DE.html#DOIF_Zeitangaben_nach_Zeitraster_ausgerichtet_alle_X_Stunden (https://fhem.de/commandref_modular_DE.html#DOIF_Zeitangaben_nach_Zeitraster_ausgerichtet_alle_X_Stunden)

Die 8-21Uhr Bedingung würde ich mit Fragezeichen versehen, die soll eher nicht triggern.

Viel Erfolg!

Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: smeagel am 13 Juni 2021, 10:07:25
Hi,

ja, in der Commandref ist dieses Beispiel aufgeführt... nur das Problem dabei ist, sobald die Pumpe manuell ausgeschaltet wird, springt Sie sofort wieder an....

Also quasi in Noob-Ausdrücken:

Prüfe in der Zeit zwischen 08-21 Uhr ob die Temperatur größer als 21° ist und die Pumpe aus - wenn ja, schalte die Pumpe an - wenn die Pumpe schon läuft, mache nichts.
Wenn die Pumpe manuell angeschaltet wird, mache nichts.

Ich bekomme das nicht so wirklich hin.
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: Porsti am 13 Juni 2021, 10:35:20
Hi,

ich vermute das durch da off der Pumpe die Bedungen getriggert wird. Wenn ich so etwas mache Arbeite ich gerne mit den "?". Dann werden die Bedingungen beim Trigger überprüft aber lösen das DOIF nicht aus:


([08:00-21:00] and [HMIP_Aussentemperatursensor:1.ACTUAL_TEMPERATURE] >= 20 and [?Teichpumpe:POWER1] eq off) (set Teichpumpe on-for-timer 1200)


Gruß
Porsti
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: smeagel am 13 Juni 2021, 21:04:03
Werde es mal so probieren ....der Tip mit dem ? war echt gut. Danke

([10:00-21:00,+01:00] and [?HMIP_Aussentemperatursensor:1.ACTUAL_TEMPERATURE] >= 21 and [?MQTT2_Aussen_Teichpume:POWER1] eq "off") (set MQTT2_Aussen_Teichpume on-for-timer 600)
Titel: Antw:DOIF mit Intervall nach Zuständen
Beitrag von: McShire am 14 Juni 2021, 03:49:08
Versuch es doch mal mit
define Pumpsteuerung at +*02:00:00
    defmod pumpan DOIF ([08:00-21:00] and [HMIP_Aussentemperatursensor:1.ACTUAL_TEMPERATURE] >= 20 and [Teichpumpe:POWER1] eq off) (set Teichpumpe on-for-timer 1200)
gruß
Werner