por xultz » 15 Nov 2010 18:32
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?
98% das vezes estou certo, e não estou nem aí pros outros 3%.