Forum: Mikrocontroller und Digitale Elektronik 12V per Optokopller mit 3,3V und dann mit 12V 230V-Relai schalten


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 Thomas J. (user3289)


Angehängte Dateien:

Lesenswert?

Zunächst muss ich erwähnen, dass ich mich nicht täglich mit E-Technik 
beschäftigen (kann). Daher würde es mich sehr freuen, wenn man etwas 
Nachsicht aufbringen würde, sofern etwas nicht korrekt ist oder ich 
etwas übersehen bzw. nicht korrekt zusammengebracht habe.

Gerne würde mit einem Raspberry PI einen zunächst einen Optokoppler 
schalten lassen, der wiederrum in einem 12V Schaltkreis schaltet, um 
damit ein 12V-Relai zu schalten.

Für mein Vorhaben scheint mir der 4N25 geeignet zu sein:
http://cdn-reichelt.de/documents/datenblatt/A500/4N25.pdf

Meine Rechnung habe ich bisher wie folgt aufgestellt:
Die Diode in dem Optokoppler verträgt wohl max. 60mA, der PI kann laut 
http://www.forum-raspberrypi.de/Thread-faq-wieviel-strom-liefert-die-gpio-schnittstelle 
jedoch nur 16mA auf einem Pin abgeben.
In ein paar Beiträgen habe ich gelesen, dass man wohl die 
Vorwärtsspannung des Optokopplers von der "PI-Spannung" abziehen muss, 
um dann den passenden Widerstandswert zu ermitteln. Die Vorwärtsspannung 
bei dem Optokoppler beträgt "typisch" 1,1V.
Entsprechend würde meine Rechnung wie folgt aufsstellen:

R = U / I
U = 3,3V - 1,1V = 2,2V
I = 0,016A
R = 2,2V / 0,16A = 137,5 (würde hier einen 150 Ohm Widerstand wählen)

Zu dem Optokoppler hätte auch eine Frage: kann ich hier die Basis in der 
Luft hängen lassen oder muss ich die an etwas anschließen? (Wenn ja: an 
was? GND? +12V? mit einem [welchem] Widerstand an 12V oder GND?)

Für den 12V Stromkreis habe ich mir folgendes Relai rausgesucht (FIN 
43.41.7 12V)
http://cdn-reichelt.de/documents/datenblatt/C300/FIN43%23FIN.pdf
Glücklicherweise beträgt die min. Schaltlast 0,3 Watt bei 5V/5mA. Wenn 
ich bei 12V auf die 0,3Watt kommen möchte, müsste ich 25mA fließen 
lassen. Die "Continuous Collector Current, IC" des Optokopplers beträgt 
100mA, also sollten hier die 25mA kein Problem darstellen (auch die 
Collector-Emitter Voltage beträgt 30V, so dass die 12V gut drin liegen). 
Wenn ich nun bei 12V die 25mA fließen lassen möchte (max. jedoch 100mA) 
würde ich den Widerstand wie folgt berechnen:

R = U / I
U = 12V
I = 0,025A
R = 12V / 0,25A = 480 Ohm

Also würde ich hier einen 470 Ohm Widerstand wählen, damit das 
Mindestmaß von 0,3Watt auch in jedem Fall erreicht sind. Hier wäre meine 
Frage: Muss ich dort noch den Widerstand der Spule in dem Relai 
reinrechnen? Laut Datenblatt (Seite 3, „Spluendaten“) beträgt dieser 
Wert 580 Ohm bei einer Nennspannung von 12V. Das wäre äußerst ungünstig, 
da ich so nicht auf die 0,3 Watt kommen würde. Aber ich kann mir das 
nicht wirklich vorstellen, denn man würde ja nie auf die 0,3Watt bei 12V 
und 580 Ohm kommen.

Im Anhang noch eine Skizze von Schaltung, so wie ich mir das vorstelle.

Würde mich sehr freuen, wenn mir mitteilen könnte, ob meine Überlegungen 
in die richtige Richtung gehen, oder nicht...

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Thomas J. schrieb:
> Gerne würde mit einem Raspberry PI einen zunächst einen Optokoppler
> schalten lassen, der wiederrum in einem 12V Schaltkreis schaltet, um
> damit ein 12V-Relai zu schalten.
Warum so umständlich?
Die korrekte galvanische Trennung mit ordentlichen Luft- und 
Kriechstrecken sollte mit dem 12V-Relais gut möglich sein.
Es ist dafür nur ein Relais mit den richtigen technischen Parametern zu 
wählen (sichere Trennung zwischen Spule und Kontaktsatz).

> Für mein Vorhaben scheint mir der 4N25 geeignet zu sein:
> http://cdn-reichelt.de/documents/datenblatt/A500/4N25.pdf

Wenn die sichere Trennung zwischen berührgefährlicher Spannung und Raspi 
aber am Optokoppler erfolgen soll, dann ist dieser speziell auszuwählen!
-> z.B. der 4N25 in der Option 6 mit VDE-Zertifikat (weißes 
Verkappungsmat.).

> Für den 12V Stromkreis habe ich mir folgendes Relai rausgesucht (FIN
> 43.41.7 12V)
Das dürfte ok sein.

> Würde mich sehr freuen, wenn mir mitteilen könnte, ob meine Überlegungen
> in die richtige Richtung gehen, oder nicht...
Ich würde den Optokoppler weglassen und das Relais direkt über einen 
Treibertranstor vom Raspi ansteuern. Ein Relais mit 5V-Spule vereinfacht 
das ganze noch.
Über den Basisvorwiderstand ist das ausreichend entkoppelt. Im 
Zweifelsfall gebe noch eine Überspannungsschutzschaltung am 
Raspi-stuerpin dazu.
Gruß Öletronika

von Mein grosses V. (vorbild)


Lesenswert?

Immer diese Optokoppler.

Schalte dein Relais, wie das jeder andere auch macht, mit einem 
Transistor in Open-Collector-Schaltung.

von Achim S. (Gast)


Lesenswert?

Thomas J. schrieb:
> Hier wäre meine
> Frage: Muss ich dort noch den Widerstand der Spule in dem Relai
> reinrechnen?

Natürlich musst du den Widerstand der Spule mit einrechnen. Du legst 12V 
an die Spule, und es fließen 12V/580Ohm=21mA. Vergiss den Vorwiderstand 
R2, damit schaltet dein Relais nicht.

Was den Optokoppler angeht: wie kommst du auf die Idee, dass der 4N25 
mit 16mA am Eingang am Ausgang 25mA fließen lässt? Das current transfer 
ratio liegt zwischen 20% (min) und 50% (typ). Bei 16mA am Eingang 
fließen am Ausgang also typsich 8mA, wenn du Pech hast nur 3,2mA. 
Deshalb: wirf den Optokoppler raus und schalte das Relais (wie schon 
geschrieben) mit einem Transistor.

von H.Joachim S. (crazyhorse)


Lesenswert?

Oder nimm direkt ein SSR.
http://www.reichelt.de/S202-S01/3/index.html?&ACTION=3&LA=446&ARTICLE=15438&artnr=S202+S01&SEARCH=solid+state+relais

Manchmal hat nach wie vor das gute alte mech. Relais seine Vorteile. Oft 
sind aber inzwischen die elektronischen Varianten die bessere 
Alternative. Kommt auch ein bisschen drauf an, was und wie oft die 
schalten willst.

von Stefan P. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte mich hier einfach mal anhängen, da meine Frage in die gleiche 
Richtung geht und deshalb ein 2. Thread vielleicht überflüssig wäre.


Ich möchte folgendes realisieren:

Raspberry Pi 2 per GPIO Pin (3,3V) schaltet einen Schließer eines 
Garagentores (24V). Der Raspi simuliert dann quasi den Taster an der 
Wand.

Verfügbar habe ich ein 5V Active Low Relayboard das 250V AC (10A) oder 
30V DC (10A) schalten kann. 
http://www.aliexpress.com/item/5V-Relay-Module-Dual-channel/1916448080.html

Das Problem mit dem Relay ist, dass es Active Low ist und leider auslöst 
wenn der Raspberry nach einem Neustart den Pin auf Output setzt... fatal 
bei einem Garagentor ;)

Als Alternative habe ich hier noch einen MOC3052 liegen.
http://cdn-reichelt.de/documents/datenblatt/A200/MOC3051-MOC3052_FAI.pdf

Nun meine zwei Fragen, mit der Bitte um Nachsicht, da ich mich nicht so 
gut auskenne:

1. Kann ich den MOC3052 einfach so mit einem kleinen Vorwiderstand 
verwenden um die 24V zu schalten?

2. Falls nicht, wie könnte ich das Active Low Problem des 
Raspberrys/Relays
angehen?


Vielen Dank,
Stefan

von Datenblattfinder (Gast)


Lesenswert?

Stefan P. schrieb:
> Das Problem mit dem Relay ist, dass es Active Low ist und leider auslöst
> wenn der Raspberry nach einem Neustart den Pin auf Output setzt

Wie kommst Du auf diese Annahme?

von H.Joachim S. (crazyhorse)


Lesenswert?

Ich glaubs auch nicht, es sei dennn, es läuft eine Software, die das 
tut.

Der MOC ist in jedem Fall ungeeignet, da du den bei DC-Betrieb nicht 
wieder ausschalten kannst.

Ein "normaler" Optokoppler würde aber funktionieren, Polarität im 
Ausgangskreis beachten.


Alternativ: hast du die Schaltung von deinem Relaisboard?


In erster Linie solltest du aber an den Ursachen werkeln und nicht 
versuchen, die Auswirkungen zu bekämpfen. Ist eigentlich immer der 
bessere Weg.

von Stefan P. (Gast)


Lesenswert?

Datenblattfinder schrieb:
> Wie kommst Du auf diese Annahme?

Habe es ausprobiert.
Ich steuere die GPIO Pins des RPi über OpenHAB mithilfe des GPIO 
Bindings.
Sobald das Binding die Pins auf Output setzt, zieht das Relay an.
hatte auch schon einen Pullup 10K Widerstand auf den Output gelegt, das 
Relay schaltet trotzdem. :(


Hatte gehofft das der MOC auch funktioniert, das wäre kompakter und 
simpler.

von Stefan P. (Gast)


Lesenswert?

H.Joachim S. schrieb:
> Der MOC ist in jedem Fall ungeeignet, da du den bei DC-Betrieb nicht
> wieder ausschalten kannst.

Das habe ich gerade mit einer LED getestet... die leutete weiter, stimmt 
;)


H.Joachim S. schrieb:
> Ein "normaler" Optokoppler würde aber funktionieren, Polarität im
> Ausgangskreis beachten.

Hast du eine Empfehlung? Gibts da so einen "Klassiker"?


H.Joachim S. schrieb:
> Alternativ: hast du die Schaltung von deinem Relaisboard?

Leider nicht.

H.Joachim S. schrieb:
> In erster Linie solltest du aber an den Ursachen werkeln und nicht
> versuchen, die Auswirkungen zu bekämpfen. Ist eigentlich immer der
> bessere Weg.

Das stimmt wohl, bin auch parallel im OpenHAB Board unterwegs, da hat 
auch jemand das Problem, aber eine Lösung gabs noch nicht.


Danke für Eure Hilfe!

von H.Joachim S. (crazyhorse)


Lesenswert?

Da sollte jeder Feld/Wald- und Wiesenkoppler funktionieren
https://www.reichelt.de/Bauelemente/KB-817/3/index.html?&ACTION=3&LA=2&ARTICLE=76163&GROUPID=3046&artnr=KB+817
z.B.

Ich denke ja, dass die sinnloserweise auch auf deinem Relaismodul 
verbaut sind, sieht zumindest so aus.

von Stefan P. (Gast)


Lesenswert?

H.Joachim S. schrieb:
> Da sollte jeder Feld/Wald- und Wiesenkoppler funktionieren
> 
https://www.reichelt.de/Bauelemente/KB-817/3/index.html?&ACTION=3&LA=2&ARTICLE=76163&GROUPID=3046&artnr=KB+817
> z.B.
>
> Ich denke ja, dass die sinnloserweise auch auf deinem Relaismodul
> verbaut sind, sieht zumindest so aus.



Danke Dir, ich glaube das ist so auch die einfachste Variante!!

In den Daten des Optokopplers steht:
Collector-Emitter-Spannung: 35 V
Collector-Strom: 50 mA

Bedeutet dieses 50mA, dass da kein größerer Strom drüber fließen darf?
Beim schließen des 24V Tasters fließt in dem Sinne ja keine riesige 
Strommenge, sollte also hoffentich passen ;)


Die Optokoppler auf dem Relaisboard... Naja, man kann den Jumper 
entfernen und dem Relaisboard eine eigene Stromquelle geben. Ich glaube 
so kann dann eine komplette galvanische Trennnung sichergestellt 
werden... oder so ;)

von Harald W. (wilhelms)


Lesenswert?

Stefan P. schrieb:

> Hatte gehofft das der MOC auch funktioniert, das wäre kompakter und
> simpler.

Kompakter und simpler als ein Transistor?

von Thomas J. (user3289)


Angehängte Dateien:

Lesenswert?

Dann würde ich also eine Transistorschaltung nach
https://www.mikrocontroller.net/articles/Relais_mit_Logik_ansteuern#Schaltstufe_f.C3.BCr_kleine_Lasten 
aufbauen.
Mit Q2  BC337 und R2 = 270 Ohm und K2 durch das Relai ersetzen (siehe 
angehängte Schaltung).

von Stefan P. (Gast)


Lesenswert?

Harald W. schrieb:
> Kompakter und simpler als ein Transistor?

neee, kompakter als das relay! ;)

von W.A. (Gast)


Lesenswert?

Mein grosses V. schrieb:
> Schalte dein Relais, wie das jeder andere auch macht, mit einem
> Transistor in Open-Collector-Schaltung.

Was soll man bei der Ansteuerung eines Relais mit einem offenen 
Kollektor. Die Emitterschaltung wäre wohl eher angebracht und an den 
Kollektor kommt dann das Relais.

von Michael B. (laberkopp)


Lesenswert?

Stefan P. schrieb:
> Verfügbar habe ich ein 5V Active Low Relayboard das 250V AC (10A) oder
> 30V DC (10A) schalten kann.

Diese Relais können zwar 230V schalten, aber nicht die 5V (rPi) 
ausreichend (SELV) galvanisch von den 230V isolieren, die Abstände auf 
der Platine sind zu klein.

Kauf nicht immer das Billigste...

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Stefan P. schrieb:
> Ich möchte folgendes realisieren:
> Raspberry Pi 2 per GPIO Pin (3,3V) schaltet einen Schließer eines
> Garagentores (24V). Der Raspi simuliert dann quasi den Taster an der
> Wand.
> Verfügbar habe ich ein 5V Active Low Relayboard das 250V AC (10A) oder
> 30V DC (10A) schalten kann.
> http://www.aliexpress.com/item/5V-Relay-Module-Dual-channel/1916448080.html
Ok ,aber als "Schalter an der Wand" wird ja nur eine sichere 
Kleinspannung geschaltet, oder?
https://de.wikipedia.org/wiki/Kleinspannung
Falls Netzspannung geschaltete werden soll, muß ein Relais mit 
ausreichend Luft- und Kriechstrecken und Spannungsfestigkeit eingesetzt 
werden.
Da oben angegebene Finder-Relais wäre da wohl ok. Bei der Beschaltung 
sind natürlich auch die VDE-Vorschritfen zu beachten.

> Das Problem mit dem Relay ist, dass es Active Low ist und leider auslöst
> wenn der Raspberry nach einem Neustart den Pin auf Output setzt... fatal
> bei einem Garagentor ;)
Naja, eine solche Elektronik baut man so, dass sie immer einen sicheren 
Zusatnd hat.

Im Resetzustand ist der Out normal passiv.
Im aktiven gesetzen Zustand also Low und bei Spannung AUS auch Low.

Also muß der Zustand "Schalter ON" mit Out = "High" geschaltet werden.

Dazu ist nur ein npn-Transitor als Relaistreiber dazwischen zu schalten.
(Freilaufdiode am Relais nicht vergessen).

Der Out am Raspi sollte außerdem mit einem Pulldown-R versehen sein, 
damit der Transistor auch im Reset zuverlässig gesperrt bleibt.
Gruß Öletronika

von Stefan P. (Gast)


Lesenswert?

Hallo öletronika,

danke für deine Antwort.
Ja es geht nur um die 24V DC des Garagentortasters.

Da der Raspberry ja an einem "normalen" Outputpin nicht viel Power hat, 
der 5V Pin aber mehr mA liefern kann, habe es nun mit einem kleinen 
Transistor und dem Optokoppler KB 817 gelöst. Dazu noch wie empfohlen 
einen Pulldown am Outputpin.

Der Transistor lässt sich direkt mit dem Outputpin HIGH ansteuern und 
gibt dann die 5V für den Optokoppler frei, der dann wiederum die 24V 
fließen lässt. Natürlich habe ich dann trotzdem noch den richtigen 
Vorwiderstand für den Optokoppler gewählt. So ist das ganze viel 
kompakter als das Relais.

Alles funktioniert bis jetzt zuverlässig und bei (simuliertem) 
Stromausfall bleibt das Tor zu! ;)


Danke an alle Tippgeber, super Forum hier!

von Wolfgang A. (Gast)


Lesenswert?

Stefan P. schrieb:
> bei (simuliertem) Stromausfall ...

Wie kann man Stromausfall simulieren?
Entweder der Strom ist da oder nicht ...

Was passiert wenn der µC durch einen EMP (Blitzschlag in der Nähe) außer 
Tritt gerät?

von Harald W. (wilhelms)


Lesenswert?

Stefan P. schrieb:

> Da der Raspberry ja an einem "normalen" Outputpin nicht viel Power hat,
> der 5V Pin aber mehr mA liefern kann, habe es nun mit einem kleinen
> Transistor und dem Optokoppler KB 817 gelöst. Dazu noch wie empfohlen
> einen Pulldown am Outputpin.
>
> Der Transistor lässt sich direkt mit dem Outputpin HIGH ansteuern und
> gibt dann die 5V für den Optokoppler frei, der dann wiederum die 24V
> fließen lässt. Natürlich habe ich dann trotzdem noch den richtigen
> Vorwiderstand für den Optokoppler gewählt. So ist das ganze viel
> kompakter als das Relais.

Interessant ist hier im Forum immer wieder, das möglichst komplizierte
Lösungen für einfache Probleme als besonders gut angesehen werden.
Normalerweise sorgt jedes unnötige zusätzliche Teil dafür, das die
Ausfallwahrscheinlichkeit für die Gesamtschaltung stark ansteigt.

von Johannes (Gast)


Lesenswert?

Hallo Stephan P.,

könntest Du Deine Schaltung mal veröffentlichen? Ich suche nämlich genau 
für den gleichen Einsatzzweck ebenfalls noch nach einer Lösung. Das wäre 
echt super!

Besten Dank und viele Grüße

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.