I'm not too versed in EE so I apologize for my duncitude -

My thought is that you can precisely control a stepper motor, but can you inversely get precise readings out of a stepper motor?

For example: if you have an xy plane controlled by stepper motors, you can say "navigate to 0,0 by moving x motor 40 times and y motor 30 times". If you manually drug both axis in position, could you get a reading of x: 40, y: 30?

  • 1
    \$\begingroup\$ It is possible theoretically by monitoring the coil voltages but practically one would add an encoder disc for a much simpler circuit and better accuracy. \$\endgroup\$ – Janka Jul 25 '17 at 3:33

While turning a stepper motor does generate an AC output, it's not suitable for a general position sensor.

The magnitude of signal it generates is proportional to its speed. As long as the table moves at least at at a minimum speed (which will depend on the sensitivity of your measurement hardware), then you will see all the pulses. Move at a lower speed, and you will miss pulses. With a simple voltage measurement, you would not be able to tell whether the motor was stationary, or turning very slowly.

A position sensor really needs the ability to be able to tell stationary from slow. An optical encoder can do this, as can a synchro.

Some constructions of stepper may permit you to sense its position by measuring the inductance of all the windings, treating it as a sort of variable reluctance synchro. However, by the time you've done that, it would be far simpler to use an optical encoder.

  • \$\begingroup\$ Awesome, thank you! :) \$\endgroup\$ – jmchargue Jul 25 '17 at 16:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.