Zählersensor HM-ES-TX-WM - Universelle Zählerstandberechnung

Kabellose und kabelgebundene Sender und Empfänger der klassischen Homematic-Serie

Moderator: Co-Administratoren

Kenobi
Beiträge: 98
Registriert: 19.07.2014, 21:15
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von Kenobi » 04.12.2017, 17:44

Bei mir ist es auch Firmware Release 1.0.

Ich vermute die Ursache aber nicht am Sensor, weil der ja eigentlich prima funktioniert. Er sendet brav alle 3 Minuten seinen Wert, was dann wiederum das Script startet. Aktuelle Daten sind alle OK.

Mein Verdacht ist, dass das Script bei der "Mitternachtserkennung" nicht so funktioniert, wie geplant. Ich werde das heute Nacht prüfen, ob ich in den entsprechenden Script-Zweig laufe...

maxx1976
Beiträge: 40
Registriert: 04.02.2016, 09:26
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von maxx1976 » 06.12.2017, 07:19

Hallo zusammen

die Firmware scheint damit nicht zu tun zu haben! Ich hab das Update gemacht und sogar das ganze Script + Variablen neu "installiert"
Hat leider nichts gebracht!

Soweit ich mit meinen brgrenzten Kenntnissen im Scripten feststellen konnte, wird das Script um 00:00 Uhr ausgeführt. Es wird auch in den passenden if-Zweig gesprungen, allerdings wird weiter nichts ausgeführt (Variablen umkopiert ...).

Vielleicht hat noch jemand eine Idee?
lg
Maxx

Kenobi
Beiträge: 98
Registriert: 19.07.2014, 21:15
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von Kenobi » 06.12.2017, 18:17

