Em um artigo escrito por mim em setembro de 2017, trazia o questionamento sobre a implementação do que conhecemos com Internet das Coisas. Questionava se “Estamos prontos para o Boom do IoT?”.
Por Icaro Ramos*
Ainda hoje tenho em partes esse questionamento, mas consigo afirmar com precisão que estamos muito melhores que em 2017, principalmente no Brasil.
O crescimento dos vieses dessa área da tecnologia, assim como das outras áreas, está cada dia mais exponencial.
Possuímos, afinal, cursos, cargos, profissionais e até mesmo mestrado e doutorado nas áreas voltadas para IoT.
Possuímos até mesmo Smart Campus em algumas universidades (locais de incentivo em pesquisa da área).
Perante esses conhecimentos, posso afirmar também, como exemplo de vida, que há conteúdo e possibilidades para avançarmos em largos passos na linha de produção tecnológica do futuro voltada para o IoT, seguindo assim o dito crescimento exponencial.
Visando toda essa estrutura e o conhecimento que adquiri, tenho a possibilidade de transmitir um pouco deste conhecimento, trazendo alguns conceitos desta tão falada tecnologia.
O IoT é separado em 7 Camadas, porém não falarei delas detalhadamente e não explicarei uma a uma neste artigo – isso ficará para um próximo artigo sobre este tema.
Nesse, pretendo tratar de forma simplificada de algumas camadas para que se possa ter um panorama do necessário para iniciar um produto, empresa ou prova de conceito no que tange o IoT. Então vamos a elas:
Nas Camadas de Hardware ou Camada Física possuímos o âmago da Internet das Coisas, onde ficam as bases de funcionalidade do IoT. São algumas delas:
Sensores – para se obter os dados necessários à tomada de decisão e conhecimento, necessitamos do sensoriamento de todas as “Coisas”. Esses sensores são os pontos centrais de se ter um projeto de IoT, pois bem mapeados e distribuídos os sensores executam a tarefa de nos retornar os dados de tudo o que temos ao nosso redor. Num prédio, por exemplo, temos os sensores de temperatura ambiente, vazão de água, consumo hídrico, consumo elétrico, informações da fonte de energia e de geradores, dentre outros sensores.
Atuadores – são dispositivos de comando e controle, como sistemas de relé (liga e desliga) ou sistemas que recebem comandos parciais (como porcentagem de abertura de uma válvula).
End-Points, End-Devices ou End-Nodes – esse é ponto central do dispositivo IoT. Os sensores precisam estar conectados a essa estrutura para serem lidos, transmitidos e receberem os devidos comandos que serão enviados para os atuadores. Os dados agrupados neste hardware serão transmitidos e recebidos de um Gateway (um centralizador que troca informações via LoRa, SigFox, NB-IoT ou até mesmo cabeado), ou podem efetuar a conexão diretamente com uma nuvem IoT via protocolo MQTT. Um exemplo de End-Point é o Initium EDP 621 MW, desenvolvido por mim e meu primo Allan Ramos – AIRSystems Embedded.
Gateways – estes geralmente são os concentradores de informação. Recebem dados de um ou mais End-Points e, após consolidarem estes dados, executam o envio deles para uma nuvem de IoT, geralmente via protocolo MQTT (que veremos mais à frente). Nesta camada, está sendo muito utilizado o próprio hardware Raspberry Pi, no Brasil principalmente a versão homologada pela Anatel.
Partindo assim para algumas camadas acima, temos os meios físicos de comunicação. Para esses há uma dependência do que se pretende com o resultado final do projeto, o tempo de execução e seu orçamento.
Sendo assim, cada implementador e desenvolvedor fará a escolha da tecnologia que mais se adequa ao seu projeto. Abaixo, listo alguns destes meios físicos e, de forma básica, suas usabilidades e práticas de execução:
LoRa – Mantido internacionalmente pela LoRa Alliance, essa tecnologia utiliza, no Brasil, a frequência de operação 915 MHz (Sub GHz), com número ilimitado de transmissão de informações e baixo consumo de energia. É um meio físico de baixo custo. Utiliza AES-128 como criptografia dos dados e três classes de aplicação (A,B e C – que serão explicadas em outro artigo, no qual falarei somente sobre os meios físicos e protocolos). Pode atingir até 5 Km de distância de comunicação em áreas urbanas e 45 Km em áreas rurais (com margem de segurança, pois o mesmo já foi capaz de atingir 75 Km na Dutra – SP). Requer uma mão de obra especializada em Hardware/Software e tem tempo de implantação baseado no desenvolvimento da aplicação.
SigFox – mantida no Brasil pela WDN, utiliza a mesma frequência de operação que a tecnologia citada anteriormente, porém é limitada quanto à quantidade de interações por dispositivo, permitindo em seu plano Platinum somente 140 interações/dia. A tecnologia de criptografia usada é a mesma que o LoRa, AES-128. E pode chegar a 10 Km em áreas urbanizadas e 50 Km nas áreas rurais. Seu tempo de implantação varia por conta da consultoria da fornecedora, porém todo o suporte de instalação é dado pela WDN, que é a operadora do processo.
NB-IoT (NarrowBand IoT) – seguindo com diferenças significativas entre as tecnologias anteriores, esse meio físico é mantido por normatização da 3GPP e se baseia nas redes de telefonia móvel, LTE e GSM. Compartilha da camada física dos meios de telefonia e utilizada a frequência de banda usada para redes móveis. Tem cobertura de 50 km de raio, baseando-se pela antena mais próxima. É necessário que cada dispositivo possua uma identificação (um chip) para a comunicação, como nos celulares. Integridade, suporte e integração são dadas pela operadora que fornecerá o serviço.
Como conexão para a Camada de Aplicação, precisamos de um protocolo de transferência das informações M2M (machine to machine). O mais utilizado é o MQTT. Também há outros como CoAP e AMQP, porém não os explicarei por serem menos usados.
MQTT – é um protocolo baseado em “publica e assina”. O mesmo foi desenvolvido pela Eurotech e IBM. Transmite e recebe as informações baseadas nos sensores e atuadores das “Coisas”do IoT e possui 3 níveis de transmissão da Informação. O primeiro envia sem analisar se a outra ponta recebeu a informação (QoS 0), o segundo analisa uma vez se foi recebida a informação no destino (QoS 1) – porém se a informação de retorno não vier, ele envia novamente podendo duplicar a informação – e o terceiro e mais seguro envia a informação em 3 vias, garantindo assim se houve a chegada da informação e se ela foi coerente com o enviado (QoS 2). O protocolo é extremamente simples de implementar, é nativo em camadas de aplicação e dispositivos, como CLP’s, Nobreaks e é de fácil produção para criação em hardware próprio, com uma comunidade grande de informações na Internet. Em seu caso mais usual, é necessária a Internet para o mesmo funcionar, enviando os dados para as aplicações.
Plataformas de Comunicação – Como vimos acima, o MQTT é o protocolo mais usado, porém para que os dados e informações sejam tratados e analisados é necessário enviar os mesmos para uma plataforma que registre e guarde todos os dados gerados pelas “Coisas”. Exemplos dessas plataformas de comunicação são Watson IoT (IBM Cloud), AWS IoT (Amazon), Azure IoT (Microsoft) e Google IoT. Eu particularmente uso o Watson desde quando comecei a produzir projetos em IoT, em 2017. Porém, já tive oportunidade de utilizar a AWS algumas vezes por necessidade de implementação de um sistema indiano.
Aplicação – Após todos os processos supracitados, precisamos consolidar os dados e comandos em uma tela de aplicação para gerenciar todas essas infinitas “Coisas” do IoT. Pode-se buscar plataformas prontas, que melhor atendam seu projeto (bem como é feito na camada física), porém também se faz possível o desenvolvimento próprio da aplicação. Aí vão dois exemplos de possibilidades:
Facilio – Sistema da Startup Indiana, Facilio Inc., este sistema reúne as possibilidades de comunicação de prédio automatizados com camadas de IoT, para que se desenvolva Dashboard das informações do prédio. Principalmente voltado para consumo de energia e recurso hídrico, além de outras aplicações para Building IoT. Esta ferramenta é mantida na América Latina pela PD7 Technology, da qual faço parte.
Node-Red – Essa é a possibilidade de desenvolvimento próprio. Uma plataforma de programação baseada em projetos “clica-arrasta” e que utiliza o Node.JS, esta linguagem está dominando o mercado de IoT por ser possuidora de bibliotecas das mais variáveis formas de comunicação e protocolos encontrados em todo o mundo. Possui um formato simples e prático de desenhar as dashboards que serão utilizadas para comando e leitura das informações. O melhor de tudo é que essa linguagem vem acoplada em planos de IoT, como no caso do Starter Kit IoT da IBM, além de possuir uma grande comunidade na internet (principalmente com aulas do Fernando Veiga e Sérgio Gama).
Databases – Para se armazenar todo esse conteúdo se faz necessária uma base de dados robusta, porém de fácil leitura no quesito M2M: precisa ser rápida, fluida e segura. Nesse formato, foi se gerando os bancos de dados NO-SQL, que de certa forma quebram o paradigma de estruturação de dados do antigo SQL. Os bancos podem ser em formatos: Key Value, Stores, Document Stores e graph databases. Como exemplo desses tipos de bancos, que geralmente são voltados para o Big Data, temos:
- MongoDb – Orientado a documentos e com formato semelhante a arquivos JSON, é de fácil indexação e permite ampla complexidade em hierarquia de modelagem sem perder sua praticidade de acesso perante as máquinas.
- Cloudant – Seguindo os mesmos padrões do MongoDb, essa base de dados foi desenvolvida pela IBM e se encontra disponível, assim como Node-Red, no Starter Kit de IoT da IBM Watson, possibilitando com um clique a implementação das ferramentas mais utilizadas de IoT.
O Starter Kit da IBM Watson IoT possibilita que em poucos minutos se tenha um ecossistema de comunicação MQTT, Aplicação Node-Red e banco de dados, gerando assim a base da camada superior para gerenciar suas “Coisas” da Internet das Coisas.
Essas são algumas das estruturas básicas do Internet of Things, que compõem um produto de Internet das Coisas. Assim se materializam algumas das camadas citadas no começo do artigo.
Não posso deixar de citar que é de suma importância a conexão das informações geradas por todas essas coisas, em torno de 50 bilhões de dispositivos, com sistemas de Big Data (onde se encontra uma massificação de todos os dados coletados de um setor, pessoal, área ou objeto específico), e sistemas de Deep Learning e Machine Learning (modelos de Inteligência Artificial serão trazidos em um artigo em breve).
Com esses sistemas conectados a algoritmos especialistas pode-se construir uma autonomia e uma ampla possibilidade de melhorias nas tomadas de decisão pessoais ou empresariais.
Para encerrar este conteúdo, não posso deixar de agradecer a todas as pessoas e locais que me proporcionaram a enorme possibilidade de ampliar meu conhecimento de IoT exponencialmente, principalmente nestes últimos 6 meses.
*Icaro Ramos é o co-fundador da AIRSystems Embedded
Peter Krensky do Gartner fala sobre as cinco tendências de Data & Analytics para a Nova Era Digital
O mercado da biometria – Por Ricardo Abboud
Imagens fornecidas pelo Autor