segunda-feira, 25 de julho de 2022

MÓDULO BI-ESTÁVEL PARA SISTEMAS DE AUTOMAÇÃO



 

Este módulo serve para controle de cargas, ligando e desligando através do relé que é o responsável por comandar através dos contatos comum e normalmente aberto (NA).

O funcionamento do circuito é bem simples, utiliza o circuito integrado 555, que esta configurado na função bi-estável. Utiliza apenas um único pulsador (push botton) que é o comando para que o circuito integrado possa mudar de estado (nível alto ou baixo), e assim permanece sempre estável em algum dos níveis até que o interruptor seja pressionado.

Com esta facilidade de acionamento fica fácil incrementar novos dispositivos que possam enviar um nível de comando utilizando opto acoplador e incorporar sistemas como por radio-frequência, Bluetooth, infravermelho, wi-fi, e também IoT. 

 na figura abaixo tem o esquema elétrico completo do módulo bi-estável. 



O circuito possui uma fonte de alimentação já implementada, porém é do tipo sem transformador. Qual deve tomar muito cuidado ao manusear o equipamento com este tipo de fonte por não possuir isolação da rede elétrica. O risco de choque é inevitável. Tome todos os cuidados necessários para isolação do circuito quanto for instalado.


Na figura tem o esquema de ligação de todos os componentes externo.



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


E-mail Comercial proeletronicos@gmail.com




Canal YouTube


DIVERSÃO & TECNOLOGIA

terça-feira, 11 de janeiro de 2022

TERMÔMETRO DIGITAL DUPLO COM SENSOR NTC





link acesso video:  https://youtu.be/RQdkPhdx8FI



Este projeto do termômetro digital com duplo sensor.

O projeto consegue monitorar dois ambientes em tempo real, apresentando a leitura lida nos sensores e enviadas para um display de LCD.

Cada leitura é apresentada em uma linha no display, assim sendo de fácil comparação entre as leituras. Outra coisa importante no circuito, que pode fazer o controle de carga para cada um dos sensores.

Na programação que é feita no microcontrolador, pode estipular o parâmetro para ligar / desligar a carga. Podendo também criar uma janela de temperatura para que a carga fique acionada por determinado período ate atingir a temperatura ideal.

No esquema elétrico podemos ver que o circuito foi desenvolvido com microcontrolador ATMEGA 328P.

Analisando o esquema, tem as conexões dos sensores (NTC) e dos leds que refere-se as saídas das cargas. Estas saídas podem ser substituídas por reles para acionamento de cargas com maior intensidade de corrente. Estes reles devem conter um driver de controle.

Esquema elétrico com microcontrolador



 Neste esquema, a montagem é feita diretamente na plataforma Arduíno, conforme esquema das ligações correspondem aos pinos do microcontrolador ATMEGA 328P. 

Se comparar as saídas do Arduíno irá corresponder aos pinos do microcontrolador.





pinagem do microcontrolador ATMEGA 328P



SKETCH DO CÓDIGO PARA O MICROCONTROLADOR


/* Projeto: TERMOMETRO DIGITAL DUPLO
 * Autor: Roberto Ednei
 * Data: 25/12/2021
 * Sensor tipo Termistor NTC
 * Liga ou desliga carga dependendo da programaçao escolhida
 * Possui dois canais um para cada sensor NTC
 * Revisão: 02/01/2022
 */
 
#include <Thermistor.h>                     // incluindo biblioteca do termistor
#include <LiquidCrystal.h>                  // incluindo biblioteca display LCD

Thermistor temp(5);                         // termistor conectado na porta A5 
Thermistor temp1(4);                        // termistor conectado na porta A4

LiquidCrystal lcd(5, 6, 7, 8, 9, 10);       // define os pinos do display

int led = 13;                               // define porta saida 1
int led1 = 12;                              // define porta saida 2

void setup() {
pinMode (led, OUTPUT);                      // deine porta como saida 1
pinMode (led1, OUTPUT);                     // deine porta como saida 2
lcd.begin(16, 2);                           // iniciando o display 16 colunas x 2 linhas
lcd.setCursor(0,0);                         // setando texto na coluna (0) da linha (0)
lcd.print("AGUARDE");                       // mensagem inicial
delay(700);                                 // tempo espera
lcd.setCursor(0,1);                         // setando texto na coluna (0) da linha (1)
lcd.print("INICIALIZANDO...");              // mensagem inicial
delay(1100);                                // tempo espera
lcd.clear();                                // limpando o display
delay(10);                                  // tempo espera
lcd.setCursor(1,0);                         // setando texto na coluna (1) da linha (0)
lcd.print("CANAL DIVERSAO");                // intro do canal no YouTube
delay(700);                                 // tempo espera
lcd.setCursor(2,1);                         // setando texto na coluna (2) da linha (1)
lcd.print("& TECNOLOGIA");                  // intro do canal no YouTube
delay(900);                                 // tempo espera
}

void loop() {

float temperature = temp.getTemp();         // calcula a temperatura

lcd.setCursor(0,0);                         // Define o cursor na posição de início
lcd.print("Temp.int:");                     // imprime texto na linha (0)
lcd.print(temperature);                     // imprime a leitura do sensor no display
lcd.write(B11011111);                       // imprime o símbolo de grau
lcd.print("C");                             // imprime a letra(C) no final do texto
delay(200);                                 // tempo espera

{
if ( temperature > 33.00)                   // se a temperatura for maior que 33ºC
{
digitalWrite(led, HIGH);                    // liga a saida 1
}
else                                        // senão
{
digitalWrite (led, LOW);                    // desliga a saida 1
}
}

{
float temperature  = temp1.getTemp();       // calcula a temperatura

//imprimindo no LCD
lcd.setCursor(0,1);                         // Define o cursor na posição de início
lcd.print("Temp.ext:");                     // imprime texto na linha (1)
lcd.print(temperature);                     // imprime a leitura do sensor1 no display
lcd.write(B11011111);                       // imprime o símbolo de grau
lcd.print("C");                             // imprime a letra(C) no final do texto
delay(200);                                 // tempo espera

{
if ( temperature > 33.00)                   // se a temperatura for maior que 33ºC
{
digitalWrite(led1, HIGH);                  // liga a saida 2
}
else                                       // senão
{
digitalWrite (led1, LOW);                  // desliga a saida 2
}
}
}
}                                          // fim código






                              

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


E-mail Comercial proeletronicos@gmail.com **************************************************************************** A FINALIDADE DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO É DEMONSTRAR QUE A UNIÃO DE COMPONENTES ELETRÔNICOS (PASSIVOS OU ATIVOS), É POSSÍVEL CONTROLAR DIVERSOS TIPOS DE CARGAS. BEM COMO, DE FORMA DIDÁTICA EXPLICAR O FUNCIONAMENTO DOS CIRCUITOS COMO SE COMPORTAM QUANDO RECEBEM TENSÃO ELÉTRICA PARA O FUNCIONAMENTO DESTES CIRCUITOS. EXISTEM DIVERSOS TIPOS DE CIRCUITOS E TECNOLOGIAS (COMPONENTES DISCRETOS OU MICROCONTROLADOS) QUE PODEM SER EMPREGADAS PARA FORMAR UM SISTEMA DE AUTOMAÇÃO, SEJA EM AUTOMAÇÃO RESIDENCIAL, COMERCIAL OU MESMO INDUSTRIAL. AO FINAL DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO IREI REPRESENTAR DE FORMA DIDÁTICA UMA MAQUETE SIMULANDO UM SISTEMA RESIDENCIAL.. CONTROLANDO DIVERSOS TIPOS DE CARGAS: EX.. LÂMPADAS, MOTORES, SISTEMAS DE CLIMATIZAÇÃO, COMANDOS PARA PISCINA, ELEVADOR, ENTRE OUTROS. UTILIZANDO DIVERSOS TIPOS DE COMUNICAÇÃO SEJA, VIA CABO, WIRELESS, SMARTPHONE, BLUETOOTH, ASSISTENTE VIRTUAL, ENTRE OUTROS.



terça-feira, 14 de dezembro de 2021

AR CONDICIONADO COM PASTILHA PELTIER

 



link acesso vídeo:  https://youtu.be/rPweIX6AnnU



Este projeto sobre sistemas de automação (CLIMATIZAÇÃO), faz a simulação das funções básicas de um ar-condicionado, utilizando uma pastilha peltier para simular a transferência de calor / frio em um ambiente.
Com esta transferência podemos observar a mudança entre a temperatura quente para fria, após alguns segundos de funcionamento do circuito.
Para o monitoramento da temperatura um circuito (termômetro), formado por um microcontrolador, recebe informações provenientes de um sensor (NTC), as informações lidas pelo microcontrolador é enviada para um display de LCD, que informa qual é a temperatura em tempo real dentro da câmara do ar condicionado.

 Vista da placa no software Proteus 8.6, podemos observar cada componente disponibilizado na placa (PCI), que forma o circuito do termômetro.


 Visão geral da placa de circuito impresso lado dos componentes e o lado cobreado.


 As mensagens que aparecem no display de LCD, texto na primeira linha indica o projeto (AR CONDICIONADO >PASTILHA PELTIER<
E na segunda linha indica a TEMPERATURA em tempo real.
os textos no display ficam constantemente em rolagem pela tela para poder apresentar toda a informação que foi programada no microcontrolador.

 Esquema elétrico do projeto com as pinagens referente ao microcontrolador ATMEGA 328P


Foto da parte interna do ar-condicionado.



CÓDIGO FONTE PARA COMPILAR NO MICROCONTROLADOR


* Projeto: TERMOMETRO DIGITAL
* Autor: Roberto Ednei
* Data: 13/12/2021
* Revisado em 02/01/2022
*/
 
#include <LiquidCrystal.h>                            //incluindo a biblioteca do LCD  
#include <Thermistor.h>                               //incluindo a biblioteca termistor  

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);                //definindo os pinos de ligação do LCD
Thermistor temp(1);                                   //termistor conectado na porta A1 

void setup(){ 
lcd.begin(16,2);                                       //iniciando o display LCD passando nos parâmetros o seu tamanho: 16 colunas x 2 linhas
lcd.setCursor(1,0);                                    //inicia texto na coluna (1) na linha (0)
lcd.print("CANAL DIVERSAO");                           //intro canal no youtube, escreve o texto dentro das "aspas"
delay(700);                                            //espera tempo
lcd.setCursor(2,1);                                    //inicia texto na coluna (2) na linha (1)
lcd.print("& TECNOLOGIA");                             //intro canal no youtube, escreve o texto dentro das "aspas"
delay(900);                                            //espera tempo
lcd.clear();                                           //limpa o LCD lcd.setCursor(0,0); 
lcd.setCursor(0,0);                                    //iniciar o cursor na posição (0,0);
lcd.print(" Ar  Condicionado >Pastilha Peltier< ");    //inicia texto na coluna (0) na linha (0), escreve o texto dentro das "aspas"
}

void loop() {  
for(int posi_LCD = 0; posi_LCD < 36; posi_LCD ++)      //movimentando todo o display, posições para a ESQUERDA.
{ lcd.scrollDisplayLeft();                             //Essa é a função que faz as letras se deslocarem 
delay(100);                                            //Espera tempo

float temperature = temp.getTemp();                    //calcula a temperatura

lcd.setCursor(0,1);                                    //inicia texto na coluna (0) na linha (1)
lcd.print("Temp.  ");                                  //imprime, escreve o texto dentro das "aspas"
lcd.print(temperature);                                //imprime o valor temperatura
lcd.write(B11011111);                                  //imprime o símbolo de grau
lcd.print("C");                                        //imprime a letra (C) no fim do texto


lcd.setCursor(20,1);                                  //inicia texto na coluna (20) na linha (1)
lcd.print("Temp.  ");                                 //imprime, escreve o texto dentro das "aspas"
lcd.print(temperature);                               //imprime o valor temperatura
lcd.write(B11011111);                                 //Imprime o símbolo de grau
lcd.print("C");                                       //imprime a letra (C) no fim do texto
  
delay(250);                                           //Espera tempo
  }
}                                                     //fim do código




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


