Wie Raspberry Pi mit 2-3 separaten LED-Schaltungen und externer Stromquelle verbinden?

  • Hallo zusammen,

    meine Kenntnisse für Strom und Elektronik sind nicht unbedingt die besten, aber ich habe zumindest ein gewisses Grundverständnis dazu.

    Mein Projekt:
    Ich möchte für einen Hangar separat
    1. eine Positionsbeleuchtung ganz ein/ausschalten
    2. einen Multivibrator (Blinklicht alle 1 sec.) starten/stoppen
    3. als Option eine Deckenbeleuchtung ganz ein/ausschalten, ähnlich wie 1.
    Alles mit LEDs.

    Ursprünglich wollte ich diese mit je 2 Kabeln zu einem Schaltbrett führen und diese jeweils per Miniaturkippschalter ein/ausschalten. Ich weiß nicht wie ich z.B. mit dem Bearbeiten einer PVC-Hartschaumplatte als Schaltbrett zurecht komme und ich bin mir noch nicht im Klaren darüber, mit welchen Steckverbindern o.ä. ich die Kabel von der Steuerung zum Hangar trenne. Jetzt bin ich über den Raspberry Pi gestoßen und möchte dieses Projekt sehr gerne damit steuern. Ich weiß, die ursprüngliche Lösung ist kostengünstiger, aber ich möchte gerne mit dem Raspberry Pi (3B ?) arbeiten, zumal ich auch Programmierkenntnisse habe.

    Im Internet habe ich herausgefunden, dass man mit Apps die GPIO-Anschlüsse des Raspberry Pi mit dem Smartphone steuern kann. Meine Vorstellung wäre nun, die 2 bzw. 3 LED-Stromkreise mit jeweils einer externen Stromquelle (mit AA NiMH-Akkus) zu versehen und diese über den entsprechenden GPIO-Pin über das Smartphone ein- und auszuschalten.

    Wie verbinde ich diese LED-Stromkreise (1, 2, optional 3) richtig mit den GPIO-Pins?

    Meine Stromkreise:
    1. Positionsbeleuchtung
    Spannungsquelle 7,2 V
    folgendes 10x parallel:
    am Pluspol Rv mit 68 Ohm, Diode, 3x LED gelb mit je 2V, 20 mA
    Wäre in der Summe 200 mA für alle 30 LEDs.

    2a. Multivibrator (blinkt alle 1 sec. im eingeschalteten Zustand) -> siehe Zeichnung unten.

    In einem anderen Forum wurde ich hierzu hingewiesen, dieses Blinken doch vom Raspberry selbst zu steuern... Dann sieht meine Schaltung wie folgt aus:

    2b. Spannungsquelle 5 V vom GPIO, dahinter Rv 62 Ohm, Diode, 2x LED rot mit je 1,95 V, 20 mA, z.B. an GPIO 17.

    Dasselbe vom gleichen 5V-Pin nochmal, diesmal z.B. an GPIO 27.

    Ziel ist es dann, dass beide "Stränge" abwechselnd blinken, nach einmaligen Betätigen über das Smartphone.

    Wäre das so (2b) schon korrekt verbunden?


    3. ähnlich 1. als Option


    Ich hoffe, dass soweit alles klar ist und mir geholfen werden kann.
    Viele Grüße,
    Stefan



  • Nimm statt einem Pi einen arduino. Dessen Ausgänge liefern mehr Strom & können dadurch die LEDs direkt ansteuern. Robuster ist er auch.

  • Wenn du es mit dem Smartphone steuern willst, bietet sich eher ein ESP32 oder ESP8266 an, der hat WLAN eingebaut. Die Programmierung ist aber in der gleichen Weise möglich wie beim Arduino.

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

  • Danke für die Hinweise auf die Alternativen. Ich habe auf der Seite Raspberry Pi: Relais-Schalter per GPIO steuern die Lösung mit einem Relais gefunden. Für mich ist das die Lösung für 1. und 3. mit den vielen LEDs. So kann ich mit dem Smartphone die GPIOs steuern UND die Schaltung so belassen mit der Ergänzung des Relais als Ein-/Ausschalter.

    Zu 2b: Mir wurde noch nicht beantwortet, ob das mit dem abwechselnden Blinken über 2 GPIOs so geht wie von mir beschrieben.

  • Du würdest 17 mA in den GPIO füttern, das soll man nicht machen, dafür sind die Treiber im Broadcom-Chip nicht gedacht.

    Häng den GPIO an einen Transistor und schalte damit die LEDs mit dem Widerstand von 5 V nach GND.


    Auch die anderen LED kannst du besser über einen oder mehrere Transistoren steuern. Wenn sie alle gleichzeitig leuchten sollen, genügt ein Transistor, der 200 mA schalten kann. Der Verstärkungsfaktor sollte aber groß genug sein - mindestens ca. 100. Oder du nimmst einen passenden Mosfet.

    Wenn du die 10x3 LEDs über mehrere Ausgänge getrennt schalten willst, genügen mehrere kleinere Transistoren.


    Um das ganze kompakt zu halten bietet sich der ULN2803 an, der hat 8 Transistoren auf einem Chip und kann pro Tranistor 500 mA schalten.

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

  • Hallo "Gnom",

    wie du der angehängten Zeichnung entnehmen kannst, sollen die 200mA-LEDs mit einem einzelnen Transistor geschaltet werden. Stimmt der Schaltplan (siehe unten) vom Anschluss her? Ansonsten weiß ich auch nicht, wenn ich meinen BC547B verwende, ob die Vorwiderstände der LEDs mit 68 Ohm bleiben können und wie groß R1 (Widerstand zur Basis des NPN) sein muss. Mit den vielen Bezeichnungen und Beispielwerten des Transistor-Datenblatts (Quelle: Reichelt) verstehe ich zu wenig, ob das mit dem Verstärkungsfaktor passt.

    Auch in Hinblick auf die je 2 roten LEDs wüsste ich gerne, wie man den R1 (an Basis des NPN) ausrechnet. Ist der BC547B auch für meine 2 roten LEDs geeignet?

    Edit: Der Schaltplan für die roten LEDs: Wie sieht der aus? Etwa so?

    GPIO -> R1-> Basis NPN,

    Emitter NPN -> GND GPIO,

    Collector NPN -> 2 LEDs -> Rv -> 5V GPIO

  • Die 68 Ohm sind ok. Die Schaltung an sich auch. (Nur was die zusätzliche Diode zwischen Rv und der ersten LED soll, verstehe ich nicht. Die kannst du weglassen.)

    Nur der BC547 kann nur 100 mA schalten - du müsstest also zwei davon verwenden und je 5 Stränge anschließen. Du kannst ja beide Transistoren parallel über den gleichen GPIO ansteuern. Oder du nimmst einen Transistor, der mindestens 200 mA schalten kann.

    Der BC547 hat eine Verstärkung von >100, für die Basis reichen also wenige mA aus. Um den GPIO so gering wie möglich zu belasten, versuche es mit 1000 Ohm (~3,3 mA).


    Für die beiden roten LEDs reicht es allemale. Bei 20 mA und einer Verstärkung von 100 brauchst du 0,2 mA, es würde theoretisch ein Widerstand von 3,3/0,0002 = 16500 Ohm reichen. Aber du kannst auch einfach einen 1000-Ohm-Widerstand nehmen - das spielt keine große Rolle.

    Die Schaltung stimmt so weit.

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

  • Vielen Dank! Jetzt hätte ich bis eben noch gedacht, du hättest bei der roten LED-Rechnung statt 5 V versehentlich 3,3 V genommen. Aber der Anschluss ist ja vom GPIO selbst und der ist ja bekanntlich immer bei 3,3 V ;)

  • Die roten LEDs (wie generell alle LEDs) solltest du auch über einen Transistor an die 5V oder 7,2 Volt hängen. Zu dem Widerstand hab ich nichts gesagt. Nur zu dem Basiswiderstand, der kann 1000 Ohm sein, da kommt es nicht drauf an.


    Für zwei Rote LEDs in Reihe an 5 V solltest du ungefähr 50 Ohm nehmen, bei 7,2 Volt ungefähr 160 Ohm.

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

  • Also wie von mir beschrieben


    GPIO -> R1-> Basis NPN,

    Emitter NPN -> GND GPIO,

    Collector NPN -> 2 LEDs -> Rv -> 5V GPIO


    für die roten LEDs verbinden. Oder was meintest du? Statt ca. 50 Ohm an 5 V hatte ich 55 Ohm berechnet und in einem anderen Forum habe ich gelernt, dass man lieber etwas mehr nehmen sollte, also in diesem Fall eher 62 Ohm (wegen 5% Toleranz).

  • So genau kommts nicht drauf an. Ob die LRD nun 20 oder 22 mA hat... 15 tuns auch. Egal. Ja, lieber den nächst höheren Standardwert. 62 ist gut. Ich rechne immer mit 2 Volt LED-Spannung. Können auch 1,9 sein oder 2,1... Aber wegen sowas macht man keine Doktorarbeit.


    Die Schaltung ist ok. R1 1000 Ohm.

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