Forum: Mikrocontroller und Digitale Elektronik Optokoppler schaltet nicht ganz durch?


von Ernst T. (ernstal)


Lesenswert?

Grüß euch,

ich bin gerade dabei, meine Skywatcher- EQ6 über den Autoguider- Eingang 
(ST-4 Standard) mit meinem Raspberry Pi über einen Optokoppler 
(http://www.produktinfo.conrad.com/datenblaetter/175000-199999/187020-da-01-en-PC_847_4_X_PC_817.pdf) 
zu verbinden.

Jedoch gibt es da ein Problem.

Habe den passenden Vorwiderstand (3,3V Raspberry - 1,2V Diodenspannung) 
/ 20mA Diodenstrom = 105 Ohm berechnet.

Habe daher die Diode in Serie an den Optokoppler und einen GPIO den 
Raspberry angeschlossen. Wie in folgendem Schaltbild 
(https://raw.githubusercontent.com/kevinferrare/arduino-st4/master/Hardware/diagram.png)

Wenn ich nun den Port auf 'high' setze, liegen am Optokoppler die 
berechneten 1,2V am Eingang an.
Wenn ich nun aber den Widerstand am Ausgang des Optokopplers messe, 
springt lt. Multimeter der Wert ständig zwischen Overload und etwa 28 
Ohm.

Woran kann das liegen? Bin gerade etwas ratlos!

Bin für jeden Ratschlag oder Aufklärung über Optokoppler dankbar!

Viele Grüße
Ernst

von Herbert (Gast)


Lesenswert?

Ernst T. schrieb:
> Wenn ich nun aber den Widerstand am Ausgang des Optokopplers messe,
> springt lt. Multimeter der Wert ständig zwischen Overload und etwa 28
> Ohm.

Du kannst den Widerstand nicht im Betrieb messen !

Eine Widerstandsmessung funktioniert indem das Multimeter das Testobjekt 
mit einer Spannung versorgt und den fließenden Strom durch das 
Testobjekt misst. Aus dem ohmschen Gesetz errechnet sich dann der 
Widerstand.

von Falk B. (falk)


Lesenswert?

@ Ernst T. (ernstal)

>ich bin gerade dabei, meine Skywatcher- EQ6 über den Autoguider- Eingang
>(ST-4 Standard)

Was ist das?

> mit meinem Raspberry Pi über einen Optokoppler
>(http://www.produktinfo.conrad.com/datenblaetter/17...)
>zu verbinden.

Warum? Die allgemeine Panik? Wozu meinst du, einen Optokoppler zu 
brauchen?

>Habe den passenden Vorwiderstand (3,3V Raspberry - 1,2V Diodenspannung)
>/ 20mA Diodenstrom = 105 Ohm berechnet.

OK.

>Wenn ich nun den Port auf 'high' setze, liegen am Optokoppler die
>berechneten 1,2V am Eingang an.

Gut.

>Wenn ich nun aber den Widerstand am Ausgang des Optokopplers messe,
>springt lt. Multimeter der Wert ständig zwischen Overload und etwa 28
>Ohm.

Das kann man so nicht messen, denn der Ausgangstransistor hat keine 
echte ohmsche Kennlinie.

>Woran kann das liegen? Bin gerade etwas ratlos!

Das hin und her ist entweder ein Wackelkontakt deiner Messung oder eine 
Macke deines Multimeters. Schalt mal Autorange ab.

von Ulrich F. (Gast)


Lesenswert?

Ernst T. schrieb:
> 20mA
An einem GPIO des Pi?

Das wird nichts!
Standard Einstellung ist 8mA (?)
Maximum 12mA (?)

Du bringst deinen Pi an den Rand der Selbstzerstörung. Bzw. schon 
deutlich darüber hinaus.

von Ernst T. (ernstal)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die raschen Antworten!

Skywatcher EQ6 ist eine parallaktische Teleskopmontierung, die ich über 
den Raspberry Pi steuern möchte.

Optokoppler deshalb, weil ich die Stromkreise (Montierung & Raspberry) 
voneinander trennen möchte und ich bei der Teleskopmontierung einfach 
nur Kontakte mit Hilfe des Optokopplers kurzschließen möchte.

Wie im Bild (autoguide(3)(1).jpg) zu sehen, muss ich z.B. Pin3 auf GND 
legen.

In einem Blog hat das jemand mit einer Schaltung (siehe Anhang) gelöst, 
die ich nicht so recht verstehe (Schemedic.png)

Also kommt vermutlich das Springen des Werts am Multimeter vom 
Raspberry, weil dieser nicht ausreichend Strom bereitstellen kann?

D.h. ich müsste mit einer Transistorschaltung den Optokoppler versorgen?

Viele Grüße

von Harald W. (wilhelms)


Lesenswert?

Ernst T. schrieb:

> Optokoppler deshalb, weil ich die Stromkreise (Montierung & Raspberry)
> voneinander trennen möchte

Verwendest Du auch zwei galvanisch
getrennte Stromversorgungen (Batterien)?
Falls nicht, macht ein OK keinen Sinn.

> nur Kontakte mit Hilfe des Optokopplers kurzschließen möchte.

OKs sind keine Relaiskontakte. Es wird immer
einen gewissen Spannungsabfall zwischen den
beiden Kontakten geben. Ausserdem muss die
Stromrichtung beachtet werden.

von Ernst T. (ernstal)


Lesenswert?

Sind nur über 2 unterschiedliche Netzgeräte getrennt.

Stromrichtung auf der Ausgangsseite? Also Emitter auf GND. Das habe ich 
beachtet.

von Carl D. (jcw2)


Lesenswert?

Wo ist denn in der OptoKoppler-Variante die Versorgungsspannung, die am 
Stecker ja wohl nicht mitgeliefert wird, und wo sind die Pullups?

Der OK liefert für den Eingangsstrom, so der RasPi den auch liefern 
kann, garantiert die Hälfte, aber vielleicht auch das 8-fache, an Strom 
durch den Phototransistor. Kann der RasPi 10mA liefern, "verschluck" der 
PhotoTrans mindestens 5mA. Mit dem Pullup von 10k aus dem eine 
Schaltplan kann man damit 5..15V sicher auf "0" ziehen.
Unbekannte ist de Spannung der Batterie.
Kevin's verlinkten Schaltung muß nicht funktionieren, kann aber wenn die 
Einänge z.B. an TTL-Bausteine gehen, denn die ziehen offene Eingänge auf 
"High".

von Harald W. (wilhelms)


Lesenswert?

Ernst T. schrieb:

> Sind nur über 2 unterschiedliche Netzgeräte getrennt.

Dann ist es eine mögliche Lösung

> Stromrichtung auf der Ausgangsseite? Also Emitter auf GND. Das habe ich
> beachtet.

Da m.W. die in OKs verbauten Transistoren praktisch immer NPN sind,
sollte der Strom vom Kollektor zum Emitter fliessen. Falls die zu
überbrückenden Kontakte zu einer Tastatur(-matrix) gehören, sollte
man die Stromrichtung durch Messung überprüfen.

von Teo D. (teoderix)


Lesenswert?

Passt doch alles! Bis auf die Ohm Messung, die natürlich Quatsch 
ist.

Hast Du die Schaltung überhaupt mal Real getestet?

von Ernst T. (ernstal)


Lesenswert?

In Kevins Schaltung wird der Oktokoppler über einen Arduino mit Strom 
versorgt, ohne externem Pullupwiderstand?

Dachte, wenn ich den Vorwiderstand für den OK für 3,3V berechne, es auch 
mit dem Raspberry möglich ist.

von Falk B. (falk)


Lesenswert?

@ Ernst T. (ernstal)

>Optokoppler deshalb, weil ich die Stromkreise (Montierung & Raspberry)
>voneinander trennen möchte

Das kann man auch ohne Optokoppler. Angst ist ein schlechter Berater.

>und ich bei der Teleskopmontierung einfach
>nur Kontakte mit Hilfe des Optokopplers kurzschließen möchte.

Wie im Bild (autoguide(3)(1).jpg) zu sehen, muss ich z.B. Pin3 auf GND
legen.

>In einem Blog hat das jemand mit einer Schaltung (siehe Anhang) gelöst,
>die ich nicht so recht verstehe (Schemedic.png)

Wie man Probleme möglichst umständlich löst ;-)

Dort ist KEINERLEI galvanische Trennung drin, braucht auch keiner.

>Also kommt vermutlich das Springen des Werts am Multimeter vom
>Raspberry, weil dieser nicht ausreichend Strom bereitstellen kann?

Glaub ich nicht. Kann es sein, dass auf deiner Himbeere ein Script 
läuft, welches die Ausgämnge periodisch umschaltet?

>D.h. ich müsste mit einer Transistorschaltung den Optokoppler versorgen?

NEIN! Es wird immer abstruser! An Stelle der Optokoppler soll diese 
Schaltung verwendet werden! Vor allem braucht man dann nicht 
20mA/Optokoppler sondern nicht mal 1mA/Transitor. Allerdings muss man 
aufpassen! Die LEDs in Reihe zu den Transistoren fressen ja nach Farbe 
1,8-3V, das geht bei 3,3V vom Raspberry Pi schief! Also die LEDs 
weglassen und die Widerstände direkt anschließen. Siehe Anhang!

Wenn dort im Normalfall sowieso nur passive Tasten dranklemmen, braucht 
man auch die 10K Widerstände nicht, denn die sind dann in deinem Gerät 
eingebaut.

von JoJoBa (Gast)


Angehängte Dateien:

Lesenswert?

Entwas Einmischung meinerseits :-)

Man tut gut daran bisschen Basiswissen anzueignen, bevor man
sich auf glattes Eis begibt...

siehe hier:
https://www.mikrocontroller.net/articles/Basiswiderstand
und
http://dl6gl.de/grundlagen/schalten-mit-transistoren


....sprich;
R1/R2 bilden einen Spannungsteiler. Dieser bewirkt, dass der Transistor 
erst bei einer nennenswerten Eingangsspannung Ue durchschaltet. Da FETs 
spannungsgesteuert sind, ist die Auslegung am Gate hochohmiger. Beim 
MOSFET-Schalter (Abb. 1 rechts) verhindert R1 zudem hochfrequente 
Schwingungen.
usw.....

Gruß!

von Carl D. (jcw2)


Lesenswert?

@Falk:
Und wie arbeiten diese (neuen) Transistoren mit der schwebenden Masse?

So blöd war die Idee mit den OKs gar nicht. Nur muß man deren Daten 
verstehen. Ich würde mal den Strom messen der durch so einen Schalter 
fließt. Den muß der OK dann auch können und wegen minial 50% 
"Stromübertragungsrate" CTR muß der RasPi das doppelte liefern können. 
Oder man sucht sich einen OK (gleichen Typs) aus, der an der Obergrenze 
der CTR von 800% liegt.

: Bearbeitet durch User
von JoJoBa (Gast)


Lesenswert?

noch eine sehr hilfreiche Lektüre ist hier;

http://www.netzmafia.de/skripten/hardware/Control/ein_ausgabe.pdf

von Ernst T. (ernstal)


Lesenswert?

Wow, super danke für das für das Layout. Habe gerade in meiner 
Sammelsuriumkiste gewühlt und ein paar BC547B gefunden.

habe ein kurzes Python Script geschrieben, welche mir alles Ports die 
ich benötige, zu Testzwecken permanent auf high setzt

while True:
    GPIO.output(6, True)

Daher dürfte das Schwanken des Multimeters auch nicht kommen?

von Ernst T. (ernstal)


Lesenswert?

Schaltung hab ich nun mit Hilfe einer LED und Batterie getestet.

Direkt angeschlossen leuchtet die Diode hell, über den OP 
"durchgeschaltet" nur sehr schwach

von Falk B. (falk)


Lesenswert?

@ Carl Drexler (jcw2)

>Und wie arbeiten diese (neuen) Transistoren mit der schwebenden Masse?

Mist, Masseverbindung zu Raspberry Pi vergessen!

>So blöd war die Idee mit den OKs gar nicht.

Doch! Es ist die rein Paranoia! Selbst einige Relaiskarten haben 
Optokopplereingänge, Arduino läßt grüßen!

von Falk B. (falk)


Angehängte Dateien:

Lesenswert?

Hier die korrigierte Version.

@ Mods. Bitte das Bild im Beitrag hier löschen. Danke.

Beitrag "Re: Optokoppler schaltet nicht ganz durch?"

von Ernst T. (ernstal)


Lesenswert?

Vielen Dank für die Bemühungen. Werde wohl die Transistorschaltung ohne 
OK verwenden!

von Falk B. (falk)


Lesenswert?

Um zu prüfen, ob man die 10K Widerständen braucht, kann man einfach mal 
die Spannung an den Eingängern der Steuerung messen. Liegen dort bei 
nicht gedrückter Taste 5-15V an, braucht man keine externen 10K 
widerstände.

von JoJoBa (Gast)


Lesenswert?

@Ernst,

Transistor als Ausgangspuffer muss einen Vorwiderstand
am Basis haben UND einen zum GND (3,3-5,6k) um definitive
korrekt zu sperren.
Einen Status-LED lieber nicht in serie mit vorwiderstand, sonndern
lieber separat über LED-R an +ucc.

Der Transistor Kollektor ist offen, also einen PullUp-R gegen +Ucc!

Ich weiss von hier aus aber nicht was an den RJ11 anhängt?....

Wenn du Optokoppler verwendest, muss dem sein open-collektor
auch über Pull-Up-R an +Ucc.

wie sieht denn deine Schaltung im Moment aus?
ist Skizze, Schaltplan zu posten Möglich?

von Falk B. (falk)


Lesenswert?

@JoJoBa (Gast)

>Transistor als Ausgangspuffer muss einen Vorwiderstand
>am Basis haben UND einen zum GND (3,3-5,6k) um definitive
>korrekt zu sperren.

NEIN! Ersten betreibt der OP die Schaltung ganz sicher nicht bei 150°C, 
wo Leckstöme schon relevant werden und außerdem werden die Basisignale 
von Digital-IOs geliefert, die AKTIV nach LOW schalten. Somit reicht ein 
Basiswiderstand!

>Einen Status-LED lieber nicht in serie mit vorwiderstand, sonndern
>lieber separat über LED-R an +ucc.

Das hatten wir schon!

>Der Transistor Kollektor ist offen, also einen PullUp-R gegen +Ucc!

NEIN! Lies mal die Beiträge!

>wie sieht denn deine Schaltung im Moment aus?
>ist Skizze, Schaltplan zu posten Möglich?

Blind?

von Ernst T. (ernstal)


Lesenswert?

Die Schaltung mit dem OK entspricht genau der im ersten Beitrag 
(https://raw.githubusercontent.com/kevinferrare/arduino-st4/master/Hardware/diagram.png)

Nur mit dem Unterschied, dass ich den RasPi verwende

von Falk B. (falk)


Lesenswert?

@Ernst T. (ernstal)

>Die Schaltung mit dem OK entspricht genau der im ersten Beitrag
>(https://raw.githubusercontent.com/kevinferrare/ard...)

>Nur mit dem Unterschied, dass ich den RasPi verwende

Und hast du mal die Spannung über den Ausgangstransistoren gemessen, 
wenn sie durchschalten bzw. sperren? Auch wenn die Schaltung ungünsig 
und Overkill ist, sollte sie funktionieren.

von Ulrich F. (Gast)


Lesenswert?

Ernst T. schrieb:
> Nur mit dem Unterschied, dass ich den RasPi verwende

Nur mit dem Unterschied, dass du deinen PI grillst.

von Ernst T. (ernstal)


Lesenswert?

Hatte an den Ausgangstransistoren des OK's nichts dran. Zu Testzwecken 
habe ich eine Diode dran, die statt mit voller Helligkeit nur sehr 
schwach geleuchtet hat.

Versorge die LED mit 3V gleich ohne Vorwiderstand.

Wenn ich das ganze nun über den OK schalte, liegen an der LED noch 1,6V 
an (bei 'high', anstatt der 3V

Bei 'low' liegt keine Spannung an.

von JoJoBa (Gast)


Lesenswert?

Wollte sichergehen ob weiterhin die Oben gepostete Schaltung
benützt wird, schließlich sind seit dem einige Stunden vergangen...

hat erstmal mit Blindheit nix zu tun !

Da ich bestrebt bin zu helfen, und zwar so, dass auch
ein funktionierendes Ergebniss herauskommt (hoffen wir)

poste ich Ratschläge die nach meiner Erfahrungen in der PRAXIS
sicher durchkommen.

Sehr wohl ist der R paralell zum BE nötig!

Damit wird sichergestellt dass der Tr sperrt auch dann wenn
Raspi LOW bei 0,8Volt(nach maxLOW 3v3 Logik) liegt, was für
Tr kritisches Neveau wäre.

Wenn TO an diesem Transistor messen würde, würde er schnell
herausbekommen ob seine Raspi-TR Basis richtig verbunden sind
oder eine oder andere Leitung in der Luft liegt usw.

Empfählen würde ich noch diese Seite hier:

http://www.elektronik-kompendium.de/public/schaerer/powsw1.htm

schliesslich ist der TO Anfänger und ich bin kein Besserwisser
hier, sondern erhoffe mir auch für alle Teilnehmer
einige brauchbare Infos zum weiterlernen.

Viel Spass weiterhin,
Gruß!

von Ernst T. (ernstal)


Angehängte Dateien:

Lesenswert?

@ JoJoBA: Meinst du so?

von JoJoBa (Gast)


Lesenswert?

Den Basis R1 wähle etwa 1 bis 1k5
 Den R2 (an TR-BE) etwa 5,6K bis 10K

 Dann den Collektor nur zum Testzweck über eine LED und R=56 bis 100Ohm
 in Seria an 3v3 +Ucc vom Raspi.

 Tr-Emitter auf GND und verbunden mit Raspi GND

 Damit kannst du etwa dein minibuffer auf Funktion testen.
 Ein H am Raspi-Out müsste die LED im Kollektorkreis aufleuchten.
 LED Kathode an Collektor und Anode an Vcc ;-)

 Verwendest du den OPTO TLP521?
 Wenn ja, dann die LED über 100R an Raspi OUT ist korrekt.
 OPTO TR Emitter auf GND !
 Kollektor über 56R und LED an Vcc 3v3 anschliessen.
 Dieses Gebilde muss genauso funzen.

 Wie gesagt, erstmal ohne SV1-RJ Connector, damit du sicher bist
 dass diese Bufferstufe in Ordnung ist!

 Gruß

von Ernst T. (ernstal)


Lesenswert?

Optokoppler: 
http://www.produktinfo.conrad.com/datenblaetter/175000-199999/187020-da-01-en-PC_847_4_X_PC_817.pdf

Nachdem ich bei der Opto- Schaltung den Port auf 'high' gesetzt habe und 
damit eine externe Stromversorgung einer LED geschalten habe, leuchtete 
diese nurmehr sehr schwach. Versorgungsspannung 3V, kein Vorwiderstand.
Daran wird die Art der Versorgung der LED auch nichts ändern, wenn ich 
stattdessen den RasPi mit dem 3,3V Pin heranziehe.

Werde daher Transistoren als Schalter heranziehen. Vielen Dank nochmal 
für das rasche Zeichnen.

von JoJoBa (Gast)


Lesenswert?

OK!
  Ich könnte mir vorstellen dass am OPTO Kollektor eine blaue
  oder weisse LED angeschlossen wurden ????

  Sehr merkwürdiges Verhalten sonnst???

  Ich wünsche dir viel Erfolg und bitte studiere etwas die
  genannteLinks!
  Mir haben sie sehr weitergeholfen :-))

  Gruß!

von Falk B. (falk)


Lesenswert?

@ Ernst T. (ernstal)

>Hatte an den Ausgangstransistoren des OK's nichts dran.

Dann kann man auch nichts messen, auch keinen sinnvollen 
Durchgangswiderstand!

>Versorge die LED mit 3V gleich ohne Vorwiderstand.

NEIN! Sowas tut man nicht!

>Wenn ich das ganze nun über den OK schalte, liegen an der LED noch 1,6V
>an (bei 'high', anstatt der 3V

>Bei 'low' liegt keine Spannung an.

Wen interessiert das? Das ist nur im Zusammenspiel mit deiner Steuerung 
sinnvoll!

von Falk B. (falk)


Lesenswert?

@ JoJoBa (Gast)

>Sehr wohl ist der R paralell zum BE nötig!

NEIN!

>Damit wird sichergestellt dass der Tr sperrt auch dann wenn
>Raspi LOW bei 0,8Volt(nach maxLOW 3v3 Logik) liegt, was für
>Tr kritisches Neveau wäre.

Quark. Bei LOW und 3k3 Basiswiderstand geht die IOs auf wenige mV, sagen 
wir 50mV. 0,8V werden GARANTIERT, eben weil das die offiziellen LVTTL 
Schaltschwellen sind. Alles andere wird nicht näher spezifiziert.

von JoJoBa (Gast)


Lesenswert?

Auch bei der Theorie, wie bei der Hypothese ist akademische
 Ausbildung (in  wissenschaftlichem Sinne) unentbehrlich;
 denn auch hier ergänzt die dichtende Phantasie die Lücke, welche der
 Verstand in der Erkenntnis der praktischen Erfahrung
 der Dinge anzweifelt.

 Theorien bewähren sich meist in der Theorie, selten in der Praxis. Die
 Praxis hingegen bewährt sich selten in der Theorie und nicht mal
 immer in der Praxis.
 Die Hoffnung kann aber höcher steigen.

 ;-)

 Kein Zweifel; Die physikalische Angaben und die Mathematik stimmt !
 Respekt!

 Nur selten ist die Wirklickeit der Abbild diesen Darstellungen!

 Liebe Grüße!

von Ernst T. (ernstal)


Lesenswert?

Zumindest eine LED lässt sich jetzt wunderbar schalten. Ob es an der EQ6 
Montierung funktioniert, wird sich zeigen.

Um genau zu sein, soll damit ein günstiger Autoguider für die 
Astrofotografie realisiert werden, in dem softwaretechnisch (opencv in 
python) ein Soll/Ist vergleich von Sternposition ausgewertet wird und je 
nach Abweichung die 4 Ports des RasPi schaltet, um die Position der 
Montierung auszugleichen bzw. zu ändern.

von Jens G. (jensig)


Lesenswert?

Falk Brunner  schrieb:

>>Versorge die LED mit 3V gleich ohne Vorwiderstand.

>NEIN! Sowas tut man nicht!

Naja, bei der Uf der LED (@TO: welche Farbe hat die denn), und dem doch 
recht hohen Uce_sat des OK und 3,3V Versorgung ist die Schaltung schon 
eher als selbstbegrenzend zu betrachten - Rv daher eher überflüssig.

>Quark. Bei LOW und 3k3 Basiswiderstand geht die IOs auf wenige mV, sagen
>wir 50mV. 0,8V werden GARANTIERT, eben weil das die offiziellen LVTTL
>Schaltschwellen sind. Alles andere wird nicht näher spezifiziert.

Zumal die 0,8V vermutlich bei einem bestimmten Sinkstrom gelten dürfte, 
den wir hier nicht haben. BEi den üblichen CMOS-Ausgängen dürfte die 
Ausgangsspannung daher gegen 0V tendieren.

von Ernst T. (ernstal)


Lesenswert?

Soeben am Teleskop bzw. der Montierung ausprobiert.

An der Montierung bzw. dem Autoguidereingang liegen zwischen den 
Steuerports und GND etwa 4,8V an.

Steuerports:

Rektaszension +
Deklination +
Deklination -
Rektaszension -

Rektaszensionsachse ist im Nachführbetrieb immer an (1U/24h), daher habe 
ich für den Versuch den 'Deklination +' Port auf High gesetzt.
Daraufhin verändert sich der motorische Klang der Nachführung und die 
manuellen Dec +/- Tasten der Synscan Handsteuerbox scheinen nicht zu 
reagieren, da vermutlich der Autoguider den Motor steuert.

Die tatsächliche Funktion kann erst bei klarem Himmel getestet werden.

Vielen Dank für die Mithilfe

Grüße
Ernst

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.