News Praktische und robuste Datenübertragung mit RS-422 und RS-485


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Roman B. (roman_b737)


Angehängte Dateien:

Lesenswert?

Basierend auf einem Artikel von Robert Keim, 23. November 2016

In diesem Artikel werden die Schnittstellen RS-422 und RS-485 vorgestellt und erklärt, warum auch ihr sie in eurem Design verwenden könntet.

Viele Nutzer sind mit der Schnittstelle RS-232 vertraut. Der als robust, aber auch altertümlich geltende Standard hat sich wohl mit der seriellen PC-Schnittstelle in unser aller Gedächtnis eingeprägt. Mit RS-422 und RS-485 mögt ihr weniger vertraut sein, allerdings (wie der Name schon andeutet) sind beide mit RS-232 verwandt.

Es sollte nicht der Fehler gemacht werden anzunehmen, dass diese neuen Standards die gleichen Charakteristiken mit der RS-232-Schnittstelle teilen die diese heute so veraltet erscheinen lassen. RS-422 und RS-485 sind vielmehr wichtige Verbesserungen, und durch die eine oder andere könnten diese Standards eine gute Wahl für eure nächste digitale Kommunikationsverbindung werden.

Erstens: RS-422 vs. RS-485

Diese beiden Standards werden aufgrund ihrer vielen Gemeinsamkeiten in der Regel gemeinsam genannt, jedoch sind sie nicht identisch, und RS-422 und RS-485 Geräte sind nicht beliebig untereinander austauschbar. Deshalb beginnen wir mit der Beschreibung der markanten Unterschiede der zwei Standards, um dann im weiteren Verlauf des Artikels zur Vereinfachung nur noch von "RS-422/485" zu sprechen.

Beide Standards erlauben mehrere Geräte auf einem Bus (z.B. seid ihr nicht auf einen Sender und Empfänger beschränkt). RS-422 kann jedoch nur als „multi-drop“ Bus genutzt werden. Es kann z.B. ein differentielles Leitungspaar mehrere Empfänger, aber nur einen Sender besitzen (siehe Abbildung 1).

Abbildung 1: RS-422 Bus-Architektur
Abbildung 1: RS-422 Bus-Architektur

Die maximale Anzahl der Empfänger auf einem zwei-drahtigen RS-422 Bus beträgt 10.

Anderseits könnt ihr mit RS-485 ein „multi-point“ System aufbauen, indem „point“ anstelle von „drop“ bedeutet, dass ein differentielles Leitungspaar sowohl mehrere Sender als auch mehrere Empfänger unterstützten kann (siehe Abbildung 2).

Abbildung 2: RS-485 Bus-Architektur
Abbildung 2: RS-485 Bus-Architektur

Die Buskapazität steigt bei RS-485 auf 32 Geräte. Ein voll ausgestatteter RS-485 Bus ist eine ernstzunehmende high-performance Schnittstelle. Außerdem sind für diese Schnittstelle mehrere Sender, die sich zwei Leitungen teilen, möglich und jeder Busteilnehmer kann mit jedem anderen eine Verbindung aufbauen.

Wichtig ist auch festzustellen, dass RS-485 eine Erweiterung von RS-422 ist. Mit anderen Worten, RS-485 ergänzt oder verbessert Funktionen, die aber nicht mit den RS-422 Standard in Konflikt kommen. Dadurch kann ein RS-485 Busteilnehmer in einem RS-422 Netzwerk genutzt werden, jedoch sind umgekehrt RS-422 Baugruppen nicht zwangsläufig mit einem RS-485 Netzwerk kompatibel.

Die Grundlagen

RS-422/485 ist eine serielle Schnittstelle mit vier- oder zweidrahtiger differentieller Verbindung, Voll- oder Halbduplex, mit moderater Busgeschwindigkeit, die „multi-drop" (RS-422) oder „multi-point" (RS-485) Bus-Architektur unterstützt. Im Weiteren einige Erläuterungen zu den Charakteristiken.

1. Man kann nicht zur selben Zeit auf demselben differentiellen Leitungspaar senden und empfangen. Full-duplex Verbindungen sind mit zwei differentiellen Leitungspaaren möglich.

2. Ein RS-422/485 Transceiver ist nicht an ein spezifisches serielles Datenformat gebunden. Die nächstliegende Wahl ist UART (universal asynchronous receiver/transmitter), weil wir in der Regel mit nur einem differentiellen Leitungspaar zwischen Sender und Empfänger arbeiten, und keine separate Leitung für Slave-Select (wie es für SPI nötig wäre) oder den Takt (wie es für I²C nötig wäre) zur Verfügung steht.

3. Informationen werden elektrisch über ein symmetrisches differentielles Signal übertragen. Auf diese Weise liefert RS-422/485 all die Vorteile, die mit differentiellen Signalen in Verbindung gebracht werden können (Rauschunterdrückung, Verminderung elektromagnetischer Interferenzen, geringer Leistungsverbrauch, höhere Busgeschwindigkeiten…).

4. Vielleicht ist „moderate Geschwindigkeit“ zu ungenau formuliert in den Zeiten von 5 Gb/s (gigabit/second) USB-Verbindungen. Man kann allerdings keine einfache maximale Datenrate für RS-422/485 spezifizieren, weil die Systemvariablen das Frequenzlimit und damit die erreichbare Datenrate bestimmen.



5. Die dominante Variable ist die Kabellänge. Eine Application Note von Texas Instruments gibt die Faustregel an, dass die Datenrate (in bps) multipliziert mit der Kabellänge (in m) nicht größer als 10^8 sein sollte. Daraus können wir ableiten, dass ein Bus mit kurzer Kabellänge mit 100 Mb/s arbeiten kann. In einer Application Note von Maxim werden ebenso Datenraten über 50 Mb/s genannt. Intersil und Linear Technology verkaufen RS-422/485 Transceiver, die mit 100 Mb/s spezifiziert sind. Also ist anzunehmen, dass diese Datenrate mit den richtigen ICs und günstigen Busbedingungen durchaus machbar ist.

Empfehlung

RS-422/485-Charakteristiken wie hohe mögliche Kabellängen und Robustheit gegenüber Rauschen machen diese Schnittstellen zu einer exzellenten Wahl für industrielle Anwendungen. Dieser Artikel zeigt aber auch, dass RS-422/485 selbst dann eine gute Wahl für viele elektronische und elektromechanische Systeme ist, wenn man nicht die gesamte Funktionsvielfalt die bieten benötigt. Es sind die einfache Entwicklung, die exzellenter Unterstützung durch vorhandene ICs, Application Notes, und die Robustheit von RS-422/485, die überzeugen.

Trotz vieler Jahre Erfahrung mit unterschiedlichen seriellen Kommunikationsprotokollen ist UART mein Favorit. Es ist einfach und zuverlässig, benötigt minimalen Verbindungsaufwand, und es würde mich nicht überraschen, wenn es nicht von jedem Mikrocontroller auf dem Markt unterstützt würde. RS-422/485 ist eine gute Wahl für die physische Schicht der UART-Kommunikation.

Expertenmeinung

Es ist einfach einen RS-422/485 Bus in eurem Design einzurichten. Alles was man braucht ist ein Transceiver-IC, und davon gibt es eine große Auswahl. Diese ICs übersetzen gewöhnlich logische Signale in differentiellen RS-422/485 Signale und sie kümmern sich um die Einhaltung des RS-422/485 Standards. Und wenn man nicht genau weiß wie man seinen Kommunikationsbus entwerfen soll, gibt es jede Menge Anleitungen in Application Notes und Datenblättern.

Störungen

Störquellen gibt es nicht nur in industriellen Anlagen und Luftfahrtelektronik. Störquellen sind überall, und es ist immer eine gute Idee, Störresistenz in eurem Design zu berücksichtigen, insbesondere dann wenn sich ein Gleichstrom-Bürstenmotor in der Nähe eurer Platine befindet. RS-422/485, in Verbindung mit einem geschirmten Twisted-Pair Kabel, ist ein effektiver und relativ einfacher Weg um Störfestigkeit in einem Design herzustellen.

Zusammenfassung

Ich hoffe, ich konnte euch eine klare Vorstellung von RS 422/485 geben und euch überzeugen, warum RS-422/485 eine gute Kommunikationsschnittstelle in eurem nächsten Design werden könnte. Im nächsten Artikel werde ich über die elektrischen Eigenschaften und Details der Implementierung berichten.

Weitere Informationen


: Bearbeitet durch Admin
von Pandur S. (jetztnicht)


Lesenswert?

Cool. Danke

von Operator S. (smkr)


Lesenswert?

Bin leider enttäuscht vom Artikel.

Abgesehen davon, dass dies keine "Neuigkeiten" sind und eher im Wiki 
stehen sollte, ist der Text sprachlich eher schwach und inhaltlich in 
grossen Teilen nichtsaussagend.

Roman B. schrieb:
> Ein voll ausgestatteter RS-485 Bus ist eine ernstzunehmende
> high-performance Schnittstelle.

... um nur ein Beispiel herauszustreichen.
Aber auch im Abschnitt Expertenmeinungen ist nur viel Text, ohne konkret 
auf irgendetwas einzugehen. Wenn schon auf andere Dokumente verwiesen 
wird, sollte doch bitte auch ein Verweis, in dem Falle eine URL o.Ä., im 
Text vorhanden sein.

Was jetzt der Unterschied von 422 zu 485 ist steht auch nirgends?!

von Pandur S. (jetztnicht)


Lesenswert?

Naja. RS422 ist bidirektion vollduplex, waehrend bei RS485 fuer 
bidirektionale Kommunikation die Richtung umgeschalten werden muss. Dh 
per Protokoll halbduplex ist. Und ja. In einer Appnote von TI steht 
dasselbe  - aus englisch.

: Bearbeitet durch User
von hurhgt (Gast)


Lesenswert?

Netter Schulaufsatz.

Ich habe schon viele Projekte mit diesen Schnittstellen realisiert und 
vermisse deshalb die wirklich interessanten Aspekte für den realen 
Einsatz:

Anzahl der Teilnehmer, Art der Datenleitungen, Übertragungsraten in 
Bezug auf Leitungslängen, galvanische Trennung, Spannungsversorgung der 
Teilnehmer, Terminierung, Topologien, Schirmungskonzepte, Multimaster- 
vs. Master-Slave-Systeme, Art der Datenprotokolle, Vergleich mit anderen 
Schnittstellen (nur RS232 ist deutlich zu wenig), usw., usw.

von Quarktasche (Gast)


Lesenswert?

hurhgt schrieb:
> Ich habe schon viele Projekte mit diesen Schnittstellen realisiert und
> vermisse deshalb die wirklich interessanten Aspekte für den realen
> Einsatz:

Hast Du das Ende ueberlesen?

Roman B. schrieb:
> ... Im nächsten Artikel werde ich über die elektrischen
> Eigenschaften und Details der Implementierung berichten.

Ich finde den Artikel gut (allerdings ist es natuerlich nur ein grober
Ueberblick- fuer eine "klare Vorstellung vom Thema" braucht es dann doch 
etwas mehr).
Und er ist genau das- ein Artikel.
Man kann den Text in <5 Minuten lesen und bei Interesse selbst weitere 
Informationen aus Primaerquellen einholen.

von Foobar (Gast)


Lesenswert?

Die Zusammenfassung ist keine Zusammenfassung ...

von Kurt B. (kurt-b)


Lesenswert?

Foobar schrieb:
> Die Zusammenfassung ist keine Zusammenfassung ...

Ich finde den Artikel gut!

Er weckt Interesse und erschlägt nicht gleich mit technischen Details.

 Kurt

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Kein Wort zur Terminierung, aber ellenlange Kabel? Kein Wort zu 
Ruhepegeln.

Roman B. schrieb:
> Mit anderen Worten, RS-485 ergänzt oder verbessert Funktionen, die aber
> nicht mit den RS-422 Standard in Konflikt kommen

Aber welche denn nun?
Das ist alles doch sehr seicht gehalten.

Roman B. schrieb:
> Expertenmeinung

Aha?

: Bearbeitet durch User
von spess53 (Gast)


Lesenswert?

Hi

>Er weckt Interesse und erschlägt nicht gleich mit technischen Details.

Da hast du Recht: Er erschlägt einen mit Langeweile. Da ist

AN-1057 Ten Ways to Bulletproof RS-485 Interfaces von TI

schon ein etwas anderes Kaliber. Nicht so ein Weicheigeschwätz.

>Roman B. schrieb:
>> ... Im nächsten Artikel werde ich über die elektrischen
>> Eigenschaften und Details der Implementierung berichten.

Danach habe ich gesucht. Schien aber eher ein leeres Versprechen zu 
sein.

MfG Spess

von X4U (Gast)


Lesenswert?

Roman schönen Dank für diesen Artikel. Meiner Meinung nach sollten aber 
die Unterschiede noch besser dargestellt werden.

So ist RS232 als Standard komplett. D,h. es beschreibt sowohl das 
elektrische Übertragungsverfahren (+-12V Pegel) den (D-SUB 25) 
Steckverbinder mit Belegung an den verscheidenen Endgeräten und seinen 
Signalen. Dann noch die logische Übertragung (timing Baudraten, 
Bedeutung der Bits und der Steuersignale). Mit dieser Norm ist es 
möglich Sender und Empfänger unabhängig voneinander aufzubauen.

Das ist bei RS422 und 485 nicht der Fall.

RS422 ist ein Standard für die Übertragung in verdrillten Leitungen 
(größere Reichweite, bessere Störfestigkeit und auch höhere 
Geschwindigkeit). Historisch hat man den einfach eingeführt um längere 
RS232 Verbindungen zu haben. Das wird schlicht vorausgesetzt und 
nirgends beschrieben.

RS422 wird zur Datenübertragung in der Industrie über 1000m bis hin zu 
SCSI Laufwerken mit 20 cm Länge genutzt. Was auf den Leitungen läuft 
beschreibt der Standard nicht. Auch die Steckverbinder sind nicht 
genormt (nicht mal aufgeführt).

Die 10 Busteilnehmer ergeben sich aus der Norm (minimaler Sender fan out 
/ maximaler Empfänger Fan in). Da in der Praxis RS422 Leitungstreiber 
die gleichen wie die 485er sind ist das ein theoretischer Wert. Noch 
theoretischer ist aber das es überhaupt mehr als einen Empfänger gibt. 
Das ginge auch mit RS232 und jedem anderen Interface das nur eine 
Richtung pro Leitung hat.


RS485 ist zweirichtungs RS422 mit einem (nirgends beschriebenem) 
Verfahren das (nichtexistent wie es ist) Buskollisionen verhindern soll. 
Da lagen halt jetzt die RS422 Kabel (oder man konnte Sie kaufen). Es 
sollten aber mehr Geräte verbunden werden. Das ohne einen wahnsinns 
Kabelverhau. Aber obwohl für den Standard essentiell hat man Protokolle, 
Steckverbinder und Kollisionsbehandlung einfach weggelassen. Vermutlich 
wollte jeder Hersteller erstmal seine Geräte verkaufen. Später hat sich 
dann ein quasi Industriestandard entwickelt.


Meiner Meinung nach braucht es die historischen Hintergründe um die 
technischen zu verstehen.


In sich logisch ist das alles nicht, als DIN Norm wäre das 10 x klarer 
und deutlich strukturierter, hätte aber 20 Jahre länger gedauert. Da 
tauchte dann schon der CAN Bus am Horizont auf.


Den Begriff Buskapazität finde ich irreführend. Den würde ich in Farrad 
messen und nicht in Anzahl der möglichen Teilnehmer.

von spess53 (Gast)


Lesenswert?

Hi

>Roman schönen Dank für diesen Artikel.

Roman ist maximal der Übersetzer. Das Original ist hier

https://www.allaboutcircuits.com/technical-articles/convenient-robust-data-transmission-with-rs-422-and-rs-485/

Der eigentliche Autor ist mir nur durch seine durchweg seichten Artikel 
(negativ) aufgefallen.

MfG Spess

von Pandur S. (jetztnicht)


Lesenswert?

RS422 & RS485 sind mehr fuer Spezialisten. Stecker sind nicht definiert, 
da nimmt man seine eigenen. Ich zB oft 10pol Flachband. Fuer ein paar 
Meter.
Denkbar ist irgendwas was steckermaessig zur Anwenung hinkommt, und von 
den Kabeln, was die Anforderungen erfuellt.
Natuerlich ist kein Protokoll definiert, welches denn, was soll's denn 
koennen ?
RS485 hat keinen Detektions-Erkennungs- resp Arbitrierungs-  Algorithus 
definiert. Muss man selbst machen. Denkbar waeren ein Token, oder 
Carrier Detect/Multiple Access. Je nach Anforderungen.

: Bearbeitet durch User
von hurhgt (Gast)


Lesenswert?

Sapperlot W. schrieb:
> RS422 & RS485 sind mehr fuer Spezialisten.

Nein. - Es ist im industriellem Umfeld aus guten Gründen sehr 
verbreitet.

von Migelchen (Gast)


Lesenswert?

Operator S. schrieb:
> Bin leider enttäuscht vom Artikel.
>
> Was jetzt der Unterschied von 422 zu 485 ist steht auch nirgends?!

Operator S. schrieb:
> Was jetzt der Unterschied von 422 zu 485 ist steht auch nirgends?!

Hallo,

einmal die Augen aufmachen und lesen...

Ebenso, dass der Artikel auf dem englsichsprachigen Artikel beruht, ist 
jetzt nicht weiter überraschend, da der TO dies im ersten Satz gleich 
einwirft.
Dementsprechend ist die diesbezügliche Kritik sinnfrei.
Zumal es für viele, die es mit Englisch nicht so haben, schon eine 
Bereicherung darstellen könnte.

Der Artikel ist für einen groben Überblick für RS-422 und RS-485 
ausreichend.
Jemand, der gar nicht im Thema drinsteckt, kann danach beides 
wenigestens grob beschreiben.
Da sind technische Kleindetails gar nicht notwendig.
Ein fachlicher Artikel ersetzt schließlich keine komplexe Fachliteratur.


Gruß
Migelchen

von Dietrich L. (dietrichl)


Lesenswert?

hurhgt schrieb:
> Sapperlot W. schrieb:
>> RS422 & RS485 sind mehr fuer Spezialisten.
>
> Nein. - Es ist im industriellem Umfeld aus guten Gründen sehr
> verbreitet.

Sind denn die Leute in der Industrie keine Spezialisten? Ich hoffe doch!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sapperlot W. schrieb:
> Naja. RS422 ist bidirektion vollduplex
Er ist gar nicht duplex, sondern nur simplex: RS422 ist 1 Sender/Master 
und viele Empfänger/Slaves. Die Slaves haben dem Master aber nichts 
mitzuteilen. DMX512 ist so ein RS422 Derivat, allerdings mit mehr 
Empfängern...

Was dem Artikel ein wenig abgeht, ist die Information, wie denn nun die 
Physik für eine "praktische und robuste" Datenübertragung aussehen 
muss. Denn Damit steht und fällt letztlich die ganze Zuverlässigkeit: 
das falsche Kabel richtig verlegt, oder das richtige Kabel falsch 
verlegt und schon ist Essig mit "robust".

Aber insgesamt ein hübscher Überblick zum Thema.

: Bearbeitet durch Moderator
von Pandur S. (jetztnicht)


Lesenswert?

>>Sapperlot W. schrieb:
>> RS422 & RS485 sind mehr fuer Spezialisten.
>
>Nein. - Es ist im industriellem Umfeld aus guten
>Gründen sehr verbreitet.

Spezialisten im Sinne von Nicht-Heimanwendern

>Sapperlot W. schrieb:
>> Naja. RS422 ist bidirektion vollduplex
>
>Er ist gar nicht duplex, sondern nur simplex:
>RS422 ist 1 Sender/Master und viele Empfänger/Slaves.

Und mit jeden kann der Master Vollduplex machen,
als Master-Slave eben. Aber das RS232 ist auch voll
duplex, und implizit Master-slave. Ich kenne kein
RS232 Protokoll, das nicht Master-slave waere.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sapperlot W. schrieb:
>> Er ist gar nicht duplex, sondern nur simplex: >RS422 ist 1 Sender/Master
>> und viele Empfänger/Slaves.
> Und mit jeden kann der Master Vollduplex machen, als Master-Slave eben.
Nein. Das ist der 485er.
Also zusammenfassend: der RS422 ist ein reiner Multidrop-Bus. Da gibt es 
keinen Rückkanal.
https://de.wikipedia.org/wiki/EIA-422

Sapperlot W. schrieb:
> Aber das RS232 ist auch voll duplex
Das hat ja auch mit RS422 und RS485 gar nix zu tun. Ausser, dass es 
seriell ist und die selben Bitzeiten und das selbe Protokoll verwendet.

: Bearbeitet durch Moderator
von X4U (Gast)


Lesenswert?

hurhgt schrieb:
> Sapperlot W. schrieb:
>> RS422 & RS485 sind mehr fuer Spezialisten.
>
> Nein. - Es ist im industriellem Umfeld aus guten Gründen sehr
> verbreitet.

Wenn das kein Spezialisten sind, wer dann? Mondraketenbauer? ;-)


Sapperlot W. schrieb:
> Natuerlich ist kein Protokoll definiert, welches denn, was soll's denn
> koennen ?

Natürlich ist das nicht, bei RS232 ist es ja z.B. definiert.

Es ging ja darum welche Unterschiede zwischen den Normen bestehen. Der 
wesentliche ist m.E. das RS422 und -485 nur elektrische Signale 
definieren. Man kann damit die Hardware von Sender und Empfänger bauen 
Bei aber keine komplette Übertragung (wie eben bei RS232) machen.

Mein Vorschlag wäre so etwas in einen vergleichenden Artikel 
aufzunehmen.

Das es nicht grundlos so ist sollte natürlich jedem klar sein. In den 
Gremien sitzen Spezialisten welche die Normen erstellen. Die werden sich 
das gut überlegt haben.

von hurhgt (Gast)


Lesenswert?

Dietrich L. schrieb:
>> Sapperlot W. schrieb:
>>> RS422 & RS485 sind mehr fuer Spezialisten.
>>
>> Nein. - Es ist im industriellem Umfeld aus guten Gründen sehr
>> verbreitet.
>
> Sind denn die Leute in der Industrie keine Spezialisten? Ich hoffe doch!

Es ist aber auch im Bastelbereich sehr verbreitet: siehe z.B. DMX

von X4U (Gast)


Lesenswert?

Lothar M. schrieb:
> Ausser, dass es
> seriell ist und die selben Bitzeiten und das selbe Protokoll verwendet.

Genau das ist in den Normen von RS422 und -485 eben nicht definiert.

> Also zusammenfassend: der RS422 ist ein reiner Multidrop-Bus. Da gibt es
> keinen Rückkanal.

Es ist kein bus, es ist auch nicht duplex, simplex oder irgendwas 
anderes.

Klar kann man das daraus machen aber die Norm beschreibt nur wie du ein 
Signal über eine lange Leitung bekommst. Eben differentiell damit man 
twisted pair Leitungen nutzen kann (aber nicht muss).

Sie haben dann noch definiert das der Sender 10 x so viel power haben 
soll  wie der Empfänger benötigt. Das wohl mehr um das zu definieren und 
weniger weil da irgendwo mal 10 Empfänger angeschlossen werden.

RS485 geht da ein wenig weiter und beschreibt noch einen bus. Aber auch 
da nur von der Hardwareseite.

von Dietrich L. (dietrichl)


Lesenswert?

hurhgt schrieb:
> Dietrich L. schrieb:
>>> Sapperlot W. schrieb:
>>>> RS422 & RS485 sind mehr fuer Spezialisten.
>>>
>>> Nein. - Es ist im industriellem Umfeld aus guten Gründen sehr
>>> verbreitet.
>>
>> Sind denn die Leute in der Industrie keine Spezialisten? Ich hoffe doch!
>
> Es ist aber auch im Bastelbereich sehr verbreitet: siehe z.B. DMX

Es ist ja nicht ausgeschlossen, dass ein Bastler auch ein Spezialist 
ist.
Leute in der Industrie sollten aber eher keine Bastler sein - obwohl: 
das habe ich auch schon erlebt ;-)

von Clemens L. (c_l)


Lesenswert?

X4U schrieb:
> Sapperlot W. schrieb:
>> Natuerlich ist kein Protokoll definiert, welches denn, was soll's denn
>> koennen ?
>
> Natürlich ist das nicht, bei RS232 ist es ja z.B. definiert.

Nein, auch RS-232 definiert kein Protokoll. (Auch wenn in der Praxis 
darüber oft UART eingesetzt wird.)

von X4U (Gast)


Lesenswert?

hurhgt schrieb:
> Es ist aber auch im Bastelbereich sehr verbreitet: siehe z.B. DMX

Was aber sehr viel später kam. So eine Norm zu nutzen bietet sich halt 
an sobald mehr als ein Entwickler(team) dabei ist. Man kann es auch wie 
z.B. Apple machen und Versuchen alles neu zu erfinden, das hat aber 
selten technische Gründe.


Davon ab sind "Spezialisten" auch im Hobbybereich weit verbreitet.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

X4U schrieb:
> Klar kann man das daraus machen
Darum geht es doch, wenn die Überschrift "praktische und robuste 
Datenübertragung" heißt.
In der Praxis sieht es bei RS422 so aus, dass für eine größere 
Reichweite und/oder höhere Störsicherheit eigentlich "nur" die Leitungen 
einer RS232-Strecke differentiell übertragen werden. Die beiden 
Teilnehmer werden also statt über 2+GND = 3 Leitungen über 2x2+GND = 5 
Leitungen miteinander verbunden:
1
Gerät 1         Gerät 2
2
TXD+     -->    RXD+
3
TXD-     -->    RXD-
4
5
RXD+     <--    TXD+
6
RXD-     <--    TXD-

: Bearbeitet durch Moderator
von X4U (Gast)


Lesenswert?

Clemens L. schrieb:

> Nein, auch RS-232 definiert kein Protokoll. (Auch wenn in der Praxis
> darüber oft UART eingesetzt wird.)

Das ist jetzt die Frage was man unter einem Protokoll versteht. Bei 
NMEA0183 (GPS) werden wohl alle zustimmen. Bei RS232 ist nur definiert 
wie ein einzelnes Byte übertragen wird (inkl. Sicherungsschicht das sog, 
parity bit)

Wenn das kein Protokoll ist dann nenne ich das jetzt 
Byteübertragungsvereinbarung und kürze es mit ByÜv so ab das mich jeder 
für nen Superprofi hält ;-).

von X4U (Gast)


Lesenswert?

Lothar M. schrieb:
> In der Praxis sieht es bei RS422 so aus, dass für eine größere
> Reichweite und/oder höhere Störsicherheit eigentlich "nur" die Leitungen
> einer RS232-Strecke differentiell übertragen werden.

Das ist die Praxis aber eben nicht die Norm.

> Die beiden
> Teilnehmer werden also statt über 2+GND = 3 Leitungen über 2x2+GND = 5
> Leitungen miteinander verbunden:

Du brauchst nur 4 Leitungen weil es differentiell ist. Aber da geht in 
der Regel die Streiterei richtig los.

Es ist eben so das du die "Masse" auf der einen Seite lassen kannst 
(wenn du willst) sonst hast du bei den langen Strecken oft Probleme mit 
den Potentialdifferenzen.

Das machen in der Industrie nur wahnsinnige weil es dort jede Menge 
anderer Probleme macht und auch Schutzmaßnahmen wie Erdung oder Nullung 
gefährdet. Da wird galvanisch getrennt.

von Clemens L. (c_l)


Lesenswert?

X4U schrieb:
> Bei RS232 ist nur definiert wie ein einzelnes Byte übertragen wird (inkl.
> Sicherungsschicht das sog, parity bit)

Nein, RS-232 definiert weder Bytes noch Parity, sondern nur zwei 
Signal-Pegel ("mark" und "space").

https://en.wikipedia.org/wiki/RS-232#Scope_of_the_standard sagt:
> The Electronic Industries Association (EIA) standard RS-232-C as of 1969
> defines:
>
> - Electrical signal characteristics such as voltage levels, signaling rate,
>   timing, and slew-rate of signals, voltage withstand level, short-circuit
>   behavior, and maximum load capacitance.
> - Interface mechanical characteristics, pluggable connectors and pin
>   identification.
> - Functions of each circuit in the interface connector.
> - Standard subsets of interface circuits for selected telecom applications.
>
> The standard does not define such elements as the character encoding (i.e.
> ASCII, EBCDIC, or others), the framing of characters (start or stop bits,
> etc.), transmission order of bits, or error detection protocols.

: Bearbeitet durch User
von Horst (Gast)


Lesenswert?

Solange hier jeder seine eigenen Definition für 'Protokol' benutzt (was 
soll UART eigendlich für eins sein?), ist die ganze Diskussion 
überflüssig.

von X4U (Gast)


Lesenswert?

Clemens L. schrieb:
> X4U schrieb:
>> Bei RS232 ist nur definiert wie ein einzelnes Byte übertragen wird (inkl.
>> Sicherungsschicht das sog, parity bit)
>
> Nein, RS-232 definiert weder Bytes noch Parity, sondern nur zwei
> Signal-Pegel ("mark" und "space").

Stimmt, hatte ich falsch in Erinnerung, danke für die Korrektur.

Da muss ich dann auch meine Aussage korrigieren das mit RS232 eine 
komplette Datenübertragung gebaut werden kann. Es ist wie bei RS4xx 
"nur" die Bitübertragung definiert, zusätzlich Steckverbinder und 
Belegung.

von gnugnu (Gast)


Lesenswert?

Roman B. schrieb:
>
> Trotz vieler Jahre Erfahrung mit unterschiedlichen seriellen
> Kommunikationsprotokollen ist UART mein Favorit. Es ist einfach und
> zuverlässig, benötigt minimalen Verbindungsaufwand, und es würde mich
> nicht überraschen, wenn es nicht von jedem Mikrocontroller auf dem Markt
> unterstützt würde. RS-422/485 ist eine gute Wahl für die physische
> Schicht der UART-Kommunikation.
>

Das ist extrem flapsig und missverständlich formuliert. Erstensmal 
gehört meiner Meinung nach eine (dann auch noch nicht näher begründete) 
Wertung nicht in einen Sachartikel, und zweitens Mal ist die 
"Favoritenstellung" keinen Anderen Alternativen gegenübergestellt (das 
wären logischerweise also andere direkt über uC Pins ansteuerbare 
Protokolle wie USB,CAN,SPI,I2C etc). Ausserdem ist (wie schon vorher 
angemerkt) an dieser Stelle das In-Einen-Topf-Werfen der beiden 
Standards nicht hilfreich, da die beiden Varianten in sehr 
unterschiedlichen Konfigurationen eingesetzt werden ("RS" steht übrigens 
für "Recommended Standard," und deswegen hat die Namensverwandschaft der 
beiden Protokolle auch nichts mit einer etwaigen Verwandschaft der 
Protokolle zu tun, wie impliziert).

Es wird auch überhaupt nicht auf sehr praktische Implikationen der PHYs 
eingegangen wie die Notwendigkeit der Richtungsumschaltung in HD RS485 
Bussen, die timingkritisch sind und deswegen die "Einfachheit und 
Zuverlässigkeit" schon relativieren.

Also im Grossen und Ganzen hauptsächlich ein schnell zusammengehacktes 
Pamphlet, das weder als One-Stop-Einführung noch als 
"Entscheidungshilfe" taugt.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

X4U schrieb:
> Man kann es auch wie
> z.B. Apple machen und Versuchen alles neu zu erfinden,

Schlechtes Beispiel, zumindest für die klassischen Macintosh. Die hatten 
nämlich robuste Industrienormen für Festplatte und serielle 
Kommunikation - SCSI und RS-422. Nur die Steckverbindungen waren nicht 
industriell, so das RS-422 auf MiniDIN Buchsen endete.

von Pandur S. (jetztnicht)


Lesenswert?

@Lothar Miller (lkmiller)
Der RS422 erlaubt bidirektionale Kommunikation zwischen einem Master und 
mehreren Slaves. Der verlinkte Artikel behauptet nichts gegenteiliges.

Der Master spricht einen Slave per Vorwaertskanal(Leiterpaar) an, und 
der angesprochene Slave darf/muss dann den Rueckwaertskanal(Leiterpaar) 
benutzen. Alle Slaves benutzen denselben Rueckwaertskanal(Leiterpaar), 
nur nicht gleichzeitig, sie sind normalerweise tristate.

Das mach ich schon seit Jahrzehnten so.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sapperlot W. schrieb:
> Der RS422 erlaubt bidirektionale Kommunikation zwischen einem Master und
> mehreren Slaves.
Woraus leitest du das ab?
Ich finde bei RS422 nirgends eine Definition, bei der mehrere Sender auf 
1 Empfänger gehen könnten, wobei zusätzlich von den mehreren Sendern nur 
1 aktiv ist.

> Der verlinkte Artikel behauptet nichts gegenteiliges.
Weil er die Bidirektionalität nicht behauptet.

> Der Master spricht einen Slave per Vorwaertskanal(Leiterpaar) an, und
> der angesprochene Slave darf/muss dann den Rueckwaertskanal(Leiterpaar)
> benutzen. Alle Slaves benutzen denselben Rueckwaertskanal(Leiterpaar),
> nur nicht gleichzeitig, sie sind normalerweise tristate.
Ist aber nicht RS422, sondern eine Kombination von RS422 für die 
Master-Slave-Kommunikation und einem RS458 für die Slave-Master 
Kommunikation. Denn beim RS422 brauchst du definitiv keinen einzigen 
tristatefähigen Treiber.

> Das mach ich schon seit Jahrzehnten so.
So findet jeder seine Nische...

X4U schrieb:
> Du brauchst nur 4 Leitungen weil es differentiell ist. Aber da geht in
> der Regel die Streiterei richtig los.
> Es ist eben so das du die "Masse" auf der einen Seite lassen kannst
> (wenn du willst) sonst hast du bei den langen Strecken oft Probleme mit
> den Potentialdifferenzen.
Ja, logisch, weil du dann ja einen anderen zusätzlichen Massepfad 
hast. Aber eine Masse brauchst du in der Praxis wegen des 
Gleichtaktbereichs des Empfängers.

von Pandur S. (jetztnicht)


Lesenswert?

Zwei interessante Dokumente :
 http://focus.ti.com/lit/an/slla070d/slla070d.pdf
 http://www.analog.com/media/en/technical-documentation/application-notes/AN-960.pdf

Der Treiber ADM 498 ist RS485 und RS422 konform  und hat getrennte 
Richtungen.
http://www.analog.com/media/en/technical-documentation/data-sheets/ADM488_489.pdf


Genaugenommen sind alle Treiber RS485 & RS422, aber keiner nur 422.
Irgendwie ist die Benamung nicht so wichtig. RS422 scheint ein Subset 
von RS485 zu sein, wenn man RS485 nicht richtungsumschaltet, sondern den 
Rueckkanal verlegt.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sapperlot W. schrieb:
> Der Treiber ADM 498 ist RS485 und RS422 konform  und hat getrennte
> Richtungen.
UND ist er, er ist UND.
> 
http://www.analog.com/media/en/technical-documentation/data-sheets/ADM488_489.pdf
UND deshalb kann man mit ihm sowohl die eine Topologie wie auch die 
andere Topologie aufbauen. Bei RS422 ist eben die Hälfte des ICs 
unbenutzt.

Man kann auch viele andere ICs für dies und das nehmen. Z.B. einen OP 
für einen Verstärker und einen Komparator. Trotzdem werden die 
resultierenden Schaltung weiterhin Verstärker und Komparator heißen.

> Genaugenommen sind alle Treiber RS485 & RS422, aber keiner nur 422.
Natürlich machen die Hersteller noch einen Driver-Enable rein, wenn/weil 
es nicht viel mehr kostet und der Treiber dann für beide Standards 
verwendet werden kann.

> Genaugenommen sind alle Treiber RS485 & RS422, aber keiner nur 422.
Sind jetzt dann so langsam alle Haare gespalten?
Zum Glück sind solche Behauptungen blitzschnell entkräftet. Man muss nur 
1 einzigen finden, für den das nicht zutrifft:
http://www.ti.com/lit/ds/symlink/ds9638qml.pdf
http://www.ti.com/lit/ds/symlink/sn75als191.pdf
http://www.ti.com/lit/ds/symlink/sn75158.pdf
Die haben dank des fehlenden Enables keine Chance im RS485 Netz.

Sapperlot W. schrieb:
> RS422 scheint ein Subset von RS485 zu sein, wenn man RS485 nicht
> richtungsumschaltet, sondern den Rueckkanal verlegt.
Natürlich ist es hardwaretechnisch in etwa so. Aber eben nicht in der 
Definition.
In einem RS485 Netz gibt es z.B. hardwaretechnisch keinen Master, die 
Teilnehmer sind alle gleich aufgebaut. Wer Sender ist, wird im 
Protokoll ausgehandelt.
Beim RS422 gibt es 1 Sender und bis zu 10 Empfänger. Und weil die 
Anwendungen dafür sehr selten sind, gibt es auch diese Topologie nur 
selten.

: Bearbeitet durch Moderator
von Die Tonne (Gast)


Lesenswert?

> In einem RS485 Netz gibt es z.B. hardwaretechnisch keinen Master, die
Teilnehmer sind alle gleich aufgebaut. Wer Sender ist, wird im
Protokoll ausgehandelt.
Beim RS422 gibt es 1 Sender und bis zu 10 Empfänger. Und weil die
Anwendungen dafür sehr selten sind, gibt es auch diese Topologie nur
selten.


Auch wenn RS485 Multimaster sein koennte, wird es in den wenigsten 
Faellen so sein. Ueblicherweise ein PC, oder ein PC-Ersatz, zB eine SPS, 
der Master.

von Dietrich L. (dietrichl)


Lesenswert?

Die Tonne schrieb:
> Auch wenn RS485 Multimaster sein koennte, wird es in den wenigsten
> Faellen so sein.

Dann hast Du wohl den Profibus vergessen.

Bei DP-V0 ist der Physical Layer RS485, und bei Multimaster ist das 
Zugrifsverfahren Token-Passing.

von Philipp K. (philipp_k59)


Lesenswert?

Ich kenne im Industriebereich 422 nur als 4 adrigen Rs232 Ersatz für 
größere Reichweite..

Also immer RX/TX mit 2 Teilnehmern, meist von Rs232 mit einfachen 
Convertern auf 422..

Das man bis zu 10 Empfängern haben kann war mir jetzt neu, auch wenn mir 
kein Anwendungsfall einfällt. :D

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Philipp K. schrieb:
> Das man bis zu 10 Empfängern haben kann war mir jetzt neu, auch wenn mir
> kein Anwendungsfall einfällt.
Wie gesagt: DMX512 arbeitet mit RS422 Pegeln, allerdings sind dort bis 
zu 32 Geräten pro Universum erlaubt.

> Ich kenne im Industriebereich 422 nur als 4 adrigen Rs232 Ersatz für
> größere Reichweite..
Viele Drehgeber haben differentielle Ausgänge mit RS422 Pegeln:
https://www.hengstler.de/de/s_c100302/Drehgeber/Inkrementale_Drehgeber/
https://www.posital.com/de/produkte/schnittstelle/incremental/inkrementale-drehgeber.php
http://www.baumer.com/int-en/products/productfinder/?tx_baumerproductfinder_pf%5Burl%5D=%2Fpfinder_motion%2Fscripts%2Fproduct.php%3Fcat%3DInkrementale_Drehgeber%26pid%3DMDFK_08_RS422%26language%3Dde
https://www.sick.com/de/de/produktportfolio/encoder-und-neigungssensoren/inkremental-encoder/c/g244396?q=:ft668640ENCODERSCHNITTSTELLEKURZ%3C%40%3EElektrische%20Schnittstelle:TTL

von hurhgt (Gast)


Lesenswert?

Philipp K. schrieb:
> Das man bis zu 10 Empfängern haben kann war mir jetzt neu, auch wenn mir
> kein Anwendungsfall einfällt. :D

Z.B. Anschluss von SSI-Drehgeber an Eingänge mehrerer Auswerteeinheiten.

von X4U (Gast)


Lesenswert?

Off topic/

Matthias S. schrieb:
> Schlechtes Beispiel, zumindest für die klassischen Macintosh.

War das der mit dem sinnigerweise "PowerPC" genannten Chip der sonst 
hauptsächlich in Druckern Verwendung fand?

> Die hatten
> nämlich robuste Industrienormen für Festplatte und serielle
> Kommunikation - SCSI und RS-422. Nur die Steckverbindungen waren nicht
> industriell, so das RS-422 auf MiniDIN Buchsen endete.

Wieso schlechtes Beispiel? Exotischer Bus für Kommunikation und SCSI war 
natürlich auf Apple Art "incorporated". Es liefen nur Platten dran die 
Apple gut fand.

Was ich aber meinte sind lightning statt USB, gedongeltes Bluetooth etc. 
Wenn ich jetzt noch das "Netzwerk" erwähne was die gebastelt hatten wird 
das ganze vollends off topic.

/ Off topic

Aber es war (um mal auf das Thema zurückzukommen) ein Gerät wo RS422 im 
PC Bereich lief.


Lothar M. schrieb:
> Wie gesagt: DMX512 arbeitet mit RS422 Pegeln, allerdings sind dort bis
> zu 32 Geräten pro Universum erlaubt.

Wikipedia sagt "DMX basiert auf RS-485" was dann die 32 Teilnehmer 
erklärt.

von Philipp K. (philipp_k59)


Lesenswert?

hurhgt schrieb:
> Z.B. Anschluss von SSI-Drehgeber an Eingänge mehrerer Auswerteeinheiten

kenn ich von der Siemens S5, benötigt bei uns aber auch nur einen 
Empfänger (S5 selbst)..

Ist ja super, mir ist es bisher praktisch noch nicht vorgekommen.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

X4U schrieb:
> Es liefen nur Platten dran die
> Apple gut fand.

Nö, da lief jede SCSI Platte, die man mit Geld kaufen konnte.

X4U schrieb:
>> Schlechtes Beispiel, zumindest für die klassischen Macintosh.
>
> War das der mit dem sinnigerweise "PowerPC" genannten Chip der sonst
> hauptsächlich in Druckern Verwendung fand?

Auch nicht. RS422 und SCSI gabs auf jedem Mac ab den MacPlus (1984) bis 
zum PowerMac 9600 (1997).
Wie wärs mit Google?

von Chris F. (chfreund) Benutzerseite


Lesenswert?

Matthias S. schrieb:
> Nö, da lief jede SCSI Platte, die man mit Geld kaufen konnte.

So ist es, so sehr ich Apple nicht mag sollte man bei der Wahrheit 
bleiben. Bei Apple ist zwar fast alles Closed-Shop, aber die Festplatten 
und Speicherriegel waren Standard. Ist ja nicht Dell oder ein 
x-beliebiger Storage-hersteller ;-)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

X4U schrieb:
> Wikipedia sagt "DMX basiert auf RS-485" was dann die 32 Teilnehmer
> erklärt.
Ja, reine Definitionssache:
https://electronics.stackexchange.com/questions/175009/what-is-the-relationship-between-dmx-and-rs485-are-there-any-breaks-in-the-prot
Von der Struktur her (ein Sender, ein(ige) Empfänger) ist es ein RS422. 
Weil aber zum Zeitpunkt der Definition von DMX schon die besseren RS485 
Treiber verfügbar waren, wurden diese 32 Empfänger auch erlaubt. Und 
zwar im Gegensatz zum RS485, der nur 32 Teilnehmer erlaubt, weil ja 
der Sender gleichzeitig auch Empfänger (und damit Last) ist.
Auch an dieser Stelle ist Wikipedia ein wenig unsauber, weil dort 
fehlerhafterweise von 32 Empfängern geschrieben wird.

Sapperlot W. schrieb:
> Der Master spricht einen Slave per Vorwaertskanal(Leiterpaar) an, und
> der angesprochene Slave darf/muss dann den Rueckwaertskanal(Leiterpaar)
> benutzen. Alle Slaves benutzen denselben Rueckwaertskanal(Leiterpaar),
> nur nicht gleichzeitig, sie sind normalerweise tristate.
>
> Das mach ich schon seit Jahrzehnten so
Dafür gibt es sogar einen Begriff: "RS485 4-Draht-Bus"
https://www.wut.de/e-6wwww-11-apde-000.php

von Soul E. (Gast)


Lesenswert?

X4U schrieb:

> Matthias S. schrieb:
>> Schlechtes Beispiel, zumindest für die klassischen Macintosh.
>
> War das der mit dem sinnigerweise "PowerPC" genannten Chip der sonst
> hauptsächlich in Druckern Verwendung fand?

Die echten Macs hatten einen Motorola MC68000 - Prozessor. PowerPC kam 
erst vieeel später.

> Wieso schlechtes Beispiel? Exotischer Bus für Kommunikation und SCSI war
> natürlich auf Apple Art "incorporated". Es liefen nur Platten dran die
> Apple gut fand.

Grundsätzlich ja, es gab aber relativ schnell Treiber mit denen man auch 
beliebige SCSI-Platten (ohne Apple-Firmware) nutzen konnte. Wenn die 
Platte einmal eingerichtet war, konnte man sie uneingeschränkt nutzen.


ADB war in der Tat ziemlich speziell. Eine Eindraht-Schnittstelle mit 
Pulsbreitenmodulation (Null ist kurz und Eins ist lang).


> Was ich aber meinte sind lightning statt USB, gedongeltes Bluetooth etc.
> Wenn ich jetzt noch das "Netzwerk" erwähne was die gebastelt hatten wird
> das ganze vollends off topic.

Den mit dem Apple II propagierten open-source - Gedanken ("alles 
dokumentiert und jeder soll mitmachen") hatten sie schon mit dem Apple 
III verraten -- das ist nur die logische Konsequenz daraus.

von bla-bla (Gast)


Lesenswert?

Roman B. schrieb:
> es würde mich nicht überraschen, wenn es nicht von jedem
> Mikrocontroller auf dem Markt unterstützt würde.

Es würde dich überraschen, wenn es von jedem Mikrocontroller auf dem 
Markt unterstützt würde?

von vorbeischauender (Gast)


Lesenswert?

schließe mich der Meinung Operator S. an.
In vielen Teilen nichts sagend und wirft mehr Fragen auf, als er 
beantwortet.
Artikel die eine Expertenmeinung enthalten, sind mir suspekt. Warum 
nicht stattdessen eine oder mehrere Quellen angeben?

Dann wird mit Begriffen um sich geworfen wie UART, Point oder Drop.
Was hat UART mit RS485 zu tun? Geht aus dem Artikel nicht hervor.
Vielleicht wäre auch ein Vergleich ähnlicher Bussysteme sinnvoll.

Dann wie andere schon festgestellt haben, die Zusammenfassung ist keine 
Zusammenfassung. Das könnte man noch hinter die Zusammenfassung setzten.

Ich hoffe meine Kritik wird konstruktiv aufgegriffen. Ich freue mich 
über jeden der bereit ist sein Wissen zu teilen und die Welt mit 
leseswerten Texten bereichert.

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.