www

ein Webangebot von rotering-net.de

Arduino-Grundlagen: LED mit Transistor steuern

Über die digitalen Ausgänge des Arduino darf im äußersten Maximum ein Strom von 40 mA fließen. Will man größere Verbraucher steuern, kann man sich einer Transistorschaltung bedienen. Bei dieser kleinen Beispielschaltung sollen 5 rote LED gleichzeitig über nur einen digitalen Augang zum Blinken gebracht werden.

Der Transistor

Ein Transistor ist ein dreischichtiger Halbleiter, wobei jede Schicht mit einem der drei Ausgangsbeinchen des Transistors verbunden ist. Die mittlere Schicht, die Basis, unterbindet im spannungslosen Zustand, dass zwischen den beiden anderen Schichten, dem Kollektor und dem Emitter, ein Strom fließen kann. Legt man eine kleine Spannung an, so wird die Basis leitfähig. Der Strom, der zwischen Kollektor und Emitter fließen kann, ist dabei um ein Vielfaches höher, als der Strom, der von der Basis zum Emitter abfließt.

Abbildung eines Transistors
Ausschnitt eines Fotos von oomlout: TRNN-T92-X-K222-01CC BY-SA 2.0

Da wir den Transistor nicht als Verstärker, sondern als elektronischen Schalter benutzen wollen, können wir die Basis einfach an einen digitalen Ausgang des Arduino anschließen. Schalten wir den Ausgang auf LOW, liegt keine Spannung an der Basis an und sie sperrt den Stromfluss vom Kollektor zum Emitter. Schalten wir den Ausgang auf HIGH, wird die Basis leitend und Strom kann vom Kollektor zum Emitter fließen. Allerdings ist die volle Spannung des digitalen Ausgangs von +5 V für die meisten Transistoren nicht gesund. Daher muss zwischen dem digitalen Ausgang des Arduinos und der Basis des Transistors ein Widerstand eingebaut werden, der einen großen Teil der Spannung verheizt.

Der Basis-Widerstand

Der genaue Wert dieses Widerstands ist abhängig vom jeweils verwendeten Transistor. Ein handelsüblicher Transistor leitet ab ca. +0,7 V an der Basis. Damit der Transistor auch dann noch schaltet, wenn der Arduino mal nicht ganz die +5 V liefert, und ein Transistor in aller Regel auch deutlich höhere Spannungen an der Basis aushält (bei meinem verwendeten PN2222 liegt das absolute Maximum bei +5 V) kann man gut mit +3,8 V planen, die der Widerstand schlucken muss. Fehlt noch der Strom, der nachher über die Basis fließt. Dieser ist zum einen von der Stromstärke abhängig, die später vom Kollektor zum Emitter fließen wird (hier im Beispiel ca. 100 mA für die fünf LED), zum anderen von den spezifischen Kennwerten des verwendeten Transistors. Die Seite mikrocontroller.net erklärt näher, wie man den passenden Basiswiderstand mit Hilfe der Datenblätter des jeweiligen Transistors abschätzen kann. Für den von mir verwendeten PN2222 ergab sich ein Basiswiderstand von 1 kΩ.

Die Schaltung

Steckbrettansicht

Der Emitter des Transistors ist üblicherweise auf Pin 1 gelegt (sicherheitshalber sonst noch einmal das Datenblatt des Transistors konsultieren). Hält man einen Transistor mit den typischen, schwarzen TO-92-Gehäusen mit der flachen Seite zu sich, so ist das linke Beinchen Pin 1. Der Kollektor (Pin 3, rechtes Beinchen) wird an +5 V angeschlossen. Die Basis (Pin 2, mittleres Beinchen) geht über den oben diskutierten Widerstand auf einen digitalen Ausgang des Arduinos.

Die fünf LED sind parallel geschaltet. Ihre Anoden sind über die Jumperkabel alle mit dem Emitter des Transistors verbunden. An den Kathoden sind die LED über je einen eigenen Vorwiderstand mit Masse verbunden. Wenn Sie das Bedürfnis verspüren sollten, noch mehr LED anzuschließen, beachten Sie, dass Sie über eine Masseleitung nicht mehr als 200 mA führen sollten. Ab der 11. LED bietet es sich also an, eine weitere Masseleitung zum Arduino zu legen. Bei mehr als 400 mA (immerhin über 20 LED) sollten Sie eine externe Stromversorgung in Betracht ziehen.

Das Beispielprogramm lässt die fünf LED im Sekundentakt blinken.

led-mit-transistor-steuern.ino