NEWS
( gelöst ) Zendure Solarflow Werte anzeigen
-
Hallo,
das ist mir schon klar das erst die Objekte gefunden werden müssen, damit ich diese einbinden kann, aber genau auf dieser Suche bin ich ja, wie ich an diese Objekte komme. Ich denke das ich mich oben einfach zu umständlich ausgedrückt habe.
Gruß
Thomas -
Hallo Marc,
ich komme mal wieder auf meine Frage zurück, nachdem ich das ganze System neu aufsetzen musste.
Also es geht sich immer noch darum die Werte von der Zendure Solarflow im IOBroker VIS sichtbar zu machen.
Das was ich habe ist folgendesMQTT Broker läuft und bekommt die Sensoren von der Solarflow unter Objekte im IOBroker auch angezeigt. Die Werte werden allerdings wohl nur als JSON angezeigt, das was ich soweit schon gelesen habe. Wie kann ich jetzt diese JSON in ein Objekt umwandeln, damit ich diese weiter im IOBroker VIS anzeigen lassen kann.
{"unique_id":"euqfS315outputLimit","state_topic":"k3seeWnm/euqfS315/state","command_topic":"k3seeWnm/euqfS315/outputLimit/set","name":"outputLimit","value_template":"{{ value_json.outputLimit}}"}
Das ist z.B. ein JSON von einem Sensor
Dieser Wert soll z.B. unten bei Batterieeingangsleistung angezeigt werden als "Watt"
Ich hoffe ich habe mich diesmal an die Forum Regeln gehalten
VG
Thomas
-
@perladd sagte in Zendure Solarflow Werte anzeigen:
Wie kann ich jetzt diese JSON in ein Objekt umwandeln, damit ich diese weiter im IOBroker VIS anzeigen lassen kann.
Okay, du bekommst also die Werte jetzt aus der Solarflow raus, sehr gut. Wie man JSON aufteilt und in eigene Datenpunkte schreibt, ist zum Beispiel hier:
https://forum.iobroker.net/post/980575
beschrieben. Das wird da über ein Alias realisiert. Es gibt natürlich noch andere Wege, z.B. via Blockly, NodeRed, Javascript, je nachdem, was dir am meisten liegt.
-
Hallo,
ich habe wohl auch schon das Problem, das ich erst gar kein Datenpunkt erstellen kann. So wie obigen Link, kann ich nicht Datenpunkt auswählen
Ich habe immer nur diese Auswahl
-
@perladd sagte in Zendure Solarflow Werte anzeigen:
Ich habe immer nur diese Auswahl
Da hast Du wohl etwas überlesen. Der Datenpunkt MUSS unter "Alias.0" angelegt werden, wenn du einen Alias nutzen willst. Außerdem ist die Auswahlbox "Typ" auszuklappen.
-
Ich hab es jetzt unter Alias.0 versucht. Auch da habe ich keine Auswahlmöglichkeit "Datenpunkt".
Hab es mal als Zahl versucht und bekomme folgende Daten zurück{
"common": {
"name": "test",
"desc": "Manuell erzeugt",
"role": null,
"type": "number",
"read": true,
"write": true,
"def": 0,
"alias": {
"id": "mqtt.0.k3seeWnm.sensor.device.euqfS315solarInputPower.config",
"read": "JSON.parse(val).tC"
}
},
"type": "state",
"native": {},
"_id": "alias.0.test",
"acl": {
"object": 1636,
"state": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
},
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1695892062223
}Hab es auch schon mit und ohne Konvertierung versucht
-
@perladd sagte in Zendure Solarflow Werte anzeigen:
"read": "JSON.parse(val).tC"
Du müsstest den Wert "tC" aus @mickym s Beispiel schon an deine Umgebung anpassen. Am besten, du postest dein Ursprungs-JSON mal hier in Code-Tags.
-
@marc-berg ```
Guten Morgen,
ich bin halt was Programmierung angeht, eine null :). Ich hab diesen Eintrag halt im Netz gefunden und ausprobiert.
Ich hab mir gestern noch einmal genau die Codes angeschaut und meiner Meinung schreibt Zendure alle Werte, die die bekommen in einen Status rein, der sich immer wieder anpasst, dementsprechend welche Werte kommen. Ändert sich nichts, bleibt auch alles so stehen. Hier kommen mal die Codes vom Status sowie vom aktuellen Solar Ausgang und vom Akkueingang.Status:
Der State steht als Wert im MQTT drinstate = {"solarInputPower":37,"outputPackPower":35}
{ "solarInputPower": 48, "outputPackPower": 45 }
Sensoren:
Solareingang
config = {"unique_id":"euqfS315solarInputPower","state_topic":"k3seeWnm/euqfS315/state","unit_of_measurement":"W","command_topic":"k3seeWnm/euqfS315/solarInputPower/set","name":"solarInputPower","device_class":"power","value_template":"{{ value_json.solarInputPower}}"}
{ "unique_id": "euqfS315solarInputPower", "state_topic": "k3seeWnm/euqfS315/state", "unit_of_measurement": "W", "command_topic": "k3seeWnm/euqfS315/solarInputPower/set", "name": "solarInputPower", "device_class": "power", "value_template": "{{ value_json.solarInputPower}}" }
Akkueingang
config = {"unique_id":"euqfS315packInputPower","state_topic":"k3seeWnm/euqfS315/state","unit_of_measurement":"W","command_topic":"k3seeWnm/euqfS315/packInputPower/set","name":"packInputPower","device_class":"power","value_template":"{{ value_json.packInputPower}}"}
{ "unique_id": "euqfS315packInputPower", "state_topic": "k3seeWnm/euqfS315/state", "unit_of_measurement": "W", "command_topic": "k3seeWnm/euqfS315/packInputPower/set", "name": "packInputPower", "device_class": "power", "value_template": "{{ value_json.packInputPower}}" }
Somit werde alle Sensoren in den State reingeschrieben
-
@perladd sagte in Zendure Solarflow Werte anzeigen:
Status:
Der State steht als Wert im MQTT drin
state = {"solarInputPower":37,"outputPackPower":35}Dann musst du nur noch im Alias den DP auswählen, in welchem diese Daten stehen und in der Lese-Konvertierungsfunktion
JSON.parse(val).solarInputPower
schreiben, um die "37" separat im Alias-DP stehen zu haben.
-
Hallo Marc,
so ich bin jetzt erst wieder dazu gekommen. Es läuft
Vielen Vielen Dank für deine Geduld und nerven.
Ich bin froh das es Leute wie euch gibt, die sich wirklich mit solchen Sachen Tag ein Tag aus beschäftigen
Ich wünsche dir noch einen schönes WE unter weiterhin viel Erfolg
-
Hallo,
ich bins noch einmal.
Ich habe jetzt soweit alles umgesetzt und einpflegt, die Werte kommen auch. Nur das einzige was jetzt noch ist, kann man an der Aktualisierung noch was ändern. Also, wenn sich nichts ändert an dem Wert, dann wird dieser in der Anzeige wieder gelöscht. Der wird erst wieder angezeigt, wenn der Wert sich wieder ändert.
Sprich z.B. vom Akkustand habe ich nur ganz kurz mal einen Wert gesehen, weil er sich gerade geändert hat. Wenn das jetzt aber den Rahmen sprengt, lassen wir es erstmal so laufen. -
Mir ist immer noch nicht ganz klar, was da passiert. So wie ich das lese, gibt es "config" Datenpunkte, in deren JSON lediglich der Aufbau und Inhalt(Einheit) der Daten beschreiben sind, die sich dann in den "state" Datenpunkten wiederfinden. Richtig?
Das würde bedeuten, dass du nur die "state" Datenpunkte benötigt, um die Daten zu visualisieren.Zeig mal bitte von einem State-Datenpunkt die komplette Object ID (mqtt.0. ...) und den Inhalt des Datenpunktes wenn Daten drin sind und den Inhalt, wenn keine Daten geliefert werden. Die entscheidende Frage ist, ob der DP dann komplett leer ist oder aber ein JSON ohne Werte geliefert wird.
-
Hallo,
"Mir ist immer noch nicht ganz klar, was da passiert. So wie ich das lese, gibt es "config" Datenpunkte, in deren JSON lediglich der Aufbau und Inhalt(Einheit) der Daten beschreiben sind, die sich dann in den "state" Datenpunkten wiederfinden. Richtig?"
Ja das hast du richtig erkannt.
"Das würde bedeuten, dass du nur die "state" Datenpunkte benötigt, um die Daten zu visualisieren."
Nein, das ist nicht ganz so richtig, da es nur ein "state" Datenpunkt gibt, wo alle Datenpunkte reingeschrieben werden. Das passiert aber nur, wenn sich der Wert ändert. In diesem "state" steht dann auch nur die Werte, die sich gerade geändert haben, ansonsten stehen da keine Werte drin, auch nicht mit null bzw auch keine Leerstellen.
{"electricLevel":95}
Mehr Werte kann ich gerade nicht zeigen, da kein Leistung von meinen Panels kommt, somit auch keine Leistung in die Akkus geht und erst um 22.00Uhr der Akku anspricht und damit Leistung ins Haus gespeist wird.
Aber wie schon gesagt, es werde immer alle geänderten Werte in das eine "state" geschrieben, somit habe ich dann in der VIS auch immer leere Felder, außer Wert hat sich gerade geändert. Wie z.b. im obigen Fall, wird mir gerade dauerhaft der Akkustand von 95%, weil sich kein weiterer Wert ändert
Da hat Zendure mit Sicherheit dran gespart, um das anders zu realisieren, wobei in der Hausinternen App, mir ja immer kontinuierlich alle Werte angezeigt werden
-
@perladd sagte in Zendure Solarflow Werte anzeigen:
Wie z.b. im obigen Fall, wird mir gerade dauerhaft der Akkustand von 95%, weil sich kein weiterer Wert ändert
MIR ist kein Weg bekannt, wie man diesen Fall in einem Alias+Konvertierungsfunktion umsetzen könnte. Das muss aber nichts heißen, da ich nicht viel damit arbeite.
Wenn das wirklich nicht geht, wirst du wohl um eine Alternative wie Blockly/Scripting) nicht herum kommen. -
Hallo,
alles gut man kann nicht alles können
Es ist mir eigentlich völlig egal womit man was umsetzten kann, Hauptsache ist, das man damit ordentlich arbeiten kann. Hättest du denn da eine Hilfestellung für mich, da ich mit den Brokly auch nicht ganz fit bin 🫣🫣🫣
-
-
@xbit Habe ein altes Video gesehen. Nach dem Update der Firmware vom Nov. 23 soll wohl der Gesamtwert (über alle 3 Phasen) verwendet werden können. Kostet aber ca.80. € und ich habe schon eine LED (Tasmota) Überwachung, die ich gerne weiter nutzen würde. Sobald die Hardware da ist, werde ich testen.Sollte über ein Script machbar sein, wenn man die Werte in der hier beschriebenen App setzen kann. Auf dem Handy Smart-CT-Modus. Hat jemand Erfahrung mit der Steuerung der Ausgangsleistung für den für den Wechselrichter (stellen auf aktuellen Verbrauch bzw. Maximum 800 W. Hat jemand die Shelly-Steuerung im Betrieb (wie zuverlässig) ?