E-mail Comercial proeletronicos@gmail.com **************************************************************************** A FINALIDADE DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO É DEMONSTRAR QUE A UNIÃO DE COMPONENTES ELETRÔNICOS (PASSIVOS OU ATIVOS), É POSSÍVEL CONTROLAR DIVERSOS TIPOS DE CARGAS. BEM COMO, DE FORMA DIDÁTICA EXPLICAR O FUNCIONAMENTO DOS CIRCUITOS COMO SE COMPORTAM QUANDO RECEBEM TENSÃO ELÉTRICA PARA O FUNCIONAMENTO DESTES CIRCUITOS. EXISTEM DIVERSOS TIPOS DE CIRCUITOS E TECNOLOGIAS (COMPONENTES DISCRETOS OU MICROCONTROLADOS) QUE PODEM SER EMPREGADAS PARA FORMAR UM SISTEMA DE AUTOMAÇÃO, SEJA EM AUTOMAÇÃO RESIDENCIAL, COMERCIAL OU MESMO INDUSTRIAL. AO FINAL DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO IREI REPRESENTAR DE FORMA DIDÁTICA UMA MAQUETE SIMULANDO UM SISTEMA RESIDENCIAL.. CONTROLANDO DIVERSOS TIPOS DE CARGAS: EX.. LÂMPADAS, MOTORES, SISTEMAS DE CLIMATIZAÇÃO, COMANDOS PARA PISCINA, ELEVADOR, ENTRE OUTROS. UTILIZANDO DIVERSOS TIPOS DE COMUNICAÇÃO SEJA, VIA CABO, WIRELESS, SMARTPHONE, BLUETOOTH, ASSISTENTE VIRTUAL, ENTRE OUTROS.



domingo, 28 de novembro de 2021

AUTOMAÇÃO DA PISCINA





A automação da piscina consiste em demonstrar de forma didática o funcionamento da parte mecânica, e elétrica. na parte eletrônica, controla tanto a bomba de sucção da água e envia para as válvulas solenóide que envia o fluxo d'água para a cascata e hidro, de forma alternada com tempos determinados pela central de comando. a mini bomba d'água e as válvulas solenóide são alimentadas com tensão continua de 12 Volts



Fotos com cada um dos componentes que compõe o projeto da piscina




Esquema elétrico




Vídeo no YouTube do Canal Diversão & tecnologia

Link:https://youtu.be/zLW_g6G-RHA



E-mail Comercial proeletronicos@gmail.com **************************************************************************** A FINALIDADE DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO É DEMONSTRAR QUE A UNIÃO DE COMPONENTES ELETRÔNICOS (PASSIVOS OU ATIVOS), É POSSÍVEL CONTROLAR DIVERSOS TIPOS DE CARGAS. BEM COMO, DE FORMA DIDÁTICA EXPLICAR O FUNCIONAMENTO DOS CIRCUITOS COMO SE COMPORTAM QUANDO RECEBEM TENSÃO ELÉTRICA PARA O FUNCIONAMENTO DESTES CIRCUITOS. EXISTEM DIVERSOS TIPOS DE CIRCUITOS E TECNOLOGIAS (COMPONENTES DISCRETOS OU MICROCONTROLADOS) QUE PODEM SER EMPREGADAS PARA FORMAR UM SISTEMA DE AUTOMAÇÃO, SEJA EM AUTOMAÇÃO RESIDENCIAL, COMERCIAL OU MESMO INDUSTRIAL. AO FINAL DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO IREI REPRESENTAR DE FORMA DIDÁTICA UMA MAQUETE SIMULANDO UM SISTEMA RESIDENCIAL.. CONTROLANDO DIVERSOS TIPOS DE CARGAS: EX.. LÂMPADAS, MOTORES, SISTEMAS DE CLIMATIZAÇÃO, COMANDOS PARA PISCINA, ELEVADOR, ENTRE OUTROS. UTILIZANDO DIVERSOS TIPOS DE COMUNICAÇÃO SEJA, VIA CABO, WIRELESS, SMARTPHONE, BLUETOOTH, ASSISTENTE VIRTUAL, ENTRE OUTROS.


 

