Sistema Avançado de Controle de Temperatura com ESP8266 IoT

Este artigo une teoria e prática para criar um sistema avançado de controle de temperatura usando o ESP8266. Combinando componentes acessíveis, programação eficiente e integração IoT, você aprenderá a construir uma solução personalizável para aplicações residenciais, agrícolas ou industriais, com ênfase em segurança, eficiência energéticaSistema de controle de persianas automatizadas com ESP8266Sistema de controle de persianas automatizadas com ESP8266Descubra como automatizar persianas com ESP8266 em um guia prático, unindo eficiência energética, segurança e integração IoT para automação da sua casa. e monitoramento remoto.

Índice🔗

Materiais e Componentes🔗

ComponenteDescrição
ESP8266 (NodeMCU)Microcontrolador com Wi-Fi integrado para comunicação IoT.
Sensor DS18B20Sensor de temperatura à prova d'água (precisão de ±0.5°C).
Módulo Relé 5VControla cargas de alta potência (até 10A) com optoacoplador para isolamento.
Fonte de Alimentação5V/2A para alimentar ESP8266 e relé.
Protoboard e JumpersFacilitam conexões durante a prototipagem.
Resistor 4.7kΩResistor de pull-up para comunicação do DS18B20.
Diodo de ProteçãoProtege o circuito contra sobretensões (ex.: 1N4007).

Nota: Para medições que exigem umidade, substitua o DS18B20Monitor de qualidade da água com ESP8266 para piscinasMonitor de qualidade da água com ESP8266 para piscinasAprenda a montar um sistema IoT completo com ESP8266 para monitorar pH, cloro e temperatura em piscinas, garantindo segurança e eficiência. por um DHT22.

Arquitetura do Sistema🔗

O sistema é dividido em três camadas interconectadas:

flowchart TD A[Camada de Aquisição] -->|Dados do Sensor| B[ESP8266] B -->|Wi-Fi| C[Cloud/MQTT] B -->|Sinal de Controle| D[Relé] D --> E[Aquecedor] C --> F[Dashboard Node-RED]

1. Aquisição de Dados:

  • Sensores convertem temperatura em sinais elétricos.

2. Processamento e IoT:

3. Atuação:

Fundamentos Teóricos de Controle de Temperatura🔗

Tipos de Controle

1. On-Off (HistereseSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética.):

  • Liga/desliga o aquecedor quando a temperatura cruza um limiar.
$$ \text{Ação: } \begin{cases} \text{Liga se } T < T_{set} - 0.5°C \\ \text{Desliga se } T > T_{set} + 0.5°C \end{cases} $$

2. PIDSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética. (Proporcional-Integral-Derivativo):

  • Ajusta a potência do aquecedor continuamente:
$$ u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau) d\tau + K_d \frac{de(t)}{dt} $$

Montagem do Hardware🔗

Diagrama de Conexões

graph LR ESP8266 -->|D4 GPIO2| DS18B20 ESP8266 -->|D1 GPIO5| Relé DS18B20 -->|VCC| 3.3V DS18B20 -->|GND| GND Relé -->|VCC| 5V Relé -->|GND| GND

Tabela de Ligação Detalhada

Pino ESP8266ComponenteFunção
D4 (GPIO2)DS18B20 (DATA)Comunicação + resistor 4.7kΩ.
D1 (GPIO5)Relé (IN)Acionamento do aquecedor.
3.3VDS18B20 (VCC)Alimentação do sensor.
5VRelé (VCC)Alimentação do módulo relé.
GNDTodos os GNDsTerra comum.

Atenção: Use fusível em série com o aquecedor para proteção contra curtos.

Programação do ESP8266🔗

Código Base (Controle On-Off + Wi-Fi)

#include <OneWire.h>
#include <DallasTemperature.h>
#include <ESP8266WiFi.h>
#define ONE_WIRE_BUS D4
#define RELAY_PIN D1
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float setpoint = 25.0;
void setup() {
  Serial.begin(115200);
  pinMode(RELAY_PIN, OUTPUT);
  sensors.begin();
  WiFi.begin("SSID", "SENHA");
  while (WiFi.status() != WL_CONNECTED) delay(500);
}
void loop() {
  sensors.requestTemperatures();
  float temp = sensors.getTempCByIndex(0);
  if (temp < setpoint - 0.5) digitalWrite(RELAY_PIN, HIGH);
  if (temp > setpoint + 0.5) digitalWrite(RELAY_PIN, LOW);
  Serial.print("Temperatura: ");
  Serial.println(temp);
  delay(5000);
}

Controle PID (Exemplo Simplificado)

// Adicione estas variáveis
float Kp = 2.0, Ki = 0.1, Kd = 0.5;
float integral = 0, lastError = 0;
void loop() {
  sensors.requestTemperatures();
  float temp = sensors.getTempCByIndex(0);
  float error = setpoint - temp;
  integral += error * 0.1; // dt = 0.1s
  float derivative = (error - lastError) / 0.1;
  float output = Kp * error + Ki * integral + Kd * derivative;
  // Mapeia saída para PWM (0-100%)
  analogWrite(RELAY_PIN, constrain(output, 0, 1023));
  lastError = error;
  delay(100);
}

Integração com Sistemas IoT🔗

Configuração MQTT com Node-RED

1. Instale o Mosquitto como broker MQTTSistema de controle de persianas automatizadas com ESP8266Sistema de controle de persianas automatizadas com ESP8266Descubra como automatizar persianas com ESP8266 em um guia prático, unindo eficiência energética, segurança e integração IoT para automação da sua casa..

2. Modifique o código do ESP8266Sistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética. para publicar dados:

#include <PubSubClient.h>
PubSubClient mqttClient;
void reconnect() {
  mqttClient.connect("ESP_Aquecedor");
  mqttClient.publish("casa/aquecedor/temp", String(temp).c_str());
}
void setup() {
  mqttClient.setServer("192.168.1.100", 1883);
}

3. Crie um dashboardDashboard de monitoramento remoto com ESP8266Dashboard de monitoramento remoto com ESP8266Aprenda a criar um dashboard IoT com ESP8266, integrando sensores, segurança avançada e otimização de comunicação para monitoramento remoto eficiente. no Node-RED:

  • Use gráficos temporais para temperatura.
  • Adicione um controle deslizante para ajustar o setpoint remotamente.

Calibração e Otimização🔗

Passo a Passo

1. Calibração do SensorSistema de controle de luzes com ESP8266 e sensor de luminosidadeSistema de controle de luzes com ESP8266 e sensor de luminosidadeDescubra como automatizar a iluminação residencial com ESP8266 e sensor LDR, economizando até 30% na conta de energia com um sistema inteligente.:

  • Compare com um termômetro de referência e ajuste offsets no código.

2. Ajuste de HistereseSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética.:

  • Reduza a banda morta (ex.: ±0.3°C) para resposta mais rápida.

3. Tuning PIDSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética.:

  • Use o método Ziegler-Nichols para definir Kp, Ki, Kd.

4. Testes de Carga:

Segurança e Melhores Práticas🔗

1. Proteções Elétricas:

2. Isolamento de CircuitosSistema de controle de persianas automatizadas com ESP8266Sistema de controle de persianas automatizadas com ESP8266Descubra como automatizar persianas com ESP8266 em um guia prático, unindo eficiência energética, segurança e integração IoT para automação da sua casa.:

3. Monitoramento RemotoDashboard de monitoramento remoto com ESP8266Dashboard de monitoramento remoto com ESP8266Aprenda a criar um dashboard IoT com ESP8266, integrando sensores, segurança avançada e otimização de comunicação para monitoramento remoto eficiente.:

4. Eficiência EnergéticaSistema de controle de persianas automatizadas com ESP8266Sistema de controle de persianas automatizadas com ESP8266Descubra como automatizar persianas com ESP8266 em um guia prático, unindo eficiência energética, segurança e integração IoT para automação da sua casa.:

  • Programe horários de operação (ex.: desligar à noite em estufas).

Aplicações e Considerações Finais🔗

Casos de Uso

  • Residencial: Controle de aquecedores e pisos radiantes.
  • Agrícola: Gestão de temperatura em estufas e incubadoras.
  • Industrial: Monitoramento de máquinas e prevenção de superaquecimento.

Expansões Recomendadas

Aviso Crítico: Nunca exceda as especificações elétricas dos componentes. Teste o sistema sem carga antes de conectar dispositivos de alta potência.

Este projeto demonstra como tecnologias acessíveis (ESP8266Sistema de automação residencial com ESP8266 e controle de luzesSistema de automação residencial com ESP8266 e controle de luzesEste tutorial aborda a implementação de automação residencial com ESP8266, destacando segurança, eficiência energética, integração MQTT e interface web., sensores digitais) podem ser combinadas para criar sistemas profissionais de automação. Ao dominar essas técnicas, você estará preparado para desenvolver soluções IoT escaláveis, seguras e adaptáveis a diversos cenários do mundo real.

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados