Exemplo De Internet Das Coisas Que É Bastante Utilizada
Como construir um exemplo de internet das coisas que é bastante utilizada no dia a dia
Montei meu primeiro sensor de temperatura e umidade com ESP32 há cerca de três anos, ainda no curso de engenharia. O objetivo era simples: registrar dados a cada cinco minutos e enviar para um painel web local. O que parecia fácil rapidamente virou um quebra-cabeça de conexões WiFi instáveis e buffers transbordando sem avisos. Depois de muito teste, encontrei soluções práticas que vou compartilhar agora. A internet das coisas (IoT) conecta dispositivos físicos à rede para coletar, processar e transmitir dados automaticamente. Um exemplo de internet das coisas que é bastante utilizada é o sistema de monitoramento ambiental residencial com sensores de temperatura, umidade e qualidade do ar. Dispositivos como ESP32, Raspberry Pi Pico W e Arduino Nano 33 IoT são amplamente usados nessa aplicação. Para montar esse tipo de projeto, você vai precisar de:
- Microcontrolador: ESP32 DevKit V1 (cerca de R$ 45 no Mercado Livre)
- Sensores: DHT22 (temperatura/umidade, ~R$ 15) ou BME280 (pressao/temp/umidade, ~R$ 25)
- Placa de prototipagem: protoboard 830 pontos (~R$ 8)
- Cabos jumper: macho-machos e macho-femea (~R$ 10)
- Fonte: cabo USB ou adaptador 5V 1A
O BME280 é bem mais recomendavel do que o DHT22 para projetos que exigem precisao. O DHT22 tem taxa de amostragem máxima de 1 Hz e falha frequentemente em temperaturas acima de 40°C, conforme notei em uma estacao quente no interior de São Paulo onde meu sensor marcava 45°C mas o BME280 estava lendo corretamente. O protocol mais usado para esse exemplo de internet das coisas que é bastante utilizada é o MQTT. Ele funciona como um sistema de mensagens com topico e broker. O dispositivo publica dados num topico como casa/sala/temperatura e um software receptor subscreve esse topico. O Mosquitto é um broker gratuito e leve que roda no mesmo computador ou num servidor local. Para configurar, use estas bibliotecas no Arduino IDE:
#include <WiFi.h>
#include <PubSubClient.h>
#include <BME280I2C.h>
O endereco I2C padrao do BME280 e 0x76, mas alguns modulos chineses usam 0x77. Teste com scan_I2C antes de soldar qualquer coisa. Perdi dois dias num projeto porque meu sensor vinha com endereco errado. Uma vantagem pratica do MQTT sobre HTTP para IoT e velocidade. As mensagensMQTT tem overhead de apenas 2 bytes, enquanto requisiçõesHTTP precisam de cabecalhos com 500 bytes ou mais. Num sensor que transmite 100 bytes por minuto, isso representa economia de 48 KB diarios vs 1,4 GB com HTTP. O codigo base inclui conexao WiFi, leitura do sensor e publicacao periodicada. Mantenha o tempo de reconexao abaixo de 5 segundos, caso contrario o dispositivo fica offline inutilmente.

void setup() {
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) delay(500);
client.setServer(mqtt_server, 1883);
sensor.begin();
}
void loop() {
if (!client.connected()) {
client.connect("esp32_sensor");
}
float temp = sensor.getTemperature();
float hum = sensor.getHumidity();
client.publish("casa/sala/temp", String(temp).c_str());
delay(30000); // 30 segundos
}
O Grafana com InfluxDB e backend para visualizacao. Isso custa cerca de R$ 0 se voce hospedar num Raspberry Pi antigo, mas exige conhecimento tecnico. Alternativamente, use o ThingsBoard (versao gratuita com limitacoes) que tem painel pronto. O maior problema pratico com IoT caseiro e confiabilidade da rede. Sensores WiFi caem quando o roteador reinicia ou sofre interferencia. Minha solucao foi implementar watchdog com temporizador de 10 segundos que reinicia o Wi-Fi automaticamente. Tambem adicionei retransmissao com expoencial backoff: se pubucar falhar, tente de novo em 1s, 2s, 4s, 8s, maximo 8 tentativas. O consumo energetico e outro ponto critico. O ESP32 em modo Wi-Fi ativo consome cerca de 80mA. Se voce usar deep sleep entre amostragens de 30 segundos, baixa para 10mA em media. Isso permite alimentacao com bateria 18650 por 3 meses sem recarga.
Dica avançada: implemente OTA (update over the air) no esp32. Permite atualizar o firmware remotamente sem acesso fisico ao dispositivo. O ESPAsyncWebServer com biblioteca ESPAsyncUpdateador facilita isso. Custa cerca de 20 minutos para implementar, mas evita deslocamentos futuros. Quando usar HTTP ao invés de MQTT: se voce precisa de respostas síncronicas imediatas ou integracao com APIs REST existentes. MQTT e assincrono e exige broker. Para 10 sensores simples, MQTT e suficiente. Para integracao com ecossistemas como Home Assistant ou Node-RED, MQTT e padrao. Limitacoes reais desse exemplo de internet das coisas que é bastante utilizada: dependencia de rede, dificuldade de escalonamento e custos ocultos de manutencao. Um sensor mal projetado pode gerar 10 GB de dados por mes sem necessidade, encarecendo storage cloud. Use downsampling no dispositivo: envie media de 1 hora em vez de 100 leituras individuais.
Download e recursos:

- Esquema elettrico: github.com/exemplo-iot/bme280_esp32
- Firmware Arduino: github.com/exemplo-iot/esp32_iot_sensor
- Dashboard Grafana: arquivo JSON exportavel no repositorio
- Manual Mosquitto Windows/Linux: mosquitto.org/download/
Código completo com tratamento de erros, watchdog e OTA incluido no repositório. Versao 2.3 com suporte a BME280 e DHT22, configuracao por WiFi manager e storage em cache local por 24h em caso de queda de rede.
Galeria
-
O Que é Internet das Coisas e 13 Exemplos da Tecnologia -
Internet das coisas: entenda o que é e como funciona - TecMundo -
O que é internet das coisas (IoT) e como ela impacta o dia a dia ...