RS485 unter Linux in bidirektionaler Richtung

Gast #3029040
Hallo Zusammen,

ich teste momental folgendes Setup und bin irgendwie am verzweifeln:

PC1 -> FTDI -> RS485-Pegelwandler ~~~~~~ (2-Wire) ~~~~> 
RS485-Pegelwandler -> RS485-Port -> PC2

Mein Vorgehen:

1. Mit 'getty' auf beiden Geräten die selbe Baudrate setzen
2. "Kermit" oder vergleichbarem an beiden Seiten ein Terminal öffnen
3. Versuch Text-Strings mittels Tastatur hin und her schicken

Problem:

Es ist nur möglich, Strings von PC1 -> PC2 zu schicken. PC2 -> PC1 
funktioniert nicht. Es gibt keine kritischen Ausgaben im syslog bzw. 
kernlog.

Meine Frage:

Hab ich hier irgendwie vergessen ein Flag zu setzen oder liegt der Bug 
wo anders?


Über Hilfe wäre ich sehr dankbar!
Gast #3029115
Mir fällt gerade ein: Einen Verdrahtungsfehler und einiges mehr, kannst 
Du leicht feststellen.
Alles 1:1 Tauschen. Konverter, Kabel, Befehlsfenster. Geht es dann nur 
in die andere Richtung, so ist's die sehr wahrscheinlich die Hardware.
Gast #3029203
amateur schrieb:
> Es kommt auch ein einfacher Verdrahtungsfehler infrage. Die Sende- und
> Empfangsleitung sind differentiell und daher jeweils 2-Adrig.

Ich habe alle Verbindungsarten durchiteriert ...

Salb & Quack schrieb:
> Ich wuerd nochmals ein Leiterpaar spendieren fuer die andere Richtung.

Wir betreiben die Leitung Half-Duplex, daher sollte es mit zwei 
funktionieren. Für Full-Duplex benötigt man 4.


Rufus Τ. Firefly schrieb:
> Die USB-UARTs von FTDI sehen eine Hardwareunterstützung für die
> Sender-/Empfängerumschaltung bei der Ansteuerung von RS485-Treibern vor.
> Wird die hier genutzt?

Aufbau ist folgender auf PC1-Seite:

USB ~~~~~> FTDI ~~~~~ (RS232) ~~~~~> MOXA-RS485-Pegelwandler

Der Moxa-RS485-Pegelwandler hat eine externe Stromversorgung. Er ist 
auch korrekt parametriert (DIP 1-2: on, DIP 3: off).

Wie aktiviere ich die Umschaltung auf Seiten von Linux? Ich glaub, das 
ich hier etwas zu verwöhnt von RS485 bin :-)
Gast #3029238
atmeltierchen schrieb:
> RS485-Pegelwandler ~~~~~~ (2-Wire) ~~~~>
> RS485-Pegelwandler -> RS485-Port -> PC2

siht das nciht eher so aus:

> RS485-Pegelwandler ~~~~~~ (2-Wire) ~~~~>
> RS485-Pegelwandler -> RS232-Port -> PC2

Das hat mit dem Betriebssystem auch nichts zu tun, auch das Programm ist 
(erstmal) wurscht.

RS485 ist ein One Way verfahren bei dem die Richtungsumschaltung in 
Software gemacht werden muss (Trickschaltungen mal außer acht gelassen).

Wie ist diese bei deinem Aufbau realisiert (z.B. RTS/CTS leitungen von 
RS232).
Persönliche Seite #3029248
atmeltierchen schrieb:
> Aufbau ist folgender auf PC1-Seite:
>
> USB ~~~~~> FTDI ~~~~~ (RS232) ~~~~~> MOXA-RS485-Pegelwandler

Das ist Murks, weil eben genau das zur Richtungsumschaltung von der 
Hardware des FTDI-Bausteines erzeugte Signal so unterschlagen wird.


Sieh Dir das Datenblatt des FT232 an, darin ist eine Beispielschaltung, 
wie so etwas korrekt aufgebaut wird.
Gast #3029254
> MOXA-RS485-Pegelwandler

Welcher?

atmeltierchen schrieb:
> Wie aktiviere ich die Umschaltung auf Seiten von Linux? Ich glaub, das
> ich hier etwas zu verwöhnt von RS485 bin :-)

In der Regel über Statusleitungen (RTS  CTS oder DSR  DTR).

bei Linux kenn ich das nicht, bei Windows wird das im Gerätemanager 
eingestellt oder über Software falls diese das Unterstützt.
Gast #3029359
atmeltierchen schrieb:
> TCC-80

Hangt an beiden Seiten ein Moxa?

Der macht lt. manual auto direction control, geht also mit jedem 
Termninal Programm.

atmeltierchen schrieb:
> Er ist auch korrekt parametriert (DIP 1-2: on, DIP 3: off).

Warum hast du den Abschlusswiderstand ausgeschaltet? Hängen da noch mehr 
RS485 Devices dran. Beim letzten sollter der ON sein.


Danach das übliche Procedere bei seriellen Schnittstellen.

- Datenrate
- Bits
- Stop Bits

müssen geich sein

- Handshake XON/XOFF | DTR/DSR aus.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.