NEWS
Blockly schreibt "0", finde Fehler nicht
-
Hallo zusammen,
mein Datenpunkt modbus.1.inputRegisters.30513_Total_yield vom SMA-PV-Wechselrichter soll eigentlich den Zählerstand der erzeugten kWh fortschreiben. Leider wird der Zählerstand um Mitternacht vom Modbus-Adapter auf "0" gesetzt und zeigt erst wieder einen korrekten Zählerstand an, wenn die PV-Anlage wieder produziert:
Um dies zu umgehen, habe ich mir einen eigenen Datenpunkt angelegt, in den ich die Werte nur schreiben möchte, wenn diese >0 sind.
Hier mein blockly dazu:
Leider werden trotzdem "0"-Werte in meinen neuen Datenpunkt geschrieben:
Habe es auch schon so versucht, jedoch ohne Erfolg:
Kann mir jemand sagen, wo mein Fehler liegt?
Besten Dank.
onkel-ede -
@onkel-ede sagte in Blockly schreibt "0", finde Fehler nicht:
Leider werden trotzdem "0"-Werte in meinen neuen Datenpunkt geschrieben:
Seltsamerweise ja immer um 0:00:00
Das ist vielleicht ein Rundungsproblem.
0.001 ist auch größer 0, gerundet jedoch 0
-
@onkel-ede sagte:
Leider werden trotzdem "0"-Werte in meinen neuen Datenpunkt geschrieben:
Versuche es mal so:
-
@paul53 sagte in Blockly schreibt "0", finde Fehler nicht:
@onkel-ede sagte:
Leider werden trotzdem "0"-Werte in meinen neuen Datenpunkt geschrieben:
Versuche es mal so:
Habe ich leider schon erfolglos probiert.
-
@onkel-ede Dann aktiviere mal in History
speichere auch Quelle von
. Dann kannst du sehen wer die 0 da reinschreibt.
0:00:00 kommt mir sehr seltsam vor -
@Homoran sagte in Blockly schreibt "0", finde Fehler nicht:
@onkel-ede Dann aktiviere mal in History
speichere auch Quelle von
. Dann kannst du sehen wer die 0 da reinschreibt.
0:00:00 kommt mir sehr seltsam vorSo, habe ich angepasst. Interessant wir der Eintrag ja leider erst um Mitternacht.
Am Datentyp oder den anderen Einstellungen im Datenpunkt kann es wohl nicht liegen?
{ "_id": "modbus.1.inputRegisters.30513_Total_yield", "type": "state", "common": { "name": "PV-Leistung-Total", "role": "value", "type": "number", "read": true, "write": false, "def": 0, "unit": "kWh", "custom": { "history.0": { "enabled": true, "changesOnly": true, "debounce": "1000", "maxLength": "960", "retention": "31536000", "changesRelogInterval": 0, "changesMinDelta": 0, "aliasId": "" }, "sql.0": { "enabled": true, "changesOnly": true, "debounce": "1000", "retention": "31536000", "changesRelogInterval": 0, "changesMinDelta": 0, "storageType": "", "aliasId": "" }, "statistics.0": { "enabled": true, "logName": "PV-Leistung-Total", "count": false, "sumCount": false, "timeCount": false, "fiveMin": false, "groupFactor": "", "impUnit": "", "impUnitPerImpulse": "", "sumIgnoreMinus": true, "sumDelta": false, "avg": false, "sumGroup": "" }, "sourceanalytix.0": { "enabled": true, "alias": "", "state_type": "kWh_consumption", "state_unit": "automatically", "costs": false, "consumption": true, "meter_values": true, "start_day": 38868.25, "start_week": 25874.55, "start_month": 6114.93, "start_quarter": 5097.82, "start_year": 2862.71, "selectedPrice": "ElectricityDay", "selectedUnit": "automatisch", "currentValue": 38868.25, "valueAtDeviceReset": 38868.25 } } }, "native": { "regType": "inputRegs", "address": 30513, "deviceId": 3, "type": "uint64be", "len": 4, "offset": 0, "factor": 0.001 }, "from": "system.adapter.sourceanalytix.0", "ts": 1601416800847, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "user": "system.user.admin" }
-
@onkel-ede sagte:
Am Datentyp oder den anderen Einstellungen im Datenpunkt kann es wohl nicht liegen?
Nein, eher nicht. Lediglich der Name ist nicht korrekt, denn es handelt sich um einen Energie-Wert und nicht um eine Leistung.
-
@Homoran sagte in Blockly schreibt "0", finde Fehler nicht:
@onkel-ede Dann aktiviere mal in History
speichere auch Quelle von
. Dann kannst du sehen wer die 0 da reinschreibt.
0:00:00 kommt mir sehr seltsam vorDanke für den Tip mit der Quelle.
Die "0"-Werte werden von sourceanalytix geschrieben. Das blockly-script funktioniert also sauber.
Nachdem ich sourceanalytix im ursprünglichen Datenpunkt deaktiviert habe, kommen dort auch keine "0"-Werte mehr:
Beim Datenpunkt, in den das blockly-script schreibt, tauchen um Mitternacht wieder die "0"-Werte auf.
Dort ist sourceanalytix aktiv.
@Dutchman Kannst Du mir hier helfen?
-
Ich sehe gerade, der Bug ist bekannt:
https://github.com/iobroker-community-adapters/ioBroker.sourceanalytix/issues/191 -
@onkel-ede sagte in Blockly schreibt "0", finde Fehler nicht:
Die "0"-Werte werden von sourceanalytix geschrieben. Das blockly-script funktioniert also sauber.
Nachdem ich sourceanalytix im ursprünglichen Datenpunkt deaktiviert habe, kommen dort auch keine "0"-Werte mehr:wie im SA adapter genannt ist die ein bug im JS-controller und man muss den default wert entfernen damit dies nicht passiert.