Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Script läuft nicht mit Shelly Pro 3EM #7

Open
MatrixOneXP opened this issue Apr 28, 2023 · 16 comments
Open

Script läuft nicht mit Shelly Pro 3EM #7

MatrixOneXP opened this issue Apr 28, 2023 · 16 comments

Comments

@MatrixOneXP
Copy link

MatrixOneXP commented Apr 28, 2023

Hallo zusammen, in der irrigen Annahme es würde Laufen habe ich mir wegen der LAN Anbindung einen Shelly PRO 3EM besorgt.
Das Script ist auf dem Pi und läuft so lange ich die IP des Shelly nicht angebe. Versucht habe ich bereits:
curl http://192.168.1.53/emeter/1 -H "Accept: application/json"
und bekomme not fund zurück.
Kann es sein das die Abfragen sich geändert haben von emeter nach rpc/EMData
grafik

Update:
Die Abfrage im Pro funktioniert so nur weiß ich nicht wirklich wie das Script abgeändert werden müsste um die Daten zu verwerten.

wget -q -O - http://192.168.1.53/rpc/EM.GetStatus?id=0 {"id":0,"a_current":0.656,"a_voltage":231.2,"a_act_power":110.6,"a_aprt_power":151.6,"a_pf":-0.79,"b_current":0.438,"b_voltage":231.1,"b_act_power":49.5,"b_aprt_power":101.2,"b_pf":-0.66,"c_current":0.243,"c_voltage":231.2,"c_act_power":28.6,"c_aprt_power":56.2,"c_pf":-0.67,"n_current":null,"total_current":1.338,"total_act_power":188.716,"total_aprt_power":309.031, "user_calibrated_phase":[]}

Wehre sehr froh, wenn mir jemand helfen könnte

@St31l
Copy link

St31l commented Apr 29, 2023

Nachdem ich daran gescheitert bin die Nulleinspeisung mit meinem Shelly Pro 3EM und dem Skript zum laufen zu bekommen, bin ich auf diesen Beitrag aufmerksam geworden.

Ich würde mich anschließen und wäre super dankbar wenn es da Hilfe geben könnte

@MatrixOneXP
Copy link
Author

Leider habe ich keinen 3EM ohne Pro da sodass ich mir auch nicht wirklich ableiten kann, welche Ausgabe er bringt, da ich 2 Anlagen in einem Haus auf verschiedenen Zählern so betreiben möchte, werde ich mir wahrscheinlich einen normalen 3 EM besorgen müssen und hoffen, dass ich so das Script anpassen kann.

@MatrixOneXP
Copy link
Author

Ich habe das Script jetzt mal etwas verändert, ob das so wirklich passt und sinnvoll ist kann ich nicht sagen:

grafik

Das Ergebnis schaut auf dem Raspi jetzt so aus:
Nulleinspeisung

Leider ist meine Anlage noch nicht aufgebaut, sodass ich die Funktion nicht testen kann e.v hat ja jemand die Möglichkeit und das Wissen es zu bewerten.

@St31l
Copy link

St31l commented Apr 29, 2023

Ich habe das Script jetzt mal etwas verändert, ob das so wirklich passt und sinnvoll ist kann ich nicht sagen:

grafik

Das Ergebnis schaut auf dem Raspi jetzt so aus: Nulleinspeisung

Leider ist meine Anlage noch nicht aufgebaut, sodass ich die Funktion nicht testen kann e.v hat ja jemand die Möglichkeit und das Wissen es zu bewerten.

Meine Anlage läuft, ich passe es mal nach deinem Code an und probiere es aus

@St31l
Copy link

St31l commented Apr 29, 2023

Habe den Pytoncode angepasst und die Nulleinspeisung funktioniert 🤩
Klasse Arbeit der Anpassung des Codes! Danke dafür!
Es wird in Zukunft sicherlich mehr Leute geben die den Pro 3EM verbauen und damit klappt es schon Mal
IMG_2708

meine Anpassung ist noch etwas träge, da mein Speicher nur an einem Eingang des HM-600 angeschlossen ist (beide parallel an einen Speicher nicht möglich).
Somit steht nur die Hälfte der maximalen Leistung zur Verfügung und bei Leistungs-Anpassung um 10 W werden real nur 5 W erhöht und der Code muss erneut regeln.
Dennoch funktioniert es mehr als zufriedenstellend.

@St31l
Copy link

St31l commented Apr 29, 2023

Für die Shelly Pro 3EM Nutzer (solange es noch keine angepasste Version von Selbstbau-PV gibt):

