Relazione progetto Arduino

Documenti analoghi
8^ parte: Pilotare Motori passo-passo unipolari usando l integrato ULN2003A. Author: Ing. Sebastiano Giannitto (ITIS M.

Access Control Ivancich Stefano 31 Luglio 2014 TEKNEW - Studio Medici - Marcon(VE)

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

PIEDINO NOME DESCRIZIONE

TERMOMETRO LCD BASATO SUL TRASDUTTORE DI TEMPERATURA ANALOGICO LM 35

7^ parte : Acquisizione della temperatura con LM35 e visualizzazione su display LCD. Author: Ing. Sebastiano Giannitto (ITIS M.

8^ parte : Come pilotare i motori passo-passo unipolari. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

DISPLAY LCD I2C (PCF8574T) ARDUINO

Termometro digitale. Ivancich Stefano

Genere DATA Generalità Note Distribuzione

FONDAMENTI DI ARDUINO

Far lampeggiare un led o forse un semaforo?

Corso Base Arduino ed Elettronica

Display OLED 128 x 64

Display numerico con i LED

Programming with arduino. Lesson 10/05/2017

Come utilizzare il modulo ESP8266 per comodare Arduino da Smartphone

Controllo di una soglia analogica

Relazione finale del progetto Arduino - NIMT

ELETTRONICA CON ARDUINO

KeyPad LCD Shield ( blue )

E labirinto cronaca di un fallimento

TESINA di Prisco Fabio

La Keyes 4 relay non è proprio una shield nel senso classico definito nel mondo arduino in quanto una shield dovrebbe essere concepita per essere

Cos'è Arduino? rilasciata con licenza di tipo open source.

Arduino& Potenziometro

Alunna: Gennuso Ylenia classe VB a.s. 2014/2015

5^ parte : Controllare un LED RGB con 3 potenziometri. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

TITOLO DEL PROGETTO. Ing. Francesco Cozzolino. Prof. Ferdinando Implacabile. Prof. Giuseppe Caccavale

PRIMI PASSI CON ARDUINO

14^ parte : Sensore a ultrasuoni HC SR04 e Arduino. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

D sistema d allarme con sensori magnetici

============================================================================

Robot Beginner Kit 4WD

In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a

Radar con Arduino. da Emanuele Lovera - Blogger

Lezione 9: Come associare un modulo RTC ad Arduino

Relazione progetto serra - Arduino

CTU Presenta. Contest Automation con Arduino. IK0XBX - Francesco

D.A.M. Bros Robotics -

Introduzione teorica al microcontrollore Arduino UNO

Corso di programmazione Arduino DI MALVEZZI DAVIDE

ACCESSORI INTERNI. Accessori vari OROLOGIO ANALOGICO CLASSIC OROLOGIO ANALOGICO F1 OROLOGIO ANALOGICO CRONO OROLOGIO ANALOGICO SPORT

Salvare i dati rilevati dai sensori di Arduino

Relazione progetto Arduino

8^ parte: Pilotare Motori passo-passo bipolari usando l integrato L293D. Author: Ing. Sebastiano Giannitto (ITIS M.

CORSO ARDUINO. Jacopo Beli Giulio Fieramosca Luca Mati GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii 1

SENSORI OTTICI - FOTORESISTENZE

ARDUINO UNO. Raccolta esercitazioni guidate 1 Led & Pulsati. IIS Aldini Valeriani Sirani - ROBOTS project Scheda 1 # 1 Materiale didattico

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

RTC.set(DS1307_DOW,4); //set the day of the week RTC.set(DS1307_DATE,10); //set the date RTC.set(DS1307_MTH,11); //set the month

Uno scenario IoT Maker Faire Rome, ott Internet of Things Duilio Peroni Alessandro Saracino

HP LED Driver Shield. EtherMania di Signorini Marco Via Cadore MALNATE (VA) P.I REA VA

KIT METEORETE FORNITO DI:

GESTIONE DELLE INTERRUZIONI (INTERRUPT)

Videocitofonia 2 FILI

POLYX Videocitofono vivavoce

Per vedere tutti i tutorial:

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Lezione 3 PWM e motori. Stefano Panichi e Giulio Fieramosca

ACCENDERE E SPEGNERE UN DIODO LED

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca

CODIFICA E RICETRASMISSIONE DI UN SEGNALE

COME UTILIZZARE IL SENSORE DI TEMPERATURA TMP36

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca

Cavo Thunderbolt 3 USB-C (20Gbps) da 2 m - Compatibile con Thunderbolt, USB e DisplayPort - M/M

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

ITI AUGUSTO RIGHI ESAME DI STATO A.S. 2013/2014. Tesina di. Serrano Pietro VB Informatica. Home Automation

Quindi dopo aver collegato tutto avremo qualcosa di simile:

Università degli Studi di Cagliari

Tesina di Maturità. Gianfriddo Giuseppe Classe: 5^B I.T.I.S Indirizzo: Elettronica ed elettrotecnica Anno: 2014/15. Autore: Gianfriddo Giuseppe

Console KVM per montaggio a Rack 1U con hub USB incorporato - Schermo da 17" con layout tastiera Americana p

Transcript:

Relazione progetto Arduino A cura di Francesca Cella e Andrea Marras Il progetto che abbiamo realizzato è un dispositivo in grado di leggere la temperatura, l umidità presente nell aria e di tenere il conto della data e dell ora correnti, alternando la stampa a video delle due informazioni tramite un ciclo che si aggiorna ogni lasso di tempo definito nel programma. Il dispositivo si avvale della tecnologia Arduino UNO, famosa per la sua facilità di programmazione e per essere alla portata di chiunque abbia una minima base di conoscenza dei suoi linguaggi, pur non avendo praticamente basi di elettronica. Per la realizzazione del progetto abbiamo utilizzato i seguenti componenti: - Scheda Arduino UNO - Display LCD di dimensioni 16x9 mm, in dotazione con la scheda - Potenziometro - Sensore di Temperatura e umidità DHT 11 - Modulo RTC ds1307 per la data e l ora - Jumper

Fase 1: Progettazione Una volta creata la nostra idea, per la progettazione ci siamo ispirati a vari progetti e dispositivi già ampiamente presenti nel web. Dopo le prime ricerche e documentazioni, grazie al programma gratuito Fritzing, abbiamo creato la base da cui partire per la realizzazione del dispositivo. Il programma, purtroppo, non era dotato di due dei componenti che avevamo scelto per il dispositivo (in particolare il DHT 11 ed il modulo RTC ds1307), tuttavia non è stato un grosso problema, poiché, essendo Arduino e tutti i suoi dispositivi compatibili, molto facili ed intuitivi da utilizzare, siamo riusciti comunque a creare tutti i collegamenti. Per l alimentazione abbiamo scelto di utilizzare un cavo per collegare la scheda alla porta USB del computer (5V), in questo modo avremmo potuto alimentare il dispositivo e nel frattempo programmarlo, in modo da vedere immediatamente i progressi col codice. Ecco un immagine del progetto realizzato con Fritzing: Sensore DHT 11 Potenziometro Modulo RTC ds1307 Scheda Arduino UNO Display LCD Fase 2: Assemblaggio Una volta creato il progetto virtuale, abbiamo iniziato a collegare fisicamente i vari componenti, iniziando dal Display LCD, in modo da poter stampare in seguito qualsiasi informazione e verificare che tutti i collegamenti futuri sarebbero stati corretti. Il display in dotazione può stampare due righe di caratteri, perfette per il tipo di informazioni che vogliamo visualizzare. Con l uso del potenziometro è possibile regolare luminosità e contrasto, evitando inoltre che lo schermo possa bruciarsi con un eccessivo voltaggio.

Una volta appurato che lo schermo fosse correttamente connesso e funzionante, abbiamo collegato i componenti restanti: Sensore DHT 11 Modulo RTC -Dal DHT 11 abbiamo un filo rosso collegato alla breadboard, collegata a sua volta con l uscita 5V della scheda Arduino; un filo blu collegato alla breadboard che è collegata tramite il filo giallo all uscita GND della scheda Arduino; un filo azzurro collegato al rispettivo pin di Arduino, che serve per trasportare i dati. - L RTC ds1307 è collegato con un filo arancione e un filo blu, rispettivamente all uscita dei 5V e GND di Arduino, mentre il filo verde e il filo nero portano le informazioni ai rispettivi pin di entrata analogica.

Fase 3: Codice La programmazione è avvenuta di pari passo con il collegamento di tutte le componenti hardware del dispositivo, questo per evitare di dover rincominciare da capo nel caso in cui avessimo sbagliato qualche collegamento. Possiamo dividere il corpo del programma che abbiamo realizzato in tre parti principali: 1) Inizializzazione della scheda Arduino, con inclusione e dichiarazione delle librerie necessarie al funzionamento dei componenti fisici e delle entrate ad essi associate; #include <RTClib.h> #include <dht11.h> #include <LiquidCrystal.h> #include <Wire.h> #define DHT11_PIN 10 #define RTC_PIN 6 LiquidCrystal lcd(12, 11, 5, 4, 3, 2); dht11 DHT; RTC_DS1307 RTC; char buffer1[20]; char buffer2[20]; 2) Controllo all accensione di tutti i vari componenti; void setup() { lcd.begin(16, 2); Wire.begin(); RTC.begin(); if (! RTC.isrunning()) { RTC.adjust(DateTime( DATE, TIME )); 3) Ciclo per la stampa delle informazioni. void loop() { int chk=dht.read(dht11_pin); //Stampa a video temperatura e umidità lcd.setcursor(0, 0); lcd.print("umid: "); lcd.print(dht.humidity,1); lcd.print("%"); lcd.setcursor(0, 1); lcd.print("temp: "); lcd.print(dht.temperature,1); lcd.print(" gradi"); delay(3000); //pulizia artigianale del display per evitare sovrapposizioni lcd.setcursor(0,0); //Stampa della data e dell ora RTC_DS1307 RTC; DateTime now = RTC.now();

lcd.setcursor(0,0); lcd.print("data: "); sprintf(buffer1, "%d/%d/%d",now.day(),now.month(),now.year()); lcd.print(buffer1); lcd.print("ora: "); sprintf(buffer2, "%d:%d:%d", now.hour(), now.minute(), now.second()); lcd.print(buffer2); delay(3000); lcd.setcursor(0,0);