Phase angle control of the triac is what we want. The micro turns the triac on somewhere in the 8.33333ms portion of each half cycle determined by the desired speed.
The zero crossing circuit we are reffering to, is a separate circuit only used to tell the micro where in time the AC reaches zero volts. It does not control the triac directly and thus does not turn on the triac at the zero voltage points. Two separate functions, but unfortunately use the same "zero crossing" phrase.
Once the micro knows where the zero voltage points are in time it can then select a delay time, before firing the triac, based on the desired motor RPM.
So, we are using a "zero crossing" detect circuit for synchronizing the firmware to the AC line voltage.