HM-Sen-Wa-Od Zustände erkennen und Pushover auslösen

Begonnen von Gruvol, 19 September 2017, 11:56:33

Vorheriges Thema - Nächstes Thema

Otto123

#30
Zitat von: Alex76 am 02 November 2018, 10:02:30
eigentlich gibts im ganzen config file keine weitere stelle wo die pumpe ausgeschaltet wird. Wenn ichs händisch einschalte läuft sie auch.
Und sinkt denn dann der Pegel?

Deine alte DOIF Konstruktion hat nie einen Pegel Wert bekommen, weil Du die Events verhindert hast. Jetzt bekommt er 100. Er hat am 2 Mai die Pumpe eingeschaltet solange der Pegel nicht sinkt schaltet er nicht mehr aus und natürlich auch nicht ein. DOIF ist ja der Meinung es ist ein. Egal ob Du die Pumpe per Hand ausgeschaltet hast.

Du kannst natürlich noch den Zustand der Pumpe in deine Abfrage einbauen!

([Bodentank:level] > 99 and [Tankbefuellung] ne "on") (set Tankbefuellung on) DOELSE (set Tankbefuellung off)
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

Alex76

Die Pegel bleiben stehen - Bodentank 100 und Reservetank 44 und keine Änderung auch nicht nach 10min Laufzeit.

Aber wenn ich fhem neu starte und ein Status kommt, müsste er ja wieder einschalten oder hab ich das falsch verstanden?

Aber bei der Heizung seh ich die Kurven auch in der Grafik die aus dem Log erzeugt wird und auch dort schaltet er nicht.

Otto123

#32
Naja dann liegt es am Pegel Bodentank!

Mit FHEM Neustart sollte das alles nichts zu tun haben. Es wäre doch meistens unerwünscht wenn ein Neustart irgendwelche Schaltvorgänge auslöst.

Die Pegelwerte müssen sich ändern, sonst ist deine DOIF Logik witzlos.

Hast Du das Heizungs DOIF denn geändert? Gib mal ein aktuelles list. Dort siehst Du immer welche Werte empfangen werden und welche stehenbleiben.
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

Alex76

kein Problem:

Internals:
   DEF        (([HM_4CF5C7_Clima:measured-temp] < [HM_4CF5C7_Clima:desired-temp]) and [Sommer:"off"]) (set HM_471C00_Sw_02 on) DOELSE (set HM_471C00_Sw_02 off)
   MODEL      FHEM
   NAME       EG_Clima
   NR         375
   NTFY_ORDER 50-EG_Clima
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2018-11-02 10:10:04   Device          HM_4CF5C7_Clima
     2018-11-02 10:10:04   cmd             2
     2018-11-02 10:10:04   cmd_event       HM_4CF5C7_Clima
     2018-11-02 10:10:04   cmd_nr          2
     2018-11-02 10:10:04   e_HM_4CF5C7_Clima_desired-temp 24.0
     2018-11-02 10:10:04   e_HM_4CF5C7_Clima_measured-temp 23.7
     2018-11-01 20:25:44   e_Sommer_events off
     2018-11-02 10:10:04   state           cmd_2
   Regex:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          (::ReadingValDoIf($hash,'HM_4CF5C7_Clima','measured-temp') < ::ReadingValDoIf($hash,'HM_4CF5C7_Clima','desired-temp')) and ::EventDoIf('Sommer',$hash,'off',1)
   devices:
     0           HM_4CF5C7_Clima Sommer
     all         HM_4CF5C7_Clima Sommer
   do:
     0:
       0          set HM_471C00_Sw_02 on
     1:
       0          set HM_471C00_Sw_02 off
   helper:
     event      ValvePosition: 100,boostTime: -,controlMode: manual,desired-temp: 24.0,measured-temp: 23.7,partyEnd: -,partyStart: -,partyTemp: -,T: 23.7 desired: 24.0 valve: 100
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   HM_4CF5C7_Clima
     timerevent ValvePosition: 100,boostTime: -,controlMode: manual,desired-temp: 24.0,measured-temp: 23.7,partyEnd: -,partyStart: -,partyTemp: -,T: 23.7 desired: 24.0 valve: 100
     triggerDev HM_4CF5C7_Clima
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: HM_4CF5C7_Clima
       state: cmd_2
     timerevents:
       ValvePosition: 100
       boostTime: -
       controlMode: manual
       desired-temp: 24.0
       measured-temp: 23.7
       partyEnd: -
       partyStart: -
       partyTemp: -
       T: 23.7 desired: 24.0 valve: 100
     timereventsState:
       ValvePosition: 100
       boostTime: -
       controlMode: manual
       desired-temp: 24.0
       measured-temp: 23.7
       partyEnd: -
       partyStart: -
       partyTemp: -
       state: T: 23.7 desired: 24.0 valve: 100
     triggerEvents:
       ValvePosition: 100
       boostTime: -
       controlMode: manual
       desired-temp: 24.0
       measured-temp: 23.7
       partyEnd: -
       partyStart: -
       partyTemp: -
       T: 23.7 desired: 24.0 valve: 100
     triggerEventsState:
       ValvePosition: 100
       boostTime: -
       controlMode: manual
       desired-temp: 24.0
       measured-temp: 23.7
       partyEnd: -
       partyStart: -
       partyTemp: -
       state: T: 23.7 desired: 24.0 valve: 100
   internals:
   itimer:
   perlblock:
   readings:
     0           HM_4CF5C7_Clima:measured-temp HM_4CF5C7_Clima:desired-temp
     all         HM_4CF5C7_Clima:measured-temp HM_4CF5C7_Clima:desired-temp
   trigger:
     all         Sommer
   uiState:
   uiTable:
Attributes:
   do         always
   room       Heizung


Das ist jetzt fürs EG, der 1OG ist gleich im Prinzip und verhält sich ebenso tot.


Otto123

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

Alex76

Das Problem mit dem Bodentank kann auch sehr verzögert kommen. glaub der schickt nur alle heiligen Zeiten ein update.

Otto123

and [Sommer:"off"]) das schaltet nur wenn Du den Schalter umlegst!
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

Alex76

Danke, nö hatte ich überlesen, hab das nun geändert auf:

define 1OG_Clima DOIF (([HM_4CF5DB_Clima:measured-temp] < [HM_4CF5DB_Clima:desired-temp]) and [Sommer] eq "off") (set HM_471C00_Sw_01 on) DOELSE (set HM_471C00_Sw_01 off)
attr 1OG_Clima do always
attr 1OG_Clima room Heizung

define EG_Clima DOIF (([HM_4CF5C7_Clima:measured-temp] < [HM_4CF5C7_Clima:desired-temp]) and [Sommer] eq "off") (set HM_471C00_Sw_02 on) DOELSE (set HM_471C00_Sw_02 off)
attr EG_Clima do always
attr EG_Clima room Heizung



Worin besteht hier der Unterschied, dachte das ist nur die Schreibweise bzw. wann triggert DoIF bzw. nicht?

frank

ZitatDie Pegel bleiben stehen - Bodentank 100 und Reservetank 44 und keine Änderung auch nicht nach 10min Laufzeit.
wenn nur alle 20min gesendet wird, kein wunder. ausserdem muss die pumpe in 20min auch genug rauspumpen können, sonst bist du schon bei 40min.

das prefered io hast du auch noch nicht gewechselt.
fhem möchte auch gern den wert vom register
2017-03-03 12:27:44   R-caseHigh      set_100 cm
wissen. wer weiss auf welcher höhe der wirklich steht.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Otto123

Nein der Unterschied ist grundlegend. Der Ausdruck [Sommer:"off"] wird in dem Moment war wo der Event eintrifft. Also genau in dem Moment wo du auf off schaltest und dann nie wieder!

Der Ausdruck [Sommer] eq "off" wird abgefragt wenn das DOIF arbeitet. Es fragt den Zustand ab, egal wann der Schalter geschaltet wird. Es wird auch abgefragt wenn der Schalter schaltet, aber eben auch wenn eine Temperaturänderung eintrifft.

Der Ausdruck [?Sommer] eq "off" würde das DOIF nicht triggern wenn Du den Schalter umlegst, sondern nur die Temperaturwerte würden das DOIF triggern, dabei würde aber wieder der Zustand des Schalters abgefragt.

Alles klar?
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

Alex76

Der eine Teil läuft somit schon mal, die Heizung geht - vielen dank für die Erklärung, das war mir so nicht klar.

Nun ist noch abzuwarten, wann ich wieder eine Aktualisierung vom Tanksensor bekomme ...

Otto123

Naja vor allem 100 ist ja der Anschlag. Kann ja sein (wie Frank vermutet) der steht eigentlich bei 200 und sinkt quasi erst wenn der Tank leer ist?
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

Alex76

naja - ich hab das ding einmal kalibiert und das ist nun fast 2 Jahre her (deswegen steht der batteriestatus schon auf low) und da hat die anzeige ganz gut gepasst. Will damit eigentlich nur verhindern, dass der Tank übergeht und es wieder Richtung Haus läuft.

Otto123

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

Alex76

Updates kommen, hab einen Teil aus dem Tank genommen und hab nun 78%