relazione finale del progetto arduino - nimt

5
Relazione finale del progetto Arduino - NIMT Gruppo 3: Salvatore Brunelli, Alessandro Del bono, Luca Guazzi, Davide Petrolini 24 febbraio 2016 La "scatola" di Arduino One può essere considerata come il punto di partenza per grandi idee e progetti. Dotato di un manuale chiaro e esplicativo del necessario per apprendere tutto ciò che si aronterà in seguito, Arduino è, in poche parole, una scheda elettronica dotata di una circuiteria e di un microcontrollore (variante avanzata del microprocessore). Da tale scheda di piccole dimensioni possono essere creati "circuiti" per progetti scientifici, basandosi sul materiale in dotazione e non,dando prova della propria abilità e del proprio ingegno. Introduzione ai principali componenti Arduino si serve di componenti elettronici che hanno tutti un specifico ruolo e funzionamento. Qui di seguito alcuni elementi comuni a tutti i progetti oerti dal manuale. Ponti : piccoli cavi elettrici di varie lunghezze e colori. Breadboard: permette di testare e costruire il circuito. Senza di questa i progetti non funzionerebbero. Questo componente, infatti, permette il passaggio di elettricità essen- do dotata di strisce metalliche conduttive parallele sotto uno strato di plastica dotato di fori in cui incastrare i vari elementi. E’ contraddistinta da due strisce laterali, rispet- tivamente rossa per “+” (polo positivo) e nera per ”-” (polo negativo),per connettere l’alimentazione e la massa; Resistenza: dispositivo che oppone resistenza al passaggio di corrente. Limita la cor- rente passante da un componente elettrico; Diodo : dispositivo che permette il passaggio di corrente in una sola direzione. Esempio LED, emettitore di luce; Cavo USB: alimenta il circuito e trasferisce il codice dal computer ad Arduino. Anché un progetto sia realmente concluso e funzionante non basta, però, assemblare i vari componenti nel modo giusto, ma occorre scrivere una parte sostanziale di codice, il cui scopo sarà far funzionare in un dato ordine e in un dato modo i vari componenti, ovvero secondo quali sono i nostri obiettivi. Infine come riportato sopra per unire le due "parti" del progetto occorre collegare il cavo USB al computer e alla scheda madre di Arduino, caricare il codice su di essa e osservare il proprio lavoro "prendere vita". Progetto NIMT Di seguito viene esposto il progetto NIMT proprio del gruppo. Dopo aver fatto pratica con il manuale e diversi circuiti, ci si è cimentati nella creazione di un circuito personale, nato dalle nostre idee. 1

Upload: duongkiet

Post on 14-Feb-2017

227 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Relazione finale del progetto Arduino - NIMT

Relazione finale del progetto Arduino - NIMT

Gruppo 3: Salvatore Brunelli, Alessandro Del bono, Luca Guazzi, Davide Petrolini

24 febbraio 2016

La "scatola" di Arduino One può essere considerata come il punto di partenza per grandi ideee progetti. Dotato di un manuale chiaro e esplicativo del necessario per apprendere tutto ciòche si affronterà in seguito, Arduino è, in poche parole, una scheda elettronica dotata di unacircuiteria e di un microcontrollore (variante avanzata del microprocessore). Da tale schedadi piccole dimensioni possono essere creati "circuiti" per progetti scientifici, basandosi sulmateriale in dotazione e non,dando prova della propria abilità e del proprio ingegno.

Introduzione ai principali componenti

Arduino si serve di componenti elettronici che hanno tutti un specifico ruolo e funzionamento.Qui di seguito alcuni elementi comuni a tutti i progetti offerti dal manuale.

• Ponti : piccoli cavi elettrici di varie lunghezze e colori.

• Breadboard: permette di testare e costruire il circuito. Senza di questa i progetti nonfunzionerebbero. Questo componente, infatti, permette il passaggio di elettricità essen-do dotata di strisce metalliche conduttive parallele sotto uno strato di plastica dotatodi fori in cui incastrare i vari elementi. E’ contraddistinta da due strisce laterali, rispet-tivamente rossa per “+” (polo positivo) e nera per ”-” (polo negativo),per connetterel’alimentazione e la massa;

• Resistenza: dispositivo che oppone resistenza al passaggio di corrente. Limita la cor-rente passante da un componente elettrico;

• Diodo : dispositivo che permette il passaggio di corrente in una sola direzione. EsempioLED, emettitore di luce;

• Cavo USB: alimenta il circuito e trasferisce il codice dal computer ad Arduino.

Affinché un progetto sia realmente concluso e funzionante non basta, però, assemblare i varicomponenti nel modo giusto, ma occorre scrivere una parte sostanziale di codice, il cui scoposarà far funzionare in un dato ordine e in un dato modo i vari componenti, ovvero secondoquali sono i nostri obiettivi. Infine come riportato sopra per unire le due "parti" del progettooccorre collegare il cavo USB al computer e alla scheda madre di Arduino, caricare il codicesu di essa e osservare il proprio lavoro "prendere vita".

Progetto NIMT

Di seguito viene esposto il progetto NIMT proprio del gruppo. Dopo aver fatto pratica con ilmanuale e diversi circuiti, ci si è cimentati nella creazione di un circuito personale, nato dallenostre idee.

1

Page 2: Relazione finale del progetto Arduino - NIMT

Materiali

• componenti elettronici vari (fili, resistenze, ponti...);

• due LED;

• una breadboard;

• una scheda madre di Arduino);

• codice compilato con Arduino;

• schermo a cristalli liquidi LCD;.

2

Page 3: Relazione finale del progetto Arduino - NIMT

Obiettivo

Il progetto consiste nel realizzare una pulsantiera che, nel momento in cui veniva toccata, ac-cendeva un led posto sulla breadboard. Successivamente è stato aggiunto a questo processol’utilizzo dello schermo a cristalli liquidi per riuscire a visualizzare la forza con cui veniva pre-muta la pulsantiera (considerata come sensore).Alle origini del progetto, attraverso il tocco e la premitura del sensore, il nostro obbiettivo eraquello di far comparire sul display un certo valore corrispondente a una determinata intensitàdi pressione esercitata sul sensore.Tale progetto da realizzare si è mostrato complicato e molto elaborato sia dal punto di vistodel codice, sia in riferimento al circuito stesso. Voleva dire creare un sensore di rilevamentopressione a tutti gli effetti. Perciò il progetto originale è stato ridimensionato, ed è spiegatonelle righe precedenti.

Storia

Abbiamo realizzato i primi progetti contenuti nel manuale di Arduino per apprendere il funzio-namento dei vari componenti elettronici, quali ponti, resistenze, sensori di luce e per impararei fondamentali sulla sua progettazione.Quando ci è stato proposto di creare un progetto a nostra scelta, abbiamo avuto qualche dif-ficoltà nel trovare cosa fare, ma soprattutto come farlo. Infine, controllando tutti i progetticontenuti nel manuale, abbiamo optato nell’unione di due di questi progetti, "rivoluzionando-li" un po’ con una nostra idea. Perciò questo progetto NIMT risulta una fusione di due progetti,studiati in precedenza, che si servono del display LCD e di un sensore capacitivo.

Spiegazione dettagliata

Utilizzando un componente aggiuntivo non contenuto nello starter-kit di Arduino nel nostroprogetto (sensore a pressione) e avendolo avuto a disposizione solo nell’ultima fase del pro-getto, abbiamo deciso di "ripiegare" su un progetto secondario che ci desse la possibilità dipreparare la maggior parte del codice finale e la possibilità di montarlo. Questo progetto se-condario, realizzato sotto consiglio del professore, consisteva nell’utilizzo, al posto del sen-sore di pressione, di un sensore capacitivo, utilizzato nel progetto 13. Un sensore capacitivo

risulta semplice da ottenere poiché basta possedere un filo di un materiale metallico

(i ponti di Arduino) che, sottoposto al tocco di un materiale conduttore di elettricità (il

nostro corpo) crea una differenza di capacità superficiale che può essere captata dalla

scheda Arduino.

