OBIS: Wechsel des Stromzählers

Begonnen von schachti, 14 Juni 2019, 16:34:25

Vorheriges Thema - Nächstes Thema

schachti

Nächste Woche bekomme ich einen neuen Stromzähler (Umstellung auf Zweirichtungszähler wegen Photovoltaik). Der bisherige Zähler (EasyMeter Q3D) ist per OBIS in FHEM eingebunden, der neue sollte ein Elster AS1440 werden und wird dann wohl auch vom Modul 47_OBIS unterstützt werden.

Nun die Frage: Ich habe den bisherigen Zähler sehr aufwändig eingebunden, mit UserReadings, Auswertungen durch 98_statistics etc. Da ich das gerne soweit möglich weiternutzen folgende Idee:
* FHEM vor Zählerwechsel runterfahren.
* Bei Zählerwechsel Stand des alten Zählers notieren.
* Nach Zählerwechsel in fhem.cfg die Definition des Geräts anpassen und das Attribut offset_energy auf den letzten Stand des alten Zählers setzen.
* FHEM starten.

Kann/sollte das so klappen? Weitere Ideen?

KölnSolar

Zitatfhem.cfg die Definition des Geräts anpassen
Du weißt das viele hier das editieren gar nicht mögen ?
ZitatKann/sollte das so klappen?
Ich vermute schon. Aber Du hast dann in FHEM einen Zählerstand, der nicht mehr verifizierbar ist.(außer manuelles rechnen)
ZitatWeitere Ideen?
mit usereading arbeiten: per channel-Attribut das jetzige total-reading umbenennen; ein user-reading anlegen
alterReadingname {ReadingsVal($name,"neuerReadingname",''0") + Zählerstand}mit derzeit Zählerstand = 0; nach dem Wechsel auf abgelesenen Altzählerstand ändern
oder
mit setreading die Statistikwerte einmalig anpassen(nicht so einfach wg. der verschiedenen Perioden(hour, day, month....)
Bitte vor produktiver Umsetzung testen !
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Icinger

Warum
Zitat
FHEM vor Zählerwechsel runterfahren.
Nach Zählerwechsel in fhem.cfg die Definition des Geräts anpassen
?????

Einfach
attr myOBIS disable 1
Dann im laufenden Betrieb die Def ändern und dann halt wieder
attr myOBIS disable 0

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

schachti

Zitat von: KölnSolar am 14 Juni 2019, 20:00:16
Du weißt das viele hier das editieren gar nicht mögen ?

Wusste ich ehrlich gesagt nicht... Kam mir halt in den Sinn, weil ich den Raspberry für den Zählertausch sowieso ausschalten muss, die USV reicht nur 10-20 Minuten, will da kein Risiko eingehen.

Zitat von: KölnSolar am 14 Juni 2019, 20:00:16
Ich vermute schon. Aber Du hast dann in FHEM einen Zählerstand, der nicht mehr verifizierbar ist.(außer manuelles rechnen)mit usereading arbeiten: per channel-Attribut das jetzige total-reading umbenennen; ein user-reading anlegen
alterReadingname {ReadingsVal($name,"neuerReadingname",''0") + Zählerstand}mit derzeit Zählerstand = 0; nach dem Wechsel auf abgelesenen Altzählerstand ändern

Daher der Gedanke mit dem Attribut offset_energy, das schien mir genau das zu tun...

Zitat von: KölnSolar am 14 Juni 2019, 20:00:16
oder
mit setreading die Statistikwerte einmalig anpassen(nicht so einfach wg. der verschiedenen Perioden(hour, day, month....)

Ich traue mich, nach meinem Geständnis bzgl. fhem.cfg, fast gar nicht zu sagen, dass ich das im statefile gemacht hätte...  ;)

schachti

Zitat von: Icinger am 14 Juni 2019, 20:44:25
Warum?????

War halt der Gedanke, da ich den Raspberry sowieso ausschalten muss...

Zitat von: Icinger am 14 Juni 2019, 20:44:25
Einfach
attr myOBIS disable 1
Dann im laufenden Betrieb die Def ändern und dann halt wieder
attr myOBIS disable 0

Da isser ja, der Wald mit den vielen Bäumen... Ist natürlich naheliegend.

Und dann mit offset_energy arbeiten? Oder so wie von Markus vorgeschlagen?

KölnSolar

ZitatEinfach
attr myOBIS disable 1
Wobei das device eh physisch disabled ist, solange der Lesekopf nicht montiert ist.  ;D ;D ;D
ZitatUnd dann mit offset_energy arbeiten? Oder so wie von Markus vorgeschlagen?
Viele Wege führen nach Rom. Entscheiden musst Du.  ;)
ZitatDaher der Gedanke mit dem Attribut offset_energy, das schien mir genau das zu tun...
Du hast vermutlich recht und es ist der einfachere Weg.  :-[ :'(
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schachti

Ich werde es einfach probieren und anschließend berichten. :)