Sådan bruges RGB LED-modul HW-478 og KY-009 med Arduino Nano

Sadan Bruges Rgb Led Modul Hw 478 Og Ky 009 Med Arduino Nano



Arduino Nano har indbygget ATmega328-chip, der kan behandle Arduino-kode. Arduino Nano har flere GPIO-ben, som vi kan bruge til at forbinde forskellige sensorer inklusive RGB-LED'er. Ved at sende et PWM-signal til RGB LED-stiften kan vi generere en række forskellige farver. Denne artikel vil dække integration af RGB LED med Arduino Nano-kort.

Introduktion til RGB LED

En RGB LED er en type LED, der er i stand til at udsende lys i forskellige farver ved at blande intensiteterne af de røde, grønne og blå bølgelængder. PWM-signalet (Pulse Width Modulation) kan bruges til at skabe flere farver ved at justere arbejdscyklussen for det genererede PWM-signal for de tre primære farver.

RGB LED-modul

Forskellige RGB LED-moduler er tilgængelige som HW-478, KY-016 og KY-009. Vi vil bruge HW-478 RGB modul. Arbejdsprincipperne for alle disse moduler er de samme.









HW-478 RGB modul har følgende specifikation:



specifikationer Værdi
Driftsspænding 5V maks
Rød 1,8V – 2,4V
Grøn 2,8V – 3,6V
Blå 2,8V – 3,6V
Fremstrøm 20mA – 30mA
Driftstemperatur -25°C til 85°C [-13°F – 185°F]
Bordets dimensioner 18,5 mm x 15 mm [0,728in x 0,591in]

RGB LED HW-478 Pinout

Følgende er de 4 ben i RGB-modulet:





Virker af RGB LED

En RGB LED er en type LED, der kan udsende tre forskellige farver lys: rød, grøn og blå. Arbejdsprincippet for en RGB LED med Arduino involverer brug af pulsbreddemodulation (PWM) til at kontrollere intensiteten af ​​hver farve.



Ved at justere PWM-signalets driftscyklus kan Arduino ændre mængden af ​​strøm, der flyder gennem hver LED, hvilket får LED'en til at udsende en anden lysfarve. For eksempel, hvis den røde LED's driftscyklus er indstillet til en høj værdi, vil LED'en udsende et stærkt rødt lys. Hvis duty cycle for den grønne LED er indstillet til en lav værdi, vil LED'en udsende et svagt grønt lys. Ved at kombinere intensiteterne af de tre farver, kan Arduino skabe en bred vifte af forskellige farver.

Arduino PWM duty cycle værdien varierer mellem 0 og 255. Ved at tildele en PWM værdi til en hvilken som helst farve, kan vi enten indstille den som fuld lys eller slå den helt fra. 0 svarer til LED slukket og 255 svarer til fuld lysstyrke.

Sådan viser du flere farver i RGB LED

For at vise flere farver skal vi definere PWM-værdierne for tre primærfarver (RGB). For at vise en hvilken som helst farve først, skal vi finde farvekoden. Følgende er farvekodelisten for nogle af hovedfarverne:

For at finde farvekoden kan man bruge Google Farvevælger . Ved at bruge dette værktøj kan vi også få HEX RGB-værdien for den respektive farve.

Nu vil vi bevæge os mod grænsefladen af ​​RGB LED med Arduino Nano.

Grænseflade RGB LED med Arduino Nano

For at forbinde RGB LED-modul med Arduino Nano er følgende komponenter nødvendige:

  • Arduino Nano
  • 3×220 Ohm (Ω) modstand
  • RGB LED-modul HW-478
  • Jumper ledninger
  • Brødbræt
  • Arduino IDE

Skematisk
Det givne billede repræsenterer skemaet af Arduino Nano med RGB LED.

Hardware
Følgende hardware er designet på et brødbræt. En modstand er forbundet til hver ben til beskyttelse af LED-kredsløbet.

Kode
Åbn Arduino integreret miljø og upload givet kode til Arduino Nano board:

int greenPin = 2 , redPin = 3 , bluePin = 4 ; /* RGB LED-stifter defineret */
ugyldig opsætning ( ) {
 pin-tilstand ( redPin, OUTPUT ) ; /* Rød pin defineret som produktion */
 pin-tilstand ( greenPin, OUTPUT ) ; /* Grøn pin defineret som produktion */
 pin-tilstand ( bluePin, OUTPUT ) ; /* Blå pin defineret som produktion */
}
ugyldig løkke ( ) {
RGB_output ( 255 , 0 , 0 ) ; // Indstil RGB-farven til Rød
forsinke ( 1000 ) ;
RGB_output ( 0 , 255 , 0 ) ; // Indstil RGB-farven til lime
forsinke ( 1000 ) ;
RGB_output ( 0 , 0 , 255 ) ; // Indstil RGB-farven til blå
forsinke ( 1000 ) ;
RGB_output ( 255 , 255 , 255 ) ; // Indstil RGB-farve til hvid
forsinke ( 1000 ) ;
RGB_output ( 128 , 0 , 0 ) ; // Indstil RGB-farven til rødbrun
forsinke ( 1000 ) ;
RGB_output ( 0 , 128 , 0 ) ; // Indstil RGB-farven til grøn
forsinke ( 1000 ) ;
RGB_output ( 128 , 128 , 0 ) ; // Indstil RGB-farven til oliven
forsinke ( 1000 ) ;
RGB_output ( 0 , 0 , 0 ) ; // Indstil RGB-farve til sort
forsinke ( 1000 ) ;
}
ugyldig RGB_output ( int redLight, int greenLight, int blueLight )
{
analogSkriv ( redPin, redLight ) ; // skrive analoge værdier til RGB
analogSkriv ( greenPin, greenLight ) ;
analogSkriv ( bluePin, blåLys ) ;
}

De første RGB-ben initialiseres til at sende PWM-signalet. Digital pin 2 initialiseres til grøn farve og på samme måde initialiseres D2 og D3 til rød og blå farve.

I loop-delen af ​​koden er forskellige farver defineret ved hjælp af deres HEX RGB-værdi. Hver af disse værdier beskriver et PWM-signal.

Næste i ugyldig RGB_output() funktion passerede vi 3 heltal, der satte forskellige farver på RGB-lys. For eksempel skal vi for hvid farve passere 255 i hver af tre parametre. Hver primær farve rød, blå og grøn vil være lys til sin fulde værdi som et resultat, hvilket giver os hvid farve i output.

Produktion
Efter upload af kode vil vi se forskellige farver på RGB LED. Nedenstående billede viser os den RØDE farve.

Dette billede repræsenterer farven grøn.

Vi har sammenkoblet RGB LED-modulet med Arduino Nano.

Konklusion

Arduino Nano er et kompakt board, der kan integreres med forskellige sensorer. Her har vi brugt en RGB LED med Arduino Nano og programmeret den til at vise flere farver ved hjælp af et PWM-signal fra en Arduino Nano digital pin. For mere beskrivelse af RGB læs artiklen.