Parte1
lezione
[Link]’è Arduino?
Arduino è una piattaforma elettronica open-source basata sull’idea di realizzare
prototipi hardware e software con semplicità.
Arduino è una piattaforma di
Le schede Arduino possono elaborazione fisica open source
rilevare segnali come: basata su:
•una serie di schede a microcontrollore,
○ Acceleration and steering
cioè“a chip singolo”,
○ a finger on a button
•un ambiente di sviluppo software,
○ a Twitter message
•e una attiva comunità di sviluppatori e utenti.
Puoi istruire la scheda inviandole una sequenza di
istruzioni che saranno interpretate dal
microcontrollore. Le istruzioni si scrivono utilizzando il
linguaggio di programmazione di Arduino (che è C++
ed è basato su Wiring) e l’ambiente di sviluppo
integrato (IDE) omonimo, basato su Processing.
Una comunità mondiale di maker, studenti, hobbisti, artisti, programmatori e professionisti si è
raccolta attorno a questa piattaforma open source e contribuisce continuamente a creare un’enorme
quantità di conoscenza disponibile per tutti e che può essere di grande aiuto sia ai principianti che agli
esperti.
Vuoi costruire un robot che può correre, ballare ed essere controllato da te?
Vuoi creare un braccialetto intelligente che può rilevare la frequenza
cardiaca, il numero di passi, mostrare la data e l’ora e suonare le tue canzoni preferite?
Vuoi controllare la tua casa anche quando sei al lavoro?
Vuoi realizzare un robot che possa pulire il pavimento per te?
Vuoi realizzare una macchina che ti prepara il caffè?
Vuoi creare dei bellissimi effetti luminosi?
Vuoi costruire il tuo“guanto dell’infinito”degli Avengers?
Se tu lo vuoi, Arduino potrà aiutarti a realizzare qualsiasi cosa ti possa venire in mente!
[Link] storia di Arduino
Arduino nasce nel 2005 come progetto open source da un’idea del team formato da Massimo Banzi, David
Cuartielles, Tom Igoe, Gianluca Martino e David Mellis. Da allora, Arduino è stato il“cervello”di migliaia di
progetti di ogni tipo, da oggetti di uso quotidiano a strumenti scientifici complessi.
Arduino è stato inizialmente sviluppato presso l'Interaction Design Institute di Ivrea. Nasce sfruttando le
potenzialità della piattaforma Wiring, realizzata da Hernando Barragan come tesi di laurea presso l’istituto
di Interaction Design di Ivrea.
Massimo Banzi e Casey Reas furono i relatori della tesi di laurea di Hernando Barragan. Wiring e Arduino si
basano su precedenti lavori di Banzi e Reas: la piattaforma di prototipazione elettronica Programma2003 di
Massimo e la piattaforma di elaborazione di Casey e Ben Fry. Le prime versioni di Wiring e Arduino si
basavano anche sulle librerie avrlib di Pascal Stang.
Le prime schede di Arduino furono progettate da Massimo Banzi e David Cuartielles. David Mellis ha
sviluppato inizialmente il software Arduino modificando la piattaforma Wiring, anche con il contributo
iniziale di Nicholas Zambetti. Tom Igoe all'ITP di New York è stato consulente del progetto Arduino
soprattutto nella fasi iniziali. Gianluca Martino ha aiutato con la produzione e la progettazione hardware.
Il progetto Arduino è ora supportato da una società internazionale, con uffici e persone in tutto il mondo.
Il nome“Arduino”deriva da quello del bar di Ivrea frequentato dai fondatori del progetto, nome che
richiama a sua volta quello di Arduino d'Ivrea, Re d'Italia nel 1002.
[Link] della scheda
Useremo una scheda Elegoo UNO come esempio per illustrare le parti principali di una scheda Arduino UNO.
7
9
10 8
14
15 11
12
13
2
4
3 6
5
Alimentazione (USB / Jack Barrel)
Ogni scheda Arduino deve essere alimentata per poter funzionare. La vostra scheda Arduino UNO può
essere alimentata in due modi: utilizzando un cavo USB collegato al vostro computer o con un
alimentatore a parete dotato di connettore jack (barrel jack). Nella figura 1, la connessione USB è indicata
con (1) mentre la presa per il jack barrel è indicata con il numero (2).
La connessione USB consente anche di caricare il codice sulla scheda Arduino. Maggiori informazioni su
come programmare Arduino sono disponibili all’interno del nostro tutorial sull'installazione e la
programmazione della scheda.
NOTA: NON utilizzate un alimentatore con tensione superiore a 20 Volt perché è troppo elevata per la
vostra scheda Arduino. Rischiereste di sovraccaricarla e danneggiarla irreparabilmente. La tensione
consigliata per la maggior parte dei modelli Arduino è compresa tra 6 e 12 Volt.
Pin (5 V, 3,3 V, GND, analogici, digitali, PWM, AREF)
I pin della tua scheda Arduino sono i punti in cui collegherai i fili (jumper) per costruire un circuito. I
jumper si utilizzano assieme a una tavoletta per la prototipazione elettronica chiamata“breadboard”.
Le estremità dei jumper sono "intestate" con delle piccole spinette di plastica nera che ne facilitano
l’utilizzo con la breadboard.
Arduino ha diversi tipi di pin che possono svolgere varie funzioni. Di fianco ai pin è posta un’etichetta che
ne riporta il nome.
GND (3): abbreviazione di "terra" (in inglese: GRouNd). Ci sono diversi pin di tipo
“GND”su Arduino, ognuno dei quali può essere usato per mettere a terra il circuito.
5V (4) e 3,3V (5): questi pin si utilizzano per alimentare i circuiti collegati ad Arduino. Il pin 5V
fornisce una tensione stabilizzata di 5 volt, mentre sul pin 3,3V troveremo una tensione di 3,3 volt.
La maggior parte dei dispositivi e dei componenti elettronici utilizzati con Arduino funzionano
richiedono proprio queste due tensioni per poter funzionare.
Ingressi analogici (6): il gruppo di pin denominati "Analog In" (da A0 a A5) sono degli ingressi per
segnali analogici. Questi pin possono ricevere il segnale da un sensore analogico (come un sensore
di temperatura) e convertirlo in un semplice numero che possiamo leggere utilizzando uno speciale
comando di Arduino.
Pin digitali (7): Arduino UNO ha 14 pin digitali indicati con un numero che va da 0 a 13. Questi pin
possono essere utilizzati come ingressi o come uscite digitali. Possiamo utilizzarli come ingressi per
rilevare la pressione di un pulsante. Quando un pin è impostato come uscita possiamo usarlo per
inviare un segnale o per accendere un LED.
PWM (8): alcuni pin sono contrassegnati da una piccola“onda”, chiamata“tilde”(~). Sulla scheda
Arduino UNO troviamo la tilde di fianco ai pin digitali numero 3, 5, 6, 9, 10 e 11 su UNO. Questi pin si
comportano normalmente come dei comuni pin digitali, ma possono anche essere usati per generare
uno speciale segnale chiamato Pulse-Width Modulation (PWM). Più avanti troverete un tutorial sui
segnali PWM, ma per ora possiamo pensare che questi pin possano simulare in qualche modo un
segnale d’uscita analogico. I PWM si possono usare per creare l’effetto dissolvenza all’accensione
o allo spegnimento di un LED.
AREF (9): questo pin si usa per fornire una tensione di riferimento analogico. Normalmente lo si las
cia sempre scollegato e si usa in casi rarissimi, quando si voglia limitare il livello massimo di
tensione per gli ingressi analogici.
Per avere maggiori dettagli sul codice utilizzato in queste dispense potete far riferimento alla guida
ufficiale (reference) pubblicata sul sito si Arduino. Premete CTRL e cliccate sul seguente link:
[Link]