Stabilität Modbus

Allgemeine Fragen rund um die "Smart Home" Hardware/Komponenten

Moderatoren: seppy, udo1toni

Antworten
byteschubser
Beiträge: 20
Registriert: 6. Feb 2020 09:49

Stabilität Modbus

Beitrag von byteschubser »

Hallo Zusammen

setzt ihr mit OpenHAB2 Komponenten ein, die via Modbus Seriall (RTU) kommunizieren? Mich würde da die Stabilität der Verbindung interessieren.

Ich habe sehr viele CRC Fehler. Ursprünglich waren Wechselrichter, Solarlog und Stromzähler alle an einem Bus. Das war "schlimm". Nun habe ich den Bus aufgetrennt.

1. Bus Wechselrichter und Solarlog
2. Bus alle Stromzähler

Der 1. Bus macht mir richtig Sorgen. Da gehen die CRC Fehler so weit, dass nur noch ein Neustart die Items des Wechselrichters wieder Online bringt. Ich bin nun soweit, dass ich täglich in der Nacht OpenHAB neu starte.

Der 2. Bus mit den Stromzähler hat immer mal wieder einen CRC Fehler aber ausgestiegen ist mir noch kein Item seit dem ich den Bus aufgetrennt habe.


Als Kabel verwende ich Cat5e. Der 1. Bus ist 12 Meter lang, der 2. Bus ist knappe 6 Meter. Bei beiden benutze ich einen RS485-USB-Konverter und beide sind auch Terminiert.


Im Log siehts quasi so aus:

Code: Alles auswählen

2020-02-12 07:03:29.563 [ERROR] [t.wimpi.modbus.io.ModbusRTUTransport] - Last request: 02 03 7e 12 00 03 bd d5
2020-02-12 07:03:29.564 [ERROR] [t.wimpi.modbus.io.ModbusRTUTransport] - failed to read: CRC Error in received frame: 161 bytes: 02 03 9e 34 00 0c 2b da 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 34 00 0c 2b da 02 03 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 33 02 03 9e ee 00 04 0b e7 02 03 08 00 00 00 00 00 00 00 00 9a 93 02 03 9e 4d 00 02 7b c7 02 03 04 00 00 00 00 c9 33 02 03 9e 4f 00 03 1b c7 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 70 00 02 ea 0b 02 03 04 00 28 34 a2 de 42 02 03 9e 55 00 01 bb c1 02 03 02 00 00 fc 44 02 03 9e 7c 00 03 eb c8 02 03 06 00 00 00 00 00
2020-02-12 07:03:29.565 [ERROR] [pi.modbus.io.ModbusSerialTransaction] - execute try 1/1 error: I/O exception: IOException CRC Error in received frame: 161 bytes: 02 03 9e 34 00 0c 2b da 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 34 00 0c 2b da 02 03 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 33 02 03 9e ee 00 04 0b e7 02 03 08 00 00 00 00 00 00 00 00 9a 93 02 03 9e 4d 00 02 7b c7 02 03 04 00 00 00 00 c9 33 02 03 9e 4f 00 03 1b c7 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 70 00 02 ea 0b 02 03 04 00 28 34 a2 de 42 02 03 9e 55 00 01 bb c1 02 03 02 00 00 fc 44 02 03 9e 7c 00 03 eb c8 02 03 06 00 00 00 00 00 . Request: net.wimpi.modbus.msg.ReadMultipleRegistersRequest@51129e2a (unit id 2 & transaction 716). Serial parameters: SerialParameters@18a21462[portName=/dev/ttyUSB1,baudRate=9600,flowControlIn=none,flowControlOut=none,databits=8,stopbits=1,parity=none,encoding=rtu,echo=false,receiveTimeoutMillis=3000]
2020-02-12 07:03:29.566 [ERROR] [pi.modbus.io.ModbusSerialTransaction] - execute reached max tries 1, throwing last error: I/O exception: IOException CRC Error in received frame: 161 bytes: 02 03 9e 34 00 0c 2b da 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 34 00 0c 2b da 02 03 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 33 02 03 9e ee 00 04 0b e7 02 03 08 00 00 00 00 00 00 00 00 9a 93 02 03 9e 4d 00 02 7b c7 02 03 04 00 00 00 00 c9 33 02 03 9e 4f 00 03 1b c7 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 70 00 02 ea 0b 02 03 04 00 28 34 a2 de 42 02 03 9e 55 00 01 bb c1 02 03 02 00 00 fc 44 02 03 9e 7c 00 03 eb c8 02 03 06 00 00 00 00 00 . Request: net.wimpi.modbus.msg.ReadMultipleRegistersRequest@51129e2a (unit id 2 & transaction 716). Serial parameters: SerialParameters@18a21462[portName=/dev/ttyUSB1,baudRate=9600,flowControlIn=none,flowControlOut=none,databits=8,stopbits=1,parity=none,encoding=rtu,echo=false,receiveTimeoutMillis=3000]
2020-02-12 07:03:29.566 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusPollerThingHandlerImpl.ModbusPollerReadRequest@552d10d0[slaveId=2,functionCode=READ_MULTIPLE_REGISTERS,start=32274,length=3,maxTries=3]). Will try again soon. Error was I/O error, so reseting the connection. Error details: net.wimpi.modbus.ModbusIOException I/O exception: IOException CRC Error in received frame: 161 bytes: 02 03 9e 34 00 0c 2b da 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 34 00 0c 2b da 02 03 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 33 02 03 9e ee 00 04 0b e7 02 03 08 00 00 00 00 00 00 00 00 9a 93 02 03 9e 4d 00 02 7b c7 02 03 04 00 00 00 00 c9 33 02 03 9e 4f 00 03 1b c7 02 03 06 00 00 00 00 00 00 35 85 02 03 9e 70 00 02 ea 0b 02 03 04 00 28 34 a2 de 42 02 03 9e 55 00 01 bb c1 02 03 02 00 00 fc 44 02 03 9e 7c 00 03 eb c8 02 03 06 00 00 00 00 00  [operation ID 4c808e18-6293-43f5-8229-498cbe154587]
Das einzige was ich noch versuchen kann, wäre die Baud Rate zu reduzieren auf 4800 oder gar 1200. Ich sehe aber nicht wirklich dass das was bringen könnte.

