NEWS
[SourceAnalytix 0.4.8-Final] Released !
-
Danke dir. Ich habe mir das Script eingebaut und entsprechend angepasst.
Ich lasse es mal laufen und beobachte was bei einem erneuten DeviceReset vom Shelly passiert.
Den Tip mit dem Heraufsetzen vom DeviceReset-Wert habe ich mir in meiner Testumgebung mal nachgebaut. Eventuell hilft das auch noch.
Ist auf jeden Fall unschön wenn die Funktion so lange einwandfrei klappt und dann alle Auswertungen durcheinander kommen weil das Teil so rumzickt....Gruss
Stefan -
bei mir werden die Tageswerte nicht auf 0 gesetzt. Somit für mich der Adapter unbrauchbar...
Anbei ein Log. Kann jemand etwas damit anfangen?2023-03-31 07:27:31.221 - info: sourceanalytix.0 (13602) starting. Version 0.4.14 in /opt/iobroker/node_modules/iobroker.sourceanalytix, node: v16.19.1, js-controller: 4.0.24 2023-03-31 07:27:31.260 - info: sourceanalytix.0 (13602) Welcome to SourceAnalytix, making things ready ... 2023-03-31 07:27:31.340 - info: sourceanalytix.0 (13602) Found 3 SourceAnalytix enabled states 2023-03-31 07:27:31.342 - info: sourceanalytix.0 (13602) Initialising (1 of 3) "fritzdect.0.DECT_116570570860.energy" 2023-03-31 07:27:31.397 - error: sourceanalytix.0 (13602) No cost type defined for fritzdect.0.DECT_116570570860.energy, please Select Type of calculation at state setting 2023-03-31 07:27:31.398 - error: sourceanalytix.0 (13602) Cannot handle calculations for fritzdect.0.DECT_116570570860.energy, check log messages and adjust settings! 2023-03-31 07:27:31.400 - error: sourceanalytix.0 (13602) Initialization of fritzdect.0.DECT_116570570860.energy failed, check warn messages ! 2023-03-31 07:27:31.401 - info: sourceanalytix.0 (13602) Initialising (2 of 3) "shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy" 2023-03-31 07:27:31.454 - error: sourceanalytix.0 (13602) No cost type defined for shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy, please Select Type of calculation at state setting 2023-03-31 07:27:31.455 - error: sourceanalytix.0 (13602) Cannot handle calculations for shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy, check log messages and adjust settings! 2023-03-31 07:27:31.456 - error: sourceanalytix.0 (13602) Initialization of shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy failed, check warn messages ! 2023-03-31 07:27:31.457 - info: sourceanalytix.0 (13602) Initialising (3 of 3) "0_userdata.0.PC-Server" 2023-03-31 07:27:32.844 - info: sourceanalytix.0 (13602) Initialization of 0_userdata.0.PC-Server successfully 2023-03-31 07:27:32.858 - warn: sourceanalytix.0 (13602) Cannot handle calculations for 2 of 3 enabled states, check error messages
-
von welchem der drei Werte aus dem Log sprichst du?
hast du die Fehlermeldungen schon behoben die im Log stehen?
2023-03-31 07:27:31.397 - error: sourceanalytix.0 (13602) No cost type defined for fritzdect.0.DECT_116570570860.energy, please Select Type of calculation at state setting 2023-03-31 07:27:31.398 - error: sourceanalytix.0 (13602) Cannot handle calculations for fritzdect.0.DECT_116570570860.energy, check log messages and adjust settings! 2023-03-31 07:27:31.400 - error: sourceanalytix.0 (13602) Initialization of fritzdect.0.DECT_116570570860.energy failed, check warn messages ! 2023-03-31 07:27:31.401 - info: sourceanalytix.0 (13602) Initialising (2 of 3) "shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy" 2023-03-31 07:27:31.454 - error: sourceanalytix.0 (13602) No cost type defined for shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy, please Select Type of calculation at state setting 2023-03-31 07:27:31.455 - error: sourceanalytix.0 (13602) Cannot handle calculations for shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy, check log messages and adjust settings! 2023-03-31 07:27:31.456 - error: sourceanalytix.0 (13602) Initialization of shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy failed, check warn messages ! 2
zusätzlich solltest du deine Einstellungen von den Datenpunkten die du berechnen möchtest zeigen.
-
danke für dein Interesse...
zwei Werte aus dem Log...Wenn ich den Adapter Neu-starte, werden die Tageswerte wieder auf 0 gesetzt. Dies sollte aber doch gegen 24.00 Uhr doch selbständig passieren oder?
1 - ist ein Shelly, womit ich mein Solar-Ertrag in Wh pro Tag errechnen möchte.
{ "type": "state", "common": { "name": "Energy", "type": "number", "role": "state", "read": true, "write": false, "def": 0, "unit": "Wh", "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": 0, "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": 1000 }, "sourceanalytix.0": { "enabled": true, "selectedUnit": "Detect automatically", "deviceResetLogicEnabled": true, "threshold": 1, "start_day": 0, "start_week": 0, "start_month": 0, "start_quarter": 0, "start_year": 0 } } }, "native": {}, "_id": "shelly.0.shellyplus1pm#48551999ccc0#1.Relay0.Energy", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1680242526118 }
2 - Fritzdeck-Steckdose, hiermit wird auch noch der Etrag in Wh überwacht.
{ "type": "state", "common": { "name": "Energy consumption", "type": "number", "min": 0, "max": 999999999, "unit": "Wh", "read": true, "write": false, "role": "state", "desc": "Energy consumption", "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": 0, "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": 1000 }, "sourceanalytix.0": { "enabled": true, "selectedUnit": "Detect automatically", "deviceResetLogicEnabled": true, "threshold": 1, "start_day": 0, "start_week": 0, "start_month": 0, "start_quarter": 0, "start_year": 0 } } }, "native": {}, "_id": "fritzdect.0.DECT_116570570860.energy", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1680242639929 }
-
in der ersten Zeile solltest du ElectricityDay und Wh auswählen. Dann sollte "Verbrauch berechnen" ausgewählt werden.
-
@tt-tom
sehr geil, vor lauter Bäume den Wald nicht gefunden .... -
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Danke dir. Ich habe mir das Script eingebaut und entsprechend angepasst.
Ich lasse es mal laufen und beobachte was bei einem erneuten DeviceReset vom Shelly passiert.
Den Tip mit dem Heraufsetzen vom DeviceReset-Wert habe ich mir in meiner Testumgebung mal nachgebaut. Eventuell hilft das auch noch.
Ist auf jeden Fall unschön wenn die Funktion so lange einwandfrei klappt und dann alle Auswertungen durcheinander kommen weil das Teil so rumzickt....Gruss
StefanSo, nun eine Woche gewartet und auf eine einwandfreie Funktion gehofft..... Nichts da, der Shelly macht wieder einen DeviceReset und der Zählerstand im Sourceanalytix geht durch die Decke..... langsam verzweifle ich daran..... Bei mir verdoppelt sich bei jedem DeviceReset der Wert.
Hier mal der Datenpunkt:{ "type": "state", "common": { "name": "Total consumed energy", "type": "number", "role": "value.power.consumption", "read": true, "write": false, "def": 0, "unit": "Wh", "custom": { "sourceanalytix.0": { "enabled": true, "alias": "Shelly_Total", "selectedPrice": "ElectricityDay", "selectedUnit": "Wh", "costs": true, "consumption": true, "meter_values": true, "start_day": 39268.0819, "start_week": 33514.5373, "start_month": 10911.303, "start_quarter": 5054.405, "start_year": 5054.405, "valueAtDeviceReset": 33525.9237, "valueAtDeviceInit": null, "cumulativeValue": 39268.0819, "deviceResetLogicEnabled": true, "threshold": 100000, "basicRate": false
Das neue Script hat auch alles mitgeloggt und hat jetzt auch falsche Werte drin......
Ich habe jetzt noch den Schwellenwert für einen DeviceReset auf 100000 hochgestellt.
Ich weiss echt nicht warum jede Woche mindestens ein Reset erkannt wird.
Bin ich der einzige mit so einem zickigen 3EM?Gruss Stefan
-
@stef1981
Setz die Schwelle Mal runter...
Hab sie glaube ich bei 0,001 und seitdem ist Ruhe. Meine Shellies stammen alle scheinbar aus einer sehr grenzwertigen Charge. Sortiere sie daher wo es geht aus. -
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Das neue Script hat auch alles mitgeloggt und hat jetzt auch falsche Werte drin......
wie kann das script falsch Werte haben, das addiert doch nur
-
Ich habe den Wert mal auf 0.001 angepasst. Mal schauen wie es sich verhält.
Es scheint als wäre der DeviceReset erst seit dem letzten Firmware-Upgrade auf dem Shelly, aber dafür schön regelmässig einmal die Woche.........Was hast du als Ersatz für den 3EM im Einsatz??
Gruss
Stefan -
@crunchip sagte in [SourceAnalytix 0.4.8-Final] Released !:
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Das neue Script hat auch alles mitgeloggt und hat jetzt auch falsche Werte drin......
wie kann das script falsch Werte haben, das addiert doch nur
Ja, das Script addiert nur, leider auf die falschen Werte die vom Shelly kommen.
Wenn der Shelly kurzzeitig den doppelten Wert liefert wird der natürlich auch so übernommen im Script.Allerdings sind die falschen Werte ja nur im Sourceanalytix, im Shelly selbst habe ich ja die richtigen Werte drin:
Aus dem Shelly:
Der Datenpunkt für Sourceanalytix:
{ "type": "state", "common": { "name": "Total consumed energy", "type": "number", "role": "value.power.consumption", "read": true, "write": false, "def": 0, "unit": "Wh", "custom": { "sourceanalytix.0": { "enabled": true, "alias": "Shelly_Total", "selectedPrice": "ElectricityDay", "selectedUnit": "Wh", "costs": true, "consumption": true, "meter_values": true, "start_day": 39284.0136, "start_week": 33514.5373, "start_month": 39277.5561, "start_quarter": 39277.5561, "start_year": 5054.405, "valueAtDeviceReset": 33525.9237, "valueAtDeviceInit": null, "cumulativeValue": 39284.0136, "deviceResetLogicEnabled": true, "threshold": 0.001, "basicRate": false
Und der Datenpunkt von Sourceanalytix:
Das heisst, der Wert innerhalb von Sourceanalytix hat sich während den letzten DeviceResets immer wieder verdoppelt, was ich aber nicht verstehe....
Hilft es eventuell wenn ich die DeviceReset-Funktion abschalte?
Bei mir wir der Wert bei einem DeviceReset verdoppelt und nicht auf 0 gesetzt....Gruss
Stefan -
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Wenn der Shelly kurzzeitig den doppelten Wert liefert wird der natürlich auch so übernommen im Script.
das tut er doch gar nicht, er setzt ich zurück auf null
was sich verdoppelt ist
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
der Wert innerhalb von Sourceanalytix hat sich während den letzten DeviceResets immer wieder verdoppelt
das ist das aktuelle Problem vom Adapter
-
@crunchip sagte in [SourceAnalytix 0.4.8-Final] Released !:
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Wenn der Shelly kurzzeitig den doppelten Wert liefert wird der natürlich auch so übernommen im Script.
das tut er doch gar nicht, er setzt ich zurück auf null
Dann verstehe ich aber die Sprünge in der Influx nicht:
Das sind genau die Zeitpunkte bei denen ein DeviceReset aufgezeichnet wurde.was sich verdoppelt ist
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
der Wert innerhalb von Sourceanalytix hat sich während den letzten DeviceResets immer wieder verdoppelt
das ist das aktuelle Problem vom Adapter
Oder verstehe ich hier etwas grundlegendes vom Adapter nicht?
Ich brüte da mal noch ein wenig herum und versuche das zu verstehen (nochmaliges Lesen der Anleitung vom Adapter), aber vermutlich sehe ich den Wald vor lauter Bäumen nicht, bzw. die richtigen Zahlen zwischen den vielen DevicesResets nicht mehr.....
Danke euch für die Unterstützung
Gruss
Stefan -
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Dann verstehe ich aber die Sprünge in der Influx nicht:
und welchen DP loggst du da?
-
@crunchip
Ich logge damit den Datenpunkt "Energie" mit dem Resultat aus dem Script welches du mir empfohlen hast.var energie; energie = getState("0_userdata.0.Energie.Zählerstand.Energie").val; on({id: [].concat(['shelly.0.SHEM-3#8CAAB56194DB#1.Total.ConsumedPower']), change: "gt"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; energie = (typeof energie == 'number' ? energie : 0) + (parseFloat((obj.state ? obj.state.val : "")) - (obj.oldState ? obj.oldState.val : "")); setState("0_userdata.0.Energie.Zählerstand.Energie"/*Energie*/, energie, true); });
-
@stef1981 und das sollte auch zuverlässig funktionieren, wenn
nach Stromausfall oder shelly Update der Zähler wieder bei 0 beginntbei dir scheint dann wohl ein anderes Problem mit deinem shelly vorzuliegen
@stef1981 sagte in [SourceAnalytix 0.4.8-Final] Released !:
Wenn der Shelly kurzzeitig den doppelten Wert liefert
hab ich so auch noch nie gehört
-
@crunchip
Dann werde ich das nochmals genau prüfen und einen solchen DeviceReset möglichst genau analysieren und auch auf dem Shelly selbst mitloggen.Danke für deine Hilfe und die wertvollen Inputs.
Gruss und einen guten Start in die kurze Woche
Stefan -
Ich hatte bzgl. der Shelly Device-Resets hier:
https://github.com/DrozmotiX/ioBroker.sourceanalytix/issues/794
schon mein Leid geklagt.@Dutchman hatte ja im Januar angekündigt, daß es bald eine Sourceanalytics V 0.5.0 geben solle - keine Ahnung, wie da der Stand der Dinge ist und ob damit die Problematik mit den Shelly.Device-Resets evtl. korrekt abgefangen wird, bzw. ob Sourceanalytics das überhaupt kann.
@stef1981
Ich hatte zwar keine Verdoppelung der Werte, wie bei Dir, bei mir hat der Shelly nach Stomausfall beim Datenpunkt "Energy" einfach wieder mit 0 angefangen zu zählen, was natürlich auch die Statistiken durcheinander gebracht hat.@crunchip
Du hast Dich hier ja redlich bemüht, mehrfach zu erklären, wie man die falschen Werte nach einem Device-Reset wieder gerade ziehen kann, aber trotz Editieren der RAW-, Cumulative-Werte, etc., ist mir das nicht gelungen.
Fazit: Langzeit-Statistiken für die TonneInzwischen bin ich am Überlegen, ob ich u.a. den Shelly-Plug ( ohne S), der mein Balkonkraftwerk monitored, gegen etwas anderes auszutauschen. Ich muß mich mal schlau lesen, ob man den evtl. auf Tasmota umflashen kann, denn meine Tasmota- (bzw. Sonoff-) Devices machen keine Probleme nach einem Stromausfall.
Gruß
Jörg -
@joergeli
Das selbe passierte bei mir kontinuierlich nicht nur mit Shellys sondern auch mit Fritz Dect Dosen. Kurz Spannung deaktiviert oder ´rausgezogen und sowie der erste Messewert kam, wurde der aktuelle Zählerstand verdoppelt.
Ich habe es für mich gelöst, in dem ich alles auf Messung der Datenpunkte "Power" (W) gelegt habe und nicht mehr auf "Energy" (kWh). Bedeutet, Zählerstand wird aus Leistungsmessung ermittelt.
Das funktioniert ganz hervorragend und da ich trotz allem noch den DP "Energy" mit auswerten lasse, kann ich die Zählerwerte vergleichen.
Die Abweichung ist marginal.Ah und da fällt mir noch etwas ein. Jemand schrieb, dass sein Zähler für das BKW um Mitternacht nicht resetet wird in Sourceanalytix. Ist bei mir ebenso, er setzt auf Null, wenn am Morgen der erste Sonnenstrahl aufs Modul fällt.
Ich habe ein Miniscript, dass um 00.01 Uhr einfach für eine Sekunde 0,1 W auf den Datenpunkt des Zählers schreibt. Damit wird SA resetet. -
@joergeli sagte in [SourceAnalytix 0.4.8-Final] Released !:
Du hast Dich hier ja redlich bemüht, mehrfach zu erklären, wie man die falschen Werte nach einem Device-Reset wieder gerade ziehen kann, aber trotz Editieren der RAW-, Cumulative-Werte, etc., ist mir das nicht gelungen
allerdings, aber ich habe ein script das mir mitteilt, sobald ein device reset erkannt wird(passiert mir nämlich auch bei dem ein oder andere tasmato) und zum anderen ein script das in einem DP den Zähler immer aufaddiert, somit es egal ist wann und wie oft sich das jeweilige Gerät zurücksetzt.
@joergeli sagte in [SourceAnalytix 0.4.8-Final] Released !:
mein Balkonkraftwerk monitored, gegen etwas anderes auszutauschen
hatte ich zu Beginn mit nem shelly, da ich einen Hoymiles Wechselrichter nutze, lese ich das nun mit ahoydtu bzw opendtu aus direkt vom Wechselrichter aus.
@rumpeltec sagte in [SourceAnalytix 0.4.8-Final] Released !:
Ich habe es für mich gelöst, in dem ich alles auf Messung der Datenpunkte "Power" (W) gelegt habe und nicht mehr auf "Energy" (kWh). Bedeutet, Zählerstand wird aus Leistungsmessung ermittelt.
@rumpeltec sagte in [SourceAnalytix 0.4.8-Final] Released !:
Die Abweichung ist marginal.
das glaube ich eher nicht, bei stark schwankender Leistung ergibt das auf Dauer eher einen Schätzwert
@rumpeltec sagte in [SourceAnalytix 0.4.8-Final] Released !:
Jemand schrieb, dass sein Zähler für das BKW um Mitternacht nicht resetet wird in Sourceanalytix. Ist bei mir ebenso, er setzt auf Null, wenn am Morgen der erste Sonnenstrahl aufs Modul fällt.
Ich habe ein Miniscript, dass um 00.01 Uhr einfach für eine Sekunde 0,1 W auf den Datenpunkt des Zählers schreibt. Damit wird SA resetet.logisch, liegt aber nicht am BKW sondern daran, das SA erst rechnet wenn sich der Zählerwert ändert.
Wenn du z.b. ein Gerät mit SA loggst, welches nur hin und wieder Strom verbraucht, passiert das immer, dass die Werte entsprechend im Objektbaum erst geschrieben werden, wenn das Gerät etwas verbraucht hat.