Benachrichtigungen
Alles löschen

Raspberry PICO, Circuit Python, MQTT, ModBus & EPEVER auslesen

9 Beiträge
3 Benutzer
4 Likes
1,242 Ansichten
Lunax
(@lunax)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 36
Themenstarter  

Um meinen EPEVER auszulesen habe ich mit CircuitPython auf einem Raspberry PICO W eine kleine Anwendung geschrieben, die nun alle Register des EPEVERs auslesen kann und per MQTT an einen MQTT-Broker überträgt.

Die aktuelle Version 0.2.0 beinhaltet

  • Rahmenprogramm
  • ModBus Klasse
  • EPEVER Klasse
  • MQTT Klasse

Im nächsten Schritt kommen noch folgende Erweiterungen hinzu

  • Auslesen meines DalyBMS Systems 
  • Auslesen meines Inverters (bzw. nur wieviel Watt in mein Hausnetz eingespeist wird)

 

https://github.com/mrRobot62/solar_epever

 

Was mich tatsächlich mal interessieren würde

  • funktionieren alle EPEVER Charger via RS485 gleich - gleiche Register und so weiter - vielleicht kann das einer Testen
  • da die ModBus-Klasse generisch entwickelt wurde, sollte es relativ einfach sein andere ModBus-Fähige Devices anzusteuern und auszulesen.
  • Über Feedback würde ich mich freuen
  • Bugs bitte über das GitHub als Issue erfassen. Ich versuche es dann zeitnah zu fixen

   
DerRudi and E-t0m reacted
Zitat
(@derrudi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 59
 

Moin, 

Ich suche gerade nach einer Möglichkeit meine Epever 8420 mit dem Venus OS zu verbinden.

Die ganzen Daten der beiden Epever stehen bereits über MQTT zur Verfügung. Die Daten werden von einem anderen Visualisierungsprogramm "Solaranzeige" zur Verfügung gestellt. 

Ich habe aber leider keinen Ahnung wie ich die beiden mit einbinden kann.

Kann ich mit deinem Skript etwas anfangen? 

Gruß Rudi 


   
AntwortZitat
Lunax
(@lunax)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 36
Themenstarter  

@derrudi Ehrlich gesagt bin ich mir jetzt nicht ganz sicher ob ich dich korrekt verstehe

Du schreibst:
Die ganzen Daten der beiden Epever stehen bereits über MQTT zur Verfügung. Die Daten werden von einem anderen Visualisierungsprogramm "Solaranzeige" zur Verfügung gestellt. 

Daraus entnehme ich, beide EPEVER werden JETZT schon über RS485 abgefragt und deren Daten werden über MQTT an einen MQTT-Broker übermittelt. Die Frage ist - diese Solar-Anzeige - die läuft irgendwie auf Deinem Rechner? Von Deinem Rechner ist dann ein Kabel zu den EPEVER oder wie ist das installiert bei Dir?

Das heißt, du hast schon etwas was die gerate ausliest. Das was du aktuell verwendest - scheint etwas ähnliches zu sein wie meine Scripte

Ich habe aber leider keinen Ahnung wie ich die beiden mit einbinden kann.

Tja und hier bin ich jetzt etas "abgehängt". Deine EPEVERS übertragen doch schon was via MQTT irgendwo hin - die Frage ist WOHIN

jetzt stellt sich die Frage:

...anderen Visualisierungsprogramm "Solaranzeige" angezeigt

Für die EPEVER gibt es ein RS485-TCP Anschluß oder Bluetooth oder halt so wie ich es gemacht habe. Die ModBus Daten werden in dein HausLAN oder ggf. per BLE übertragen und von dort dann vielleicht über Dein Solar-Dingens-Anzeige abgefragt - keine Ahnung.

Um Deine Frage also zu beantworten, benötige deutlich mehr Informationen zu

  • Dieses Solar-Anzeige - wo läuft das? 
  • Ist das eine WebAnwendung oder irgendwie ein installiertes Programm auf Deinem Rechner?
  • An den EPEVER was ist dort genau angeschlossen - BlueTooth oder TCP oder was anderes?
  •  

und und und .....

 


   
DerRudi reacted
AntwortZitat
(@derrudi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 59
 

Die Solaranzeige ist ein Programm das auf einem Raspberry lauft. Die Beiden Epever sind mittels RS485 zu USB am Raspberry angeschlossen. MQTT wird nur von dem Programm bereitgestellt um die Daten anderweitig zu verwenden.


   
AntwortZitat
Lunax
(@lunax)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 36
Themenstarter  

@derrudi Ah schau an. OK damit sind wir schon mal ein Stück weiter 🙂

RS485 auf USB ist genau das was ich auch gemacht habe. Somit wäre mein Script vermutlich für Dich nutzbar 🙂

So um meine Neugier zu befriedigen 🙂

Das Raspberry nutzt du dann auch für VenusOS korrekt?

Dann sehe ich folgende Möglichkeit:

1) auf dem Raspberry mit VenusOS installierst du (wenn nicht schon vorhanden) den MQTT-Broker

2) du nutzt das Script incls eine RapsberryPICO installiert dort alles und richtest das entsprechend ein. Du brauchst dazu :
die IP-Adresse des Raspberries. Den Broker-Port (wie gesagt ich Default 1883).