Irgendwelche Ideen?

Danke und schöne Grüsse
Uwe
OpenHAB2 Server:
- Supermicro A2SAV in SuperChassis 502L-200B (Intel Atom E3940, CentOS 8, 8GB RAM, 250GB NVME)
- APC Backup UPS 650
- Persistance: Percona Server for MySQL
- Visualisierung: Grafana

Smarte Gadgets:
- Homematic CCU3, Garagentortaster WGC, Heizkörperventile eTRV-2
- optische und magnetische Fenster- und Türsensoren
- Netatmo Regen-, Wind-, Innen- und Aussensensor
- diverse Philips Hue Lampen, Leuchten und Schalter
- diverse Carlo Gavazzi 1- und 3-Phasenzähler

Strom:
12kWp, 40xTrina Mono (2 Strings), Huawei 12KTL, SolarLog 1200, 220° Süd-West, 20° Pultdach

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Stabilität Modbus

Beitrag von PeterA »

Hi,

Hier mein ModBus Projekt:
viewtopic.php?f=8&t=1355

Habe unsere Lüftungsanlage in OpenHab eingebunden.
Läuft nun fast ein Jahr ohne Probleme.
CRC Fehler sind äußerst selten. Wobei der Raspi auch direkt bei der Anlage steht. Also sehr kurze Leitungslänge.

Welchen ModBus Adapter benutzt Du ?
- OpenHab 2.4
#PWRUP

byteschubser
Beiträge: 20
Registriert: 6. Feb 2020 09:49

Re: Stabilität Modbus

Beitrag von byteschubser »

Hallo Peter

als Adapter nutze ich diesen: https://www.digitec.ch/de/s1/product/oe ... ul-5999133

Leitungslänge denke ich nicht dass das das Problem ist.

Zwischenzeitlich bin ich einen Schritt weiter und denke ziemlich sicher, dass mein Problem ein Multimaster Problem ist: Der Huawei Wechselrichter wird via Modbus abgefragt. Diese Abfragen kommen vom SolarLog und dienen der Darstellung der Stromproduktion. Das Solarlog kann ich via JSON API auslesen aber da fehlen mir ca 2/3 der statistischen Daten. Darum wollte ich nun den Wechselrichter direkt auslesen. Funktioniert, aber eben mit der "Flut" an CRC Fehlern und den beschriebenen Folgen.

Nun muss ich mir wohl überlegen:
- SolarLog abschalten und aufs Portal verzeichten
- mit den Fehlern und den nächtlichen Neustarts leben
- 169US$ ausgeben und einen Sharer kaufen https://www.icpdas-usa.com/tsh_735

Danke & viele Grüsse
Uwe
OpenHAB2 Server:
- Supermicro A2SAV in SuperChassis 502L-200B (Intel Atom E3940, CentOS 8, 8GB RAM, 250GB NVME)
- APC Backup UPS 650
- Persistance: Percona Server for MySQL
- Visualisierung: Grafana

Smarte Gadgets:
- Homematic CCU3, Garagentortaster WGC, Heizkörperventile eTRV-2
- optische und magnetische Fenster- und Türsensoren
- Netatmo Regen-, Wind-, Innen- und Aussensensor
- diverse Philips Hue Lampen, Leuchten und Schalter
- diverse Carlo Gavazzi 1- und 3-Phasenzähler

Strom:
12kWp, 40xTrina Mono (2 Strings), Huawei 12KTL, SolarLog 1200, 220° Süd-West, 20° Pultdach

violine21
Beiträge: 589
Registriert: 20. Sep 2019 05:49
Answers: 7

