RS485 -> RS232

Alle allgemeinen Themen zu Elektronik und Elektro

Alle allgemeinen Themen zu Elektronik und Elektro

Moderator: Moderatorengruppe

RS485 -> RS232

Neuer Beitragvon backtobasic am Dienstag 25. September 2007, 10:12

Hallo,

ich suche einen Umsetzer RS485 auf RS232.
Mr. Google habe ich schon gefragt, aber ich finde nur Lösungen, die eine Umsetzung von RS232 auf RS485 haben.

Da ich zeitlich nicht begrenzt bin und Lust habe den Lötkolben zu schwingen, würde ich gerne so einen Umsetzer selber bauen wollen.

Garantiert gibt es schon fertige Bausteine, die das RS485 hardwareseitig umsetzen. Dann noch ein wenig TTL und das sollte es gewesen sein, aber wie heißen diese RS485-relevanten Bausteine?
Sind bei RS485 die gleichen Spannungen wie bei RS232 zu erwarten?
Hat sich schon jemand die Mühe gemacht so einen Umsetzer zu bauen oder gibt es doch noch brauchbare Links im Internet?

Gruß,
backtobasic
backtobasic
backtobasic
Threadstarter
28853
Bronze Mitglied
 
Beiträge: 36
Registriert: Donnerstag 28. Oktober 2004, 18:13

Neuer Beitragvon anders am Mittwoch 26. September 2007, 22:22

Garantiert gibt es schon fertige Bausteine, die das RS485 hardwareseitig umsetzen. Dann noch ein wenig TTL und das sollte es gewesen sein, aber wie heißen diese RS485-relevanten Bausteine?

Ganz so trivial ist die Thematik nicht, weil der Datenverkehr normalerweise anders organisiert wird.

RS232 ist für kurze und relativ langsame Punkt-zu-Punkt-Verbindungen gedacht, wobei die Daten über getrennte Stromkreise gleichzeitig in beide Richtungen fliessen können, während RS485 und RS422 Bussysteme sind, bei denen ein einziger Stromkreis die Daten abwechselnd in beide Richtungen transportieren kann und ausserdem mehrere Geräte an eine Leitung angeschlossen werden können.
Weiter stehen bei RS232 noch Steuerleitungen zu Verfügung, die es bei den differentiellen Datenübertragungen nicht gibt. Die Signalisierung der Zustände der angeschlossenen Geräte muss dort, mit Hilfe eines Protokolls, in die seriellen Daten eingebettet werden.

Elektrisch sind sie auch sehr verschieden.
Abgesehen davon, daß RS232 normalweise mit sehr viel geringerer Geschwindigkeit betrieben wird, handelt es sich hierbei um ein asymmetrische Signal, bis zu plus und minus 15V gegen Masse, während bei RS422 und RS485 die Information durch die Spannungsdifferenz zweier symmetrisch betriebener Adern, die nur in der Größenordnung einiger hundert Millivolt liegt, übertragen wird.
Um bei hohen Geschwindigkeiten und längeren Leitungen störende Reflexionen des Signals an den Enden der Leitung zu vermeiden, sind i.d.R. auch Abschlusswiderstände erforderlich.

Ich habe vor vielen Jahren mit beiden Verfahren zu tun gehabt.
Damals wurde als Pegelumsetzer TTL -> R232 vorwiegend der SN75188 und als Empfänger RS232 --> TTL der SN75189 verwendet. Beide Typen sind heute weitgehend durch den MAX232 und dessen Abkömmlinge ersetzt.
Für die Umsetzung TTL --> RS422 wurden vorzugsweise AM36LS31 und für die Gegenrichtung RS422 --> TTL AM26LS32 eingesetzt. Welche Chips aktuell dafür verwendet werden, weiss ich nicht, aber es sollte kein Problem sein solche bei den üblichen Verdächtigen wie TI, STM, Maxim, ON zu finden.

Siehe auch http://de.wikipedia.org/wiki/EIA-485
anders
28867
Moderator
 
Beiträge: 4686
Registriert: Freitag 28. Februar 2003, 13:46

Neuer Beitragvon backtobasic am Donnerstag 27. September 2007, 11:31

Hallo anders,

danke für deine sehr gute Beschreibung!
Die Bausteine AM26LS32 bzw. AM36LS31 sind wohl heute nicht mehr zu bekommen...

Ich habe gerade doch noch einen Umsetzer im WWW mit einem MAX485 und einem MAX232 gefunden.
http://aquaticus.info/rs485_to_rs232
Den werde ich mir mal genauer angucken, und vielleicht klappt das sogar wie gewollt?!
Ich möchte nur die Daten im RS485-Bus mitlesen, mehr nicht!

Gruß und besten Dank an anders
backtobasic
backtobasic
Threadstarter
28870
Bronze Mitglied
 
Beiträge: 36
Registriert: Donnerstag 28. Oktober 2004, 18:13

Neuer Beitragvon anders am Donnerstag 27. September 2007, 18:39

Ich möchte nur die Daten im RS485-Bus mitlesen, mehr nicht!
Dann ist vielleicht sogar ein simpler und für ein paar Cent an jeder Ecke erhältlicher Komparator wie der LM339 für die RS485-TTL Umsetzung ausreichend.

Ob allerdings der UART des PC schnell genug ist, ist fraglich.
Ein Oszilloskop ist zur vorab Klärung sicher hilfreich.

Ausserdem werden auf der RS-485 oft synchrone, blockorientierte, Datenübertragungen eingesetzt, während der gewöhnlich im PC verwendete UART nur mit asynchronen Daten, bei denem jedem Byte ein Start- und ein Stopbit zugesetzt ist, zurechtkommt.

Es gab und gibt aber Rechner, bei denen anstelle des billigen UART ein USART eingebaut ist, der auch für die synchrone Datenübertragung geeignet ist.

In der synchronen Betriebsart muss USART ausserdem mit dem Taktsignal versorgt werden. Teilweise geschieht das über ein reserviertes Adernpaar der RS485-Verbindung, teilweise wird der Takt mit einer speziellen PLL-Schaltung aus dem Datenstrom zurückgewonnnen.
Ausserdem muss zur Bedienung des USART geeignete Software vorhanden sein.

Du siehst, dass die Analyse eines unbekannten Datenstroms ein größeres Projekt werden kann.
Wenn du das kommerziell machst, empfehle ich, dass du dir einen Protokoll-Analyzer besorgst.
Solche Geräte, die neu doch einige Tausender kosten, kann man, wenn man sie nur selten braucht, auch bei Verleihfirmen bekommen.
Veraltete gebrauchte Geräte habe ich aber gelegentlich auch schon erstaunlich billig bei ebay gesehen.
anders
28873
Moderator
 
Beiträge: 4686
Registriert: Freitag 28. Februar 2003, 13:46

Neuer Beitragvon backtobasic am Freitag 28. September 2007, 08:15

Hallo anders,

vielen Dank für deine Antwort.

Ob allerdings der UART des PC schnell genug ist, ist fraglich.

Der Bus läuft mit 187.5 kbit/s, also für einen normalen PC nicht wirklich brauchbar. Ich könnte den Takt aber reduzieren.

Vielleicht ist die Idee wirklich nicht "einfach" umsetzbar?!
Ich habe vor mir einen Verbindungsaufbau vom MPI-Adapter<->SPS mitzuschreiben, um diesen Code dann in einem Mikrocontroller zu simulieren.
Möchte versuchen Daten einer Schaltung in den MPI-Bus zu kriegen, und am besten auch so, dass es die S7 versteht! :D
Übrigens, das Projekt ist nicht kommerziell.

Das MPI-Protokoll von Siemens ist leider nicht veröffentlicht. Da heißt es nur mitloggen und probieren.
Habe aber hier im Forum einen Beitrag gefunden, der angeblich als Umsetzer RS232<->Profibus arbeitet:
http://www.transistornet.de/viewtopic.php?t=269
Da MPI im Grunde nichts anderes als PB ist, könnte ich dieses Interface für meine Aufgabe nehmen?

Einen alten Protokoll-Analyzer habe ich schon auf meiner Arbeit gesehen.
Das Ding ist von Siemens, hat ein kleines monochromes Display und eine herunterklappbare Tastatur.
Ich glaube aber nicht, dass das Gerät 1. noch funktioniert und 2. verliehen wird.

Vielen Dank für deine Bemühungen!
backtobasic
backtobasic
Threadstarter
28876
Bronze Mitglied
 
Beiträge: 36
Registriert: Donnerstag 28. Oktober 2004, 18:13

Neuer Beitragvon anders am Freitag 28. September 2007, 14:53

Da MPI im Grunde nichts anderes als PB ist,
Bist du da sicher ? RS-232 beschreibt eigentlich auch nur die elektrischen Eigenschaften und Verwendung der Signale, aber keine Eigenschaften des Datenverkehrs wie etwa synchron/asynchron, vollduplex/halduplex, Handshake und Baudraten. Die im Deutschen früher oft synonym zu IEC-"RS-232C" gebrauchte CCITT-"V24" Norm beschreibt sogar eigentlich nur die mechanischen Eigenschaften und Pinbelegung von Stecker und Buchse!

