NEWS
Pulse Counter - Aufaddieren von Pulsen
-
Hallo, ich habe, um meinen Gaszähler auszulesen, einen Hallsensor installiert, der über EspEasy auf einem ESP8266 ausgelesen wird. Dort lese ich die Pulse aus, die das Zählwerk des Gaszählers bei jeder Umdrehung an den Hallsensor gibt. Diese einzelnen Pulse werden im ioBroker über MQTT ausgewertet, also stumpf hochgezählt.
Das Problem nun ist, wenn es z.B. einen Stromausfall gibt und der ESP8266 neu bootet, startet er bei 0 und dieser Wert kommt auch dann beim ioBroker an, sodaß Auswertungen z.B. in Grafana über diesen Zeitpunkt hinweg natürlich unbrauchbar werden, da vor dem Stromausfall der Wert für die gezählten Pulse z.B. 35245 war und danach 0, es wird also quasi ein negativer Verbrauch über diesen Sprung hin ermittelt.
Frage: Wie kann ich ioBroker bzw. InfluxDB als dahinterliegende Datenbank dazu bringen, dass in der Datenbank ein Wert abgelegt wird, der bei jedem neuen Puls des Hallsensors um 1 erhöht wird. Dann wäre ich auch bei einem Neustart unabhängig vom Totalwert, da ja immer, auch wenn es bei 0 wieder losgeht, der vorher in InfluxDB abgelegte Wert die Basis wäre und mit jedem neuen Puls wieder um 1 erhöht würde. -
-
@musicnrw Ich habe ein ähnliches Setup. Kann die Blockyl Scripte und die Vis2 Views gerne teilen.
Der Sensor hat immer wieder überzählige Impulse gezählt. Musste da Sperrzeiten für die Entpellungen in die Scripte einbauen.
Und für Zeiten, wo Iobroker nicht gelaufen ist und dadurch hinterherhinkt einen VIS View zum Abgleich mit den Zählerstand.EDIT: Hier steht ziemlich alles
https://forum.iobroker.net/topic/71112/indukt-näherungsschalter-und-gaszählerauswertung/24?_=1740649894792 -
@musicnrw sagte: neu bootet, startet er bei 0 und dieser Wert kommt auch dann beim ioBroker an
Trigger auf "ist größer als letztes". Beispiel mit 1 Impuls / Wh:
-
@paul53 Die Umrechnung Impulse auf kWh bei Gaszählern ist nicht so kompliziert ...
- Herausfinden, was für einen Heizwert das gelieferte Gas hat (Internetseite des Gasnetzbetreibers z. B.) bei mir in Dortmund https://www.dew21.de/fileadmin/Privatkunden/Produkte/Erdgas/Erdgaskennwerte.pdf
11,38 kWh/m³
- Impulse/m³ des Zählers bei meinem Pipersberg G4 RF1 c 100 Impulse/m³
also 0,1138 kWh pro Impuls ...
Die größtmögliche Entprellung kann man in etwa einstellen, wenn man die Heizleistung des angeschlossenen Heizkessels kennt...
Wenn es nur einen Gasverbraucher gibt, und das ist ein Heizkessel mit 12 kW, könnte maximal pro Stunde 12 kWh verbraucht werden ...
12 / 0,1138 = 105,44 Impulse pro Stunde
60*60/105,44 = alle 34,14 ein Impuls schnellstenfalls, alle Impulse, die schneller kommen, sind Fehldetektionen ...
Da man nicht so genau weiß, ob der Kessel nicht manchmal doch etwas mehr Gas aufnimmt, als seiner Heizleistung entspricht, würde ich die Sperrzeit nach einem detektierten Impuls auf 20 Sekunden setzen ...
Bei uns hängen zwei Verbraucher am Zähler, beide bei ca 12 kW, und ich habe die Sperrzeit auf 10 Sekunden gesetzt ...