Originally posted by stumax
One idea I have is to sample the back emf of all phases during the pwm off time via a 3 channel A/D. Two of the phases' voltages would then be phase shifted 120deg and 240 deg respectively, and a Fourier transform performed on all of the data, using as the frequency of the transform the motor speed (in Hz) derived from the previous commutation. This would result in the phase angle of the sampled waveform, and it would be very accurate due to the number of samples used.
- no hw pwm, but sw pwm emulation, the on/of/on/off sequence is strictly keeps synch with the phase of the rotor
- because of it the a/d samples are representing similar phases, filtering is easier in the time domain
- there is no hw mix for the pwm - less parts, smaller board