MINT - Unterricht  mit  Arduino und anderen

Das Ansteuern der RGB-LED auf dem Calliope ist ebenfalls mit sehr einfachen Mitteln zu bewerkstelligen. Sie ist unterhalb des 5x5-Rasters zu finden.

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“.

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

 

 

Sechs Komponenten werden dazu benötigt:

  • Die Klammer "beim Start" legt fest, dass die eingeschlossen Befehle bei jedem Start einmal ausgeführt werden
  • Die Blöcke "setze LED-Farbe auf" legen die jeweils dort genannten Farben in der Reihenfolge von oben nach unten fest
  • Die Blöcke "pausiere" terminieren Blau und Rot jeweils auf 2000 ms (= 2 Sekunden)

 


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.