FHEM - Anwendungen > Solaranlagen

Solar EPEVER EPSOLAR u.ä. [98_ModbusEPEVER] [98_ModbusUPOWER] [98_ModbusIPOWER]

(1/19) > >>

laserrichi:
Hallo zusammen,

hier möchte ich euch mein erstelltes Modul vorstellen zur Anbindung von Solar Ladegeräten des Herstellers EPEVER.
Getestet wurde es mit einen  EPSolar Tracer 2210A. Die Modbus Readings sind bei allen EPSOLAR und baugleichen Geräten vermutlich gleich. Nicht alle Geräte können aber alle Readings.
Neu jetzt auch für die UPOWER Geräte das 98_ModbusUPOWER.pm Modul da diese abweichen. Leider kann ich das nicht testen da ich kein Upower Gerät habe.

Ich habe soweit möglich alle Readings eingebaut. Sie werden mit dem Intervall den man bei define mitgibt abgefragt. Zumindest die Realtime Werte werden genau in dem Intervall gelesen.
Die anderen Werte werden mit Faktor 180 abgefragt. Tägliche Statistikwerte werden mit Faktor 60 abgerufen.

Das setzen der Uhrzeit funktioniert jetzt auch aus FHEM, einfach nachdem man abgefragt hat genauso entsprechend editieren und setzen. Ebenso die Schaltzeiten können gesetzt werden.

Zwecks besserer Darstellung und Handhabung verwende ich hier folgende Attribute:


--- Code: ---Stateformat:

<b>Batterie:</b> <span style='color:#AAFF00'> BattStatus <br>Spannung: BattSpannung Strom: BattStrom A </span><br>
<b>Solarlader:</b><div style='color:#22FFFF'>LadePower: BattLadeLeistung LadeStrom: BattLadeStrom </div>
<b>Panel:</b> <div style='color:#FFDD00'> Leistung: PanelLeistung Spannung: PanelSpannung Strom: PanelStrom</div>
<b>Last:<br> Leistung: </b><span style='color:red'>LastLeistung </span>Spannung: <span style='color:red'>LastSpannung </span> Strom:<span style='color:red'> LastStrom </span><br>
<b>Status: <span style='color:#3333FF'>SolarladerStatus</b>

WebCmd:

ChargingOnOff:ManualControlLoad:DefaultControlLoad:LoadControllingMode:EnableLoadTest:ForceLoad

webCmdLabel:

ChargingOnOff:ManualControlLoad
:DefaultControlLoad:LoadControllingMode
:EnableLoadTest:ForceLoad
--- Ende Code ---

Ich hoffe das ist dem einen oder anderen nützlich ist.

Über Feedback freue ich mich natürlich. Anregungen für Verbesserungen oder Änderungen nehme ich gerne entgegen.

PS:Manche Readings sind English Deutsch etwas gemixt, bei so vielen Readings mit Spannungen Load usw... war es nicht einfach sinnlich auch zu erkennen für was das alles ist.

01.05.2021 Update Modul, diverse Anpassungen (Changelog im Modul)

02.08.2021 neues Modul ModbusUPOWER.pm
02.08.2021  Update ModbusEPEVER.pm
14.10.2021  Update ModbusEPEVER.pm Fehlerbehebung Status "Lädt nicht"


the ratman:
jetzt muß er auch noch bilder zu machen ... wie soll ich mich da beherrschen und die neue fw nicht aufspielen? die gier übersteigt langsam die angst vor dem verbruzzeln des teils *g*.

mfischer-ffb:
Hallo laserrichi,

vielen Dank für dein Modul, funktioniert hier soweit an meinen beiden EPEVER XTRA4415N und Tracer 1210AN ganz gut.

Aufgefallen ist mir dass der BattCapacityRemaining Wert (SOC) nur selten aktualisiert wird und ich das Laden nicht ausschalten kann, es steht zwar dann off im reading aber es wird weiter geladen....

Hab aber im quelltext keinen fehler entdecken können..
geht das bei dir problemlos ??

Danke
Gruß
Markus

laserrichi:
Hallo Markus,

BatteryCapacityRemaining  kann ich bestätigen, gerade ausprobiert. Wird obwohl es eigentlich jedesmal abgefragt werden soll nicht immer aktualisiert. Evtl. ein Thema der Anzahl Readings die in einem rutsch gelesen werden, das er sich da verschluckt.

Was meinst du mit Laden ausschalten ? Die ganzen Parameter hab ich von der epever modbus doku eingepflegt, es gehen nicht alle parameter bei jedem Laderegler. Und manche haben abhängigkeiten zueinander.
Welches Reading meinst du ? (ManualControlLoad  wenn du meinst, das ist der Lastausgang)
Soweit ich weis kann man das Laden der Batterie nicht abschalten, nur die Last.

laserrichi:
Ok, habe bei mir mit verbose 4 gesehen das ich viele ProcessRequestQueue called from HandleTimeout  bekomme.

Ich habe mal im Modul die zusammengefassten Readings reduziert:


--- Code: --- "i" =>  {       'combine' => '8',
--- Ende Code ---

somit hat es BattcapacityRemaining auch aktualisiert. Aber trotzdem hab ich noch HandleTimeout.
Vieleicht ist der einfach mit der Summe an Readings auf einmal überfordert. Evtl. noch weiter reduzieren. Standard wäre hier 1, aber dann wird für jedes Reading eine Abfrage gestartet.... Oder man baut hier delay noch mit ein zwischen den Requests.
Hier könnte man jetzt sagen, ich will manch werte doch nicht so oft lesen um den Traffic zu reduzieren.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln