Electronic – Speed and Position Control for high-volt Elektro Motor with AVR

avrdc motorposition;speedstepper motor

Is there anything that one can purchase to control speed and position of a high voltage electro motor?

I am quite a bit of a noob at this but I could think of a circuit using photo-sensors or hal-sensors to estimate speed and position of something that's being moved by this motor.

Is there anything that fulfills my needs or would I have to create something like this from scratch?

I know there are servo-motors that can be controlled very precisely but they are also quite expensive – additionally I don't need that much accuracy a servo-motor can provide.

Best Answer

There are a couple of things that you could use, depending on your application. The first is a rotary encoder (here's a 200 pulse/rotation encoder at Sparkfun for example). You can use feedback to determine speed and position.

Another way would be to drive a potentiometer along with the output, and use it as a voltage divider to determine position. Note that using a potentiometer would limit the output of the motor to coincide with the total angle of rotation of the potentiometer. In other words, if the potentiometer can only turn 180 degrees, then the motor would also be limited to this range.

You'll need a circuit that can drive the motor and compare input (desired position) and feedback (actual position), taking into consideration polarity and time. Research PID (proportional-integral-derivative) controllers and H-Bridge circuits.

I'm not sure what the specifications of the motor are, but you can find controllers that would be relatively easy to interface with AVR projects, such as this motor controller at Pololu. It will drive up to 16V at 12A using a variety of input methods (USB, serial, hobby RC, etc.).