Hola Amigos!, el MOC3041, tiene en su interior un detector de cruce por cero.... por lo que si "disparas" por ejemplo cuando la onda ya "paso" por el cero... y esta en 20, 30 .. 90 grados... "no se dispararà hasta que llegue al proximo "cero".... por lo que no serviria para "regular" la velocidad... o seria "a los tirones", imaginen como un "rele"
Con una interrupciòn del pic, detectas "el cruce por cero" para saber cuanto retardas el disparo, para "sincronizar" el pulso y su retraso... con lo cual sì regularás la velocidad del motor...
Los pulsos del PWM, como dijo Nocturno, los filtras, y obtienes una tension continua, proporcional, y con el AD del pic, la lees y actuas en consecuencia con el tiempo de "retardo" en el disparo... (con un MOC3020) (sin detector interno de cruce cero)
Quizas tengas que hacer una "tabla" para obtener una curva de velocidad adecuada....
Un abrazo!
Norberto