Forum: Mikrocontroller und Digitale Elektronik SPS Signal -> Arduino


von Bastian J. (basjoe)


Lesenswert?

Hallo liebe Leute,
für eine Darstellung eines Projektes habe ich für eine SPS gesteuerte 
Tunnelbeleuchtung einen Mikrocontroller programmiert der dafür Neopixel 
ansteuert.

Nun habe ich noch ein Problem undzwar bekomme ich das Signal der SPS 
nicht auf die 5V die der Arduino nano dazu benötigt.

Ich habe hier bei mc.net und im Elektronikkompendium von der Möglichkeit 
mit Optokopplern gelesen, jedoch tue ich mich noch ein wenig schwer 
damit.

In unserer Werkstatt habe ich noch 4N25 von Motorola gefunden und frage 
mich ob das mit diesen auch geht.

An dem SPS Ausgang habe ich so 22V gemessen.

Ist das überhaupt mit den 4N25 möglich? Und welche Schaltung macht sinn 
damit eine stabile Spannung an den Mikrokontroller geht.

Ich freue mich über hilfreiche Beiträge
Bei fragen einfach fragen ?

von Philipp H. (hansimglueck2)


Lesenswert?

Das Zauberwort ist "Spannungsteiler"

von Bastian J. (basjoe)


Lesenswert?

Philipp H. schrieb:
> Das Zauberwort ist "Spannungsteiler"

Meinst direkt an den Eingang? Ich dacht damit läuft man Gefahr die 
Eingänge am MC kaputt zu machen. Ist der Optokoppler denn nicht möglich?

Ein Spannungsteiler wäre dann meine letzte Option.

von Einer K. (Gast)


Lesenswert?

Bastian J. schrieb:
> Ist der Optokoppler denn nicht möglich?

Total gut geeignet!

von Stefan F. (Gast)


Lesenswert?


von Christian M. (Gast)


Lesenswert?

Wenn Du eh den gleichen GND hast, bringt ein Optokoppler überhaupt 
nichts - ausser, wie Du selbst schon festgestellt hast, dass es 
komplizierter wird.

Hast Du also den gleichen Ground, nimm den Spannungsteiler! Ganz Mutige 
nehmen nur einen Widerstand und lassen die Schutzdioden den Rest 
machen...

Gruss Chregu

von Bastian J. (basjoe)


Lesenswert?

Stefanus F. schrieb:
> 
https://www.google.com/search?q=optokoppler+sps&client=ubuntu&hs=bSC&channel=fs&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjwrMjLhOfiAhUIMuwKHcOMA1EQ_AUIESgC&biw=1326&bih=649

Soweit war ich auch schon leider ohne Erfolg, mit dem 4N25 habe ich eher 
Ergebnisse vom MC zur SPS gefunden und nicht andersherum.

von Bastian J. (basjoe)


Lesenswert?

Christian M. schrieb:
> Wenn Du eh den gleichen GND hast, bringt ein Optokoppler überhaupt
> nichts - ausser, wie Du selbst schon festgestellt hast, dass es
> komplizierter wird.
>
> Hast Du also den gleichen Ground, nimm den Spannungsteiler! Ganz Mutige
> nehmen nur einen Widerstand und lassen die Schutzdioden den Rest
> machen...
>
> Gruss Chregu

Gut ich könnte ja hingehen und GND kurzschließen. An sich habe ich aber 
2 Netzteile.

von Bastian J. (basjoe)


Lesenswert?

Für den Eingangswiderstand des Optokopplers habe ich R1=(22V-1.2)/0.01A
R1=2.080 Ohm.

Der Arduino verbraucht in etwa die gleiche Strommenge von 0.01A oder von 
welchem wert geht man durchschnittlich aus?

0.02A sind scheinbar maximallast pro Eingang wie ich gelesen habe.

Benötige ich einen anderen Optokoppler?

CTR war doch Ausgangsstrom durch Eingangsstrom.

Das müsste in etwa die gleiche Menge an Strom sein 0.01A für die Led und 
selbes für den Arduino.

Korrigiert mich bitte wenn ich Fehler mache.

von Stefan F. (Gast)


Lesenswert?

Bastian J. schrieb:
> Soweit war ich auch schon leider ohne Erfolg, mit dem 4N25 habe ich eher
> Ergebnisse vom MC zur SPS gefunden und nicht andersherum.

Der 4N25 ist ein ziemlich gewöhnlicher Operationsverstärker. Die meisten 
Bauvorschläge, die Google findet, gehen auch damit 1:1.

> Der Arduino verbraucht in etwa die gleiche Strommenge von 0.01A oder von
> welchem wert geht man durchschnittlich aus?

