Laboratorio di Elettronica

Osserva, Impara e Diffondi.

Arduino con il simulatore Tinkercad

Blink del LED

Blink del LED (Simulazione su  Tinkercad)

Video Tutorial Blink del LED e Variabili

La prima cosa che facciamo è inizializzare il pin 8 come una uscita nella funzione di setup.

pinMode(8, OUTPUT);

Nel loop principale potete accendere il LED con il seguente comando:

digitalWrite(8, HIGH);

Questo invierà la 5V sul pin 8. Quando vorrete spegnerlo scriverete il comando seguente:

digitalWrite(8, LOW);

Che riporterà il pin 8 a 0 volt. Tra l’accensione e lo spegnimento ci sono i comandi che fanno passare un determinato tempo prima di eseguire il comando successivo, il comando:

delay() 

infatti dice alla scheda di non fare nulla per il numero di millisecondi specificato (un millisecondo è un millesimo di secondo).

Schema di configurazione su Tinkercad

Vai alla simulazione

Semaforo con 3 LED sincronizzati

Semaforo con 3 LED (Simulazione su  Tinkercad)

Video Tutorial Semaforo

Vediamo il codice del progetto:

void setup()
{
pinMode(12, OUTPUT); //Setto i 3 pin di output dove collego i 3 LED
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
}
void loop()
{
digitalWrite(12, HIGH); //metto i 5 Volt sul pin 12 (Accendo il LED rosso)
delay(4000);
// Per 4 secondi dico ad Arduino di non esegue nessuna istruzione
digitalWrite(12, LOW); //spengo il LED rosso
//Dopo il rosso scatta il verde
digitalWrite(7, HIGH); //metto i 5 Volt sul pin 7 (Accendo il LED verde)
delay(4000); // Per 4 secondi dico ad Arduino di non esegue nessuna istruzione
//dopo 4 secondi accendo anche il giallo
digitalWrite(8, HIGH);
delay(1000);
// Dopo un ulteriore secondo in cui erano accesi sia il verde che il giallo, li spengo entrambi
digitalWrite(8, LOW);
digitalWrite(7, LOW);
//metto a zero la tensione in entrambi i led (verde e giallo)
}

Vai alla simulazione

LED RGB

LED RGB (Simulazione su  Tinkercad)

Video Tutorial LED RGB

// Definisco i pin dove associo il contatto del led

define BLUE 10
define GREEN 9
define RED 11

void setup()
{
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);

}
void loop()
{
//Ogni piedino del LED se alimentato da solo con 5 Volt
//Produce il colore indicato nel piedino
//Proviamo a mettere i 5 Volt al pin del ROSSO
digitalWrite(RED, HIGH);
digitalWrite(GREEN, LOW);
digitalWrite(BLUE, LOW);
delay(2000);
//In simulazione si nota il colore rosso acceso per 2 secondi

//Proviamo a mettere i 5 Volt al pin del BLU
digitalWrite(RED, LOW);
digitalWrite(GREEN, LOW);
digitalWrite(BLUE, HIGH);
delay(2000);
//In simulazione si nota il colore BLU acceso per 2 secondi

//Proviamo a mettere i 5 Volt al pin del VERDE
digitalWrite(RED, LOW);
digitalWrite(GREEN, HIGH);
digitalWrite(BLUE, LOW);
delay(2000);
//In simulazione si nota il colore VERDE acceso per 2 secondi

//se decidessimo di mettere i 5 Volt sia sul led rosso che sul led verde
//otteremo come colore il giallo(dao dalla sovrapposizione dei due colori

//Proviamo a mettere i 5 Volt al pin del VERDE e al ROSSO
digitalWrite(RED, HIGH);
digitalWrite(GREEN, HIGH);
digitalWrite(BLUE, LOW);
delay(2000);
//In simulazione si nota il colore Giallo acceso per 2 secondi

//I Pin con la tilde affianco PWM (11,10,9,6,5 e 3)
//Oltre ai valori HIGH e LOW (alto e basso che stanno per 5 e 0 Volt)
//possono assumere anche valori intermedi che vanno da 0 a 255 livelli
//Per cui livello 0 corrisponde a 0 volt, 255 ai 5 Volt
//I valori intermedi sono proporzionali (es:128 corrisponde circa a 2,5 Volt)

//Per poter settare la tensione del pin si usa l’istruzione analogWrite
//passandogli come valori il numero del pin ed il livello di tensione
//a desempio se volessimo comunque riottenere il rosso ma utilizzando l’istruzione
//analogWrite dovremo utilizzare i seguenti comandi

analogWrite(RED, 255);
analogWrite(GREEN, 0);
analogWrite(BLUE, 0);
delay(2000);

//vediamo infine un esmpio di colore grigio dato dalla sovrapposizione di
// metà di rosso, metà di verde e metà di blu

analogWrite(RED, 128);
analogWrite(GREEN, 128);
analogWrite(BLUE, 128);
delay(2000);

//per provare un colore di tuo piacimento utilizza il seguente link
// https://www.w3schools.com/colors/colors_picker.asp
}

Vai alla simulazione del LED RGB

LED RGB con Potenziometro

LED RGB con Potenziometro (Simulazione su  Tinkercad)

PWM, effetto fade del LED e luminosità variabile con il potenziometro

La prima cosa che facciamo è inizializzare il pin 8 come una uscita nella funzione di setup.

// Define Pins
define BLUE 10
define GREEN 9
define RED 11

void setup()
{
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);

}
void loop()
{

analogWrite(RED, analogRead(1));
analogWrite(GREEN, analogRead(3));
analogWrite(BLUE, analogRead(2));

}

Vai alla simulazione del circuito con LED RGB