spezielles Modul für Siemens LOGO!8

Anfragen zum Erstellen von Modulen, Fragen zu Modulen
Antworten
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Hallo openWB Forum und Entwicklerteam!

Wir haben lange überlegt welche wallbox wir nehmen sollen weil ich zwar technisch versiert, aber mehr auf Niederspannung und Elektronik-HW fokussiert bin. Software, python und co sind nicht ganz meine Welt. Ich finde es klasse wie viel an Funktionsumfang in der openWB steckt und wie eifrig viele Leute am weiterentwickeln sind! Großen Dank an das openWB Team und an alle Mitwirkenden!

Meine openWB ist die Pro+. Derzeit sw2 2.1.8 alpha2.
Zum Glück bin ich bei der 2.1.8 eingestiegen weil ich derzeit als work around auf das neue Module um den Siemens PAC2200 als Speicher-Zähler angewiesen bin. Ich würde aber gerne die Einstellung E-Auto laden mit Mindeswert für den Speicher SoC. Das finde ich eine sehr gute Lösung zum Laden. Meinen work around müsste ich also verbessern...
Mein Problem das ich habe liegt an meinem SMA SBS5.0, weil dieser keine "stabilen" modbus Antworten schickt. Die kommen oft zu spät oder gar nicht. wireshark zeigt das sehr deutlich. SMA kann (will) mein Problem leider nicht lösen.
In meinem Hausautomatisierungssystem arbeitet auch eine Siemens LOGO!8.4. Die kann modbus client und server sein. Diese LOGO würde ich gerne als "Zwischenhändler" für die Daten nehmen. Die LOGO wird dann wenn nötig interpolieren. ...so mein Plan. Dafür wäre aber ein openWB Modul speziell auf meine Bedürfnisse zugeschnitten nötig. So zusagen Modul "Siemens LOGO Speicher-Zähler".

Ist es möglich dass ich so ein Modul schreibe und dann Teil der sw2 wird? Ich schreibe (Mithilfe von Kollegen) das Modul. github wird auch klappen. Wer würde das denn reviewen? Real testen würde ich es natürlich.

Zum neuen Modul selbst. Als Vorlage soll das Siemens Sentron Speicher-Modul dienen.
Übergabewerte aus LOGO8
- power in Watt (pos/neg)
- soc in %
- imported in Wh (insgesamt)
- exported in Wh (insgesamt)

power = self.__tcp_client.read_holding_registers(600, ModbusDataType.INT_16, unit=self.__modbus_id) * -1
soc = self.__tcp_client.read_holding_registers(602, ModbusDataType.INT_16, unit=self.__modbus_id)
imported = self.__tcp_client.read_holding_registers(604, ModbusDataType.INT_16, unit=self.__modbus_id)
exported = self.__tcp_client.read_holding_registers(606, ModbusDataType.INT_16, unit=self.__modbus_id)


Das solls jetzt mal mit meinen Fragen und Infos sein. Ich hoffe ihr könnt mir mal eure Sichtweise schreiben und hoffe dass mein Vorhaben so in etwa klappen könnte.

Besten Dank und viele Grüße,
Markus
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

Re: spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Ich habe mir helfen lassen.
pull request ist gestellt. https://github.com/openWB/core/pull/2438/files

Wie geht es nun weiter? Muss ich noch etwas machen?

Andere Frage wie kann ich diesen branch von mir selber auf die openWB bringen für Tests? Ich habe leider keine Anleitung für die openWB gefunden und mir fehlt das Wissen dazu.
LutzB
Beiträge: 4031
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 11 times
Been thanked: 89 times

Re: spezielles Modul für Siemens LOGO!8

Beitrag von LutzB »

Ist vielleicht etwas spät als Rückmeldung, aber außer Dir kann niemand dieses Modul verwenden. Dafür ist es doch sehr speziell, da auch auf der Logo eigene Software mit selbst definierten Registern läuft.

Wenn die Logo Modbus/TCP kann, kann die nicht auch ein anderes Netzwerkprotokoll anbieten? Das einfachste wäre http mit einer JSON Antwort, die dann in openWB durch das JSON Modul abgefragt und geparst werden könnte.

Eine andere Alternative wäre, wenn die Logo die selben Register wie ein bereits vorhandener Zähler verwendet. Auch dann muss kein eigenes Modul in der openWB geschrieben werden.
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

Re: spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Da hast du natürlich Recht, dass vermutlich nur ich dieses Modul verwenden könnte. Ich würde auch anbieten dass ich bei Bedarf weitere Module für Logo für andere Anwendungen schreibe.
Leider bietet die Logo kein anderes lokales Protokoll das mit der openWB kompatibel ist.
Mein oben beschriebenes Problem mit dem SMA SBS haben vielleicht andere auch aber meine einzige mir bekannte Lösung mit vertretbaren Aufwand wäre ein Modul in der openWB. Und ich habe mir gedacht das wäre jetzt genau der "Geist" hinter open source und ich war schon ganz happy dass ich eine Lösung vor Augen habe.
An die Idee mit identischen Registern bin ich auch schon gekommen habe aber nichts passendes gefungen. Die logo hat eine feste vorschrift welche modbusregister mit welchen lokalen logo-registern gemapped werden.

@LutzB: kennst du eine Anleitung wie ich aus zB dem aktuellen master repo plus meinem logo-modul ein image für den RPi in der openwb pro+ erzeuge und aufspiele. Dann könnte ich das testen und falls mein pull request nicht angenommen wird hätte ich zumindest eine Lösung. Und wäre weiterhin ein stolzer openwb Unterstützer :-)
LutzB
Beiträge: 4031
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 11 times
Been thanked: 89 times

Re: spezielles Modul für Siemens LOGO!8

Beitrag von LutzB »

Da ich die LOGO8.4 nicht kenne, habe ich mal ChatGPT bemüht.

Du kannst mit einer benutzerdefinierten HTML Seite arbeiten. Die könnte so aussehen.

Code: Alles auswählen

<script>
document.write('{ "temperature": ' + %MW0 + ', "humidity": ' + %MW2 + ' }');
</script>
Speicher die als "test.html" ab und greife mit einem Browser drauf zu.

Etwas experimenteller, soll aber auch funktionieren:

Code: Alles auswählen

{ "value": %MW0 }
Die Variable MW0 sollte auch hier von der Logo ersetzt werden.

Wenn das klappt, einfach mit allen Messwerten ein JSON Zusammensetzen und in der openWB den JSON Zähler verwenden.
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

Re: spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Nun habe ich heute nochmal einiges probiert...mit Erfolg so wie es aussieht. Der Anstoß war sicher dein Kommentar, LutzB! Danke!
Chatgpt hat hier leider etwas haluzieniert. Ein "MW" gibt es bei logo so nicht. Und http get requests kann die logo auch nicht. Die macht das irgendwie mit "server binding" für den logo eigenen webserver. Mit der Siemens Logo kenne ich mich aus. Mit http und python leider weniger.

Daraufhin habe ich mir deinen Tipp mit einem anderen Modbusgerät nochmal genauer angesehen. Und tatsächlich habe ich als einzige die "victron bat" gefunden. Probiert hätte ich auch noch solarmax und deye... ging leider nicht. Bei der victron bat kann ich power und soc aus der logo übergeben. Leider verlangt der victron auch noch das modbus holding register 5400. So hohe register kann die logo aber nicht und daher läuft die openwb immer in eine exeption rein.
Ich habe heute die openwb laden lassen und scheint sauber zu laufen. Im system log sind halt ständig diese exeptions weil ich reg 5400 nicht korrekt schreibe.
Könnte das ein Problem für mich werden?

Am liebsten wäre mir nach wie vor dass mein pull request für das eigene logo modul angenommen wird. Ich kann aber natürlich verstehen dass das nicht gewünscht ist.
LutzB
Beiträge: 4031
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 11 times
Been thanked: 89 times

Re: spezielles Modul für Siemens LOGO!8

Beitrag von LutzB »

Ok, habe ChatGPT jetzt mal gebeten, das ganze nochmal zu validieren und länger nachzudenken. Dabei ist herausgekommen, dass es bei der 8.4 doch keine Lösung für diese Aufgabe gibt. :(

Vielleicht sollten wir uns dann eher um die direkte Abfrage durch die openWB an den SBS kümmern? Das dürfte eine relativ häufig verbaute Komponente sein, die von openWB dann auch aktiv unterstützt werden sollte. Am Besten beschreibst Du mal genau, zu welchen Fehlern es bei der Auslesung kommt. Wichtig ist, dass immer nur ein Gerät (dann die openWB) per Modbus/TCP abfragt. Deine LOGO oder andere Systeme dürfen dann nicht mehr auf den SBS zugreifen!
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

Re: spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Okay gerne!
Ich dachte auch dass den SBS einige per modbus verwenden. Offensichtlich haben die keine Probleme so wie ich (im inet finde ich nix darüber). Ich habe auch den starken Verdacht dass mein Gerät eine Macke hat. Leider konnte mir der SMA support nicht wirklich weiterhelfen. Den SMA Leitfaden für modbus habe ich penibelst genau umgesetzt. Ich versuche das Problem schon seit einigen Jahren zu lösen. Bis jetzt war es aber nicht so kritisch weil der SBS nicht Teil einer Regelung bei mir war, so wie jetzt bei der openWB für PV-Überschussladen.
Bei mir sieht es jetzt so aus... damit die openWB immer die bestmöglichen Werte für SoC und power (Wirkleistung) hat. (Vor allem power ist wichtig)
Verdrahtung_Haus_SBS_LOGO.jpg
Verdrahtung_Haus_SBS_LOGO.jpg (116.22 KiB) 151 mal betrachtet
Nun zum Problem. Zumindest den Teil der mir bekannt ist.
Ich sehe auf einem gespiegelten Port am switch den traffic vom/zum SBS. Außerdem sehe ich entweder an der LOGO oder an der openWB dass der modbus server (SBS) keine Antwort schickt oder die Antwort sehr spät schickt (receive timeout) (auch beim ModbusPoll emulator auf windows wars so). Vor allem dann wenn viel sonstiger Datenverkehr zum SBS stattfindet, aber auch sonst wenn kein http Zugriff passiert. Der einzig nötige Datentransfer ist vom SMA EVU-Zähler damit der SBS weiß was er laden und entladen soll. Es zeigt sich dann in der openWB dass immer wenn kein modbus-Paket erhalten wird dann wird als Wert "0" angenommen. Also Null für SoC und power!! und das passiert leider sehr häufg und sehr willkührlich und manchmal auch sehr lange Zeit.
Ich werd schaun dass ich noch eine wireshark Aufzeichung mache. Die letzten habe ich leider gelöscht. Evtl kannst du da mehr rauslesen als ich. Ich hoffe das war jetzt verständlich sonst bitte noch mal fragen. Und danke dass du so engagiert dabei bleibst!

Weitere Anmerkung:
Ich verwende auch weitere SMA Geräte per modbus (SMA Tripower PV-WR) und da habe ich das Problem noch kein einziges Mal detektiert.
openWB
Site Admin
Beiträge: 9073
Registriert: So Okt 07, 2018 1:50 pm
Has thanked: 47 times
Been thanked: 112 times

Re: spezielles Modul für Siemens LOGO!8

Beitrag von openWB »

In der Vergangenheit hatten wir ein paar Fälle da war die speedwire/ kommunikationsplatine am SMA halb defekt.

Auch können Erdungsthemen / Potentialunterschiede ursächlich sein.
Supportanfragen bitte NICHT per PN stellen.
Hardwareprobleme bitte über die Funktion Debug Daten senden mitteilen oder per Mail an support@openwb.de
MaMu00123
Beiträge: 6
Registriert: Di Apr 08, 2025 6:05 pm

Re: spezielles Modul für Siemens LOGO!8

Beitrag von MaMu00123 »

Interessante Info ... und wie hat sich "halb defekt" ausgewirkt? So wie bei mir?
Kannst du das mit Erdungsthemen und Potentialunterschiede genauer erläutern? Was müsste ich oder mein Elektiker kontrollieren/verbessern? Ich denke schon dass das alles nach den Vorschriften verdrahtet ist.
Von SMA erwarte ich mir ehrlich gesagt nicht mehr viel weil den Kundendienst hat nur interessiert ob die "Hauptfunktion" noch läuft und der Rest sollte der Elektriker lösen. Nur leider sind wir da nicht weitergekommen. Ich bin auch nicht bereit für viele 100€ auf gut Glück Platinen zu tauschen. Der SBS ist von 2021 und da sinkt dann wohl das Interesse bei SMA eine "nive to have" Funktion zu supporten.
Antworten