Forum: Mikrocontroller und Digitale Elektronik wie lang darf eine rs232 leitung sein?


von Sebastian G. (bricktop)


Lesenswert?

Servus

ich wöllte mir eine ca. 400m lange Leitung stellen, mit seriellem Kabel
rs232. Am ende soll aber auch noch was ankommen. Kann es Probleme geben?

von boto (Gast)


Lesenswert?

Hallo,
du wills wirklich eine Leitung von 400m haben für eine
RS232-Schnittstelle?
Glaube kaum dass das geht, die Leitung sollte nicht länger als 8 bis
10m maximal sein. Oder wenn die Bedingungen hervorragend sind können
maximal bis zu 30m überbrückt werden.

von otto (Gast)


Lesenswert?

Eine mögliche Alternative wäre, die Spannungs- in Stromimpulse
umzuwandeln und umgekehrt.

von dirk (Gast)


Lesenswert?

Wäre nicht RS485 nicht das richtige soll bis 1200m gehen ?

von GeriB (Gast)


Lesenswert?

Hallo Sebastian

Eine andere Variante ist die RS485. Mit der müsste man diese Distanzen
schaffen.
Wenn nur ab und zu Daten übertragen werden, dann wäre eine möglichkeit
auch über Mobilfunk auf RS232 oder Festnetz auf RS232. Dann dürfen es
auch grössere Distanzen sein.


Alleine 400 Meter Kabel für diese Verbindung kosten eine Stange Geld

Beste Grüsse
GeriB

von paul klee (Gast)


Lesenswert?

...fange mit 110 baud an....

am Ende wirst Du wohl RS422 / RS485 nehmen  gut fuer 1 Km.

von Sebastian G. (bricktop)


Lesenswert?

He Leute, danke für die Infos.


Ist folgendes Möglich?:


SPS-->7805-->Atmel-->MAX485--------400m------->7812-->RS232(=PC)

24V   =>5V    5V      ? V       Verluste      =>12V


Die Datenraten sind sehr gering... etwa jede 2 Sek eine Übertragung,
und auch nur halbduplex (zum PC).

andere Mglk:

SPS--------- 400m -------------->7805-->Optokoppler-->Atmel-Port-->usw
24V         Verluste             =>5V



Ich weis nicht wie man in Visual Basic RS485 ansteuert. Ich kenne mich
nur mit rs232 aus, deswegen bin ich für rs232 am Ende.

von Sascha (Gast)


Lesenswert?

Die Spannungsregler der 78xx-Serie sind zum Levelshiften von
Datenleitungen schon mal überhaupt nicht geeignet.
Die Ausgänge der SPS steuern z.B. Transistoren an, welche die Eingänge
des MC versorgen.

Vom MC dann mit einem TTL-RS484-Wandler auf RS484-Level. Am PC wird
dann nur noch ein RS484-RS232-Wandler benötigt.

SPS<->Transistoren<->Atmel<->TTL-RS484-Wandler<----400m----->RS484-RS232 
-Wandler<->PC

Die Ansteuerung von RS232/RS484 ist absolut gleich, nur die
Übertragungsart auf Drahtebene ist unterschiedlich (diff. statt sigle
ended)...

von dirk (Gast)


Lesenswert?

@Sacha: RS484 -> was ist das, oder meist du RS485?

von crazy horse (Gast)


Lesenswert?

