KY-009 RGB SMD-LED
LED-Modul welche eine rote, blaue und grüne LED beinhaltet. Diese sind mittels gemeinsamer Kathode miteinander verbunden.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
LED-Modul welche eine rote, blaue und grüne LED beinhaltet. Diese sind mittels gemeinsamer Kathode miteinander verbunden.
Technische Daten
Durchlassspannung [Rot] | 1,8 V |
Durchlassspannung [Grün, Blau] | 2,8 V |
Durchlassstrom | 20 mA |
Vorwiderstände:
Je nach Eingangsspannung, werden Vorwiderstände benötigt.
Vorwiderstand (3,3 V) [Rot] | 180 Ω |
Vorwiderstand (3,3 V) [Grün] | 100 Ω |
Vorwiderstand (3,3 V) [Blau] | 100 Ω |
Vorwiderstand (5 V) [Rot] | 180 Ω |
Vorwiderstand (5 V) [Grün] | 100 Ω |
Vorwiderstand (5V) [Blau] | 100 Ω |
Pin-Belegung
Codebeispiel Arduino
Anschlussbelegung Arduino:
Arduino | Sensor |
---|---|
Pin 10 | LED ROT |
Pin 11 | LED GRÜN |
Pin 12 | LED BLAU |
GND | GND |
Codebeispiel ON/OFF
Dieses Codebeispiel zeigt auf, wie die integrierten LEDs mittels eines definierbaren Ausgangspins abwechselnd, im 3 Sekunden Takt, gewechselt werden können.
int Led_Rot = 10;
int Led_Gruen = 11;
int Led_Blau = 12;
void setup ()
{
// Initialisierung Ausgangspins für die LEDs
pinMode (Led_Rot, OUTPUT);
pinMode (Led_Gruen, OUTPUT);
pinMode (Led_Blau, OUTPUT);
}
void loop () //Hauptprogrammschleife
{
digitalWrite (Led_Rot, HIGH); // LED wird eingeschaltet
digitalWrite (Led_Gruen, LOW); // LED wird eingeschaltet
digitalWrite (Led_Blau, LOW); // LED wird eingeschaltet
delay (3000); // Wartemodus für 3 Sekunden
digitalWrite (Led_Rot, LOW); // LED wird eingeschaltet
digitalWrite (Led_Gruen, HIGH); // LED wird eingeschaltet
digitalWrite (Led_Blau, LOW); // LED wird eingeschaltet
delay (3000); // Wartemodus für weitere drei Sekunden in denen die LEDs dann umgeschaltet werden
digitalWrite (Led_Rot, LOW); // LED wird eingeschaltet
digitalWrite (Led_Gruen, LOW); // LED wird eingeschaltet
digitalWrite (Led_Blau, HIGH); // LED wird eingeschaltet
delay (3000); // Wartemodus für weitere drei Sekunden in denen die LEDs dann umgeschaltet werden
}
Beispielprogramm ON/OFF Download:
Codebeispiel PWM
Mittels Puls-Weiten-Modulation [PWM] lässt sich die Helligkeit einer LED regulieren - dabei wird die LED in bestimmten Zeitintervallen ein und ausgeschaltet, wobei das Verhältnis der Einschalt- und Ausschaltzeit einer relativen Helligkeit entspricht. Aufgrund der Trägheit des menschlichen Sehvermögens, interpretieren die menschlichen Augen ein solches Ein-/Ausschaltverhalten als Helligkeitsänderung. Nähere Informationen zu diesem Thema finden Sie in diesem Artikel von mikrokontroller.net.
In diesem Modul sind mehrere LEDs integriert - durch die Überlagerung von unterschiedlichen Helligkeitsstufen lassen sich somit verschiedene Farben kreieren. Dies wird im folgenden Codebeispiel gezeigt.
int Led_Rot = 10;
int Led_Gruen = 11;
int Led_Blau = 12;
int val;
void setup () {
// Initialisierung Ausgangspins für die LEDs
pinMode (Led_Rot, OUTPUT);
pinMode (Led_Gruen, OUTPUT);
pinMode (Led_Blau, OUTPUT);
}
void loop () {
// Innerhalb einer For-Schleife werden den drei LEDs verschiedene PWM-Werte uebergeben
// Dadurch entsteht ein Farbverlauf, in dem sich durch das Vermischen unterschiedlicher
// Helligkeitstufen der beiden integrierten LEDs, unterschiedliche Farben entstehen
for (val = 255; val> 0; val--)
{
analogWrite (Led_Blau, val);
analogWrite (Led_Gruen, 255-val);
analogWrite (Led_Rot, 128-val);
delay (1);
}
// In der zweiten For-Schleife wird der Farbverlauf rückwärts durchgegangen
for (val = 0; val <255; val++)
{
analogWrite (Led_Blau, val);
analogWrite (Led_Gruen, 255-val);
analogWrite (Led_Rot, 128-val);
delay (1);
}
}
Beispielprogramm PWM Download:
LED-Modul welche eine rote, blaue und grüne LED beinhaltet. Diese sind mittels gemeinsamer Kathode miteinander verbunden.
Technische Daten
Durchlassspannung [Rot] | 1,8 V |
Durchlassspannung [Grün, Blau] | 2,8 V |
Durchlassstrom | 20 mA |
Vorwiderstände:
Je nach Eingangsspannung, werden Vorwiderstände benötigt.
Vorwiderstand (3,3 V) [Rot] | 180 Ω |
Vorwiderstand (3,3 V) [Grün] | 100 Ω |
Vorwiderstand (3,3 V) [Blau] | 100 Ω |
Vorwiderstand (5 V) [Rot] | 180 Ω |
Vorwiderstand (5 V) [Grün] | 100 Ω |
Vorwiderstand (5V) [Blau] | 100 Ω |
Pin-Belegung
Codebeispiel Raspberry Pi
Anschlussbelegung Raspberry Pi:
Raspberry Pi | Sensor |
---|---|
GPIO 25 [Pin 22] | LED ROT |
GPIO 24 [Pin 18] | LED GRÜN |
GPIO 23 [Pin 16] | LED BLAU |
GND [Pin 6] | GND |
Codebeispiel ON/OFF
Dieses Codebeispiel zeigt auf, wie die integrierten LEDs mittels eines definierbaren Ausgangspins abwechselnd, im 3 Sekunden Takt, gewechselt werden können.
from gpiozero import LED
import time
# Deklaration der LEDs an ihren entsprechenden GPIO-Pins
led_rot = LED(25)
led_gruen = LED(24)
led_blau = LED(23)
print("LED-Test [drücken Sie STRG+C, um den Test zu beenden]")
# Hauptprogrammschleife
try:
while True:
print("LED ROT 3 Sekunden an")
led_rot.on()
led_gruen.off()
led_blau.off()
time.sleep(3) # Wartemodus für 3 Sekunden
print("LED GRUEN 3 Sekunden an")
led_rot.off()
led_gruen.on()
led_blau.off()
time.sleep(3) # Wartemodus für 3 Sekunden
print("LED BLAU 3 Sekunden an")
led_rot.off()
led_gruen.off()
led_blau.on()
time.sleep(3) # Wartemodus für 3 Sekunden
# Aufraeumarbeiten nachdem das Programm beendet wurde
except KeyboardInterrupt:
print("Programm beendet durch Benutzer")
# gpiozero kümmert sich automatisch um die Bereinigung beim Programmende
Beispielprogramm ON/OFF Download
Zu starten mit dem Befehl:
sudo python3 KY009-RPi.py
Mittels Puls-Weiten-Modulation [PWM] lässt sich die Helligkeit einer LED regulieren - dabei wird die LED in bestimmten Zeitintervallen ein und ausgeschaltet, wobei das Verhältnis der Einschalt- und Ausschaltzeit einer relativen Helligkeit entspricht. Aufgrund der Trägheit des menschlichen Sehvermögens, interpretieren die menschlichen Augen ein solches Ein-/Ausschaltverhalten als Helligkeitsänderung. Nähere Informationen zu diesem Thema finden Sie in diesem Artikel von mikrokontroller.net.
In diesem Modul sind mehrere LEDs integriert - durch die Überlagerung von unterschiedlichen Helligkeitsstufen lassen sich somit verschiedene Farben kreieren. Dieses wird im folgenden Codebeispiel gezeigt. Im Raspberry Pi ist nur ein Hardware-PWM Channel uneingeschränkt auf die GPIO-Pins hinausgeführt, weswegen im vorliegenden Beispiel auf Software-PWM zurückgegriffen wird.
from gpiozero import PWMLED
import time
import random
# Definition der PWMLEDs für jede Farbe
led_rot = PWMLED(25)
led_gruen = PWMLED(24)
led_blau = PWMLED(23)
# Diese Funktion generiert die eigentliche Farbe
# Mittels der jeweiligen Farbvariable kann die Farbintensität geändert werden
# Nachdem die Farbe eingestellt wurde, wird mittels "time.sleep" die Zeit definiert,
# wie lang die besagte Farbe angezeigt werden soll
def led_farbe(rot, gruen, blau, pause):
led_rot.value = rot
led_gruen.value = gruen
led_blau.value = blau
time.sleep(pause)
# Zurücksetzen auf Null nach dem Durchlauf
led_rot.value = 0
led_gruen.value = 0
led_blau.value = 0
print("LED-Test [drücken Sie STRG+C, um den Test zu beenden]")
# Hauptprogrammschleife:
# Diese hat die Aufgabe für jede einzelne Farbe eine eigene Variable zu erstellen
# und mittels einer For-Schleife die Farbintensität jeder einzelnen Farbe von 0-100% zu durchlaufen
# Durch die Mischungen der verschiedenen Helligkeitsstufen der jeweiligen Farben
# entsteht somit ein Farbverlauf
try:
while True:
for x in range(0, 2):
for y in range(0, 2):
for z in range(0, 2):
print(x, y, z)
for i in range(0, 101):
# Einstellen der LED Farbe basierend auf dem aktuellen Schleifendurchlauf
led_farbe(x * i / 100, y * i / 100, z * i / 100, 0.02)
# Aufräumarbeiten, nachdem das Programm beendet wurde
except KeyboardInterrupt:
print("Programm beendet durch Benutzer")
Beispielprogramm PWM Download
Zu starten mit dem Befehl:
sudo python3 KY009-PWM.py
LED-Modul welche eine rote, blaue und grüne LED beinhaltet. Diese sind mittels gemeinsamer Kathode miteinander verbunden.
Technische Daten
Durchlassspannung [Rot] | 1,8 V |
Durchlassspannung [Grün, Blau] | 2,8 V |
Durchlassstrom | 20 mA |
Vorwiderstände:
Je nach Eingangsspannung, werden Vorwiderstände benötigt.
Vorwiderstand (3,3 V) [Rot] | 180 Ω |
Vorwiderstand (3,3 V) [Grün] | 100 Ω |
Vorwiderstand (3,3 V) [Blau] | 100 Ω |
Vorwiderstand (5 V) [Rot] | 180 Ω |
Vorwiderstand (5 V) [Grün] | 100 Ω |
Vorwiderstand (5V) [Blau] | 100 Ω |
Pin-Belegung
Codebeispiel Micro:Bit
Anschlussbelegung Micro:Bit:
Micro:Bit | Sensor |
---|---|
Pin 1 | LED ROT |
Pin 2 | LED GRÜN |
Pin 0 | LED BLAU |
GND | GND |
Dieses Beispiel schaltet die LEDs an, je nachdem, welcher Knopf gedrückt wird.
Beispielprogramm Download
LED-Modul welche eine rote, blaue und grüne LED beinhaltet. Diese sind mittels gemeinsamer Kathode miteinander verbunden.
Technische Daten
Durchlassspannung [Rot] | 1,8 V |
Durchlassspannung [Grün, Blau] | 2,8 V |
Durchlassstrom | 20 mA |
Vorwiderstände:
Je nach Eingangsspannung, werden Vorwiderstände benötigt.
Vorwiderstand (3,3 V) [Rot] | 180 Ω |
Vorwiderstand (3,3 V) [Grün] | 100 Ω |
Vorwiderstand (3,3 V) [Blau] | 100 Ω |
Vorwiderstand (5 V) [Rot] | 180 Ω |
Vorwiderstand (5 V) [Grün] | 100 Ω |
Vorwiderstand (5V) [Blau] | 100 Ω |
Pin-Belegung
Codebeispiel Raspberry Pi Pico
Anschlussbelegung Raspberry Pi Pico :
Raspberry Pi Pico | Sensor |
---|---|
GPIO27 | LED ROT |
GPIO28 | LED GRÜN |
GPIO26 | LED BLAU |
GND | GND |
Codebeispiel ON/OFF
Dieses Codebeispiel zeigt auf, wie die integrierten LEDs mittels eines definierbaren Ausgangspins abwechselnd, im 3 Sekunden Takt, gewechselt werden können.
# Bibliotheken laden
from machine import Pin, PWM
from time import sleep
# Initialisierung von GPIO26, GPIO27 und GPIO28 als Ausgang
Green = Pin(28, Pin.OUT)
Red = Pin(27, Pin.OUT)
Blue = Pin(26, Pin.OUT)
# Funktion: Die einzelnen verfügbaren Farben der LED werden nacheinander ein und ausgeschaltet
def solo():
Green.value(1)
Red.value(0)
Blue.value(0)
sleep(3)
Green.value(0)
Red.value(1)
Blue.value(0)
sleep(3)
Green.value(0)
Red.value(0)
Blue.value(1)
sleep(3)
Green.value(0)
Red.value(0)
Blue.value(0)
# Funktion: Die einzelnen verfügbaren Farben der LED werden nach einander Simultan geschaltet um mischfarben zu erzeugen
def mix():
Green.value(1)
Red.value(1)
Blue.value(0)
sleep(3)
Green.value(1)
Red.value(0)
Blue.value(1)
sleep(3)
Green.value(0)
Red.value(1)
Blue.value(1)
sleep(3)
Green.value(0)
Red.value(0)
Blue.value(0)
while True:
solo()
sleep(3)
mix()
Beispielprogramm ON/OFF Download:
Codebeispiel PWM
Mittels Puls-Weiten-Modulation [PWM] lässt sich die Helligkeit einer LED regulieren - dabei wird die LED in bestimmten Zeitintervallen ein und ausgeschaltet, wobei das Verhältnis der Einschalt- und Ausschaltzeit einer relativen Helligkeit entspricht. Aufgrund der Trägheit des menschlichen Sehvermögens, interpretieren die menschlichen Augen ein solches Ein-/Ausschaltverhalten als Helligkeitsänderung. Nähere Informationen zu diesem Thema finden Sie in diesem Artikel von mikrokontroller.net.
In diesem Modul sind mehrere LEDs integriert - durch die Überlagerung von unterschiedlichen Helligkeitsstufen lassen sich somit verschiedene Farben kreieren. Dies wird im folgenden Codebeispiel gezeigt.
# Bibliotheken laden
import machine
import math
# Initialisierung von GPIO26, GPIO27 und GPIO28 als PWM Pin
ledRed = machine.PWM(machine.Pin(27))
ledRed.freq(1000)
ledBlue = machine.PWM(machine.Pin(26))
ledBlue.freq(1000)
ledGreen = machine.PWM(machine.Pin(28))
ledGreen.freq(1000)
# Definierung einer 3 stelligen Liste
RBG = [0,0,0]
# Funktion: Farbraum berechnung für Rot, Grün und Blau | Grün ist 120° versetzt zu Rot | Blau ist 240° versetzt zu Rot
def sinColour(number):
a = (math.sin(math.radians(number))+1)*32768
b = (math.sin(math.radians(number+120))+1)*32768
c = (math.sin(math.radians(number+240))+1)*32768
RBG = (int(a),int(b),int(c))
return RBG
# Endlosschleife wo der Farbwert für alle 3 Farben immer wieder um 0.01 verschoben wird
a = 0
while True:
RBG = sinColour(a)
a += 0.01
if a == 360:
a = 0
ledRed.duty_u16(RBG[0])
ledBlue.duty_u16(RBG[1])
ledGreen.duty_u16(RBG[2])