Arduino

Cos'è?

Arduino è una scheda elettronica open source dotata di un microcontrollore.

Come funziona?
Arduino mette in relazione gli input associati a degli output. Gli input corrispondono al linguaggio di programmazione di Arduino (Wiring). Mentre gli output provengono da dispositivi collegati ad Arduino.
Cos'è l'IDE?

Cos'è l'IDE?

L’IDE consente di utilizzare il PC per scrivere il programma, compilarlo e trasferirlo, tramite la
connessione usb di Arduino.
Come funziona l'IDE?
L’IDE presenta una finestra riservata alla scrittura del programma, alcune icone per le funzioni di
verifica, compilazione, carico e salvataggio dei programmi ed una serie di menu’ a tendina
abbastanza intuitivi. Nella sezione “aiuto” e’ anche presente un’esaustiva spiegazione di ogni
singolo elemento di programmazione (variabili, funzioni, istruzioni e relativa sintassi).
Sotto l’aspetto pratico, una volta scaricata installata e aperta l’IDE, bisogna specializzarla (una sola
volta, al primo utilizzo), selezionando “strumenti” e poi “scheda arduino….” e quindi, dal menu che
si apre, il tipo di scheda Arduino di cui si dispone (Arduino uno, Arduino mega, Arduino due, ecc.).
Per compilare, caricare e lanciare un programma si deve:
1 Collegare Arduino al pc mediante l’apposito cavo usb. Una volta collegato alcune spie di
Arduino si illumineranno per confermare il collegamento.
2 Inserire il programma nella zona di editing dell’IDE, parzialmente gia’ occupata da alcune
istruzioni predefinite. Se gia’ si dispone di un programma, sara’ sufficiente incollarlo al
posto delle istruzioni predefinite.
 3 Premere il pulsante di compilazione (la freccia rivolta a destra, piazzata nella riga dei
comandi, in alto a sinistra
4 Attendere il completamento della compilazione, rilevabile dalle scritte bianche che
compaiono nella parte bassa dell’IDE e dal pulsare, per pochi attimi, dei led che
equipaggiano Arduino.
5 Il programma, una volta compilato e caricato sulla scheda, si attiva automaticamente ed
Arduino inizia immediatamente a lavorare e a compiere le azioni per le quali e’ stato
programmato.
Qualche volta viene proposta una segnalazione di errore
poiche’ la porta usb alla quale è collegato Arduino non è stata correttamente indirizzata dal
sistema. Per rimediare è sufficiente sconnettere e riconnettere il cavo USB al pc e
poi rilanciare la compilazione.

Quali sono i tipi di Arduino?

1 Arduino Uno

Arduino UNO è formato da:
Connettori di alimentazione
Connettore USB
alimenta la scheda sfruttando i 5V presenti nelle porte USB
scambia i dati con Arduino
Alimentatore jack
Collegato a una presa il jack con un diametro interno di 2,1mm ed esterno di 5mm alimenta la scheda fornendo una tensione di 5V.
Pin di alimentazione
GND
La sigla sta per ground ovvero terra o massa, quindi indica il polo negativo di alimentazione. 
5V
questo pin fornisce una tensione di 5V regolata e stabilizzata da Arduino
3.3V
questo pin fornisce una tensione di 3,3V.
VIN
serve per portare una tensione di 12V ad Arduino 
IOREF
Questo pin sulla scheda Arduino fornisce il riferimento di tensione con cui opera il microcontrollore. 
Questa è una tensione corrispondente all'i/o di quella scheda, ad esempio uno Uno fornirebbe 5v a questo pin, ma un Due fornirebbe 3.3v. L'invio di un segnale a questo pin non fa nulla.
AREF
Se si vuole misurare qualcosa con grande precisione possiamo usare una tensione di riferimento molto stabile e precisa tra 0V e 5V (se si superano i 5V si rischia di danneggiare Arduino)  
Questo è il convertitore analogico-digitale di riferimento di tensione (ADC). Può essere utilizzato al posto del riferimento standard a 5 V per l'estremità superiore dello spettro analogico: ad esempio, se si desidera utilizzare l'ADC per monitorare un segnale con un intervallo 0-1,5 volt, è possibile ottenere l'intera scala dell'ADC collegando AREF a un segnale da 1,5V. NON COLLEGARE UN SEGNALE FUORI DALLA GAMMA DA 0V A 5V!
Pulsante reset
il Tasto reset serve per chiudere il programma in esecuzione e farlo ripartire da capo.
Pin senza etichetta
Questo pin non è utilizzato, ma è presente per garantire la compatibilità con i prodotti futuri.
Pin digitali 
0-13
Pin analogici
A0-A5
Arduino ha 6 pin in grado di leggere livelli analogici e trasformarli in numeri.
Pin PWM 
3-5-6-9-10-11
PWM (Puls Width Modualtion) modulazione a larghezza di impulso. 
Un segnale PWM é un onda quadra dove varia il rapporto tra tempo HIGH e tempo LOW. 
Avendo tempi diversi di HIGH la tensione media risultate varia. 
Si possono regolare certe utenze in modo semplice e senza grossa dissipazione di calore nell'elemento del regolatore perché questo accende e spegne l' utenza in intervalli regolari e non abbassa la corrente /tensione perché aumenta la propria resistenza. 
Questi 6 Pin hanno questa funzione PWM implementata via Hardware tramite i 3 Timer del ATmega. Visto che é un implementazione HW non serve nessuna programmazione continua ma solo un setaggio iniziale (automatico fatto dallo IDE) e la programmazione del valore di PWM tramite analogWrite(pin, valorePWM). 
La frequenza di ripetizione della onda quadra é nel Arduino normalmente di 490 Hz, che puó essere modificata.
Pin di connessione
ICSP 1
Il connettore ICSP 1 serve per programmare l'ATmega 328 in modalità ISP (con programmatore hardware), obbligatoria quando devi caricare il bootloader, ma volendo anche un programma su un ATmega vergine o non dotato del bootloader, inoltre questo connettore può essere usato per il bus SPI.
ICSP 2
Il connettore ICSP 2 serve per programmare in modalità ISP l'ATmega 8/16 u2 che fa da convertitore USB-seriale.

2 Arduino Mega2560

Qiesta scheda ha 54 porte di input/output, 16 ingressi analogici e 4 porte seriali.

Al suo interno ha un aTmega2560.

La gestione della porta USB è affidata a un secondo microcontrollore aTmega16u2. 


3 Arduino Leonardo

L'arduino Leonardo è molto simile a arduino uno, si differenzia per avere un ATmega32u4 e la comunicazione USB è gestita da un solo chip


4 Arduino Ethernet
Arduino Ethernet ha una scheda ethernet integrata e troviamo un alloggiamento per una scheda micro sd sulla quale si possono salvare file e pagine HTML, non è presente la porta USB quindi per programmare si deve utilizzare una scheda usb seriale

5 Arduino Yùn

yun significa nuvola in cinese e ha una scheda wifi integrata, una presa ethernet con un chip aggiuntivo SoC Atheros AR9331 un computer  su cui è stato caricato un sistema GNU/Linux, che puo eseguire task, programmi, ospitare un web server, pubblicare servizi web e comunicare con l'Atmega. 

6 Arduino Due

arduino due ha un microcontrollore di tipo ARM (Cortex-M3 SAM3X8E di Atmel), questo lavora a 16 MHz con 32 bit e lavorando a 3,3 V. ha 2 uscite analogiche DAC0 e DAC1, a cui sono collegati dei convertitori digitali analogici (DAC), con cui è possibile creare dei segnali analogici per controllare dispositivi analogici. inoltre si puo utilizzare una libreria chiamata audio library con cui riprodurre facilmente audio presenti su una scheda sd.


7 Arduino Micro
Arduino Micro utilizza un ATmega32u4 ha 20 pin digitali e 12 ingressi analogici e 6 pin ICSP.

Per essere programmato ha una porta micro-USB.



8 Arduino Nano

utilizza un ATmega328 e ha una porta usb.


9 Arduino Mini

utilizza un ATmega 328 con 14 pin digitali e 8 ingressi analogici e si programma utilizzando un cavo usb seriale.


10 Arduino Pro Mini

ha un ATmega328 con 14 pin digitali e 6 ingressi analogici si programma utilizzando un cavo usb seriale ed è acquistabile a 16 o 8 MHz con rispettivamente 5 e 3,3 V.

11 Arduino FIO


 Ospita un ATmega328P alimentato a 3,3 V ha 14 pin digitali e 6 ingressi analogici, si programma con il sistema usb seriale è wireless intatti ospita un XBee e grazie a ciò può essere programmato dal pc con un secondo XBee.


12 Lilypad Arduino

13 Lilypad USB

14 Mega ADK
utilizza un controllore ATmega2560 sarebebbe la scheda Arduino Mega in una versione per Android.

15 Arduino Esplora
Arduino esplora ha un joystick resistivo, 4 pulsanti, LED, un microfono, un buzzer, un accelerometr. e si puo aggiungere un display LCD a colori utilizza un ATmega32u4 a 16 MHz.

16 Arduino Robot

17 Arduino Tre

18 Arduino Zero
19 Arduino Pro

20 Arduino BT

21 Arduino Galileo

22 Arduino101
23 Sanguino



Commenti