Cos’è Arduino e come funziona

Hai sentito nominare Arduino da qualche tuo amico e adesso vuoi capire cos’è  Arduino, ma sopratutto come funziona? Sei nel posto giusto!

In questo articolo affronteremo tutti i dubbi più comuni che riguardano Arduino, vedremo: cos’è e come funziona, per cosa viene usato, come viene alimentato, che linguaggi di programmazione si possono usare con Arduino ma anche le differenze tra Arduino e Raspberry PI e simili.

Cos’è Arduino

cos-e-arduino-guida

Quando si parla di Arduino si fa riferimento ad una particolare scheda che non è altro che un hardware open source attraverso il quale si ha la possibilità di creare in maniera semplice e intuitiva particolari prototipi di progetti rigorosamente interattivi.

In linea di massima, Arduino viene utilizzato quasi esclusivamente nel settore IoT nel quale è fondamentale l’utilizzo di sensori di varia tipologia. Una cosa è certa: grazie ad Arduino, tutti gli artigiani del mondo digitale hanno la possibilità di dare libero sfogo alla propria fantasia e alla creatività. Attenzione, però: Arduino non deve essere considerato un semplice passatempo hi-tech. Le potenzialità di questa piattaforma, tra l’altro del tutto realizzato in Italia, sono moltissime. Ciò soprattutto perché viviamo in un’epoca in quei la gestione dei cosiddetti sensori e i processi volti all’integrazione di ogni genere di strumento con gli ambienti IT si stanno trasformando in un vero e proprio must.

In questo ragionamento, poi, non si può di certo fare a meno di fare un breve cenno in merito al fatto che in questi ultimi anni l’attenzione nei confronti dell’Internet of things è decisamente alta e che, dunque, Arduino non può che essere considerato uno dei protagonisti assoluti dell’attuale panorama. Entrando più nello specifico, questo progetto ha mosso i suoi primi passi ad Ivrea 13 anni fa nell’ambito dell’Interaction design institute, una particolare scuola nata dalla sinergia tra Telecom Italia e Olivetti. Tra gli sviluppatori ci sono personaggi di spicco del calibro di Tom Ingoe, David Cuartielles, Massimo Banzi, David Mellis e Gianluca Martino. In pochissimo tempo, i big dell’IT si sono resi conto delle enormi potenzialità di questo progetto tanto che Intel ha deciso di avviare una collaborazione nel 2013 che ha consentito la creazione delle schede Edison e Galileo che, ovviamente, sono totalmente compatibili con la piattaforma Arduino. Medesima cosa è accaduta con Microsoft. In pochissimi anni, dunque, il progetto è cresciuto in maniera a dir poco rapida.

Nel frattempo, Arduino ha anche lavorato alla realizzazione di un mini-computer targato Linux e basato su una semplicissima scheda Wi-Fi. Il mini-computer in questione prendeva il nome di Arduino Yùn ed ha riscosso un notevole successo soprattutto tra gli addetti ai lavori ma non solo.

Al termine di questa interessante introduzione una rassicurazione è più che doverosa: pur trattandosi di un sistema complesso, Arduino è semplicissimo da utilizzare oltre che particolarmente intuitivo.

Come funziona Arduino

come-funziona-arduino-guida

In termini molto pratici, non fa altro che mettere in relazione vari stimoli che derivano tra fonti diverse da loro. Tali stimoli vengono captati e, di seguito, trasmessi dai vari sensori che devono essere opportunamente programmati in modo tale da generare un input che deve essere necessariamente associato ad un ben preciso effetto.

Quando si parla di input si fa riferimento, in linea generale, a luci, tasso di umidità, movimenti di qualsiasi tipo, suoni, spegnimento o accensione di pulsanti. Per riuscire a far comprendere questo semplicissimo concetto anche ai non addetti ai lavori, Arduino non fa altro che tradurre in azioni determinati impulsi tenendo conto delle istruzioni che gli vengono impartite. Tutto ciò è possibile grazie all’utilizzo di un particolare linguaggio di programmazione che getta le sue basi sul cosiddetto framework anche in questo caso open source denominato Wiring.

Anche il linguaggio utilizzato da Arduino per la codifica è open source e si chiama Processing.

Per cosa viene usato Arduino

progetti-arduino-per-cosa-viene-usato-guida

Se ti stai chiedendo il motivo di un successo così grande molto probabilmente non conosci le molteplici peculiarità di questo prodotto che, oltre ad essere molto semplice da utilizzare non è affatto dispendioso. Proprio ad Arduino va il merito di essere stato protagonista della creazione di moltissimi progetti sia per uso esclusivamente personale che, ad esempio, scientifico. Nel tempo, sono stati moltissimi ad aver scelto questa alternativa e non solo appassionati ma anche programmatori, studenti, professionisti e, addirittura, artisti.

