Fórum

DIMMER AC COM ACION...
 
Notifications
Clear all

DIMMER AC COM ACIONAMENTO ATRAVÉS DE UM ÚNICO BOTÃO – C/ PIC 12F675 (REF233)

8 Posts
2 Users
0 Likes
1,473 Leituras
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

Nobre Lários,

Montei este de forma experimental e usei transformador 110 para 24 volts pois eu queria ver se conseguia o mesmo efeito comandando uma lâmpada 24V AC que eu tenho aqui. Ficou assim: Transformador + ponte de diodos + capacitor filtro + 7805 para o PIC. O resistor ligado num pólo alternado dos 24 Vc do transformador (1 M no seu esquema) continuou é claro, só que ao ver que não funcionava reduzi ele para 100 K, que também não deu certo. O PIC e o TRIAC são novos. Ao ligar, a lâmpada começa acesa e pressionar o botão parece não surtir nenhum efeito. Se eu desconecto o gate do triac (Um BTA-12) a lâmpada apaga mostrando que algum sinal o PIC está enviando. Achei sim que poderia dar algo errado, mas ao menos ligar e desligar com pulso rápido no botão eu esperava ver funcionando. Mas nem isso. Tem alguma dica.

Grato. Abçs.


   
Quote
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

Lários, quando ler, descarte este post pois eu consegui atingir meu objetivo fazendo um dimmer com 555. Com certeza meu PIC deve estar com algum problema. Mas enfim, vida que segue.

Abçs

 

 


   
ReplyQuote
(@clarios)
Reputable Member Admin
Joined: 13 anos ago
Posts: 362
 

Olá Sergio!

Acredito que não se trata de problema do pic mas sim que você esqueceu do detalhe da polarização correta.

Digo isto porque o terminal A1 do triac está eletricamente ligado ao vcc de 5 volts do pic. Isto é feito para o triac disparar quando o pic ligar o seu pino 5 ao gnd. Nesta ocasião circula um corrente do vcc passando pelo pino A1 indo ao gate, seguindo pelo resistor de 150 ohms ao pino 5 que está ao gnd. Ocorre o disparo então. Isto é feito para aproveitar o melhor quadrante do triac ( que usa menos corrente para disparar).

Caso queira disparar o triac com sinal positivo, deverá mudar as linhas de código do programa C e recompilar.

Veja a porção de código:

 

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

//------------------------------------------------------------------------------
// ROTINA PRINCIPAL
// INICIALIZAÇÃO DE PORTAS E VARIÁVEIS
//------------------------------------------------------------------------------

void main() {

setup_adc_ports(NO_ANALOGS|VSS_VDD);//libera portas para digital
setup_adc(ADC_OFF);//desliga conversor ad
setup_counters(RTCC_INTERNAL,RTCC_DIV_64);//timer 0
setup_timer_1(T1_DISABLED);//desliga timer 1
setup_comparator(NC_NC_NC_NC);//desliga comparadores
setup_vref(FALSE);//desliga vref

//gpio= 0x00;//port em '0x00' <------comente aqui

gpio= 0b000100;<------coloque esta linha

trisio=0b111111;//todas os ports como entrada
flagt=0;//reseta flags
flagt1=0;
cnt1=0;
gpu=0;//liga geral de todos pullup
wpu=0;//desliga pull-up dos outros pinos
wpu5=1;//e ligando apenas pullup do pino 2
limite=255;//valor provisório inicial
// tempo=limite;// inicia com lampada desligada
tempo= read_eeprom(0);//recupera situação antes do reset
delay_ms(2000);//permite a carga do capacitor da fonte

//------------------------------------------------------------------------------
// LAÇO PRINCIPAL DE REPETIÇÃO
//------------------------------------------------------------------------------

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

Desta forma, o disparo será feito com pulso positivo, uma vez que na seção de disparo do código apenas altera o pino de função de entrada para função de saída, e estando ele setado no registrador GPIO a saída será um pulso positivo.

 

Sucesso nas suas montagens!

 

Claudio Lários


   
ReplyQuote
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

Ficou 'perfeito' Lários. Mas minha lâmpada não apaga por completo, digo na variação mínima o filamento fica bem aceso. Porém, a lógica agora funciona: pulso rápido no botão faz ligar e desligar (quase desligar) e mantendo o botão ocorre a graduação.(tensão no PIC 5,2 volts, BTA12, R de 390 no pino 5. R de 1 Mega para obter o zero da rede).

À propósito, o que teria que comentar/modificar no código para que eu usasse a mesma lógica só que comandando um TIP41C no lugar do triac. Ou seja, funcionar tudo em DC.

Abçs.

 


   
ReplyQuote
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

Se forem mudanças muito abrangentes no código, deixa pra lá.


   
ReplyQuote
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

Liguei um MOC3022 entre o PIC e o BTA12 e agora desliga totalmente a lâmpada, perfeito. Um comportamento que achei meio estranho está ocorrendo assim: Aperto botão rápido = a lâmpada liga no máximo, aperto o botão e mantenho = a lâmpada reduz o brilho. Deixo assim. Digamos que coloquei na luminosidade confortável para o meu quarto. Agora quero desligar. Aperto o botão rápido = a lâmpada volta ao seu brilho máximo. Aí eu tenho que dar mais 1 toque no botão para daí sim desligar. É coisa boba, mas pode incomodar na prática. Vamos supor que reduzi a luminosidade pois estou com os olhos irritados, e após algum período decido dormir e pretendo apagar a lâmpada (é só uma suposição), terei que vê-la acesa no brilho máximo (pode incomodar) para depois sim num segundo toque no botão, apagá-la. Resumindo: Depois que a lâmpada acendeu, se o pwm estiver em qualquer nível entre 0 e 255, um toque breve no botão fará com ela vá primeiro para brilho máximo, e um segundo toque aí sim a desliga. Se ao acendermos já colocarmos a lâmpada no máximo (255), aí sim, o primeiro toque no botão apaga. Sei que já entendeu, mas assim: Se eu pôr a lâmpada a 20% do seu brilho máximo pois são 3 horas da manhã e eu só preciso ir ao banheiro (rs, acontece), ao pretender apagar a lâmpada na volta, terei que vê-la primeiro no brilho máximo.

 

E fazer funcionar com DC (TIP 41C) seria só deletar a condição de ler o zero da rede ? 

 


   
ReplyQuote
(@sergiotronic)
Trusted Member
Joined: 8 anos ago
Posts: 45
Topic starter  

E para 'derrubar' todo este meu comentário anterior basta pôr um simples interruptor de meio de fio no abajur e desligá-lo quando quiser. Ao ligar, a luminosidade não será a máxima mas sim a mesma de antes memorizada na eeprom.

Bom demais. 

 


   
ReplyQuote
(@clarios)
Reputable Member Admin
Joined: 13 anos ago
Posts: 362
 

Olá Sergio!

O programa foi ajustado para funcionar com o esquema original. Naturalmente, mudando a tensão de trabalho e a forma de pulsar precisam talvez sofrer alguns ajustes no programa para funcionar 100%.

Quanto a questão do modo de funcionamento a 1 botão, acredito que não tenha jeito. O programa inverte a operação de incremento/decremento cada vez que se solta o botão. Uma opção é usar o projetinho com 2 botões no artigo:

'Faça um dimmer ac para controle de lâmpadas c/ 2 botões de acionamento - c/ pic 12f675 (ref174)

 

Quanto ao usar com transistor tip41c, este programa não é apropriado.

Neste caso, poderá tirar uma ideia para seu projeto deste artigo:

Controlando cargas em corrente contínua (cc) com potenciômetro ( modo pwm - 0 a 100% via comparador interno) - c/ pic 12f675 (ref165)

Outra sugestão é este outro artigo:

Como gerar tensões de 0 a 5 volts usando os módulos internos do pic

Se usar o esquema deste último, poderá ligar a base do tip41 na saída PWM mostrada no circuito (junto ao pino 9). Importante que você retire o capacitor C1 de 100 uf. O emissor do tip41 vai para o gnd e o coletor você colocar a carga ao vcc (pode ser outra tensão como 12, 24 , etc, dependendo do que você irá controlar). Este esquema já tem o botão up e down para  controlar a potência na saída. Nota: o resistor de 1k pode ser substituído por um de 330 para obter um corrente maior entre coletor e emissor do tip41. Ou você poderá usar um transistor Darlington como o tip122.

Sucesso em suas montagens!

Att.

Claudio Lários

 

 

 


   
ReplyQuote
Back To Top