TTL-Signal galv. getrennt über LVDS: Verständnisfrage

Gast #2945705
Lesenswert?

Hallo liebes Forum,

ich habe hier Probleme eine LVDS-Schaltung in Betrieb zu bekommen. Habe 
wahrscheinlich einen stupiden Anfängerfehler eingebaut.

Ich möchte um 2 Systeme mit einander zu synchronisieren (100Hz-Signal), 
ein CPLD-Takt, als TTL-Signal an ein anderes System anschliessen. Um 
jetzt auch größere Übertragungsstrecken störungsfrei zu übertragen, habe 
ich an LVDS gedacht.

Das ganz habe ich aufgebaut, wie in der .SCH im Anhang zu sehen.

Der Ausgang des CPLDs bekommt noch einmal einen Leitungstreiber 
spendiert und geht dann zur galv. Trennung und zur Invertierung 
(benötige das CPLD-Signal invertiert am Empfänger) auf einen 
Optokoppler. Der Leitungstreiber und der Eingang des Optokopplers hängen 
noch am selben GND des Sendesystems. Der Ausgang des Optokopplers hängt 
dann an einem galv. getrennten DC-DC-Wandler (5V-5V) Die 5V-VCC des 
DCDC-Wandlers kommen von der Platine des Sendesystems. Wie man sieht 
hängt dann sowohl der Ausgang des Optokopplers als auch der LVDS-Treiber 
an der galv. getrennten Masse des DCDC-Wandlers.

Bis hierhin funzt das auch alles wunderbar, der LVDS-Sender spuckt die 
korrekten Signale aus.

Nun gibt es eine Empfängerplatine mit dem LVDS-Receiver drauf. Dieser 
wird nun mit 5V und GND aus dem Empfängersystem versorgt.

Soweit so gut.

Verbinde ich jetzt allerdings +O1 und -O1 des LVDS-Treibers mit +I1 und 
-I1 des Empfängers bekomme ich nicht das gewünschte 5V-TTL-Signal 
(100Hz) raus, der LVDS-Empfänger hängt am Ausgang auf konstant 5V?!

Die ganze Schaltung funktioniert erst, wenn ich den Empfänger-LVDS mit 
dem selben VCC und dem selben GND des LVDS-Senders verbinde (+5V_out1, 
GND_out1). Also komplett von dem Empfängersystem trenne. Dann spuckt 
auch der LVDS-Empfänger das korrekt zusammengesetzte LVDS-Signal wieder 
aus (5V, 100Hz). Woran liegt das?

Muss ich jetzt VCC und GND aus meinem Sendersystem mit an den Empfänger 
führen? Das sollte ja nicht Sinn der Sache sein?!

Über Antworten würde ich mich freuen!

MfG
C3
Angehängte Dateien:
Gast #2945730
Lesenswert?

Hmmm, ziemlich grosser Zauber für 100 Hz.
Oder meinst du 100 MHz ?

Für 100 Hz sollte Trennung über simple Optokoppler ausreichen.

Nimm mal GOOGLE und Suche:  stromschleife optokoppler
                            stromschleife optokoppler Schaltbild
mit Einstellung "Bildersuche"

Ggf. kann man über einen schnellen Optokoppler nachdenken, wie HCPL-2601 
o.ä.

Gruss
Gast #2945784
Lesenswert?

Die 100Hz sind nur der Defaultwert, es können bis zu 10kHz 
werden...Immer noch kleine Frequenzen, ich weiss :)

Mich würde aber eher interessieren wieso meine Schaltung nicht 
funktionert, abgesehn davon ob Sie überdimensioniert ist...
#2945794
Lesenswert?

@  C3P0 (Gast)

>Ich möchte um 2 Systeme mit einander zu synchronisieren (100Hz-Signal),
>ein CPLD-Takt, als TTL-Signal an ein anderes System anschliessen. Um
>jetzt auch größere Übertragungsstrecken störungsfrei zu übertragen, habe
>ich an LVDS gedacht.

Was ist bei dir größer? 1m? 100m?

LVDS ist bestenfalls was für einige Meter, der 
Gleichtaktaussteuerbereich (was für ein Wort) ist bestenfalls 1V. RS485 
hat +12/-7V. Für 100 Hz, selbst wenn sie auf 10ns genau sein sollen, 
reicht da RS485.

>Der Ausgang des CPLDs bekommt noch einmal einen Leitungstreiber
>spendiert

Nobel geht die Welt zu grunde. Klingt alles sehr akademisch.

>hängt dann sowohl der Ausgang des Optokopplers als auch der LVDS-Treiber
>an der galv. getrennten Masse des DCDC-Wandlers.

Ja.

>Nun gibt es eine Empfängerplatine mit dem LVDS-Receiver drauf. Dieser
>wird nun mit 5V und GND aus dem Empfängersystem versorgt.

>Verbinde ich jetzt allerdings +O1 und -O1 des LVDS-Treibers mit +I1 und
>-I1 des Empfängers bekomme ich nicht das gewünschte 5V-TTL-Signal
>(100Hz) raus, der LVDS-Empfänger hängt am Ausgang auf konstant 5V?!

Und was ist mit der galvanisch getrennten Masse? Die musst du mitführen! 
Einer der großen Irtümer, dass differentielle Übertragung ohne Masse 
auskäme. Dem ist nicht so!

>Die ganze Schaltung funktioniert erst, wenn ich den Empfänger-LVDS mit
>dem selben VCC und dem selben GND des LVDS-Senders verbinde (+5V_out1,
>GND_out1).

GND_out1 reicht.

MfG
Falk
Gast #2945842
Lesenswert?

Danke Falk, werde ich gleich morgen ausprobieren...

Der HCT-Treiber ist eigenlich nur dazu gedacht, den CPLD nicht unnötig 
zu belasten und ihn vom Optokopller zu "entkoppeln"...kann ich mir den 
HCT125 komplett sparen?

Kannst du mir noch einmal erklären, warum ich GND_out1 benötige, gerne 
auch akademisch :)

Falk Brunner schrieb:
> Was ist bei dir größer? 1m? 100m?

10-20m wollte ich damit überbrücken...LVDS nicht geeignet?
#2946252
Lesenswert?

@  C3P0 (Gast)

>Der HCT-Treiber ist eigenlich nur dazu gedacht, den CPLD nicht unnötig
>zu belasten

Ach der Arme ;-) Die 6mA liefert der locker.

>und ihn vom Optokopller zu "entkoppeln"...kann ich mir den
>HCT125 komplett sparen?

Ja.

>Kannst du mir noch einmal erklären, warum ich GND_out1 benötige, gerne
>auch akademisch :)

Weil LVDS nicht potentialfrei ist, "nur" differentiell. Da braucht man 
die Masse, damit der Gleichtaktbereich der Spannung definiert ist. Die 
Empfänger sind zwar differentiell, haben aber wie bereits gesagt nur 
einen eher kleinen Gleichtaktbereich. Sprich, die Spannung an den 
Eingängen muss 1,25V +/-1V betragen, dann kann die Differenz sauber 
erkannt werden. Wenn dort wegen Masseverschiebung plötzlich 5V Offset 
drauf sind, fahren die Empfänger in die Ecke. Ebenso wenn keine 
Masseverbindung besteht, dann ist die Gleichtaktspannung nur sehr 
schwach über irgendwelche Leckströme und undefinierten Innenwiderstände 
festgelegt. Nicht gut. Auch nicht bei RS485.

>10-20m wollte ich damit überbrücken...LVDS nicht geeignet?

HDMI & Co nehmen es auch über mehrere Meter, dann aber mit guten 
Erdungsverhältnissen. Wozu LVDS? Für 100 Hz tut es RS485 deutlich 
besser, weil robuster. Wozu die galvanische Trennung?
Gast #2946443
Lesenswert?

Falk Brunner schrieb:
> HDMI & Co nehmen es auch über mehrere Meter, dann aber mit guten
> Erdungsverhältnissen. Wozu LVDS? Für 100 Hz tut es RS485 deutlich
> besser, weil robuster. Wozu die galvanische Trennung?

Nunja, das war wohl eben genau mein Denkfehler. Ich dachte an LVDS, weil 
hier eben nicht (Irrtum) massebezogen Übertragen wird, sondern 
"potentialfrei". Ich dachte, dann muss ich mich um gute 
Masseverhältnisse nicht kümmern :)

