Mit GPIO (3.3V) einen 24V Digitalen Eingang schalten

  • Hallo! Ich habe durch Lesen und auch das vermehrte Fragenstellen in diesem Thread(danke nochmal an die Beteiligten) nun eine Schaltung, bei der der GPIO erkennt, ob ein 24V Signal anliegt oder nicht. Es nutzt dafür einen Optokoppler 817. Meine Frage ist nun, ob man den gleichen Optokoppler nun auch nutzen kann, um mittels eines GPIO 3.3V Outputs einen 24V Digitalen Eingang zu beschalten.


    Es müssen dafür lediglich 24V an dem digitalen Eingang (Roboter) ankommen mit einem Strom von > 5.5mA laut Handbuch. Ich habe daher die Widerstände so berechnet, dass auf der Diodenseite des Optokopplers 7.5mA fliessen (noch zumutbar für den RaspberryPi) damit ab einem CTR von ca. 74% auch in dem 24V Stromkreis mehr als diese geforderten 5.5mA fliessen. Zusätzlich habe ich einen Eingangswiderstand für den 24V Anschluss, der den Strom in jedem Fall auf maximal 6.8mA begrenzt.


    Dies sind die Details über den Optokoppler: Link Das CTR sollte gemäss Figur 5 (S.6) bei Vorwärtsstrom=7.5mA in etwa bei 140-150% liegen. Somit müssten auf der 24V Seite über 10mA fliessen wenn es nicht durch den 3.5K Widerstand begrenzt wäre. Man könnte also den Widerstand im 3.3V Stromkreis wahrscheinlich noch erhöhen.


    Schaltung siehe Anhang


    Meine Fragen:

    • Ist nun gewährleistet, dass mindestens 5.5mA auf der 24V-Seite fliessen wenn der GPIO auf True schaltet (und auch 24V Spannung herrschen)?
    • Ist gewährleistet, dass der Digitale Input wieder zurückschaltet von True auf False wenn der GPIO von True auf False schaltet?
    • Ist gewährleistet, dass keine Bauteile oder der RPi überlastet wird? (Eventuell noch eine antiparallele Diode zum Transistor schalten?)


    Danke für eure Antworten! Viele Grüsse, Lutz

  • aus dem GPIO nicht mehr als 3mA saugen


    also abzüglich IR LED 1,2V = 2,1V am R = 680 Ohm

    CTR muss passen rechne mit 1,5mA an 24V, wenns besser werden soll AQV252g

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Wie kommst du auf die 74%?
    Das ist alles etwas auf Kante genäht. Du kannst dem Pi zwar einige mA abringen, muss aber nicht sein.
    Besorg dir einen Darlington-Optokoppler oder häng einfach hinter den Optokoppler noch einen geeigneten Transistor.

    Ein Transistor alleine würde es auch tun, wenn du nicht zwingend eine galvanische Trennung brauchst.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Hallo jar und Gnom! Danke für eure Antworten!

    Ich war dem Irrglauben verfallen, dass die 15mA Grenze pro GPIO nicht nur für einfliessenden Strom gilt sondern auch das ist, was der GPIO ausgeben kann. Da war ich schonmal auf dem Holzweg.


    Ok, also die galvanische Trennung ist nicht zwingend erforderlich. Von daher müsste es ja ein klassischer Anwendungsfall für ein Relais sein. In dem Bastelkit, welches ich mir mit dem Raspberry gekauft hatte ist bereits eine typische Schaltung zum Auslösen des mitgelieferten Relais angegeben. Siehe Foto.


    Handbuch Relais: Handbuch Relais

    Ich finde in dem Handbuch nicht genau den minimalen Stromfluss, den das Relais zum Schalten braucht.


    Ich gehe mal davon aus, dass die Schaltung mit dem Transistor funktioniert. Ich würde aber gerne verstehen was genau die Überlegungen dahinter sind. Soviel habe ich verstanden: Der Strom der von 5V zu GND fliessen würde, reicht nicht aus, damit die Spule Genug Magnetismus erzeugt um das Relais zu schliessen. Ich versuche das rechnerisch nachzuvollziehen: 5V -> Relaisspule parallel zu Diode&220Ohm -> GND: Spulenwiderstand ist laut Relais Handbuch Seite 1 unten bei 5V zwischen 167 und 70 Ohm je nach Leistung. Dann ist der Gesamtwiderstand der Parallelschaltung 53 .. 93Ohm. Dann wäre der Stromfluss widerum 52 .. 94 mA bei 5V. Diesen Stromfluss könnte der Raspberry Pi leisten, aber es wäre wahrscheinlich nicht genug, um das Relais zu schalten?


    Daher muss mittels NPN-Transistor eine Stromverstärkung realisiert werden. Wenn der GPIO Ausgang angesteuert wird, müsste ein Basisstrom von (3.3V - 0.7V) / 1000Ohm = 2.6mA in die Transistorbasis fliessen (-0.7V = "Diodenvoltabfall") . Aber da hört mein Latein dann auf. Wie berechnet man daraus den tatsächlichen Kollektorstrom? Und woher weiß ich welcher Strom genug ist?


    Danke im Voraus für eure Antwort!

  • Ok, also die galvanische Trennung ist nicht zwingend erforderlich.

    OK, aber für den PI sicherer vor allem wenn sich mal ein Lötfehler oder Ankopplungsfehler einschleicht.

    24V direkt auf den GPIO oder lange Leitungen die sich was einfangen können.


    Hier hast du ja deine galv. Trennung, nur ein 5V Releis saugt ziemlich viel Strom aus den 5V vom GPIO, wenn du den entbehren kannst OK.

    Hiefür bietet sich eher ein Optokoppler oder Photomos Relais an, kann direkt aus dem GPIO Port mit 3mA betrieben werden, die Frage ist nur wie hoch ist die 24V Last in Strom?

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • ja das sehe ich ein. Also die schaltung mit dem relais würde funktionieren (auch wenn ich nicht genau verstehe warum), aber es ist sicherer mit diesem PhotoMOS. Ich werde mir das mal genauer anschauen, er ist zwar etwas teurer als ein relais aber ich fürchte die größere hürde für mich wird wieder sein, das bauteil in eine funktionierende / korrekte schaltung zu bringen. mal sehen!

  • warum beantwortest du keine Fragen?

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • sorry die letzte zeile hatte ich übersehen. die last im 24V stromkreis sollte sehr gering sein, da kein verbraucher daran hängt. Im Prinzip geht es meines erachtens nur darum, den 24V stromkreis zu unterbrechen oder nicht. Das sagen mir die jungs, die den roboter verkabeln in den nächsten tagen noch genau. aber im prinzip ist es wie bei nem 24V SPS eingang denke ich.

  • mit wenigen ca. 1 mA geht ein Optokoppler, ein Photomos wie der AQV252g ist zwar teurer, aber der ist sogar auf der Schaltseite verpolungsicher wie ein Relais.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)