Il progetto secondario è stato realizzato, poi, seguendo le linee guida del progetto originale,non prima di aver appreso dimestichezza con lo schermo LCD. Infatti l’originalità del nostroprogetto risiedeva nel creare uno schermo per visualizzare la nostra forza, dopo aver premu-to il sensore di pressione, mentre per il progetto secondario lo schermo aveva la funzione di"mettere in mostra quanto una persona sia elettrica" mostrando la differenza di capacità trail livello normale, quando il filo è a contatto con l’aria, e il livello raggiunto dopo il tocco dellapersona, ma a noi era ancora sconosciuto il funzionamento del display. Dato che incombevaquesto problema sostanziale abbiamo deciso di montare e fare il progetto 11 che prevedeval’utilizzo del display e spiegava il suo funzionamento, da cui abbiamo appreso i collegamentinecessari per il display.Appreso il funzionamento del display non rimaneva che attendere per il sensore di pressione.

3

Page 4: Relazione finale del progetto Arduino - NIMT

Il codice

Qui è riportato il codice usato per programmare la scheda Arduino. E’ essenzialmente divisoin due parti principali: void setup e void loop. Nella prima parte viene posto il codice di ini-zializzazione che formatta tutte le impostazioni e le istruzioni della scheda prima che il cicloprincipale abbia inizio. Nella seconda parte è contenuto il codice principale, che è formatoda un’insieme di istruzioni che si ripetono una dopo l’altra fino allo spegnimento della schedaArduino.

# inc lude <L i q u i d C r y s t a l . h>

# inc lude <Capacit iveSensor . h>

Capacit iveSensor capSensor = Capacit iveSensor ( 6 , 7 ) ;

L i q u i d C r y s t a l lcd (12 , 11 , 5 , 4 , 3 , 2 ) ;

i n t threshold = 30;i n t threshold2 = 800;

const i n t l e d P i n = 13;const i n t ledPin2 = 8 ;void setup ( ) {

// put your setup code here , to run once :S e r i a l . begin ( 9 6 0 0 ) ;pinMode ( ledPin , OUTPUT ) ;pinMode ( ledPin2 , OUTPUT ) ;

// set up the LCD ’ s number of columns and rows :lcd . begin (16 , 2 ) ;// P r i n t a message to the LCD .

// lcd . p r i n t ( " Sei f o r t e ! " ) ;

}

vo id loop ( ) {

lcd . setCursor ( 0 , 1 ) ;

// put your main code here , to run repeatedly :long sensorValue = capSensor . capaci t iveSensor ( 3 0 ) ;S e r i a l . p r i n t l n ( sensorValue ) ;i f ( sensorValue > threshold && sensorValue < threshold2 ) {

d i g i t a l W r i t e ( ledPin , HIGH ) ;d i g i t a l W r i t e ( ledPin2 , LOW ) ;lcd . p r i n t ( " Sei f o r t i n o ! " ) ;}e lse {

d i g i t a l W r i t e ( ledPin , LOW ) ;lcd . p r i n t ( " Tutto qui ? ! " ) ;

}delay ( 1 0 ) ;

// set the cursor to column 0 , l i n e 1// ( note : l i n e 1 i s the second row , s ince counting begins with 0)

4

Page 5: Relazione finale del progetto Arduino - NIMT

Figura 1: Il primo momento,in cui la forza non è sufficiente

Figura 2: Il secondo momento. come si vede si accende il LED rosso

Figura 3: Il terzo momento del progetto in cui la forza è tale da accendere il led verde

Consigli, suggerimenti, conclusioni

Il progetto contiene molti elementi quindi si consiglia di calcolare bene dove mettere le varieparti sulla breadboard, per non confondere il percorso di ognuno di essi, porre particolare at-tenzione al collegamento dei ponti(da effettuarsi il prima possibile poiché il loro spostamentouna volta posizionati risulta difficoltoso se la breadboard non è libera da altri componenti),non usare ponti dello stesso colore vicini affinché si possano distinguere in maniera netta eprecisa i vari percorsi che ognuno di essi segue.

Il progetto finale concluso rispetta a pieno la nostra idea che avevamo in mente. Purtrop-po si è dovuto modificarlo nel corso della progettazione, ma il risultato è comunque soddi-sfacente e può essere fonte di miglioramenti a partire del sensore capacitivo per esempio,adottandone uno magari più sensibile e professionale.

5