Motor Selection for Robot Leg Application

Hello I am looking to replicate the application shown in the file named “MITCheetah.pdf” here

I have tried using this brushed DC motor Pololu - 4.4:1 Metal Gearmotor 25Dx63L mm HP 6V with 48 CPR Encoder but I am having trouble controlling it. It seems like this motor might be better suited for velocity control like for a fan application. I am having difficulty using the Hall effect quadrature encoder to control position.

I need to control the angular position of the rotor reasonably precisely in order to control the position of the foot (see the document). The movement does not need to be as rapid as the movement I am observing from the DC brushed motor.

I was looking at a stepper motor. Pololu - Stepper Motor: Bipolar, 200 Steps/Rev, 35×36mm, 2.7V, 1 A/Phase
I have gone pretty far down the 4801 path at this point, but I thinking I am beginning to run up on some fundamental control limits.

Can you make a recommendation as to which motor might be the preferred motor for my application? Also could you make a recommendation on any additional hardware (ie shields) that I could use to control the motor with Arduino/Raspberry PI.


I moved your post to the Motor controllers/drivers and motors section of the forum since it seems more appropriate.

With an appropriate feedback algorithm, it is certainly possible to do position control with that #4801 gearmotor using the quadrature encoders as feedback, but it looks like Patrick is already helping you with that in your other thread.

As far as alternatively solutions, you might consider using something like the RoboClaw motor controllers that can be configured to process the encoders and use them for position control, so you would not have to write your own algorithm.

It is beyond the scope of our technical support to help design your system, but since it looks like you do not need very much range of motion, one alternative option you might consider is using RC servos, which have their own internal feedback potentiometer and electronics to handle the position control and accept standard hobby RC servo signals.