Blog
Uno staff di lavoro sempre orientato al cliente, per offrire le migliori soluzioni per i diversi sistemi di visione artificiale.

VISION DEVICE si avvale del prezioso contributo di un team di collaboratori, tutti altamente specializzati sul know-how applicativo e dello sviluppo software, nelle diverse aree e discipline. Questo permette all’azienda di seguire i diversi clienti attentamente, in modo da riuscire a fornire la massima qualità nel proprio lavoro per le diverse soluzioni sui sistemi di visione artificiale.

Come programmare Arduino: hardware e software

Come programmare Arduino

Abbiamo già parlato di Arduino introducendo le caratteristiche principali per capire cos'è e come funziona. Ora vogliamo descrivere in che modo è possibile programmare Arduino analizzando quanto necessario sia lato hardware che software.

Ricordiamo velocemente che Arduino é in realtà una famiglia di board ma per semplicità parliamo oggi della scheda più diffusa della famiglia, la Arduino UNO.

Cos'è Arduino UNO

Arduino UNO é, banalmente, una scheda con porte di comunicazioni digitali o analogiche (i cosiddetti pin) a cui possono essere collegati sensori, ma anche piccoli led o mini display.

I motivi della sua diffusione nell'ambito dell'elettronica di base sono dovuti principalmente al costo esiguo della scheda, circa 25 euro, in abbinamento ad un vastissimo supporto per accessori compatibili e forum e guide online che permettono di realizzare moltissimi progetti passo passo.

Come può essere utile Arduino

L'utilizzo della scheda Arduino attualmente è principalmente legato all'ambito della robotica. Numerosi sono infatti i progetti ed i tutorial online che permettono la costruzione di mini robot. Notevole é anche la vendita di kit di terze parti con tutto l'occorrente per lo sviluppo e la realizzazione di svariate tipologie di robot.

Considerando lo sviluppo capillare di questa scheda, é possibile che nel futuro possa essere utilizzata anche nell'ambito della visione artificiale oltre che in ambito educativo anche per motivi professionali.

Arduino UNO

Cosa ti serve per iniziare con Arduino

Vediamo ora in dettaglio come iniziare a programmare con Arduino e cosa ci serve, sia in ambito software che ambito hardware.

Per poterlo programmare, innanzitutto lato hardware è necessario un PC oltre ovviamente alla scheda Arduino UNO e ad un cavo USB type B maschio - USB type A maschio, che servirà per collegare fisicamente la scheda al computer. Questo cavo solitamente viene venduto assieme alla scheda in fase di acquisto ma nel caso si sia rotto o sia andato perduto è possibile trovarlo facilmente online o nei migliori negozi di elettronica.

Per il software invece, basta semplicemente scaricare Arduino IDE dal sito ufficiale oppure, se hai un computer Microsoft, dallo store dei più recenti sistemi operativi. Il programma, oltre ad avere l'ambiente di programmazione pronto, contiene una lista di esempi che coprono ogni ambito di applicazione, almeno per gli esercizi iniziali.

Come si programma Arduino

Innanzitutto, apri il programma ed immediatamente ti ritroverai davanti la schermata di programmazione. E' importante, se non hai mai programmato prima, andare su Strumenti e selezionare la scheda con cui vuoi eseguire i tuoi primi programmi.

Arduino Tools Board

Fatto ciò sei pronto per partire! Ora puoi collegare la tua nuova board Arduino ed installare tutti i relativi driver necessari al corretto riconoscimento! Ora prova a caricare il primo sketch di esempio, prelevabile dal tab File -> Examples-> Basics -> 3. Blink, così da analizzarne insieme la struttura.

Arduino examples

Le funzioni setup() e loop()

Ci sono due funzioni principali in ogni programma per Arduino: la funzione setup() e la funzione loop(). La prima serve essenzialmente ad inizializzare variabili, a settare le porte necessarie al programma ed a includere le varie librerie che verranno utilizzate. Questa funzione viene eseguita solo ed esclusivamente una volta dopo il reset della board o alla prima accensione della stessa.

La seconda invece contiene tutto il corpo del programma che viene eseguito in loop (da qui anche il nome della funzione).

Prendendo come esempio il software Blink, quello più semplice che si limita a far 'blinkare' (cioè accendere e spegnere ciclicamente) un led, si può osservare come la funzione loop() contenga due chiamate: la prima digitalWrite serve per settare il valore logico del led a high in modo da accenderlo, mentre la seconda digatalWrite lo setta a low, spegnendolo.

Ogni istruzione viene terminata da un punto e virgola. Essendo il led 13 digitale ha bisogno di soli due valori di tensione per accendersi e spegnersi.

La compilazione e il caricamento

A questo punto si può compilare il programma, cliccando sul menù Sketch -> Verifica/Compila e premere successivamente il pulsante Carica per scrivere il programma sulla scheda. Ora provando ad eseguirlo, noterai che tutto viene svolto correttamente!

Nel caso in cui ti accorgessi che l'accensione e lo spegnimento del led siano troppro ravvicinati tra loro, puoi aggiungere tra le istruzioni la funzione delay() che banalmente fa attendere l'esecuzione dell'istruzione successiva. L'unità di misura dell'istruzione é il millisecondo, quindi scrivendo ad esempio delay(1000) il programma verrà messo in pausa per 1 secondo ad ogni esecuzione.

Osservazione banale ma non così scontata: ricordati di inserire il delay anche dopo l'ultima chiamata a funzione, altrimenti ad ogni ciclo loop non ci sarà ritardo tra le istruzioni!

Buon lavoro con Arduino!

Ovviamente sei solo all'inizio di questo percorso con Arduino, e questo é solo il primo, semplice, programma che puoi eseguire. Ti consiglio di osservare anche gli altri esempi contenuti nell'IDE per capire meglio la struttura e l'uso delle funzioni nel linguaggio di programmazione di Arduino... e di sperimentare il più possibile, che è la vera base dell'elettronica!

Link utili

Ecco alcuni link utili per approfondire l'argomento:

Il sito web di Arduino;

Esempi Built-in, direttamente dal sito di Arduino (in inglese).

Conclusioni

Per concludere, non ti resta che iniziare a guardarti attorno per acquistare i primi sensori da collegare alla tua scheda Arduino, provare ad espandere le sue funzionalità, mettere alla prova gli sketch presenti negli esempi e iniziare a provare a scrivere i tuoi. Buon divertimento!