segunda-feira, 15 de novembro de 2021

ANÁLISE DO CIRCUITO DA CENTRAL DO PORTÃO ELETRÔNICO

https://youtu.be/24wsWBjaaQo

 
https://youtu.be/X8mzh92Lpxw


https://youtu.be/emR_G_wFiBI



Nesta análise do circuito da central do portão eletrônico, verificamos como funciona cada um dos blocos que compõe toda a central. A analise é feita sobre o funcionamento de cada um dos componente que irão formar as configurações necessárias para o acionamento do motor, girando o motor em sentido horário e também no sentido anti-horário, bem como o controle de sua velocidade.




No esquema elétrico dividimos o circuito em vários blocos para facilitar a analise do circuito.

1º BLOCO consiste da entrada de sinal externo que aciona a central. É neste bloco que todo sinal externo, seja, vindo de uma botoeira ou de um sistema remoto (controle sem fio), que  recebe o pulso necessário para o sinal que é enviado para o estagio de sequenciamento que controla as funções do motor seja para ligar ou desligar.
também é feito um tratamento neste estágio para o sinal de entrado que é acionado por sistemas de laminas metálicas que produzem um ruido (BOUNCE). Este ruido pode provocar o acionamento errático do circuito. 
Neste tratamento utilizamos um delay que é formado pelo circuito mono-estável (555), que determina um tempo entre os acionamentos do sinal externo que é enviado para o circuito sequenciador.


2º BLOCO consiste no sensor fim de curso, cuja finalidade sera fazer a parada do motor enviando um sinal para o sequenciador que interpretará este comando e faz o motor parar.
Neste circuito também é feita o tratamento do efeito BOUNCE, com um delay, pois utiliza sensores do tipo laminas que podem causar ruídos.
A diferença entre este circuito e o circuito do 1º BLOCO, esta no arranjo circuital, pois os dois blocos consta da configuração mono-estável. Porem neste bloco quando o sensor fim de curso é acionado sera enviado apenas uma vez o sinal de comando para o sequenciador, e assim libera o caminho para que o 1º BLOCO possa enviar novos sinais para o sequenciador.


3º BLOCO consiste no sequenciador, este é responsável por enviar o sinal de controle para a PONTE H, que gerencia qual sera o sentido de rotação do motor, este bloco também responsável pela parada do motor, quando o sinal de comando é recebido em sua entrada de clock.


4º BLOCO consiste em demonstrar o funcionamento do arranjo astável, que fica sempre em uma frequência fixa. porém este circuito não consta do projeto da central do portão eletrônico.


5º BLOCO consiste no gerador PWM, que é o responsável por controlar a velocidade do motor, através do ajuste que é feito no potenciômetro, controla então a largura de pulso que é enviado através dos drivers de controle que é entregue a PONTE H.

Observe que todos os blocos foi acrescentado leds nas saídas, serve de indicação visual para verificar o funcionamento de cada um dos blocos, e saber qual é a função que cada saída desempenha no circuito.




No circuito de controle PONTE H, temos os seguintes estagios:


DRIVER PWM, responsável em entregar o sinal que é gerado pelo (555) gerador PWM e enviar para os transistores driver da ponte H


DRIVER PONTE H, estes transistores ao receberem o sinal PWM ,irão saturar e acionar o circuito da PONTE H , dependendo de qual foi o comando vindo do sequenciador para que o motor possa ser acionado pela PONTE H e assim de terminar se o giro será no sentido horário ou anti-horário, com o controle de velocidade. 


PONTE H, esta controla diretamente o MOTOR, sendo que os transistores que formam a PONTE H, são do tipo de média ou alta potência dependendo da corrente do MOTOR. Quando a PONTE H recebe o sinal proveniente do driver irá fazer o motor girar para um sentido ou para o outro conforme cada acionamento do circuito sequenciador.


O circuito de CONTROLE DO MOTOR AC COM SINAL DC, serve apenas para controlar motores que são ligados diretamente na rede elétrica 127/220V. O acionamento deste circuito é proveniente de um sinal DC, pois o opto acoplador faz a função de isolar a tensão DC da tensão AC.


ESQUEMA ELÉTRICO COMPLETO DA PLACA CENTRAL PORTÃO ELETRÔNICO







terça-feira, 12 de outubro de 2021



Este projeto é uma central para o controle do portão eletrônico. O circuito é formado de forma didática para explicar o conceito do funcionamento de centrais comerciais para o acionamento de motores para o controle de portões elétricos. O circuito completo será composto da seguinte forma: * DIAGRAMA EM BLOCOS (parte 1 ) * ESQUEMA ELÉTRICO (parte 2 ) * TESTE CIRCUITO NA PRÁTICA (PARTE ELETRÔNICA) (parte 3 ) * ACIONAMENTO EM CONJUNTO DO CIRCUITO ELETRÔNICO COM A PARTE MECÂNICA DO PORTÃO. (parte 4) Os componentes utilizados são bem discretos, dispensando o uso de microcontroladores e programação. Sendo bem fácil a didática do funcionamento da central.








Segue os videos no Canal DIVERSÃO & TECNOLOGIA no YouTube..


https://youtu.be/ewvj3h2-9hk

https://youtu.be/malfcXstCt4


https://youtu.be/EH4srWFXhaM

https://youtu.be/F9fE1txx9GE

A FINALIDADE DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO É DEMONSTRAR QUE A UNIÃO DE COMPONENTES ELETRÔNICOS (PASSIVOS OU ATIVOS), É POSSÍVEL CONTROLAR DIVERSOS TIPOS DE CARGAS. BEM COMO, DE FORMA DIDÁTICA EXPLICAR O FUNCIONAMENTO DOS CIRCUITOS COMO SE COMPORTAM QUANDO RECEBEM TENSÃO ELÉTRICA PARA O FUNCIONAMENTO DESTES CIRCUITOS. EXISTEM DIVERSOS TIPOS DE CIRCUITOS E TECNOLOGIAS (COMPONENTES DISCRETOS OU MICROCONTROLADOS) QUE PODEM SER EMPREGADAS PARA FORMAR UM SISTEMA DE AUTOMAÇÃO, SEJA EM AUTOMAÇÃO RESIDENCIAL, COMERCIAL OU MESMO INDUSTRIAL. AO FINAL DA SÉRIE SOBRE SISTEMAS DE AUTOMAÇÃO IREI REPRESENTAR DE FORMA DIDÁTICA UMA MAQUETE SIMULANDO UM SISTEMA RESIDENCIAL.. CONTROLANDO DIVERSOS TIPOS DE CARGAS: EX.. LÂMPADAS, MOTORES, SISTEMAS DE CLIMATIZAÇÃO, COMANDOS PARA PISCINA, ELEVADOR, ENTRE OUTROS. UTILIZANDO DIVERSOS TIPOS DE COMUNICAÇÃO SEJA, VIA CABO, WIRELESS, SMARTPHONE, BLUETOOTH, ASSISTENTE VIRTUAL, ENTRE OUTROS.
 



E-mail comercial

proeletronicos@gmail.com



visite canal no YouTube

DIVERSÃO & TECNOLOGIA


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