L’attenzione rivolta ad Arduino ha portato in pochi anni a creare un vero e proprio business al quale ha contribuito il fatto che si tratta di una piattaforma open source a cui tutti gli appartenenti ad una specifica comunità hanno la possibilità di contribuire. Rapida è stata anche l’evoluzione di quella che inizialmente era una semplicissima scheda a 8 bit e che si è trasformata in un prodotto fondamentale nel mondo dell’Internet of things ma anche della stampa in tre dimensioni, tra le altre cose.

Il costo relativamente basso di Arduino rappresenta un ulteriore valore aggiunto. Grazie ad esso, infatti, la piattaforma è stata utilizzata per realizzare prototipi di vari progetti e sperimentazioni all’interno dell’ambiente scolastico. Utilizzando Arduino moltissimi studenti e ricercatori hanno avuto l’opportunità di dare libero sfogo alla propria fantasia oltre che della propria creatività. Da non sottovalutare sono, inoltre, le applicazione nell’ambito dell’educazione. Ciò vale principalmente per quanto riguarda la realizzazione di strumenti scientifici low cost utilizzabili anche per creare robot di piccole dimensioni.

Una cosa è certa: uno dei valori aggiunti di Arduino è, senza dubbio, la sua versatilità che, volendo, può essere sfruttata anche in ambito musicale e, più in generale, nel mondo dell’arte. Come è facile intuire, le applicazioni di questa piattaforma sono a dir poco infinite. Basti pensare, ad esempio, al fatto che in fiere di rilievo nazionale vengono presentati proprio progetti realizzati con Arduino.

Come iniziare con Arduino

arduino-come-iniziare-guida

Per riuscire a muovere i primi passi con Arduino è bene tenere conto del fatto che i Pin sono a dir poco fondamentali. Sono proprio i Pin a collegare tra loro attuatori e sensori in modo tale da creare un’interazione con il mondo esterno. Da ciò si capisce che Arduino non è solo un classico hardware ma anche una piattaforma in tutto e per tutto software.

Cos’è Arduino IDE

arduino-software-ide-guida

In merito al funzionamento di Arduino è utile sottolineare che a permettere la scrittura di ogni genere di programma è IDE che non è alto che uno strumento capace di mettere in sinergia i meccanismi elettronici della scheda e scrivere i vari programmi. L’interfaccia IDE è semplicissima e permette di scrivere un programma in maniera a dir poco intuitiva e senza alcun genere di problema. L’unica cosa da fare è la scrittura. Al resto penserà IDE in maniera del tutto autonoma. Per poterlo utilizzare, IDE deve essere scaricato dal sito ufficiale. Dopo averlo scaricato, non resterà altro da fare che seguire il percorso guidato per l’installazione. Da non dimenticare è, poi, l’importanza del cavo Usb.

Proprio attraverso il cavo Usb, infatti, la scheda può essere alimentata e permette di caricare i vari programmi. Dopo aver collegato il computer alla presa Usb non si deve fare altro che selezionare Arduino Uno nell’apposito menu Strumenti, cliccando su Scheda. Per selezionare la porta, invece, si dovrà scegliere la Com cliccando su Porta nel menu Strumenti.

Che linguaggi di programmazione si possono usare con Arduino

linguaggi-programmazione-arduino-c-cplusplus

In riferimento ai linguaggi utilizzabili con Arduino è bene precisare che, in linea si massima, i programmi vengono scritti in C. Questa affermazione, però, è decisamente troppo generica poiché, come ben sanno gli addetti ai lavori, C non è un linguaggio dotato delle specifiche funzioni necessarie per far funzionare i programmi alla perfezione. Per tale ragione, dopo essere stato scritto ogni programma viene caricato in un apposito microcontrollore che serve per dare forma ad un linguaggio cosiddetto macchina che, permette ad Arduino di funzionare senza alcun genere di problema. In fatto di linguaggi, è bene precisare che per utilizzare Arduino è sufficiente conoscere C anche solo in maniera scolastica. Basta, infatti, avere appena qualche rudimento per riuscire a cavarsela egregiamente con la fase di programmazione. Addirittura, stando a quanto dichiarato da chi ha una certa esperienza con Arduino, pare che sia sufficiente conoscere il linguaggio C anche solo in maniera superficiale.

Chi ancora si sta chiedendo perché è il caso di scegliere Arduino deve tenere conto del fatto che questa piattaforma è compatibile con i più importanti sistemi operativi tra cui Linux, Windows e MacOS. Inoltre, non si tratta di una piattaforma blindata e, dunque, consente agli sviluppatori di metterci mano anche ricorrendo al linguaggio C++. Importante è anche ricordare che se Arduino consente di realizzare moltissimi oggetti, c’è anche una scheda caratterizzata da dettagli molto simili che, però, è decisamente più potente. Grazie ad essa si ha addirittura la possibilità di andare oltre in fatto di hardware.

