display

6. Farb-LEDs

 

 

DU LERNST HIER...

 

wie Farben aus einer roten, einer grünen und einer blauen Komponente zusammengesetzt werden und du die Farb-LEDs mit der gewünschten Farbe leuchten lässt.

 

 

RGB-LED

  Um Farbbilder mit dem Computer zu speichern und zu verarbeiten, müssen die Farben als Zahlen definiert werden. Es gibt dazu mehrere Möglichkeiten. Die bekannteste ist das RGB-Farbmodell, wo die Intensitäten der drei Farbkomponenten Rot, Grün und Blau als Zahlen zwischen 0 und 255 angegeben werden.

Mit der Farb-LED des Calliope kannst du mit den Farben im RGB-Modell experimentieren.

Der Befehl
set_colors(r, g, b)
wo r, g, und b Zahlen zwischen 0 und 255 sind, legt die rote, grüne und blaue Farbkomponente fest.

 

 

Der Calliope_mini 3 verfügt über drei RGB-LEDs. Diese werden als Neopixel angesprochen:

LEDs = NeoPixel(pin_RGB, 3)
LEDs[0] = (r, g ,b)
LEDs[1] = (r, g ,b)
LEDs[1] = (r, g ,b)
LEDs.show()
 


 

MUSTERBEISPIELE

 

Beispiel 1: Farb-LED in verschiedenen Farben leuchten lassen
Die Farb-LED leuchtet der Reihe nach in den Farben rot, grün, blau, gelb, magenta und cyan jeweils während 1000 Millisekunden und schaltet dann ab.

 




Programm:

from calliope_mini import *

led.set_colors(255, 0, 0)
sleep(1000)    
led.set_colors(0, 255, 0)
sleep(1000)    
led.set_colors(0, 0, 255)
sleep(1000) 
led.set_colors(255, 255, 0)
sleep(1000)
led.set_colors(255, 0, 255)
sleep(1000) 
led.set_colors(0, 255, 255)
sleep(1000) 
led.set_colors(0, 0, 0) 
► In Zwischenablage kopieren

Für Calliope_mini 3 musst du das Programm entspechen anpassen. Hier leuchtet das erste LED rot, das zweite grün und das dritte hellblau.

Programm:

from calliope_mini import * 
from neopixel import *

LEDs = NeoPixel(pin_RGB, 3)
LEDs[0] = (255,0,0)
LEDs[1] = (0,255,0)
LEDs[2] = (0,255,255)
LEDs.show()
► In Zwischenablage kopieren

Wenn für die Farbkomponente die maximal mögliche Zahl 255 gewählt wird, leuchten die LEDs sehr hell. Angenehmer ist es, wenn du für r, g, b kleinere Zahlen wählst:
LEDs[0] = (100,0,0)
LEDs[1] = (0,100,0)
LEDs[2] = (0,100,100)

 

Beispiel 2: Farb-LED in zufällig gewählten Farben leuchten lassen

Hier soll die Farb-LED in zufällig gewählten Farben jeweils 500 ms lang leuchten. Die Farbkomponenten r, g, b bestimmst du in der Funktion randomColor() mit drei Zufallszahlen im Bereich 0 ... ... 100.

Durch Drücken des Buttons A beendest du das Farbspiel.
 

Programm:

from calliope_mini import *
from random import randint

def randomColor():
    r = randint(0, 100)
    g = randint(0, 100)
    b = randint(0, 100)
    led.set_colors(r, g, b)
    
while not button_a.was_pressed():
     randomColor()
     sleep(500)       
led.set_color(0, 0, 0) 
► In Zwischenablage kopieren

Beispiel 3: Farb-LED für eine Spannungsanzeige verwenden
Der Calliope kann auch für physikalische Experimente verwendet werden, beispielsweise um Spannungen eines Sensors im Bereich 0...3.3V zu messen.

Berührst du gleichzeitig den Anschluss + (3.3V) und den Pin 1, so ergibt sich ein Stromkreis und die Spannung am Pin 1 steigt an.
Der Befehl pin1.read_analog() gibt die Spannung als Zahl zwischen 0 und 1023 zurück.

In deinem Programm leuchtet die LED ohne Stromkreis blau, beim Berühren des Pin 1 grün und beim Berühren des Pin 2 rot.

 

Programm:

from calliope_mini import *

while True:
    if pin1.read_analog() > 400:
        led.set_colors(0, 255, 0)
    elif pin2.read_analog() > 400:
        led.set_colors(255, 0, 0)   
    else:
        led.set_colors(0, 0, 255)          
    sleep(100)
► In Zwischenablage kopieren

 

 

MERKE DIR...

 

Die Farbe einer Farb-LED legst du durch die rote, grüne und blaue Farbkomponente (eine Zahl zwischen 0 und 255) fest. Da die LED sehr hell leuchtet, ist es besser Zahlen zwischen 0 un 100 zu verwenden.
Calliope Mini 3 verfügt über drei RGB-LEDs. Du importierst das Modul neopixel und wählst die Farben nach der Vorlage im Beispiel 1.

 

 

ZUM SELBST LÖSEN

 

 

1.
Schreibe ein Programm, mit dem die Farb-LED nacheinander in Regenbogenfarben leuchtet. Wiederhole diese Farbfolge 3 mal. Verwende die nebenstehende Zuordnung der Farben.  

2.

Wenn du den Button A drückst, soll die Farb-LED in der Farbe magenta, beim Drücken des Buttons B mit der Farbe cyan leuchten. Damit die LED nicht zu hell leuchtet, wählst du für die Farbkomponenten höchsten einen Wert von 100.

3.

Wenn du mit den Fingerspitzen Pin + und Pin 1 berührst, blinkt die Farb-LED rot, wenn du Pin + und Pin 2 berührst, so blinkt sie blau, bei der Berührung des Pin + und Pin 3 blinkt sie grün.

4.

In einer endlosen while-Schleife soll die Farb-LED mit weisser Farbe das Signal SOS senden, wobei sie bei S dreimal kurz (200 ms) und bei O dreimal lange (600 ms) leuchten soll. Nach jedem SOS Signal folgt eine Pause.