Página 1 de 1
Dimmer com PIC não varia potência de lâmpada incandescente.

Enviado:
15 Nov 2010 18:22
por LEONARDO
Brothers,
Sou novato em microcontroladores PIC, mas assumi como desafio, desenvolver um dimmer com comunicação USB.
Estou usando um foto-acoplador MOC 3010 para disparar um TRIAC TIC226D através do PIC18F4550. Tudo funciona direitinho, já testei as entradas e as saídas digitais, tudo blz. Mas o problema é que quando ligo e alimento o circuito com 127 volts e aciono o controle deslizante na minha interface, a única coisa que acontece, é que a lâmpada liga, mas a potência não varia, conforme um dimmer descente deveria fazer.
A frequência do PWM é 2,9Khz.
?????

Enviado:
15 Nov 2010 18:32
por xultz
O problema não está no PIC, está no jeito que você está acionando o teu circuito de potência. Prá entender você precisa aprender um pouquinho mais de teoria de triac, mas é mais ou menos assim:
Um triac, quando você dispara, ele não pára nunca mais. A única forma de fazer ele desligar, é retirando a corrente que você está injetando no gate E fazer a corrente que passa por ele cessar.
Se você pensar que a tensão alternada numa carga resistiva (como é, o caso da lâmpada) faz a corrente ter valor zero duas vezes por ciclo, se você não colocar corrente no gate neste momento o triac pára de conduzir. Porém, em qualquer outro ponto do ciclo da rede, esquece, ele não desliga (tem uma forma, mas não vem ao caso aqui).
Qual é o macete então? Você primeiro precisa detectar quando a tensão da rede passa pelo zero. Isso pode ser simples: se você estiver alimentando o teu PIC com uma fonte feita com um transformador (tipo, com saída de 12V), que retifica e regula, basta um circuitinho bem simples pegando da saída do trafo, que dispara um transistor toda vez que a tensão da rede passa de zero para mais ou menos 0,7V. O transistor vai gerar uma rampa de descida bem perto do zero da fase.
Aí, no teu PIC, você espera. Por exemplo, o ciclo da rede tem 1/60 segundos, ou seja, 16,67ms. Se você esperar 5ms e ligar o triac, durante 5ms a lâmpada fica apagada e 11,67ms fica acesa. Quando chegar no zero da fase você desliga triac (ele vai desligar porque não vai ter corrente passando por ele), espera 5ms e liga de novo e assim por diante. Conforme você varia esse tempo de espera (para mais ou para menos), vai variar a proporção de tempo entro lâmpada acesa e desligada, e assim varia o brilho da dita cuja.
Me fiz entender?

Enviado:
15 Nov 2010 18:33
por rcakto
rapaz, voce nao vai perceber nunca a variação assim, o triac simplesmente esta cortando a alimentação em um determinado tempo, no caso aconcelho a diminuir esse pwm para 12Hz, pois é a velocida maxima que o olho concegue perceber uma variação, para testar o circuito, e usar um osciloscopio para ver se está tendo variação na entrada do triac e na alimentação da lampada...

Enviado:
15 Nov 2010 20:32
por diogo_18sp
quando eu fiz um dimmer com pic usei um moc 4n25 para ter referencia do começo da onda ac pra fazer o disparo do gate do scr onde eu conseguia disparar com precisao a onda desejada.

Enviado:
16 Nov 2010 08:13
por LEONARDO
xultz,
Valeu pela teoria de como gatilhar um TRIAC.
Eu gostaria de saber o seguinte:
No meu projeto, eu utilizo a tensão da porta USB(5V) para alimentar o circuito, inclusive o led do MOC3010. Eu poderia usar um foto-acoplador com zero-cross para fazer gatilhamento do TRIAC, para resolver o problema ?

Enviado:
16 Nov 2010 08:52
por xultz
Leonardo, se usar um MOC3083, que tem zero cross, teu dimmer não vai dimmerizar nunca mais
É que você precisa passar pelo zero, esperar um pouco e disparar o triac no meio da onda. Mas o MOC com zero cross, você manda disparar no meio da onda e ele espera atééé passar pelo zero de novo, aí teu tempo de dimmerização foi pro quiabo.
Como você está alimentando pela USB, vai precisar fazer um circuitinho prá pegar o zero, e o mais simples vai ser com um optoacoplador (tipo 4N25), com um diodo 1N4007 em anti-paralelo com o oled do opto, e um resistor de pelo menos 1W tocando o led.

Enviado:
16 Nov 2010 11:35
por LEONARDO
Cara, francamente falando, não consegui transcrever a sua idéia para o meu circuito.
Como vou usar a saída PWM do PIC para disparar o TRIAC ?
Se puder, envia me um diagrama esquemático da sua sugestão.
Grato
Leonardo.

Enviado:
16 Nov 2010 11:57
por xultz
Leonardo, você não usa PWM. Só o timer. Ou seja, quando o PIC detecta passagem por zero da fase, zera o timer, e quando ele estoura (usando tempo que você deseja que ele espere até disparar o triac), aciona o MOC.

Enviado:
16 Nov 2010 12:07
por jonowsky
Leonardo, o dimer que fiz, eu utilizava um circuito com ampop para detectar o cruzamento de zero e o sinal do cruzamento de zero eu levava até a entrada de interrupção externa no uC...
Eu usava também um timer, com uma interrupção de 83us, para poder dividir o semiciclo em até 100 valores. ai dentro deste timer eu fazia a lógica para verificar qual a potência desejada e se já era o momento de gatilhar o tiristor. Uma coisa importante, é você dar um trem de pulsos a partir do angulo que deseja que ele dispare e não apenas um pulso, pois assim você garante que ele irá conduzir.
Caso queira alguma ajuda, esquema, código... avisa ai que dou uma procurada.

Enviado:
18 Nov 2010 21:25
por LEONARDO
jonowsky
Pode disponibilizar o .HEX do projeto e o diagrama ?
Thx.


Enviado:
18 Nov 2010 22:34
por jonowsky
LEONARDO escreveu:jonowsky
Pode disponibilizar o .HEX do projeto e o diagrama ?
Thx.

se vc usa msn me adicione, depois que chegarmos em uma solução poste aqui.