Stepper motor PID control

Aug 29, 2007 2 Replies

Sorry.. I've forgotten this question in previous message: It's possible to control a stepper motor in a closed loop system via a common PID algorithm ? I ask this to you because many commercial controllers that I've found have encoder input but use it only for stall detection. I think a continuous controlling of stepper motor isn't a great idea due to discreet nature and relative low resulution of stepper motors: I think that is sufficient an accidental little movement of mechanical system respect to idle position to cause continuous vibrations: is it correct ? My idea is to use PID only during motion commands and stop it when axis is settled in a given range: it will limits axis overshoot and precise positioning without undesidered steady vibrations. What do you think about.



Best regards. Simone Navari.



Pretend its a DC sin/cos torquer and drive it with a variable frequency sin/cos drive?

Yes, in a way. You can make an error signal with PID techniques, feed it to a VFC (voltage-frequency converter-I like CD4046 for this application) and use pulses from the VFC to clock your stepper drive. Two VFCs and/ or a bit of logic can make it work in reverse as well as forward.

The discontinuity at a step will, however, drive the 'D' term of your PID somewhat crazy. PID control is better suited to DC servomotors.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required