Re: Stabilität Modbus

Beitrag von violine21 »

Hallo Uwe,
ich habe zwar keinen Huawei-Wechselrichter sondern einen Fronius aber wenn ich mich recht erinnere, hat der Huawei eine
optionale W-LAN-Schnittstelle.
Kannst Du da nicht etwas mit anfangen?

VG André

byteschubser
Beiträge: 20
Registriert: 6. Feb 2020 09:49

Re: Stabilität Modbus

Beitrag von byteschubser »

violine21 hat geschrieben:Hallo Uwe,
ich habe zwar keinen Huawei-Wechselrichter sondern einen Fronius aber wenn ich mich recht erinnere, hat der Huawei eine
optionale W-LAN-Schnittstelle.
Kannst Du da nicht etwas mit anfangen?

VG André
Hallo André

Leider nur die neueren -M0 Versionen der SUN2000 Wechselrichter. Meiner ist noch die alte HW ohne -M0 in der Typenbezeichnung. Da ist kein optionales WLAN Dongle möglich

Gruss Uwe


Gesendet von iPhone mit Tapatalk
OpenHAB2 Server:
- Supermicro A2SAV in SuperChassis 502L-200B (Intel Atom E3940, CentOS 8, 8GB RAM, 250GB NVME)
- APC Backup UPS 650
- Persistance: Percona Server for MySQL
- Visualisierung: Grafana

Smarte Gadgets:
- Homematic CCU3, Garagentortaster WGC, Heizkörperventile eTRV-2
- optische und magnetische Fenster- und Türsensoren
- Netatmo Regen-, Wind-, Innen- und Aussensensor
- diverse Philips Hue Lampen, Leuchten und Schalter
- diverse Carlo Gavazzi 1- und 3-Phasenzähler

Strom:
12kWp, 40xTrina Mono (2 Strings), Huawei 12KTL, SolarLog 1200, 220° Süd-West, 20° Pultdach

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Stabilität Modbus

Beitrag von udo1toni »

Es stellt sich die Frage, ob es etwas als Open Source gibt, was den Mehr-Master-Betrieb ermöglicht. Du hast ja schon zwei Modbusse, wenn es da ein Stück Software gäbe, könntest Du den SolarLog exclusiv anschließen und alle anderen Geräte am anderen Bus betreiben. Voraussetzung wäre halt, dass die Anfragen vom SolarLog dann geordnet auf den anderen Modbus durchgereicht werden können.
Ich bin allerdings überhaupt nicht im Thema drin, so dass ich keine Idee habe, nach welchen Stichworten man da suchen muss, ich könnte mir aber vorstellen, dass Du nicht der Einzige mit diesem Problem bist (es gibt ja sogar fertige Hardware dafür...)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

byteschubser
Beiträge: 20
Registriert: 6. Feb 2020 09:49

Re: Stabilität Modbus

Beitrag von byteschubser »

udo1toni hat geschrieben: 13. Feb 2020 13:13 Es stellt sich die Frage, ob es etwas als Open Source gibt
Ich werde mich jetzt in diese Richtung umschauen. Von den angeschriebenen Firmen kam entweder keine Antwort oder "pech, Sie sind nur eine Privatperson". Notfalls selber coden. Vielleicht genügen ja meine C Kenntnisse dafür...

Im Moment habe ich die Modbus zum Wechselrichter deaktiviert und lese die daten via HTTP/JSON aus dem SolarLoag aus. Mir fehlen zwar die Details aber die wichtigsten Werte gibts auch da.
OpenHAB2 Server:
- Supermicro A2SAV in SuperChassis 502L-200B (Intel Atom E3940, CentOS 8, 8GB RAM, 250GB NVME)
- APC Backup UPS 650
- Persistance: Percona Server for MySQL
- Visualisierung: Grafana

Smarte Gadgets:
- Homematic CCU3, Garagentortaster WGC, Heizkörperventile eTRV-2
- optische und magnetische Fenster- und Türsensoren
- Netatmo Regen-, Wind-, Innen- und Aussensensor
- diverse Philips Hue Lampen, Leuchten und Schalter
- diverse Carlo Gavazzi 1- und 3-Phasenzähler

Strom:
12kWp, 40xTrina Mono (2 Strings), Huawei 12KTL, SolarLog 1200, 220° Süd-West, 20° Pultdach

mcdandrew
Beiträge: 163
Registriert: 13. Dez 2018 17:42

Re: Stabilität Modbus

Beitrag von mcdandrew »

Ich habe seit kurzem einen Huawei Sun2000-12KTL M2 am Laufen.
Dieser ist mit dem optional erhältlichen WLAN Dongle netzwerktechnisch eingebunden.
Leider dient dieser nur dazu die Daten zum Hersteller zu übertragen um diese dann in der App zu visualisieren.
Ein lokales HTTP interface gibt es nicht.

Gibt es trotzdem eine Möglichkeit den Wechselrichter in Openhab einzubinden?

Antworten