Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoRaimonda Cuomo Modificato 10 anni fa
1
Developed by Gianluca Paolocci, Silvio Molinari e Luca Corcione
HOUSE MANAGER Developed by Gianluca Paolocci, Silvio Molinari e Luca Corcione
2
QUANTE VOLTE DOPO ESSERE USCITO DI CASA TI SEI CHIESTO
- ’’ ho spento la luce ?!?!’’ - ’’ se c’è una perdita di gas ?!?!’’ - ’’ se entra qualcuno in casa come faccio a saperlo?!?!’’ HOUSE MANAGER E’ STATO PENSATO PROPRIO PER RISPONDERE A QUESTE DOMANDE!
3
Il progetto House Manager si pone l’obiettivo di fornire un servizio di monitoraggio della propria casa, in modo da garantire sicurezza e benessere agli abitanti. Per quanto riguarda la sicurezza, è possibile attivare un sistema di controllo che avvertirà gli utenti in caso di intrusione nell’appartamento o di eventuali fughe di gas. Inoltre si può essere informati circa la temperatura e l’umidità interna della casa e se è piovuto o meno nei dintorni.
4
I SENSORI E DISPOSITIVI UTILIZZATI PER IL FUNZIONAMENTO DI ARDUINO SONO:
- EthernetShield w5100 per il collegamento ad internet e LAN - DHT 11 per temperatura ed umidità - Sensore mq2 per rilevamento dei gas e fumo - PIR per il movimento - Fotoresistenza per la luce - Sensore di Acqua per la pioggia - Display LCD 16x2 con controller Hitachi HD44780 per mostrare informazioni in tempo reale su Arduino stesso - Buzzer pizoelettrico che suona quando scatta un allarme - Led RGB con colori diversi in base allo stato: Verde (lampeggiante): Allarme attivo Rosso (lampeggiante): Pericolo o intrusione rilevata Blu: Inizializzazione, dispositivo Android connesso
5
Appena acceso Arduino effettua dei passaggi di Inizializzazione:
Configurazione sensori Inizializzazione LCD Inizializzazione EthernetShield, con stampa a schermo dell’ IP Locale - Creazione server Calibrazione del sensore di luce in base alla stanza in cui ci troviamo Durante questi passi preliminari il led rimarrà acceso di colore Blu. Successivamente il Led si spegnerà e l’LCD ci avviserà che House Manager è in funzione. A questo punto possiamo collegarci col nostro dispositivo Android.
6
L’allarme è attivabile tramite un bottone posto sulla breadboard bianca.
Se l’ allarme è attivo il led comincerà a lampeggiare di Verde e se vengono rilevate intrusioni o fughe di gas lampeggerà di Rosso contemporaneamente a un ‘’beep’’ emesso dal Buzzer pizoelettrico. Inoltre ogni emergenza sarà anche notificata sull’ LCD. Ad ogni richiesta effettuata dal dispositivo Android i dati saranno inviati e il led lampeggerà di Blu.
8
Abbiamo scelto il protocollo HTTP poiché semplice da usare e da impostare su router per accesso da remoto (tramite porta 80). I dati vengono continuamente inviati tramite un file JSON denominato HM.json . JSON (JavaScript Object Notation) è un formato adatto per lo scambio dei dati in applicazioni client-server.
9
JSON è un formato di testo completamente indipendente dal linguaggio di programmazione, ma utilizza convenzioni conosciute da linguaggi come C, C++, Java, JavaScript, Python, e molti altri. Per le persone è facile da leggere e scrivere, mentre per le macchine risulta facile da generare e analizzarne la sintassi. Permette di creare tuple CHIAVE-VALORE che nel nostro caso sono SENSORE-DATO e altri tipi di informazioni.
10
JSON è basato su due strutture:
Un insieme di coppie nome/valore. In diversi linguaggi, questo è realizzato come un oggetto, un record, uno struct, un dizionario, una tabella hash, un elenco di chiavi o un array associativo. Un elenco ordinato di valori. Nella maggior parte dei linguaggi questo si realizza con un array, un vettore, un elenco o una sequenza
11
Tramite Arduino inviamo il file JSON che passa i valori dei nostri sensori ad ogni richiesta da parte del client. Es. // temperature client.print(’’{’’); …. client.print( ’’,\’’temp\’’:\’’); client.print(dht.getTemperature(),1); client.print(’’\’’’’); // humidity client.print(’’,\’’humi\’’:\’’’’); client.print(dht.getHumidity(),1); client.print(’’}’’);
12
import org.json.JSONObject
Per ricevere i dati da Arduino nel codice della nostra App abbiamo utilizzato una libreria apposita per JSON: import org.json.JSONObject Es. JSONObject jso = new JSONObject(response); //creazione oggetto … float fTemp = (float) jso.getDouble("temp"); //ottenere temperatura float fHumi = (float) jso.getDouble("humi"); //ottenere umidità
13
Il client Android è composto da un’ interfaccia user-friendly che permette di:
-Controllare su di un’unica view lo stato dei sensori. -Monitorare tramite un grafico l’ andamento della temperatura e dell’ umidità nella casa. -Attivare o disattivare il monitoraggio (singolo o continuo) a distanza.
14
Nel menù impostazioni è possibile:
Realizzare lo scanning automatico attraverso il ‘’pingaggio’’ di tutte le combinazioni di IP della sottorete. Impostare l’ indirizzo IP al quale connettersi tramite HTTP. Cambiare il time-out dello scan automatico. Cambiare il timer di aggiornamento dello stato dei sensori .
15
Oltre a rilevare Temperatura e Umidità, come già detto, HOUSE MANAGER fornisce un sistema di allarme sia in caso di fuga di gas sia in caso di intrusione nell’ appartamento. Per far si che ci venga notificato il pericolo, l’allarme deve essere ATTIVO. Se l’allarme è attivo e viene rilevata una certa quantità di gas si avvierà un Activity accompagnata da un suono che ci avvertirà della presenza di una fuga di Gas.
16
Per quanto riguarda l’intrusione in casa, invece, la questione è un diversa.
Se l’allarme è ATTIVO, quando Arduino rileva un movimento oppure rileva contemporaneamente la presenza di luce e un movimento, il valore della variabile BUZZER passa da 0 a 1 evocando l’Activity, la quale, sempre accompagnata da un suono (diverso dal precedente), ci segnala l’intrusione.
17
L’ Activity dell’ allarme viene evocata attraverso un Intent.
L’ Intent viene parametrizzata con dei valori, grazie ai quali, l’Activity viene lanciata in testa allo stack delle altre Activity che girano in background. In questo modo, si notificherà in primo piano l’allarme e sapremo in qualsiasi momento le situazioni di vera emergenza.
18
Applauso grazie!!!
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.