Das musst du so berechnen. Ich gehe davon aus, dass du einen Arduino mit 
AVR Mikrocontroller verwendest. Wenn du dessen interne Pull-Up 
Widerstände nutzt, benötigen dessen Eingänge weniger etwas 0,1mA Strom.

Wenn der Optokoppler mindestens 20% Übertragungsverhältnis hat, muss er 
daher 5x so viel Eingangsstrom bekommen. Das wären dann 0,5mA. Diesen 
Wert soll man nochmal etwa mit 4 multiplizieren, damit da auch saubere 
Logiksignale raus kommen. Und dann packen wir noch ordentlich 
Sicherheitsreserve oben drauf. Damit langen wir bei pi mal Daumen 4mA.

Wenn aus der SPS 24V raus kommen und an der Diode des Optokoppler 1,2V 
abfallen, dann berechnet man den Vorwiderstand so:

(24V - 1,2V) / 0,004A = 5700 Ohm

Ich halte es allerdings für Ratsam, nicht den internen Pull-Widerstand, 
sondern einen externen mit 2 bis 20kΩ zu benutzen, weil das weniger 
Störanfällig ist. Dann müssen wir nochmal neu rechnen:

5V / 2kΩ = 2,5mA
Das mal 4 und dann nochmal zur Sicherheit verdoppeln:
2,5mA x 4 x 2 = 20mA

Du brauchst dann also 20mA Steuerstrom.

(24V - 1,2V) / 0,02A = 1140 Ohm

von Google User (Gast)


Lesenswert?

Bastian J. schrieb:
> Stefanus F. schrieb:
>>
> 
https://www.google.com/search?q=optokoppler+sps&client=ubuntu&hs=bSC&channel=fs&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjwrMjLhOfiAhUIMuwKHcOMA1EQ_AUIESgC&biw=1326&bih=649
>
> Soweit war ich auch schon leider ohne Erfolg, mit dem 4N25 habe ich eher
> Ergebnisse vom MC zur SPS gefunden und nicht andersherum.

Da sind mindestens fünf Lösungen für dein Problem dabei !!!

von Stefan F. (Gast)


Lesenswert?

Sorry, ich habe den Teil mit externem Pull-Up falsch geschrieben, da 
habe ich den CTR vergessen. So ist es richtig:

Ich halte es allerdings für Ratsam, nicht den internen Pull-Widerstand, 
sondern einen externen mit 10kΩ zu benutzen, weil das weniger 
Störanfällig ist. Dann müssen wir nochmal neu rechnen:

5V / 10kΩ = 0,5mA
Das mal 5 (wegen dem CTR) dann mal 4 (für saubere Logik-Pegel/Sättigung) 
und dann nochmal zur Sicherheit verdoppeln:
0,5mA x 5 x 4 x 2 = 20mA

Du brauchst dann also 20mA Steuerstrom.

(24V - 1,2V) / 0,02A = 1140 Ohm

von HildeK (Gast)


Lesenswert?

Bastian J. schrieb:
> Gut ich könnte ja hingehen und GND kurzschließen. An sich habe ich aber
> 2 Netzteile.

Wenn du die zwei Netzteile getrennt haben willst / musst, dann ist der 
Optokoppler das Richtige.
Wenn du ohne Einschränkung deiner Anlage die GNDs verbinden 
kannst/darfst, dann ist er überkandidelt! Da tut es ein Spannungsteiler.

Bastian J. schrieb:
> Der Arduino verbraucht in etwa die gleiche Strommenge von 0.01A oder von
> welchem wert geht man durchschnittlich aus?
>
> 0.02A sind scheinbar maximallast pro Eingang wie ich gelesen habe.

Das glaube ich nicht. Ein Eingang eines CMOS-Prozessors ist sehr 
hochohmig. Als Ausgang sind die 20mA max. ein sinnvoller Wert, ein 
Eingang wir keine 100nA aufnehmen. Den Eingangsstrom kannst du also 
getost vernachlässigen!

Bau einen Spannungsteiler aus z.B 22k und 6k2 für einen 5V-Eingang, für 
3.3V musst du die 6k2 eben verkleinern und gut iss!

von Didi (Gast)


Lesenswert?

Stefanus F. schrieb:
> Der 4N25 ist ein ziemlich gewöhnlicher Operationsverstärker.
Nö, Optokoppler.

von Stefan F. (Gast)


Lesenswert?

Didi schrieb:
> Nö, Optokoppler.

Upps, natürlich. Habe mich vertippt.

von Sebastian S. (amateur)


Lesenswert?

Ein paar Minimalkenntnisse solltest Du schon haben. So eine EssPehEss 
kann man nämlich auch ins Nirwana schicken, nicht nur den Arduino.
Also schau Dich mal mit den Stichworten: Levelshifter, Pegelumsetzer 
oder Spannungsteiler im Netz um. Ist ganz einfach, sollte man aber 
gemacht haben.

von Richard B. (r71)


Lesenswert?

Stefanus F. schrieb:
> Upps, natürlich. Habe mich vertippt.

Stefanus F. schrieb:
> Du brauchst dann also 20mA Steuerstrom.

Die Simatic (S7 12xx/15xx) von Siemens arbeitet mit 1-3mA.
Für den AVR würde ich max. 1mA einplanen.

von Wolfgang (Gast)


Lesenswert?

Philipp H. schrieb:
> Das Zauberwort ist "Spannungsteiler"

Das Zauberwort ist Vorwiderstand, jedenfalls wenn man SPS und µC 
galvanisch durch einen Optokoppler trennen möchte, was grundsätzlich 
keine schlechte Idee ist.

von Bastian J. (basjoe)


Lesenswert?

Richard B. schrieb:
> Stefanus F. schrieb:
>> Upps, natürlich. Habe mich vertippt.
>
> Stefanus F. schrieb:
>> Du brauchst dann also 20mA Steuerstrom.
>
> Die Simatic (S7 12xx/15xx) von Siemens arbeitet mit 1-3mA.
> Für den AVR würde ich max. 1mA einplanen.

Ist ne S7 400 mit nem DO 24V/2A ( 21,7V lt Multimeter am Ausgang).

Fand die Lösung gut beschrieben und wollte mich dafür nochmal stark beim 
Ersteller bedanken.

Warum denn nur 1mA max ?

von Thomas T. (runout)


Lesenswert?

schau, die Gute liegt so nah:
Beitrag "Optokoppler und SPS Probleme"

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Ich greife aus der SPS einer älteren Autowaschanlage (24V) mittels 
Reed-Relais Signale für einen Arduino ab. Das funktioniert nun seit ca. 
3 Jahren Tag und Nacht.

Die Reed-Relais haben eine Steuerspannung von 24V, benötigen ca. 10mA 
und sind gegen Spannungsspitzen und Verpolung absolut unempfindlich. Sie 
gewährleisten eine völlige Potentialtrennung. Am Arduino ziehen die 
Schließer einfach ohne jedes zusätzliche Bauelement jeweils einen auf 
Input/Pullup programmierten Eingang nach Masse ... das Entprellen wird 
per Software erledigt ...

: Bearbeitet durch User
von Bastian J. (basjoe)


Lesenswert?

Thomas T. schrieb:
> schau, die Gute liegt so nah:
> Beitrag "Optokoppler und SPS Probleme"

Ist aber ein anderer Optokoppler. Habe hier nen 4N25 nicht 4N35 :S

von Richard B. (r71)


Lesenswert?

Bastian J. schrieb:
> Warum denn nur 1mA max ?

Weil das völlig ausreichend ist.
Du willst ja dein AVR nicht grillen, oder?

von Manfred (Gast)


Lesenswert?

Bastian J. schrieb:
> Ist aber ein anderer Optokoppler. Habe hier nen 4N25 nicht 4N35 :S

Kannst Du Dir schon selbst die Schuhe zubinden?

Thomas T. kaut Dir eine perfekt fertige Lösung vor, Dein 'Problem' ist 
vollkommen trivial, Basteln zweite Stunde. Oder anders gesagt: Diese 
Grundschaltung funktioniert mit praktisch jedem beliebigen Optokoppler.

Warum also baust Du es nicht einfach zusammen und testest aus, ob es 
geht?

Richard B. schrieb:
> Du willst ja dein AVR nicht grillen, oder?
Es heißt Deinen AVR.

Im Beispiel des anderen Threads ergeben sich etwa 16mA LED-Strom @ 
5V-Arduino, zwar etwas viel, aber im Rahmen dessen, was ein AT328 
klaglos liefert. Das funktioniert so und fängt auch Toleranzen / 
Alterung der Optokoppler gut weg.

von Richard B. (r71)


Lesenswert?

Manfred schrieb:
> Es heißt Deinen AVR.

"Deinen"? Hmm...

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

Bastian J. schrieb:

was war nochmal dein Fachgebiet? Japanologie? Gartenbau?

Du machst irgendwas mit Controllern und SPS. Weißt nicht dass da 24V bei 
SPS usus sind. Kennst dich mit Spannungsteilern nicht aus und tust dich 
mit Optokopplern schwer?
Bist du wirklich der richtige Mann am richtigen Ort? Diese Frage 
überlasse ich dir als Denksportaufgabe für heute Nacht.

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.