Daten von 2 Goodwe WR zusammenrechnen

Wenn mehr als ein Gerät an den Raspberry angeschlossen werden sollen. Z.B. ein Regler und ein Wechselrichter oder mehrere Wechselrichter. Das Maximum sind 6 Geräte pro Raspberry Pi.

Moderator: Ulrich

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

Hallo Andreas,

Python kann man sich eigentlich recht schnell beibringen! :roll:

Das Script entstand als "Fingerübung" zum testen der Anbindung an Influxdb.
Das Script selber ist recht rudimentär, hat keinerlei Funktionen zur Fehlerbehandlung etc., macht aber halbwegs was es soll! ;)
Schreib doch einfach mal, was du so gern noch zusätzlich damit machen möchtest, und wir verbasteln das dann hier!
Mach da ruhig einen eigenen Thread für auf! Ich denke da gibt es hier noch den einen oder anderen den das auch interessiert!?

Benutzeravatar
Ulrich
Administrator
Beiträge: 5604
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 157 Mal
Danksagung erhalten: 891 Mal
Kontaktdaten:

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von Ulrich »

Ich möchte dazu einmal generell etwas sagen. Python und PHP sind beides Programmiersprachen, die es schon sehr lange gibt. Beide Sprachen kann man ganz gut und einfach lernen. Beides sind Interpretersprachen. Mit beiden Sprachen kommt man fast identisch zum Ziel. Ich hätte die Solaranzeige auch in Python schreiben können, technisch wäre das kein Problem, nur kann ich 10 mal so schnell etwas in PHP wie in Phyten schreiben. Da liegt der Haken. Als junger Mensch könnte man beide Sprachen parallel lernen, mit zunehmendem Alter wird das aber immer schwieriger. Man kann aber ohne große Mühe Programmteile von PHP mit Python verstricken. So können sich PHP und Python Programmierer super ergänzen. Und noch was. Beide Sprachen laufen auf Linux super, wie dafür gemacht.... :D
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

Da gibt es nix zu ergänzen ! :thumbup:

skoppi
Beiträge: 18
Registriert: Mo 28. Aug 2023, 10:59
Hat sich bedankt: 1 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von skoppi »

mr.big hat geschrieben:
Sa 6. Jan 2024, 13:34
Anleitung ist "Online"

Bei Fragen, einfach hier melden!

Have Fun! :mrgreen:
Ich habe es jetzt mal versucht nach Deiner Anleitung umzusetzen (hätte ich alleine niemals hinbekommen :? ), jetzt bekomme ich folgende
Ausgabe in der Konsole:

pi@solaranzeige:~/scripts/Tools $ python3 ./db_summen.py
890.0
117.0
Traceback (most recent call last):
File "/home/pi/scripts/Tools/./db_summen.py", line 79, in <module>
handler.write_data("Summen", "PV", "PV1_Leistung", wert, time_stamp_db)
File "/home/pi/scripts/Tools/./db_summen.py", line 37, in write_data
self.client.write_points(data)
File "/usr/lib/python3/dist-packages/influxdb/client.py", line 525, in write_points
return self._write_points(points=points,
File "/usr/lib/python3/dist-packages/influxdb/client.py", line 594, in _write_points
self.write(
File "/usr/lib/python3/dist-packages/influxdb/client.py", line 337, in write
self.request(
File "/usr/lib/python3/dist-packages/influxdb/client.py", line 302, in request
raise InfluxDBClientError(response.content, response.status_code)
influxdb.exceptions.InfluxDBClientError: 404: {"error":"database not found: \"Summen\""}

Wenn ich gleichzeitig auf dem Grafana Dashboard schaue wird mir dort ein Gesamtwert von ca. 1300W angezeigt, hier kommen beide Werte
zusammen auf 1007W :|
Muss ich in der Datenbank das Feld "Summen" erst noch anlegen?

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

Ja, Du musst die "Zieldatenbank Summen" erst händisch anlegen!

Code: Alles auswählen

pi@solaranzeige:~ $ influx
Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
> create database Summen
> quit

skoppi
Beiträge: 18
Registriert: Mo 28. Aug 2023, 10:59
Hat sich bedankt: 1 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von skoppi »

Sieht schonmal ganz gut aus, jetzt bekomme ich folgende Ausgabe:

610.0
178.0
788.0 Gesamt PV1
151.0
227.0
378.0 Gesamt PV2
Thats all, have Fun!

Wenn ich jetzt den Gesamtwert mit der Ulanzi anzeigen lassen will, müssen die beiden Gesamtwerte noch addiert werden?

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

da kopiere dir doch einfach diesen Block noch rein (bei Zeile 92) und der kümmert sich dann um die Gesamtsumme!

Code: Alles auswählen

# Wertepaar für Gesamtsumme holen, berechnen und nach Summen schreiben
result = handler.read_data("Summen", "PV", "PV1_Leistung")
result_1 = round(float(result), 2)
print(result_1)
result = handler.read_data("Summen", "PV", "PV2_Leistung")
result_2 = round(float(result), 2)
print(result_2)
wert = result_1 + result_2
handler.write_data("Summen", "PV", "PV_Gesamt", wert, time_stamp_db)
print(wert)

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

Du kannst die Daten aus "Summen" nun auch in Grafana "vervisualisieren"!
Musst in Grafana nur die entsprechende Verbindung zu der Datenbank erstellen!

skoppi
Beiträge: 18
Registriert: Mo 28. Aug 2023, 10:59
Hat sich bedankt: 1 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von skoppi »

mr.big hat geschrieben:
So 7. Jan 2024, 11:29
Du kannst die Daten aus "Summen" nun auch in Grafana "vervisualisieren"!
Musst in Grafana nur die entsprechende Verbindung zu der Datenbank erstellen!
In Grafana hatte ich das vorher schon hinbekommen, indem ich die 4 Einzelwerte dort zu einem Wert addiert hatte,
aber ist jetzt natürlich einfacher, werde ich noch anpassen :thumbup:

Die Ausgabe des Gesamtwertes klappt jetzt per Konsole schonmal, nur auf der Ulanzi wird der Wert noch nicht angezeigt :roll:
Habe den Wert der vorher angezeigt wurde so geändert:

Code: Alles auswählen

################################# Beginn Block Auswertung #################################
    ################################ "solaranzeige,PV,Leistung" ###############################

    if ((wert[0]) + "," + (wert[1]) + "," + (wert[2])) == "Summen,PV,PV_Gesamt":
        print(wert[3])

        url = ulanzi_url + "/api/custom?name="+(wert[1])+(wert[2])

        data = {
            "text": str(int(float(wert[3]))) + " W", # darzustellender Wert/Text
            "lifetime": int(app_life_time),
            "icon": 27283, # darzustellendes Icon
        #    "rainbow": bool(1),
            "color": [252, 186, 10],
            "duration": app_show_time
        }
        funktionen.ulanzi_senden(url, data)

    ################################## Ende Block Auswertung ##################################
In der Settings.ini hab ich den Wert ebenfalls geändert:

app_werte = Summen,PV,PV_Gesamt
# Anzeige der PV-GesamtLeistung, (ben. Icon 27283)

oder mache ich ja jetzt wieder einen Denkfehler? :o

Benutzeravatar
mr.big
Beiträge: 551
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 11 Mal
Danksagung erhalten: 114 Mal

Re: Daten von 2 Goodwe WR zusammenrechnen

Beitrag von mr.big »

Sieht soweit eigentlich richtig aus!

Stoppe mal den Ulanzi Dienst und starte das ganze von der Konsole aus, da kommt wenigstens etwas Feedback!?

Code: Alles auswählen

sudo systemctl stop ulanzi-connector.service
cd /home/pi/scripts/Ulanzi-Solaranzeige-Connector
python3 ./ulanziconnect.py

Antworten

Zurück zu „Multi-Regler-Version [ bis zu 6 Geräten an einem Raspberry Pi ]“