SĂŠrgio de Oliveira
Novatec
© Novatec Editora Ltda. 2017. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Capa: Carolina Kuwabata ISBN: 978-85-7522-581-3 Histórico de impressões: Junho/2017
Primeira edição
Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 – São Paulo, SP – Brasil Tel.: +55 11 2959-6529 E-mail: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec
capítulo 1
Introdução
Este capítulo apresenta uma visão geral sobre a área a ser abordada, os recursos existentes e como eles podem solucionar e ajudar nas situações e nos problemas do cotidiano doméstico e profissional. Internet das Coisas é muito mais que apenas ligar lâmpadas pelo smartphone. Não é somente ligar as “coisas” pela internet, mas também torná-las inteligentes, capazes de coletar e processar informações do ambiente ou das redes às quais estão conectadas. A implantação de Internet das Coisas está mudando totalmente a forma como nos relacionamos com as coisas que estão ao nosso redor, transformando segurança, energia, meio ambiente, trânsito, mobilidade e logística. E o momento atual é propício a essa integração, visto que os dispositivos necessários, agregando as tecnologias para a integração e a conexão, alcançaram preços compatíveis com as “coisas” que se desejam integrar. O conceito de Internet das Coisas não é novo. Há vinte anos, com a popularização da internet, já se pensava em formas de interligar os equipamentos que usamos no dia a dia com a internet. Algumas tecnologias desenvolvidas nos últimos anos tornaram essa comunicação factível, e com a queda de preços dos elementos envolvidos, em alguns anos, será realidade em todo o mundo. Os módulos baseados no microcontrolador ESP8266 representam um grande avanço na relação de preço-recursos e podem ser um componente muito interessante para soluções de IoT. A primeira tecnologia associada ao conceito de IoT (Internet of Things – Internet das Coisas) ficou conhecida como RFID (Radio Frequency Identification – Identificação por Radiofrequência). Esta tecnologia surgiu em 1940, com os transponders já utilizados nos aviões na Segunda Guerra Mundial. O princípio, simples, continua funcional até hoje. Trata-se de um equipamento que envia, por radiofrequência, uma identificação única. Para os aviões, sua função é identificar outros aviões ao redor, aumentando a precisão das manobras e dos ataques, além de evitar colisões. 17
18
Internet das Coisas com ESP8266, Arduino e Raspberry Pi
Hoje, RFID é usado em crachás, em veículos e até nos produtos em supermercados, substituindo outros tipos de identificação, como código de barras. As RSSF (Redes de Sensores sem Fio, ou Wireless Sensor Network [WST]) formaram a tecnologia seguinte desenvolvida no âmbito de IoT. São redes compostas de dezenas, centenas ou até milhares de nós microprocessados, com capacidade de comunicação sem fio e alimentados por baterias. Foram propostas especialmente para função de monitoramento, seja ambiental ou em situações de risco, guerra ou emergência. Várias técnicas, diversos protocolos e padrões foram desenvolvidos para atender aos requisitos de redes de sensores, como eletrônica embarcada de baixo custo e consumo mínimo de energia. Pela primeira vez, esperava-se construir um elemento computacional com capacidade de processamento e comunicação sem fio na ordem de grandeza de um dólar. E inúmeras soluções foram desenvolvidas para essa realidade, considerando todas as limitações envolvidas nesse cenário. De forma paralela, as tecnologias de comunicação e redes de computadores se desenvolveram e popularizaram de forma muito ampla. Primeiro, a internet, usando os protocolos da família TCP/IP. Em seguida, as redes WiFi, que tornaram possível a mobilidade e dispensaram os fios para a interligação de dispositivos próximos. As redes de telefonia celular 2G/3G/4G também foram fundamentais para possibilitar a comunicação de dados dos diversos tipos de equipamentos móveis ou, ainda, aqueles cujo acesso a fios de comunicação eram inviável. A comunicação de dados se tornou acessível a vários tipos de equipamentos e recursos, bem como reduziu o seu custo e o tempo de integração. Por fim, o desenvolvimento dos dispositivos portáteis, entre os quais os notebooks, tablets e, em especial, os smartphones, trouxe o que faltava para completar o cenário de Internet das Coisas. Com a mobilidade proporcionada por esses equipamentos, ficou muito fácil e desejável acessar as informações e os dispositivos de qualquer parte. A popularização desses dispositivos, em especial dos smartphones, possibilitou que a Internet das Coisas chegasse a ambientes nos quais computadores ainda são um luxo. Para tornar Internet das Coisas uma realidade, foi preciso que o custo das soluções se tornasse compatível com as “coisas” a serem conectadas. O microcontrolador ESP8266 da Espressif é uma solução à altura da tarefa, visto que é um circuito totalmente integrado, com interfaces de I/O digitais e analógicas e, ainda, interface WiFi, com um processador de 32 bits, capaz de executar a 160 MHz. Isso tudo ao custo de cerca de 2,5 dólares, considerando já o módulo, pronto para utilização,
Capítulo 1 ■ Introdução
19
à venda em sites chineses, para o consumidor final. Com esse módulo, se torna viável colocar um produto de IoT no mercado por 10 dólares, bastante atrativo para um público consumidor bem diversificado. Este livro apresenta a nova realidade de Internet das Coisas como algo factível e viável para monitoramento e atuação em diversos tipos de cenários e ambientes, desde automação residencial e comercial, passando por sensoriamento ambiental, redes veiculares e trânsito. Serão apresentados os conceitos-base para o funcionamento de Internet das Coisas, o modelo básico de programação e várias aplicações de exemplo. Ele pode ser usado em cursos universitários na área de Computação e Engenharias e também em cursos técnicos especializados nessa área. A única exigência para o entendimento deste livro é o conhecimento básico em programação de computadores e microeletrônica. A Parte I do livro apresenta os conceitos fundamentais para a área de Internet das Coisas, incluindo os conceitos de Redes de Computadores, Comunicação Sem Fio, Arquitetura de Sistemas Embarcados, Gestão de Energia, Computação na Nuvem e Programação Paralela, Distribuída e de Tempo Real. Esses conceitos são fundamentais para o entendimento dos modelos de desenvolvimento a serem usados nos próximos capítulos. O desenvolvimento dos sistemas para Internet das Coisas será apresentado em seguida, na Parte II. Os modelos de programação, linguagens e ambientes de desenvolvimento serão apresentados em exemplos simples e didáticos, com enfoque no aprendizado. A linguagem Lua é a primeira linguagem a ser apresentada para o desenvolvimento de aplicações no ambiente NodeMCU, baseado no microcontrolador ESP8266. A seguir, o ambiente Arduino é apresentado usando os módulos que utilizam o microcontrolador ESP8266. As aplicações com suporte a rede WiFi e a todos os módulos desenvolvidos e suportados no Arduino abrem muitas possibilidades de desenvolvimento de aplicações. Também serão apresentados vários módulos periféricos que podem ser adicionados, com software já disponível para a plataforma Arduino, abrindo várias possibilidades de integração. A Parte III desde livro apresenta, essencialmente, aplicações de Internet das Coisas, sempre com interface na nuvem. Os diversos dispositivos de IoT se conectam, como clientes, a servidores na nuvem que disponibilizam interfaces, preveem armazenamento e garantem a comunicação com alta disponibilidade. As interfaces para gerenciamento, configuração e relatórios incluem tecnologia web, bancos de dados e aplicativos para smartphones. Também são apresentadas aplicações utilizando as placas Raspberry Pi.