Pololu Robotics & Electronics
My account Comments or questions? About Pololu Contact Ordering information Distributors

First time setup



Setting up my first project to use the Roboclaw 2 x 7A controller.
And seeking some guidance.
Using a 12V linear actuator that has feedback via a 10K pot.
Have successfully interfaced to it using the Ion Studio and using the PWM settings screen “control Motor 1” can make the actuator extend and retract and it shows the M1 encoding value increase/decrease. So all good!

Trying to set the maximum and minimum extension on the actuator and then commit this to encoders eprom. When I try move the motor on 1 using the slider as per the picture attachec. It starts moving the actuator into position, once close to the value set in “position”, it then moves the actuator violently +/- .
Any ideas as to what I’m doing wrong?

My ultimate setup for the unit is to communicate to the unit in simple serial mode knowing the controller is aware of max and min position. I simply communicate with the controller then to either extend or retract the actuator.

Any help appreciated.



Generally, having poor-fitting PID values can cause jerky motion like you described. You might contact the RoboClaw’s manufacturer, Ion Motion Control, directly to see if they have suggestions for the best way to fit those values or any other suggestions.



Thanks Nathan for the reply,

But what do you mean by “poor-fitting PID values”?

Moving the motor via the PWM control is beautiful, can see the encoder values increase and decrease with no anomalies in values being reported.

BUT I since noticed, get a MBLO yellow alert whilst attempting using/altering the position setting via IOStudio. And thinkign about it it, could be impacting the 5V rail which in turn would alter the voltage division across the pot. Which in turn could send the controller in to stupid mode trying to get to position.
Anyway if interested, will report back on my findings.



Not exactly sure what they do, but changing the position P/D settings resolved the issue.


PID is a common control algorithm for reaching a desired output from a system with a feedback input. The Wikipedia page for PID Controllers provides a pretty good description of how the algorithm works.