Ir ao conteúdo
  • Cadastre-se

Dimmer para lâmpada economica/incandescente com PIC 16F877A e etc...


carlos.alfredo

Posts recomendados

Pessoal, estou precisando de ajuda para fazer um código em c.

Preciso fazer um dimmer para uma lâmpada economica e/ou incandescente.

Estou utilizando: PIC 16F877A, após um BC548, após um MOC 3063 e na saída um TRIAC BT137.

Entrada é um pulsador na entrada do portd.3 (e4)

Saída até o Triac está no portc.2 (s2)

1 - Precisa fazer um detector de zero da senoide da rede? Como fazer?

2 - Utiliza o PWM? Como fazer?

3 - Como Efetuar a ligação da lâmpada com TRIAC?

Link para o comentário
Compartilhar em outros sites

1 - Precisa fazer um detector de zero da senoide da rede? Como fazer?

Sim,a cada passagem por zero é ativada uma interrupção.

zero_cross.jpg

2 - Utiliza o PWM? Como fazer?

Depende,vai usar um canal só?

3 - Como Efetuar a ligação da lâmpada com TRIAC?

:

moc.jpg

Qual linguagem e qual compilador vai suar?

Link para o comentário
Compartilhar em outros sites

O MOC não deve ter o zero-cross para DIMMER,eu uso o MOC3011.

Geralmente MOC com zerocross é para ativar saidas igual a um rele.

Usando CCS para 2 canais eu precisaria programar.

Para um canal é fácil implementar.

Se voce tem conhecimento na utilização o CCS + PIC,posso passar o algorítimo de tudo e voce tenta programar.

Link para o comentário
Compartilhar em outros sites

Estou postando um pequeno exemplo para estudo.

Conforme voce entenda,voce conseguirá alterá-lo conforme sua necessidade.

Este exmplo usa Delay() para que entenda,mas não é o método usado para um PIC com mais de 16 pinos e mais de um canal.

Segue arquivo do Proteus e um botão para verificar como deve se comportar a saída para o circuito do TRIAC,é só observar no osciloscópio do Proteus.

Não foi montado um circuito na prática,mas funciona corretamente pois a saída para o osciloscópio é a mesma que uso em circuitos mais complexos com 16 ou mais canais de controle para lampadas.

1-Ativar a interrupção no pino RB0(interrupção externa).

2-Na rotina de interrupção,aguardar um tempo(utilizando delay(x)).

3-Ativar um pino como saida em nível alto(o pino que estiver ligado ao circuito do triac).

4-Desativar a mesma saida(nível baixo).

A alteração do tempo do delay é que vai controlar o brilho da lampada.

OBS:Este exemplo usa um timer e não PWM.

-> Exemplo 16F877A + Dimmer <-

Legenda no Proteus:

Canal A (amarelo), senoide da rede AC.

Canal B (azul),pulsos do detetor zero-cross(um pulso a cada passagem por zero da rede AC).

Canal D (verde),saída para o TRIAC (deslocamento de fase).

PS:O código exemplo foi feito no CCS stand-alone pois não uso CCS,por isso não sei como utilizá-lo com o MPLAB.

Link para o comentário
Compartilhar em outros sites

Antes de mais nada obrigado, depois de algum tempo tentando baixar o proteus, finalmente consegui, mas vamos lá, adicionei o circuito para saída para lâmpada, mas, não funcionou muito bem no proteus. Apresenta erros na simulação e/ou muda a onda senoidal. Utilizei um triac comum e uma lâmpada de simulação, passei de 12v para 127v.

Você já conseguiu simular este circuito?

Quais componentes utilizou?

Link para o comentário
Compartilhar em outros sites

O proteus não simula este circuito,apenas o osciloscópio simula perfeitamente.

Pode montar numa placa teste que funciona perfeitamente,é só fazer os ajustes.

Tenho um vídeo com o algorítimo funcionando,mas não utilizando Timer porque é para vários canais,mas a saida de um canal tem a mesma forma de onda gerada pelo exemplo que passei:

Quais componentes utilizou?

Os mesmos que estão no exemplo e fotos aqui neste post.

Para o circuito zero-cross,voce pode usar um par de qualquer fotoacoplador.

No exemplo que postei no link,o Proteus gera a forma de onda VERDE como saída para o circuito do TRIAC:

Mínimo brilho:

BRILHO.jpg

Brilho metade da potencia:

BRILHO_MEIO.jpg

Brilho máximo:

BRILHO_MAX.jpg

Legenda no Proteus:

Canal A (amarelo), senoide da rede AC.

Canal B (azul),pulsos do detetor zero-cross(um pulso a cada passagem por zero da rede AC).

Canal D (verde),saída para o TRIAC (deslocamento de fase).

Link para o comentário
Compartilhar em outros sites

Na próxima semana vou montar uma placa com estes componentes para 1 canal. Agora para 2 canais você têm ideia de como fazer, já que o Timer não funciona bem para mais de 1 canal. Se utilizar este detector de zero para os 2 canais e utilizar outro timer ou pwm?

Para o funcionamento de lâmpada led ou halogenica, será que funciona também?

Link para o comentário
Compartilhar em outros sites

Dimmer para lâmpadas AC utilizando a placa CLP PIC 40 versão3 (componentes já mencionados). Possuo 2 canais para fazer o dimmer, ou seja 2 dimmer's. As lâmpadas para dimmer: Incandescentes, economica, Led e alogenica.

Lâmpadas: Não sei, quais destas funcionam, tirando a incadescente.

Como nunca programei para esta aplicação, ou melhor, não tenho um bom conhecimento em PIC, por isso, postei esta duvida. Suas respostas foram muito importantes para o meu conhecimento sobre PIC.

No decorrer desta semana vou tentar implantar estes circuitos que você repassou para mim e desenvolver esta programação que você sugeriu. Mas se estiver mais laguma explanação sobre, por favor.

Link para o comentário
Compartilhar em outros sites

, economica, Led

Método do zerocross não funciona aqui, uma vez que a potência fornecida a elas não pode sercontrolada com a supressão (ou não) de um pedaço do semiciclo.

Para lampada economica fluorescente, é necessário variar o duty cicle do inversor de alta tensão que existe no circuito de controle desta, ou seja a sua solução poderá ser empregada se alterar o circuito de comando desse tipo de lampada.

No caso da LED, O negócio é mais simples se você for acionar um LED bruto, sem qualquer controle embutido (o caso de lampadas LED prontas), que bastaria variar o duty cicle fornecido ao LED, com um sistema de malha fechada para precvenção de oscilações...Em caso de lampada pronta, esqueça. O circuito interno ja possui uma malha de compensação que irá tentar manter o brilho do LED constante, podendo o metodo zerocross causar oscilações e ate a queima do circuito de controle.

O método postado pelo colega vtrx funciona muito bem para lampadas incandescentes e cargas de natureza resistiva (ou linear), porém ele ainda tem o problema de geração de harmonicas vai rede elétrica pelo fato de 'cortar' a senoide, assim o colega faller sugeriu uma aproximação baseada no envio (ou não) de ciclos completos em determinados intervalos de tempo de acordo com a potência desejada que reduz substancialmente as harmonicas.

Assim, acredito que a solução do dimmer de 2 canais ate funcione, mas para lampadas comuns e talvez para a halógena.

E sim, da pra usar o PWM para fazer isso, mas é gastar recursos a toa (opinião, consegui fazer com 9 canais sem mexer com ele).

Abs.

Link para o comentário
Compartilhar em outros sites

voce comprou este kit para utilizar como um Dimmer ou voce esta sem utilidade com ele e resolver montar alguma coisa?

Pergunto isso porque teria que saber qual kit e esquema elétrico pois nunca usaei CLP,mas se a intenção é só um Dimmer de 2 canais,é mais fácil eu postar tudo feito com um 16F628,que é pequeno.

Mas voce pretende controlar o brilho das lampadas com botões ou o que?

Eu utilizei,na primeira vez,semi-cilcos completos,mas para lampadas incandecentes,o brilho não fica linear,quer dizer,a partir de 'meia potencia' o brilho fica próximo do máximo e como a minha intenção era usar 32 canais de equalização(uma lampada para cada frequencia) o método por' corte' ficou linear,apresentando o brilho com passos de 180 níveis distintos(incrementos de 0.7 volt).

Sobre o zero-cross,é o meio de voce sincronizar o TRIAC pois não tem como voce controlar uma carga AC(linearmente) sem saber de onde a senoide esta zerada.

Usando PWM para AC,voce tem apenas o tempo entre as passagens por zero para gerar a onda.

Link para o comentário
Compartilhar em outros sites

voce comprou este kit para utilizar como um Dimmer ou voce esta sem utilidade com ele e resolver montar alguma coisa?

- Na verdade um amigo comprou, já fiz uma sequencia de lampadas com a o mesmo pulsador, agora preciso fazer 2 dimmer's, um para cada lâmpada.

Pergunto isso porque teria que saber qual kit e esquema elétrico pois nunca usaei CLP,mas se a intenção é só um Dimmer de 2 canais,é mais fácil eu postar tudo feito com um 16F628,que é pequeno.

Mas voce pretende controlar o brilho das lampadas com botões ou o que?

- Pretendo usar um pulsador para vair em 4 niveis de luminosidade (25, 50, 75 e 100%).

1 - apertar 1 x a lampada vai para 25%

2 - apertar 2 x a lampada vai para 50%

3 - apertar 3 x a lampada vai para 75%

1 - apertar 4 x a lampada vai para 100%

Esta placa já está pronta é um kit pronto que se compra pela internet. Qualquer alteração precisarei alterar o circuito da placa ou anexar um placa com os circuitos necessários para fazer funcionar os dimmer's.

Não sei se ficou claro.

Objetivo: Fazer 2 dimmers com a placa Kit PIC CLP 40 V.3, 1 dimmer para cada lâmpada. (A lampada será uma Led e/ou Incandescente e/ou halogenica).

Como fazer? o amigo Vtrx, sugeriu fazer com interrupção com zero cross.

Circuito: Vtrx, sugeriu alguns esquemas.

Felipe_Eletronic, teria algum exemplo, utilizando pic etc...?

O projeto são 2 dimmers, 1 para cada lâmpada.

Link para o comentário
Compartilhar em outros sites

O método usado pelo vtrx funciona em qualquer microcontrolador, inclusive ele fez para PIC e para o seu part.

O que voce deve fazer é simplesmente adicionar os botões de controle e condicionar a mudança de brilho para um dos valores para cada botão pressionado.

Exemplo:

Provavelmente o código do vtrx tem uma variavel que é proporcional a potência(brilho), assim quando voce pressionar um botão voce carrega esta para 25%, caso novo pressionamento carreguqe a 50% e assim por iante...use um contador de pressioanamentos e compare com as possiveis condições e carregue a variavel.

Em todo caso veja isso aqui:

http://ww1.microchip.com/downloads/en/AppNotes/91094A.pdf

Eu sempre recomendo esse APP note da microchupa, para quem vai fazer um dimmer com PIC ele é um excelente ponto de partida.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en025234

Acima ta o sorce divirta -se.

Abs

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...