@sascha:
"Die Ansteuerung von RS232/RS484 ist absolut gleich, nur die
Übertragungsart auf Drahtebene ist unterschiedlich (diff. statt sigle
ended)..."
Das stimmt so nicht. Zumindest im meist üblichen Halbduplex-Betrieb ist
eine Umschaltung der Richtung notwendig. Kann man über die
RS232-Steuersignale, das benötigt dann andere Steuersoftware. Der
andere Weg ist die automatische Umschaltung (Transceiver sind auf
Empfang, das Startbit einer Übertragung schaltet den Transceiver auf
senden, zurückschaltung über ein nachtriggerbares Monoflop (Aktivzeit
>=10*Bitdauer). Im Duplex-Betrieb braucht man das nicht, braucht
allerdings 4 Leitungen.

von Sascha (Gast)


Lesenswert?

das war ein tippfehler. Ich meinte RS485.

Der Hersteller Maxim (www.maxim-ic.com) biete eine große Menge von
Transceivern an.

Schaul mal hier:
http://www.maxim-ic.com/appnotes.cfm/appnote_number/723
und hier: http://www.maxim-ic.com/appnotes.cfm/appnote_number/367

von Sascha (Gast)


Lesenswert?

>Das stimmt so nicht. Zumindest im meist üblichen Halbduplex-Betrieb
ist
eine Umschaltung der Richtung notwendig.

Was meist üblich ist, das ist hier irrelevant.

Man kann auf Full-Duplex-Betrieb gehen und dann brauch man sich nicht
um eine TX-RX-Umschaltung kümmern.

Wenn natürlich feststeht, dass fast ausschließlich in eine Richtung
gesendet wird oder wenn Leitungen knapp sind, dann könnte man natürlich
auf HDX gehen...

von Markus_8051 (Gast)


Lesenswert?

Hallo Sebastian,

so wie ich das sehe willst Du Signale von einer SPS mit einem
Mikrocontroller abgreifen und diese dann auf seriellem Wege über die
400m zum PC schicken (bzw anders herum).

Also zunächst ist es so, daß bei der RS232 bzw RS485/422 nur die
Hardwareebene unterschiedlich ist. An der Ansteuerung (sowohl vom PC
als auch vom µC) ändert sich nichts.

Auf der µC-Seite verwendest Du einfach einen anderen Treiberbaustein
(MAX485 oder MAX488/489 statt MAX232). Für die PC-Seite gibt es fertige
RS232<->RS485 Wandler. Aber auch hier kannst Du mit einem MAX232 und
MAX485 Dir selber etwas bauen.

Gruß,
Markus_8051

von Sebastian G. (bricktop)


Lesenswert?

hey super. danke euch. scheint ja einfach zu sein, wenn ichs wie von
Markus_8051 beschrieben, mache.
Als RS232<->RS485 Wandler dann z.B. MAX3162

Meld mich wieder...

von Unknown (Gast)


Lesenswert?

entweder das oder einfach erst ein MAX232 und dann ein MAX485
dahintergeschaltet, dürfte leichter erhältlich sein und billiger
werden.

Michael

von Ithamar G. (antimon)


Lesenswert?

Und wie wärs mit nem Modem? Die braucht keiner mehr, deswegen bekommst
du die nachgeschmissen und damit kommste ewig weit. Und bis zu 56k...

Musst halt nur die paar AT-Befehle zum Verbindungsauf- und -abbau
zusätzlich senden...

von Sebastian G. (bricktop)


Lesenswert?

hmm ist natürlich ne Idee, schon allein wegen der wenigen Leitungen.
Brauch ich da nur ein 2-adriges?

von Rahul D. (rahul)


Lesenswert?

Vollduplex erfordert 4 Leitungen.
Halbduplex nur 2. Dafür darf immer nur einer senden...

von Rahul D. (rahul)


Lesenswert?

achso: laut "Norm" (RS = recommended standard) darf eine RS232-Leitung
ca. 15 Meter lang sein.
Eine RS422- bzw. RS485-Leitung liegt mit entsprechender Terminierung
bei 1200m.
Maxim hat noch Chips, die mehr können...

von Ithamar G. (antimon)


Lesenswert?

>Vollduplex erfordert 4 Leitungen.
>Halbduplex nur 2. Dafür darf immer nur einer senden...

In Bezug auf was meinst du das jetzt? Beim Modem hast du immer nur 2
Leitungen zum Amt - is halt nur halbduplex, aber wenn das langt ist ein
Modem optimal.

Praktisch wär da noch ne alte Telefonanlage für die Spannungsversorgung
und das Freizeichen, ohne gehts zur Not auch, siehe folgenden Thread:

http://www.mikrocontroller.net/forum/read-1-248723.html#249162

von Thomas O. (Gast)


Lesenswert?

ich würde einfach mit höheren Spannungen operieren als es RS232 macht.
Negative Spannung wird auch nciht benötigt. Außerdem sind die
angegebenen 10 Meter ja wohl auf ne bestimmte Datenrate bezogen. Über
welche Datenmenge reden wir hier eigentlich?

Aber alleine die Kabelkosten würden hier eher für Funktechnik sprechen.

von Werner J. (werner_j)


Lesenswert?

Hallo,

> Beim Modem hast du immer nur 2 Leitungen zum Amt - is halt nur
> halbduplex, aber wenn das langt ist ein Modem optimal.

Ein Modem hat keine Gabelschaltung?

Ciao,
Werner

von Daniel Fiedler (Gast)


Lesenswert?

Zitat: "achso: laut "Norm" (RS = recommended standard) darf eine
RS232-Leitung
ca. 15 Meter lang sein."

Das ist richtig, gilt aber bei maximaler übertragunsrate, bei der
niedrigsten kommt man auch ca. 1km weit. es gibt da eine formel. in der
die leitungslänge und die leitungskapazität und die frequenz vorkommt.
wenn ihr die ma haben wollt dann such ich die mal raus. einfach e-mail
schreiben.

es kommt also auf die leitungskapaziät und die übertragunsrate an wie
lang die leitung sein darf.

mfg daniel

von Thomas O. (Gast)


Lesenswert?

neidrigste Leitungskapazität wird ein koaxiales Sat-Kabel haben

von Patrick (Gast)


Lesenswert?

"laut "Norm" (RS = recommended standard) darf eine RS232-Leitung
ca. 15 Meter lang sein."

Bis RS232C war die Leitungslänge auf 15m begrenzt. In der RS232E werden
nur noch die Spezifikationen der Leitungswerte beschrieben, keine
maximale Leitungsmenge

(OK, das ist Haarspalterei, auf 400m kommt man da nie)

von basti (Gast)


Lesenswert?

ich würde einfach mal versuchen selber ne treiberstufe zu bauen. zuerst
wandelst du es auf TTL pegel, (MAX232) dann gibst du das auf nen
Transistor mit ordentlich dampf, auf der anderen Seite macht eine
einfache schaltung wieder TTL pegel draus und dann auf nen MAX232. wenn
du auf der einen seite n rechteck mit derfrequenz von deinem RS232
signal draufgibst kannst du prima einfach messen was hinten ankommt.

von Ithamar G. (antimon)


Lesenswert?

> Ein Modem hat keine Gabelschaltung?

Ich rede hier ja von der Leitung zum Amt - die besteht aus zwei
Leitungen die interessieren, die Echokompensation etc. geschieht ja
schon im Modem selbst.

Aber die Verbindung der beiden Modems geschieht über zwei Drähte und
das ist ja das Ausschlaggebende...

von Werner J. (werner_j)


Lesenswert?

Hallo Ithamar,

> Aber die Verbindung der beiden Modems geschieht über zwei Drähte und
> das ist ja das Ausschlaggebende...

und warum beschrängt das die Komunikation auf Halbduplex?

Ciao,
Werner

von Ithamar G. (antimon)


Lesenswert?

Ach so meinen ;)

