Arduino UNO - Hardware

Ciao a tutti!
Federico vi aveva già fatto una specie di introduzione a questa fantastico gioiellino made in Italy.
Cominciamo ora a vederlo un po’ più nel dettaglio, dopodiché potremo partire a ruota sui tutorial e sporcarci un po’ le mani.

In questo articolo ci addentreremo maggiormente nell’hardware, in quello successivo vedremo come preparare il nostro computer per poter cominciare a lavorare e qualche hello world.

Il cuore di Arduino UNO è un microcontrollore della famiglia AVR di Atmel.
Grazie ad attenti studi e sviluppi, Arduino è diventato la più economica e flessibile soluzione per manifestare la vostra creatività interattiva, circuitale e informatica.

Come possiamo vedere dalla Fig.1 ci sono due porte:

  1. Porta USB (type B) che ci permette di collegare il nostro Arduino al computer per poi caricare il nostro codice sulla memoria interna della scheda e fornirgli anche l’alimentazione che porta l’USB: 5 Volt.
  2. Se vogliamo che il nostro lavoro si alimenti senza collegamento al computer, il connettore 2 farà al caso nostro. Questo infatti permette di collegare alla vostra scheda un alimentatore esterno da 7 a 12V che sarà poi ridotta ai canonici 5V e a 3.3V da un regolatore interno.

I/O Diglitale
I pin digitali sono stati progettati in modo che possano passare dalla modalità ingresso alla modalità uscita attraverso la scrittura di opportuni valori in appositi registri di controllo.
Quando i pin sono settati come Output, i valori logici che possono assumere sono due: 1 e 0 che rappresentano rispettivamente i 5V e 0V.

Ingresso Analogico
Con Arduino non possiamo generare segnali analogici con la stessa precisione che abbiamo in ingresso.
Vediamo ora come un segnale analogico viene gestito in ingresso. Per poter essere processato, prima di tutto il segnale analogico viene passato in un convertitore analogico digitale (A/D). Questo è un circuito che permette di misurare istantaneamente la tensione in ingresso ogni qual volta viene interrogato. A questa rilevazione gli viene attribuito un valore binario. L’intervallo di tensioni misurabile viene suddiviso in tanti livelli discreti quanti sono i valori esprimibili con i bit a disposizione. Il convertitore di Arduino è a 10 bit e quindi si può esprimere (2^10) 1024 valori distinti. Quindi in pratica con Arduino possiamo leggere valori analogici fra 0 e 5V con 1024 livelli discreti. La frequenza massima di lettura senza usare altre shield è di circa 9 kHz che permette quindi di campionare frequenze fino a 4,5 kHz.

Uscita analogica- PWM
PWM sta per Pulse Width Modulation ed è una tecnica per simulare la variazione di tensione sempre a step discreti tra 0 e i 5V. In pratica il segnale prodotto varia solo tra i livelli logici 0 e 1 (cioè gli 0 e i 5V) ma il rapporto fra i livelli viene variato all’interno del singolo ciclo per simulare una variazione di tensione. Quindi se volessi fornire al dispositivo 0.5V, basterà generare un segnale PWM con il 10% del ciclo positivo oppure se volessi fornirne 2.5V allora il ciclo positivo sarà del 50%.

Facendo una media nel tempo della tensione otterremo quindi una serie di livelli variabili tra 0 e 5V, pari agli step disponibili per il duty cycle del PWM. Con Arduino il PWM è a 8bit ovvero ha 256 livelli.
Questo discorso verrà ripreso in un articolo successivo con un tutorial che ci permetterà di creare un circuitino con un led la cui luminosità varia grazie a un potenziometro.

Vediamo ora tutti i pin, lucine, cazzi e mazzi di Arduino UNO.

Partendo dal punto 3 si hanno

  • Vin: questo pin permette di dare un modo alternativo per l'alimentazione del dispositivo. Infatti è da qui che (oltre a 2) si può alimentare tramite batterie tra i 7 e i 12V. Nota: 2 e Vin sono collegati tra di loro quindi se da 2 si portano 10V anche su Vin ci saranno 10V.
  • 5V: pin da cui si possono prendere i 5V. I 5V arrivano o dall’alimentazione della porta USB (1) oppure dal regolatore che porta le tensioni tra i 7 e 12V a 5V.
  • 3.3V: pin da cui possono prendere 3.3V la cui corrente massima disponibile è di 50mA.
  • GND: Ground, terra.
  • IOREF: roba da shield, lo vedremo un’altra volta.

Al punto 4 vi sono i sei pin degli ingressi analogici. Su questi si possono leggere valori di tensione che variano tra gli 0 e i 5V riferiti a massa. Si può anche diminuire (NON aumentare) la tensione massima attraverso il pin AREF in 5.

Al punto 5 vi sono i 14 pin che possono fare I/O digitale. Ciascuno di questi pin può fornire o assorbire al massimo 40mA e fornire 5V quando attivi. Alcuni pin hanno delle etichette che indicano alcune proprietà particolari se specificate nel codice.

  • Pin 0 (RX) e Pin 1 (TX): permettono di dialogare in seriale con livelli TTL con altri dispositivi ricevendo su pin 0 e trasmettendo sul pin 1.
  • Pin 2 e 3: possono essere utilizzati per attivare interrupt esterni. Per ora non approfondiamo.
  • Pin con ~: questi pin supportano i segnali PWM.

Ok.. per l'introduzione all'hardware credo che possa bastare.
Per ulteriori dettagli rimando al sito ufficiale di arduino 😉

Cheers 😉

Fonti: Primi passi con ARDUINO

Ingegnere Informatico e Ricercatore se compiace al Prodigioso Spaghetto Volante. Sono uno spartan racer, massimo esperto di serie tv, fotografo amatoriale e appena ne ho l’occasione preparo la valigia e parto

Arduino UNO - Hardware ultima modifica: 2012-12-13T13:45:03+01:00 da Andrea Salvi


Advertisment ad adsense adlogger