Anbindung an Stromspeicher E3DC
Moderator: Co-Administratoren
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
nach längerer Zeit habe ich ein Update Deiner hervorragenden Lösung von 2.04 auf 2.17 gemacht. (git pull).
Ich musste aber die Änderung in der Datei "Rscp/RWData.h" ( "return 1;" ergänzen) manuell durchführen. Danach hat aber alles so funktioniert, wie vorher. (Nutzung ohne Display incl. Wallbox und Steuerung der Wallbox) Alles funktioniert wie vorher.
Zusätzlich habe ich Steuerung der Notstromfunktion neu dazugenommen.
Hier habe ich jetzt ein Problem:
Wenn ich einen neuen Sollwert (z.B. von 3.5 auf 4.0) eingebe und Senden auf "true" setze, wird beim nächsten Abfrageintervall die Variable auf "false" zurückgesetzt, soweit ok. Der neue Sollwert wird aber nicht übernommen, sondern ignoriert.
Wenn ich als neuen Wert aber 0.0 eingebe und dann die Übergabe erfolgt, ist der neue Wert in der Variablen "S10_Notstromreserve_Act_Reserve" vorhanden und der S10E hat den Wert auch intern übernommen.
Hast Du eine Idee, woran das liegen kann?
Viele Grüße Johannes
nach längerer Zeit habe ich ein Update Deiner hervorragenden Lösung von 2.04 auf 2.17 gemacht. (git pull).
Ich musste aber die Änderung in der Datei "Rscp/RWData.h" ( "return 1;" ergänzen) manuell durchführen. Danach hat aber alles so funktioniert, wie vorher. (Nutzung ohne Display incl. Wallbox und Steuerung der Wallbox) Alles funktioniert wie vorher.
Zusätzlich habe ich Steuerung der Notstromfunktion neu dazugenommen.
Hier habe ich jetzt ein Problem:
Wenn ich einen neuen Sollwert (z.B. von 3.5 auf 4.0) eingebe und Senden auf "true" setze, wird beim nächsten Abfrageintervall die Variable auf "false" zurückgesetzt, soweit ok. Der neue Sollwert wird aber nicht übernommen, sondern ignoriert.
Wenn ich als neuen Wert aber 0.0 eingebe und dann die Übergabe erfolgt, ist der neue Wert in der Variablen "S10_Notstromreserve_Act_Reserve" vorhanden und der S10E hat den Wert auch intern übernommen.
Hast Du eine Idee, woran das liegen kann?
Viele Grüße Johannes
Re: Anbindung an Stromspeicher E3DC
Hallo Johannes,
das mit dem "return 1" war mir doch glatt durch die Latten gegangen. Bevor ich es nochmal vergesse habe ich es gerade in V2.18 hochgeladen.
Das andere Problem kann ich mir direkt noch nicht erklären. Ich denke ich muss das erst mal ein wenig testen um zu verstehen was bei mir passiert. Vielleicht sehe ich dann woher der Fehler kommt.
Damit ich das nicht auch vergessen sollte, habe ich mir mal einen Issue erstellt.
Ich melde mich wieder.
Viele Grüße Nico
das mit dem "return 1" war mir doch glatt durch die Latten gegangen. Bevor ich es nochmal vergesse habe ich es gerade in V2.18 hochgeladen.
Das andere Problem kann ich mir direkt noch nicht erklären. Ich denke ich muss das erst mal ein wenig testen um zu verstehen was bei mir passiert. Vielleicht sehe ich dann woher der Fehler kommt.
Damit ich das nicht auch vergessen sollte, habe ich mir mal einen Issue erstellt.
Code: Alles auswählen
https://github.com/nischram/E3dcGui/issues/81
Viele Grüße Nico
Re: Anbindung an Stromspeicher E3DC
Hey,
ich habe schon ein wenig getestet. Meine Infos habe ich dazu im Issue #81 https://github.com/nischram/E3dcGui/issues/81
Die RscpSet sendet korrekt, aber die Werte die vom System zurückkommen sind 3 fach größer. Das sieht ein wenig nach einem Problem mit der neueren Software vom Speicher aus.
Ich muss das aber noch in ruhe Testen und auch mal im Keller am Display die Einstellungen prüfen.
Ich bleibe dran und melde mich wieder.
VG Nico
ich habe schon ein wenig getestet. Meine Infos habe ich dazu im Issue #81 https://github.com/nischram/E3dcGui/issues/81
Die RscpSet sendet korrekt, aber die Werte die vom System zurückkommen sind 3 fach größer. Das sieht ein wenig nach einem Problem mit der neueren Software vom Speicher aus.
Ich muss das aber noch in ruhe Testen und auch mal im Keller am Display die Einstellungen prüfen.
Ich bleibe dran und melde mich wieder.
VG Nico
Re: Anbindung an Stromspeicher E3DC
Guten Morgen Nico,
danke für Deine Recherche. Der Softwarestand auf meiner S10 ist: S10_2022_026
viele Grüße
Johannes
danke für Deine Recherche. Der Softwarestand auf meiner S10 ist: S10_2022_026
viele Grüße
Johannes
Re: Anbindung an Stromspeicher E3DC
Hallo Johannes,
ich hatte wenig Zeit so hat meine Analyse länger gedauert.
Zu meiner ersten Erkenntnis muss ich jetzt ehrlich sagen, da bin ich selber auf einen Test von mir den ich am laufen hatte reingefallen.
Ich habe es jetzt nochmal hin und her getestet und muss feststellen, dass ich keinen Fehler bei mir nachstellen kann.
Von der HM wird der Sollwert genau wie gewünscht abgeholt und zum Speicher gesendet.
So solltest du das ganze bei dir nochmal testen. Am besten stoppst du die Funktion "actionCheckHM" und lässt diese direkt ausgeführt laufen und prüfst mal die Werte die Ausgegeben werden wenn von der HM gesendet wird.
Anhalten:
Starten:
So könnte die Ausgabe aussehen:
Du musst auf den EP Reserve Max Wert achten meine Funktion setzt den Wert nicht, wenn die "EP Reserve" größer als 80% vom "EP Reserve Max" ist, wird der Wert nicht gesendet.
Diese Ausgabe kommt dann:
Wenn du den Fehler dann nicht findest, dann sende bitte deine Ausgabe, damit ich weiter prüfen kann was passiert.
VG Nico
ich hatte wenig Zeit so hat meine Analyse länger gedauert.
Zu meiner ersten Erkenntnis muss ich jetzt ehrlich sagen, da bin ich selber auf einen Test von mir den ich am laufen hatte reingefallen.
Ich habe es jetzt nochmal hin und her getestet und muss feststellen, dass ich keinen Fehler bei mir nachstellen kann.
Von der HM wird der Sollwert genau wie gewünscht abgeholt und zum Speicher gesendet.
So solltest du das ganze bei dir nochmal testen. Am besten stoppst du die Funktion "actionCheckHM" und lässt diese direkt ausgeführt laufen und prüfst mal die Werte die Ausgegeben werden wenn von der HM gesendet wird.
Anhalten:
Code: Alles auswählen
killall actionCheckHM
Code: Alles auswählen
/home/pi/E3dcGui/Rscp/actionCheckHM
Code: Alles auswählen
Notstromreserve setzen
EP Reserve Max = 5906
EP Reserve = 1800
____________________
Connecting to server 192.168.178.xx:5033
Connected successfully
Request authentication
RSCP authentitication level 10
____________________
Set Notstrom-Reserve
EP Reserve = 1800 Wh
Send to Serial-Number xxx
Parameter gesendet
Diese Ausgabe kommt dann:
Code: Alles auswählen
Notstromreserve setzen
EP Reserve Max = 5906
Falsche Eingabe für argv[3] in Wh!
Wert von 0 - <= 80% von Max wählen
VG Nico
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
danke für Deine Analyse, ich werde das morgen so durchführen, wie Du beschrieben hast und das Ergebnis mitteilen.
Den Wert "EP Reserve max." habe ich aber nirgendwo gesetzt, wird dieser Wert vom System in Abhängigkeit von der Akkugröße eingestellt?
Viele Grüße
Johannes
danke für Deine Analyse, ich werde das morgen so durchführen, wie Du beschrieben hast und das Ergebnis mitteilen.
Den Wert "EP Reserve max." habe ich aber nirgendwo gesetzt, wird dieser Wert vom System in Abhängigkeit von der Akkugröße eingestellt?
Viele Grüße
Johannes
Re: Anbindung an Stromspeicher E3DC
Hey,
der Wert wird im System in Abhängigkeit der Batteriekapazität (beim Pro der Kapazität eines einzelnen Batteriekreises wie bei dir) berechnet und meine RSCP-Applikation holt diesen Wert vorher ab, um die 80% zu berechnen.
Viel Erfolg beim Testen.
Gruß
der Wert wird im System in Abhängigkeit der Batteriekapazität (beim Pro der Kapazität eines einzelnen Batteriekreises wie bei dir) berechnet und meine RSCP-Applikation holt diesen Wert vorher ab, um die 80% zu berechnen.
Viel Erfolg beim Testen.
Gruß
Re: Anbindung an Stromspeicher E3DC
Hallo Nico,
ich habe gerade getestet.
Bei mir ist der Wert von "EP Reserve Max" = 0 und deshalb kommt es zu der von Dir beschriebenen Fehlerausgabe,
allerdings findet er die Datei E3dcGuiData.txt nicht in der RAMdisk.
Dort sind die folgenden Dateien vorhanden:
pi@raspi4modbus:/mnt/RAMDisk $ ls
E3dcCache.txt E3dcRscpData.txt E3dcWbCache.txt Unixtime.txt
E3dcGuiChar.txt E3dcRscpWbData.txt IdlePeriods.txt ValueTo.txt
Hier die Ausgabe auf dem Raspberry:
/mnt/RAMDisk/E3dcGuiData.txt konnte NICHT geoeffnet werden. (BitRead)
Notstromreserve setzen
EP Reserve Max = 0
Falsche Eingabe für argv[3] in Wh!
Wert von 0 - <= 80% von Max wählen
Beispiel = RscpSet -ep 12800 4000
Ich hoffe, mit diesen Angaben kannst Du eine Ursache erkennen. (Ich benutze nicht das Display)
Viele Grüße
Johannes
ich habe gerade getestet.
Bei mir ist der Wert von "EP Reserve Max" = 0 und deshalb kommt es zu der von Dir beschriebenen Fehlerausgabe,
allerdings findet er die Datei E3dcGuiData.txt nicht in der RAMdisk.
Dort sind die folgenden Dateien vorhanden:
pi@raspi4modbus:/mnt/RAMDisk $ ls
E3dcCache.txt E3dcRscpData.txt E3dcWbCache.txt Unixtime.txt
E3dcGuiChar.txt E3dcRscpWbData.txt IdlePeriods.txt ValueTo.txt
Hier die Ausgabe auf dem Raspberry:
/mnt/RAMDisk/E3dcGuiData.txt konnte NICHT geoeffnet werden. (BitRead)
Notstromreserve setzen
EP Reserve Max = 0
Falsche Eingabe für argv[3] in Wh!
Wert von 0 - <= 80% von Max wählen
Beispiel = RscpSet -ep 12800 4000
Ich hoffe, mit diesen Angaben kannst Du eine Ursache erkennen. (Ich benutze nicht das Display)
Viele Grüße
Johannes
Re: Anbindung an Stromspeicher E3DC
Hallo Johannes,
mit der Ausgabe konnte ich jetzt den Fehler schnell erkennen.
Ich greife mit der Funktion "actionCheckHM" auf gespeicherte Daten der RscpMain zurück, die aber in der GuiMain aufbereitet werden. Aber da du die GuiMain (Display) nicht nutzt, fehlt dir die Datei "E3dcGuiCache.txt" und der Wert ist 0.
Da ich eine mögliche Abhilfe selber nicht so gut Testen kann, wäre es gut wenn du es erst testest und dann würde ich es für die Zukunft fest einbauen.
Was ist für die Abhilfe zu tun:
In der Datei "funktion.h" etwa bei Zeile 449 diesen Block:
ersetzen durch diesen Block:
Danach neu kompilieren mit:
und wie gestern beschrieben erneut starten und testen.
Wie gesagt mit positiv Rückmeldung baue ich es in die Software ein, wenn es noch nicht klappt müssen wir weiter suchen.
Ich hoffe es klappt.
VG Nico
mit der Ausgabe konnte ich jetzt den Fehler schnell erkennen.
Ich greife mit der Funktion "actionCheckHM" auf gespeicherte Daten der RscpMain zurück, die aber in der GuiMain aufbereitet werden. Aber da du die GuiMain (Display) nicht nutzt, fehlt dir die Datei "E3dcGuiCache.txt" und der Wert ist 0.
Da ich eine mögliche Abhilfe selber nicht so gut Testen kann, wäre es gut wenn du es erst testest und dann würde ich es für die Zukunft fest einbauen.
Was ist für die Abhilfe zu tun:
In der Datei "funktion.h" etwa bei Zeile 449 diesen Block:
Code: Alles auswählen
int readRscp(int RscpPosition)
{
int ret = BitRead("/mnt/RAMDisk/E3dcGuiData.txt", RscpPosition,PosMAX);
return ret;
}
Code: Alles auswählen
int readRscp(int RscpPosition)
{
int ret;
if(GUI == 1) ret = BitRead("/mnt/RAMDisk/E3dcGuiData.txt", RscpPosition,PosMAX);
else ret = BitRead("/mnt/RAMDisk/E3dcRscpData.txt", RscpPosition,PosMAX);
return ret;
}
Code: Alles auswählen
make Rscp/actionCheckHM
Wie gesagt mit positiv Rückmeldung baue ich es in die Software ein, wenn es noch nicht klappt müssen wir weiter suchen.
Ich hoffe es klappt.
VG Nico