KY-009 Module led RGB
Module LED qui contient une LED rouge, bleue et verte. Ceux-ci sont reliés entre eux par une cathode commune.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Ce module LED contient trois LED différentes de couleur rouge, bleue et verte. Ces trois LED sont reliées entre elles par une cathode commune, ce qui signifie qu'elles partagent toutes la même connexion négative. La LED rouge a besoin d'une tension de 1,8 V pour s'allumer, tandis que les LED verte et bleue ont besoin d'une tension de 2,8 V chacune. Toutes les LED fonctionnent avec un courant de 20 mA.
Ce module permet de créer de multiples combinaisons de couleurs en adaptant la luminosité de chaque LED. En mélangeant le rouge, le vert et le bleu, il est possible de créer presque toutes les couleurs du spectre visible. Ce module est idéal pour les projets nécessitant des signaux visuels, des affichages ou des effets lumineux décoratifs.
Sa conception compacte permet de l'intégrer facilement dans différents circuits et projets. Que vous soyez un débutant ou un développeur expérimenté, ce module LED offre une solution flexible et polyvalente à vos besoins d'éclairage. Grâce à la clarté de la sortie couleur et à la simplicité du contrôle, vous pouvez réaliser des installations d'éclairage créatives et impressionnantes.
Données techniques | |
---|---|
Tension directe [rouge] | 1,8 V |
Tension directe [vert, bleu] | 2,8 V |
Courant de passage | 20 mA |
Les désignations (Vf et If) font référence à la tension directe et au courant direct de la diode électroluminescente.
Résistances en série :
Selon la couleur commandée, d'autres résistances en série sont nécessaires.
Tension d'entrée | Résistance en série |
---|---|
Rouge | 180 Ω |
Vert | 100 Ω |
Bleu | 100 Ω |
Affectation des broches
Arduino | Capteur |
---|---|
Pin 10 | LED ROUGE |
Pin 11 | LED VERT |
Pin 12 | LED BLEU |
GND | GND |
1. Exemple de code: ON/OFF
Cet exemple de code montre comment les LED intégrées peuvent être changées en alternance, toutes les 3 secondes, au moyen d'une broche de sortie définissable.
Pour charger l'exemple de code suivant sur votre Arduino, nous vous recommandons d'utiliser l'IDE Arduino. Dans l'IDE, vous pouvez choisir le port et la carte qui conviennent à votre appareil.
Copiez le code ci-dessous dans votre IDE. Pour télécharger le code sur votre Arduino, il vous suffit de cliquer sur le bouton " Upload ".
int led_red = 10; // Pin pour le rouge
int led_green = 11; // Pin pour le vert
int led_blue = 12; // Pin pour le bleu
void setup() {
// Initialisation des broches de sortie pour les LEDs
pinMode(led_red, OUTPUT);
pinMode(led_green, OUTPUT);
pinMode(led_blue, OUTPUT);
}
// Boucle du programme principal
void loop () {
digitalWrite(led_red, HIGH); // la LED rouge s'allume
digitalWrite(led_green, LOW); // la LED verte s'éteint
digitalWrite(led_blue, LOW); // la LED bleue est éteinte
delay(3000); // Attendre 3 secondes
digitalWrite(led_red, LOW); // la LED rouge est éteinte
digitalWrite(led_green, HIGH); // la LED verte s'allume
digitalWrite(led_blue, LOW); // la LED bleue est éteinte
delay(3000); // Attendre 3 secondes
digitalWrite(led_red, LOW); // la LED rouge est éteinte
digitalWrite(led_green, LOW); // la LED verte s'éteint
digitalWrite(led_blue, HIGH); // la LED bleue s'allume
delay(3000); // Attendre 3 secondes
}
2. Exemple de code: PWM
La modulation de largeur d'impulsion [PWM] peut être utilisée pour réguler la luminosité d'une LED - la LED est allumée et éteinte à des intervalles de temps spécifiques, le rapport entre les temps d'allumage et d'extinction correspondant à une luminosité relative - en raison de l'inertie de la vision humaine, les yeux humains interprètent ce comportement d'allumage/extinction comme un changement de luminosité. Pour plus d'informations sur ce sujet, consultez cet article de mikrokontroller.net.
Plusieurs LED sont intégrées dans ce module. En superposant différents niveaux de luminosité, il est donc possible de créer différentes couleurs. Ceci est illustré dans l'exemple de code suivant.
Pour charger l'exemple de code suivant sur votre Arduino, nous vous recommandons d'utiliser l'IDE Arduino. Dans l'IDE, vous pouvez choisir le port et la carte qui conviennent à votre appareil.
Copiez le code ci-dessous dans votre IDE. Pour télécharger le code sur votre Arduino, il vous suffit de cliquer sur le bouton " Upload ".
int led_red = 10; // Pin pour le rouge
int led_green = 11; // Pin pour le vert
int led_blue = 12; // Pin pour le bleu
void setup() {
// Initialisation des broches de sortie pour les LEDs
pinMode(led_red, OUTPUT);
pinMode(led_green, OUTPUT);
pinMode(led_blue, OUTPUT);
}
void loop() {
// Dans une boucle For, différentes valeurs PWM sont transmises aux trois LED.
// Il en résulte un dégradé de couleurs dans lequel, en mélangeant les différents niveaux de luminosité, on obtient des couleurs différentes.
// des niveaux de luminosité des deux LED intégrées, différentes couleurs apparaissent
for(int i = 255; i > 0; i--) {
analogWrite(led_blue, i);
analogWrite(led_green, 255 - i);
analogWrite(led_red, 128 - i);
delay(10);
}
// Dans la deuxième boucle For, le dégradé de couleurs est parcouru à l'envers
for(int i = 0; i < 255; i++) {
analogWrite(led_blue, i);
analogWrite(led_green, 255 - i);
analogWrite(led_red, 128 - i);
delay(10);
}
}
Ce module LED contient trois LED différentes de couleur rouge, bleue et verte. Ces trois LED sont reliées entre elles par une cathode commune, ce qui signifie qu'elles partagent toutes la même connexion négative. La LED rouge a besoin d'une tension de 1,8 V pour s'allumer, tandis que les LED verte et bleue ont besoin d'une tension de 2,8 V chacune. Toutes les LED fonctionnent avec un courant de 20 mA.
Ce module permet de créer de multiples combinaisons de couleurs en adaptant la luminosité de chaque LED. En mélangeant le rouge, le vert et le bleu, il est possible de créer presque toutes les couleurs du spectre visible. Ce module est idéal pour les projets nécessitant des signaux visuels, des affichages ou des effets lumineux décoratifs.
Sa conception compacte permet de l'intégrer facilement dans différents circuits et projets. Que vous soyez un débutant ou un développeur expérimenté, ce module LED offre une solution flexible et polyvalente à vos besoins d'éclairage. Grâce à la clarté de la sortie couleur et à la simplicité du contrôle, vous pouvez réaliser des installations d'éclairage créatives et impressionnantes.
Données techniques | |
---|---|
Tension directe [rouge] | 1,8 V |
Tension directe [vert, bleu] | 2,8 V |
Courant de passage | 20 mA |
Les désignations (Vf et If) font référence à la tension directe et au courant direct de la diode électroluminescente.
Résistances en série :
En fonction de la tension d'entrée, des résistances en série sont nécessaires..
La désignation (Rf) désigne ici la résistance en série nécessaire devant la diode électroluminescente en fonction de la tension appliquée.
Tension d'entrée | Résistance en série |
---|---|
3,3 V [Rouge] | 180 Ω |
3,3 V [Vert] | 100 Ω |
3,3 V [Bleu] | 100 Ω |
5 V [Rouge] | 180 Ω |
5 V [Vert] | 100 Ω |
5V [Bleu] | 100 Ω |
Affectation des broches
Raspberry Pi | Capteur |
---|---|
GPIO 25 [Pin 22] | LED ROUGE |
GPIO 24 [Pin 18] | LED VERT |
GPIO 23 [Pin 16] | LED BLEU |
GND [Pin 6] | GND |
Exemple de code (ON/OFF)
Cet exemple de code montre comment les DEL intégrées peuvent être changées alternativement dans un cycle de 3 secondes au moyen d'une broche de sortie définissable.
from gpiozero import LED
import time
# Déclaration des LEDs sur leurs broches GPIO correspondantes
led_rouge = LED(25)
led_vert = LED(24)
led_bleue = LED(23)
print("Test de la LED [appuyez sur CTRL+C pour terminer le test]")
# Boucle du programme principal
try:
while True:
print("LED ROUGE allumée pendant 3 secondes")
led_rouge.on()
led_vert.off()
led_bleue.off()
time.sleep(3) # Mode d'attente pendant 3 secondes
print("LED VERT allumée pendant 3 secondes")
led_rouge.off()
led_vert.on()
led_bleue.off()
time.sleep(3) # Mode d'attente pendant 3 secondes
print("LED BLEUE allumée pendant 3 secondes")
led_rouge.off()
led_vert.off()
led_bleue.on()
time.sleep(3) # Mode d'attente pendant 3 secondes
# Retravailler après la fin du programme
except KeyboardInterrupt:
print("Programme terminé par l'utilisateur")
# gpiozero s'occupe automatiquement du nettoyage à la fin du programme
Exemple de code (PWM)
La modulation de largeur d'impulsion [PWM] permet de réguler la luminosité d'une LED - la LED est allumée et éteinte dans certains intervalles de temps, le rapport entre le temps d'allumage et le temps d'extinction correspondant à une luminosité relative - en raison de l'inertie de la vision humaine, les yeux humains interprètent ce comportement d'allumage/extinction comme un changement de luminosité. Pour plus d'informations sur ce sujet, consultez cet article de mikrokontroller.net.
Plusieurs LED sont intégrées dans ce module. En superposant différents niveaux de luminosité, il est donc possible de créer différentes couleurs. Ceci est illustré dans l'exemple de code suivant. Dans le Raspberry Pi, seul un canal PWM matériel n'est pas limité aux broches GPIO, c'est pourquoi cet exemple utilise un PWM logiciel.
from gpiozero import PWMLED
import time
import random
# Définition des PWMLED pour chaque couleur
led_rouge = PWMLED(25)
led_vert = PWMLED(24)
led_bleue = PWMLED(23)
# Cette fonction génère la couleur proprement dite
# L'intensité de la couleur peut être modifiée à l'aide de la variable de couleur correspondante.
# Après avoir défini la couleur, "time.sleep" définit la durée d'affichage de la couleur en question.
def led_farbe(rouge, vert, bleue, pause):
led_rouge.value = rouge
led_vert.value = vert
led_bleue.value = bleue
time.sleep(pause)
# Remise à zéro après le passage
led_rouge.value = 0
led_vert.value = 0
led_bleue.value = 0
print("Test de la LED [appuyez sur CTRL+C pour terminer le test]")
# Boucle du programme principal :
# Elle a pour tâche de créer une variable pour chaque couleur individuelle et de parcourir, au moyen d'une boucle For, l'intensité de chaque couleur individuelle de 0 à 100%.
# Le mélange des différents niveaux de luminosité de chaque couleur crée ainsi un dégradé de couleurs.
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):
# Réglage de la couleur de la LED en fonction du passage actuel de la boucle
led_farbe(x * i / 100, y * i / 100, z * i / 100, 0.02)
# Nettoyage après la fin du programme
except KeyboardInterrupt:
print("Programme terminé par l'utilisateur")
Ce module LED contient trois LED différentes de couleur rouge, bleue et verte. Ces trois LED sont reliées entre elles par une cathode commune, ce qui signifie qu'elles partagent toutes la même connexion négative. La LED rouge a besoin d'une tension de 1,8 V pour s'allumer, tandis que les LED verte et bleue ont besoin d'une tension de 2,8 V chacune. Toutes les LED fonctionnent avec un courant de 20 mA.
Ce module permet de créer de multiples combinaisons de couleurs en adaptant la luminosité de chaque LED. En mélangeant le rouge, le vert et le bleu, il est possible de créer presque toutes les couleurs du spectre visible. Ce module est idéal pour les projets nécessitant des signaux visuels, des affichages ou des effets lumineux décoratifs.
Sa conception compacte permet de l'intégrer facilement dans différents circuits et projets. Que vous soyez un débutant ou un développeur expérimenté, ce module LED offre une solution flexible et polyvalente à vos besoins d'éclairage. Grâce à la clarté de la sortie couleur et à la simplicité du contrôle, vous pouvez réaliser des installations d'éclairage créatives et impressionnantes.
Données techniques | |
---|---|
Tension directe [rouge] | 1,8 V |
Tension directe [vert, bleu] | 2,8 V |
Courant de passage | 20 mA |
Les désignations (Vf et If) font référence à la tension directe et au courant direct de la diode électroluminescente.
Résistances en série :
En fonction de la tension d'entrée, des résistances en série sont nécessaires..
La désignation (Rf) désigne ici la résistance en série nécessaire devant la diode électroluminescente en fonction de la tension appliquée.
Tension d'entrée | Résistance en série |
---|---|
3,3 V [Rouge] | 180 Ω |
3,3 V [Vert] | 100 Ω |
3,3 V [Bleu] | 100 Ω |
5 V [Rouge] | 180 Ω |
5 V [Vert] | 100 Ω |
5V [Bleu] | 100 Ω |
Affectation des broches
Micro:Bit | Capteur |
---|---|
Pin 1 | LED ROUGE |
Pin 2 | LED VERT |
Pin 0 | LED BLEU |
GND | GND |
Exemple de code
Ceci est un exemple MakeCode pour Micro:Bit qui fait essentiellement la même chose que les deux autres exemples. Cependant, cet exemple est plus proche de celui du Raspberry Pi que de celui de l'Arduino..
Cet exemple allume les DEL en fonction du bouton sur lequel on appuie.
input.onButtonPressed(Button.A, function () {
pins.digitalWritePin(DigitalPin.P2, 1)
pins.digitalWritePin(DigitalPin.P0, 0)
pins.digitalWritePin(DigitalPin.P1, 0)
})
input.onButtonPressed(Button.AB, function () {
pins.digitalWritePin(DigitalPin.P1, 1)
pins.digitalWritePin(DigitalPin.P2, 0)
pins.digitalWritePin(DigitalPin.P0, 0)
})
input.onButtonPressed(Button.B, function () {
pins.digitalWritePin(DigitalPin.P0, 1)
pins.digitalWritePin(DigitalPin.P2, 0)
pins.digitalWritePin(DigitalPin.P1, 0)
})
Téléchargement d'un exemple de programme
Ce module LED contient trois LED différentes de couleur rouge, bleue et verte. Ces trois LED sont reliées entre elles par une cathode commune, ce qui signifie qu'elles partagent toutes la même connexion négative. La LED rouge a besoin d'une tension de 1,8 V pour s'allumer, tandis que les LED verte et bleue ont besoin d'une tension de 2,8 V chacune. Toutes les LED fonctionnent avec un courant de 20 mA.
Ce module permet de créer de multiples combinaisons de couleurs en adaptant la luminosité de chaque LED. En mélangeant le rouge, le vert et le bleu, il est possible de créer presque toutes les couleurs du spectre visible. Ce module est idéal pour les projets nécessitant des signaux visuels, des affichages ou des effets lumineux décoratifs.
Sa conception compacte permet de l'intégrer facilement dans différents circuits et projets. Que vous soyez un débutant ou un développeur expérimenté, ce module LED offre une solution flexible et polyvalente à vos besoins d'éclairage. Grâce à la clarté de la sortie couleur et à la simplicité du contrôle, vous pouvez réaliser des installations d'éclairage créatives et impressionnantes.
Données techniques | |
---|---|
Tension directe [rouge] | 1,8 V |
Tension directe [vert, bleu] | 2,8 V |
Courant de passage | 20 mA |
Les désignations (Vf et If) font référence à la tension directe et au courant direct de la diode électroluminescente.
Résistances en série :
En fonction de la tension d'entrée, des résistances en série sont nécessaires..
La désignation (Rf) désigne ici la résistance en série nécessaire devant la diode électroluminescente en fonction de la tension appliquée.
Tension d'entrée | Résistance en série |
---|---|
Rouge | 180 Ω |
Vert | 100 Ω |
Bleu | 100 Ω |
Affectation des broches
Raspberry Pi Pico | Capteur |
---|---|
GPIO27 | LED ROUGE |
GPIO28 | LED VERT |
GPIO26 | LED BLEU |
GND | GND |
1. Exemple de code: ON/OFF
Cet exemple de code montre comment les DEL intégrées peuvent être changées alternativement, toutes les 3 secondes, au moyen d'une broche de sortie définissable.
Pour charger l'exemple de code suivant sur votre Pico, nous vous recommandons d'utiliser l'IDE Thonny. Il vous suffit de commencer par sélectionner Run > Configure interpreter ... > Interpreter > Which kind of interpreter should Thonny use for running your code? > MicroPython (Raspberry Pi Pico).
Copiez maintenant le code ci-dessous dans votre IDE et cliquez sur Run.
# Charger des bibliothèques
from machine import Pin, PWM
from time import sleep
# Initialisation de GPIO26, GPIO27 et GPIO28 comme sortie
Green = Pin(28, Pin.OUT)
Red = Pin(27, Pin.OUT)
Blue = Pin(26, Pin.OUT)
while True:
# lumière verte
Green.value(1)
Red.value(0)
Blue.value(0)
sleep(3)
# lumière rouge
Green.value(0)
Red.value(1)
Blue.value(0)
sleep(3)
# lumière bleue
Green.value(0)
Red.value(0)
Blue.value(1)
sleep(3)
# Éteindre la LED
Green.value(0)
Red.value(0)
Blue.value(0)
sleep(3)
# lumière jaune
Green.value(1)
Red.value(1)
Blue.value(0)
sleep(3)
# lumière turquoise
Green.value(1)
Red.value(0)
Blue.value(1)
sleep(3)
# rose lumière
Green.value(0)
Red.value(1)
Blue.value(1)
sleep(3)
# Éteindre la LED
Green.value(0)
Red.value(0)
Blue.value(0)
sleep(3)
2. Exemple de code: PWM
La modulation de la largeur d'impulsion (PWM) permet de régler la luminosité d'une LED. Dans ce processus, la LED est allumée et éteinte à des intervalles de temps spécifiques, le rapport entre les temps d'allumage et d'extinction correspondant à une luminosité relative. En raison de l'inertie de la vision humaine, les yeux humains interprètent ce comportement marche/arrêt comme un changement de luminosité. Vous trouverez de plus amples informations à ce sujet dans cet article de mikrokontroller.net.
Plusieurs LED sont intégrées dans ce module - il est donc possible de créer différentes couleurs en superposant différents niveaux de luminosité. Ceci est illustré dans l'exemple de code suivant.
Pour charger l'exemple de code suivant sur votre Pico, nous vous recommandons d'utiliser l'IDE Thonny. Il vous suffit de commencer par sélectionner Run > Configure interpreter ... > Interpreter > Which kind of interpreter should Thonny use for running your code? > MicroPython (Raspberry Pi Pico).
Copiez maintenant le code ci-dessous dans votre IDE et cliquez sur Run.
# Charger les bibliothèques
import machine
import math
# Initialisation de GPIO26, GPIO27 et GPIO28 comme broche PWM
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)
# Définition d'une liste de 3 chiffres
RBG = [0,0,0]
# Fonction : Calcul de l'espace couleur pour le rouge, le vert et le bleu
# Le vert est décalé de 120° par rapport au rouge
# Le bleu est décalé de 240° par rapport au rouge
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
# Boucle sans fin où la valeur de la couleur pour les 3 couleurs est décalée encore et encore de 0,01.
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])