Come far blinkare un LED con Arduino

Come far blinkare un LED con Arduino

Come Far Blinkare Un Led Con Arduino - ProjectEMS

Introduzione

In questo articolo tratteremo la realizzazione di un semplice ma importante esercizio con Arduino, ovvero l’esecuzione di un programma per far blinkare un LED. Ma cosa vuol dire nello specifico far blinkare un led? Molto semplicemente la possibilità di comandare l’accensione/spegnimento in modo controllato, nel senso che, agendo sul software, si può far in modo di far lampeggiare il led. Come led è possibile utilizzare sia il led integrato nella scheda, sia un led esterno da connettere al resto della scheda
In questo articolo si analizzerà questo secondo caso in quanto più completo, cosicché l’utente alla fine di questo esercizio sarà in grado anche di blinkare il led integrato. Verranno comunque dati alcuni suggerimenti per chi volesse utilizzare il led già presente sulla scheda.

Componentistica

La realizzazione di questo esercizio non richiede particolari componenti; tutto ciò di cui si ha bisogno per poter eseguire questo programma è:

  • 1 LED
  • 1 resistenza di 220 Ohm
  • 1 Arduino (si può utilizzare una qualsiasi versione, ma in questo articolo si farà riferimento ad Arduino Mega)
  • 1 Breadboard
  • 2 cavetti di collegamento
  • 1 cavo USB
  • 1 PC con il software Arduino installato.

Cenni di elettrotecnica

Un led altro non è che un diodo a semiconduttore il quale, al passaggio di corrente, emette radiazione luminosa.

Come Far Blinkare Un Led Con Arduino - diodo - Projectems

In uno schema elettrico è indicato dal simbolo rappresentato nella figura precedente in cui si possono evidenziare due estremità: anodo e catodo.
Un classico led per applicazioni di questo tipo si presenta con due terminali, uno più lungo che corrisponde all’anodo (positivo), ed uno più corto che è il catodo (negativo).

Come Far Blinkare Un Led Con Arduino - LED - Projectems

Come descritto nel paragrafo dedicato alla componentistica è necessario anche l’utilizzo di una resistenza, grazie alla quale si limita il passaggio di corrente in modo da permettere un funzionamento ottimale da parte del led. In genere un led assorbe una corrente tra i 15 e i 17 mA. Come determinare il valore della resistenza? Esiste una semplice formula che permette di valutare quanti Ohm deve avere la resistenza che sceglieremo.

Ω = (VCC – VLED) / IM.

Dove:

  • Ω è il simbolo per indicare la resistenza
  • VCC indica la tensione di alimentazione in Volt e nel caso di Arduino è 5V.
  • VLED è il valore di caduta di tensione interna in un led. Un tipico valore di riferimento è 1.5V
  • IM è il valore medio di corrente in un led (come visto poc’anzi) espresso in Ampere e quindi si può utilizzare 0.016A.

Sostituendo quindi i nostri valori, otterremo una resistenza di 220 Ohm.

Schema del circuito

In figura è mostrato lo schema elettrico del sistema.

Come Far Blinkare Un Led Con Arduino -Schema Circuito - Projectems

Procedimento

Entrando nel dettaglio, per realizzare il circuito in questione è necessario innanzitutto connettere una delle estremità della resistenza ad uno dei pin di output. Scegliamo in questo caso il pin digitale 13 (D13).
Utilizzando quindi uno dei cavetti di collegamento si collega un’estremità al pin 13 e l’altra alla breadboard. La resistenza va quindi connessa il serie, ovvero sulla stessa colonna.
Per quanto riguarda il led invece, esso va inserito in modo tale da avere l’anodo (gamba più lunga, positiva) in serie con la resistenza e il catodo (negativo) lungo la stessa riga dell’anodo.
Infine, tramite il secondo cavetto di collegamento si deve connettere il catodo al pin GND di Arduino.

Come Far Blinkare Un Led Con Arduino - Circuito - Projectems

Per alimentare Arduino, collegare tramite cavo USB la scheda al PC.

Codice

Una volta terminate tutte le connessioni hardware, bisogna concentrarsi sulla parte software (e sulla loro interazione, il vero punto forza di Arduino).
Apriamo il l’Arduino Software ed andiamo ad inizializzare prima di tutto il pin scelto (PIN 13 nel nostro caso) come porta di output. Digitiamo dunque:

pinMode(13, output)

N.B.: Nel caso si volesse utilizzare il led integrato nella board Arduino, basta sostituire nel codice LED_BUILTIN al posto di 13.

A questo punto bisogna generare una funzione di loop nel codice che permetta di eseguire la funzione di blinking voluta. Blinkare un led come si è visto vuol dire eseguire un accensione ad intermittenza controllata, ovvero creare un loop di questo tipo:

  • accensione
  • rimanere acceso per un certo istante di tempo
  • spegnimento
  • rimanere spento per un certo istante di tempo

All’interno dell’Arduino Software tutto ciò si traduce nel seguente codice:

digitalWrite(13, HIGH)
delay(1000)
digitalWrite(13, LOW)
delay(1000)


dove HIGH indica un valore di tensione, appunto, alto facendo sì che il led si accenda a differenza del comando LOW che setta una tensione bassa tale da spegnere il led.
delay(time) invece è una funzione che mette in pausa l’evento per il tempo specificato in millisecondi (dunque 1000 indica 1 secondo). Si intuisce dunque che variando il valore time all’interno di delay() è possibile cambiare la velocità di blink del led.

Il riassunto del codice per far blinkare un LED con Arduino è quindi mostrato nella figura seguente.