terça-feira, 7 de setembro de 2021


Esta central controla o sistema de climatização através do monitoramento do ambiente, os níveis de temperatura e umidade,  acionando um ventilador ou outro tipo de equipamento para a refrigeração assim manter a estabilização da temperatura que é configurada na central de climatização. Bem como aciona um umidificador de ar, caso seja detectado nível critico da umidade relativa do ar.

exemplo: Para um ambiente que a temperatura ideal seja entre 25 a 28ºC. É configurado no programa do microcontrolador temperatura minima de 25ºC, que servirá para os desligamento do sistema de refrigeração quando esta temperatura for atingida. E para uma temperatura acima de 28ºC, será a temperatura que irá acionar o sistema de refrigeração.
Acima desta temperatura irá soar o alarme indicando que o nível esta aumentando, após acionamento do sistema de refrigeração começar a circular no ambiente para diminua a temperatura o alarme irá para de soar e quando o ambiente atingir a temperatura minima será então desligado.

No controle da umidade relativa do ar, será programado dois níveis de porcentagem no programa: mínimo e máximo.
Quando a porcentagem minima for detectada pelo sensor de umidade será ligado um umidificador de ar para que a umidade relativa possa subir a níveis aceitáveis em torno de 50 a 60%. Quando for atingido este nível o umidificador será então desligado.

Os níveis tanto de temperatura , como de umidade será apresentado os valores lidos pelo sensor no display de LCD. Este Display usa o módulo I2C para comunicação com o microcontrolador.

Caso o sensor DHT11 pare de comunicar (enviar dados ou falta de alimentação), um sinal sonoro será emitido através do buzzer e uma mensagem de texto será apresentado no display.

Leds indicarão quando o ventilador ou umidificador estiverem acionados.

Duas configurações podem ser feitas na central de climatização, nos jumpers J1 e J2.

J1 configura o acionamento do buzzer (passivo). quando estiver na posição (ON) habilita o Buzzer, em (OFF) desabilita o Buzzer.

J2 configura a tensão de entrada. (ON) para ser utilizado com fontes de 5 Volts. Para isso o regulador de tensão 7805 deverá ser retirado da placa.
Na posição (OFF), quando for utilizar tensão de 12 volts, o regulador de tensão 7805 deverá ser mantido na placa da central.


Esquema elétrico da central de climatização:



OBSERVAÇÃO: este projeto foi todo prototipado sobre a plataforma UNO, que serve de base para poder compilar o programa no microcontrolador ATMEGA 328P. Os pinos descritos no esquema elétrico refere-se ao microcontrolador e não aos pinos da plataforma.


Segue abaixo o programa a ser compilado no microcontrolador para o seu funcionamento:

#include "DHT.h"
#include <Wire.h>;                      // Carrega as bibliotecas necessárias
#include <LiquidCrystal_I2C.h>;
LiquidCrystal_I2C lcd(0x27,16,2);       // Define o endereço utilizado pelo Adaptador I2C
 
#define DHTPIN A0                       // pino que estamos conectado
#define DHTTYPE DHT11                   // DHT 11
#define buzzer 3                        // Define pino saida do buzzer
#define fan 2                           // Define pino saida do cooler
#define umid 4                          // Define pino saida do umidificador
#define led_fan 7                       // Define pino saida do led
#define led_umid 8                      // Define pino saida do led_umid
                                         
                                        // Conecte pino 1 do sensor (esquerda) ao pino de dados definido em seu Arduino
                                        // Conecte pino 2 (meio) do sensor  ao +5V
                                        // Conecte pino 3 (direita) do sensor ao GND
                                        // Conecte o resistor de 10K entre pino 1 (dados) e ao pino 2 (VCC) do sensor
                                        
DHT dht(DHTPIN, DHTTYPE);

void som()
{
  tone(buzzer,100,100);                 //altera a frequencia
  delay(100);        
  tone(buzzer,330,200); 
  delay(100);
  tone(buzzer,200,200); 
  delay(100);
  tone(buzzer,330,200); 
  delay(100);
  tone(buzzer,262,100); 
  delay(100);
 }

void setup() 
{
  pinMode (fan, OUTPUT);               //pino saida do cooler
  pinMode (umid, OUTPUT);              //pino saida do umidificador
  pinMode (led_fan, OUTPUT);           //pino saida do led
  pinMode (led_umid, OUTPUT);          //pino saida do led_umid
  dht.begin();                         //Inicia o sensor DHT11
  lcd.init();                          //Inicializa o LCD e o backlight
  lcd.backlight();                     //Inicializa o backlight
  lcd.setCursor(1, 0);
  lcd.print("CANAL DIVERSAO");
  delay(500); 
  lcd.setCursor(2, 1);
  lcd.print("& TECNOLOGIA");
  delay(1000); 
}
 
void loop() 
{
                                      // A leitura da temperatura e umidade pode levar 250ms!
                                      // O atraso do sensor pode chegar a 2 segundos.
  float h = dht.readHumidity();
  float t = dht.readTemperature();
     
  if (isnan(t) || isnan(h))           // testa se retorno é valido, caso contrário algo está errado.
  {
    lcd.clear();                      //limpa display
    lcd.setCursor(0, 0);
    lcd.println("ERRO comunicacao");  //mensagem na linha 0
    lcd.setCursor(0, 1);
    lcd.println(" no sensor DHT11");  //mensagem na linha 1
    delay(500);
    som();
  } 
  else
  {
        
    lcd.clear();                      //limpa display
    lcd.setCursor(0, 0);
    lcd.print("Umidade:");           // Imprime no display
    lcd.print(h);                    // Imprime leitura umidade
    lcd.print("%");
    
    
    lcd.setCursor(0, 1);
    lcd.print("Temper:");            // Imprime no display
    lcd.print(t);                    // Imprime leitura temperatura
    lcd.write(B11011111);            // Imprime o símbolo de grau
    lcd.print("C");
       delay(500);
  }

  if(t > 28.0)                       // Temperatura máxima
  {
    digitalWrite(fan, HIGH);        // liga cooler
    digitalWrite(led_fan, HIGH);    // liga led
    tone(buzzer,100,10);            // altera a frequencia
    delay(200);        
    tone(buzzer,100,10);            // altera a frequencia
    delay(200); 
    tone(buzzer,262,100);           // altera a frequencia
    delay(10);        
    tone(buzzer,390,100);           // altera a frequencia
    delay(10);     
   }
  
  else if(t < 25.0)                 // Temperatura mínima
  {
    digitalWrite(fan, LOW);         // desliga cooler
    digitalWrite(led_fan, LOW);         // desliga led
  }
  
  if(h> 50.0)                       // umidade máxima
  {
    digitalWrite(umid, LOW);        // desliga umidificador
    digitalWrite(led_umid, LOW);    // desliga led_umid
    
   }
  
  else if(h < 40.0)                 // umidade mínima
  {
    digitalWrite(umid, HIGH);       // liga led_umid
    digitalWrite(led_umid, HIGH);   // liga led_umid
  }
}




***********************************************************************************

nestas linhas que vou apresentar é onde deve ser alterado o código para as seguintes configurações:

este if determina a temperatura máxima, onde o ventilador será acionado.

 if(t > 28.0)                       // Temperatura máxima

altere o valor para a temperatura desejada.

###################################################################################

este else if determina a temperatura minima, onde o ventilador será desligado.

  else if(t < 25.0)                 // Temperatura mínima

altere o valor para a temperatura desejada.

###################################################################################

este if determina a umidade máxima, onde o umidificador será desligado.

  if(h> 50.0)                       // umidade máxima

altere o valor para a umidade desejada.

###################################################################################

este else if determina a umidade minima, onde o umidificador será acionado.

 else if(h < 40.0)                 // umidade mínima

altere o valor para a umidade desejada.

###################################################################################


***********************************************************************************


Esquema de ligação de todos os periféricos na central de controle climatização:

> fonte de alimentação;
> umidificador;
> ventilador;
> display LCD com módulo I2C;
> sensor DHT11 (temperatura / umidade). 


Segue fotos do projeto montado sobre uma placa circuito impresso (PCI), e todo o conjunto funcionando com o sensor DHT 11 , display e conexões de saída para ligar as cargas.

O display está montado sobre uma protoboard junto com o módulo I2C.

mensagem no display (intro do canal no YouTube)

mensagem display (leitura umidade e temperatura)

mensagem display (erro falta de comunicação do sensor com o microcontrolador 
ou por falta de alimentação)


vista geral dos componentes na placa de circuito impresso (PCI)

vista da saída (relés) e plugues para conexão das cargas (C.A.)


vista do sensor DHT11 e conector para o módulo I2C

led amarelo sistema de refrigeração ativado
led vermelho sistema de umidificação ativado






E-mail comercial

proeletronicos@gmail.com



visite canal no YouTube

DIVERSÃO & TECNOLOGIA