Projeto ESP32 Dimmer – Automação para Controle de Luz

O ESP32 Dimmer é um projeto de Automação Residencial desenvolvido para auxiliar no controle de lâmpadas uma vez que possibilita o ajuste preciso de luminosidade da mesma. O Módulo Dimmer é bastante aplicado em diversos projetos de automação como chocadeiras elétricas e demais locais com controle de temperatura via lâmpadas incandescentes.

Através do ESP32 Dimmer vamos poder controlar dinamicamente o controle de luminosidade de lâmpadas e proporcionar mudanças suaves em ambientes como salas de televisão, onde o controle de luz auxilia na melhor experiência de visualização de filmes, séries e conteúdos afins.

Projeto ESP32 Dimmer – Automação para Controle de Luz

Projeto ESP32 Dimmer – Automação para Controle de Luz

No presente projeto de automação é possível realizar o controle de luminosidade através de dois push bottons, normalmente utilizados em projetos de eletrônica e que terão a função de incrementar ou decrementar o valor correspondente a luminosidade da lâmpada.

Alguns fatores para o desenvolvimento deste projeto são importantes de se destacas, o primeiro deles e o mais importante é o cuidado que devemos ter uma vez que estamos lidando com uma rede elétrica de alta tensão e o outro é a escolha da lâmpada que iremos utilizar para o projeto.

 

Módulo Dimmer MC-8A

Criado com o intuito de proporcionar aos projetos a possibilidade de controlar a quantia de energia enviada para as lâmpadas e consequentemente controlando a sua luminosidade, o Módulo Dimmer MC-8A é amplamente utilizado em projetos de automação residencial.

Com um funcionamento baseado no Triac BT137, o Módulo Dimmer conta também com dois Cis optoacopladores, o MOC3021 e o 4N25, responsáveis por isolar as energias elétricas elevadas que circulam em seu sistema, danifique componentes e cause acidentes ao projetista.

Circuitos Integrados que compõem o Módulo Dimmer

Circuitos Integrados que compõem o Módulo Dimmer

Como sabemos, nenhum microcontrolador é capaz de controlar diretamente energias de corrente alternada (AC), para controlarmos o liga e desliga de dispositivos como lâmpadas, normalmente utilizamos módulos relés, por exemplo, que executam este papel de forma satisfatória.

Porém em alguns casos, queremos mais do que simplesmente controlar o liga e desliga de uma lâmpada, queremos controlar a luminosidade específica desta, deixar a luz um pouco mais fraca ou um pouco mais forte, nestes casos é necessária a inclusão de um Módulo Dimmer.

Antes de continuar apenas um aviso: O presente projeto utiliza-se de redes elétricas de alta tensão, o que causa risco de choques elétricos e danos físicos e materiais, só execute este projeto caso você tenha experiência e certeza do que está fazendo.

Perigo – Risco de Choque Elétrico

Perigo – Risco de Choque Elétrico

Vários dos componentes do módulo estão conectados às estradas de alta tensão do Módulo, então encostar em algum destes é o mesmo que encostar diretamente na tomada, tome cuidado com as superfícies e materiais condutores, segurança em primeiro lugar!

Para melhorar a sua utilização nos mais diversificados projetos, o Módulo dimmer é comercializado com todos os seus bornes nomeados através da placa, porém alguns pontos específicos podemos trabalhar com relação a cada um destes.

Locais de conexão do Módulo Dimmer

Locais de conexão do Módulo Dimmer

Quanto aos bornes de conexão que vão para o ESP32:

  • VCC e GND – Pinos de alimentação que vão conectados diretamente junto ao módulo ESP32, mesmo que suas especificações indiquem 5V de alimentação para utilização junto ao Arduino, esta pode ser feita através dos mesmos 3,3V do microcontrolador.
  • DIM – Este pino é responsável por realizar o controle da lâmpada através dos pulsos fornecidos pelo ESP, quando em HIGH permite a passagem de energia para a lâmpada.
  • ZC – O pino ZC é o que chamamos de detector de Zero Crossing, responsável por verificar os momentos em que a senóide passa pelo zero variando seus valores entre positivo e negativo.

Quanto aos bornes de conexão para energia AC

  • AC In – Com a abreviação In vinda de Input, estes dois bornes em especial são responsáveis por receber a energia AC que será controlada pelo Módulo Dimmer.
  • AC Load – Estes são os bornes de saída controlada, responsável por realizar a alimentação da lâmpada utilizando-se como base os parâmetros estabelecidos pelo microcontrolador.

O Módulo Dimmer não é bivolt e esta informação é bastante importante, o modelo específico de acordo com a sua energia deve ser selecionado na hora da compra, o módulo precisa estar de acordo com a tensão da sua instalação elétrica residencial que será de 110 ou 220V.

Como saber a tensão do meu Módulo Dimmer MC-8A?

O Módulo Dimmer MC-8A comercializado pela Usinainfo possui uma diferença bastante simples de se verificar entre os seus modelos de 110 e 220V, o resistor grande instalado em pé junto ao módulo possui uma resistência de 15K Ohms para tensões de 110V e uma resistência de 33K Ohms para tensões de 220V.

O Módulo Dimmer pode ser utilizado com qualquer lâmpada?

Infelizmente não, o Módulo Dimmer só pode ser utilizado com lâmpadas incandescentes ou com lâmpadas de LED Dimerizáveis (leading edge), um novo modelo de lâmpada que vem conquistando o mercado. Não será possível realizar o controle de lâmpadas de LED comuns e fluorescentes, por exemplo, podendo causar danos às mesmas.

Posso realizar o controle de Motores através do Módulo Dimmer?

O Módulo Dimmer não é o produto mais indicado para o controle de motores uma vez que não proporcionará um controle muito preciso, este modelo foi produzido para utilização em cargas resistivas e não indutivas que é o caso de motores.

 

Conceitos Importantes de Elétrica

Alguns conceitos básicos de elétrica devem estar bem claros para compreendermos o projeto e o sistema de funcionamento do Módulo Dimmer, dentre eles temos o sistema de funcionamento da rede AC.

A instalação elétrica de corrente alternada (AC) das residências que seguem o padrão brasileiro possuem uma frequência fixa de 60Hz na qual o valor da tensão fica 60 vezes positivo e 60 vezes negativo a cada segundo.

Ao alternar entre os valores positivos e negativos, a tensão sempre passa por um ponto comum de 0V o qual é utilizado como parâmetro para o controle da lâmpada e é sinalizado com um pulso para o ESP através do pino Zero Crossing que mencionamos anteriormente, um exemplo destas variações podemos ver abaixo:

Variação de Valores Positivos e Negativos Passando pelo 0V

Variação de Valores Positivos e Negativos Passando pelo 0V

 

Mas quando a Lâmpada passa por 0V ela não deveria se apagar?

Na verdade, a lâmpada não só deveria como também se apaga sempre que chega aos 0V, mas assim que passa por este ponto volta a ascender, como este liga e desliga ocorre 120 vezes por segundo, a cada mudança de sinal, a nossa visão não percebe piscar, parece que está sempre aceso.

Com isto, podemos concluir que teoricamente, é o tempo de permanência em 0V que irá definir a luminosidade de nossa lâmpada, quanto mais longa for a duração da senóide em 0, mais tempo a lâmpada ficara apagada a cada ciclo e assim, menor será a luminosidade que iremos observar.

Cada ciclo da senóide dura em média 8,33 milésimos de segundo (0,0083 segundos) então se ficar apagada o suficiente para iluminar o seu mínimo, este valor ainda será muito pequeno, imagine dividir o segundo em mil partes e a cada 8 partes desta unidade a luz está piscando, isto é tão rápido que se torna imperceptível ao olho humano.

Para entendermos melhor esta teoria vamos observar a imagem abaixo:

Teoria de controle do tempo em 0 do Projeto ESP32 Dimmer

Teoria de controle do tempo  em 0 do Projeto ESP32 Dimmer – Leading edge

A teoria de controle do tempo em 0V do Dimmer é bastante simples, para compreendermos melhor vamos analisar as cristas e o vale da imagem acima, as cristas são os valores positivos da nossa senóide e o vale o nosso valor negativo.

Na primeira crista observamos um valor x1 atribuído ao tempo em que a senóide permaneceu em 0V e quanto menor for este tempo maior será o brilho da lâmpada, no vale já podemos observar que o tempo em 0 foi bem superior através da variável x2 e consequentemente nestes casos menor será o brilho da lâmpada.

Já ao analisarmos a segunda crista vemos que o tempo em 0V expresso por x0 foi praticamente nulo, o valor de 0 correspondeu apenas ao instante em que a senóide mudou o seu valor de negativo para positivo, esta seria a representação de uma lâmpada em seu brilho máximo.

 

Produtos Utilizados no Projeto ESP32 Dimmer

1 NodeMCU ESP32 Iot com WiFi e Bluetooth – 38 Pinos;

1 Módulo Dimmer para Arduino / Pic MC-8A com sinal Zero Cross;

1 Protoboard 400 Pontos para Montagem de Projetos;

2 Push Button / Chave táctil 6x6x5 para Projetos;

2 Resistor 10K 1/4W;

10 Jumper Premium para Protoboard Macho-Macho 20 cm;

1 Metro de Fio Cristal Paralelo 2×18 0,75mm;

1 Soquete para Lâmpada (Pode ser um abajur – Mais seguro);

1 Lâmpada Incandescente;

1 Flecha para Tomada.

 

Esquema de Ligação do Projeto ESP32 Dimmer

O esquema de ligação do Projeto ESP32 Dimmer é extremamente fácil uma vez que conta com poucos fios de controle, o que já foi mencionado acima e que vale ter cuidado no desenvolvimento desta ligação são os equipamentos de alta tensão, tenha certeza de estarem todos bem fixos junto ao módulo e isolados de qualquer material ou superfície condutiva.

Esquema de Ligação do Projeto ESP32 Dimmer

Esquema de Ligação do Projeto ESP32 Dimmer

A ligação dos elementos elétricos pode variar de acordo com a disponibilidade de cada um, o recomendado para otimizar a autonomia e mobilidade do projeto é a utilização de uma tomada, porém esta parte do diagrama pode ser conectada diretamente aos fios da rede elétrica.

A utilização da lâmpada por sua vez, pode ser feita através de um soquete comum, através de um abajur ou até mesmo extensão de luz especiais que possuem uma lâmpada instalada em sua extremidade, não é recomendada a instalação da lâmpada sem nenhum dispositivo de fixação e meio de isolamento.

 

Código de Funcionamento do Projeto ESP32 Dimmer

O código de funcionamento do Projeto ESP32 Dimmer é um pouco mais complexo do que o que utilizamos junto ao Arduino uma vez que seu sistema de interrupção deve ser feito de forma manual e seus comandos mostram-se parcialmente mais extensos do que os que vimos anteriormente.

O projeto não necessita da inclusão de bibliotecas, a única biblioteca inclusa já é instalada junto ao Software Arduino quando fazemos download do mesmo, o código está totalmente comentado, então quaisquer dúvidas quanto ao seu funcionamento podem ser tiradas junto ao mesmo.

Após carregar o código junto ao ESP32 seguindo os parâmetros de gravação que precedem este dispositivo, temos um projeto capaz de controlar a luminosidade de uma lâmpada através de dois push buttons, ao pressionarmos um destes dispositivos mecânicos iremos aumentar o brilho da lâmpada e no outro iremos diminuir o brilho da mesma.

Um projeto que parece parcialmente simples, porém mostrou-se bastante complexo uma vez que envolveu um conhecimento aprofundado no sistema de interrupção do Microcontrolador ESP32 e um conhecimento considerável em eletrônica e elétrica.

 

Conclusão Projeto ESP32 Dimmer

O Projeto ESP32 Dimmer para controle de intensidade de luz é um projeto desenvolvido com o intuito de explorar ainda mais as possibilidades de uso do Microcontrolador ESP32, um módulo com conexão Wi-Fi, bluetooth e demais ferramentas bastante úteis para a implementação de novas tecnologias.

Utilizando este artigo como base, podemos incrementar o nosso sistema de controle de luz para acesso e controle remoto via wi-fi, podemos incluir ferramentas de controle bluetooth para ambientar sua sala durante um filme ou qualquer outra atividade e isto tudo apenas com o que temos neste projeto.

Se adicionar mais dispositivos podemos fazer muito mais, imagine desenvolver uma chocadeira elétrica que monitore temperatura, umidade e demais informações e te mantenha informado 24 horas sobre a incubação de sua produção? Diversas possibilidades podem ser exploradas com este exclusivo produto.

Se você gostou deste projeto, acha que existem melhorias que passam ser feitas ou até mesmo se ele foi útil para você, não se esqueça de comentar abaixo e deixar a sua opinião, ela é muito importante para nós. Até a próxima!

Categorias
ESP32

Mecânico de Manutenção com Experiência em Sistemas Embarcados, Automação e Desenvolvimento de Projetos; Graduado nos Cursos de Matemática - URI e Física - UFFS.
16 Número de Comentários
  • Daniel Quadros Bica
    25 setembro 2020 at 16:02
    Deixe seu Comentário

    Boa tarde Matheus parabéns pelo projeto. Teria alguma indicação para que eu posso utilizar em uma resistência até 40A.
    Obrigado por sua atenção.

    • Matheus Gebert Straub
      29 setembro 2020 at 15:22
      Deixe seu Comentário

      Boa Tarde Daniel! Infelizmente não trabalhei com nenhum produto com potências altas assim para poder indicar.

      • DENis
        1 agosto 2022 at 21:40
        Deixe seu Comentário

        pessoal gostaria de fazer o comando por interface web, alguem pode ajudar

  • Tarcisio Rabaiolli
    28 setembro 2020 at 11:57
    Deixe seu Comentário

    Bom projeto, porem tem como incorporar o controle de brilho por voz, atraves da interface de I.A. da Alexa Amazon? (echo dot)

  • zeh soobrinho
    18 janeiro 2021 at 20:23
    Deixe seu Comentário

    show. não eh recomendado para motores a induçao?
    qual produto projeto publicado se aplica?
    comprei o módulo com este propósito.
    obrigado.

    • Matheus Gebert Straub
      4 março 2021 at 16:14
      Deixe seu Comentário

      Olá Zeh! Infelizmente do site da Usinainfo ainda não tem nenhum produto específico para este tipo de dispositivo. Como citado no artigo, é possível utilizar, porém não tem como garantir precisão e exatidão no controle assim como é possível em equipamentos resistivos.

  • Arthur mota
    12 maio 2021 at 11:02
    Deixe seu Comentário

    Funciona para Lâmpadas de LED Dimerizáveis, ou apenas Incandescente?

    • Matheus Gebert Straub
      12 maio 2021 at 11:45
      Deixe seu Comentário

      Olá Arthur! Lâmpadas de LED Dimmerizáveis são compatíveis, só não são compatíveis as lâmpadas de LED tradicionais.

  • Leonardo
    3 junho 2021 at 12:44
    Deixe seu Comentário

    Olá Matheus, utilizando esse mesmo kit e código que você disponibilizou consegui dimerizar com eficiência uma lâmpada incandescente, porém utilizando uma lâmpada de led dimerizavel não consegui controlar, ela até regula a luminosidade mas fica oscilando desligando e ligando. Sabe me dizer se nos seus testes isso acontece?

    • Matheus Gebert Straub
      17 junho 2021 at 15:31
      Deixe seu Comentário

      Olá Leonardo! Nos meus testes não utilizei nenhum modelo de lâmpada dimmerizável, apenas lâmpadas incandescentes, mas existe hoje, dois modelos de lâmpada LED dimmerizável, a trailing edge (borda de fuga) e a leading edge (borda de entrada), ao que tudo indica, nosso módulo não é compatível com o modelo trailing edge, então acreditamos que este seja o problema que está enfrentando aí.

  • Vitor
    4 julho 2021 at 09:49
    Deixe seu Comentário

    Olá, parabéns pelo projeto.

    Estou criando um projeto para controle de temperatura de uma resistência de 2000w. Este módulo suporta?

    • Matheus Gebert Straub
      5 julho 2021 at 11:35
      Deixe seu Comentário

      Olá Vitor! As especificações de potência deste produto seguem a seguinte relação: Potência máxima de 880W para 127V e 1760W para 220V. No site da Usinainfo existem outros Dimmers com potências maiores, porém seus ajustes são manuais, não digitais.

  • Anilson
    5 julho 2021 at 21:40
    Deixe seu Comentário

    Eu uso bloco com triac de 60 amperes.

  • Vitor
    26 julho 2021 at 22:52
    Deixe seu Comentário

    Matheus,

    Seu programa funcionou perfeitamente com este módulo. Consegui adaptar em meu projeto que faz a leitura de temperatura e controla o aquecimento de um pequeno ambiente através de uma lâmpada incandescente. O problema é que qualquer função a mais que coloco no loop (exemplo: Exibição da temperatura atual em um display) o dimmer funciona alguns segundos e reinicia o Esp32. Já pesquisei bastante mas não consegui encontrar nada que consiga deixar o projeto estável utilizando o controle de um dimmer (via interrupção para o controle de passagem por zero) e outras funções de forma simultânea. Você tem algum artigo ou projeto que possa me ajudar?

    • Matheus Gebert Straub
      28 julho 2021 at 08:53
      Deixe seu Comentário

      Olá Vitor! Por estar reiniciando, é possível que o seu sistema esteja sobrecarregando o ESP, verifique os componentes e até sugiro remover o display e testar a impressão das informações diretamente no Monitor Serial, para ver se soluciona.

  • hector arosemena herrera
    17 novembro 2022 at 12:21
    Deixe seu Comentário

    Boa tarde queria saber porque o meu codigo na linha 22 e 23 hw_timer_t * timerToPinHigh;
    hw_timer_t * timerToPinLow; dá erro de complilaçao. o que estaria errado? Grato Hector

  • Deixe seu Comentário

    *

    *

    Sobre nós

    Hoje a Usinainfo é um dos maiores ecommerces de Ferramentas, Peças para Eletrônica, Componentes Eletrônicos, Sensores e Arduino do Brasil, contando com uma grande diversidade de produtos na linha de eletrônica.

    Sugestões

    Artigos Relacionados