Forum: Mikrocontroller und Digitale Elektronik Usb rs485 Txd Rxd


von Otti (Gast)


Lesenswert?

Hallo ich würde gerne wegen längerer Leitungen ein Serielles Signal vom 
pc über Rs485 senden. Am ende ist ein Messgerät welches schon rs485 
kann.
Allerdings soll diese Verbindung Bidirektional sein.
Zurzeit habe ich einen Usb rs232 Wandler und muss am 75176 von Hand 
umstecken ob senden oder empfangen.
Es gibt ja so Fertige usb rs485 Module (Ebay 391453992178) erkennen 
diese selbst wenn sie senden?

die Pc software sendet scheinbar auch keine Schaltsignale (dtr rts ...) 
Die Software ist eigentlich nur für die rs232 Verbindung zum Messgerät.

Oder gibt es im Linux eine Möglichkeit die Schaltsignale nachträglich in 
den "Treiber" einzubinden?

von Falk B. (falk)


Lesenswert?

@Otti (Gast)

>Allerdings soll diese Verbindung Bidirektional sein.

Voll oder halbduplex? RS485 ist meistens Halbduplex, also nur ein Paar 
Leitungen mit Umschaltung der Richtung.

>Zurzeit habe ich einen Usb rs232 Wandler und muss am 75176 von Hand
>umstecken ob senden oder empfangen.
>Es gibt ja so Fertige usb rs485 Module (Ebay 391453992178) erkennen
>diese selbst wenn sie senden?

>die Pc software sendet scheinbar auch keine Schaltsignale (dtr rts ...)
>Die Software ist eigentlich nur für die rs232 Verbindung zum Messgerät.

>Oder gibt es im Linux eine Möglichkeit die Schaltsignale nachträglich in
>den "Treiber" einzubinden?

Braucht man alles nicht, wenn man den richtigen IC nimmt. Der FT232 hat 
ein automatisch generiertes Steuersignal, das exakt dafür gemacht ist. 
Das ist aktiv, wenn Daten vom PC an TX gesendet werden. Damit steuert 
man das DE_/RE Signal des MAX485. Siehe Datenblatt des FT232, Signal 
TXDEN#, Abschnitt "7.2 USB to RS485 Coverter"

von Wolfgang (Gast)


Lesenswert?

Otti schrieb:
> Es gibt ja so Fertige usb rs485 Module (Ebay 391453992178) erkennen
> diese selbst wenn sie senden?

Das einfachste wird es sein, den schwarzen Deckel ab zu nehmen und zu 
gucken, woher das Signal für die Richtungsumschaltung/Freigabe des 
RS485-Treibers kommt. Genug Signale überträgt der CH341, so dass die 
Steuerung durch eine der Handshake-Leitungen wahrscheinlich ist.

von Falk B. (falk)


Lesenswert?

Ähh, wo liegt eigentlich das Problem? Für 4,95 das Ding kaufen und 
glücklich sein?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Die USB-Seriell-Bridges von FTDI bieten eine dedizierte Leitung zur 
Umschaltung des RS485-Treibers zwischen Sende- und Empfangsbetrieb an, 
da muss sich keine PC-Software drum kümmern, das ist transparent. Eine 
Ansteuerung über Handshakeleitungen per PC-Software ist aufgrund der bei 
USB nicht umgehbaren Latenzen sehr problematisch. Insofern ist der 
direkte Hardwareansatz eindeutig zu bevorzugen.

Details findet man nebst Musterbeschaltung in den jeweiligen 
Datenblättern von FTDI.

Allerdings ist auch das natürlich keine Vollduplex-Verbindung, sondern 
nur eine Halbduplex-Verbindung, was bei RS485 aber prinzipbedingt ist.

von Otti (Gast)


Lesenswert?

Das Problemchen liegt darin das ich eben nicht weiß (wusste) ob in 
diesen Dingern die Umschaltung senden empfangen nicht zb über die 
Software passiert.
Es gäbe ja die Möglichkeit über DTR oder RTS etwas zu schalten.

Meine Software ist aber leider für rs232 und bedient diese Signale 
nicht.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Otti schrieb:
> Meine Software ist aber leider für rs232 und bedient diese Signale
> nicht.

 Dann nimm doch CAN statt RS485 und du brauchst dich um die Umschaltung
 diese Signale nicht mehr zu kümmern.
 Gleichzeitiges Senden und Empfangen geht zwar auch nicht, aber das
 scheint bei deiner Verbindung auch nicht nötig zu sein.
 Oder nimm 2 Stück 75176 und schalte einen als Sender, verbinde mit
 PC-TxD, der andere ist als Empfänger mit PC-RxD verbunden.

 Allerdings hast du dann ein Echo beim Senden, was ja auch nicht
 schlecht ist, da man gleich prüfen kann ob der Bus frei ist.

: Bearbeitet durch User
von Otti (Gast)


Lesenswert?

Can fällt aus weil das Messgerät kann nur 232 oder 485. Und einen 75176 
permanent als Sender damit blockiert man den Bus. Dann kann das 
Messgerät nicht mehr senden.
Es muss nicht gleichzeitig senden und Empfangen können. Der pc sendet 
ein Kommando an das Messgerät. Dieses macht eine Messung und sendet das 
Ergebnis an den Pc

von Falk B. (falk)


Lesenswert?

@ Marc Vesely (Firma: Vescomp) (logarithmus)

>> Meine Software ist aber leider für rs232 und bedient diese Signale
>> nicht.

> Dann nimm doch CAN statt RS485 und du brauchst dich um die Umschaltung
> diese Signale nicht mehr zu kümmern.

Und wieder mal ein überaus sinnfreier Beitrag unseres Oberspezialisten.

Chapeau!!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Otti schrieb:
> Meine Software ist aber leider für rs232 und bedient diese Signale
> nicht.

Die von mir erwähnten Bausteine von FTDI benötigen diese Signale nicht, 
um die Umschaltung vorzunehmen, sie erfolgt vollkommen transparent. 
Deine Software für RS232 bekommt die Umschaltung daher auch nicht mit.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Falk B. schrieb:
> Und wieder mal ein überaus sinnfreier Beitrag unseres Oberspezialisten.
>
> Chapeau!!

 Ja.
 Nach mehreren ähnlichen Beiträgen habe ich mich schweren Herzens dazu
 entschlossen, mein Passwort zu ändern.
 Ich hoffe, dass diese unpopuläre Maßnahme zur Reduzierung solcher
 Beiträge führen wird und die betroffene Person nicht allzu traurig ist.

von Wolfgang (Gast)


Lesenswert?

Otti schrieb:
> Can fällt aus weil das Messgerät kann nur 232 oder 485. Und einen 75176
> permanent als Sender damit blockiert man den Bus. Dann kann das
> Messgerät nicht mehr senden.

Es geht nicht um die CAN Übertragung mit Arbitrierung und 
Übertragungsprotokoll, sondern um den physikalischen Layer der 
Übertragung, also Treiber und Pegeldefinitionen.

von Falk B. (falk)


Lesenswert?

@ Wolfgang (Gast)

>> Can fällt aus weil das Messgerät kann nur 232 oder 485. Und einen 75176
>> permanent als Sender damit blockiert man den Bus. Dann kann das
>> Messgerät nicht mehr senden.

>Es geht nicht um die CAN Übertragung mit Arbitrierung und
>Übertragungsprotokoll, sondern um den physikalischen Layer der
>Übertragung, also Treiber und Pegeldefinitionen.

Braucht kein Mensch, RS485 ist mehr als ausreichend.

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.