Sei sulla pagina 1di 32

PROGETTAZIONE E SVILUPPO DI UN'APPLICAZIONE WEB PER LA CONFIGURAZIONE E LA VISUALIZZAZIONE DI UN SISTEMA DOMOTICO BASATO SU PROTOCOLLO ZIGBEE

IRENE BONT

PROGETTO DI RICERCA METROPOWER


SVILUPPO
DI UNA PIATTAFORMA PER LINTERNET DELLE COSE

SISTEMA METROPOWER
LINTERFACCIA
CONSENTE DI ACCEDERE AI SINGOLI NODI DELLE RETI

INDIPENDENTE DAL
PROTOCOLLO DI

COMUNICAZIONE

TESI: INTERFACCIA PER UNAPPLICAZIONE


DOMOTICA BASATA SUL

PROTOCOLLO ZIGBEE

PROTOCOLLO ZIGBEE
STANDARD PER RETI DI SENSORI E ATTUATORI WIRELESS
BASSO CONSUMO E BASSO DATARATE

UTILIZZA IL PROTOCOLLO IEEE 802.15.4

HARDWARE
Gateway ZigBee / Ethernet
Antenna Chip ZigBee: Freescale MC13224 Microcontrollore: Freescale Kinetis K60 ARM Cortex M4 32 bit Riprogrammabile e riconfigurabile da Ethernet Connessione sicura AES128 a doppio senso tra i singoli sensori e il sistema

Nodi sensori: Temperatura, Reed

HARDWARE
Sensori ZigBee

Sensore ECG, Temperatura, Accelerometro Controllo remoto dei carichi Monitoraggio potenza assorbita Stacca/attacca la linea elettrica automaticamente

Smart plug

SISTEMA METROPOWER ARCHITETTURA DEL


SISTEMA

STRUMENTI UTILIZZATI

TWITTER BOOTSTRAP
FRONTEND FRAMEWORK PER LO
SVILUPPO DI APPLICAZIONI E PAGINE WEB

REALIZZATO DAGLI SVILUPPATORI DI TWITTER COLLEZIONE DI ELEMENTI GRAFICI


GRATUITI

RILASCIATO SOTTO LICENZA OPEN SOURCE NEL 2011

TWITTER BOOTSTRAP: CARATTERISTICHE


SUPPORTO NUOVI E
VECCHI BROWSER

COMPATIBILIT
MULTIPIATTAFORMA

RESPONSIVE DESIGN
SISTEMA A GRIGLIA A
LARGHEZZA VARIABILE

TORNADO: COSA
WEB SERVER SCALABILE SCRITTO IN PYTHON SVILUPPATO PER FRIENDFEED E RESO
OPEN SOURCE DA FACEBOOK

ALTE PRESTAZIONI ROBUSTO PER GESTIRE


GRANDI TRAFFICI WEB

RILASCIATO NEL 2009

TORNADO: VANTAGGI
SUPPORTO AI BLOCCHI DI BASE PER LA COSTRUZIONE
DI UN SITO

SERVIZI REAL TIME


ALTE PRESTAZIONI

Template Cookie Autenticazione Localizzazione Protezione xsrf Richieste asincrone

Web server tradizionali: limite massimo di 10000 connessioni simultanee Tornado: progettato per risolvere il problema C10K

COMPATIBILIT CODICE APERTO PURO JAVASCRIPT NUMEROSI TIPI DI


GRAFICO

HIGHCHARTS

SEMPLICE
CONFIGURAZIONE

DINAMICIT ASSI MULTIPLI, ZOOM,


ETICHETTE

CARICAMENTO DI DATI
ESTERNI

HIGHSTOCK

SELETTORE DI RANGE SCROLLBAR NAVIGATORI


FLAG

COMO: ARCHITETTURA DI ALTO LIVELLO

INTERFACCIA DI CONFIGURAZIONE DEL SISTEMA METROPOWER

DESCRIZIONE DELLINTERFACCIA UTENTE


Public data Administration page Access rights management Access rights management Net configuration page New net

Login

Home

Device configuration page

New user registration

New device

PAGINA PRINCIPALE DI AMMINISTRAZIONE

DESCRIZIONE DELLINTERFACCIA UTENTE


Public data Administration page Access rights management Access rights management Net configuration page New net

Login

Home

Device configuration page

New user registration

New device

PAGINA DI AMMINISTRAZIONE DI RETE

DESCRIZIONE DELLINTERFACCIA UTENTE


Public data Administration page Access rights management Access rights management Net configuration page New net

Login

Home

Device configuration page

New user registration

New device

PAGINA DI CONFIGURAZIONE DI UN DISPOSITIVO

INTERFACCIA: TWITTER BOOTSTRAP


Barra di navigazione

Colonna di navigazione

Plugin modal

Plugin dropdown

Plugin Togglable Tabs


Plugin Tooltip

INTERFACCIA: HIGHSTOCK

INTERFACCIA DI CONFIGURAZIONE: DATABASE MYSQL


Networks Devices Users Nets_permissions

Devices_permissions
Confommands

INTERFACCIA DI CONFIGURAZIONE: TORNADO


Importazione delle librerie

Impostazione e avvio dellapplicazione

def main(): tornado.options.parse_command_line() http_server=tornado.httpserver.HTTPServer(Application()) http_server.listen(options.port) tornado.ioloop.IOLoop.instance().start()

Richieste asincrone

UI modules

Sicurezza

INTERFACCIA DI CONFIGURAZIONE: INVIO DEI COMANDI


1. Lutente invia un comando al dispositivo 2. Il comando viene

scritto nel database


3. Il server per la comunicazione remota lo legge e lo interpreta 4. Il comando viene inviato al gateway

corrispondente

FLUSSO DI INVIO DEI COMANDI DAL DB AL GATEWAY

INTERFACCIA DI CONFIGURAZIONE: RICEZIONE DELLE RISPOSTE


1. Il dispositivo invia la risposta al gateway 2. La risposta viene

catturata dal server


per la raccolta dei dati ed archiviata nel database 3. Se stata fatta una richiesta dallutente, viene restituito il

risultato allinterfaccia

INTERFACCIA DI CONFIGURAZIONE: FLUSSO DEI MESSAGGI DI STATO DALLA RETE AL DB


222210E261FEC92C 517694EB *ZTCR;517694EB;000EE2D7;4E;9D0124020000 0002E4DCFF00001707042600000000000181 000000000000000000000000000000#

13667292342459546910990453036160129 13 0 170 170 170 170 170 170 170 170 209 61 0 0

ztc_cmd.h

MODULO ZTC_CONFIG DI COMO

data.h

capture.c
query.c

http://131.114.52.207:44444/ztc_config?netid=0&opcode_group=0&opcode=0&start=-5m&end=-1s

CONCLUSIONI
ABBIAMO PROGETTATO E SVILUPPATO UNAPPLICAZIONE WEB PER LA CONFIGURAZIONE E VISUALIZZAZIONE DI UN SISTEMA
DOMOTICO REALIZZATO CON UNA PIATTAFORMA PER INTERNET DEGLI OGGETTI E RETI DI SENSORI ZIGBEE.

IL SISTEMA MODULARE E FACILMENTE ESPANDIBILE AD ALTRI TIPI DI


SENSORE E DI PROTOCOLLO DI COMUNICAZIONE