Bob,
I found the following tidbit at **broken link removed**
"Look at this post:
**broken link removed**
Many techniques are proprietary, in general terms, as Mariss point out, you introduce a compensating phase shift (+/- 60 degrees maximum) on the incoming step pulses in response to the phase difference between the input step frequency and the real rotor frequency. The rotor frequency could be measured by means of a encoder, BEMF zero crossing, or use the synchronous detection feature of the output switching measured on the current sense resistors and extracting the error information by means of a low pass filter followed by DC suppression (actually a bandpass filter).
I can't give more information on the procedure because it is a patented subject, but you can find out for yourself..."
I have also been building my own stepper control as a learning experience to see how it is done. If you look at the stepper drives from a purely mathematical perspective and you use the reactive inductance equation, you will see that to turn a stepper motor at very high rpm, the equation suggests that you will need a huge voltage driving the motor to overcome this reactive inductance. The way I see guys getting around this problem and also the mid-band resonance problem is by microstepping.
What this essential does, is it slows the rate of current change in the coils, thereby overcoming the inductive reactance and allowing you to achieve higher speeds and compensate for resonance. Once your microstepping wave forms start to approximate a sine wave, you are doing what is call sinusodial commutation.
To do this is not simply as easy as just producing to sine waves which need to be 90 degrees out of phase and feeding them to the stepper motor. You need a circuit which allows your h-bridges to alternate between slow and fast decay modes to ensure that the wave form that is seen by the stepper motor coils is true to a sine wave.
Whether the microstepping drive scheme can negate the need for the midband compensation is unknown to me however. I suspect that microstepping will only work up to a point, at which point some form of active midband compensation will become necessary.
Good luck with your stepper motor controller design. Stick with it, the knowledge I have gained from going through various iterations of stepper controller designs has been absolutely invaluable. It opens up the field of power electronics and allows you to do a whole bunch of other cool things.
Neo.