Ich habe nach einigen Anfangsschwirigkeiten Modbus unter RevPi am laufen. Leider bricht nach einiger Zeit die Kommunikation ab.
Zum Aufbau:
Revpi Core S mit Waveshare USB-Modbus-RTU
Modbushardware mit 16 Analogeingängen
Pictory Modbus RTU-Master eingestellt mit 16 ActionIDs auf die 16 Lese-Register (FunctionCode 3)
Nach einem Rechnerneustart läuft alles wie es soll. Aber nach einigen Stunden werden keine Daten mehr empfangen.
Lesen über piTest liefert immer die alten Messwerte.
piTest -1 -r Modbus_Action_Status_1;piTest -1 -r Modbus_Master_Status liefert:
Code: Select all
1 Byte-Value of Modbus_Action_Status_1: 0 dez (=00 hex)
1 Byte-Value of Modbus_Master_Status: 0 dez (=00 hex)
Nun habe ich die Intervalzeit von 1000ms auf 10000ms erhöht. Aber die Zeit zwischen Start und Ausfall bleibt scheinbar gleich.
Leider läßt sich die Ausfallzeit nicht genau bestimmen, da einfach immer weiter die alten Werte zurückgegeben werden, bzw unter Node Red keine Änderung mehr kommt.
Der Ausfall läßt sich nicht über einen Treiber-Reset nicht beheben. Da wird nur Modbus_Master_Status: 255 dez ausgegeben.
Bis jetzt half nur Reboot
Wo liegt der Fehler?