Anbindung an Stromspeicher E3DC
Moderator: Co-Administratoren
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
super, danke für die Rückmeldung, ich werde das, wie beschrieben einbauen und testen. Ich hatte so etwas schon auf Grund des Namens der fehlenden Datei vermutet. Insofern bin ich guter Dinge, dass das funktionieren wird. Ich melde mich dann.
Viele Grüße
Johannes
super, danke für die Rückmeldung, ich werde das, wie beschrieben einbauen und testen. Ich hatte so etwas schon auf Grund des Namens der fehlenden Datei vermutet. Insofern bin ich guter Dinge, dass das funktionieren wird. Ich melde mich dann.
Viele Grüße
Johannes
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
jetzt habe ich die Änderung eingebaut und neu kompiliert und der Test war erfolgreich:
Hier die Ausgabe und die Variablen wurden auch neu gesetzt.
Notstromreserve setzen
EP Reserve Max = 14137
EP Reserve = 4000
____________________
Connecting to server 192.168.xxx.xx:5033
Connected successfully
Request authentication
RSCP authentitication level 10
____________________
Set Notstrom-Reserve
EP Reserve = 4000 Wh
Send to Serial-Number S10-xxx
Parameter gesendet
Allerdings musste ich alles neu kompilieren, bevor die Änderung wirksam war.
Noch Mal vielen Dank für die Analyse und Lösung !
Viele Grüße
Johannes
jetzt habe ich die Änderung eingebaut und neu kompiliert und der Test war erfolgreich:
Hier die Ausgabe und die Variablen wurden auch neu gesetzt.
Notstromreserve setzen
EP Reserve Max = 14137
EP Reserve = 4000
____________________
Connecting to server 192.168.xxx.xx:5033
Connected successfully
Request authentication
RSCP authentitication level 10
____________________
Set Notstrom-Reserve
EP Reserve = 4000 Wh
Send to Serial-Number S10-xxx
Parameter gesendet
Allerdings musste ich alles neu kompilieren, bevor die Änderung wirksam war.
Noch Mal vielen Dank für die Analyse und Lösung !
Viele Grüße
Johannes
Re: Anbindung an Stromspeicher E3DC
Hallo Johannes,
freut mich das es geklappt hat.
Warum das mit de Kompilieren nicht geklappt hat verstehe ich nicht aber das ist ja jetzt egal, bei dir läuft es und wenn ich es einbaue sollte man beim Update ehe alles kompilieren.
Danke fürs Feedback.
Viele Grüße Nico
freut mich das es geklappt hat.
Warum das mit de Kompilieren nicht geklappt hat verstehe ich nicht aber das ist ja jetzt egal, bei dir läuft es und wenn ich es einbaue sollte man beim Update ehe alles kompilieren.
Danke fürs Feedback.
Viele Grüße Nico
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
gibt es eine Möglichkeit die erzeugte PV-Tages-Leistung in kWh aus der E3DC auszulesen und in Homematic als Systemvariable einzubinden?
Gruß Paul
gibt es eine Möglichkeit die erzeugte PV-Tages-Leistung in kWh aus der E3DC auszulesen und in Homematic als Systemvariable einzubinden?
Gruß Paul
Re: Anbindung an Stromspeicher E3DC
Hallo Paul,
ich habe es gerade mal auf die Schnelle bei mir eingebaut und getestet. Es geht recht einfach.
Die Energiewerte werden mit dem Zusatz S10history abgerufen, so muss der Part mit dem senden an die HM dort eingebaut werden.
Ich habe es dir als Beispiel mal in die RscpReader.cpp eingebaut: (ab Zeile 226)
Entscheidend ist die Zeile mit der Funktion printsendHM(). Da die Funktion auch in der RscpMain.cpp verwendet wird und dort nur alle x Sekunden was zur HM gesendet werden soll, muss du genau diesen Punkt treffen und das erfüllt die Variable "HM_Intervall". Die Variable "TAG_EMS_ISE_PV_ENERGY" ist nur ein Beispiel wichtig ist das diese in der parameter.h mit der ISE der HM definiert wird. Die Variable "dc_power" wird zuvor im case mit der Energie bis zum Abfragezeitpunkt in Wh gefüllt.
Somit musst du nur die Zeile einfügen, die Variable "TAG_EMS_ISE_PV_ENERGY" in der parameter.h definieren und das die Zusatzfunktion erneut kompilieren mit:
Nun sollte es schon funktionieren, ach ja fast vergessen. Voraussetzung ist natürlich das die HistoryValues auch aktiviert sind. Aber ich denke das hast du schon sonst wäre die Frage nicht gekommen. Wenn doch noch nicht dann musst du in der parameter.h noch die HistoryValues mit eine "1" aktivieren (und kompilieren):
Viel Erfolg.
Gruß Nico
ich habe es gerade mal auf die Schnelle bei mir eingebaut und getestet. Es geht recht einfach.
Die Energiewerte werden mit dem Zusatz S10history abgerufen, so muss der Part mit dem senden an die HM dort eingebaut werden.
Ich habe es dir als Beispiel mal in die RscpReader.cpp eingebaut: (ab Zeile 226)
Code: Alles auswählen
case TAG_DB_DC_POWER: {
float dc_power = protocol->getValueAsFloat32(&((*dbSum)[i]));
printf("%s production: %0.1f Wh\n", sum_prefix, dc_power);
writeHistory(dataPV, dc_power, writedata);
sum.production = dc_power;
printsendHM(HM_Intervall, TAG_EMS_ISE_PV_ENERGY, dc_power);
break;
}
Somit musst du nur die Zeile einfügen, die Variable "TAG_EMS_ISE_PV_ENERGY" in der parameter.h definieren und das die Zusatzfunktion erneut kompilieren mit:
Code: Alles auswählen
make S10history/S10history
Code: Alles auswählen
#define historyAktiv 1 //History Values Abfragen und Anzeigen aktiv=1 deaktiv=0
#define historyDelay 900 //Abfrageintervall in Sekunden mindestens 60, Empfehlung 900
Gruß Nico
Re: Anbindung an Stromspeicher E3DC
Hallo Nico, das war ja schnell.
Vielen Dank für Deinen Support. Ich werde es am Wochenende versuchen umzusetzen (ich hoffe schon eher)
Dir noch einen schönen Abend und danke.
Gruß Paul
Vielen Dank für Deinen Support. Ich werde es am Wochenende versuchen umzusetzen (ich hoffe schon eher)
Dir noch einen schönen Abend und danke.
Gruß Paul
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
leider zeigt mir die CCU den Wert nicht an.
Um den Fehler einzugrenzen schreibe ich Dir Schritt für Schritt meine Vorgehensweise:
1. Unter WinSCP habe ich die Datei RscpReader.cpp die Zeile ergänzt mit printsendHM.........
case TAG_DB_DC_POWER: {
float dc_power = protocol->getValueAsFloat32(&((*dbSum)));
printf("%s production: %0.1f Wh\n", sum_prefix, dc_power);
writeHistory(dataPV, dc_power, writedata);
sum.production = dc_power;
printsendHM(HM_Intervall, TAG_EMS_ISE_PV_ENERGY, dc_power);
break;
2. In der CCU habe ich die Systemvariable eingerichtet (Typ: Zahl, Wert: 0 - 65000) und die ise_ID herausgelesen (19728)
3. Unter WinSCP habe ich die Datei parameter.h die folgende Zeile ergänzt:
#define TAG_EMS_ISE_PV_ENERGY 19728 // ISE_ID_PV_ENERGY_TAG
Die 'History Values' waren bereits auf 1 gesetzt und auch der Intervall-Wert war bereits auf 900 gesetzt.
4. Dann unter Putty den folgenden Befehl im Pfad E3dcGui ausgeführt:
make S10history/S10history
pi@raspberrypi:~/E3dcGui $ make S10history/S10history
rm S10history/S10history
g++ -O3 S10history/S10history.cpp S10history/RscpReader.cpp Rscp/RscpProtocol.cp
p Rscp/AES.cpp Rscp/SocketConnection.cpp -o S10history/S10history
Es lief ohne Fehlermeldung durch.
Habe ich da etwas falsch verstanden oder wo könnte der Fehler sein?
Gruß Paul
leider zeigt mir die CCU den Wert nicht an.
Um den Fehler einzugrenzen schreibe ich Dir Schritt für Schritt meine Vorgehensweise:
1. Unter WinSCP habe ich die Datei RscpReader.cpp die Zeile ergänzt mit printsendHM.........
case TAG_DB_DC_POWER: {
float dc_power = protocol->getValueAsFloat32(&((*dbSum)));
printf("%s production: %0.1f Wh\n", sum_prefix, dc_power);
writeHistory(dataPV, dc_power, writedata);
sum.production = dc_power;
printsendHM(HM_Intervall, TAG_EMS_ISE_PV_ENERGY, dc_power);
break;
2. In der CCU habe ich die Systemvariable eingerichtet (Typ: Zahl, Wert: 0 - 65000) und die ise_ID herausgelesen (19728)
3. Unter WinSCP habe ich die Datei parameter.h die folgende Zeile ergänzt:
#define TAG_EMS_ISE_PV_ENERGY 19728 // ISE_ID_PV_ENERGY_TAG
Die 'History Values' waren bereits auf 1 gesetzt und auch der Intervall-Wert war bereits auf 900 gesetzt.
4. Dann unter Putty den folgenden Befehl im Pfad E3dcGui ausgeführt:
make S10history/S10history
pi@raspberrypi:~/E3dcGui $ make S10history/S10history
rm S10history/S10history
g++ -O3 S10history/S10history.cpp S10history/RscpReader.cpp Rscp/RscpProtocol.cp
p Rscp/AES.cpp Rscp/SocketConnection.cpp -o S10history/S10history
Es lief ohne Fehlermeldung durch.
Habe ich da etwas falsch verstanden oder wo könnte der Fehler sein?
Gruß Paul
Re: Anbindung an Stromspeicher E3DC
Hey,
mit der Info muss ich jetzt fragen ob du die E3dcGui mit oder ohne Display benutzt. Die Applikation S10history wird nur durch die GuiMain regelmäßig nach 900 Sekunden durchgeführt.
Wenn die Applikation ohne Display betrieben wird musst du die S10history noch in den crontab bringen damit sie regelmäßig gestartet wird.
z.B. mit dieser Zeile:
Aber zuvor solltest du die Software testen mit:
Wenn die Daten geladen werden kommen etliche Zeilen Informationen als Ausgabe und deine Variable sollte dich füllen.
Gruß Nico
mit der Info muss ich jetzt fragen ob du die E3dcGui mit oder ohne Display benutzt. Die Applikation S10history wird nur durch die GuiMain regelmäßig nach 900 Sekunden durchgeführt.
Wenn die Applikation ohne Display betrieben wird musst du die S10history noch in den crontab bringen damit sie regelmäßig gestartet wird.
z.B. mit dieser Zeile:
Code: Alles auswählen
*/15 * * * * /home/pi/E3dcGui/S10history/S10history
Code: Alles auswählen
E3dcGui/S10history/S10history
Gruß Nico
Re: Anbindung an Stromspeicher E3DC
Guten Abend Nico,
ich benutze kein Display.
Mit dem Befehl E3dcGui/S10history/S10history wird keine PV-Tageswertmenge angezeigt.
Wie ich Dich verstanden habe, muss in dem Falle ohne Display die crontab ändern.
In der crontab steht bereits der Befehl: @reboot /home/pi/E3dcGui/start.
Muss ich jetzt eine zweite Zeile hinzufügen mit: @reboot /home/pi/E3dcGui/S10history/S10history?
Gruß Paul
ich benutze kein Display.
Mit dem Befehl E3dcGui/S10history/S10history wird keine PV-Tageswertmenge angezeigt.
Wie ich Dich verstanden habe, muss in dem Falle ohne Display die crontab ändern.
In der crontab steht bereits der Befehl: @reboot /home/pi/E3dcGui/start.
Muss ich jetzt eine zweite Zeile hinzufügen mit: @reboot /home/pi/E3dcGui/S10history/S10history?
Gruß Paul
Re: Anbindung an Stromspeicher E3DC
Hier noch ein Auszug:
[88]-Hour Date: 1681854300 - Tue Apr 18 21:45:00 2023
[88]-Hour graph index: 87.0
[88]-Hour battery in: 0.0 W
[88]-Hour battery out: 505.5 W
[88]-Hour production: 0.0 W
[88]-Hour grid in: 4.0 W
[88]-Hour grid out: 3.8 W
[88]-Hour consumption: 420.0 W
[88]-Hour pm 0 power: 0.0 W
[88]-Hour pm 1 power: 0.0 W
[88]-Hour bat charge level: 79.9 %
[88]-Hour bat cycle count: 0.000000
[88]-Hour consumed production: 99.0
[88]-Hour autarky: 100.000000
[88]-Hour-CSV: 1681854300;0.00;505.50;79.92;0.00;4.00;3.75;420.00
[88]-Hour Date: 1681854300 - Tue Apr 18 21:45:00 2023
[88]-Hour graph index: 87.0
[88]-Hour battery in: 0.0 W
[88]-Hour battery out: 505.5 W
[88]-Hour production: 0.0 W
[88]-Hour grid in: 4.0 W
[88]-Hour grid out: 3.8 W
[88]-Hour consumption: 420.0 W
[88]-Hour pm 0 power: 0.0 W
[88]-Hour pm 1 power: 0.0 W
[88]-Hour bat charge level: 79.9 %
[88]-Hour bat cycle count: 0.000000
[88]-Hour consumed production: 99.0
[88]-Hour autarky: 100.000000
[88]-Hour-CSV: 1681854300;0.00;505.50;79.92;0.00;4.00;3.75;420.00