Möglicher Bug bei Virtual AC Load / VRM Advanced

Ich verwende einen Virtual AC Load (node-red-contrib-victron 1.6.64), der die Werte eines SDM630 per Node-RED übernimmt.

Die an den victron-virtual-Node gesendeten Werte sind korrekt. Auch die D-Bus-Werte unter Einstellungen → Erweitert stimmen.

Beispiel:

  • /Ac/Energy/Forward = 705,18 kWh
  • Summe L1 + L2 + L3 = 705,18 kWh

Auch die Remote Console zeigt den korrekten Wert an.

Nur in VRM → Erweitert wird ein deutlich zu hoher Energiezähler angezeigt bei “Energie vom Netz”

So sind die Statistiken im VRM fehlerhaft, heute 11Uhr sind 700Kwh verbrauch dazugekommen.

Dabei ist mir Folgendes aufgefallen:
Der Wert aus /Ac/Energy/Forward wird in unregelmäßigen Abständen mehrfach auf den bereits angezeigten Wert aufaddiert, obwohl sich der D-Bus-Wert selbst nicht ändert. Dadurch wächst der in VRM angezeigte Gesamtwert kontinuierlich, während der eigentliche Zähler konstant bleibt.

Anbei:

  1. Payload zum victron-virtual-Node

  2. Screenshot der Remote Console (korrekt)

  3. Screenshot von VRM → Erweitert (falscher Wert)

Heute Abend oder Morgen steht dort dann was mit 1400kwh.

Hat jemand dieses Verhalten bereits beobachtet oder eine Idee, wodurch die Mehrfachaddition des Forward-Wertes verursacht werden könnte?

Gruss SRS

Ich verwende Venus OS Large v3.75. Die installierte Version von @victronenergy/node-red-contrib-victron ist weiterhin 1.6.64:

cat /usr/lib/node_modules/@victronenergy/node-red-contrib-victron/package.json | grep version
"version": "1.6.64"

In einem anderen Thread wurde erwähnt, dass der Fix in 1.7.11 enthalten sein soll. Ist dieser Fix bereits Bestandteil von Venus OS v3.75 oder betrifft er nur den npm-Stand?

Bekomme ich das im Beta Kanal?

Deaktiviere beim ACLoad das “Mit Default Werten Starten”. Das erzeugt sonst immer eine “0” auf dem Bus, wenn du die node deployst und führt zu einem “reset” des delta_kwh scripts, und sobald du die 700 kWh reinschreibst errechnet dieses sofort 700 kWh Verbrauch.

Danke dognose, das hatte ich bereits versucht.

Beim ersten Deploy kommt dann der Hohe Wert einmal rein. Das wäre nicht das Problem, dies passiert aber immer wenn ich innerhalb einer Stunden etwas in einem anderem Flow ändere auch.

Einmal konfiguriert kommen die Werte sauber rein. Ich darf dann aber nichts mehr im Node Red anpacken.

hmm, habs eben bei mir getestet, wenn ich “Init with defaults” rausnehme, dann bleiben die Zähler auf None, bis ich einen Wert setze Mit “Init with defaults” steht zu begin direkt eine 0 drin.:

Vielleicht ein bug in der version des victron-contrib packets deiner venus version?

Woher bekommst du die Werte? MQTT? Manchmal ist auch eine “Retained 0” auf dem Topic der Auslöser für dieses Verhalten. Es schaded in jedem Fall nicht, 0en der Quelle immer rauszufiltern, bevor du den Wert an den AcLoad weitergibst.

Ich mach da immer davor eine function-node mit

if (msg.payload > 0){
  return msg;
}

weil einfach “egal”, was da rein kommt und woher ggf. mal ein empty string, none, null oder sonst was zu einer “0” führt - will ich nicht in meinen Zählern haben :stuck_out_tongue: