ESP32 - Sistema de Aquecimento
Neste guia, vamos aprender como fazer um sistema de aquecimento que controla a temperatura do ambiente usando um ESP32, um sensor de temperatura DS18B20 e um elemento de aquecimento. É simples assim: quando o ambiente estiver frio demais, ligamos o elemento de aquecimento e, quando ele esquentar, nós o desligamos. Você pode ajustar o código para funcionar com outros sensores de temperatura, como o DHT11, o DHT22 ou o LM35, então você tem a flexibilidade de escolher o sensor que preferir.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables ESP32 S3 Starter Kit (ESP32 S3 included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: Many DS18B20 sensors available in the market are unreliable. We strongly recommend buying the sensor from the DIYables brand using the link provided above. We tested it, and it worked reliably.
Sobre o Elemento de Aquecimento e o Sensor de Temperatura DS18B20
O elemento de aquecimento que estamos usando neste tutorial funciona com uma fonte de alimentação de 12 volts. Quando ele recebe energia, gera calor. Para que o ESP32 possa controlar o elemento de aquecimento, precisamos usar um relé. Esse relé funciona como a chave que permite ao ESP32 ligar ou desligar o elemento de aquecimento conforme necessário.
Se você não conhece o sensor de temperatura e o elemento de aquecimento (pinagem, como funcionam, como programar...), aprenda sobre eles nos tutoriais a seguir:
Diagrama de Ligação
- Diagrama de ligação com protoboard

This image is created using Fritzing. Click to enlarge image
Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.
- Diagrama de ligação com adaptador (recomendado)

This image is created using Fritzing. Click to enlarge image
Como o Sistema Funciona
- O ESP32 lê a temperatura do sensor de temperatura
- Se a temperatura cair abaixo de um limite inferior, o ESP32 liga o elemento de aquecimento
- Se a temperatura subir acima de um limite superior, o ESP32 desliga o elemento de aquecimento
O processo acima é repetido infinitamente no loop.
Código ESP32 para Sistema de Aquecimento com sensor DS18B20
No código acima, o ESP32 liga o elemento de aquecimento quando a temperatura cai abaixo de 15°C e mantém o elemento de aquecimento ligado até a temperatura ficar acima de 20°C
Passos Rápidos
- Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para o ESP32 na Arduino IDE.
- Faça a ligação como na imagem acima.
- Conecte a placa ESP32 ao seu PC com um cabo USB Type-C
- Abra a Arduino IDE no seu PC.
- Selecione a placa ESP32 correta (por exemplo, ESP32 Dev Module) e a porta COM.
- Clique no ícone Libraries na barra esquerda da Arduino IDE.
- Pesquise “DallasTemperature” na caixa de pesquisa e procure a biblioteca DallasTemperature de Miles Burton.
- Clique no botão Install para instalar a biblioteca DallasTemperature.

- Será pedido que você instale a dependência. Clique no botão Install All para instalar a biblioteca OneWire.

- Copie o código acima e abra na Arduino IDE
- Clique no botão Upload na Arduino IDE para fazer upload do código para o ESP32
- Deixe o ambiente ao redor do sensor mais quente ou mais frio
- Verifique a temperatura do elemento de aquecimento e do seu ambiente
Conhecimento Avançado
O método de controle acima é o controlador liga-desliga (on-off), também conhecido como sinalizador ou controlador "bang-bang". Este método é muito simples de implementar.
Existe um método alternativo chamado controlador PID. Com o controlador PID, a temperatura desejada fica mais estável, mas ele é muito difícil de entender e de implementar. Por isso, o controlador PID não é popular no controle de temperatura.