RGB-LED

RGB-LEDs bestehen im Inneren aus drei einzeln ansteuerbaren LEDS, die in den Farben „Rot“, „Grün“ und „Blau“ leuchten können. Über eine Kombination der LEDs können Mischfarben erzeugt werden. So entsteht beispielsweise durch das Anschalten der blauen und grünen LED die Farbe „Türkis“.

Zum Ansteuern der RGB-LED dient unter „Grundlagen“ der Block „setze LED-Farbe auf“. Ein Klick auf das kleine Dreieck neben der Farbe öffnet ein Auswahlmenü mit einer Farbauswahl.

Hier ein Programmbeispiel, das die Farben Blau und Rot für jeweils zwei Sekunden zeigt und dann bei Grün stehenbleibt:


Dreifarbige LEDs gibt es in verschiedenen Ausführungen für den Arduino. Hier ist eine ausgewählt worden, deren LEDs im Inneren über vier Drähte ansteuerbar sind. Ein Draht, die gemeinsame Kathode, ist länger. Sie wird mit dem Minuspol (GND), die 3 kürzeren mit je einem Pin (hier 11, 10 und 9) verbunden.

Hier der der Anschlussplan:

Um Einzelfarben zu erzeugen, werden nur die LEDs der jeweiligen Farbe angesteuert. Mischfarben entstehen, wenn die LEDs in Kombination angeschaltet und ihre Leuchtkraft variiert wird. Möglich wird das durch Pulsweitenmodulation, die über solche Pins möglich ist, die mit einem Wellensymbol (~) gekennzeichnet sind.

Pulsweitenmodulation meint, dass die LEDs im Millisekundenbereich an- und ausgeschaltet werden. Die Pausen zwischen den einzelnen Schaltvorgängen können bei der Programmierung zwischen 0 (aus) und 255 (an) variieren. Wird der Wert beispielsweise auf 150 gesetzt, hat das zur Folge, dass sich die Helligkeit der LED deutlich verringert.

Hier eine Programmierung, die mit der des Calliope mini oben übereinstimmt:

void setup(){

pinMode(11, OUTPUT); // blaue LED

pinMode(9, OUTPUT); // rote LED

pinMode(10, OUTPUT); // grüne LED

analogWrite(11, 150); /* blaue LED mit mittlerer Helligkeit einschalten*/

delay(2000); /* Leuchtdauer */

analogWrite(11, 0); /* blaue LED ausschalten */

analogWrite(9, 150); /* rote LED mit mittlerer Helligkeit einschalten*/

delay(2000); /* Leuchtdauer */

analogWrite(9, 0); /* rote LED ausschalten */

analogWrite(10, 150); /* grüne LED mit mittlerer Helligkeit einschalten */

}

void loop(){

}

Und hier das gleiche Beispiel programmiert mit Ardublock. Eine Anleitung, wie Ardublock in die Arduino IDE eingebunden werden kann, findet sich hier als Download.


RGB-LEDs können hier preisgünstig erworben werden.