Tudo o que puder ser ligado, será ligado.
Este é um curso para perceber, de raiz, como objectos vulgares (uma lâmpada, um portão, um tractor, uma estufa, um contador de água) ganham sentidos, voz e capacidade de agir através da Internet. Foi pensado para estudar sozinho, do princípio ao fim, sem precisar de andar à procura de outras fontes.
Vamos começar com calma. A ideia da Internet das Coisas (em português, Internet das Coisas, abreviada como IdC, e em inglês Internet of Things, ou IoT) é simples de enunciar e funda de explorar: dar a coisas físicas a capacidade de sentir o que se passa à sua volta, comunicar essa informação e, em muitos casos, reagir. Da mesma forma que a Internet e as comunicações móveis mudaram a maneira como vivemos, a IdC promete mudar a forma como os serviços chegam às pessoas e como os sectores produtivos trabalham.
Leia cada unidade pela ordem proposta. Sempre que aparecer um diagrama, demore um instante a segui-lo. No fim de cada unidade tem perguntas para verificar se percebeu. As 100 perguntas e o exame final corrigem-se sozinhos e explicam cada resposta, por isso pode treinar à vontade.
O que vai conseguir fazer no fim
Não é um curso apenas teórico. A meta é que, ao chegar ao fim, seja capaz de acompanhar todo o percurso de criação de um produto de IdC, das primeiras ideias até ao dispositivo a comunicar com a nuvem. Em concreto, ficará apto a:
- Entender as tecnologias de IdC usadas hoje e perceber o que é preciso em cada cenário;
- Listar os tipos de tecnologia disponíveis e em uso, e quais servem para construir soluções de IdC;
- Identificar as restrições e as oportunidades das redes sem fios e móveis para a Internet das Coisas;
- Reconhecer vulnerabilidades de segurança que envolvem a Internet das Coisas.
O mapa do percurso
O curso está dividido em quatro unidades que se constroem umas sobre as outras. Primeiro percebemos o que é e porque interessa. Depois descemos ao hardware e às formas de comunicar. A seguir subimos às camadas de software, às APIs e às plataformas na nuvem. E terminamos com casos concretos, incluindo a parte sensível da segurança.
| Unidade | Sobre o quê |
|---|---|
| I | Introdução à IdC: fundamentos, Indústria 4.0, IdC vs M2M, impacto, riscos e desafios, aplicações, ecossistema e arquitectura. |
| II | Ecossistemas inteligentes: sensores e gadgets, dispositivos e desenho físico, tecnologias de acesso e protocolos, desenho lógico, blocos funcionais, modelos de comunicação, conectividade sem fios, normas e interoperabilidade. |
| III | Interface de Programação de Aplicações (API): regras, arquitecturas e aplicações de IdC, a solução da Microsoft, plataformas, o modelo de quatro camadas e os servidores físicos e de nuvem. |
| IV | Casos de estudo: segurança na IdC, Arduino, ZigBee, LoRaWAN e MQTT. |
Como o curso está pensado
Aqui ficam as regras do jogo: o que se pretende, como vai aprender e como será avaliado. É bom ler isto antes de mergulhar na matéria, para saber onde está a pisar.
Da mesma forma que a Internet e as comunicações móveis revolucionaram a humanidade, a IoT também irá revolucionar, com o foco na prestação de serviços à sociedade e no aumento da eficiência do sector produtivo.
Objectivo geral
Apresentar, discutir e explicar os fundamentos da Internet das Coisas como um mundo em que as coisas físicas se tornam cada vez mais visíveis e accionáveis através das tecnologias da Internet e da Web, dando-lhe uma compreensão abrangente do tema.
Objectivos específicos
Ao longo do curso vamos trabalhar para que consiga:
- Compreender e explicar os conceitos, os componentes, as ligações e o processamento na Internet das Coisas;
- Descrever o processo de desenvolvimento de uma solução de IdC;
- Ganhar conhecimentos de base na área, familiarizando-se com o conceito, percebendo os vários sistemas que o integram e os desafios da sua introdução;
- Iniciar a construção do seu próprio projecto Web de IdC, com a sua funcionalidade global e os desafios que podem surgir;
- Identificar os vários sistemas que integram um projecto de Internet das Coisas;
- Integrar um dispositivo microcontrolado com uma plataforma de IdC;
- Definir conceptualmente um projecto de Internet das Coisas.
Como vamos aprender
O módulo é de natureza teórica e prática. Há momentos de exposição, para passar os conceitos de base, e há momentos participativos, em que se aplica o que se aprendeu a situações concretas: exercícios, casos práticos, vídeos e simulações, que podem ser feitos em grupo ou sozinho.
Na parte prática, ao longo das sessões prepara-se e discutem-se casos e artigos, e desenvolve-se um trabalho de iniciação à investigação, do tipo ensaio ou projecto. Há ainda sessões de discussão.
O percurso costuma desenrolar-se por cinco a seis semanas, alternando aulas, conferências, debates e trabalhos práticos. As Unidades I e II abrem o caminho; a III tem bastante trabalho independente; a IV junta tudo em apresentações e debates. No fim há um exame final, que neste curso vem acompanhado da entrega de um artigo científico com trabalho prático.
Como vai ser avaliado
A avaliação pode juntar vários instrumentos, conforme o regulamento académico. Os pesos previstos são estes:
| Elemento de avaliação | Peso |
|---|---|
| Participação nos momentos de contacto | 10% |
| Realização individual, apresentação e discussão de um teste de bancada | 30% |
| Desenvolvimento e apresentação de um projecto em grupo | 30% |
| Exame final | 30% |
Repare que metade da nota vem de trabalho aplicado (o teste de bancada e o projecto). A IdC aprende-se a fazer, não só a ler. Por isso, mãos à obra.
Não deixe o exame para a última semana. Faça as perguntas de cada unidade logo a seguir a estudá-la. Quando chegar ao exame final, já vai ter quase tudo na ponta da língua.
Introdução à Internet das Coisas
Antes de mexer em sensores ou escrever uma linha de código, vale a pena perceber o quadro geral: o que é afinal a IdC, de onde vem, em que se distingue de coisas parecidas, e porque é que tanta gente fala dela. É disso que trata esta primeira unidade.
1. Fundamentos da IdC
Imagine uma conversa de café. Alguém pergunta: "afinal o que é isso da Internet das Coisas?" A resposta honesta é esta: é a ideia de ligar à Internet objectos que normalmente não estão ligados, dando-lhes capacidade de recolher informação sobre o mundo, de a partilhar e, muitas vezes, de agir com base nela.
Repare na palavra coisas. Não estamos a falar de computadores nem de telemóveis, que já estão ligados há muito. Estamos a falar de tudo o resto: frigoríficos, lâmpadas, fechaduras, automóveis, máquinas agrícolas, contadores de electricidade, pulseiras de actividade física, sensores numa ponte. Quando damos a esses objectos um pequeno cérebro electrónico e uma forma de comunicar, eles deixam de ser mudos.
Há uma frase que resume bem o espírito da coisa, e que dá o mote a este curso: tudo o que puder ser ligado, será ligado. Não porque seja obrigatório, mas porque, quando ligar custa pouco e traz vantagem, as pessoas e as empresas tendem a fazê-lo.
A Internet das Coisas é uma rede de objectos físicos dotados de electrónica, software, sensores e capacidade de comunicação, que recolhem e trocam dados entre si e com sistemas na Internet, permitindo monitorizar e controlar o mundo físico à distância.
Três ingredientes andam sempre juntos. Primeiro, sentir: um sensor mede algo do mundo real (temperatura, humidade, movimento, posição). Segundo, comunicar: esse dado viaja por uma rede até onde possa ser usado. Terceiro, actuar: com base na informação, algo acontece (uma válvula fecha, um alarme dispara, um relatório é gerado). Onde houver IdC, procure sempre estes três momentos.
2. Indústria 4.0
Para perceber porque a IdC apareceu agora, ajuda olhar para trás. A história da indústria costuma contar-se em ondas, ou revoluções. A primeira veio com o vapor e a mecanização. A segunda, com a electricidade e a produção em massa. A terceira, com os computadores e a automação. A quarta, a que estamos a viver, chama-se Indústria 4.0 e tem a IdC no coração.
| Onda | Motor principal | Marca registada |
|---|---|---|
| 1.ª | Vapor e água | Mecanização, teares |
| 2.ª | Electricidade | Linha de montagem, produção em massa |
| 3.ª | Electrónica e informática | Automação, robôs programáveis |
| 4.ª | IdC, dados e ligação em rede | Fábricas inteligentes, sistemas ciberfísicos |
A grande novidade da quarta onda é a fusão entre o mundo físico e o digital. As máquinas deixam de trabalhar isoladas: passam a falar umas com as outras, a enviar dados para a nuvem, a antecipar avarias antes que aconteçam e a ajustar-se sozinhas. A isto chama-se, por vezes, sistema ciberfísico, ou seja, um sistema em que a parte física e a parte de software estão tão entrelaçadas que se tornam uma só.
3. IdC e M2M: parentes próximos, mas diferentes
Há um conceito mais antigo, o M2M (de Machine-to-Machine, ou seja, máquina para máquina), que muita gente confunde com IdC. São parentes, mas não são gémeos.
M2M
Uma máquina comunica directamente com outra, normalmente para uma tarefa específica e fechada. Pense num contador de electricidade que envia a leitura para o sistema da empresa, por uma ligação dedicada. Pouca abertura, pouca partilha, foco numa só função.
IdC
Vai mais longe. Os dados sobem para a Internet, juntam-se a outros dados, são analisados em plataformas na nuvem e ficam acessíveis a aplicações e a pessoas. É aberta, escalável e pensada para integrar muitas fontes e muitos serviços.
Em resumo: o M2M é uma conversa entre duas máquinas; a IdC é a cidade inteira a conversar, com a Internet como praça pública e a nuvem como o sítio onde tudo se cruza e ganha sentido. Pode dizer-se que o M2M foi um dos avós da IdC.
4. O impacto da IdC
Porque é que isto interessa para lá da curiosidade técnica? Porque muda a forma como vivemos e como se produz. Alguns efeitos concretos:
- Eficiência. Saber em tempo real o que está a acontecer permite gastar menos e desperdiçar menos. Uma estufa que rega só quando o solo está seco poupa água.
- Decisão com dados. Em vez de adivinhar, decide-se com base em medições. Uma frota de camiões sabe qual o veículo que vai precisar de manutenção.
- Novos serviços. Surgem modelos de negócio que antes não existiam, como pagar pelo uso de uma máquina em vez de a comprar.
- Qualidade de vida. Da saúde (pulseiras que vigiam o coração) às cidades (semáforos que se adaptam ao trânsito), o impacto sente-se no dia a dia.
A IdC não é só coisa de países ricos. Sensores baratos a vigiar bombas de água em zonas rurais, contadores inteligentes para reduzir perdas de electricidade, monitorização de culturas para pequenos agricultores: são aplicações com enorme peso onde os recursos são escassos e cada perda conta. É por isso que se fala em aproveitar os benefícios da quarta onda e em desenvolver a cadeia produtiva de IdC nos diversos países.
5. Riscos e desafios
Nem tudo são boas notícias, e seria desonesto pintar só o lado bonito. Ligar tudo à Internet traz problemas reais que é preciso encarar de frente.
- Segurança. Cada objecto ligado é uma porta. Se for mal protegido, é uma porta aberta para quem queira fazer mal. Já houve ataques que usaram milhares de câmaras e gravadores domésticos mal protegidos para derrubar serviços na Internet.
- Privacidade. Sensores recolhem dados sobre pessoas: onde estão, o que fazem, como dormem. Quem guarda esses dados? Quem os pode ver? São perguntas sérias.
- Interoperabilidade. Há muitos fabricantes, muitos protocolos, muitas normas. Pôr tudo a falar a mesma língua é um dos maiores dores de cabeça da área.
- Escala. Gerir dez dispositivos é fácil; gerir dez milhões, espalhados pelo mundo, a enviar dados sem parar, é um desafio de engenharia enorme.
- Energia. Muitos dispositivos vivem de uma pequena bateria que tem de durar anos. Cada bit transmitido custa energia.
Voltaremos à segurança em detalhe na Unidade IV, porque é talvez o ponto mais sensível de todos.
6. Aplicações da IdC
A melhor forma de perceber a IdC é ver onde ela vive. Eis alguns mundos onde já está bem instalada:
| Domínio | Exemplos do dia a dia |
|---|---|
| Casa inteligente | Lâmpadas, fechaduras, termóstatos e câmaras controlados pelo telemóvel. |
| Saúde | Pulseiras de actividade, monitores de glicose, equipamentos hospitalares ligados. |
| Agricultura | Sensores de humidade do solo, rega automática, monitorização de gado. |
| Cidades inteligentes | Iluminação pública adaptativa, gestão de resíduos, estacionamento, qualidade do ar. |
| Indústria | Manutenção preditiva de máquinas, controlo de produção, logística. |
| Transportes | Frotas geolocalizadas, automóveis ligados, contadores de portagem. |
| Energia e utilidades | Contadores inteligentes de água e electricidade, redes eléctricas inteligentes. |
7. O ecossistema da IdC
Uma solução de IdC nunca é uma peça só. É um conjunto de partes que trabalham em conjunto, como uma orquestra. A esse conjunto, com os fabricantes, as plataformas, as redes e os utilizadores, chamamos ecossistema. As peças principais são quatro:
- Dispositivos (as coisas)
- Os objectos físicos com sensores e actuadores. São os olhos, os ouvidos e as mãos do sistema.
- Conectividade (a rede)
- O meio que leva os dados do dispositivo até onde são processados: Wi-Fi, redes móveis, Bluetooth, ZigBee, LoRaWAN e por aí fora.
- Plataforma (o cérebro)
- O software, normalmente na nuvem, que recebe, guarda e analisa os dados, e onde se constroem as regras e as aplicações.
- Aplicações e utilizadores (o destino)
- Onde a informação ganha utilidade: um painel no telemóvel, um alerta, um relatório, uma decisão.
8. A arquitectura da IdC
Para arrumar as ideias, costuma desenhar-se a IdC em camadas, como um bolo. Cada camada tem o seu papel e assenta na anterior. O modelo mais comum tem quatro camadas, que vamos reencontrar com mais detalhe na Unidade III.
De baixo para cima: a camada de percepção é onde estão os sensores e actuadores, em contacto com o mundo. A camada de rede transporta os dados. A camada de serviço ou nuvem guarda e analisa. A camada de aplicação entrega tudo ao utilizador de forma útil. Guarde bem este desenho, porque é o esqueleto de quase tudo o que se segue.
Pare e pense: onde estão as quatro camadas numa pulseira de actividade física?
O acelerómetro que conta passos é a percepção. O Bluetooth que liga a pulseira ao telemóvel é a rede. O serviço na nuvem que guarda o seu histórico e calcula médias é a nuvem. E o ecrã da aplicação que lhe mostra "deu 8.000 passos hoje" é a aplicação. Está tudo lá, só que escondido.
A IdC liga coisas físicas à Internet para sentir, comunicar e actuar. Nasce no contexto da Indústria 4.0 e vai mais longe do que o M2M. Organiza-se em camadas e vive de um ecossistema de dispositivos, redes, plataformas e aplicações, sem esquecer os riscos de segurança e privacidade.
Ecossistemas inteligentes estratégicos
Agora descemos ao chão da fábrica. Esta unidade é sobre as peças concretas: os sensores que sentem, os dispositivos que os alojam, as redes que os ligam e a forma como tudo isto se desenha, tanto no físico como no lógico.
1. Sensores e actuadores
Se a IdC tivesse de escolher um herói, seria o sensor. Um sensor é um pequeno componente que converte uma grandeza do mundo físico num sinal eléctrico que se pode medir. Mede temperatura, luz, humidade, pressão, movimento, gás, som, posição. É o sentido do sistema.
Do outro lado está o actuador, que faz o inverso: recebe um sinal eléctrico e provoca uma acção no mundo físico. Liga um motor, abre uma válvula, acende uma luz, faz soar um besouro. Se o sensor é o sentido, o actuador é o músculo.
Sensor (entrada)
Mundo físico → sinal eléctrico. Exemplos: termístor (temperatura), LDR (luz), DHT22 (temperatura e humidade), PIR (movimento), ultrassónico (distância).
Actuador (saída)
Sinal eléctrico → acção física. Exemplos: relé (liga e desliga aparelhos), servomotor (move com precisão), LED, bomba de água, fechadura eléctrica.
2. Gadgets e dispositivos físicos
Sozinho, um sensor não faz nada de jeito. Precisa de um corpo que o aloje, lhe dê energia, leia os seus sinais e os envie para o mundo. A esse corpo chamamos dispositivo, e no centro dele costuma estar um microcontrolador.
Um microcontrolador é um computador minúsculo num único chip: tem processador, memória e pinos de entrada e saída para ligar sensores e actuadores. Os mais conhecidos no mundo da IdC são o Arduino, o ESP32 e o ESP8266 (estes dois com Wi-Fi de fábrica) e o Raspberry Pi (já mais perto de um computador completo). Vamos olhar para o Arduino com calma na Unidade IV.
Os gadgets são, no fundo, dispositivos prontos para o utilizador final: a tal pulseira, a coluna que ouve comandos de voz, a tomada inteligente. Por dentro têm sempre a mesma receita: microcontrolador, sensores ou actuadores, e uma forma de comunicar.
3. Desenho físico de uma solução de IdC
O desenho físico responde à pergunta: de que é feita, materialmente, a solução? Inclui os dispositivos, os componentes electrónicos e a forma como se ligam entre si. Quando alguém desenha o lado físico, pensa em coisas como:
- Que sensores e actuadores são precisos para o problema;
- Qual o microcontrolador adequado (depende de potência, memória, ligação e preço);
- Como alimentar tudo (bateria, painel solar, rede eléctrica) e quanto tem de durar;
- Como proteger o equipamento do ambiente (pó, chuva, calor).
4. Desenho lógico
Se o desenho físico é o corpo, o desenho lógico é a alma. Aqui já não interessa o material, mas sim a forma como a informação flui e como o sistema se organiza por dentro: que dados circulam, que regras se aplicam, como as partes conversam. É a planta do comportamento, independente da marca dos componentes.
O desenho lógico costuma descrever-se com a ajuda de duas ideias muito úteis: os blocos funcionais e os modelos de comunicação.
5. Blocos funcionais
Quase qualquer sistema de IdC se pode arrumar em blocos com papéis bem definidos. Pensar por blocos ajuda a desenhar sem nos perdermos. Os mais comuns são:
| Bloco | Função |
|---|---|
| Dispositivo | O hardware que sente e actua sobre o mundo. |
| Comunicação | Os protocolos e meios que transportam os dados. |
| Serviços | Gestão dos dispositivos, recolha de dados, controlo, descoberta de aparelhos. |
| Gestão | Funções para governar todo o sistema e tomar decisões. |
| Segurança | Autenticação, autorização, integridade e confidencialidade dos dados. |
| Aplicação | A interface por onde o utilizador vê e controla tudo. |
6. Modelos de comunicação
Como é que as coisas conversam? Há várias maneiras, e escolher a certa muda muito o desempenho da solução. Os quatro modelos clássicos são estes:
- Pedido e resposta (request-response)
- Um cliente pede, um servidor responde. É o modelo da Web tradicional. Simples, mas o cliente tem de perguntar para saber.
- Publicar e subscrever (publish-subscribe)
- Quem produz dados publica-os num tópico; quem se interessa subscreve esse tópico e recebe sem ter de perguntar. Um intermediário (o broker) trata da distribuição. É o coração do MQTT, que veremos na Unidade IV.
- Empurrar e puxar (push-pull)
- Os produtores empurram dados para filas; os consumidores puxam-nos quando podem. Útil quando os ritmos são diferentes.
- Exclusivo em par (exclusive pair)
- Uma ligação permanente e bidireccional entre cliente e servidor, que fica aberta para troca contínua (por exemplo, com WebSockets).
7. Tecnologias de acesso e conectividade sem fios
Chegámos a uma das decisões mais importantes de qualquer projecto: como é que o dispositivo se liga? Não há resposta única. Tudo depende de quanto longe precisa de chegar, quantos dados envia, quanta energia pode gastar e quanto pode custar. Há sempre um compromisso.
A regra de ouro é simples: quanto maior o alcance e menor o consumo, menor costuma ser a velocidade de dados. Não dá para ter tudo ao mesmo tempo. Veja como as principais tecnologias se posicionam:
| Tecnologia | Alcance | Débito | Consumo | Bom para |
|---|---|---|---|---|
| Bluetooth / BLE | Curto (metros) | Médio | Baixo | Pulseiras, ligação ao telemóvel |
| ZigBee | Curto a médio | Baixo | Muito baixo | Casa inteligente, redes em malha |
| Wi-Fi | Médio (dezenas de m) | Alto | Alto | Câmaras, aparelhos com energia da rede |
| LoRaWAN | Muito longo (km) | Muito baixo | Muito baixo | Sensores agrícolas e urbanos espalhados |
| Celular (4G/5G, NB-IoT) | Muito longo | Médio a alto | Médio a alto | Frotas, dispositivos móveis |
Repare numa ideia importante: o ZigBee trabalha em malha (em inglês, mesh). Isso significa que os dispositivos reenviam as mensagens uns dos outros, formando uma teia. Se um nó cair, a mensagem encontra outro caminho. É robusto e ideal para cobrir uma casa inteira com aparelhos de baixo consumo. O LoRaWAN, por seu lado, troca velocidade por alcance: consegue chegar a quilómetros de distância com pouquíssima energia, perfeito para um sensor num campo distante.
8. Normas e interoperabilidade
Agora o calcanhar de Aquiles da área. Imagine que cada fabricante fala a sua própria língua. As lâmpadas de uma marca não entendem o comando de outra, e o seu painel de controlo não consegue ler os dois. É exactamente isto que acontece quando não há normas (em inglês, standards) comuns.
Uma norma é um acordo técnico que toda a gente concorda em seguir, para que os equipamentos se entendam. A interoperabilidade é o resultado desejado: a capacidade de dispositivos e sistemas diferentes trabalharem juntos sem dores de cabeça.
O mercado da IdC cresceu depressa e de forma desorganizada. Cada gigante de tecnologia quis impor o seu padrão. O resultado foi uma babel de protocolos e normas que ainda não conversam bem entre si. Quando avaliar uma solução de IdC, pergunte sempre: isto segue normas abertas ou prende-me a um único fornecedor?
Pare e pense: que tecnologia escolheria para sensores de humidade espalhados por uma machamba grande?
O LoRaWAN encaixa quase de propósito. Os sensores estão longe uns dos outros e da estação, é um campo aberto, enviam pouquíssimos dados (um valor de humidade de vez em quando) e têm de viver anos com uma só bateria. Alcance enorme, consumo mínimo, débito baixo: é exactamente o perfil do LoRaWAN. Wi-Fi não chegaria lá e gastaria bateria a mais.
Sensores sentem, actuadores agem, e ambos vivem em dispositivos com microcontrolador. O desenho físico trata do corpo, o desenho lógico trata do fluxo de informação, dos blocos funcionais e dos modelos de comunicação. A escolha da rede sem fios é sempre um compromisso entre alcance, débito, consumo e custo, e a interoperabilidade depende de seguir normas comuns.
Interfaces de programação e arquitecturas
Subimos do hardware para o software. Esta unidade é sobre como as partes de uma solução de IdC falam umas com as outras de forma organizada, sobre as plataformas que tratam de tudo na nuvem, e sobre onde, afinal, os dados são processados e guardados.
1. O que é uma API
Vamos começar pela peça que dá nome à unidade. API quer dizer Application Programming Interface, ou seja, Interface de Programação de Aplicações. Apesar do nome assustador, a ideia é simples e bonita.
Pense num restaurante. Você não entra na cozinha para preparar a comida. Olha para o menu, faz o pedido ao empregado e recebe o prato. Não precisa de saber como a cozinha funciona por dentro. O empregado e o menu são a interface entre si e a cozinha. Uma API é exactamente isto, mas entre programas: um conjunto de regras e de pedidos disponíveis para que um software peça serviços a outro, sem precisar de conhecer as suas tripas.
Uma API é um contrato: define que pedidos se podem fazer a um sistema e que respostas se obtêm, escondendo a complexidade lá dentro.
2. Regras e o estilo REST
Na Web e na IdC, a forma mais comum de construir APIs chama-se REST. Uma API REST organiza tudo à volta de recursos (por exemplo, um sensor, uma leitura, um dispositivo), cada um com o seu endereço, e usa os verbos do protocolo HTTP para agir sobre eles. Os principais verbos são quatro:
| Verbo HTTP | O que faz | Exemplo |
|---|---|---|
GET | Ler / obter | Pedir a última temperatura de um sensor |
POST | Criar | Registar um novo dispositivo |
PUT | Actualizar | Mudar a configuração de um dispositivo |
DELETE | Apagar | Remover um dispositivo antigo |
Os dados trocados costumam vir em JSON, um formato de texto leve e fácil de ler, tanto para humanos como para máquinas. Veja como seria a leitura de um sensor enviada por um dispositivo:
{
"dispositivo": "sensor-estufa-01",
"temperatura": 27.4,
"humidade": 61,
"unidade": "celsius",
"instante": "2026-05-31T14:30:00"
}
E um pedido para ler esse dado seria tão simples como:
GET https://minha-plataforma-iot.com/api/dispositivos/sensor-estufa-01/leituras/ultima
Repare como o endereço conta uma história: dentro dos dispositivos, escolho um, dentro das suas leituras, peço a última. APIs REST bem desenhadas leem-se quase como frases.
3. Arquitecturas de IdC e aplicações
Uma arquitectura é a planta geral de uma solução: que partes existem, onde estão e como se ligam. Já vimos na Unidade I o modelo em camadas. Aqui interessa-nos perceber o caminho que um dado percorre, do sensor até à decisão.
- O sensor mede e o dispositivo recolhe o valor.
- O dispositivo envia o dado pela rede, muitas vezes através de uma gateway (uma porta de entrada que junta vários dispositivos e os liga à Internet).
- O dado chega a uma plataforma na nuvem, que o recebe por uma API e o guarda.
- A plataforma analisa, aplica regras e, se for caso disso, envia um comando de volta ou gera um alerta.
- A aplicação mostra tudo ao utilizador num painel ou no telemóvel.
4. O modelo de quatro camadas
Vale a pena reencontrar, agora com mais detalhe, o modelo de quatro camadas que esboçámos na Unidade I. É a forma mais usada de arrumar uma arquitectura de IdC.
| Camada | Papel | Quem vive aqui |
|---|---|---|
| Percepção | Sentir e actuar sobre o mundo | Sensores, actuadores, etiquetas RFID |
| Rede | Transportar os dados | Wi-Fi, redes móveis, ZigBee, LoRa, gateways |
| Serviço / processamento | Guardar, analisar, aplicar regras | Servidores e plataformas na nuvem, bases de dados |
| Aplicação | Entregar valor ao utilizador | Aplicações móveis, painéis, relatórios |
Há quem use modelos de três camadas (mais simples) ou de cinco (mais detalhado), mas o de quatro é um bom ponto de equilíbrio e o mais frequente nos manuais.
5. Plataformas de IdC
Construir tudo de raiz, para cada projecto, seria uma loucura. Por isso existem as plataformas de IdC: serviços, quase sempre na nuvem, que já trazem feito o trabalho pesado de receber dados de milhões de dispositivos, guardá-los, analisá-los, gerir os aparelhos e mostrar painéis. O programador concentra-se na sua solução e deixa a canalização para a plataforma.
Uma boa plataforma costuma oferecer:
- Ligação e gestão de dispositivos: registar, autenticar, actualizar e desligar aparelhos em massa;
- Recolha e armazenamento de dados: receber as mensagens e guardá-las de forma fiável;
- Análise: processar os dados, detectar padrões, aplicar regras e accionar alertas;
- Visualização: painéis e gráficos para acompanhar tudo;
- Segurança: autenticação, cifra e controlo de acessos.
Há plataformas dos grandes nomes (Microsoft Azure IoT, Amazon AWS IoT, Google Cloud IoT) e plataformas mais ligeiras e abertas, muito usadas para aprender e prototipar, como o ThingSpeak, o Blynk ou o Node-RED.
6. A solução de arquitectura de IdC da Microsoft
Como exemplo de uma arquitectura completa, olhemos para a proposta da Microsoft, em torno do Azure IoT. Não é a única, mas é clara e organiza bem as ideias que já vimos. Costuma desenhar-se em três grandes momentos.
- As coisas (dispositivos). Sensores e actuadores no terreno, por vezes ligados através de uma gateway. É a fonte dos dados.
- O discernimento (insights). Os dados entram na nuvem por um ponto central chamado IoT Hub, que trata da ligação segura com cada dispositivo. Aí são guardados e analisados, com ferramentas de processamento de fluxos e de aprendizagem automática que extraem sentido da torrente de dados.
- A acção. Com base na análise, o sistema age: envia comandos de volta aos dispositivos, gera alertas, alimenta painéis e integra-se com outros sistemas da organização.
Resumindo o espírito da proposta: conectar as coisas em segurança, analisar os dados para tirar conclusões e agir a partir delas. É um bom modelo mental para qualquer plataforma, não só a da Microsoft.
7. Servidores físicos de IdC e de nuvem
Falámos muito em "nuvem". Mas o que é, afinal? A nuvem é, no fundo, computadores de outra pessoa: servidores potentes em centros de dados que se alugam pela Internet, pagando só pelo que se usa. A alternativa são os servidores físicos próprios, máquinas instaladas nas instalações da própria organização (o chamado on-premises).
Servidor físico próprio
Controlo total e dados em casa. Em troca, tem de comprar, manter, arrefecer e proteger as máquinas, e a capacidade é a que tiver. Faz sentido quando há exigências fortes de privacidade ou má ligação à Internet.
Nuvem
Cresce e encolhe conforme a necessidade, paga-se pelo uso e não há hardware para gerir. Em troca, depende-se de um fornecedor e de uma boa ligação à Internet. É a opção mais comum na IdC pela facilidade de escalar.
Há ainda um meio-termo cada vez mais importante: a computação na borda (em inglês, edge computing). Em vez de mandar tudo para a nuvem, processa-se parte dos dados perto do dispositivo, na própria gateway. Isto poupa rede, reduz o atraso e permite reagir depressa mesmo que a ligação à Internet falhe. Numa fábrica em que uma máquina tem de parar em milésimos de segundo, não há tempo de perguntar à nuvem.
Pare e pense: porque é que uma API REST facilita a interoperabilidade?
Porque é um contrato comum e bem conhecido. Se a sua plataforma fala REST com JSON sobre HTTP, qualquer outro sistema que também fale essas mesmas regras consegue ligar-se, sem precisar de conhecer a tecnologia interna de cada lado. É como toda a gente combinar falar uma língua franca: a conversa flui mesmo entre desconhecidos.
Uma API é um contrato que deixa programas pedirem serviços uns aos outros, e o estilo REST organiza isso com recursos, verbos HTTP e JSON. A arquitectura de IdC arruma-se tipicamente em quatro camadas, e as plataformas de IdC fazem o trabalho pesado de ligar, guardar, analisar e mostrar. O processamento pode estar na nuvem, em servidores próprios ou na borda, perto do dispositivo.
Casos de estudo de aplicações
Agora juntamos tudo. Nesta última unidade descemos a casos concretos: a segurança, que é a peça mais delicada, e quatro tecnologias que vai mesmo encontrar no terreno, o Arduino, o ZigBee, o LoRaWAN e o MQTT.
1. Segurança na IdC
Comecemos pela parte que tira o sono a quem trabalha com IdC. Cada coisa ligada é, ao mesmo tempo, uma oportunidade e uma vulnerabilidade. Um sensor barato, instalado e esquecido, com a palavra-passe de fábrica, é um convite a quem queira fazer estragos.
Para pensar segurança de forma arrumada, ajuda olhar para três pilares clássicos, conhecidos pela sigla CIA (em inglês), que em português ficam assim:
- Confidencialidade
- Só quem tem autorização pode ver os dados. Garante-se sobretudo com cifra, baralhando a informação para que, mesmo interceptada, não se perceba.
- Integridade
- Os dados não foram alterados pelo caminho. Garante-se confirmando que a mensagem que chegou é exactamente a que foi enviada.
- Disponibilidade
- O sistema está acessível quando é preciso. Perde-se, por exemplo, num ataque que sobrecarrega o serviço até ele cair.
Por cima destes pilares, há ainda a autenticação (provar quem se é) e a autorização (definir o que cada um pode fazer).
Em 2016, um programa malicioso chamado Mirai varreu a Internet à procura de câmaras e gravadores domésticos que ainda tinham a palavra-passe de fábrica. Infectou centenas de milhares e usou esse exército de aparelhos para derrubar grandes serviços da Internet. A causa? Dispositivos de IdC mal protegidos e esquecidos. É o exemplo perfeito de por que a segurança não é um extra, é parte do projecto.
Boas práticas que valem para quase tudo: mudar as palavras-passe de fábrica, cifrar as comunicações, manter o software actualizado, dar a cada dispositivo só as permissões de que precisa, e segmentar a rede para que um aparelho comprometido não contamine os restantes.
2. Arduino
O Arduino é provavelmente a porta de entrada mais querida do mundo da IdC. É uma plataforma aberta de prototipagem electrónica: uma pequena placa com um microcontrolador, pinos para ligar sensores e actuadores, e um ambiente simples para a programar. Tornou a electrónica acessível a estudantes, artistas e curiosos, não só a engenheiros.
Programar um Arduino é escrever um sketch, um programa com duas partes obrigatórias: setup(), que corre uma vez no arranque, e loop(), que se repete para sempre. Veja um exemplo que lê um sensor de temperatura e acende um LED se estiver demasiado quente:
const int pinoSensor = A0;
const int pinoLed = 13;
void setup() {
pinMode(pinoLed, OUTPUT);
Serial.begin(9600);
}
void loop() {
int leitura = analogRead(pinoSensor);
float temperatura = leitura * 0.488; // conversao simplificada
Serial.print("Temperatura: ");
Serial.println(temperatura);
if (temperatura > 30.0) {
digitalWrite(pinoLed, HIGH); // demasiado quente, acende
} else {
digitalWrite(pinoLed, LOW);
}
delay(2000); // espera 2 segundos
}
Repare como o código segue exactamente a receita da IdC: sentir (ler o sensor), decidir (comparar com um limite) e actuar (acender o LED). Junte-lhe um módulo Wi-Fi como o ESP32 e tem este mesmo valor a subir para a nuvem.
3. ZigBee
O ZigBee é uma tecnologia de comunicação sem fios pensada para baixo consumo e curto alcance, muito usada na casa inteligente e na automação de edifícios. A sua grande virtude é a rede em malha: cada dispositivo pode reencaminhar as mensagens dos outros, criando uma teia que cobre toda a casa e se cura sozinha quando um nó falha.
Numa rede ZigBee há três papéis:
| Papel | O que faz |
|---|---|
| Coordenador | Há um só. Cria e governa a rede. É a raiz de tudo. |
| Router (encaminhador) | Reenvia mensagens e estende o alcance da malha. Está sempre ligado à corrente. |
| Dispositivo terminal | Sensor ou actuador simples, muitas vezes a bateria, que dorme a maior parte do tempo para poupar energia. |
O ZigBee é óptimo quando tem muitos aparelhos de baixo consumo, próximos uns dos outros, e quer fiabilidade sem gastar bateria. É exactamente o oposto do perfil do LoRaWAN.
4. LoRaWAN
Se o ZigBee é o vizinho que sussurra com os do prédio, o LoRaWAN é o que grita até à aldeia ao lado gastando pouco fôlego. É uma tecnologia de longo alcance e baixíssimo consumo (a família a que pertence chama-se LPWAN, redes de longa distância e baixa potência). Consegue ligar sensores a vários quilómetros de distância, com baterias que duram anos, à custa de enviar muito poucos dados de cada vez.
Convém separar dois nomes que andam juntos: LoRa é a técnica de rádio, a forma física de mandar o sinal longe com pouca energia. LoRaWAN é o protocolo de rede construído por cima do LoRa, que organiza como os dispositivos falam com a rede, com segurança e gestão. Numa rede LoRaWAN, os sensores enviam para gateways, que reencaminham para um servidor de rede, que por sua vez entrega às aplicações.
É a escolha natural para agricultura de precisão, contadores de água espalhados por uma cidade, monitorização ambiental, tudo o que esteja longe e mande pouca informem de vez em quando.
5. MQTT
Terminamos com o protocolo de mensagens mais popular da IdC: o MQTT (de Message Queuing Telemetry Transport). Foi pensado para ser leve, gastar pouca rede e funcionar bem mesmo em ligações fracas e instáveis, exactamente o que se encontra no mundo da IdC.
O MQTT segue o modelo publicar e subscrever que vimos na Unidade II. No centro está o broker, um intermediário por onde passam todas as mensagens. Os dispositivos nunca falam directamente uns com os outros:
- Quem produz dados publica mensagens num tópico (por exemplo,
casa/sala/temperatura); - Quem se interessa subscreve esse tópico e recebe automaticamente as mensagens;
- O broker recebe de quem publica e distribui a quem subscreveu.
A grande vantagem deste modelo é o desacoplamento: quem publica não precisa de saber quem está a ouvir, nem quantos são, nem se estão ligados agora. Pode acrescentar dez novos painéis a subscrever um tópico sem mexer uma linha no sensor. O MQTT tem ainda níveis de qualidade de serviço (QoS) que garantem, conforme a escolha, que a mensagem chega pelo menos uma vez, no máximo uma vez, ou exactamente uma vez.
Pare e pense: porque é que o MQTT é melhor do que pedidos HTTP repetidos para um sensor com bateria?
Porque o MQTT é leve e o dispositivo só fala quando tem algo a dizer, em vez de andar constantemente a perguntar "há novidades?" como aconteceria com HTTP a fazer polling. Menos tráfego e menos rádio ligado significam menos energia gasta, e a bateria dura muito mais. Em ligações fracas, a leveza do MQTT também o torna mais fiável.
A segurança assenta em confidencialidade, integridade e disponibilidade, e nunca é um extra. O Arduino é a porta de entrada da prototipagem, o ZigBee brilha em malha e curto alcance, e o LoRaWAN cobre quilómetros com pouquíssima energia. O MQTT, leve e baseado em publicar e subscrever através de um broker, é o protocolo de mensagens preferido da IdC.
Glossário
Os termos que vão aparecer vezes sem conta, explicados de forma curta e directa. Use isto como dicionário de cabeceira sempre que uma palavra lhe escapar.
- Actuador
- Componente que recebe um sinal eléctrico e provoca uma acção no mundo físico (motor, válvula, relé, LED). É o músculo do sistema.
- API (Interface de Programação de Aplicações)
- Conjunto de regras e pedidos que permite a um programa usar serviços de outro sem conhecer a sua estrutura interna. É o contrato entre softwares.
- Arduino
- Plataforma aberta de prototipagem electrónica, com microcontrolador e ambiente de programação simples, muito usada para aprender e prototipar IdC.
- Arquitectura
- Planta geral de uma solução: que partes existem, onde estão e como se ligam. Na IdC organiza-se tipicamente em camadas.
- Autenticação
- Processo de provar quem se é (por palavra-passe, certificado, chave). Diferente de autorização.
- Autorização
- Definição do que cada utilizador ou dispositivo autenticado pode fazer.
- Bloco funcional
- Cada parte com papel definido num sistema de IdC: dispositivo, comunicação, serviços, gestão, segurança e aplicação.
- Borda (edge computing)
- Processar dados perto do dispositivo, em vez de enviar tudo para a nuvem. Poupa rede, reduz atraso e dá resposta rápida.
- Broker
- Intermediário do MQTT por onde passam todas as mensagens, ligando quem publica a quem subscreve.
- Camada de aplicação
- A camada de topo, onde a informação chega ao utilizador: painéis, alertas, relatórios, aplicações móveis.
- Camada de percepção
- A camada de base, onde estão os sensores e actuadores em contacto com o mundo físico.
- Cifra
- Técnica que baralha a informação para que só quem tem a chave a possa ler. Garante confidencialidade.
- Confidencialidade
- Princípio de segurança que garante que só quem está autorizado acede aos dados.
- Conectividade
- O conjunto de meios e tecnologias que ligam os dispositivos à rede e à nuvem.
- Disponibilidade
- Princípio de segurança que garante que o sistema está acessível quando é preciso.
- Dispositivo
- O objecto físico que aloja sensores e actuadores, normalmente com um microcontrolador. A "coisa" da Internet das Coisas.
- Ecossistema da IdC
- O conjunto de dispositivos, redes, plataformas, aplicações e utilizadores que trabalham juntos numa solução de IdC.
- Gateway
- Porta de entrada que junta vários dispositivos e os liga à Internet, traduzindo entre protocolos quando preciso.
- HTTP
- Protocolo da Web usado para troca de pedidos e respostas, base das APIs REST. Usa verbos como GET, POST, PUT e DELETE.
- IdC / IoT
- Internet das Coisas (em inglês, Internet of Things): rede de objectos físicos ligados que sentem, comunicam e actuam.
- Indústria 4.0
- A quarta revolução industrial, marcada pela fusão do mundo físico e digital, com a IdC, os dados e as redes no centro.
- Integridade
- Princípio de segurança que garante que os dados não foram alterados pelo caminho.
- Interoperabilidade
- Capacidade de dispositivos e sistemas diferentes trabalharem juntos. Depende de normas comuns.
- JSON
- Formato de texto leve para trocar dados, fácil de ler por pessoas e máquinas. Muito usado nas APIs de IdC.
- LoRa
- Técnica de rádio de longo alcance e baixo consumo. É a camada física sobre a qual assenta o LoRaWAN.
- LoRaWAN
- Protocolo de rede de longo alcance e baixíssimo consumo (LPWAN), ideal para sensores distantes que enviam poucos dados.
- M2M (Machine-to-Machine)
- Comunicação directa entre máquinas, normalmente fechada e para uma só função. Antecessor mais limitado da IdC.
- Microcontrolador
- Computador minúsculo num único chip, com processador, memória e pinos de entrada e saída. O cérebro do dispositivo.
- MQTT
- Protocolo de mensagens leve, baseado em publicar e subscrever através de um broker. O preferido da IdC.
- Normas (standards)
- Acordos técnicos comuns que permitem que equipamentos diferentes se entendam.
- Nuvem (cloud)
- Servidores em centros de dados, alugados pela Internet, que crescem e encolhem conforme a necessidade. Paga-se pelo uso.
- Publicar e subscrever (publish-subscribe)
- Modelo de comunicação em que quem produz dados publica em tópicos e quem se interessa subscreve, com um intermediário a distribuir.
- Rede em malha (mesh)
- Topologia em que os dispositivos reencaminham as mensagens uns dos outros, criando uma teia que se cura sozinha. Típica do ZigBee.
- REST
- Estilo de desenho de APIs assente em recursos com endereço próprio e nos verbos do HTTP.
- Sensor
- Componente que converte uma grandeza física (temperatura, luz, movimento) num sinal eléctrico mensurável. O sentido do sistema.
- Sistema ciberfísico
- Sistema em que a parte física e a parte de software estão tão entrelaçadas que funcionam como uma só.
- ThingSpeak / Blynk / Node-RED
- Plataformas leves e acessíveis, muito usadas para aprender e prototipar soluções de IdC.
- ZigBee
- Tecnologia sem fios de baixo consumo e curto alcance, com rede em malha, comum na casa inteligente.
100 perguntas para se testar
Cem perguntas que cobrem tudo o que estudou, de vários tipos: escolha múltipla, verdadeiro ou falso, preenchimento de espaços, escolha de várias opções e correspondência. Responda à vontade e, no fim, carregue em corrigir. Cada resposta é explicada, por isso erra-se a aprender.
Como funciona: escolha ou escreva as suas respostas. Quando quiser ver como se saiu, carregue em Corrigir tudo. As perguntas certas ficam a verde, as erradas a vermelho, e por baixo de cada uma aparece a explicação. Pode recomeçar quando quiser.
Exame final, com correcção
Este é o exame de fecho do curso. Reúne perguntas das quatro unidades. Faça-o como se fosse a sério, sem espreitar a matéria, e só depois carregue em corrigir. Cada questão traz a sua correcção comentada, para perceber não só o que é certo, mas porquê.
No plano oficial, o exame final pode incluir a entrega de um artigo científico com trabalho prático. Esta prova serve para consolidar a parte de conhecimentos. Considere uma boa preparação acertar pelo menos 14 das 20 questões.
Bibliografia
As obras que sustentam este curso e onde pode aprofundar cada tema. São referências de base reconhecidas na área da Internet das Coisas.
- Holler, J., Tsiatsis, V., Mulligan, C., Avesand, S., Karnouskos, S., & Boyle, D. (2014). From Machine-to-Machine to the Internet of Things: Introduction to a New Age of Intelligence. Academic Press, Inc.
- Gubbi, J., Buyya, R., Marusic, S., & Palaniswami, M. (2013). Internet of Things (IoT): A vision, architectural elements, and future directions. Future Generation Computer Systems, 29(7), 1645-1660.
- Fortino, G., & Trunfio, P. (Eds.). (2014). Internet of Things Based on Smart Objects: Technology, Middleware and Applications. Springer Science & Business Media.
Chegou ao fim do percurso. Se fez as perguntas, percebeu os diagramas e seguiu os exemplos de código, já tem uma base sólida para acompanhar um projecto de IdC do princípio ao fim. A partir daqui, a melhor forma de continuar é exactamente a que o curso defende: pôr as mãos num Arduino ou num ESP32 e construir algo seu, por mais pequeno que seja. É a fazer que a Internet das Coisas se aprende de verdade.