Forum: Mikrocontroller und Digitale Elektronik 8 Geraet über 4 Etagen verteilt


von mkmk (Gast)


Lesenswert?

Gutem Morgen Allerseits

Ich muss eine Installation einer anderen Firma, die vor 4 Jahren
eingebaut wurde und nie so richtig funktionierte, durch meine Produkte
ersetzen.
Es handelt sich dabei um eine Arbeitszeit-Erfassung und
Zugangskontrolle, die über 4 Stockwerke verteilt ist und total 8
Kontrollpunkte aufweist.
Selbst die Toiletten können nur mit den Proximity-Karten betreten und
verlassen werden :)
Die alte Firma hat von jeder Einheit ein Kabel zum PC verlegt und dort
einen Kasten aufgestellt, der über einen manuellen Schalter verfügt.
Es handelt sich dabei also um eine klassische Stern-Topologie.
Meine Produkte haben als Interface RS485 und jede Einheit hat seine
eigene Adresse, wodurch ich alle an einen Strang haengen kann.

Mein Verstaendnis von RS485 erlaubt es aber nicht, eine Stern-Topologie
einzusetzen. Anderseits habe ich mit RS485 sehr gute Erfahrungen gemacht
und ich würde sehr ungern darauf verzichten.
Die Alternative sehe ich in CurrentLoop, hab' aber damit nur einmal
gearbeitet, wo es darum ging, eine Strecke von 1km zu überbrücken.

Hat jemand eine Idee, wie ich meine Geraete anschliessen kann, ohne die
Kabel neu zu verlaegen und ohne einen Multiplexer einsetzen zu müssen?

MfG

von Stefan Kleinwort (Gast)


Lesenswert?

Welche Kabel sind verlegt? Wenn genug Adern für RS485 für Hin UND
Rückweg vorhanden wären, kannst Du Deine RS485 wie gewohnt einbauen.

Beim caraca-Hausbus wird das so gemacht, zwar mit CAN, vom Prinzip aber
gleich.

Gruß Stefan

von mkmk (Gast)


Lesenswert?

Servus Stefan

Verlegt sind CAT5 Kabel; also die, welche man bei Ethernet benutzt.
Ich habe mal im Forum nach 'caraca' gesucht und
http://www.mikrocontroller.net/articles/CAN_als_Hausbus und
http://www.mikrocontroller.net/forum/read-1-66019.html gefunden.

Diese beiden Artikel haben mich in meiner Auffassung bestaetigt, dass
mit RS485 keine Stern-Topologie möglich ist. Kannst Du mir bitte etwas
ausführlicher Deine Vorstellung darstellen?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn man RS485 mit nicht zu abartigen Baudraten betreibt, funktioniert
auch ein Stern (mehrere parallelgeschaltete Stiche) ganz prächtig. Bei
9600 Baud beispielsweise kann man erstaunlich viel mit erstaunlich
furchtbarer Verkabelung anstellen. Und mit 9600 Baud kann man, ein
ausreichend sinnvoll strukturiertes Protokoll vorausgesetzt, auch schon
'ne ganze Menge bewegen. In der Gebäudeautomatisierungstechnik lassen
sich mit eben jenen 9600 Baud an einem Bus über 60 Feldgeräte
betreiben, und Antwortzeiten von unter 1 Sekunde sind auch
realisierbar.

Wie aber Stefan schon nahegelegt hat, kann man bei ausreichend vielen
vorhandenen Adern in der Verkabelung die Stiche in Reihe schalten. Wenn
dann die Gesamtkabellänge nicht zu abartig wird, ist auch schon einiges
erreicht.

Das ganze steigt und fällt natürlich mit der Anzahl der angeschlossenen
Feldgeräte ... wenn das mehrere hundert sind, dann kommst Du nicht um
mehrere unabhängige Busse umhin.

von Stefan Kleinwort (Gast)


Lesenswert?

Hallo,

wenn Du cat5 hast, dann ist es doch kein Problem:

mit 2 Adern zum RS485-Gerät hin, mit 2 Adern wieder zurück. Die
restlichen Adern für Masse, ggf. Stromversorgung. Am ehemaligen
Sternpunkt die Rückadern des Geräts (n) mit den Hinadern des Geräts
(n+1) verbinden. Schon hast Du aus der ehemaligen Stern-Topoliogie
einen Ein-Strang-Bus gemacht.

Nach caraca nicht nur hier suchen, sondern auch bei google. Der esrte
Hit ist es.

Stefan

von Kai Markus Tegtmeier (Gast)


Lesenswert?

Wenn ich Stefan richtig interpretiere, einfach mit 2 freien Adern
aus der Leitung zum Sternpunkt zurück und dort an die nächste
Hinleitung anklemmen. Dann hast Du keine Sterntopologie, sondern einen
Bus, der allerdings dann natürlich auch sehr lang wird. Sähe dann so
aus:


Stern --------------------> Gerät A ---|
                                       |
      |---------------<----------------|
      |
      |-------------------> Gerät B ---|
                                       |
      |---------------<----------------|
      |
      |-------------------> Gerät C .....


Also immer 4 Adern pro Cat5-Kabel benutzen. 2 für die Hin-, 2 für die
Rückleitung. Nur am Ende der Rückleitung eben nicht wieder an den Stern
anschließen, sondern die Hinleitung des nächsten Gerätes auf dem Bus.

Greetz
KMT

von Stefan Kleinwort (Gast)


Lesenswert?

@Kai:
exakt.
Mir ist nicht eingefallen, wie man das schön zeichnen kann, Deine
Lösung ist perfekt!

Gruß, Stefan

von mkmk (Gast)


Lesenswert?

Danke, jetzt habe ich verstanden, wie Ihr es meint.

@Rufus
Wie würdest Du in diesem Fall die Leitungen terminieren? An jedes Ende
120R geht ja schlecht. Nur dort terminieren, wo die Kabel
zusammenlaufen? Ueberhaupt nicht terminieren?

von Michael Wilhelm (Gast)


Lesenswert?

Wenn in jeder der RS-485 Linien nur ein Treiber und ein Empfänger ist
(also keine Sterntopologie), wird sowohl der Anfang als auch das Ende
terminiert. Der Widerstandswert richtet sich nach dem Kabel. Richtig
terminiert wird mit dem Wellenwiderstand des Kabels. Ist der nicht
bekannt, kann man den errechnen aus den (Kabel) Werten L/C und daraus
die Wurzel. Ist bei CAT5 aber meistens zwischen 100 und 130 Ohm.

MW

von Rahul (Gast)


Lesenswert?

Ist es denn notwendig, dass die Geräte hintereinander hängen? (Keine
Ahnung, wie dein System arbeitet)
Im Prinzip könnte man doch auch am ehemaligen Sternpunkt eine Kiste
hinpacken, die für jede Erfassungsstelle etwaeder als Repeater oder
sogar als zentraler "Ansprechpartner" arbeitet. Irgendwo muß ja auch
die Auswertung bzw. die Aufzeichnung der Anlage passieren.

von mkmk (Gast)


Lesenswert?

@Rahul
Die Software auf der PC-Seite ist seit Jahren im Einsatzt. Ich möchte
es - wenn irgendwie möglich - vermeiden, wegen diesem einen Kunden in
die Software Aenderungen einzubauen. Und wenn ich an den Punkt, wo die
Kabel zusammenlaufen, eine 'Kiste' einsetze ...
... als 'Kiste' kommt mir nur ein Multiplexer in den Sinn; und den
müsste ich von der PC-Seite ansteuern. Will ich aber nicht. Die Geraete
müssen für die PC-Software 'transparent' sein. Wenn ich das 2. Geraet
ansprechen will, will ich nicht vorher den Multiplexer auf dieses
Geraet setzen müssen.

von Karl heinz B. (heinzi)


Lesenswert?

Multiplexer ist vielleicht etwas uebertrieben.
Was du bei Sternverkabelung brauchen wuerdest ist ein Geraet,
das die Daten vom PC in alle Straenge des Sterns
weiterleitet, bzw. alle Daten von den Sternaesten gesammelt
an den PC weitergibt.
Den brauchst Du nicht vom PC ansteuern. Der verteilt bzw.
sammelt einfach nur.

Aber die vorhandene Verkabelung wie vorgeschlagen zu verschalten
ist sicher die einfachste Loesung, wenn Du mit den Kabellaengen hin
kommst.

von Rahul (Gast)


Lesenswert?

Werden die Erfassungsgferäte nur vom PC abgefragt, oder können sie sich
selber bei ihm melden?

Wenn der PC nur pollt, dann könnte man einen intelligenten Multiplexer
bauen, der für den PC transparent ist, aber die Leitung entsprechend
der Adressierung schaltet, also eher ein Switch.

Sonst wäre die beste Lösung die Kopplung der Geräte am Sternpunkt wie
schon oben beschrieben.

von mkmk (Gast)


Lesenswert?

@Karl und @Rahul

Danke für die Katalyse!
In der Tat hatte ich mich wegen der Stern-Topologie auf einen
Multiplexer festgebissen. Aber da der PC der alleinige Master ist,
werde ich es wie folgt machen:
In die 'Kiste' kommen 16 RS485 Bausteine (8 für Transmit, 8 für
Receive) und an beiden Enden der Leitungen wird terminiert. Die
TTL-Ausgaenge der RS485-Receiver werden an OpenCollector Treiber
angeschlossen, die dann wiederum den MAX232 ansteuern. Umgekehrt treibt
der TTL-Ausgang des MAX232 alle RS485-Eingaenge. Somit ist der ganze
Daten-Verkehr für die PC transparent.

Die weiter oben vorgeschlage Lösung mit der Verkabelung ist technisch
gesehen vielleicht die bessere Lösung, aber da nicht ich die Kabel
verlegt habe und nicht weiss, wo sie überall durchgehen ...
Und weiter muss man bedenken, dass nach einer gewissen Zeit kein Mensch
mehr weiss, welche Ader jetzt woher kommt und wohin führt.

Danke allen für die Anregungen.

von Stefan Seegel (Gast)


Lesenswert?

Jo, so ähnlich würde ich es nach meinem Geschmack auch machen:

8x SN75176 (RS485 Receiver/Transmitter)

Auf der TTL-Seite alle TX Leitungen zusammen auf den UART Ausgang des
MAX232 zum PC, und alle RX Leitungen ver-unden (im "IDLE" Zustand
sind die Leitungen high, so das, vorrausgesetzt dass immer nur ein
Client sendet, die Daten jedes Gerätes am UART Eingang des MAX232
ankommen).

Stefan

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.