Come usare un LED RGB con Arduino / Tutorial

In questo tutorial su Arduino impareremo cos’è il LED RGB e come usarlo con la scheda Arduino. Puoi guardare il seguente video o leggere il tutorial scritto qui sotto.

Che cosa è RGB LED?

Il LED RGB può emettere diversi colori mescolando i 3 colori di base rosso, verde e blu. Quindi in realtà è costituito da 3 LED separati rosso, verde e blu confezionati in un unico caso. Ecco perché ha 4 cavi, un cavo per ciascuno dei 3 colori e un catodo o anodo comune a seconda del tipo di LED RGB. In questo tutorial userò un catodo comune.

RGB-LED

Componenti necessari per questo tutorial

È possibile ottenere i componenti da uno qualsiasi dei siti di seguito:

  • RGB LED…………………………………….. Amazon / Bangggod / AliExpress
  • 3×220 Ohm Resistenze……………….. Amazon / Banggood / AliExpress
  • Arduino …………………………… Amazon / Banggood / AliExpress
  • Breadboard e Saltare i Fili ……… Amazon / Banggood / AliExpress

Disclosure: Questi sono link di affiliazione. Come socio Amazon guadagno dagli acquisti di qualificazione.

Arduino e RGB LED Circuito Schemi

Il catodo sarà collegato a terra e il 3 anodi sarà collegato attraverso 220 Ohm resistenze a 3 pin digitali sulla scheda Arduino in grado di fornire segnale PWM. Useremo PWM per simulare l’uscita analogica che fornirà diversi livelli di tensione ai LED in modo da poter ottenere i colori desiderati.  Arduino RGB LED-Schema elettrico

Useremo PWM per simulare l’uscita analogica che fornirà diversi livelli di tensione ai LED in modo da poter ottenere i colori desiderati.

PWM-and-Color-Table

Codice sorgente

Ora vediamo lo schizzo di Arduino. Userò i pin numero 7, 6 e 5 e li nominerò redPin, greenPin e bluePin. Nella sezione setup dobbiamo definirli come output. Nella parte inferiore dello schizzo abbiamo questa funzione personalizzata denominata setColor () che richiede 3 diversi argomenti redValue, greenValue e blueValue. Questi argomenti rappresentano la luminosità dei LED o il ciclo di lavoro del segnale PWM che viene creato utilizzando la funzione analogWrite (). Questi valori possono variare da 0 a 255 che rappresenta il duty cycle 100% del segnale PWM o la luminosità massima del LED.

int redPin= 7;int greenPin = 6;int bluePin = 5;void setup() { pinMode(redPin, OUTPUT); pinMode(greenPin, OUTPUT); pinMode(bluePin, OUTPUT);}void loop() { setColor(255, 0, 0); // Red Color delay(1000); setColor(0, 255, 0); // Green Color delay(1000); setColor(0, 0, 255); // Blue Color delay(1000); setColor(255, 255, 255); // White Color delay(1000); setColor(170, 0, 255); // Purple Color delay(1000);}void setColor(int redValue, int greenValue, int blueValue) { analogWrite(redPin, redValue); analogWrite(greenPin, greenValue); analogWrite(bluePin, blueValue);}

Così ora nella funzione loop faremo il nostro programma che cambierà il colore del LED ogni secondo. Per ottenere la luce rossa sul LED chiameremo la funzione setColor () e imposteremo il valore di 255 per l’argomento redValue e 0 per gli altri due. Rispettivamente possiamo ottenere gli altri due colori di base, verde e blu. Per ottenere altri colori dobbiamo mescolare i valori degli argomenti. Quindi, ad esempio, se impostiamo tutti e 3 i LED alla massima luminosità otterremo il colore bianco e otterremo un colore viola se impostiamo i seguenti valori agli argomenti: 170 redValue, 0 greenValue e 255 blueValue. Ecco la dimostrazione dello schizzo.