Zur galvanischen Trennung: Sollte sich auf meinem Übertragungsweg eine 
Störung einkoppeln, kann diese so nicht bis an meine Sender-Hardware 
(z.B. bis zum CPLD) gelangen. Oder bin ich hier auch wieder aufm 
Holzweg?
#2946479
Lesenswert?

@  C3P0 (Gast)

>Zur galvanischen Trennung: Sollte sich auf meinem Übertragungsweg eine
>Störung einkoppeln, kann diese so nicht bis an meine Sender-Hardware
>(z.B. bis zum CPLD) gelangen.

Im Prinzip ja, aber die Sender sind meist nicht das Problem bei 
Störeinkopplungen, eher die Empfänger. Und warum glaubst du, dass das 
soooo massiv Störungen einkopplen? Wie sieht das Umfeld des 
Übertragungswegs aus? Große Maschinenhalle mit bösen Verbrauchern?

Ausserdem haben da die Transceiver noch ein Wörtchen mitzusprechen. Und 
gerade da ist differentielle Übertragung schon recht robust.
#2946611
Lesenswert?

Um auf die eigentliche Frage mal wieder einzugehen...
Erstmal zum OK-Teil:
Bei 5V und 1,8V an der LED mit einem 680er Widerstand komme ich auf 
(5-1,8)/680=4,7mA. Liegt knapp unter den erforderlichen 5mA und die 
Toleranzen der Spannungsversorgung nicht mitgerechnet. Leg mal R2 für 
6,3mA aus (-20% Degeneration und man ist wieder bei 5mA). Mit einem 
470er bist du bei 6,8mA. Aber aktuell verrichtet er ja seinen Dienst...

Prinzipiell sollte dein Vorschlag zwar funktionieren, wenn beide 
Reciever auf das gleiche GND-Potential abzielen. Schau dir mal das 
"klassische" Schaltbild eines Differenzverstärkers (mit endlicher 
Verstärkung, aber erstmal egal) mit OpAmps an. Dort sind je ein 
Spannungsteiler gegen + und ein Spannungsteiler gegen - an die Eingänge 
des OpAmps geführt. Diese haben also eine Beziehung zur Masse des 
OpAmps. Ich nehme mal an dass im Ersatzschaltbild des LVDS-Empfängers 
diese Rs zu schwach sind und dieser deshalb streikt.

Probier mal jeweils "oben" an den 100er einen 1M-R gegen V+ des 
Empfängers und "unten" einen 1M-R gegen V- des Empfängers zu packen.
#2946661
Lesenswert?

Soviel erstmal zur eigentlichen Frage und hier jetzt der Gegenvorschlag:

Du willst ein 100Hz quer durch eine Maschinenhalle mit viel böser EMV 
schicken. Dafür sollte eine direkte OK-Verbindung reichen, da es 
unwahrscheinlich ist, dass ein so hoher Strom induziert wird, dass bei 
1,8V ein paar mA die LED zum leuchten bringen.

Hier die Schaltung, die ich mal schnell zusammengekritzelt habe.
Um die Ausgansseite ein wenig zu schützen kommt dort der erste OK und 
ein DC/DC-Wandler zur Isolation hin. Dein CPLD bekommt einen 
Ausgansstreiber und schaltet die LED des ersten OK.
Der erste OK schaltet an einen Treiber durch, der wiederum die LED an 
OK2 mit wesentlich höherem Strom treibt. Wenn dann der Transistor von 
OK2 mit dem Kollektor an 24V hängt und der Emitter auf den 24V-Eingang 
der SPS geht, kannst du direkt einen SPS-Eingang schalten.
Im Fehlerfall passiert deinem CPLD-Ausgang nichts, Treiberseite von OK1, 
eine Hälfte des DCDC und die LED-Seite des OK2 hängen draußen an der 
langen Leitung. Der Eingang zur SPS ist über OK2 gesichert und die 
Strombeschränkung ergibt sich aus der CTR des OK2. Für 100Hz sicher kein 
Problem.

Über die Leitung gehen dann auf einer Ader die 5V. Auf der SPS-Seite 
bleibt der OK UND der 47er Widerstand und erst hinter dem Widerstand 
geht es wieder auf der zweiten Ader zurück.

Den Umweg über den 2ten OK und den DC/DC kannst du dir evtl. auch 
sparen, wenn du den 24V-Eingang quer durch die Halle an OK1 ziehst. Wenn 
es da Probleme gibt, dann halt doch den zweiten OK.
Angehängte Dateien:
#2946728
Lesenswert?

Ok, bei Fragen einfach kurz posten. Ich kann dir nur mal kurz meine 
Rechnung geben. Ich hab mal den 4N35 genommen. Der hat eine 
Reaktionszeit von etwa 7us, was dann bei 100Hz und 10ms ja um mehr als 
den Faktor 1000 überdimensioniert ist, sollte also fürs Timing gehen...
#2946854
Lesenswert?

Nebenbei sei noch schnell gesagt, dass der 4N35 ein "Klassiker" ist, hat 
also keinen eingebauten Komparator oder sonstige Digitaltechnik auf dem 
Chip. Daher nimmt der es auch nicht so genau mit der Restwelligkeit oder 
Problemen auf Vcc. Geht allerdings auf Kosten des Stromverbrauchs und 
der CTR. Zum Vergleich: Der HCPL2631 braucht zwar mindestens ordentliche 
4,5V, schaltet aber bei 5mA LED-Strom eine Last von 15mA zuverlässig 
durch und dabei extrem schnell. Für deine Anwendung würde ich aber den 
4N35 nehmen, denn da sind die o.g. Eigenschaften von Vorteil.
#2947325
Lesenswert?

Die 4N35 IR-LED kann 60mA continuous ab, wäre also nicht so wild. Jetzt 
zur Rechnung: 1,8V+0,7V=2,5V drop. 5-2,5=2,5V über R. Mit R=47 ergeben 
sich ~50mA und 100mW Abwärme, bei R=100 sind es ~25mA und ~50mW Abwärme.
Laut DB darf die LED kontinuierlich 100mW aufnehmen.

Wenn es dich beruhigt, dann nimm ruhig 100 Ohm. Den meisten 
SPS-Eingängen genügen 4-10mA. Da der 4N35 eine CTR von mindestens 100% 
hat, kannst du mit dem 47er auch SPS-Eingängen mit 50mA Stromaufnahme 
bedienen. Ich hab jetzt aber keine Spec von den 24V-Eingängen und was 
die so aufnehmen, deshalb hab ich es einfach mal auf 47-100Ohm, sprich 
50-25mA ausgelegt.
Meine VIPA 115 kommt damit (R=100) klar, sogar bei 12V :-)
#2947339
Lesenswert?

Vielleicht wäre es auch sinnvoll auf zwei 47er zu verteilen. Einen als 
Überstromschutz auf der Sendeseite beim Phototransistor von OK1 und 
einmal um die Störempfindlichkeit herabzusetzen direkt vor der LED des 
OK2. Wenn dann jemand die Kabelenden zusammenhält wird findet der 
Spannungsabfall über den 47er statt und nicht komplett über den 
Phototransistor von OK1.
#2947374
Lesenswert?

Und wenn du den 74-125 nur als Treiber für die LED hast, dann kannst du 
auch die LED von OK1 gegen 5V hängen und mit einem npn (z.B. BC547) über 
einen Vorwiderstand (4,7k-10k) aus dem 3,3V-CPLD auf die Basis gehen.
Dann wird ein HI-Pegel des CPLD auch mit 24V an der SPS abgebildet
(CPLD-HI=>LED1 leuchtet T1 schaltet LED2 leuchtet T2 schaltet=>24V an 
SPS)

Ein n-FET geht auch, aber der braucht auch nen Widerstand am Gate gegen 
Masse für einen definierten Einschaltzustand.
Gast #2955092
Lesenswert?

René B. schrieb:
> Laut DB darf die LED kontinuierlich 100mW aufnehmen.

Ja, steht unter "Absolute Maximum Ratings" und gilt für eine 
Umgebungstemperatur <= 25°C.
Darüber brauchst Du ein Derating von 1,33mW/K.

Charakterisiert wurde der Optokoppler mit einem Vorwärtsstrom von 10mA.
Das reicht zum sicheren Betrieb auch völlig aus. Mehr Leistung führt nur 
zu vorzeitiger Alterung des Optokopplers.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren