Sonntag, 14. Juli 2013

Steuerung von RGB LED strip

Also wie versprochen kommt nun mit meinem zweiten Post, eine Anleitung um mit dem Arduino eine 12V GRB-LED zu betreiben.

Der Aufbau

 

Benötigte Bauteile 

 

Für den Aufbau braucht man folgende Bauteile:

  3x Transistor MOSFET IRL540N (Conrad)
  3x Diode 1N4007 (Conrad)
  1x RGB-Strip (z.B. Conrad mann kan auch eine längere Strip benutzen)
  1x 12V Netzteil (Conrad ich benutze ein altes Computernetzteil)
  1x Taster (Schließer)
  1x Widerstand 10kΩ
  1x Arduino Board (bei mir Arduino UNO)

Außerdem sollte man ein Steckboard besitzen (Conrad) da man so ohne zu Löten Schaltungen aufbauen kann. Desweiteren benötigt man einer Leitung, dafür eignet sich am besten Klingeldraht (Conrad).


Der Stromlaufplan

Der Stromlaufplan sieht wie folgt aus:
 
Stromlaufplan

Wie schließe ich den Transistor richtig an?

In dem nächsten Bild wird gezeigt wo man das Gate [G], Drain [D] und Source [S] findet:
Transistor
Bei Fragen wie ein MOSFET Transistor funktioniert kann ich diesen Artikel empfehlen.

Was ist eine RGB-Strip

Am besten fange ich damit an was eine RGB-LED ist. Bei dieser LED handelt es sich im Grunde um drei LEDs in einer, nämlich eine Rote, eine Grüne und eine Blaue. Diese drei LEDs besitzen in der RGB-LED gemeinsame +12V. Folglich hat einer RGB-LED 4 Pinne einen für +12V, einen für die Rote LED, eine für die Grüne LED und einen für die Blaue LED. Eine RGB-Strip ist nichts anderes als, einige RGB-LEDs die auf einem Band hintereinander Gelötet wurden. Diese haben die Anschlüsse +12V, Rot [R], Grün [G] und Blau[B]. die Vorwiederstände für die LEDs sind bereits draufgelötet.

So sieht mein Aufbau der Schaltung aus:


Der Code

Ich hab zwei Programme hochgeladen. Siehe hier. Bei beiden Programmen habe ich einen neuen Befehlverwendet.

analogWrite(LED_R, DIM_R);

Denn digitalWritr() Befehl habe ich ja schon vorgestellt. Diesen Benutzt man um einen Pin auf HIGH oder LOW zu schalten also 5V oder 0V. Arduino besitzt auch Analogeausgänge, diese werden mit diesem Zeichen ~ gekennzeichnet und stehen vor der Pin Nummer, z.B. ~11. Das besondere an Analogenausgängen ist diese einen Wert zwischen HIGH und LOW annehmen können also einen Wert zwischen 5V und 0V. Bei Arduino beträgt die Stückelung 255, dass bedeutet das die 5V durch 255 geteilt wurden. Mann kann deshalb mit dem analogWrite() eine Zahl zwischen 255 und 0 ausgeben, bei der Zahl 200 würden so ca. 3,9V am Ausgang anliegen. In dem oben gezeigten Beispiel steht das LED_R für den Pin der als Ausgang fungieren soll. Bei DIM_R handelt es sich um eine Variable die den Wert enthält der ausgegeben werden soll.

Ich hoffe ihr könnt die Programme verstehen ansonsten schickt mir einfach eure Fragen mit dem Kontaktformular oder direkt an pilot.arduino@gmail.com

In meinem Nächsten Beitrag werde ich zeigen wie ich die Bauteile auf eine Platine Löte und diese dann in ein altes PC-Gehäuse einbaue.