NEWS
Anleitung: Modbus Einrichtung für Victron PV Anlagen !
-
Das sind "nur" die Werte vom Stromzähler.
Diese zeigen mir aber doch nicht den Gesamtverbrauch (welcher Berechnet werden muss), sondern nur den tatsächlichen Verbrauch bzw. wie viel Eingespeist wurde.Ich berechne dieses nun einfach über diese Werte.
@derauge sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:@e-i-k-e
Die bekommst die Werte pro Leitung
-
@e-i-k-e Ok, krass. Ich dachte, alle Stromzähler müssen dem Victron-System auch Zählerstände melden. So machen es ja auch alle "Fake-Zähler" via dbus.
Naja, daher nimmt dann VRM den Tagesverbrauch.
Aber wäre nicht auch eine Abfrage vom VRM via API für Dich zielführend?
-
@oxident sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Aber wäre nicht auch eine Abfrage vom VRM via API für Dich zielführend?
Ist das tatsächlich möglich?
-
@e-i-k-e sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Diese zeigen mir aber doch nicht den Gesamtverbrauch (
nein, aber die ersten beiden gewünschten Werte.
@e-i-k-e sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
den Gesamtverbrauch (welcher Berechnet werden muss)
Natürlich muss der berechnet werden.
Aber dazu brauchst du ja duese Werte (und die Produktion sowie die (Ent-)Ladung der Batterie) -
@e-i-k-e said in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
@oxident sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Aber wäre nicht auch eine Abfrage vom VRM via API für Dich zielführend?
Ist das tatsächlich möglich?
Na klar. Ich hatte es damals verwendet, um den täglichen Speicherbezug auszulesen. Mache ich aber mittlerweile mit SourceAnalytix.
Du könntest folgendes Quick&Dirty-Skript als Start verwenden:
var fromBattery; var toBattery; function getVRMStats() { var d = new Date(); d.setHours(0,0,0,0); fromBattery = 0.0; toBattery = 0.0; //console.log(d.getTime()); var request = require('request'); var options; options = { url: 'https://vrmapi.victronenergy.com/v2/installations/YYYYY/stats?start=' + d.getTime()/1000 + '&type=kwh', method: 'GET', json: true, timeout: 10000, headers: { 'x-authorization': 'Token XXXXX', } }; //log(JSON.stringify(options)); request(options,function (error, response, body){ log(JSON.stringify(response)); if((body.success)==true) { //log(body.totals.Gb); //if(body.totals.Bg) toBattery += body.totals.Bg; if(body.totals.Gb) toBattery += body.totals.Gb; if(body.totals.Pb) toBattery += body.totals.Pb; if(body.totals.Bg) fromBattery += body.totals.Bg; // Battery -> Grid if(body.totals.Bc) fromBattery += body.totals.Bc; // Battery -> Consume } else { // Login-Fehler log("Login-Fehler in updateToken(): " + response.body); } }); } getVRMStats(); schedule("*/5 * * * *", function () { getVRMStats(); });
Anstelle des XXXXX musst Du einen Token einsetzen. Den kannst Du im VRM-Portal auf oberster Ebene (also da, wo Du Deine Installation auswählen kannst) unter Preferences / Integration / Token generieren. Dann noch in der URL das YYYYY durch Deine Installations-ID ersetzen (findest Du, wenn Du im VRM dann Deine Installation ausgewählt hast und mal in der Adressleiste schaust).
Tiefergehende Details findest Du unter https://vrm-api-docs.victronenergy.com
-
Früher gabs die Möglichkeit die Adapterkonfiguration per .csv herunterzuladen und in veränderter Form wieder in den Adapter zu laden.
Existiert diese Variante noch irgendwo/irgendwie (habe heute den Modbusadapter auf 6.1.0 upgegraded)?Edit: Ich hab´s gefunden: Man muss es als "TSV" anzeigen lassen, dann hat man alle Optionen.
Edit 2: Für alle die nicht wissen wie hier vorzugehen ist:
- erst den Button mit den beiden Pfeilen anklicken
- im neu aufgehenden Fenster auf "IN DIE ZWISCHENABLAGE KOPIEREN" klicken
- in Libreoffice Calc in ein leeres Spredsheet folgend einfügen:
dann folgendes auswählen:
und dann (wichtig dabei ist, dass als Feldtrenner ausschließlich "Tabulator" ausgewählt wird):
Hernach kann man die Daten nach Herzenslust frisieren.
Um die geänderten Daten wieder zurückzuspielen wird so vorgegangen:- Den Datenbereich um den es geht im Spreadsheet markieren und kopieren
- Wechsel zur Import-Maske des Modbusadapters
- Nun alles rauslöschen was hinterher nicht importiert werden soll (am besten komplett leer machen)
- Paste in die leere Maske
- Auf "IMPORT" klicken
-
@myzerat
Wie sehen deine Einstellungen hier aus ? -
Kannst du den Flow mal schicken ich bin nciht so fit in Node Red
-
@stobli sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Kannst du den Flow mal schicken ich bin nciht so fit in Node Red
Der Flow läuft auf dem Cerbo, nicht in ioBroker
-
@homoran Hallo
Ich habe bei mir folgenden Fall:Der Cerbo und die MPPT haben die identische ID siehe Bild.
Wenn ich dann auf diese Datenpunkte zugreifen will bekomme ich eine Fehlermeldung.
Vom Cebro gibt es diese Meldung:
Kann mir da jemand sagen wo ich was falsch mache?.
Danke -
@lars148 hast du ein update für den Cerbo verfügbar?
welche version läuft da?für die microfilme habe ich kein Lesegerät
-
@lars148 Also bei mir musste ich im Modbus-Adapter einstellen, dass immer nur 1 Wert auf einmal abgefragt wird. Sonst bekomme ich den gleichen Fehler.
Bei mir klappt es also nur, wenn folgendes eingestellt ist:
Max Leseanforderungslänge: jeweils 1
-
@homoran Version 3.3 hat der Cerbo
-
@lars148 sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
@homoran Version 3.3 hat der Cerbo
da müssten die Mappings schon repariert sein. vorher gab es Mappings auf IDs über 255, was nicht funktionierte.
-
@oxident Hallo
Habe ich auch geändert. Klappt nicht mit nur einem.
Die beiden Einträge und schon Fehler. Nehme ich nur die 843 Adresse geht es.
Versucht einen zweiten ModBus zu betreiben.
geht überhaupt nicht.
Grr ist schon ärgerlich.
Welche IP nehmt man eigentlich den die IP in Cebro ist eine andere als der Remotezugriff.
Habe die aus dem Cebro >Ethernet >Lokale IP Adresse verknüpfen richtig? -
@lars148 wieso gibst du die 785 bei ID227 ein?
dein solarcharger läuft doch über ID 100, oder doch nicht?Wie ist der 450/100 angebunden?
-
@homoran Naja weil ich mich vertan hab. Ja und angeklemmt ist der MPPT VE.can.
Ausprobiert und es gibt Werte. Naja bißchen blöd gelaufen.
Danke -
@lars148 sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Ausprobiert und es gibt Werte.
bei
@lars148 sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
angeklemmt ist der MPPT VE.can.
ist die 100 auch richtig
die 227 wäre mit vedirect ok gewesen.
Aber dafür ist ja die Liste unter verfügbare Dienste
Aber schön dass es jetzt ohne Fehler läuft
-
Hi Leute,
Ich hab schon seit längerem ein Problem mit dem Modbus adapter in Bezug auf den Cerbo. In relativ unregelmäßigen Intervallen killt der Adapter meinen kompletten Raspberry Pi für ein paar Sekunden bis zu ein paar Minuten und alle möglichen anderen Instanzen beschweren sich über diverse Verbindungs- und Timeout-Probleme. Sobald ich die Instanz deaktiviere, läuft alles Problemfrei.
Das ganze beginnt immer mit folgender Fehlermeldung:
2024-05-29 00:09:17.795 - error: modbus.0 (2948) Socket Error 2024-05-29 00:09:17.795 - error: modbus.0 (2948) Client in error state. 2024-05-29 00:09:17.795 - warn: modbus.0 (2948) On error: {"errno":-113,"code":"EHOSTUNREACH","syscall":"connect","address":"192.168.178.147","port":502}
Ich hab schon mit allen möglichen Optionen der Intervalle, Timeouts, usw rum gespielt, bekomme aber keine Verbesserung hin.
Hier meine Einstellungen im Adapter, die ich gerade noch auf die hier geposteten umgestellt habe:
Kann mir hier evtl jemand helfen oder andere Lösungsansätze empfehlen?
-
@wunderlag sagte in Anleitung: Modbus Einrichtung für Victron PV Anlagen !:
Fehlermeldung
bitte als Text in code-tags posten.
und auch für die schwarzen 4k mikrofiches eine geeignetere Auflösung wählen.
so
kann ich das nicht entziffern