habe vor mir einen Verbindungsaufbau vom MPI-Adapter<->SPS mitzuschreiben, um diesen Code dann in einem Mikrocontroller zu simulieren.
Möchte versuchen Daten einer Schaltung in den MPI-Bus zu kriegen, und am besten auch so, dass es die S7 versteht!
Ich beschäftige mich nicht mit solchen Steuerungen und kann dir da kaum weiterhelfen. Allerdings hat eine kurze Internet Recherche eine Menge Firmen ergeben, die irgendwelche Interfaces und Adapter in dieser Richtung verkaufen wollen.
Vermutlich findet man in den Handbüchern dieser Geräte doch einige nützliche Hinweise.
Außerdem verkauft Siemens (Infineon) ja selbst Mikroprozessoren. Es kann gut sein, dass man in den dazu gehörigen Applikationsberichten Beipiele für die Hard- und Softwaremässige Anbindung findet.
Einen alten Protokoll-Analyzer habe ich schon auf meiner Arbeit gesehen.
Das Ding ist von Siemens, hat ein kleines monochromes Display und eine herunterklappbare Tastatur.
Dann lass dir mal das Handbuch geben und schau nach, was der alles kann.
Ich glaube aber nicht, dass das Gerät 1. noch funktioniert und 2. verliehen wird.
Wenn das Teil defekt ist, können sie es ja eigentlich ausmustern ;-) und dir schenken.
Nach dem Erneuern einiger Elkos ist vielleicht wieder Leben drin.
Wenn sie es nicht verleihen wollen, müsste es ja noch funktionieren und dann gilt eben der alte Spruch, dass, wenn der Prophet nicht zum Berge kommt, der Berg zum Propheten kommen muss.
anders
28881
Moderator
 
Beiträge: 4686
Registriert: Freitag 28. Februar 2003, 13:46

Neuer Beitragvon backtobasic am Freitag 28. September 2007, 19:35

Hallo anders.

Da MPI im Grunde nichts anderes als PB ist...

Bist du da sicher?

Ja, bin mir ziemlich sicher. MPI ist Siemens' Eigentum und ist die Schnittstelle in der 300er SPS-Welt. Profibus ist nichts anderes, nur, dass verschiedene Firmen für die Profibus-Schnittstelle Geräte anbieten und dass dieser mit maximal 12MBit zu betreiben ist. MPI kennt nur maximal 187.5kbit/s. Für Profibus gibt es GSD-Dateien, die die PB-Hardware in die Software implementieren.

Nur zur Info:
Profibus = Processfieldbus
MPI = Multi-Point-Interface

Allerdings hat eine kurze Internet Recherche eine Menge Firmen ergeben, die irgendwelche Interfaces und Adapter in dieser Richtung verkaufen wollen.
Vermutlich findet man in den Handbüchern dieser Geräte doch einige nützliche Hinweise.
Außerdem verkauft Siemens (Infineon) ja selbst Mikroprozessoren. Es kann gut sein, dass man in den dazu gehörigen Applikationsberichten Beipiele für die Hard- und Softwaremässige Anbindung findet.

Einen MPI-Adapter benutze ich schon. Ich möchte mir keinen Adapter bauen, sondern lediglich ein Gerät, welches in den MPI-Bus kurze Datenströme sendet. Darum dachte ich mir, ich könnte das MPI-Protokoll in einem Mikrocontroller nachbilden.
Die Chips, genauer die ASIC's, sind eigentlich ganz preiswert, aber die Software und die Lizenz sind sowas von teuer...
Und in den Handbüchern ist auch nichts zu finden, denn MPI ist nicht publik, leider... :cry:

Einen alten Protokoll-Analyzer habe ich schon auf meiner Arbeit gesehen.
Das Ding ist von Siemens, hat ein kleines monochromes Display und eine herunterklappbare Tastatur.

Dann lass dir mal das Handbuch geben und schau nach, was der alles kann.

Hhm, wenn das Handbuch noch zu finden ist... Ach, ich schmeiß das Ding einfach mal an und dann sehe ich, ob es noch funktioniert. :D

Gruß
backtobasic
backtobasic
Threadstarter
28892
Bronze Mitglied
 
Beiträge: 36
Registriert: Donnerstag 28. Oktober 2004, 18:13


Zurück zu Elektronik Allgemein

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 47 Gäste