Alles anzeigenHallo in die Runde,
ich habe ein Problem beim Auslesen meines "eBZ D33 2R06 DTA-SMZ1" Stromzaehler.
Zum Auslesen benutze ich einen "BPW40" Fototransistor an einem "Wemos D1 mini" mit einem 10kOhm Pullup Widerstand.
Prinzipiell funktioniert das Auslesen mit folgendem Script prima:
Code Alles anzeigen>D >B =>sensor53 r >M 1 +1,3,s,16,9600,SML 1,77070100010800ff@100000000,Gesamtverbrauch,kWh,Total_in,2 1,77070100100700ff@1,Aktueller Verbrauch,W,Aktual_in,2 #
Der Verbrauch "Aktual_in" wird auch immer korrekt ausgelesen und angezeigt. Beim Gesamtverbrauch "Total_in" kommt es alle 200-300 Auslesevorgaenge zu einzelnen Ausreissern (nach oben und unten)
nach oben:
Code11:51:34 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-06T11:51:34","Uptime":"5T14:23:55","UptimeSec":483835,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":4,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":60,"Signal":-70,"LinkCount":2,"Downtime":"0T00:00:09"}} 11:51:34 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-06T11:51:34","SML":{"Total_in":752.82,"Aktual_in":264.62}} 11:52:34 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-06T11:52:34","Uptime":"5T14:24:55","UptimeSec":483895,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":4,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":62,"Signal":-69,"LinkCount":2,"Downtime":"0T00:00:09"}} 11:52:34 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-06T11:52:34","SML":{"Total_in":1055608171.43,"Aktual_in":261.27}} 11:53:34 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-06T11:53:34","Uptime":"5T14:25:55","UptimeSec":483955,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":4,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":62,"Signal":-69,"LinkCount":2,"Downtime":"0T00:00:09"}} 11:53:34 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-06T11:53:34","SML":{"Total_in":752.83,"Aktual_in":259.37}}
nach unten:
Code13:06:20 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-08T13:06:20","Uptime":"0T20:59:09","UptimeSec":75549,"Heap":24,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":56,"Signal":-72,"LinkCount":1,"Downtime":"0T00:00:03"}} 13:06:20 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-08T13:06:20","SML":{"Total_in":771.60,"Aktual_in":3332.56}} 13:07:20 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-08T13:07:20","Uptime":"0T21:00:09","UptimeSec":75609,"Heap":24,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":56,"Signal":-72,"LinkCount":1,"Downtime":"0T00:00:03"}} 13:07:20 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-08T13:07:20","SML":{"Total_in":0.00,"Aktual_in":3322.00}} 13:08:20 MQT: keller/stromzaehler/STATE = {"Time":"2020-05-08T13:08:20","Uptime":"0T21:01:09","UptimeSec":75669,"Heap":24,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"FFNB-WLAN","BSSId":"E0:28:6D:BB:B9:E6","Channel":1,"RSSI":54,"Signal":-73,"LinkCount":1,"Downtime":"0T00:00:03"}} 13:08:20 MQT: keller/stromzaehler/SENSOR = {"Time":"2020-05-08T13:08:20","SML":{"Total_in":771.72,"Aktual_in":3324.90}}
Da das "Aktual_in" immer funktioniert, gehe ich nicht von einem Problem mit dem Leser aus (ich habe ihn aber auch schon verschiedentlich neu positioniert - immer das Gleiche).
Als "flag"-Attribut im Script habe ich sowohl mit "0", "1" als auch mit "16" getestet. Das Ergebnis aendert sich nicht.
Prinzipiell wuerden die Aussreisser ja nicht stoeren - da ich zur Visualisierung aber "Grafana" benutze, zerschiesst es mir darin die Skalierung, wenn ploetzlich ein Wert 484GWh ist.
Hat jemand eine Idee, was ich noch probieren koennte?
Vielen Dank!
Gruss,
Jan
Mit dem Flag 16 hast du ja schon ein Mittelwert eingestellt. Wenn es dennoch zu so Fehlern kommt, dann scheinen diese über einen längeren Zeitraum zu exisitieren.
Würde also raten, noch einmal nachzuschauen ob dein Transistor gut sitzt, evtl. auch vor Streulicht geschützt ist. Wenn all das nicht hilft nochmal ein wenig mit dem Widerstandwert variiren.