Okay, sorry mein Fehler... klar die Verbindung der Modems untereinander
läuft Vollduplex ab...

von basti (Gast)


Lesenswert?

wie bringst du saft auf die leitung? oder werden die automatisch von den
modems erzeugt?

von Thomas P. (Gast)


Lesenswert?


von Ithamar G. (antimon)


Lesenswert?

Siehe meinen Beitrag oben bzw. den Link:

http://www.mikrocontroller.net/forum/read-1-248723.html#249162

Am besten is ne alte Telefonanlage, die sich drum kümmert und
Freizeichen etc. erzeugt, notfalls gehts auch mit ner 9V-Batterie, da
musst du lediglich ein paar AT-Befehle mehr absetzen...

von Sebastian G. (bricktop)


Lesenswert?

Was nehme ich für Kabel bei den 400m mit rs485? EInfache Litze oder
geschirmt und gedrillt?

von Winfried (Gast)


Lesenswert?

Verdrillte 2-Drahtleitung oder einfach Telefon-Installationskabel sollte
tun.

von Frank (Gast)


Lesenswert?

Moin Moin.

Es gibt auch fertige Wandler von RS232 nach RS485. Die, die ich kenne
werden 4-adrig miteinander verbunden und sind als einfache
Zwischenstecker (wie ein alter Dongle) ausgeführt. Auf der Strecke
reicht dann tatsächlich das einfachste Telefonkabel und das bis etwa
1Km.
Die Lösung mit den Modems ist aber auch nicht schlecht. Wenn man die
Dinger per Default in den Dumb-Modus programmiert kommt man mit nem
einzelnen AT Befehl aus um die Strecke zu aktivieren. Ich rate an
dieser Stelle dringend zu einer einfachen Telefonanlage, da in den
Dingern üblicherweise auch Schutzeinrichtungen gegen Überspannungen
drin sind, was bei 400m Strecke schon nicht schlecht sein kann und
gebrauchte Kisten kosten ja nun wirklich nicht viel.

