Com utilitzar el mòdul LED RGB HW-478 i KY-009 amb Arduino Nano

Com Utilitzar El Modul Led Rgb Hw 478 I Ky 009 Amb Arduino Nano



Arduino Nano té un xip ATmega328 integrat que pot processar el codi Arduino. Arduino Nano té diversos pins GPIO amb els quals podem connectar diferents sensors, inclosos els LED RGB. En enviar un senyal PWM al pin LED RGB podem generar una sèrie de colors diferents. Aquest article tractarà la integració del LED RGB amb la placa Arduino Nano.

Introducció al LED RGB

Un LED RGB és un tipus de LED que és capaç d'emetre llum en diversos colors barrejant les intensitats de les longituds d'ona vermella, verda i blava. El senyal PWM (modulació d'amplada de pols) es pot utilitzar per crear diversos colors ajustant el cicle de treball del senyal PWM generat per als tres colors primaris.

Mòdul LED RGB

Hi ha diferents mòduls LED RGB disponibles com HW-478, KY-016 i KY-009. Farem servir el HW-478 Mòdul RGB. Els principis de funcionament de tots aquests mòduls són els mateixos.









HW-478 RGB El mòdul té les següents especificacions:



Especificacions Valor
Tensió de funcionament 5V màx
Vermell 1,8 V - 2,4 V
Verd 2,8 V - 3,6 V
Blau 2,8 V - 3,6 V
Corrent endavant 20mA - 30mA
Temperatura de funcionament -25 °C a 85 °C [-13 °F - 185 °F]
Dimensions del tauler 18,5 mm x 15 mm [0,728 polzades x 0,591 polzades]

Pinout LED RGB HW-478

A continuació es mostren els 4 pins del mòdul RGB:





Funcionament del LED RGB

Un LED RGB és un tipus de LED que pot emetre tres colors diferents de llum: vermell, verd i blau. El principi de funcionament d'un LED RGB amb Arduino consisteix a utilitzar la modulació d'amplada de pols (PWM) per controlar la intensitat de cada color.



En ajustar el cicle de treball del senyal PWM, l'Arduino pot canviar la quantitat de corrent que flueix per cada LED, fent que el LED emeti un color de llum diferent. Per exemple, si el cicle de treball del LED vermell s'estableix en un valor alt, el LED emetrà una llum vermella brillant. Si el cicle de treball del LED verd s'estableix en un valor baix, el LED emetrà una llum verda tènue. Combinant les intensitats dels tres colors, l'Arduino pot crear una àmplia gamma de colors diferents.

El valor del cicle de treball PWM d'Arduino varia entre 0 i 255. En assignar un valor PWM a qualsevol color, podem configurar-lo com a brillant o desactivar-lo completament. 0 correspon al LED apagat i 255 correspon a la brillantor total.

Com mostrar diversos colors en LED RGB

Per mostrar diversos colors, hem de definir els valors PWM per a tres colors primaris (RGB). Per mostrar qualsevol color primer hem de trobar el codi de color. A continuació es mostra la llista de codis de colors per a alguns dels colors principals:

Per trobar el codi de color es pot utilitzar Selector de colors de Google . Amb aquesta eina, també podem obtenir el valor HEX RGB per al color respectiu.

Ara avançarem cap a la interfície de LED RGB amb Arduino Nano.

Interfície LED RGB amb Arduino Nano

Per connectar el mòdul LED RGB amb Arduino Nano es necessiten els següents components:

  • Arduino Nano
  • Resistència de 3×220 Ohm (Ω).
  • Mòdul LED RGB HW-478
  • Cables de pont
  • Tauler
  • Arduino IDE

Esquemàtic
La imatge donada representa l'esquema d'Arduino Nano amb LED RGB.

Maquinari
El següent maquinari està dissenyat en una placa de prova. Es connecta una resistència a cada pin per protegir el circuit LED.

Codi
Obriu l'entorn integrat Arduino i pengeu el codi donat a la placa Arduino Nano:

int greenPin = 2 , redPin = 3 , pin blau = 4 ; /* Pins LED RGB definits */
configuració de buit ( ) {
 mode pin ( redPin, SORTIDA ) ; /* Pin vermell definit com sortida */
 mode pin ( greenPin, SORTIDA ) ; /* Pin verd definit com sortida */
 mode pin ( bluePin, SORTIDA ) ; /* Pin blau definit com sortida */
}
bucle buit ( ) {
Sortida_RGB ( 255 , 0 , 0 ) ; // Estableix el color RGB a Vermell
retard ( 1000 ) ;
Sortida_RGB ( 0 , 255 , 0 ) ; // Estableix el color RGB a llima
retard ( 1000 ) ;
Sortida_RGB ( 0 , 0 , 255 ) ; // Estableix el color RGB en blau
retard ( 1000 ) ;
Sortida_RGB ( 255 , 255 , 255 ) ; // Estableix el color RGB en blanc
retard ( 1000 ) ;
Sortida_RGB ( 128 , 0 , 0 ) ; // Estableix el color RGB a granat
retard ( 1000 ) ;
Sortida_RGB ( 0 , 128 , 0 ) ; // Estableix el color RGB en verd
retard ( 1000 ) ;
Sortida_RGB ( 128 , 128 , 0 ) ; // Estableix el color RGB en oliva
retard ( 1000 ) ;
Sortida_RGB ( 0 , 0 , 0 ) ; // Estableix el color RGB en negre
retard ( 1000 ) ;
}
void RGB_output ( int llum vermella, int llum verda, int llum blava )
{
analogWrite ( pin vermell, llum vermella ) ; // escriure valors analògics a RGB
analogWrite ( greenPin, greenlight ) ;
analogWrite ( pin blau, llum blava ) ;
}

Els primers pins RGB s'inicien per enviar el senyal PWM. El pin digital 2 s'inicialitza per al color verd i, de la mateixa manera, D2 i D3 s'inicialitzen per a color vermell i blau.

A la part del bucle del codi es defineixen diferents colors utilitzant el seu valor HEX RGB. Cadascun d'aquests valors descriu un senyal PWM.

A continuació a la void RGB_output() funció vam passar 3 nombres enters que estableixen diferents colors a la llum RGB. Per exemple, per al color blanc hem de passar 255 en cadascun dels tres paràmetres. Cada color primari vermell, blau i verd serà brillant al màxim, com a resultat, ens donarà color blanc a la sortida.

Sortida
Després de carregar el codi, veurem diferents colors al LED RGB. La imatge de sota ens mostra el color VERMELL.

Aquesta imatge representa el color verd.

Hem connectat el mòdul LED RGB amb l'Arduino Nano.

Conclusió

Arduino Nano és una placa compacta que es pot integrar amb diferents sensors. Aquí hem utilitzat un LED RGB amb Arduino Nano i l'hem programat per mostrar diversos colors mitjançant un senyal PWM d'un pin digital Arduino Nano. Per obtenir més descripció de RGB llegiu l'article.