Hallo,
auch bei mir läuft das Script um 00:00 in den beabsichtigten Abschnitt. Dort stirbt es aber ab, bevor es zum Ende kommt.
...
! aktueller Tagesverbrauch speichern
d = dom.GetObject(b # " Referenz heute");
e = dom.GetObject(b # " Verbrauch heute");
f = dom.GetObject(b # " Verbrauch gestern");

! Verbrauch der letzten Woche speichern
f.State(e.State());
Die letzte Zeile ist meiner Ansicht nach der Punkt, wo ein Fehler auftritt. Leider habe auch ich nicht genügend Kenntnisse, um die Ursache zu finden. Vielleicht hängt es auch mit der "Community-Edition" zusammen, die auf der RaspberryMatic wohl der Standard ist.

Alexxx2005
Beiträge: 252
Registriert: 17.12.2014, 18:56
Hat sich bedankt: 19 Mal
Danksagung erhalten: 3 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von Alexxx2005 » 06.12.2017, 18:21

Bei mir geht das Skript auch nicht zu ende ich stimme Kenobi zu 80 % der Leute haben RaspberryMatic aber wenn Jens Maus sagt bei ihm funktioniert es ich denke kaum dass er eine CCU2 verwendet, vielleicht kann Jens einfach noch mal sein Skript hier posten
Grüße Alex


Gesendet von iPhone mit Tapatalk

Kenobi
Beiträge: 98
Registriert: 19.07.2014, 21:15
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von Kenobi » 09.12.2017, 17:01

Hallo zusammen,

das Script finde ich von der Idee her Klasse (Danke Jens!). Es leistet wohl in den meisten Fällen sehr gute Dienste, aber leider ncht bei mir. Das mitternächtliche Speichern und Rücksetzten der Zähler klappt bei mir nicht und ich kann die Ursache nicht klären. Da ist es auch nur wenig tröstlich, dass es Mitleidende gibt. Hoffnungsvoll stimmt mich, dass Jens über ein Plugin nachdenkt - wow!.

Was ich bei mir untersucht und gefunden habe ist:
- im Tagesverlauf macht das Script (Strom) alles wie gewünscht
- um Mitternacht läuft das Script in den 00:00 - Zweig
- es bricht bei f.State(e.State()); ab
- das passiert auch interaktiv via Script testen, wenn man den entspr. Codeschnipsel ausführt
- das passiert bei mir auf Raspberrymatic UND der alten CCU2 im Legacy mode
- die Systemvariablen habe ich gefühlt 100 mal überprüft

Jetzt mangelt es mir Kenntnissen, um den Fehler weiter einzukreisen oder gar zu lösen.
Vielleicht hat noch jemand eine erleuchtende Idee?
Vielen Dank dafür im Voraus

Kenobi

djangp
Beiträge: 166
Registriert: 11.09.2014, 10:43
Wohnort: Bayern
Hat sich bedankt: 3 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von djangp » 11.12.2017, 11:27

Ja schade das man keine Lösung findet - eine wirklich Alternative habe ich bisher auch
nicht gefunden.
RaspberryMatic auf RPi 3 - AIO Creator NEO

Benutzeravatar
jmaus
Beiträge: 9862
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 464 Mal
Danksagung erhalten: 1880 Mal
Kontaktdaten:

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von jmaus » 27.12.2017, 22:34

Hallo Zusammen,

hier nur kurz die Info das ich soeben die Version 1.2 des Zählerstandberechnungsskriptes freigegeben habe. Darin habe ich einige Optimierungen vorgenommen die hoffentlich dazu führen das das Skript ingesamt runder läuft. Zu finden ist die neue Version wie immer auf der ersten Seite dieses Threads.

Viel Spass damit
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

maxx1976
Beiträge: 40
Registriert: 04.02.2016, 09:26
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von maxx1976 » 28.12.2017, 07:06

Hallo Zusammen

Vor demJahresende noch eine kleine positive Nachricht! Ich habe den Fehler im Script gefunden. Ich habe auch einen Workaround für mich gefunden da ich das Script nur für Strom brauche.

So nun zur Ursache:
Mir ist beim Testen des Script aufgefallen, das es ein Problem gibt die das "objekt d" (und auch alle anderen Objekte im 00:00 Uhr Zweig) mit der Systemvariable zu füllen. Das Problem scheint darin zu liegen das (b # " Referenz heute") nicht funktioniert. Dieser teil sollte die Systemvariable "Strom Referenz heute" aufrufen. macht es aber nicht. Objekt d wird dann mit "NULL" befüllt!
Wenn man jetzt aber alle b # " Aufrufen mit (in meinem Fall) Strom ersetzt. klappt das befüllen des Objekt wieder.

So wird z.b. aus:
d = sysvar.Get(b # " Referenz heute");
dann:
d = sysvar.Get("Strom Referenz heute");

Ausserdem habe ich noch diese Zeilen auskommentiert. Die schließende } nicht vergessen.
foreach(b, a.Split(","))
{

So läuft es jetzt bei mir allerdings eben nur für Strom! Leider fehlen mir die tieferen Kenntnisse um das Script richtig zu stellen.
Vielleicht kann jemand das Script mit dieser Information wieder so korrigieren, dass es wieder Universell einsetzbar wird.

Liebe Grüße

Maxx

djangp
Beiträge: 166
Registriert: 11.09.2014, 10:43
Wohnort: Bayern
Hat sich bedankt: 3 Mal

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von djangp » 28.12.2017, 08:33

Oh gleich mal probieren.. Vielen Dank
Was du genau auskommentiert hast ist mir nicht klar

Vielleicht kannst du trotzdem deinen kpl Script posten
Merci
RaspberryMatic auf RPi 3 - AIO Creator NEO

Benutzeravatar
jmaus
Beiträge: 9862
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 464 Mal
Danksagung erhalten: 1880 Mal
Kontaktdaten:

Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech

Beitrag von jmaus » 28.12.2017, 08:35

Wenn das wie von dir an dieser Stelle nicht klappt mal die Frage welche CCU du mit welcher Firmware einsetzt.
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

Antworten

Zurück zu „HomeMatic Aktoren und Sensoren (klassisch)“