Allgemeine Frage zu einem RS485 Protokoll

Baumgarden

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo.

Ich soll zu Testzwecken mal ein Programm zur Kommunikation mit Modbus RS485 schreiben. Ich nutze dafür die RAD Studio Komponente ModLink, welche speziell für die Kommunikation mit Modbus geschrieben ist. Ich habe dazu einen Slave(Server) erstellt, der 100 Register vorhält und einen Master(Client) der die Register abfragt. Das hat insofern mit meinen Test auch gut funktioniert. Jetzt habe ich das Programm an unseren Partner weitergegeben und der teilt mir nun mit das es nicht funktioniert. Mein Master(Client) schreibt in die Errorlog immer:
Zitat:
Failed (reply does not match request)
Failed (reply does not match request)
Timed out (no reply)

Also eine Verbindung scheint bestanden zu haben, da FAILED nur auftreten kann wenn eine Rückantwort erhalten wurde, aber scheinbar bei der Auswertung dieser ein Exception auftrat.

Die Vorgabe die ich erhalten habe war:
Zitat:
Interface: RS485
Data rate: 9600 Baud
Data bits: 8
Stopp bit: 1
Parity: no
Protocol: Modbus RTU Master
Function code: 10h


Meine zwei Fragen sind jetzt:

1. Wenn Master(Client) und Slave(Server) unterschiedliche "Silent Intervals" haben, kann es dann zu dieser Fehlermeldung kommen?

oder

2. Ich weiß nicht wirklich was dieses "Function code: 10h" in dem Protokoll bedeuten soll und ich damit anfangen. Soweit wie ich mich in das Thema eingelesen habe, würde ich das "10h" als Schreibkommando verstehen, allerdings lesen wir nur vom Slave(Server). Hat jemand Erfahrung und kann sich denken was diese "10h" hier bedeuten sollen?

Über Tipps und Idee würde ich mich sehr freuen.
 
Zurück
Oben