Você precisa saber quando estão os cruzamentos do zero da linha CA. Ao contrário do que os outros estão dizendo, você está procurando a voltagem passagens de zero ao ligar o triac. Isso deve ser óbvio quando se considera que o triac ainda não está ligado e, portanto, a corrente é zero.
Você parece estar tentando medir as passagens de tensão zero com o circuito inferior, mas pode ser necessário fazer algumas experiências para fazê-lo funcionar bem. Você está contando com a tensão sendo baixa o suficiente para não ligar os LEDs em cada passagem de zero, que então desliga o transistor a cada passagem de zero. Portanto, você espera obter uma pequena falha positiva a cada cruzamento de zero. Conseguir que os LEDs se apaguem por tempo suficiente para o transistor desligar o suficiente para que o pullup funcione e depois tudo o que acontece com pouco atraso de fase será complicado.
Em um caso, eu tive que fazer isso, usei dois optos na configuração push-pull. Os LEDs foram conectados de um lado para o outro, de modo que cada um estava ligado por 1/2 de cada ciclo de linha. As saídas foram conectadas de modo que um puxasse alto e o outro baixo. A saída resultante foi uma onda quadrada limpa e agradável, com ciclo de trabalho de 50% e as bordas muito próximas às passagens de zero.
De qualquer forma, uma vez que você tenha um sinal por cruzamento de zero, basta adicionar um atraso variável antes de ligar o triac. O atraso pode variar de zero a quase meio ciclo de linha. Quanto maior o atraso, menor a tensão média geral para o motor. Se a frequência da linha é de 50 Hz, então um ciclo inteiro é de 20 ms e um meio ciclo é de 10 ms, portanto o período de atraso variável provavelmente deve ser limitado a 0-9 ms ou mais.
Você terá que experimentar para determinar a tensão média que o motor verá em função do atraso. Você pode calcular isso se a carga for conhecida. Sua carga possui um componente indutivo imprevisível; portanto, o triac será realmente desligado um pouco após o próximo cruzamento de tensão zero. Esse atraso variará em função do atraso de sua vez e em função do que o motor está fazendo. Se o atraso na ativação for pequeno, o indutor carregará a maior parte do ciclo da meia linha, levando um tempo para descarregar. Se o seu atraso foi longo, o indutor foi carregado apenas por um curto período de tempo em baixa tensão e, portanto, levará apenas um curto período para descarregar e atingir o nível de corrente zero, onde o triac será desligado.
Para tensões aparentes baixas do motor (atrasos prolongados na ativação), o atraso no desligamento não importa, pois o triac desliga antes de tentar ligá-lo novamente próximo ao final do próximo meio ciclo. À medida que você aumenta o acionamento do motor e, portanto, diminui o atraso na ativação, eventualmente a corrente zero do indutor ocorre após o sinal de ativação no próximo semestre. O triac estará agora o tempo todo, o que significa que o motor vê a tensão da linha completa. O atraso mais curto na ativação não aumenta o acionamento do motor. No entanto, você ainda tem uma gama quase completa de controle sobre o motor, só que ele não se espalha uniformemente por todo o ciclo da linha. Os pequenos atrasos na ativação são os mesmos que os ativados continuamente.
Observe que isso pressupõe que o triac é acionado continuamente desde o seu atraso no turno até o final do ciclo da meia linha. Isso garante que o triac esteja ligado durante a fase on de cada ciclo de meia linha, independentemente do que a corrente esteja fazendo. Se você não fizer isso e, em vez disso, dirigir o triac com um breve toque após o atraso no acionamento, duas coisas ruins acontecerão. Primeiro, quando o motor estiver cheio e o cruzamento de zero atual do meio ciclo anterior ocorrer após a ligação do próximo, o triac será desligado nesse cruzamento de zero. Segundo, o triac pode desligar quando há breves falhas na corrente, como pode acontecer com motores comutados mecanicamente.