Die Zeilen 26 bis 29 (durch folgenden Code ersetzten:
"
phaseA = requests.get(f'http://{shellyIP}/rpc/EM.GetStatus?id=0', headers={"Content-Type": "application/json"}).json()['a_act_power']
phaseB = requests.get(f'http://{shellyIP}/rpc/EM.GetStatus?id=0', headers={"Content-Type": "application/json"}).json()['b_act_power']
phaseC = requests.get(f'http://{shellyIP}/rpc/EM.GetStatus?id=0', headers={"Content-Type": "application/json"}).json()['c_act_power']
grid_sum = phaseA + phaseB + phaseC # Aktueller Bezug im Haus - rechnet alle Phasen zusammen
"

Dann funktioniert die Nulleinspeisung auch mit dem Shelly Pro 3EM

Viele Grüße
Steffen

@MatrixOneXP
Copy link
Author

Habe den Pytoncode angepasst und die Nulleinspeisung funktioniert 🤩 Klasse Arbeit der Anpassung des Codes! Danke dafür! Es wird in Zukunft sicherlich mehr Leute geben die den Pro 3EM verbauen und damit klappt es schon Mal IMG_2708

meine Anpassung ist noch etwas träge, da mein Speicher nur an einem Eingang des HM-600 angeschlossen ist (beide parallel an einen Speicher nicht möglich). Somit steht nur die Hälfte der maximalen Leistung zur Verfügung und bei Leistungs-Anpassung um 10 W werden real nur 5 W erhöht und der Code muss erneut regeln. Dennoch funktioniert es mehr als zufriedenstellend.

Super danke fürs Testen und Feedback jetzt kann ich meine Anlage in Ruhe Fertigbauen

Gruß

Andi

@St31l
Copy link

St31l commented Apr 30, 2023

Habe die Null Einspeisung noch mal etwas im Auge behalten und verschiedenste Lastsituationen im Haus gehabt.

Mittlerweile habe ich das Phänomen, dass OpenDTU im 15 Sekundentakt auf die minimal eingestellte Leistung des Skripts für den HM-600 einstellt und dann nach ein paar Sekunden wieder in Richtung Nulleinspeisung regelt.

@MatrixOneXP
Copy link
Author

Eventuell ist die ganze Rechnerei Phase A + B + C nicht wirklich nötig, denn der pro 3 EM liefert den Wert: total_act_power was dem Ergebnis von A + B +C entsprechen sollte.
Ich hab das mal auskommentiert so dass er gleich den Wert nimmt, wenn du möchtest, versuch es mal damit:
grafik

@St31l
Copy link

St31l commented Apr 30, 2023

Eventuell ist die ganze Rechnerei Phase A + B + C nicht wirklich nötig, denn der pro 3 EM liefert den Wert: total_act_power was dem Ergebnis von A + B +C entsprechen sollte.
Ich hab das mal auskommentiert so dass er gleich den Wert nimmt, wenn du möchtest, versuch es mal damit:
grafik

Die Anpassung ist auf jeden Fall sinnvoll und funktioniert (genau wie mit der Summierung)
PhaseA kann man dann komplett entfernen und „grid_sum“ für die Abfrage nach „total_act_power“ nehmen.

Aus irgendeinem Grund werden die printf Befehle in meiner Konsole(LXTerminal) nicht ausgegeben, weshalb ich nicht nachvollziehen kann warum die Leistungsvorgabe zwischen vorgegebener min Leistung und der Nulleinspeisung pendelt

@Rayn0r
Copy link

Rayn0r commented May 5, 2023

Aus irgendeinem Grund werden die printf Befehle in meiner Konsole(LXTerminal) nicht ausgegeben,

Versuch mal deine print() Aufrufe wie folgt zu ändern:

print('Fehler beim Abrufen der Daten von Shelly 3EM', flush=True)

Vielleicht klappt's danach mit der Ausgabe.

@St31l
Copy link

St31l commented May 5, 2023

Aus irgendeinem Grund werden die printf Befehle in meiner Konsole(LXTerminal) nicht ausgegeben,

Versuch mal deine print() Aufrufe wie folgt zu ändern:

print('Fehler beim Abrufen der Daten von Shelly 3EM', flush=True)

Vielleicht klappt's danach mit der Ausgabe.

Vielen Dank für den Tipp, damit klappt die Ausgabe :)

@harryinet
Copy link

Heute mit Shelly 3PM und Script von der Selbstbau-PV Homepage auf RPI3+ installiert. Läuft super, Danke

@greymda
Copy link

greymda commented Mar 22, 2024

@harryinet can you share the script you’re using for Shelly 3PM, please?

@St31l
Copy link

St31l commented Mar 23, 2024

@harryinet can you share the script you’re using for Shelly 3PM, please?

Hi, the Skript is outdated, you should check out openDTU on Battery, which is a Skript like normal openDTU but it can directly talk to your 3PM without having to use the raspberry in between.

link:https://github.com/helgeerbe/OpenDTU-OnBattery

@Rayn0r
Copy link

Rayn0r commented Mar 23, 2024

@greymda
Based on this script, I created a fork here, which supports the Shelly Pro 3EM and also fixes the breaking changes in v24.2.12.
Unfortunately I do not have the non-Pro version, so I was unable to test it. Any help is greatly appreciated.

The script has changed quite a lot, since I forked it. If @Selbstbau-PV would like to, I can create a PR for it to be merged here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants