LED schalten mit BC547B

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich habe heute mal angefangen, ein paar grundlegende Raspberry Pi Projekte anzufangen. Leider scheitert es bereits beim Schalten einer LED über einen Transistor. Ich verwende zum Schalten den Pin 15 und den Wald-Wiesen-NPN-Transistor BC547. Zwischen NPN und Pin 15 hängt ein 6,5 kOhm Widerstand. Die LED wird vom 5V-Pin über einen 220 Ohm Widerstand gespeist und die Kathode der LED liegt am NPN.

    Auf den ersten Blick klappt alles wunderbar. Sieht man jedoch genau hin dann erkennt man, dass die LED bei einem GPIO.Low nicht ganz ausgeht, sondern noch ganz ganz leicht glimmt. Hab dann den 6,5 kOhm Widerstand durch einen 1 kOhm Widerstand ersetzt, doch die LED glimmt dennoch.

    Ich vermute das liegt an der zu niedrigen Steuerspannung, welche nicht vollkommen ausreicht, um den Transistor voll anzusteuern.

    Könnt ihr mir helfen, wie ich die LED trotz Transistor ganz aus bekomme ?

    (Ich verwende einen Raspberry Pi Zero W)

    Vielen Dank,

    Rookie_Pi

  • Welchen mode verwendest du? Das kenn ich nur wenn der Pin nicht in den richtigen modus geschaltet wird. Ich vermute du schaltest den Pin nur mit

    Code
    gpio write 15 1

    versuch mal

    Code
    gpio mode 15 out
    gpio write 15 1 
    bzw.
    gpio write 15 0
  • Ich verwende folgenden Python-Code :

    Was meinst du mit gpio write 15 1 ?

  • Zwischen NPN und Pin 15 hängt ein 6,5 kOhm Widerstand. Die LED wird vom 5V-Pin über einen 220 Ohm Widerstand gespeist und die Kathode der LED liegt am NPN.

    Das du die LED und den Widerstand an den NPN angeschlossen hast, ist unstrittig. An welche Pins des Transistors aber genau?

    Evtl. Emitter und Kollektor vertauscht?

  • Zitat

    Das du die LED und den Widerstand an den NPN angeschlossen hast, ist unstrittig. An welche Pins des Transistors aber genau?

    Evtl. Emitter und Kollektor vertauscht?

    Nein, das nicht, hab das schon geprüft und den Transistor zum Test anders herum reingesteckt. Dann hat die LED allerdings bei einem High-Pegel nur halb so hell geleuchtet. Dieses Phänomen kenn ich nur von obiger Vermutung.

    Somit ist Emitter und Kollektor nicht vertauscht.

  • das ist einfache shell, kann man im terminal eintippen und enter drücken. Von Python so wie du das nutzt hab ich kaum Ahnung. Ich seh nur die LED leuchtet für eine halbe sekunde und dann nochmal ne halbe sekunde pause und dann ein GPIO cleanup um den Pin wieder frei zu kriegen für den nächsten Durchlauf.

    Öffne mal ein terminal und gib mal

    Code
    gpio readall

    dann siehst du eine Übersicht aller deiner GPIO Pins und deren Zustand.

    Mit

    Code
    GPIO mode 15 out

    definierst du den PIN als Ausgang. Probier das mal im terminal, ich vermute fast die LED wird dann komplett aus gehen. Wenn der PIN nicht im richtigen Modus ist leuchtet die LED ganz schwach. Wenn das nicht hilft Multimeter nehmen und Durchgang am Transistor prüfen bei PIN high.

    In Python war das glaub ich

    Code
    GPIO.setup(15, GPIO.OUT)

    Steht das irgendwo in deinem Skript weiter oben?

    • Offizieller Beitrag

    Hab dann den 6,5 kOhm Widerstand durch einen 1 kOhm Widerstand ersetzt, doch die LED glimmt dennoch.

    :conf:

    https://www.spaceflakes.de/led-rechner

    Ups... Falsch gelesen. :shy:

  • Nein, das nicht, hab das schon geprüft und den Transistor zum Test anders herum reingesteckt. Dann hat die LED allerdings bei einem High-Pegel nur halb so hell geleuchtet.

    Und Du glaubst, so ein Transistor hält beliebige Rüchwärts-Spannungen und -Ströme ohne Schaden aus ? Wenn bei Deinem "Prüfen" die Maximalwerte laut Datenblatt überschritten wurden, kann der Transistor zumindest teilweise schon defekt sein.

    Servus !

    RTFM = Read The Factory Manual, oder so

  • Also ich muss dazu sagen, dass man das Glimmen nur bei ausgeschaltetem Licht noch sieht. Seltsam ist auch, dass eine Berührung des Widerstandes reicht, um die LED einzuschalten.

    Zitat

    Wenn das nicht hilft Multimeter nehmen und Durchgang am Transistor prüfen bei PIN high.

    Also auf Voltmessung schalten und zwischen Base und GND messen, oder ?

    Hab den Transistor auch schon gegen einen anderen ausgetauscht, Derselbe Effekt

  • Ich habe noch etwas festgestellt : Wenn ich die Stromversorgung abziehe und gleich wieder einstecke und den Raspberry Pi damit hochfahre, ist die LED noch vollkommen aus. Erst nach dem ersten Ausführen des Programms bleibt die LED bis zum Abstecken der Stromversorgung ganz leicht am Glimmen. Kann es sein, dass sich noch Restladung in den Kondensatoren des Raspberrys befindet ?

  • Naja, wer Falschfakten liefert, braucht sich dann aber nicht wundern ;)

    Kann es sein, dass sich noch Restladung in den Kondensatoren des Raspberrys befindet ?

    Dann müsste sie aber irgendwann ausgehen, wenn sich die Elkos entladen haben. Leg mal Testweise einen 2kΩ Widerstand von der Basis nach GND. Bleibt die LED dann auch noch an (glimmen)?

  • Das ist klar, denn jetzt hast du einen Spannungsteiler an der Basis, der die Spannung drückt. Dein 6,8kΩ ist einfach zu groß. Ersetze ihn mal durch einen 2,7kΩ. Den 1,5kΩ kannst du auch erhöhen. Einfach etwas experimentieren.

    Für sowas ist immer eine Widerstandsdekade hilfreich. Eine Investition die sich lohnt. ;)

  • allerdings ist auch das Leuchten bei HIGH der LED schwächer geworden... :(

    Was logisch ist, da der Transistor wohl nicht mehr voll durchsteuert.

    Zu meiner Frage vorhin, trifft genau so zu wie auch im ausgeschalteten Zustand des Pi. Die GPIOs haben einen undefinierten Zustand, bei meinem Zero ergibt sich im undefinierten Zustand eine Spannung am Pin zu GND mit 2,4V. Was aussreicht, (um bei meinem erst kürzlich vorgstellten Projekt: Gerät zur Lasterzeugung zum Prüfen der Spannung von Netzteilen) auch den ULN dazu bewegen, dass es ausreicht die LEDs leuchten zu lassen. Deshalb lasse ich die grüne LED auch bei Skript aktivität blinken und nicht dauerhaft leuchten, um eine zuverlässige Unterscheidung zu erreichen.

    Bist du im Besitz eines Mulitmeters und kannst die Spannung des GPIO und GND messen?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!