HomeMatic – Stromzähler auswerten Version 2 mit HM-ES-TX-WM – Bugfix 1 „Batteriewechsel“

Workaround für den „Batteriewechsel-Bug“ (vor 15.10.2015)


Das nachfolgende Vorgehen ist nur für Nutzer von Bedeutung, die das Auswerteskript aus diesem Tutorial bereits vor dem 15.10.2015 eingesetzt und zwischenzeitlich noch nicht angepasst haben! Es kann aber auch im Falle eines größeren Systemfehlers helfen, die Zähler wieder auf brauchbare Werte zu „trimmen“.

Hintergrund

In dem ursprünglichen Skript war ein Fehler enthalten, der nach einem – z.B. durch den Batteriewechsel verursachten – Reset des Datenpunktes…


Energie-Zähler Gerät [ENERGY_COUNTER]

…die Werte der Zeitraumzähler falsch berechnete.


Bis zu einem solchen Reset funktionierte die Auswertung der Zähler jedoch einwandfrei.

„Bestandsnutzer“ sollten diesen Workaround daher spätestens bei einem anstehenden Batteriewechsel durchführen. Das Vorgehen ist nur einmalig erforderlich, weitere Batteriewechsel erfolgen gemäß dem Abschnitt „3. Batteriewechsel“ im aktuellen Tutorial.

Gegenüber der ursprünglichen Version werden in dem neuen Auswerteskript die Zeitraumzähler nicht mehr über den Datenpunkt…


Energie-Zähler Gerät [ENERGY_COUNTER]

z.B.

vTg.State((oE.State()/1000) - vTz.State());

…sondern über den „aktuellen Zählerstand“ in der Systemvariablen…


„Strom Zaehlerstand“, Zahl

z.B.

vTg.State(zA.State() - vTz.State());

…berechnet.

Dies führt dazu, dass vor Verwendung des neuen Auswerteskriptes eingerichtete Zeitraumzähler bis zu dem nächsten Reset falsche Werte anzeigen werden. Während dies bei dem Tageszähler ggf. noch zu vernachlässigen ist, bedürfen die Langzeit-Zähler einer manuellen Korrektur.


Da der Stromverbrauch kontinuierlich weiterläuft, sollten die nachfolgenden Schritte zügig nacheinander durchgeführt werden!

Schritt 1: Datensicherung

Zunächst sind die Daten aller den Stromzähler betreffenden Systemvariablen zu sichern (aufschreiben oder z.B. als Text über die Zwischenablage aus dem WebUI der CCU kopieren):


„Strom Referenz Zaehlerstand“, Zahl
„Strom Referenz Verbrauch seit letzter Ablesung“, Zahl
„Strom Referenz Verbrauch laufendes Kalenderjahr“, Zahl
„Strom Referenz Verbrauch laufender Monat“, Zahl
„Strom Referenz Verbrauch laufende Woche“, Zahl
„Strom Referenz Verbrauch heute“, Zahl
„Strom Verbrauch seit letzter Ablesung“, Zahl
„Strom Verbrauch laufendes Kalenderjahr“, Zahl
„Strom Verbrauch laufender Monat“, Zahl
„Strom Verbrauch laufende Woche“, Zahl
„Strom Verbrauch heute“, Zahl

Schritt 2: Anpassung der Systemvariablen

Durch das neue Auswerteskript sind die Werte der Referenz-Systemvariablen deutlich höher als vorher. Der in der CCU voreingestellte Wertebereich für Systemvariablen vom Typ Zahl von 0 bis 65000 dürfte bei vielen Zählern nicht ausreichen.

Daher ist zumindest für die Systemvariable „Strom Zaehlerstand“ und für alle Referenz-Systemvariablen als Maximalwert 999999.99 einzugeben…

Anpassung Referenz SysVar


Die Werte werden nach der Anpassung auf NULL gesetzt, was aber nach erfolgtem Schritt 1 nicht weiter schlimm ist.

Schritt 3: Austausch des Auswerteskriptes

In dem zugehörigen CCU-Programm ist das alte Auswerteskript gegen die neue Version (siehe Tutorial) auszutauschen. Falls der „Überlauf-Bug“ noch nicht korrigiert wurde, bitte daran denken, dass bei Verwendung des aktuellen Skriptes eine zusätzliche Systemvariable…


„Strom ENERGY_COUNTER“, Zahl, 999999.99

…anzulegen ist.

Schritt 4: Batteriewechsel

Nun können die Batterien des HM-ES-TX-WM ersetzt werden. Falls diese noch voll sind, sind sie dennoch zu entnehmen und nach einigen Sekunden wieder einzusetzen, damit der Datenpunkt…


Energie-Zähler Gerät [ENERGY_COUNTER]

…auf NULL zurück gesetzt wird.

Unmittelbar nach dem Batteriewechsel ist der aktuelle Zählerstand auf dem (Ferraris-)Zähler abzulesen und manuell (z.B. mittels WebMatic) in die Referenz-Systemvariable…


„Strom Referenz Zaehlerstand“, Zahl

…zu schreiben.

Schritt 5: Reset der Zeitraumzähler

Im nächsten Schritt werden alle Zeitraumzähler auf NULL zurückgesetzt, indem das jeweils zugehörige Rücksetzskript einmal ausgeführt wird.

Schritt 6: Aktualisierung der Referenz-Systemvariablen der Zeitraumzähler

Im letzten Schritt müssen nur noch Referenz-Systemvariablen der Zeitraumzähler…


„Strom Referenz Verbrauch seit letzter Ablesung“, Zahl
„Strom Referenz Verbrauch laufendes Kalenderjahr“, Zahl
„Strom Referenz Verbrauch laufender Monat“, Zahl
„Strom Referenz Verbrauch laufende Woche“, Zahl
„Strom Referenz Verbrauch heute“, Zahl

…manuell (z.B. mittels WebMatic) mit den nach folgdendem Schema berechtenen neuen Werten überschrieben werden…


"Strom \quad Referenz \quad Verbrauch \quad Zeitraum" = "Strom \quad Referenz \quad Zaehlerstand" - "Strom \quad Verbrauch \quad Zeitraum"

also z.B. bezogen auf den Tageszähler…


"Strom \quad Referenz \quad Verbrauch \quad heute" = "Strom \quad Referenz \quad Zaehlerstand" - "Strom \quad Verbrauch \quad heute"

Der Wert für „Strom Referenz Zaehlerstand“ ist dabei der in Schritt 4 notierte aktuelle Zählerstand auf dem (Ferraris-)Zähler.

Die Werte für „Strom Verbrauch Zeitraum“ sind den in Schritt 1 notierten Daten (aktuelle Zählerstände, nicht die Werte der Referenz-Systemvariablen) zu entnehmen.

Schritt 7: Aktualisierung der Zeitraumzähler

Mit der nächsten Aktualisierung des Leistungs-Datenpunktes…


Leistung [POWER]

…wird automatisch das Auswerteprogramm getriggert und das neue Auswerteskript abgearbeitet.

Danach sind die Zählerstände wieder aktuell.

 

Bitte beachten...

Die Verwendung meiner Hinweise, Anleitungen, Schaltungen und Software erfolgt auf eigenes Risiko. Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung.
Creative Commons Lizenzvertrag
Copyright © Jens-Peter Stern | SMART WOHNEN by sTeRn AV | smart-wohnen.org