Dann richtest du auf dem Pico dir das TOPIC so ein wie du es möchtest

MQTT_BROKER_IP="<ip-raspberry>
MQTT_PORT=1883
MQTT_PREFIX="EPEVER_SOLAR"
MQTT_TOPIC="EPVER"
MQTT_USER="<user-falls du das verwendest>"
MQTT_PW="Passwort"
# 10=Debug, 20=Info, 30=Warning, 40=Error, 50=Critical
MQTT_LOGLEVEL=20

ABER 

Da fällt mir gerade auf :-/ 

Du schreibst du hast zwei EPEVER. Heißt jeder EPEVER hat seine eigene ID (vermutlich hat der eine die 1 der andere die 2) - das hab ich in meinem Script noch gar nicht implementiert :-/ - hab ich überhaupt nicht dran gedacht - hab ja auch nur EINEN .Das kann ich aber noch einbauen.

Dann muss halt in der settings.toml halt die Geräte später noch konfiguriert werden.

Aber probiere das generell mal aus


   
AntwortZitat
(@derrudi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 59
 

Moin, heute habe ich zeit mich mit der Thematik auseinander zu setzen.

ich muss dazu sagen das ich mich mit Linux nicht ganz so dolle auskenne und mich meist mit Copy & Paste durchmogle.

Die Solaranzeige und das Venus OS laufen jeweils auf einem eigenen Raspberry.

zu 1) Mit dem MQTT Broker installieren ist das aktivieren in den Venus Einstellungen gemeint?

zu 2) Heist das jetzt das ich das PICO Skript auf dem Solaranzeige Raspberry ausführen soll oder Brauche ich zwingend ein PICO?

 

anbei ein Screenshot  wie die Solaranzeige die Daten zur Verfügung stellt.

 

 

 


   
AntwortZitat
Lunax
(@lunax)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 36
Themenstarter  

Moin, mir fällt es nicht ganz leicht deinem Setup zu folgen, daher muss ich mich erst mal "sortieren"

Ich verstehe Deine Setup wie folgt:

1. du hast ein Raspberry laufen (192.168.178.61), dort läuft ein MQTT-Broker drauf. Auf diesem Raspberry läuft ein Software die dir die Visualisierung Deiner EPEVERs (mppt_west/mppt_ost) darstellt

2. du möchtest ein NEUES (zweites) Raspberry aufsetzen auf dem VenusOS läuft und du möchtest, das zukünftig deine beiden EPVER dort hin die Daten übertragen

3. (wenn dann VenusOS) läuft, möchtest du das (1). Raspberry abschalten

Ist mein Verständnis korrekt?

Aber vielleicht sollten wir diese Diskussion via PN weiter führen, da sie zwischenzeitlich vom eigentlich THREAD-Inhalt völlig abweicht 😉


   
AntwortZitat
(@jarek)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 291
 

@lunax:

planst auch eine Version für VenusOS auf PI4? Inlove  


   
AntwortZitat
Lunax
(@lunax)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 36
Themenstarter  

@jarek hehehe : ich kenn ja VenusOS gar nicht :-/ - da ich komplett auf ioBroker aufsetze und mein komplettes System selbst zusammen gestellt habe, vermute ich mal ehr weniger interessant für mich selbst, da ich auch keinerlei Victron-HW besitze. Sorry

Grundsätzlich gesehen, wäre es aber schon interessant mal das Ganze auf einen Pi3 / Pi4 zu Portieren. Hab ich aber aktuell nicht auf meinem Plan - aber grundsätzlich sicherlich lohnenswert. Man könnte sich so den PICO sparen.

Vielleicht ist hier im Forum ja ein Python-Developer der Bock drauf hat, ich gehe davon aus, das es kein Rocket-Science werden sein wird diese Portierung.


   
jarek reacted
AntwortZitat
Teilen: