Forum: Mikrocontroller und Digitale Elektronik Frage zu Bustopologie RS485


von Markus (Gast)


Lesenswert?

Hallo,
ich möchte mit einem Master um die 64 Slaves ansprechen die in 8 
"Spalten"
wie folgt organisiert sind:

  ==  ==  ==  ==  ==  ==  ==  == Master
||  ||  ||  ||  ||  ||  ||  ||
11  21  31  41  51  61  71  81
||  ||  ||  ||  ||  ||  ||  ||
12  22  32  42  52  62  72  82
||  ||  ||  ||  ||  ||  ||  ||
13  23  33  43  53  63  73  83
||  ||  ||  ||  ||  ||  ||  ||
14  24  34  44  54  64  74  84
||  ||  ||  ||  ||  ||  ||  ||
15  25  35  45  55  65  75  85
||  ||  ||  ||  ||  ||  ||  ||
16  26  36  46  56  66  76  86
||  ||  ||  ||  ||  ||  ||  ||
17  27  37  47  57  67  77  87
||  ||  ||  ||  ||  ||  ||  ||
18  28  38  48  58  68  78  88

Ich habe mit den RS485 Bus ausgesuch da er die Anzahl der Slaves so noch 
nicht einschränkt.
Meine Frage zielt auf den Busabschluss: Eine Terminierungswiderstand am 
Master, den anderen würde man wohl wie am besten realisieren?
Sollte man die x8 unten nochmal verbinden und dann unter 18 den 
Widerstand setzen? Vielleicht hat ja jemand einen schlauen Rat.
Gruß Markus

von Sabberlotte (Gast)


Lesenswert?

Markus schrieb:
> Meine Frage zielt auf den Busabschluss: Eine Terminierungswiderstand am
> Master, den anderen würde man wohl wie am besten realisieren?
> Sollte man die x8 unten nochmal verbinden und dann unter 18 den
> Widerstand setzen?

Terminierung am Master und an Teilnehmer #11.
Das ist alles. Keine Querverbindungen.
Wenn das;

Markus schrieb:
> ||

...eine Hin und Rückleitung sein soll
liegen alle Teilnehmer in Reihe.
Das ist korrekt.

von S. M. (lichtmensch)


Lesenswert?

Rs485 bzw einige Bustreiber haben eine Begrenzung bei soweit mir bekannt 
32 Teilnehmer.
Die entscheidende frage mit welcher Datenrate möchtest du übertragen? 
Wie schlimm wirken sich minimale Störungen aus oder hast du sogar eine 
Fehlererkennung...
Ich betreibe einen 485 "Hausbus" und habe bautechnisch bedingt die 
Bustopologie komplett versaut. Ich übertrage mit 9600 Baud und habe 
gerade 29 Teilnehmer.
Klappt wunderbar.

von (prx) A. K. (prx)


Lesenswert?

S. M. schrieb:
> Rs485 bzw einige Bustreiber haben eine Begrenzung bei soweit mir bekannt
> 32 Teilnehmer.

Es gibt Transceiver für 128 Nodes.

von (prx) A. K. (prx)


Lesenswert?

Markus schrieb:
> wie folgt organisiert sind:

Mit genau 2 Enden, also quasi als Serpentine?
Oder als ein Strang mit 8 Abzweigungen?

von Markus (Gast)


Lesenswert?

Hallo,
die Reihenschaltung hatte ich so eigentlich nicht gemeint, ginge aber 
mit ein paar Änderungen ggf. noch umzusetzen. Die zwei Lietungen wären 
RS485a/b.
Aktuell sind es eigentlich 8 Finger. Das erscheint mir nicht sinnvoll. 
Darum die Idee sie unten nochmal zu verbinden. Dann wären es halt 8 
parallele Zweige. Da der Austausch nur mit den Master stattfindet und 
die Slaves nicht untereinander kommunizieren müsste das doch eigentlich 
auch funktionieren oder?
Der Transceiver hat 1/8 UL...die Teilnehmer unterstützt er also 
eigentlich

Gruß Markus

von (prx) A. K. (prx)


Lesenswert?

ASCII Grafik hat Grenzen und Worte beschreiben Gedanken nur 
unvollständig. M.a.W: Ich weiss immer noch nicht, wie du verdrahten 
willst.

Korrekt ist in einer Linie, wieviele Kurven die auch immer haben mag. 
Das wären in den vertikalen Ästen 4 Datenleitungen, 2 runter und 2 
wieder rauf.

Als Hauptstrang mit Abzweigen gibt es bei nicht-trivialer Länge des der 
Abzweige keine korrekte Möglichkeit zum Abschluss. Je nach Längen und 
Bitrate kann es aber trotzdem funktionieren.

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

Stern als Alternative? 8 Stränge mit 8 umgeschalteten Transceivern im 
Master.

von Dietrich L. (dietrichl)


Lesenswert?

Markus schrieb:
> ich möchte mit einem Master um die 64 Slaves ansprechen die in 8
> "Spalten"
> wie folgt organisiert sind:
>
>   ==  ==  ==  ==  ==  ==  ==  == Master
> ||  ||  ||  ||  ||  ||  ||  ||
> 11  21  31  41  51  61  71  81
> ||  ||  ||  ||  ||  ||  ||  ||
> 12  22  32  42  52  62  72  82
> ||  ||  ||  ||  ||  ||  ||  ||
> 13  23  33  43  53  63  73  83
> ||  ||  ||  ||  ||  ||  ||  ||
> 14  24  34  44  54  64  74  84
> ||  ||  ||  ||  ||  ||  ||  ||
> 15  25  35  45  55  65  75  85
> ||  ||  ||  ||  ||  ||  ||  ||
> 16  26  36  46  56  66  76  86
> ||  ||  ||  ||  ||  ||  ||  ||
> 17  27  37  47  57  67  77  87
> ||  ||  ||  ||  ||  ||  ||  ||
> 18  28  38  48  58  68  78  88

Wie ist das genau gemeint?
Sind an einem Master alle 8 Stränge parallel angeschlossen (8 
Stichleitungen)?
Dann ist eine richtige Terminierung nicht möglich, denn sie muss sich 
an beiden physikalischen Enden einer Leitung ohne Stichleitungen 
befinden.

Eine Terminierung (Abschluss mit Wellenwiderstand) dient dazu, 
Reflektionen an den Leitungsenden zu verhindern.

Wie kritisch die durch Reflektionen verursachten Signalstörungen sind, 
hängt von der Leitungslänge (Signallaufzeit) und der 
Übertragungsgeschwindigkeit ab. Wenn die Reflektionen in den ersten paar 
Prozent der Bitlänge bereits abgeklungen sind, kann es durchaus 
funktionieren.
In dem Fall ist es sinnvoll, nur am Master abzuschließen. Es gibt dann 
zwar Reflektionen, die zum Master zurücklaufen, aber mit dem richtigen 
Abschluss beim Master werden sie nicht erneut reflektiert und laufen 
dann ein paar mal hin und her: => kürzere Abklingzeit.

von Olaf (Gast)


Lesenswert?

> Eine Terminierungswiderstand am
> Master, den anderen würde man wohl wie am besten realisieren?

Die Widerstaende muessen jeweils an das Ende eines durchgehenden Kabels. 
Wenn das zufaellig der Master ist, dann ist das richtig. Wenn der Master 
in der Mitte des Kabels sitzt dann bekommt er natuerlich keinen 
Widerstand. Es geht hier um Physik und nicht Worte wie Master/Slave.


Ansonsten sind 64Teilnehmer natuerlich schon heftig. Achte auf gute 
Bustreiber und vernuenftiges Kabel.

Olaf

von Markus (Gast)


Lesenswert?

11-18 sind in Reihe
21-28 sind in Reihe
...
81-88 sind in Reihe

Die Reihen sind heute an den 1x verbunden, dort sitzt der Master.
Terminierung an einem Ende deshalb nicht möglich, da 8 offene Reihen.

Überlegung: die Reihen am Offenen Ende zusammenschalten und dort 
Terminieren.
Dann liegen die 8 Reihen von oben quasi parallel...

von Markus (Gast)


Lesenswert?

ein || bzw ein = in der Darstellung ist also RS485a+RS485b

von Icke ®. (49636b65)


Lesenswert?

Markus schrieb:
> Dann liegen die 8 Reihen von oben quasi parallel...

Das entspräche einer Sterntopologie und die ist bei RS485 nicht 
vorgesehen. Alle Teilnehmer gehören in Reihe. An einem Ende muß ein 
Biasnetzwerk für definierte Pegel im Ruhezustand sorgen, ans andere Ende 
gehört ein Terminierungswiderstand. Nicht mehr und nicht weniger.

von STK500-Besitzer (Gast)


Lesenswert?

Kann man den Aufbau nicht einfach in Schlangenlinien verbinden?
Dann könnte man problemlos einen linearen Bus aufbauen.

Sterntopologie:
Bei derzeiten Aufbau wäre es besser einen Masterbus zu habem (Horizontal 
mit dem Master) auf dem sich wiederum Transceiver befinden die 
ihrerseits einen Busursprung für die Spalten bilden.
Die müssten aber noch eine Datenrichtungsleitung vom Master bekommen.
Die könnte man sich sparen, wenn man auf CAN umsteigt (auch mit den 
Transceivern auf dem Masterbus...).

von Bernd K. (prof7bit)


Lesenswert?

Mit welcher Baudrate gedenkst Du das zu betreiben und wie lang ist die 
Strecke zwischen den zwei am weitesten voneinander entfernten 
Teilnehmern?

: Bearbeitet durch User
von Strubi (Gast)


Lesenswert?

Moin,

sowas geht nur zuverlässig mit Repeatern an jeder T-Verzweigung, sonst 
bist du ruckzuck aus der RS485 spec raus.
Wenn du allerdings dazu noch Protokolle wie modbus fahren willst, musst 
der Repeater etwas clever sein, oder du setzt einen echten "Hub" ein, 
analog zu einem IP-Gateway. Fragt sich dann, ob du nicht gleich mit 
einer Siemens Iot 2020 o.ä. das ganze in der "horizontalen Verbindung" 
mit Ethernet erschlägst (mache ich so).

von posti (Gast)


Lesenswert?

Hi

Eine ähnliche Verkabelung wäre bei mir auch möglich, allerdings auch das 
'in Reihe bringen' - was ich akut sogar so habe.
Allerdings habe ich die µC-Familie gewechselt (tiefer, härter, breiter, 
lauter, ... ok, schneller).
Bei meinen Vorversuchen hatte ich 1-wire (Dallas) auf 3 Drähten mit ca. 
18 Teilnehmern im Haus verteilt, je nach Mondlage, reproduzierbar 
auslesen können.
Da Das, irgendwann Mal, ein Haus-Bus geben soll, müssen die µC mit 
einander 'schwätzen', wo mir die Stern-Topologie besser zusagen würde, 
da ich so auch eine höhere Versorgungsspannung 'mitgeben' könnte.

Hatte mich beim Verkabeln eher an EIB orientiert, wo bis auf einen Ring 
so ziemlich Alles erlaubt ist.

Welcher Ansatz wäre für die beiden Möglichkeiten sinnvoll und warum?
Warum wird wo terminiert?

Es wird definitiv ein Eigenbau, das Häuschen wird nicht mehr verkauft 
und wenn, bin ich so oder so 'im Arsch' und der Mehrerlös, da die 
Elektronik rückgebaut werden kann, rettet mich dann auch nicht mehr.

MfG

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.