Internet das Coisas
Bem-vindo

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.

Como tirar partido deste curso

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.

UnidadeSobre o quê
IIntrodução à IdC: fundamentos, Indústria 4.0, IdC vs M2M, impacto, riscos e desafios, aplicações, ecossistema e arquitectura.
IIEcossistemas 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.
IIIInterface 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.
IVCasos de estudo: segurança na IdC, Arduino, ZigBee, LoRaWAN e MQTT.
IdC · INTRODUÇÃO
Apresentação

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.

Plano por semanas

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çãoPeso
Participação nos momentos de contacto10%
Realização individual, apresentação e discussão de um teste de bancada30%
Desenvolvimento e apresentação de um projecto em grupo30%
Exame final30%

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.

Conselho de quem já passou por aqui

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.

IdC · APRESENTAÇÃO
Unidade I

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.

Definição de trabalho

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.

OndaMotor principalMarca registada
1.ªVapor e águaMecanização, teares
2.ªElectricidadeLinha de montagem, produção em massa
3.ªElectrónica e informáticaAutomação, robôs programáveis
4.ªIdC, dados e ligação em redeFá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.
Para a realidade de Moçambique e de África

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.

  1. 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.
  2. 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.
  3. 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.
  4. Escala. Gerir dez dispositivos é fácil; gerir dez milhões, espalhados pelo mundo, a enviar dados sem parar, é um desafio de engenharia enorme.
  5. 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ínioExemplos do dia a dia
Casa inteligenteLâmpadas, fechaduras, termóstatos e câmaras controlados pelo telemóvel.
SaúdePulseiras de actividade, monitores de glicose, equipamentos hospitalares ligados.
AgriculturaSensores de humidade do solo, rega automática, monitorização de gado.
Cidades inteligentesIluminação pública adaptativa, gestão de resíduos, estacionamento, qualidade do ar.
IndústriaManutenção preditiva de máquinas, controlo de produção, logística.
TransportesFrotas geolocalizadas, automóveis ligados, contadores de portagem.
Energia e utilidadesContadores 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.

4 · Camada de aplicação painéis, alertas, relatórios, decisões para o utilizador 3 · Camada de serviço / nuvem armazenamento, análise de dados, regras de negócio 2 · Camada de rede / transporte leva os dados do dispositivo à nuvem (Wi-Fi, móvel, LoRa...) 1 · Camada de percepção / dispositivos sensores e actuadores: sentir e agir sobre o mundo dados sobem · comandos descem
As quatro camadas da IdC. Os dados sobem da coisa até à aplicação; os comandos descem no sentido contrário.

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.

Em três frases

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.

FIM DA UNIDADE I
Unidade II

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:

BlocoFunção
DispositivoO hardware que sente e actua sobre o mundo.
ComunicaçãoOs protocolos e meios que transportam os dados.
ServiçosGestão dos dispositivos, recolha de dados, controlo, descoberta de aparelhos.
GestãoFunções para governar todo o sistema e tomar decisões.
SegurançaAutenticação, autorização, integridade e confidencialidade dos dados.
AplicaçãoA 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:

TecnologiaAlcanceDébitoConsumoBom para
Bluetooth / BLECurto (metros)MédioBaixoPulseiras, ligação ao telemóvel
ZigBeeCurto a médioBaixoMuito baixoCasa inteligente, redes em malha
Wi-FiMédio (dezenas de m)AltoAltoCâmaras, aparelhos com energia da rede
LoRaWANMuito longo (km)Muito baixoMuito baixoSensores agrícolas e urbanos espalhados
Celular (4G/5G, NB-IoT)Muito longoMédio a altoMédio a altoFrotas, 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.

Porque é que isto custa tanto

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.

Em três frases

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.

FIM DA UNIDADE II
Unidade III

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.

Numa frase

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 HTTPO que fazExemplo
GETLer / obterPedir a última temperatura de um sensor
POSTCriarRegistar um novo dispositivo
PUTActualizarMudar a configuração de um dispositivo
DELETEApagarRemover 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.

  1. O sensor mede e o dispositivo recolhe o valor.
  2. 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).
  3. O dado chega a uma plataforma na nuvem, que o recebe por uma API e o guarda.
  4. A plataforma analisa, aplica regras e, se for caso disso, envia um comando de volta ou gera um alerta.
  5. 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.

CamadaPapelQuem vive aqui
PercepçãoSentir e actuar sobre o mundoSensores, actuadores, etiquetas RFID
RedeTransportar os dadosWi-Fi, redes móveis, ZigBee, LoRa, gateways
Serviço / processamentoGuardar, analisar, aplicar regrasServidores e plataformas na nuvem, bases de dados
AplicaçãoEntregar valor ao utilizadorAplicaçõ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.

  1. As coisas (dispositivos). Sensores e actuadores no terreno, por vezes ligados através de uma gateway. É a fonte dos dados.
  2. 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.
  3. 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.

Em três frases

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.

FIM DA UNIDADE III
Unidade IV

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).

A lição da botnet Mirai

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:

PapelO que faz
CoordenadorHá 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 terminalSensor 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.
Broker MQTT Sensor (publica) Sensor (publica) App (subscreve) Painel (subscreve) publish subscribe
No MQTT, ninguém fala directamente com ninguém. Tudo passa pelo broker, que liga quem publica a quem subscreve.

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.

Em três frases

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.

FIM DA UNIDADE IV
Referência

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.
GLOSSÁRIO
Treino

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.

0 / 100
100 PERGUNTAS
Avaliação final

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ê.

Sobre o exame previsto no curso

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.

0 / 20
EXAME FINAL
Para ir mais longe

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.

  1. 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.
  2. 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.
  3. Fortino, G., & Trunfio, P. (Eds.). (2014). Internet of Things Based on Smart Objects: Technology, Middleware and Applications. Springer Science & Business Media.
Uma nota final

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.

FIM DO CURSO