Blog
Sistema DIY de Ventilação Automática de Ambiente com Arduino
O projeto apresentado foi concebido para solucionar um problema doméstico simples, porém comum: a má circulação do ar devido a altas temperaturas e umidade. Os ventiladores em a maioria dos cômodos, especialmente em quartos, escritórios ou pequenos laboratórios, geralmente são operados manualmente. Na prática, as pessoas frequentemente se esquecem de ligá-los ou desligá-los, o que resulta em desconforto e desperdício de energia.
O conceito aqui foi criar um sistema de ventilação automática de ambiente que respondesse às condições ambientais reais. O sistema monitora continuamente a temperatura e a umidade e aciona automaticamente o ventilador. O Arduino foi escolhido por proporcionar prototipagem rápida e integração confiável de sensores.
Esta não foi apenas uma versão de demonstração. O sistema foi construído, testado em uma sala real, ajustado e, em seguida, executado por longos períodos. A discussão a seguir reflete esses testes experimentais e desenvolvimentos.
Pensamento de Design e Conceito de Sistema
O problema foi dividido em subproblemas menores antes do início da fiação do hardware ou da codificação.
O sistema precisava:
- Obtenha leituras precisas de temperatura e umidade.
- Determine quando a ventilação é necessária.
- Ligue um ventilador de alta potência com segurança.
- Evite ligar e desligar frequentemente.
Foi tomada a decisão de utilizar uma estratégia de controle simples baseada em regras, em vez de algoritmos complexos. O controle de precisão é menos importante do que a obtenção de ventilação estável.
A arquitetura final consistiu em:
- Arduino Uno como o controlador central.
- Sensor de temperatura e umidade (DHT11).
- Módulo de relé para isolar controle de baixa tensão de carga de alta tensão.
- Ventilador como dispositivo de saída.
- Manter a detecção, a comutação de controle e a comutação de potência independentes torna o sistema mais seguro e fácil de depurar.
Componentes Utilizados
Os componentes utilizados no projeto foram os seguintes:
- Arduino Uno
- Módulo sensor de temperatura e umidade DHT11
- Módulo relé de um canal de 5V
- Ventilador de CA controlado por relé
- Placa de ensaio e fios jumper
- Fonte de alimentação externa (utilizada quando exigida pelo ventilador)
Os componentes são todos baratos e facilmente acessíveis, tornando este projeto fácil de replicar.
Conexões de Hardware (Passo a Passo)
A configuração de hardware foi mantida muito simples para minimizar erros de fiação.
Conexão do Sensor DHT11:
- VCC – Arduino 5V
- GND – Aterramento do Arduino
- DATA – Pino digital 2 do Arduino
Um resistor de pull-up já estava presente no módulo DHT11, portanto, nenhuma peça adicional foi necessária.
Conexão do Módulo de Relé:
- VCC – Arduino 5V
- GND – Aterramento do Arduino
- EM – Pino digital 8 do Arduino
O fio vivo do ventilador foi conectado através do terminal Normalmente Aberto (NA) do relé para garantir que o ventilador permaneça desligado na inicialização do sistema.
⚠️ Precaução de segurança: A fiação CA foi feita com cuidado e testada separadamente antes de ser conectada ao relé controlado por Arduino.
Visão Geral da Lógica de Controle
A lógica de controle segue um fluxo simples:
- Ler temperatura e umidade.
- Compare os valores com limites predefinidos.
- Ligue o ventilador quando os limites forem ultrapassados.
- Desligue o ventilador quando as leituras voltarem ao normal.
- Aguarde antes de fazer a próxima leitura.
Essa lógica comprovou ser confiável durante testes de longo prazo e não exigiu comutação desnecessária de relés.
Código Arduino (Testado e Funcionando)
#include
#define DHTPIN 2;
#define DHTTYPE DHT11;
#define RELAY_PIN 8;
float tempThreshold = 30.0;
float limiteDeUmidade = 70,0;
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, HIGH); // Relé DESLIGADO (ativo-BAIXO)
dht.begin();
Serial.println("Sistema de ventilação automática iniciado");
}
void loop() {
float umidade = dht.readHumidity();
float temperatura = dht.readTemperature();
if (isnan(umidade) || isnan(temperatura)) {
Serial.println("Falha na leitura do sensor");
delay(2000);
return;
}
Serial.print("Temperatura: ");
Serial.print(temperature);
Serial.print(" °C | Umidade: ");
Serial.print(humidity);
Serial.println(" %");
if (temperature > tempThreshold || humidity > humidityThreshold) {
digitalWrite(RELAY_PIN, LOW); // Ventilador LIGADO
Serial.println("Ventilador: LIGADO");
} else {
digitalWrite(RELAY_PIN, HIGH); // Ventilador DESLIGADO
Serial.println("Ventilador: DESLIGADO");
}
Serial.println("----------------------");
delay(3000);
}
Detalhes Chave da Implementação
Algumas escolhas menores fizeram uma diferença tremenda na aplicação real.
Os valores de limite foram inicialmente escolhidos com base em testes. Temperaturas mais baixas faziam o ventilador ligar e desligar com muita frequência, portanto o valor final foi ajustado para 30 °C.
Em segundo lugar, foi realizado um monitoramento serial extenso durante os testes. O monitoramento em tempo real ajudou a confirmar a precisão das leituras dos sensores e o comportamento geral do sistema.
Terceiro, tomou-se cuidado para verificar o comportamento do relé. Muitos módulos de relé são ativos em nível baixo, o que pode confundir os iniciantes, a menos que sejam testados precocemente.
Desafios Práticos Enfrentados
Um dos principais desafios foi a lenta resposta do sensor DHT11. Leituras frequentes resultavam em valores duplicados, o que foi solucionado com a introdução de pausas mais longas entre as leituras.
Surtos curtos de umidade, como abrir portas ou cozinhar nas proximidades, foram outro desafio. Isso foi mitigado pelo uso de atrasos e valores de limiar estáveis.
Inicialmente, havia um ruído audível de cliques nos relés. A redução da frequência de comutação não apenas diminuiu o ruído, mas também melhorou a vida útil dos relés.
Lições Aprendidas
Este projeto demonstrou que sistemas simples são os mais eficazes para automação básica. Lógica complicada não melhorou o desempenho.
É importante compreender as limitações dos sensores. O DHT11 é adequado para tarefas de monitoramento simples, mas não para controle rápido ou preciso.
Acima de tudo, a segurança elétrica não deve ser negligenciada ao manusear relés e cargas de corrente alternada.
A próxima etapa deste projeto pode incluir:
- Substitua o DHT11 por um sensor DHT22
- Adicionar um display LCD ou OLED
- Ativar monitoramento remoto usando um ESP32
- Aplique histerese para um controle mais suave
Considerações Finais
Este sistema automático de ventilação de ambientes demonstra como o Arduino pode utilizar lógica e hardware simples para solucionar problemas do mundo real. Testes, ajustes e o uso prático ajudaram o projeto a evoluir de uma ideia para um sistema totalmente funcional.
Para iniciantes, oferece uma experiência de aprendizado completa. Para usuários mais experientes, serve como um lembrete de que uma boa engenharia, por vezes, reside em manter as coisas simples, estáveis e seguras.
Para aqueles interessados em levar projetos do protótipo à produção, seja como um hobbyista ou como um negócio, PCBCool Oferecemos serviços flexíveis de PCB e PCBA. Da prototipagem rápida à fabricação em pequenos lotes ou em larga escala, nossas soluções facilitam a transformação de ideias em eletrônicos reais e funcionais.
Perguntas Frequentes (FAQ)
O DHT11 é barato e fácil de obter, ideal para iniciantes e monitoramento simples. O DHT22 tem resposta mais rápida e maior precisão, sendo adequado para aplicações de controle mais precisas.
Sim, mas os ventiladores de CA devem ser controlados através de um relé para isolar os circuitos de alta tensão.
A comutação frequente aumenta o desgaste e reduz a vida útil do relé. Adicionar atrasos de amostragem, limites estáveis ou histerese pode reduzir o número de ciclos de comutação.
Sim, testes de longo prazo demonstraram operação estável.
Absolutamente. O senhor pode adicionar um LCD ou OLED para monitoramento local, ou integrar um módulo ESP32/Wi-Fi para controle e monitoramento remotos.
Sim. Raspberry Pi, ESP32 ou STM32 podem ser utilizados, mas o código e a fiação necessitam de ajustes.
Ao utilizar Arduino + DHT11 + relé + ventilador pequeno, o custo dos materiais costuma ficar entre $15 e $30 (excluindo a placa de circuito impresso e o invólucro), dependendo da escolha dos componentes.
Sim! É aqui que a PCBCool entra em jogo. Você pode criar rapidamente protótipos de PCB ou PCBA de pequena escala, transformando seu projeto experimental em um produto confiável e funcional.
Farhan A. é um engenheiro eletrônico especializado em design de PCBs, drones, robótica, sistemas embarcados e desenvolvimento de hardware baseado em IA. Sua experiência em C/C++, Python, IA/ML e testes o auxilia no desenvolvimento de soluções práticas para projetos eletrônicos complexos.