Monitor Portátil de Temperatura e Umidade com Arduino e Display LCD 16x2
Componentes Necessários
- 1x Arduino UNO R3 (qualquer 5V serve)
- 1x Protoboard
- 1x Sensor DHT11 (4 pinos)
- 1x Potenciômetro 10kΩ (contraste LCD)
- 1x Display LCD 16x2 (RGB backlight Adafruit ou standard)
- 1x Resistor 10kΩ (pull-up DHT11)
- 1x Pushbutton tátil (liga backlight)
- 1x Power Bank (portabilidade)
- 1x Cabo USB A-B
- Jumpers
Sobre o Projeto
Um monitor portátil de temperatura e umidade com display em tempo real. Alimentado por power bank, cabe no bolso. Ideal para detectar correntes de ar, janelas com vazamento, ajustar ventilação doméstica.

Ligação (Esquemático Fritzing)
Arduino → Protoboard:
- GND → trilho negativo
- 5V → trilho positivo
DHT11 (4 pinos):
- Pino 1 (VCC) → 5V + resistor 10kΩ para pino 2
- Pino 2 (DATA) → Arduino D8 + resistor 10kΩ para VCC (pull-up)
- Pino 3 → NC
- Pino 4 (GND) → GND
LCD 16x2 (pinout padrão HD44780):
- Pino 1 (VSS) → GND
- Pino 2 (VDD) → 5V
- Pino 3 (VO) → cursor potenciômetro 10kΩ (pontas em 5V/GND)
- Pino 4 (RS) → Arduino D12
- Pino 5 (RW) → GND
- Pino 6 (EN) → Arduino D11
- Pinos 7-10 (D0-D3) → NC
- Pino 11 (D4) → Arduino D5
- Pino 12 (D5) → Arduino D4
- Pino 13 (D6) → Arduino D3
- Pino 14 (D7) → Arduino D2
- Pino 15 (A/LED+) → 5V
- Pino 16 (K/LED-) → Pushbutton → GND (botão liga backlight)

Nota: Meu LCD recuperado de painel de alarme tem pinout invertido (pinos 15/16 antes do 1, e 15=GND, 16=5V). Verifique seu datasheet! O Fritzing usa pinout padrão.
Código
Usa biblioteca DHT-sensor-library da Adafruit: GitHub
// Monitor Temp/Umidade - LCD 16x2 + DHT11
#include <LiquidCrystal.h>
#include "DHT.h"
#define DHTPIN 8
#define DHTTYPE DHT11
// LCD: RS=12, EN=11, D4=5, D5=4, D6=3, D7=2
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
DHT dht(DHTPIN, DHTTYPE);
void setup() {
lcd.begin(16, 2);
dht.begin();
lcd.print("Temp: Umidade:");
}
void loop() {
delay(500); // DHT11: leitura máx 1Hz (espec: 1s, mas 500ms funciona)
lcd.setCursor(0, 1);
float h = dht.readHumidity();
float f = dht.readTemperature(true); // true = Fahrenheit
if (isnan(h) || isnan(f)) {
lcd.print("ERRO LEITURA");
return;
}
lcd.print(f, 1); // 1 casa decimal
lcd.setCursor(7, 1);
lcd.print(h, 1);
}
Montagem e Uso
- Monte no protoboard conforme esquemático
- Conecte power bank ao Arduino via USB
- LCD e DHT11 inicializam
- Pressione o botão tátil → backlight acende
- Leituras atualizam a cada 0,5s

Próximos Passos (Planeado)
- Migrar para ATtiny84 (menor, menor consumo)
- Gravar PCB própria (gravação caseira)
- Adicionar logging em cartão microSD
- Versão com DHT22 (mais preciso, -40 a 80°C)
- Caixa impressa 3D
Dicas
- DHT11: precisão ±2°C, ±5% UR; faixa 0-50°C, 20-80% UR
- Evite condensa no sensor
- Power bank 5V/1A+ recomendado
- Para Celsius: use
dht.readTemperature()(sem parâmetro)
Processo de manufatura
- Construa um Sistema Aeropônico Automatizado com Raspberry Pi e Sensor de Umidade
- Construa um Jogo em Tempo Real com Giroscópio: Arduino Nano + Sensor MPU-6050
- Sistema Multi-Posição de Sensores de Temperatura para Integração em Casa Inteligente
- Sensor K30 CO₂: Monitoramento de Qualidade do Ar Interno em Tempo Real
- Construa um Sensor de Obstáculos Simples com Arduino – Tutorial Fácil com LED IR e Fotodiodo
- Integrando Sensor de Impressão Digital Capacitivo DFRobot com Arduino ou ESP8266
- Crie um Medidor IoT Web com Arduino, Yaler e IFTTT
- Levitação Magnética Repulsiva com Arduino: Circuito Simples e Guia DIY
- Registrador de Dados de Balão Meteorológico Arduino de Alto Desempenho
- Construa um Relógio Despertador Confiável com RTC DS1302 e Arduino UNO