An open-loop speed control TRIAC-driven universal motor driver board design from Microchip, app note here:
This application note presents the design of an open-loop speed control TRIAC-driven universal motor driver board using a variety of core independent peripherals on an 8-bit microcontroller. The complete source code and reference design material are included.