Hallo, weiss jemand ob sich auch Optokopller zur "Pegelwandlung" zwischen PC und AVR eignen? Gibt es vielleicht schon Projekte über dieses Thema? Gruss Zoltan
Ich habe mal so etwas gemacht, um eine galvanische Trennung zu erreichen. Allerdings habe ich den MAX232 komplett isoliert und auf der TTL-Seite mit Optokopplern gearbeitet. Wichtig: Die Optokoppler dürfen nicht zu langsam sein, sonst muß man mit der Baudrate runter. Auf der RS-232 Seite sehe ich momentan nur das Problem der negativen Spannungspegel - ist aber mit entsprechenden Maßnahmen sicher möglich. Wenns nicht unbedingt galvanisch getrennt sein muß, würde ich allerdings direkt mit einer Transistorschaltung arbeiten.
prinipiell gehts es mit Optokopplern, auch auf der RS232-Seite, aber... 1. wie schon gesagt, Baudrate, die meisten OKs sind schnell am Ende. 2. sind OK stromgesteuerte Bauteile, d.h. du brauchst beim Empfang je nach OK-Typ zwischen 1 und 20mA 3. muß man den Sender erst wieder kurzschlussfest machen 4.brauchst du extra eine negative Betriebsspannung. Insgesamt bietet die Lösung kaum Vorteile gegenüber einem MAX232 o.ä., man kann allerdings auch einfache Transistorschaltungen oder einen Doppel-OP a la TL072 benutzen.
Ein Tipp für Optokoppler, die m.E. einen guten Kompromiß zwischen Leistungsaufnahme und Geschwindigkeit darstellen: PC900.
@crazy horse Kann man sich die Betriebsspannungen (+ und -) für die RS232-Seite nicht aus den Steuerleitungen des PC holen? Sven
Danke für die vielen Tipps. Ich möchte umbedignt eine galvanische Trennung, weil es auf meiner MC-Board Sensoren gibt, welche durch den UART gestört werden. Das ist nur ein Rauschen in mV bereich, es ist also nicht die Welt... Wegen der Geschwindigkeit des OK dachte ich an einer 6N136 (1.28Euro). http://www.sharp.co.jp/products/device/ctlg/jsite22_10/table/pdf/cpl/opic_out/6n136_j.pdf Deswegen dieser Typ (und nicht PC900) weil es den beim mir "um die Ecke" gibt. Probleme sind die Spannungsversorung an der RS232 Seite, und ich weiss nicht, ob der TxD/RxD vom PC bzw vom MC genug Leistung für den LED im Optokoppler haben. Falls nicht, dann müsste man die Schaltung noch (wie im Datenblatt) um zwei Transistoren erweitern. Aber wie gesagt, woher bekomme ich die +12V? Vielleicht vom Parallelport?? @crazy horse warum brauche ich einen negative Betriebsspannung?
Hallo Zoltan, ich habe früher schon gelegentlich mal via OK Daten in den PC-gelesen. Die +12 V holt man sich aus einer Handshakeleitung - 12 V braucht man eigentlich nicht unbedingt. Ob das klappt liegt eigentlich meist nur am PC (gerade ältere Laptops bringen es da meist nicht). Diese Schaltung ist etwas zu aufwendig, zeigt aber grundsätzlich wie es geht: http://fremo-block.sourceforge.net/BlockInterface/pegelwandler_rs232.html Gruß Bernhard
es gibt mehrere Wege, ohne eigene Versorgungs auszukommen, aber das Problem: an manchen PCs wird es funktionieren, an anderen nicht. Die negative Spannung brauchst du, um das Signal normgerecht zu generieren, (space: -3..15V, mark +3..15V). Einige Empfänger-ICs im PC akzeptieren auch TTL-Pegel (also 0V/5V), ausgehen kann man davon nicht. Das nächste Problem beim Senden mit aus dem PC gewonnenen +/-12V: du kannst mit einem Optokoppler nur einen OC-Ausgang mit Widerstand nach +12V aufbauen, keine push-pull-Ausgangsstufe. Und das heißt Querstrom , der die ohnehin schlappen Spannungen belastet. Den Widerstand kann man auch nur in Grenzen erhöhen, da der Strom durch den Widerstand die Leitung und den Eingang des Empfängers umladen muß, je höher der Widerstand, desto geringer die Übertragungsrate. Alles in allem ist es einfach Pfusch (der aber funktionieren kann) Alternative: DC/DC-Wandler, der dir benötigte Versorgung isoliert bereitstellt, dann kann man auch die Pegelwandlung und Signaltrennung direkt mit Optokopplern machen, vorausgesetzt, der Empfänger ist genügsam mit dem Strom. Sehr gute Erfahrungen habe ich diesbezüglich mit dem H11L1 gemacht.
Ehrlichgesagt war mir die Funktion der Datenübertragung nicht ganz bekannt. Ich habe mir, naiver weise vorgestellt, es handelte sich hier nur um 0..12V/5V Pegel. Da das genze jetzt ertwas umfangreicher wird, als ich dachte lege, ich den Projekt vorerst mal "auf Eis", bis ich mehr Zeit habe. Danke für die Ausführlche Antworten.
Mir ist eine (möglche) Lösung eingefallen: Ich behalte den MAX232 zur Pegelkonvertierung bei, und trenne nur die 0..5V an den MC durch Optokoppler. Siehe Anhang. Dabei besteht nazürlich das Problem mit der Versorgungspannung der MAX232 immer noch. @BernhardT >Die +12 V holt man sich aus einer Handshakeleitung Kannst Du mir das bitte genauer erklären?
Ein MAX232 in Verbindung mit OKs ist bestimmt eine relativ einfach zu realisierende Sache. Der MAX232 erzeugt sich seine +-12V übrigens selber über die eingebauten Ladungspumpen! Er braucht dazu nur vier kleine Elkos :)
@Marko 1.)Siehe Anhang. 2.)Mein Problem ist, dass der MAX232 auch einen Versorgungsspannung von 5V (MAX231 12V) braucht. Ich weiss aber nicht, woher ich diese nehmen soll.
Hallo Zoltan, Ich hab dir doch den Link geschickt für das Grundprinzip: http://fremo-block.sourceforge.net/BlockInterface/pegelwandler_rs232.html Der Stefan Bormann Zapft sogar TX an. Seine Schaltung hat sogar echte +/- Pegel, allerdings verwendet er keine Vorwiederstände (laut Norm Eingangswiederstand mindesten 3Kohm). Soweit bin ich nie gegangen, ich hab immer nur einen Pin angezapft - selbst mit Vorwiederstand und Diode hat das meist gelangt. Normgerecht ist das nicht, das weis ich auch. Es ist ne Bastlerlösung, nicht für kommerzielle Zwecke. Ich befürchte aber, das deine Lösung nicht mal Norm-ungerecht arbeitet da der MAX232 ja selber auch Saft verbraucht - ich glaub bis 10mA. Wenn du dir ohnehin schon so einen Aufwand machst, kannst du der Schaltung wirklich auch gleich einen 5V DC/DC spendieren, oder bei www.wut.de gibt's Fertige OK Module (und ne Menge guter Info's ). P.S. Bei WUT kann man sich auch das wirklich gute Handbuch "TCP/IP-Ethernet und Web-IO" kostenlos runterladen oder schicken lasen. Gruß Bernhard
>...kannst du der Schaltung wirklich auch gleich einen 5V DC/DC spendieren.
Ja, aber woher nehme ich die Spannung für den DC/DC (Siehe Schaltung im
Anhang)? Das ist ja mein Problem.
Vom uC natürlich - du must nur drauf achten, das das ein DC/DC -Wandler mit galvanischer Trennung ist. Gruß Bernhard
Hallo Zoltan, ich vergaß zu erwähnen, das du dann für die Bauteilen ne Menge hinlegen musst (auch wenn du den 7805L weg läst). Selbst ne Lösung mit einem FTDI FT232BM USB to RS232 IC ist wahrscheinlich billiger, weil die Stromversorgung über den USB-Port erfolgen könnte. Aber mit denen habe ich noch keine Erfahrung. Vielleicht ist es noch besser du baust deinen Adapter direkt in deinen Rechner ein und holst dir den Saft von dem (ohne den teuren DC/DC-Wandler). Denn wenn es dein Rechner bei den RS232 Pegeln sehr genau nimmt, wirst du auch bei manchen anderen Geräten Schwierigkeiten bekommen. Pfusch ist halt leider auch bei bekannteren Firmen dann beliebt, wenn es Geld spart. Gruß Bernhard
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.