Gli hobbisti e i tinker appassionati conoscono Arduino da molto tempo, perché questo microcontrollore compatto in formato matchbox può essere utilizzato per numerosi progetti. Inoltre, offre ai principianti e ai bambini una buona opportunità per familiarizzare con i temi della programmazione e dell’elettrotecnica e per ottenere risultati visibili in tempi relativamente brevi. Nel nostro tutorial su Arduino, vi spieghiamo le basi della programmazione Arduino e vi mostriamo come potete realizzare i vostri primi semplici progetti anche senza conoscenze preliminari.
I programmi di Arduino sono chiamati sketch. Si tratta di semplici file di testo con estensione *.ino che possono essere aperti facendo doppio clic nella DIE di Arduino.
La scheda Arduino può essere collegata al computer tramite una porta USB per caricare i codici dei programmi. Per il trasferimento è necessario l’ambiente di sviluppo open-source Arduino IDE o l’Arduino Web Editor.
Anche se non avete mai lavorato con circuiti e schede plug-in prima d’ora, potete far funzionare un programma già pronto sul vostro Arduino. Oltre agli esempi dell’IDE Arduino, su Internet è possibile trovare numerosi tutorial, progetti, video e istruzioni su Arduino in tedesco, con programmi Arduino già pronti che è sufficiente caricare sul microcontrollore.
Indice dei contenuti
1° Tutorial Arduino in tedesco: le basi della programmazione Arduino
La scheda Arduino dispone di diversi ingressi e uscite analogici e digitali e può essere collegata al computer tramite una porta USB per caricare i codici del programma. Sono inoltre presenti diversi pin header che consentono di collegare alla scheda display, strumenti di misura, LED e altri dispositivi.
Buono a sapersi: Un microcontrollore non è altro che un piccolo processore con una memoria in cui viene memorizzato il codice del programma e che viene recuperato al momento dell’esecuzione. Può eseguire un solo programma alla volta ed è quindi particolarmente adatto a progetti che prevedono l’esecuzione continua di compiti semplici.
Alcuni modelli sono già dotati di un’interfaccia di rete interna, ma se necessario è possibile installare in un secondo momento anche Ethernet e WiFi tramite uno shield. Si tratta di schede elettroniche di espansione che si inseriscono semplicemente sulla scheda Arduino o su un altro shield senza saldare. In termini di prezzo, tuttavia, uno shield Ethernet è molto più economico della variante WLAN.
1.1 Ambiente di sviluppo e schizzi
I programmi sono chiamati sketch su Arduino e non sono altro che semplici file di testo con estensione *.ino. Per poter importare uno sketch su Arduino, è necessario l’ambiente di sviluppo open source Arduino IDE o l’Arduino Web Editor. L’IDE Arduino, che è fondamentalmente una versione semplificata di C o C++, è disponibile per Windows, Linux e MacOS.
Uno sketch è sempre composto da tre blocchi:
- Blocco 1: qui vengono creati gli elementi del programma, compresi, ad esempio, i tipi di dati (int, byte, booleani, long, ecc.). Se e quali definizioni devono essere inserite dipende sempre dal programma in questione.
- Blocco 2 (Impostazione): In quest’area vengono trasmessi alla scheda, tra l’altro, i pin di ingresso e di uscita. Viene eseguito una sola volta all’inizio e deve essere definito anche se non ci sono definizioni in esso.
- Blocco 3 (Loop): Questo blocco contiene tutte le parti dello schizzo che vengono percorse in modo permanente. Il loop viene elaborato dall’alto verso il basso e riparte dall’inizio dopo ogni esecuzione. Il codice che contiene è quindi in un ciclo continuo.
2° tutorial Arduino: semplici progetti di esempio con istruzioni
Anche se non avete mai lavorato con circuiti e breadboard, potete far funzionare un programma già pronto sul vostro hardware Arduino con pochi passaggi. In questa sezione troverete alcuni semplici progetti Arduino per principianti senza conoscenze precedenti, per i quali potrete utilizzare codice già pronto nell’IDE Arduino .
Buono a sapersi: Una breadboard è una scheda di circuito che consente di costruire circuiti collegandoli invece di saldarli.
2.1 LED lampeggiante
Per questo progetto vogliamo accendere e spegnere un LED ogni secondo, cioè farlo lampeggiare. A scopo di prova, sul pin 13 di Arduino è già installato un LED che lampeggia spesso quando la scheda è collegata e che possiamo anche programmare noi stessi.
Configurazione
- Se non l’avete ancora fatto, scaricate e installate il software Arduino.
- Quindi collegare la scheda Arduino al computer tramite cavo USB. Il computer dovrebbe riconoscerla e configurarla automaticamente.
- Avviare il software Arduino e impostare il tipo di scheda tramite“Strumenti/Scheda“.
- Configurare la porta tramite“Strumenti/Porta“. Di solito si tratta della porta con il nome della scheda.
- Questo completa la configurazione. Ora è possibile iniziare la programmazione o importare un codice finito.
Il codice per il LED lampeggiante è già incluso nell’IDE Arduino come esempio standard. È possibile trovarlo in“File -> Esempi -> Nozioni di base -> Blink“.
// La funzione di setup viene eseguita una volta all'accensione o al reset.
void setup() {
// Inizializza il pin digitale LED_BUILTIN come uscita.
pinMode(LED_BUILTIN, OUTPUT);
}
// La funzione loop viene eseguita continuamente
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // Accende il LED (HIGH è il livello di tensione)
delay(1000); // aspetta 1 secondo
digitalWrite(LED_BUILTIN, LOW); // spegne il LED (LOW è il livello di tensione)
delay(1000); // aspetta 1 secondo
}
Carica il codice
- Per attivare il programma, caricare il codice sulla scheda Arduino tramite [CTRL] + [U] e“Sketch/Upload” o la piccola freccia nell’angolo in alto a sinistra.
- Dopo un po’, viene visualizzato un messaggio che indica che il caricamento è stato completato.
- Il LED ora lampeggia a intervalli di 1 secondo. Naturalmente, è possibile modificare i valori come si desidera.
Il video seguente mostra come è possibile far lampeggiare un LED esterno con Arduino:
2.2 Commutazione del LED con il pulsante
In un altro sketch standard dell’IDE, il LED viene attivato premendo un pulsante (“File -> Examples -> Digital -> Button”).
// Le costanti (const) non cambiano.
// Sono usate qui per impostare i numeri dei pin:
const int buttonPin = 2; // Pin del pulsante
const int ledPin = 13; // Pin del LED
// Le variabili cambiano:
int buttonState = 0; // Variabile per leggere lo stato del pulsante
void setup() {
// Inizializza il pin del LED come uscita:
pinMode(ledPin, OUTPUT);
// Inizializza il pulsante come ingresso:
pinMode(buttonPin, INPUT);
}
void loop() {
// Legge lo stato del valore del pulsante:
buttonState = digitalRead(buttonPin);
// Controlla se il pulsante è premuto.
// Se lo è, lo stato del pulsante è ALTO:
if (buttonState == HIGH) {
// accende il LED
digitalWrite(ledPin, HIGH);
} else {
// spegne il LED
digitalWrite(ledPin, LOW);
}
}
Per questo progetto, oltre alla scheda Arduino, sono necessari una breadboard, un pulsante, un LED, una resistenza da 220 ohm e quattro cavi di collegamento.
Lo schema del circuito si presenta come segue:
Tuttavia, diventa molto più impegnativo con due pulsanti e un LED dimmerabile:
3° Tutorial Arduino: ulteriori informazioni
Ora avete imparato come inserire i programmi in Arduino, come si costruisce uno sketch e cosa si può fare con una breadboard. Con queste nozioni di base, in linea di principio potete costruire tutti i progetti che trovate su Internet. Nella maggior parte dei casi, tuttavia, si finirà per utilizzare programmi di esempio Arduino già pronti, equipaggiando la scheda plug-in solo di conseguenza.
Sul web è possibile trovare un’ampia gamma di progetti con codici di programma già pronti, come i seguenti:
- Semplice conto alla rovescia Arduino con look retrò
- Esercitazione su Arduino WiFi Shield
- Controllo di un display LCD con Arduino
- Esercitazione sulla shield motore di Arduino
- Tutorial su Arduino Ethernet
- Tutorial sul server web Arduino
Per programmare il vostro codice, invece, dovrete occuparvi molto di più delle basi dell’elettronica e del linguaggio di script. Oltre agli esempi integrati, è possibile utilizzare i numerosi tutorial, istruzioni e video di Arduino in inglese e tedesco disponibili su Internet. Questi sono disponibili in diversi livelli di difficoltà , dal principiante all’hobbista professionista e all’esperto di Arduino.