Page 1 of 1

Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 24 Nov 2021, 16:54
by kulo9
Hallo zusammen,
ich arbeite gerade an einem Projekt und möchte über ModbusRTU Daten von diversen Geräten auslesen. Dafür verwende ich eine Kunbus Connect mit dem aktuellen Raspbian Buster. Da ich mehr als 32 Register auslesen muss habe ich in Pictory mehrere virtuelle ModbusRTU Master konfiguriert. Diese Vorgehensweise habe ich in der Vergangenheit bereits mehrfach ohne Problem unter Raspbian Stretch verfolgt.
Mit der aktuellen Raspbian Buster Version bekomme ich eine Device offset error:

Code: Select all

Warning: Device offset ERROR in piCtory configuration! Offset of 'ModbusRTU Master2' must be 339 but is 337 - Overlapping devices overwrite the same memory, which has unpredictable effects!!!
Warning: IO Input_Word_40 is not in the device offset and will be ignored
Für mein Verständnis deute die Fehlermeldung darauf hin, dass bei der Konfiguration der Offsets für die jeweiligen ModbusRTU Master die Position um 2 Byte, also einem InputWord, verrutscht sein muss. Wenn ich einen dritten ModbusRTU Master verwende ist die Überlappung durch den Folgefehler bei 4 Byte, was für mich die Überlegung des verrutschten offsets bestätigt.
Da ich den Offset nicht aktiv konfiguriere, sodern das automatisch passiert weiß ich nicht wie ich das Problem beheben kann. Ich würde nur ungern einfach wieder auf Raspbian Stretch wechseln oder das jeweils 1. bzw. 2 usw. Input_Word ungenutzt lassen um das Problem zu vermeiden.
Vielen Dank vorab für alle Vorschläge
Beste Grüße

Re: Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 28 Nov 2021, 17:30
by bertf
Same problem over here. The recent update of PiCtory (v1 -> v2) in Raspbian Stretch broke my settings in Stretch. Downgrading PiCtory didn't work. After installing Raspbian Buster I hoped to have a working version of PiCtory, but after adding the second ModbusRTUMaster revpipyload starts complaining about an Device offset ERROR. It seems there are some issues going on in the latest version of the software. Hope to hear a decent solution from anyone soon.

Re: Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 29 Nov 2021, 14:27
by nicolaiB
Hi Kulo9,

kannst du deine config.rsc teilen? Dann schaue ich mir das mal an. Sind alle aktuellen Aktualisierungen installiert? Ist das System mit dem Buster Image aufgesetzt worden oder ist es ein aktualisiertes, ehemals Stretch Image?

Gruß Nicolai

Re: Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 02 Dec 2021, 17:29
by kulo9
Hi Nicolai,
ich habe die .rsc angefügt, als .zip weil .rsc als Format nicht unterstützt wird.
Ich hatte Revpi Connect so geliefert bekommen mit installiertem Raspbian Buster, daher gehe ich davon aus dass es eine Direktinstallation ist, ich habe jedenfalls keine Aktualisierung von Stretch vorgenommen. Die Pictory Konfiguration wurde vollständig und von Grund auf auf Buster erstellt.
Alle aktuellen Aktualisierungen sollten installiert sein (apt-get update; apt-get upgrade). Pictory, modbus-master, modbus-slave usw. wurden aktualisiert, habe ich explizit geprüft gehabt.
Vielen Dank fürs Anschauen.
Beste Grüße

Re: Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 05 Dec 2021, 18:46
by nicolaiB
Hi kulo9,

danke für deine Konfigurationsdatei. Ich habe die Fehlermeldung auf meinem Testsystem reproduzieren können.

Es handelt sich hierbei um eine mit revpimodio2 (die Bibliothek die auch revpipyload im Hintergrund nutzt) Version 2.5.8 eingeführte Warnung, welche auf eine (potenzielle) Überlappung im Prozessabbild hinweist. Die Warnung ist formal korrekt und zeigt, dass sich in der Beschreibungsdatei des virtuellen ModbusRTU Masters offenbar seit Begin an ein offset Fehler in den memories eingeschlichen hat. Aufgrund der Implementierungsart der virtuelle Revolution Pi Modbus Devices ist dieser Fehler jedoch nie aufgefallen, da er hier keine Rolle spielte. Revpimodio erwartet aber nun -zurecht- eine korrekte Adressierung innerhalb der Konfigurationsdatei, sodass wir den Fehler zeitnah addressieren und eine aktualisierte Gerätebeschreibungsdatei bereitstellen werden.

Um deine derzeit aktuelle Konfiguration zu korrigieren kannst du folgendes Script verwenden: https://gist.github.com/nbuchwitz/7c7f3 ... 70e657ce6b Eine kurze Anleitung wie zu verfahren ist, findest du im Kommentar unter dem Script.

Bitte beachte, dass das Script nur die gespeicherte Konfiguration anpasst und somit ein erneuter Aufruf notwendig ist, nach dem Hinzufügen neuer ModbusRTU Master. Sobald ein aktualisiertes Paket mit der Gerätebeschreibungsdatei zur Verfügung steht werde ich es hier bekannt geben.

Gruß Nicolai

Re: Mehrere virtuelle Master Modbus RTU - Device offset error

Posted: 06 Dec 2021, 10:56
by kulo9
Hi Nicolai,
danke dir für die zügige Rückmeldung und Lösung. Ich habe mir das Skript und die Erläuterung angeschaut, sieht alles nachvollziehbar und unkompliziert umsetzbar aus.
Werde das entsprechend testen und verwenden bis die von dir angesprochene Anpassung erfolgt ist.
Vielen Dank für deine Hilfe!!!

Beste Grüße