Chi ha una certa esperienza nel settore avrà già capito che il prodotto in oggetto è Sanguino, una scheda cosiddetta potenziata che ha un processore molto più potente e 128 Kb di memoria rigorosamente flash più 4 porte e 8 K di Ram.

Differenze tra Arduino e Raspberry Pi

differenze-raspberry-pu-arduino-guida

In ultimo, è utile precisare quali sono le differenze che ci sono tra Arduino e Raspberry Pi al fine di chiarire questo concetto anche a coloro che non hanno estrema confidenza in questo specifico ambito. Proprio rimanendo in tema di chi non è molto ferrato nel settore, riuscire ad individuare le reali differenze non è affatto cosa semplice.

Pur essendo vero che le differenze sono così esagerate, è altrettanto vero che basta un’osservazione leggermente più attenta per capire in cosa si differenziano. Ad accomunare i due prodotti c’è il fatto che in entrambi i casi abbiamo a che fare con board sulle quali vengono installate particolari componenti tra cui delle porte e un’unità cosiddetta logica. Per quanto riguarda le porte, ovviamente si fa riferimento alla Usb ma anche alla porta Ethernet utilizzata per la Raspberry e per altre tipologie di Arduino. Ma torniamo al punto e cerchiamo di capire quali sono le reali differenze tra le due.

Per riuscire a fare seguito ad un’analisi il più possibile accurata, è bene tenere conto del fatto che in alcuni casi è preferibile utilizzare la prima e in altri la seconda. Ciò, molto semplicemente, perché si ha a che fare con veri e propri attrezzi da lavoro che possono essere programmati a seconda delle specifiche esigenze. Come ben chiarito in precedenza, Arduino non è altro che un classico microcontrollore dotato di una particolare scheda con un circuito piccolo ma molto funzionale. Questa scheda può essere programmata e, pertanto, risulta particolarmente versatile. Basti pensare, ad esempio, al fatto che per programmarla si po’ utilizzare il linguaggio C. Appare chiaro, quindi, che Arduino è uno strumento utilissimo che agevola non poco la fase di progettazione e non solo. Questo prodotto, infatti, si rivela utile anche quando si ha a che fare con la prototipazione di ogni genere di prodotto. Un aspetto da non trascurare riguarda il fatto che Arduino fa al caso di task con uno standard a dir poco minimale e semplice come, ad esempio, l’invio di un segnale su alcune specifiche porte. Non è difficile comprendere che l’ambito di appartenenza naturale di Arduino è quello dell’elettronica.

Raspberry Pi, dal canto suo, ha tutte le carte in regola per essere considerato un prodotti molto diverso da Arduino e, sotto alcuni aspetti, addirittura più performante. In questo caso, infatti, si ha a che fare con una vera e propria board che ha le medesime potenzialità di un computer tradizionale. Al suo interno ci sono sia le porte Usb che una Cpu, una porta Ethernet e una HDMI. Affinchè posa funzionare alla perfezione, su una Raspberry Pi è necessario installare un sistema operativo. Ciò vuol dire che, al contrario di Arduino che viene usato per gestire i segnali e altri impulsi attraverso un apposito microcontrollore, Raspberry Pi offre l’opportunità di far funzionare i vari software. Si tratta, pertanto, di uno strumento molto meno elettronico e decisamente più casalingo.

Chi non ha troppa confidenza con queste strumentazioni troverà molto utile qualche esempio pratico.

  • Nel caso di Arduino, in casa questa particolare scheda potrebbe essere utilizzata per muovere un braccio meccanico applicato, ad esempio, ad una zanzariera rimanendo comodamente seduti sul proprio divano. In alternativa, si potrebbe utilizzare anche per far funzionare un Led utile per informare il rientro del proprio cane nella cuccia.
  • Discorso diverso deve essere effettuato per Raspberry Pi che potrebbe essere utilizzato per la realizzazione di un media center di piccole dimensioni da collegare con un HDMI ad un classico televisore per riuscire a realizzare uno streaming di ogni genere di contenuto trasmesso sullo schermo di un PC. Raspberry Pi potrebbe essere molto utile anche per fare alcuni conti particolarmente complicati di matematica cosiddetta complessa.

A questo punto, Arduino non ha più segreti!

Se hai deciso di approcciarti a questo particolare strumento, dunque, non devi fare altro che rimboccarti le maniche e cercare di sfruttarne al meglio tutte le peculiarità senza, però, dimenticare che quando si ha a che fare con simili strumentazioni le applicazioni possono essere moltissime e che, dunque, non resta altro da fare che documentarsi a dovere e possibilmente chiedere consiglio a qualche esperto del settore in modo tale da riuscire ad ottenere il miglior risultato possibile.