Sei sulla pagina 1di 29

(Imad Chatraoui, 2AI, 2022/2023)

Indice generale
1. IL LED RGB................................................................................................................................2
1.1 Spiegazione Esercizio...........................................................................................................2
1.2 Procedimento....................................................................................................................2
1.3 Componenti utilizzati..................................................................................................3
1.4 Circuito...................................................................................................................3
1.5 Schema di collegamento....................................................................................4
Codice:.............................................................................................................................................4
2. IL LED RGB a dissolvenza.........................................................................................................7
1.1 Spiegazione Esercizio...........................................................................................................7
1.2 Procedimento....................................................................................................................7
1.3 Componenti utilizzati..................................................................................................8
1.4 Circuito...................................................................................................................8
1.5 Schema di collegamento....................................................................................8
Tabella di traccia(5 iterazioni del primo ciclo for)........................................................................11
3. UTILIZZARE IL LED RGB.....................................................................................................13
1.1 Spiegazione Esercizio.........................................................................................................13
1.2 Procedimento..................................................................................................................13
1.3 Componenti utilizzati................................................................................................14
1.4 Circuito.................................................................................................................14
1.5 Schema di collegamento..................................................................................15
4. UTILIZZARE IL POTENZIOMETRO_a.................................................................................18
1.1 Spiegazione Esercizio.........................................................................................................18
1.2 Procedimento..................................................................................................................18
1.3 Componenti utilizzati................................................................................................19
1.4 Circuito.................................................................................................................19
1.5 Schema di collegamento..................................................................................20
Codice:...........................................................................................................................................20
5. UTILIZZARE IL POTENZIOMETRO_b.................................................................................21
1.1 Spiegazione Esercizio.........................................................................................................21
1.2 Procedimento..................................................................................................................22
1.3 Componenti utilizzati................................................................................................22
1.4 Circuito.................................................................................................................23
1.5 Schema di collegamento..................................................................................23
Glossario........................................................................................................................................24

1
(Imad Chatraoui, 2AI, 2022/2023)

1. IL LED RGB

1.1 Spiegazione Esercizio

Il circuito descritto utilizza un LED RGB1 e un microcontrollore Arduino Uno


per ciclare attraverso i sette colori richiesti (blu, verde, ciano, rosso, viola,
giallo, bianco). Il codice caricato sul microcontrollore definisce una
sequenza di impostazioni di uscita per i tre canali di colore del LED RGB
(rosso, verde e blu), che vengono variati per produrre i diversi colori.

1.2 Procedimento

• Posiziona il LED RGB sulla breadboard. Accertati che il catodo del


LED sia posizionato nel lato della breadboard che sarà collegato alle
resistenze.

• Inserisci una resistenza da 220 ohm su ciascuna delle tre colonne


adiacenti alla colonna del catodo del LED RGB. Le resistenze
devono essere collegate alla breadboard nella stessa riga del catodo
del LED RGB.

• Collega il pin anodo (comune) del LED RGB al pin 5V dell'Arduino.

• Collega i pin catodo del LED RGB ai pin digitali che desideri
dell'Arduino tramite le resistenze. L'estremità opposta delle
resistenze va collegata ai pin dell'Arduino.

2
(Imad Chatraoui, 2AI, 2022/2023)

1.3 Componenti utilizzati

1.4 Circuito

3
(Imad Chatraoui, 2AI, 2022/2023)

1.5 Schema di collegamento

Codice:
/*

Lezione 12: Come utilizzare un led RGB

creato 23 Oct 2019

by Andrea Primavera

*/

int pinR = 4;

int pinG = 3;

4
(Imad Chatraoui, 2AI, 2022/2023)

int pinB = 2;

void setup() {

pinMode(pinR, OUTPUT);

pinMode(pinG, OUTPUT);

pinMode(pinB, OUTPUT);

void loop() {

// OFF

digitalWrite(pinR,LOW);

digitalWrite(pinG,LOW);

digitalWrite(pinB,LOW);

delay(1000);

// BLU

digitalWrite(pinR,LOW);

digitalWrite(pinG,LOW);

digitalWrite(pinB,HIGH);

delay(1000);

// VERDE

digitalWrite(pinR,LOW);

5
(Imad Chatraoui, 2AI, 2022/2023)

digitalWrite(pinG,HIGH);

digitalWrite(pinB,LOW);

delay(1000);

// CIANO

digitalWrite(pinR,LOW);

digitalWrite(pinG,HIGH);

digitalWrite(pinB,HIGH);

delay(1000);

// ROSSO

digitalWrite(pinR,HIGH);

digitalWrite(pinG,LOW);

digitalWrite(pinB,LOW);

delay(1000);

// VIOLA

digitalWrite(pinR,HIGH);

digitalWrite(pinG,LOW);

digitalWrite(pinB,HIGH);

delay(1000);

// GIALLO

6
(Imad Chatraoui, 2AI, 2022/2023)

digitalWrite(pinR,HIGH);

digitalWrite(pinG,HIGH);

digitalWrite(pinB,LOW);

delay(1000);

// BIANCO

digitalWrite(pinR,HIGH);

digitalWrite(pinG,HIGH);

digitalWrite(pinB,HIGH);

delay(1000);

2. IL LED RGB a dissolvenza

1.1 Spiegazione Esercizio

Un LED RGB a dissolvenza è un tipo di circuito che consente di controllare


l'intensità luminosa dei tre LED monocromatici (rosso, verde e blu) del LED RGB,

7
(Imad Chatraoui, 2AI, 2022/2023)

generando una serie di effetti di dissolvenza graduale tra i diversi colori primari e
le loro sfumature.

In pratica, il circuito varia l'intensità della corrente che attraversa i tre LED in
modo sincronizzato per alterare la frequenza e la durata dei segnali di
alimentazione che vengono inviati ai LED.

1.2 Procedimento

Il Procedimento per creare il circuito e identico all’esercizio precedente (cambia


solamente il codice):

• Posiziona il LED RGB sulla breadboard. Accertati che il catodo del LED sia
posizionato nel lato della breadboard che sarà collegato alle resistenze.

• Inserisci una resistenza da 220 ohm su ciascuna delle tre colonne adiacenti
alla colonna del catodo del LED RGB. Le resistenze devono essere collegate
alla breadboard nella stessa riga del catodo del LED RGB.

• Collega il pin anodo (comune) del LED RGB al pin 5V dell'Arduino.

• Collega i pin catodo del LED RGB ai pin digitali che desideri dell'Arduino
tramite le resistenze. L'estremità opposta delle resistenze va collegata ai pin
dell'Arduino.

8
(Imad Chatraoui, 2AI, 2022/2023)

1.3 Componenti utilizzati

1.4 Circuito

1.5 Schema di collegamento

9
(Imad Chatraoui, 2AI, 2022/2023)

Codice:

int rossoPin = 4;

int verdePin = 3;

int bluPin = 2;

void setup(){

pinMode(rossoPin, OUTPUT);

pinMode(verdePin, OUTPUT);

pinMode(bluPin, OUTPUT);

void loop(){

for3(int i = 0; i < 256; i++){

rgb(255-i, i, 0);

delay4(10);

10
(Imad Chatraoui, 2AI, 2022/2023)

for(int i = 0; i < 256; i++){

rgb(0, 255-i, i);

delay(10);

for(int i = 0; i < 256; i++){

rgb(i, 0, 255-i);

delay(10);

void rgb4(int rosso, int verde, int blu){

analogWrite5(rossoPin, rosso);

analogWrite(verdePin, verde);

analogWrite(bluPin, blu);

11
(Imad Chatraoui, 2AI, 2022/2023)

Tabella di traccia(5 iterazioni del primo ciclo for)

int RossoPin VerdePin BluPin I

RossoPin=4 pin numero


4
VerdePin=2 pin numero 2
BluPin=3 pin numero 3
for(int i=0; i<256;
i++)

12
(Imad Chatraoui, 2AI, 2022/2023)

i=0
I<256 VERO
i++
rgb (255-i, i, 0) 255 0 0
Delay (10) 255 0 0

for(i<256; i++) 255 0 0


i<256 VERO
i++ 255 0 0
rgb (255-i, i, 0) 0 255 0
Delay (10) 0 255 0

for(i<256; i++) 0 255 0


i<256 VERO
i++ 0 255 0
rgb (255-i, i, 0) 0 0 255
Delay (10) 0 0 255

for(int i=0; i<256; 0 0 255


i++)
I<256 VERO
i++ 0 0 255
rgb (255-i, i, 0) 255 0 0
Delay (10) 255 0 0

for(i<256; i++) 255 0 0


i<256 VERO

13
(Imad Chatraoui, 2AI, 2022/2023)

i++ 255 0 0
rgb (255-i, i, 0) 0 255 0
Delay (10) 0 255 0

3. UTILIZZARE IL LED RGB

3.1 Spiegazione Esercizio

Questo esercizio riguarda la creazione di un effetto di accensione alternata dei tre


LED del LED RGB, con un aumento e una diminuzione graduale della durata
dell'accensione e della pausa tra un LED e l'altro.

In particolare, il programma genera una sequenza di accensione di ogni LED per


un secondo con una pausa di mezzo secondo tra ogni accensione. Man mano che la

14
(Imad Chatraoui, 2AI, 2022/2023)

sequenza prosegue, la durata dell'accensione e della pausa si riducono


gradualmente, fino a raggiungere un valore di 0 secondi.

Una volta raggiunto il valore di 0 secondi, il programma ricomincia da capo,


generando nuovamente un effetto di accensione graduale dei LED con durate
sempre più corte.

3.2 Procedimento

Il Procedimento per creare il circuito e identico all’esercizio precedente (cambia


solamente il codice):

• Posiziona il LED RGB sulla breadboard. Accertati che il catodo del LED sia
posizionato nel lato della breadboard che sarà collegato alle resistenze.

• Inserisci una resistenza da 220 ohm su ciascuna delle tre colonne adiacenti
alla colonna del catodo del LED RGB. Le resistenze devono essere collegate
alla breadboard nella stessa riga del catodo del LED RGB.

• Collega il pin anodo (comune) del LED RGB al pin 5V dell'Arduino.

• Collega i pin catodo del LED RGB ai pin digitali che desideri dell'Arduino
tramite le resistenze. L'estremità opposta delle resistenze va collegata ai pin
dell'Arduino.

3.3 Componenti utilizzati

15
(Imad Chatraoui, 2AI, 2022/2023)

3.4 Circuito

16
(Imad Chatraoui, 2AI, 2022/2023)

3.5 Schema di collegamento

Codice:

// definisci i numeri di pin per i LED

const int redPin = 4;

const int greenPin = 2;

const int bluePin = 3;

// inizializza i pin dei LED come output

void setup() {

17
(Imad Chatraoui, 2AI, 2022/2023)

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

void loop() {

// accendi il LED rosso

digitalWrite(redPin, HIGH);

delay(1000);

// spegni il LED rosso e accendi il LED verde

digitalWrite(redPin, LOW);

digitalWrite(greenPin, HIGH);

delay(1000);

// spegni il LED verde e accendi il LED blu

digitalWrite(greenPin, LOW);

digitalWrite(bluePin, HIGH);

delay(1000);

18
(Imad Chatraoui, 2AI, 2022/2023)

// spegni il LED blu

digitalWrite(bluePin, LOW);

// diminuisci il tempo di accensione dei LED

int delayTime = 500;

while (delayTime > 0) {

// accendi il LED rosso per il tempo di


delayTime

digitalWrite(redPin, HIGH);

delay(delayTime);

// spegni il LED rosso e accendi il LED


verde per il tempo di delayTime

digitalWrite(redPin, LOW);

digitalWrite(greenPin, HIGH);

delay(delayTime);

// spegni il LED verde e accendi il LED blu


per il tempo di delayTime

digitalWrite(greenPin, LOW);

19
(Imad Chatraoui, 2AI, 2022/2023)

digitalWrite(bluePin, HIGH);

delay(delayTime);

// spegni il LED blu e aspetta per il tempo


di delayTime

digitalWrite(bluePin, LOW);

delay(delayTime);

// diminuisci il tempo di accensione dei LED

delayTime -= 50;

4. UTILIZZARE IL POTENZIOMETRO_a

4.1 Spiegazione Esercizio

Il circuito a LED con Potenziometro2 è composto da un LED, una


resistenza di limitazione della corrente e un componente che consente di
variare la resistenza del circuito. Questo componente viene chiamato

20
(Imad Chatraoui, 2AI, 2022/2023)

potenziometro e permette di controllare l'intensità luminosa del LED,


variando la quantità di corrente che attraversa il LED.

Quando si gira la manopola del potenziometro, si varia la resistenza del


circuito e di conseguenza la corrente che attraversa il LED, regolandone la
luminosità.

4.2 Procedimento

Prendi un LED e una resistenza di limitazione della corrente e collega la


resistenza in serie al LED.

1.Prendi un LED e una resistenza e assicurati che la resistenza sia


dimensionata correttamente per il LED che stai utilizzando. Di solito
si utilizza una resistenza da 220 ohm per un LED standard.

• Collega la resistenza in serie al LED. Questo significa che il lato


positivo del LED viene collegato alla resistenza e il lato negativo del
LED viene collegato direttamente alla massa.

• Prendi un potenziometro a 3 pin e collega il primo e il terzo pin al lato


del circuito, nella power rail(+ e -) Il potenziometro agisce come un
interruttore per variare la corrente elettrica che fluisce attraverso il
LED.

• Collega il secondo pin del potenziometro su arduino(ANALOG IN).


Questo collegamento consente di variare la resistenza elettrica del
potenziometro e quindi variare la luminosità del LED, grazie al
codice.

21
(Imad Chatraoui, 2AI, 2022/2023)

4.3 Componenti utilizzati

4.4 Circuito

4.5 Schema di collegamento

22
(Imad Chatraoui, 2AI, 2022/2023)

Codice:

/*

Lezione 13: Controllare un led mediante un


potenziometro

creato 25 Oct 2019

by Andrea Primavera

*/

int pinPotenziometro = A0;

int pinLed = 5;

void setup() {

pinMode(pinLed, OUTPUT);

23
(Imad Chatraoui, 2AI, 2022/2023)

void loop() {

// Legge il valore dal potenziometro

int valPotenziometro =
analogRead5(pinPotenziometro);

// Comanda il LED data la posizione assunta


dal

// potenziometro

analogWrite(pinLed,valPotenziometro/4);

5. UTILIZZARE IL POTENZIOMETRO_b

5.1 Spiegazione Esercizio

In questo esercizio, si utilizza il multimetro per monitorare il valore


analogico che viene prodotto dal potenziometro mentre lo si ruota. Quando

24
(Imad Chatraoui, 2AI, 2022/2023)

si gira il potenziometro, la resistenza tra i suoi pin varia, il che causa una
variazione nel valore analogico prodotto. Questa variazione viene poi
visualizzata sul multimetro. In questo modo, si può capire per esempio
come funziona il potenziometro e come varia la resistenza. per controllare
la luminosità di un LED.

1.2 Procedimento

Il procedimento e simile a quello precedente, cambia solo che il led e il


resistore non ci sono, mentre entra in scena il Multimetro,

Il potenziometro viene collegato sui pin più esterni al GND e ai 5V,

in seguito al multimetro si collega la parte centrale, e il GND, come fatto


precedentemente.

1.3 Componenti utilizzati

25
(Imad Chatraoui, 2AI, 2022/2023)

1.4 Circuito

1.5 Schema di collegamento

26
(Imad Chatraoui, 2AI, 2022/2023)

Glossario

1. Cosa è un LED RGB? Come si utlizzano?

Un LED RGB su Arduino è un dispositivo che consente di controllare


l'illuminazione di tre diversi LED, uno rosso, uno verde e uno blu, in modo
indipendente. Attraverso il controllo dei tre colori primari, è possibile creare
una vasta gamma di colori.

Per utilizzare un LED RGB con Arduino, è necessario utilizzare un circuito


driver per controllare l'intensità luminosa dei tre LED. Il circuito driver
converte il segnale elettrico di controllo proveniente dall'Arduino in una
corrente che alimenta i LED, regolando la quantità di corrente per ciascun
colore per ottenere il colore desiderato.

2. Cosa è un Potenziometro? Che funzione svolge?

Un LED RGB su Arduino è un dispositivo che consente di controllare


l'illuminazione di tre diversi LED, uno rosso, uno verde e uno blu, in modo
indipendente. Attraverso il controllo dei tre colori primari, è possibile creare
una vasta gamma di colori.

27
(Imad Chatraoui, 2AI, 2022/2023)

Per utilizzare un LED RGB con Arduino, è necessario utilizzare un circuito


driver per controllare l'intensità luminosa dei tre LED. Il circuito driver
converte il segnale elettrico di controllo proveniente dall'Arduino in una
corrente che alimenta i LED, regolando la quantità di corrente per ciascun
colore per ottenere il colore desiderato.

Glossario istruzioni chiave:

for(): costrutto di controllo di flusso che esegue un blocco di istruzioni


per un numero finito di volte, specificato nella clausola for.

delay(): funzione di Arduino che mette in pausa il programma per un certo


numero di millisecondi.
void rgb(int rosso, int verde, int blu): definizione di una
funzione personalizzata che accetta tre argomenti di tipo intero e non restituisce un
valore.
analogWrite(): funzione di Arduino utilizzata per generare un segnale PWM
su un pin analogico.

analogRead(): funzione di Arduino utilizzata per leggere un valore analogico


in ingresso da un pin analogico. Restituisce un valore intero compreso tra 0 e 1023,

28
(Imad Chatraoui, 2AI, 2022/2023)

in cui 0 rappresenta 0V e 1023 rappresenta il riferimento di tensione massimo del


microcontrollore (solitamente 5V).

29

Potrebbero piacerti anche