Title: Dimostrazione di Acquisizione e Distribuzione dati della Temperatura tramite Arduino Uno
1ITC FOSSATI A.S. 2012/2013 TESINA di FABIO PRISCO
Applicazione pratica del microcontroller Arduino
UnoDimostrazione di Acquisizione e
Distribuzione dati della Temperatura e Umidità
2Passaggi della progettazione
3Progettazione Cablaggio
Come dispositivo in INPUT utilizzo il sensore
DHT11. I collegamenti da fare sono 3
-pin 1 connesso a 5v -pin 2
connesso al MC e in serie ad una resistenza da
5Kohm -pin 3 connesso a massa
1
4Progettazione Cablaggio
Il dispositivo in OUTPUT invece sarà uno schermo
LCD 16x2. I collegamenti fondamentali sono -pin
1 connesso a GND -pin 2 connesso a 5v -pin 3
connesso al potenziometro (per il contrasto dei
caratteri) -pin 5 connesso a GND -pin
4,5,10,11,12,13 connessi ai pin digitali
dellArduino -pin 14 connesso in serie ad una
resistenza da 220ohm (per la retroilluminazione)
-pin 15 connesso a massa (per la
retroilluminazione)
1
5Progettazione Cablaggio
Schema del circuito finale
6Progettazione Cablaggio
circuito fisico
7Progettazione Programmazione
- La programmazione di Arduino necessita luso del
linguaggio C ( C sharp). - Cos'è Il CIl C è un linguaggio di
programmazione orientato agli oggetti e si
pronuncia C Sharp.Esso è un linguaggio di
programmazione semplice,combina l'elevata
produttività dei linguaggi per lo sviluppo rapido
di applicazioni (Rapid Application Development,
RAD) con le potenzialità del linguaggio C.
Il Programma del progetto
8Progettazione Programmazione
- Il programma è così strutturato
- -dichiarazione delle librerie, delle variabili e
dei pin occupati dai sensori - -ltltVoid Setup()gtgt settaggio delle impostazioni di
interfacciamento con il pc, dichiarazione degli
INPUT e degli OUTPUT, chiamata ed esecuzione
della funzione inizio - -ltltVoid Loop()gtgt acquisizione dei dati, SE i dati
sono vuoti visualizzo il messaggio errore, SE
ci sono i dati li visualizzo su LCD e li invio al
pc tramite PLX - -ltltVoid Inizio()gtgt definizione della funzione
inizio. - Il programma utilizzato per la programmazione del
microcontrollore si trova al sito - http//arduino.cc/en/Main/Software
- mentre il programma per acquisire i dati e
registrarli su Excel si trova allindirizzo - http//www.parallax.com/tabid/393/default.aspx
Programma su pc
9Progettazione Acquisizione
Per acquisire i dati dall Arduino ho utilizzato
i comandi Serial.print(t) Serial.print(h) I
quali inviano i dati in via seriale al pc che,
tramite il programma PLX, li visualizza su
Excel. Cosi facendo estraggo i dati da Excel e
li salvo su Access per memorizzarli nel database
che conterrà le temperature ed umidità
raccolte.
10Progettazione Acquisizione
Una volta creato il database ed inseritoli le
temperature, creo le pagine ASP (Active Server
Pages) per interrogare il database e visualizzare
i dati raccolti sul sito web da me creato. Il
sito si trova a questo indirizzo
http//free.7host07.com/fabiopri//index.htm
11Progettazione Pubblicazione
Per creare il mio sito, ho utilizzato pagine HTML
ed ASP. Ho creato una pagina
introduttiva dove bisogna loggarsi o registrarsi
e una volta connessi si visualizza la homepage
che contiene i dati del mio progetto con i
relativi link alle temperature ed umidità
raccolte che ho salvato nel database. Lo schema
del sito è riconducibile a questo
12- Storicamente si riconosce a Galileo Galilei
(1564-1642) linvenzione del termometro, anche se
sappiamo che già alcuni secoli prima di Cristo, i
greci Galeno ed Erone avevano messo a punto
sistemi per evidenziare le differenze di
temperatura dellatmosfera sfruttando
lespansione dellaria legata allaumento della
temperatura. Galileo in realtà mise a punto un
termoscopio, in grado di misurare delle
variazioni di temperatura. - Un allievo di Galileo, costruttore di strumenti,
divise la scala del termometro in 360 parti, come
in un angolo giro, e per questo si cominciarono a
chiamare gradi le parti della scala del
termometro.
13- Nel 1714 fu introdotto luso del mercurio perché
più affidabile nellaccuratezza della misura.
Solo nel 1742, grazie al contributo di Anders
Celsius (1701-1744), si fissarono il punto di
congelamento e quello di ebollizione dellacqua
come i due parametri per la taratura dei
termometri e la divisione in 100 parti dello
spazio compreso tra i due limiti. Thomas Clifford
Albutt (1836-1925), modificò il termometro
divenne lungo 15 cm e permise di ottenere la
misura in modo rapido e accurato è lo stesso
termometro che usiamo noi oggi o meglio che
abbiamo usato fino al 2009 ,da quando è stato
bandito luso dei termometri a mercurio a causa
della tossicità di questo elemento, ora
sostituito da una lega di gallio, indio e stagno.
14- Negli ultimi anni però è stato sviluppato, grazie
allelettronica, - un nuovo tipo di termometro detto digitale.Il
principio di funzionamento è questo c'è un
sensore di temperatura (di solito una
termoresistenza) che, opportunamente alimentato a
corrente costante, genera un segnale in tensione
variabile con la temperatura. Il segnale in
tensione viene campionato e convertito in formato
digitale con un ADC (Analog to Digital
Converter), e il valore ottenuto viene mandato a
un display.
15Arduino
Arduino è un framework open source che permette
la prototipazione rapida e l'apprendimento veloce
dei principi fondamentali dell'elettronica e
della programmazione. È composto da una
piattaforma hardware sviluppata presso l
Interaction Design Institute, fondato da Olivetti
e Telecom Italia. Il nome della scheda deriva da
quello di un bar di Ivrea frequentato da alcuni
dei fondatori del progetto. Questa si basa su un
circuito stampato che integra un microcontrollore
con pin connessi alle porte I/O e USB che
permette la comunicazione con il computer.
16Arduino
- La piattaforma hardware Arduino è spesso
distribuita agli hobbisti in versione
pre-assemblata, acquistabile in internet o in
negozi specializzati. Grazie alla base software
comune, ideata dai creatori del progetto, per la
comunità Arduino è stato possibile sviluppare
programmi per connettere a questo hardware più o
meno qualsiasi oggetto elettronico, computer,
sensori, display o attuatori. Dopo anni di
sperimentazione è oggi possibile fruire di un
database di informazioni vastissimo.
17Possibili sviluppi..
- Molti programmatori, negli ultimi anni, si sono
appassionati a questa piattaforma e per questo è
possibile trovare numerosi esempi di utilizzo
dell'Arduino online con video dimostrativi. Il
più interessante, a mio parere, è lutilizzo
dellArduino nella domotica. Con lo sviluppo
degli smartphone, che ormai hanno rimpiazzato i
normali telefoni cellulari, sono stati creati
programmi che, tramite lutilizzo di specifiche
applicazioni, interagiscono con lArduino e di
conseguenza con la casa. - In questo modo si potrà controllare la sicurezza
della propria casa o magari interagire con gli
oggetti elettronici presenti in essa, (come luci,
porte, sistema di riscaldamento, frigorifero)
anche quando si è molto lontani da casa, solo
grazie al proprio cellulare.
Esempio
18Il progetto
19Collegamenti
- Cablaggio
- DHT11 --------
- LCD --------
- Arduino -------
- Video
- domotica ------
20gtFINE
21Domotics
- Domotics is a remote control of principal
electronics parts of house. With a simple
smartphone you can check your fridge or activate
the heating system, if you want a warm house when
finish work and return home.
22DataSheet
DHT11
LCD 16x2
23Framework
- In informatica, e specificatamente nello sviluppo
software, un framework è una struttura logica di
supporto su cui un software può essere progettato
e realizzato. Alla base di un framework c'è
sempre una serie di librerie di codice
utilizzabili con uno o più linguaggi di
programmazione, spesso corredate da una serie di
strumenti di supporto allo sviluppo del software,
come ad esempio un IDE, un debugger, o altri
strumenti ideati per aumentare la velocità di
sviluppo del prodotto finito.
24Open Source
- Open source, (termine inglese che significa
codice sorgente aperto), in informatica, indica
un software i cui detentori dei diritti ne
permettono e favoriscono il libero studio e
l'apporto di modifiche da parte di altri
programmatori indipendenti. - Il fenomeno ha tratto grande beneficio da
Internet, perché esso permette a programmatori
geograficamente distanti di coordinarsi e
lavorare allo stesso progetto.
25Il Programma
Programma principale
Parte 2 della funzione
Parte 1 della funzione