
Domotic Module for the Internet-of-Things Marco Soudo Cunha Thesis to obtain the Master of Science Degree in Information Systems and Computer Engineering Supervisor: Prof. Renato Jorge Caleira Nunes Examination Committee Chairperson: Prof. Ricardo Jorge Fernandes Chaves Supervisor: Prof. Renato Jorge Caleira Nunes Member of the Committe: Prof. Alberto Manuel Ramos da Cunha May 2017 The world hates change, yet it is the only thing that has brought progress. Charles Kettering Acknowledgments First of all, I would like to thank the Academy, that helped me growing as an engineer student, but most important, developing my scientific habits of reasoning and stimulate my critical thinking. Additionally, I would like to thank my advisor, Prof. Renato Nunes, for all the cooperation and clever advice. And last but not least, I would like to thank my parents, Marco and Isabel, my brother, Bernardo, as well as my girlfriend, Darlene, for all the patience, attention and care over during my entire academic journey. Thank you all. Abstract With the exponential growth of Internet-of-Things (IoT) usage and devices and with the increasing interest of users in acquiring these devices to improve comfort and optimize their household chores, it is necessary to develop a robust and secure home automation system that allows users to connect all these devices and manage their information in a flexible way, with low implementation costs. Thus, the objective of this work is to present a solution for a smart home system that only uses the WiFi network for communication, avoiding intrusive installations (it does not need to add physical wiring), and allows to connect and control different devices, from any vendor, remotely from a mobile phone, a tablet or any other device with an internet connection. A complex and modular system has been developed, which uses standard technologies and pro- tocols and consists in a central server (smart home server), which offers a set of services to control and manage the system; an auxiliary database to minimize information that devices need to store; a MQTT broker that allows the devices to communicate using this protocol, the MQTT, and finally the devices whose requirements are minimum, they only must able to connect to an WiFi network. The system does not limit the quantity of connected devices since its architecture was designed and implemented to allow horizontal scalability and high availability to handle with a growing amount of devices. Keywords Internet Of Things, Domotic, Smart Home, Home Automation, WiFi Network, Interoperability, Se- curity. iii Resumo Com o crescimento exponencial da quantidade de dispositivos eletronicos´ preparados para estarem ligados a` internet (IoT) e com o interesse cada vez maior dos utilizadores em adquiri-los para mel- horar o conforto e otimizar as suas tarefas domesticas,´ torna-se necessario´ o desenvolvimento de um sistema de domotica´ que permita gerir e conectar todos estes dispositivos e a sua informac¸ao˜ de uma forma robusta, segura e flex´ıvel, e com baixos custos de implementac¸ao.˜ Assim, o objetivo deste trabalho e´ apresentar uma soluc¸ao˜ para um sistema de domotica´ que apenas utiliza a rede WiFi, evitando assim instalac¸oes˜ intrusivas, e que permite ligar diferentes dis- positivos, independente do fabricante, e controla-los´ remotamente a partir de um telemovel,´ de um tablet ou qualquer outro aparelho com ligac¸ao˜ a` internet. Para tal, foi desenvolvido um sistema complexo mas modular que recorre a tecnologias e pro- tocolos standard e que e´ constitu´ıdo por um servidor central (smart home server), que oferece um conjunto de servic¸os para controlar e gerir o sistema; uma base de dados auxiliar para minimizar a informac¸ao˜ que os dispositivos precisam de guardar; um MQTT broker que e´ um servidor que permite que os dispositivos comuniquem entre si utilizando este protocolo, o MQTT, e por fim os dispositivos cujos requisitos sao˜ m´ınimos tendo apenas que se conseguir ligar a uma rede WiFi. O sistema nao˜ limita a quantidade de dispositivos conectados, uma vez que a apresenta uma arquitetura projetada e implementada para permitir escalabilidade horizontal e alta disponibilidade para lidar com uma quantidade crescente de dispositivos. Palavras Chave Internet das Coisas, Domotica,´ Casas Inteligentes, Automatizac¸ao˜ Residencial, Internet sem-fios, Interoperabilidade, Seguranc¸a. iv Contents 1 Introduction 1 1.1 Motivation . .2 1.2 Objectives . .3 1.3 Document Structure . .4 2 Concepts and Related Work 5 2.1 Concepts . .6 2.1.1 IoT . .6 2.1.2 Smart environments . .7 2.1.3 Home Automation / Smart home . .7 2.1.4 Cloud Computing . .7 2.1.5 Web Service . .8 2.2 Technologies . .9 2.2.1 Radio-Frequency IDentification (RFID) . .9 2.2.2 Bluetooth Low Energy (BLE) . .9 2.2.3 Global System for Mobile communication (GSM) . .9 2.2.4 X10 . 10 2.2.5 ZigBee . 10 2.2.6 Z-Wave . 11 2.2.7 INSTEON . 12 2.2.8 Wavenis . 12 2.2.9 MQ Telemetry Transport (MQTT) . 13 2.2.10 Hyper Text Transport Protocol (HTTP) and Hyper Text Transport Protocol Se- cure (HTTPS) . 15 2.2.11 REpresentational State Transfer (REST) . 15 2.3 Projects . 16 2.3.1 Smart Home Mobile RFID-based . 16 2.3.2 Smart Home Control System based on Browse/Server Module . 17 2.3.3 Smart Home: IoT with Webservices and Cloud Computing . 19 2.3.4 Smart Home System based on IPV6 and ZigBee . 21 2.3.5 A ZigBee-Based Home Automation System . 21 v 2.3.6 CASAS: A Smart Home in a Box . 23 2.3.7 A GSM, Internet and Speech Controlled Wireless Interactive Home Automation System . 24 2.3.8 The DomoBus System . 25 2.4 Products . 26 2.4.1 Samsung ARTIK IoT Platform . 26 2.4.2 Samsung SmartThings . 27 2.4.3 Belkin WeMo Home Automation . 27 2.4.4 Amazon Echo (Alexa) . 27 2.4.5 Apple HomeKit . 29 2.4.6 Wink . 29 2.4.7 Google Brillo / Google Weave . 29 2.4.8 Muzzley . 30 2.4.9 IFTT . 30 2.4.10 Arduino . 30 2.4.11 WeMos D1 R2 . 31 2.5 Summary . 32 3 Domotic Module for the Internet-of-Things 33 3.1 Architecture . 34 3.1.1 Home Server . 34 3.1.2 MQTT Broker . 35 3.1.3 Database . 35 3.1.4 Devices . 36 3.1.5 Clients . 36 3.2 Implementation . 37 3.2.1 Home Server . 37 3.2.1.A Public Services . 37 3.2.1.B Private Services . 38 3.2.1.C Internal Devices Management . 38 3.2.1.D Complex Actions Management . 39 3.2.1.E User Permissions Management . 39 3.2.1.F Authentication / Security . 41 3.2.1.G Minimum Requirements . 41 3.2.2 MQTT Broker and MQTT messages . 41 3.2.2.A Minimum Requirements . 42 3.2.3 Database . 43 3.2.3.A Device . 43 3.2.3.B Component . 44 vi 3.2.3.C Property . 44 3.2.3.D Room . 44 3.2.3.E User . 44 3.2.3.F User Role . 44 3.2.3.G Permission . 44 3.2.4 Devices . 45 3.2.4.A Minimum Requirements . 45 3.2.5 Clients . 46 3.2.5.A Minimum Requirements . 46 3.3 Examples of Usage . 47 3.3.1 Administration . 47 3.3.2 Device Registration . 47 3.3.3 Client setting a.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages69 Page
-
File Size-