ALMA MATER STUDIORUM ` UNIVERSITA DI BOLOGNA CAMPUS DI CESENA SCUOLA DI INGEGNERIA E ARCHITETTURA Corso di Laurea in Ingegneria Elettronica, Informatica e delle Telecomunicazioni WEARABLE COMPUTING E BODY AREA NETWORK: ANDROID E WRISTOX2 COME CASO DI STUDIO Elaborata nel corso di: Sistemi Operativi Tesi di Laurea di: Relatore: EDOARDO ALEXANDER Prof. ALESSANDRO RICCI DEWHURST ANNO ACCADEMICO 2013–2014 SESSIONE II PAROLE CHIAVE Wearable Computing Body Area Network Bluetooth Android WristOx2 Alla mia famiglia, alla mia ragazza e ai miei amici Indice Introduzione xi 1 Wearable Computing 1 1.1 La tecnologia wearable . . . . . . . . . . . . . . . . . . . . . 1 1.1.1 Breve storia del wearable . . . . . . . . . . . . . . . . 2 1.1.2 I bearable device . . . . . . . . . . . . . . . . . . . . 3 1.1.3 Distinzione fra wearable device e dispositivi portatili in generale . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1.4 Perch´e i wearable . . . . . . . . . . . . . . . . . . . . 5 1.1.5 Situatedness . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Applicazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.2.1 Realt`a aumentata e diminuita . . . . . . . . . . . . . 6 1.2.2 Smartphone . . . . . . . . . . . . . . . . . . . . . . . 6 1.2.3 Smartglass . . . . . . . . . . . . . . . . . . . . . . . . 8 1.2.4 Smartwatch . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.5 Ambito Medico . . . . . . . . . . . . . . . . . . . . . 10 1.2.6 Ambito Militare . . . . . . . . . . . . . . . . . . . . . 11 1.3 Futuro della tecnologia . . . . . . . . . . . . . . . . . . . . . 12 1.3.1 Requisiti per la diffusione futura . . . . . . . . . . . . 12 1.4 Conclusione . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2 Body Area Network 15 2.1 Le BAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.1.1 Differenze fra reti di sensori e BAN . . . . . . . . . . 16 2.1.2 Wireless Body Area Network . . . . . . . . . . . . . 17 2.2 Architettura . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2.1 Architettura fisica . . . . . . . . . . . . . . . . . . . . 19 vii 2.2.2 I sensori . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.3 Comunicazioni . . . . . . . . . . . . . . . . . . . . . 23 2.3 Applicazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.3.1 Ambito medico . . . . . . . . . . . . . . . . . . . . . 27 2.3.2 Fitness . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.3.3 Ambito militare . . . . . . . . . . . . . . . . . . . . . 28 2.3.4 Gaming . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.3.5 Information sharing . . . . . . . . . . . . . . . . . . . 28 2.3.6 Autenticazione e sicurezza . . . . . . . . . . . . . . . 29 2.4 Consumo Energetico . . . . . . . . . . . . . . . . . . . . . . 29 2.5 Conclusione . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3 Protocolli 31 3.1 ZigBee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.1.1 Banda di trasmissione . . . . . . . . . . . . . . . . . 33 3.1.2 Utilizzo in ambito domotico ed industriale . . . . . . 34 3.1.3 Topologie di rete . . . . . . . . . . . . . . . . . . . . 34 3.2 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.2.1 Frequenza di utilizzo e onde radio . . . . . . . . . . . 37 3.2.2 Topologie di rete . . . . . . . . . . . . . . . . . . . . 37 3.2.3 Bluetooth Low Energy . . . . . . . . . . . . . . . . . 38 3.3 Differenze fra Bluetooth e ZigBee . . . . . . . . . . . . . . . 38 4 Android 41 4.1 Introduzione ad Android . . . . . . . . . . . . . . . . . . . . 42 4.1.1 Il ciclo di vita di un’activity . . . . . . . . . . . . . . 44 4.1.2 Le risorse in Android . . . . . . . . . . . . . . . . . . 45 4.1.3 L’app manifest . . . . . . . . . . . . . . . . . . . . . 46 4.2 Android e Bluetooth . . . . . . . . . . . . . . . . . . . . . . 46 4.2.1 Permessi Bluetooth . . . . . . . . . . . . . . . . . . . 47 4.2.2 Elementi fondamentali . . . . . . . . . . . . . . . . . 47 4.3 Connessione con un dispositivo Bluetooth (lato client) . . . . 48 4.3.1 Attivazione della radio Bluetooth . . . . . . . . . . . 48 4.3.2 Ricerca dei dispositivi . . . . . . . . . . . . . . . . . 50 4.3.3 Connessione . . . . . . . . . . . . . . . . . . . . . . . 52 4.3.4 Lettura e scrittura . . . . . . . . . . . . . . . . . . . 54 viii 5 Caso di studio su Android e WristOx2 55 5.1 Obiettivi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.1.1 Analisi dei requisiti . . . . . . . . . . . . . . . . . . . 56 5.1.2 Casi d’uso . . . . . . . . . . . . . . . . . . . . . . . . 56 5.1.3 Scenari . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.1.4 Modello del dominio . . . . . . . . . . . . . . . . . . 58 5.2 Analisi del problema . . . . . . . . . . . . . . . . . . . . . . 59 5.2.1 Struttura . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2.2 Interazione . . . . . . . . . . . . . . . . . . . . . . . 60 5.2.3 Abstraction gap . . . . . . . . . . . . . . . . . . . . . 60 5.2.4 Struttura del pacchetto dati del WristOx2 . . . . . . 60 5.3 Progetto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.3.1 Struttura . . . . . . . . . . . . . . . . . . . . . . . . 64 5.3.2 Interazione . . . . . . . . . . . . . . . . . . . . . . . 66 5.4 Implementazione . . . . . . . . . . . . . . . . . . . . . . . . 70 5.5 Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.6 Estendibilita` . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6 Conclusione 79 6.1 Considerazioni finali . . . . . . . . . . . . . . . . . . . . . . 79 6.2 Ringraziamenti . . . . . . . . . . . . . . . . . . . . . . . . . 80 Bibliografia 83 ix x
Description: