Dimmer+
Dimerização de 3 lâmpadas
Neste projeto iremos utilizar o Arduino e os Nanoshields para o controle luminoso de 3 lâmpadas. Um dimmer é um circuito que serve para controlar a intensidade de uma lâmpada ou outros tipos de carga em corrente alternada.
Este projeto é aplicável a todas as lâmpadas incandescentes e a lâmpadas de LED e fluorescentes "dimerizáveis".
O projeto utiliza nossa biblioteca Dimmer, que pode controlar até 10 lâmpadas simultaneamente e que, ao contrário de outras bibliotecas, utiliza o Timer interno do Arduino e não rotinas de atraso (ex.: delay()
), permitindo que o Arduino realize outras instruções em paralelo.
!Materiais utilizados
Veja abaixo os componentes necessários para o projeto:
- 1x Arduino UNO
- 1x Base Board Uno
- 3x Nanoshield Triac
- 1x Nanoshield Zero Cross
- 1x Fonte DC para Arduino (7,5V, 9V ou 12V)
- 3x Lâmpadas incandescentes, fluorescentes ou de LED do tipo de dimerizável
- 3x Bocal para lâmpada
- Fios para conexão de rede elétrica
A imagem abaixo mostra a montagem da placa com os componentes acima:
Também é possível substituir o Arduino Uno e a Base Board Uno por uma das seguintes opções:
- Base Boarduino
- Alevino + Nanoshield USB + Base Board L
- Arduino Nano + Base Board L
- Arduino Mega + Base Board Uno
Veja estas opções na imagem abaixo:
!Montagem
- Montagem dos cabos: Monte 3 cabos de extensão para as lâmpadas conforme as instruções contidas no projeto Relamp, cortando os fios necessários e crimpando os terminais nas extremidades. Este cabo terá uma tomada numa extremidade e um bocal de lâmpada da outra. Conforme figura abaixo:
- Conexão com os triacs: Conecte os terminais do cabo de extensão nos bornes verdes do triac. Faça isto para os 3 triacs. 3.Conexão do zero cross: Monte um cabo com uma tomada na extremidade e 2 fios (terminais) na saída, conforme figura abaixo:
E conecte os terminais no borne verde do nanoshield zero cross. 4. Conexão dos componentes: Por último conecte os nanoshields e a fonte de alimentação no Arduino.
Veja abaixo o diagrama de conexão final do projeto.
!Funcionamento do Dimmer
O Nanoshield Triac é utilizado para acionar dispositivos de rede elétrica de 127V ou 220V e está disponível na versão de 2,5A e 5A. Como as lâmpadas utilizadas possuem baixas correntes (1 lâmpada de 100W consome 0,7A na rede 110V) podemos utilizar o Nanoshield Triac de 2,5A.
Cada triac utilizado será acionado por um pino digital do Arduino. Sendo que para ativar a lâmpada coloca-se um nível lógico alto, 5V, em sua entrada. Para desativá-la, coloca-se um nível lógico baixo, 0V, em sua entrada e espera até que a rede elétrica AC atinja o nível de 0V.
A rede é composta por uma senóide com frequência de 60Hz, portanto um período (T=1/f) de 16,66ms.
Utilizando o Nanoshield Zero Cross podemos detectar os momentos em que a rede se encontra em 0V. Isso acontece 2 vezes por ciclo da senóide, portanto, a cada 8,33ms.
Para nossa conveniência, ligamos o zero cross no pino 2 do Arduino e o atribuímos a uma interrupção. Deste modo uma função,ftriac()
, é chamada toda vez que o nível de zero volts for detectado.
Se no exato momento que que o zero da rede for detectado acionarmos o triac, ligaríamos o dispositivo 100% do tempo até que outro zero seja detectado. Portanto a quantidade de luz que queremos na lâmpada é inversamente proporcional ao tempo que devemos esperar para acionar o triac.
Veja os sinais do Zero cross e do Triac abaixo:
A biblioteca Dimmer
aqui utilizada se encarrega de calcular, com grande precisão, o tempo necessário de acionamento e aciona as lâmpadas de acordo com a potência desejada.
!Biblioteca e Código para Arduino
Para desenvolver o software devemos seguir os seguintes passos:
-
Baixar a biblioteca
Dimmer
: basta clicar no link do Github disponível no final da página e fazer o download por meio da opção Download ZIP. -
Instalar a bilbioteca na Arduino IDE, clicando no menu Sketch > Include Library > Add .ZIP Library (em português Sketch > Incluir Biblioteca > Adicionar biblioteca .ZIP) e selecionando o arquivo ZIP que foi baixado do Github no passo anterior.
-
Abrir o exemplo
WaveLamps
clicando no menu File > Examples > Dimmer > WaveLamps (em português Arquivo > Exemplos > Dimmer > WaveLamps) -
Carregar o programa no Arduino
!Links
- Dimmer.h - Biblioteca Dimmer no GitHub.