Forum: Mikrocontroller und Digitale Elektronik Modbus mit USB/RS485-Adapter


von Andreas B. (abue)


Lesenswert?

Hallo,

bei einer Modbus-Kommunikation zwischen einem Gerät (Slave) und einem PC 
(Master) mit einem USB/RS485-Adapter treten ab und zu 
Kommunikationsprobleme auf. Mit einem RS232/RS485-Adapter an der 
normalen COM-Schnittstelle traten keinerlei Probleme auf. Die gemeldeten 
Fehler des Master Terminal-Programmes waren: 'Incompletes' und manchmal 
auch 'Inv. Requests'.

Ich vermute die Ursache liegt beim stockenden Abruf der Daten vom 
USB-Controller durch den Master -> evtl. Treiber-Problem oder Windows.
Der USB/RS485-Adapter ist mit einem USB-Controller von FTDI bestückt, 
habe auch schon einen anderen Adapter mit einem PL-2303 ohne Erfolg 
probiert.

Bei Anfrage an den Support an FTDI ergab:
"The only mechanism we have for resolving data loss on a serial link is 
to use flow control.It is also worth noting that although we do not 
claim modbus support, it has been reported from other users that 
although modbus ascii mode works, modbus rtu will not. This is a 
consequence of RTU mode relying on specific inter byte gaps which USB 
cannot meet as it is a polled system sending data in packets as opposed 
to individual bytes."

Nun ist der Modbus aber doch recht weit verbreitet und andere Feldbusse 
dürften wohl ähnlich funktionieren. Ebenso ist die normale 
COM-Schnittstelle am aussterben, d.h. man ist auf die USB-Schnittstelle 
angewiesen.

Hat jemand für dieses Problem schon eine Lösung gefunden, bzw. kennt 
jemand Adapter die damit zurechtkommen?

Gruss Andreas

von Timmo H. (masterfx)


Lesenswert?

Du kannst im Gerätemanager im Treiber des FTDIs die Buffer verändern. 
Vielleicht bringt das auch schon was.

von Klaus S. (skibby)


Lesenswert?

Hallo Andreas,

vielleicht hilft Dir das ja weiter:

http://www.ftdichip.com/Documents/AppNotes/AN232B-04_DataLatencyFlow.pdf

Gruß,
Klaus Skibowski

von Volker Z. (vza)


Lesenswert?

Die RS-232 ist noch lange nicht am aussterben. Zumindest nicht im 
industriellen Umfeld. Des weiteren ist USB im industriellen Umfeld 
sowieso nicht die richtige Wahl. Ich hatte mal den Fall, das immer wenn 
der 25T-Hallenkran bremste, sich das USB-Device aufhängte.

Nimm Einsteckkarten. Giebt es für jeden internen PC-Bus. Auch gleich auf 
RS-485, auch Optoisoliert wenn es sein muss.

von Andreas B. (abue)


Lesenswert?

Timmo H. schrieb:
> Du kannst im Gerätemanager im Treiber des FTDIs die Buffer verändern.
> Vielleicht bringt das auch schon was.

Hallo Timmo,

an den Parametern (Buffer und Wartezeit) habe ich schon rumgespielt, 
bzw. systematisch verändert und beobachtet wie häufig die Fehler 
auftraten. Richtig gut wurde es leider nie.

Gruss Andreas

von Andreas B. (abue)


Lesenswert?

Klaus Skibowski schrieb:
> Hallo Andreas,
>
> vielleicht hilft Dir das ja weiter:
>
> http://www.ftdichip.com/Documents/AppNotes/AN232B-04_DataLatencyFlow.pdf
>
> Gruß,
> Klaus Skibowski

Hallo Klaus,

das Dokument hatte ich auch schon in der Mangel und dort stand auch, 
dass die Verwendung einer Flusskontrolle sehr zu empfehlen wäre, 
ansonsten droht Datenverlust.
Eine Flusskontrolle mit RTS/CTS oder DTR/DSR fallen bei RS485 aber 
leider aus und Xon/Xoff werden ja beim Modbusprotokoll nicht 
unterstützt.

Gruss Andreas

von Andreas B. (abue)


Lesenswert?

Volker Zabe schrieb:
> Die RS-232 ist noch lange nicht am aussterben. Zumindest nicht im
> industriellen Umfeld. Des weiteren ist USB im industriellen Umfeld
> sowieso nicht die richtige Wahl. Ich hatte mal den Fall, das immer wenn
> der 25T-Hallenkran bremste, sich das USB-Device aufhängte.
>
> Nimm Einsteckkarten. Giebt es für jeden internen PC-Bus. Auch gleich auf
> RS-485, auch Optoisoliert wenn es sein muss.

Hallo Volker,

viele neue Notebooks sind mittlerweile ohne serielle Schnittstelle 
ausgestattet und da können leider auch keine Einsteckkarten verwendet 
werden.
Die Geräte mit dem Modbus-Client sind übrigens für den Laborbereich, auf 
der PC-Seite sollte dann ProfiLab oder evtl. Labview (leider sehr 
teuer!) zum Einsatz kommen.

Gruss Andreas

von Volker Z. (vza)


Lesenswert?

http://www.google.de/search?q=rs485+einsteckkarten

Aber es giebt immer noch die PCMCIA-Steckplätze.
(Laptops für Manager ausgeschlossen)

http://www.google.de/search?q=rs485+pcmcia

Ist dann auch voll Kompatible mit ProfiLab, Labview etc.

von Andreas B. (abue)


Lesenswert?

Volker Zabe schrieb:
> http://www.google.de/search?q=rs485+einsteckkarten
>
> Aber es giebt immer noch die PCMCIA-Steckplätze.
> (Laptops für Manager ausgeschlossen)
>
> http://www.google.de/search?q=rs485+pcmcia
>
> Ist dann auch voll Kompatible mit ProfiLab, Labview etc.

das wäre eine mögliche Alternative,
vielen Dank!

Gruss Andreas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.