Forum: Mikrocontroller und Digitale Elektronik RS232 isoliert durch DCDC-Wandler - nur bis 2400Baud möglich - was läuft falsch?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Dennis (Gast)


Angehängte Dateien:

Lesenswert?

Hi Leute!

Ich habe mir einen galvanisch getrenntes Board für RS232-Übertragungen 
gebaut. Den Schaltplan habe ich mal angehängt. Leider funktioniert die 
Übertragung nur bis 2400Baud. Ab 4800 kommt schon nurnoch Müll zurück.

Zum Test habe ich einfach TX und RX an der UART-Seite verbunden, also 
ohne uC. Aber wie gesagt, das was ich vom PC rausschicke, kommt nur bei 
maximal 2400Baud auch wieder ordentlich an.

Ich weiß, dass der CNY17 nicht der schnellste ist (ich verwende den 
CNY17F4 ohne rausgeführte Basis), aber soo langsam? Oder sind meine 
Widerstände einfach unpassend?

Kann mir mal jemand einen Tip geben?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Leg doch mal ein Rechtecksignal an die Angelegenheit an und sieh Dir mit 
einem Oszilloskop an, was am anderen Ende der Optokoppler 'rauskommt.

Wenn Du keinen Rechteckgenerator hast, übertrage per Terminalprogramm 
eine größere Datei, die aus lauter 'U' (0x55) besteht.

von Peter D. (peda)


Lesenswert?

Der CNY17 ist ne rechte Schnarchnase.

Wenns schnell sein muß, brauchen viele Optokoppler auch ne spezielle 
Beschaltung. Wenn Du mal die Schaltzeiten in Datenblättern anschaust, 
sind da meist 100 Ohm als Last, bloß dann kommt natürlich kein TTL-Pegel 
mehr raus.

Nimm extra Trenner z.B. die ADUM1201 oder richtige Optokoppler mit TTL, 
z.B. HCPL0710.

von Peter D. (peda)


Lesenswert?

Die LEDs am Ausgang machen das ganze natürlich noch extra langsam.
Es wirken dann nicht die 330R als Last, sondern die 5k+10k.

von Christian B. (casandro)


Lesenswert?

Als Sofortabhilfe kannst du R1 und R14 kleiner machen. Schau aber mal 
nach ob es wirklich daran liegt, dass die Signale verschliffen sind.

von Blackbird (Gast)


Lesenswert?

Die CNY17 sind zu langsam. Da sind übrigens Fototransistoren drin, keine 
Fotodioden! Die Basis der Fototransistoren kann man vorspannen oder 
einfach mit1 00k bis 1M an Masse legen um die Schaltgeschwindigkeit zu 
erhöhen.
Es gibt aber auch schnellere Optokoppler.


Blackbird

von Dennis (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Wenn Du keinen Rechteckgenerator hast, übertrage per Terminalprogramm
> eine größere Datei, die aus lauter 'U' (0x55) besteht.

Das werde ich gleich mal versuchen.

Peter Dannegger schrieb:
> Der CNY17 ist ne rechte Schnarchnase.

Ja, wie gesagt, mir ist bekannt, dass der nicht gerade schnell unterwegs 
ist. Nur den findet man oft in Schaltplänen, wo RS232 galvanisch 
getrennt wurde. Habe den z.B. in mehreren ELV-Schaltungen gesehen.

Peter Dannegger schrieb:
> Wenns schnell sein muß, brauchen viele Optokoppler auch ne spezielle
> Beschaltung.

Schnell...naja. Also ich brauche jetzt sicherlich keine 100000+ Baud, 
aber nichtmal 14400? Das hätte ich nicht gedacht.

Peter Dannegger schrieb:
> Nimm extra Trenner z.B. die ADUM1201

Das wäre natürlich die eleganteste Lösung, jedoch hatte ich das für ein 
bisschen übertrieben gehalten, nur um ein paar Daten hin- und 
herzuschieben.

Peter Dannegger schrieb:
> richtige Optokoppler mit TTL,
> z.B. HCPL0710

OK, guck ich mir mal an. Danke!

Aber gibt es keinen Reichelt/Conrad/etc. Standardtypen, welche den 
Anforderungen gerecht werden? Was setzt ihr denn so ein? Oder arbeitet 
ihr bei sowas nur mit so niedrigen Baudraten? Reicht ja theoretisch 
auch, geht nur um das zyklische senden von Messdaten (1/s reicht schon). 
Und eben ein paar Steuerdaten.

Bin nur etwas verwundert, dass das so schlecht ist mit den CNY17. Hatte 
auch schon PC817 drin, aber das ist dasselbe.

von Dennis (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Die LEDs am Ausgang machen das ganze natürlich noch extra langsam.

Echt? Wieso das?

Peter Dannegger schrieb:
> Es wirken dann nicht die 330R als Last, sondern die 5k+10k.

Die sind doch quasi parallel zu den LEDs.

Christian Berger schrieb:
> Als Sofortabhilfe kannst du R1 und R14 kleiner machen.

Damit die Pegel wieder schneller auf 'low' gehen, oder warum?

Christian Berger schrieb:
> Schau aber mal
> nach ob es wirklich daran liegt, dass die Signale verschliffen sind.

Ja, das mach ich gleich mal.

Blackbird schrieb:
> Die CNY17 sind zu langsam. Da sind übrigens Fototransistoren drin, keine
> Fotodioden! Die Basis der Fototransistoren kann man vorspannen oder
> einfach mit1 00k bis 1M an Masse legen um die Schaltgeschwindigkeit zu
> erhöhen.

Und ich hatte extra die genommen, weil ich hier gelesen hatte, dass die 
Basis (zumindest unbeschaltet) schonmal Probleme machen kann.

Habe das ganze natürlich schon geätzt :-\ Tja, Pech...

von Blackbird (Gast)


Lesenswert?

Die gehen schon bis einige zig kHz. Aber nicht mit Deiner Beschaltung.

Blackbird

von Peter D. (peda)


Lesenswert?

Dennis schrieb:
> Die sind doch quasi parallel zu den LEDs.

Eben.
Die LED sperrt schon längst, wärend der Transistor noch viele µs an ist.
Die LED hat eine viel zu hohe Schwellspannung.
Effektiv ist also der 330R in Reihe mit Unendlich.

Schließ mal die LEDs kurz, das sollte ne Menge bringen.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Wenn du extra für die RS232 einen DC/DC-Wandler brauchst, schau mal, ob 
du mit dem Teil hier glücklich werden kannst: 
http://www.digikey.de/product-detail/de/ADM3251EARWZ/ADM3251EARWZ-ND/1944219

von Christian B. (casandro)


Lesenswert?

Dennis schrieb:
> Christian Berger schrieb:
>> Als Sofortabhilfe kannst du R1 und R14 kleiner machen.
>
> Damit die Pegel wieder schneller auf 'low' gehen, oder warum?

Yep. Aber schau mal an in welche Richtung es lahm ist. Als Inverter 
würde ich idealerweise einen integrierten Inverter nehmen.

von (prx) A. K. (prx)


Lesenswert?

Dennis schrieb:
> Aber gibt es keinen Reichelt/Conrad/etc. Standardtypen, welche den
> Anforderungen gerecht werden? Was setzt ihr denn so ein?

6N137

von Blackbird (Gast)


Lesenswert?

Datenblatt sagt:
Fototransistor:
 toff = ton = 4µs @ ca. 270Ohm Load Resistance
 CTR-Frequency = 40kHz @ 20mA Collector Current

Manchmal hilft auch, einen CNY17-1 statt einem mit höherer Current 
Transfer Ratio zu nehmen (Basis sollte aber immer beschaltet sein).


Blackbird

von Dennis (Gast)


Lesenswert?

Blackbird schrieb:
> Die gehen schon bis einige zig kHz. Aber nicht mit Deiner Beschaltung.

Hast du ggf. nen Link zu ner Beschaltung wie es sein sollte?

Peter Dannegger schrieb:
> Die LED sperrt schon längst, wärend der Transistor noch viele µs an ist.
> Die LED hat eine viel zu hohe Schwellspannung.
> Effektiv ist also der 330R in Reihe mit Unendlich.

OK!

Peter Dannegger schrieb:
> Schließ mal die LEDs kurz, das sollte ne Menge bringen.

Teste ich auch. Die LEDs also besser an T2, bzw. T3? Ich mein, man sieht 
eigentlich eh nicht, was was gesendet wird, da es zu schnell blinkt - 
bei 1200 flackert es noch ein wenig, aber darüber... Eigentlich kann die 
auch weg.

Kevin K. schrieb:
> Wenn du extra für die RS232 einen DC/DC-Wandler brauchst

Irgendwoher muss ich meine getrennte Spannung ja bekommen. Spannung über 
die RS232 hat sich oftmals nicht so bewährt, je nachdem, wo das 
angeschlossen war. Manche Schnittstellen brachten nicht genug Strom.

Christian Berger schrieb:
> Yep. Aber schau mal an in welche Richtung es lahm ist. Als Inverter
> würde ich idealerweise einen integrierten Inverter nehmen.

Also ne richtige Treiberstufe. Mhh, OK.

von Dennis (Gast)


Lesenswert?

A. K. schrieb:
> 6N137

Schau ich mir an, danke!

Blackbird schrieb:
> Manchmal hilft auch, einen CNY17-1 statt einem mit höherer Current
> Transfer Ratio zu nehmen (Basis sollte aber immer beschaltet sein).

Alles klar. Dachte, ich hätte die bessere Wahl getroffen. War auch der 
teuerste von den CNY17 bei reichelt, denn der kostete sagenhafte 33c und 
nicht 31, wie die anderen.

von (prx) A. K. (prx)


Lesenswert?

Dennis schrieb:
> Habe das ganze natürlich schon geätzt :-\ Tja, Pech...

Nicht unbedingt. Vergleiche mal das Pinout vom CNY17 (6pin) und 6N137 
(8pin). Mit etwas Glück kann du den VCC Pin fliegend verdrahten. Pin1 
(gegenüber davon) wird nicht verwendet und der Rest passt bereits.

von Dennis (Gast)


Lesenswert?

A. K. schrieb:
> Nicht unbedingt. Vergleiche mal das Pinout vom CNY17 (6pin) und 6N137
> (8pin). Mit etwas Glück kann du den VCC Pin fliegend verdrahten.

Ja :-) Vielleicht, sieht dann natürlich auch entsprechend hingerotzt 
aus. Naja, aber ich lerne ja gerne dazu - jetzt weiß ich zumindest 
schonmal, wie es nicht geht. Hat jemand von euch nen 
Schaltplanausschnitt, wie es sinnvoll beschaltet ist für mich?

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Dennis schrieb:
> Kevin K. schrieb:
>> Wenn du extra für die RS232 einen DC/DC-Wandler brauchst
>
> Irgendwoher muss ich meine getrennte Spannung ja bekommen. Spannung über
> die RS232 hat sich oftmals nicht so bewährt, je nachdem, wo das
> angeschlossen war. Manche Schnittstellen brachten nicht genug Strom.
Der ADM hat einen integrierten DC/DC-Wandler.

von Dennis (Gast)


Lesenswert?

Kevin K. schrieb:
> Der ADM hat einen integrierten DC/DC-Wandler.

Ja, hab ich gesehen.

von Dennis (Gast)


Angehängte Dateien:

Lesenswert?

Dann werde ich wohl neu bauen...hier ist der alte - hatte alles so schön 
gepasst :-\

von Peter D. (peda)


Lesenswert?

Dennis schrieb:
> Dann werde ich wohl neu bauen

Hat die LEDs kurzschließen denn nichts gebracht?

von Dennis (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Hat die LEDs kurzschließen denn nichts gebracht?

Ich hatte noch keine Zeit, aber ich werde berichten!

von Der Rächer der Transistormorde (Gast)


Lesenswert?

Dennis schrieb:
> Aber wie gesagt, das was ich vom PC rausschicke, kommt nur bei
> maximal 2400Baud auch wieder ordentlich an.

Vermutlich sind R6 und R9  zu groß, R7 und R8 zu klein

Google Ausräumwiderstand.

von Stefan (Gast)


Lesenswert?

Egal ob mit diesem oden einem anderen Optokoppler würde ich dazu raten, 
parallel zu den LED+Vorwiderstand einen weiteren Lastwiderstand mit 220 
Ohm zu schalten.

Denn die LED+Vorwiderstand belasten den Ausgang des Optokoppler nur, 
solange die Spannung dort größer als ca 2V ist. Du musst den Optokoppler 
jedoch auch belasten, wenn die Spannung dort geringer ist, weil irgendwo 
in diesem Bereich (0-2V) die Schwellenspannung liegt, bei denen der 
nachfolgende Transistor zwischen high und low umschaltet.

von Stefan (Gast)


Lesenswert?

Ich sehe gerade noch einen Haken: Die Optokoppler werden mit ungefähr 
10mA angesteuert. Da der Optokoppler je nach Variante einen 
Übertragungsfaktor von nur 40 hat, kann sein Ausgang nichtmal mit 4mA 
belastet werden.

Da ist die LED schon zu viel, erst recht mit dem von mir empfohlenen 
zusätzlichen Lastwiderstand.

Passe den Laststrom an den Übertragungsfaktor an. Ich würde die Hälfte 
nehmen, also 2mA, wenn Du den CNY17-1 verwendest.

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.