NEWS
Werte in influxDB schreiben funktioniert nicht
-
Hallo zusammen,
ich bekomme per Modbus-Adapter Werte aus dem Sungrow SH10RT ausgelesen.
Jetzt möchte ich diese Werte in eine influx DB schreiben lassen.
Dazu habe ich den entsprechenden Adapter installiert.
Die neue influxDB iobroker wurde auch angelegt. Aber dort steht nichts drin.Frage:
Wie bzw. was muss ich noch wo einstellen, damit die ausgelesen Werte auch wirklich in die DB geschrieben werden?Danke vorab für Eure Unterstützung.
Gruß Hartmut -
Ich muss unter Objekte bei jedem einzelnen Register, das ich in die Influx DB geschrieben haben möchte das Häckchen "aktiviert" setzen?
Das ist ja durchaus eine etwas mühsame Aktion.
Ich gehe mal davon aus, dass das bei jedem, der einen Sungrow WR hat ziemlich gleich aussehen dürfte. Kann man diese Einstellung nicht irgendwie importieren?
Anstatt jedes einzelne Register manuell für die Archivierung zu aktivieren? -
btw ein paar Anregungen zu Deinem Vorhaben
Mit den Werten aus dem Modbus-Adapter für den Sungrow-WR kannst Du ohne weitere Bearbeitung nicht unbedingt mit allen Werten was in der InfluxDB anfangen.
Daher empfehle ich Dir unabhängig von der Datenspeicherung in einer InfluxDB mal die folgende Seite:
https://noegel.io/posts/2022-10-09-sungrow/
Dort wird ganz unten auch auf ein Blockly-Script zur Weiterverarbeitung verlinkt.Zudem wäre, neben zahlreichen anderen, auch dieser Blog (und das Video) von Matthias Kleine @haus-automatisierung sicher interessant, da Du ja scheinbar mehrere Datenpunkte gleichzeitig speichern möchtest.
InfluxDB 2.x - Dashboard für eine PV-Anlage -
@wolfi913 Vielen Dank für die sehr hilfreichen Infos.
Da wird mir so schnell nicht langweilig;-) -
@hru said in Werte in influxDB schreiben funktioniert nicht:
@wolfi913 Vielen Dank für die sehr hilfreichen Infos.
Da wird mir so schnell nicht langweilig;-)Ich bin mit meiner Fronius Installation am gleichen Punkt.
Matthias hat ins seinen Videos erwähnt dass er bei Änderung eines Wertes jeweils das js Script triggered und dann alle Werte in die Influx schreibt (synchronisiert).
Leider geht er aufs “triggern” nicht wirklich ein ob es eine lange OR Verknüpfung mit allen Werten über blockly läuft oder ob es da eine elegantere Möglichkeit gibt?! -
@thorsten42 sagte in Werte in influxDB schreiben funktioniert nicht:
Leider geht er aufs “triggern” nicht wirklich ein ob es eine lange OR Verknüpfung mit allen Werten über blockly läuft oder ob es da eine elegantere Möglichkeit gibt?!
Bin (leider) auch nicht der JS-Experte, daher stimmt das folgende hoffentlich.
Du hast ja im Script die Definition der jeweiligen Datenpunkte die überwacht und geschrieben werden sollen.
Bei mir:const loggingTemplate = { '0_userdata.0.energy.contract.electricity.kWhPrice': 'priceIn', '0_userdata.0.energy.contract.electricity.kWhPriceExport': 'priceOut', 'alias.0.energie.electricity.meter.totalIn': 'importedWh', 'alias.0.energie.electricity.meter.totalOut': 'exportedWh', 'alias.0.energie.electricity.photovoltaic.total_generated': 'generatedWh', 'alias.0.energie.electricity.wallbox.total': 'wallboxWh', 'alias.0.energie.electricity.battery.total_battoload': 'battoloadWh', 'alias.0.energie.electricity.photovoltaic.total_generatedtobat': 'gentobatWh', 'alias.0.energie.electricity.photovoltaic.total_generatedtoload': 'gentoloadWh', };
Getriggert wird dann auf diese Variable
loggingTemplate
an dieser Stelleon({ id: Object.keys(loggingTemplate), change: 'ne' }, async (obj) => {
Hier wird auf alle Änderungen der in der obigen Variable definierten Datenpunkte reagiert und für alle in dieser Liste enthaltenen Datenpunkte synchron mit dem selben Timestamp die Werte in die influxDB geschrieben (egal ob sich da was verändert hat oder nicht).
Du musst also nur oben Deine DP entsprechend hinterlegen. -
Ah jetzt ja eine Insel…
Das macht Sinn dann muss ich mir das Script nochmal genauer anschauen und wie es im js Adapter “eingehängt” werden kann.
Melde mich dann wieder…