bye

Frank

von Matthias (Gast)


Lesenswert?

Wie sieht es eigentlich mit einer 20mA Schnittstelle aus? Hab da
irgendwie was in Erinnerung dass diese auch recht weit gehen soll!
Gibts da auch treiberbausteine?

Gruß Matthias

von Marko B. (Gast)


Lesenswert?

Laut TI ~1km bei 2400 baud, ~300m bei 4800 baud:

http://www.lammertbies.nl/comm/info/RS-232_specs.html

von Sebastian G. (bricktop)


Lesenswert?

Wie kann ich denn die Abschlusswiderstände berechnen? Gibt es da eine
Formel, die Leitungslänge berücksichtigt?

von Sepp (Gast)


Lesenswert?

@Sebastian Gaertner

Du verwendest doch eine SPS.

Die haben doch schon fast alle den Profibus.
(Process Field Bus)

Die können doch normalerweise bis zu 400m bei 500kbit/s und 100m  bei
12Mbit/s.

Wenn du einen Repeater dazwischenhängst gehts noch weiter.

Du mußt dir eigentlich nur einen Profibus to RS232 oder Profibus to USB
Konverter für deinen PC besorgen und gut ist.

Wenn deine SPS so alt ist dass sie noch keinen Profibus hat dann wird
dir das Basteln nicht erspart bleiben.

mfg Sepp

von Sepp (Gast)


Lesenswert?

Ich hab vergessen zu schreiben dass der Profibus eine Reichweite von bis
zu 1,2Km hat wenn man mit der Datenrate noch weiter runtergeht.

von Sebastian G. (bricktop)


Lesenswert?

ja ich kenne Profibus, diese Baugruppe kostet aber zusätzlich. Für meine
Zwecke ist das Basteln noch OK.

von Sebastian G. (bricktop)


Lesenswert?

Bis jetzt ist es einfach. Eine Seite sendet, die andere empfängt nur. So
kann man die max485 Treiber für Sender bzw. Empfänger festlegen. Ein
Treiber kriegt High-Pegel am DE und /RE und der andere Treiber Low
(Masse).
Ein Problem tritt auf, wenn ich mir überlege, dass ab und zu auch mal
die Gegenseite senden soll. Dann müsste man die Pegel (s.oben) an
beiden Treibern invertieren. Nur wie automatisiert?

von Rahul (Gast)


Lesenswert?

Dann guck mal nach RS422-Transceivern z.B. bei Reichelt im Katalog.

von Sebastian G. (bricktop)


Lesenswert?

versteh ich nicht, was nützen mir die?

Also hier nochmal das Problem:

PC-MAX232-MAX485===================================MAX485-AVR
                                ^
          Empfang           2-Draht TP             Sender

Wenn nun der linke MAX485 senden soll, muss man die 2 speziellen Pins
daran invertieren, Gegenseite auch. Das könnte man dem AVR anvertrauen,
der über die Ferne dort links per Transistor die Pegel umschaltet, doch
brauch ich dazu ne Leitung mehr (teuer)...
Aber ich glaub das geht nur so!?

von Hartmut Gröger (Gast)


Lesenswert?

hi

Dann nimm CAN-Bustreiber PCA82C250(Reichelt). Die haben eine
automatische Umschaltung beim Senden. Die Übertragung ist ähnlich
RS485.

Mfg HG

von Sebastian G. (bricktop)


Lesenswert?

OK, danke, das wäre eine gute Lösung

Sieht das dann so aus?


PC-MAX232-PCA82C250===================================PCA82C250-AVR
                                ^


      Empfang/Senden        2-Draht TP             Senden/Empfang

d.h. kann ich den zusammen mit nem max232 verwenden?

von Sebastian G. (bricktop)


Lesenswert?

hab ganz übersehen, dass ich ja nur 2400Baut verwende (geht sogar noch
weniger). Ist da nicht 4000ft möglich (1200m) ???? Brauche also garkein
rs485 oder CAN?

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.