PDA

View Full Version : [Question(s)] Dynanixel PID / feedback algorithm questions



alonso
10-05-2012, 07:23 PM
Hi there!

I'm new to the robotics world and had some questions for you guys.

I'm starting to understand then parameters for PID control and it would be helpful to hear some real world examples of when it really comes in handy to have it and tune it properly.

Also I was wondering if people have written other feedback algorithms like the ones below:

Assisted No-Resistance - After turning the torque off for the servo, moving the horn still still takes some effort. Has someone written something that looks at the load being applied, and assists it a little bit to compensate for the friction created by the gears?

Elastic Resistance - Where you give it a target position goal and the further away from that position, the more to torque that's applied to fight back (Just like a spring)

Also I'm having trouble getting my MX-28T to reach the specs on the Internet. The fastest I can move it in wheel mode is around 34 RPM, but it's rated to move at 67 RPM @ 14.8v

I'm using 14.8v LiPo battery with a RoboPlus Dynamixel Wizard Softtware and USB2Dynamixel hardware. I tried playing with the PID, Torque Limit, Max Torque parameters to see if I could speed it up, but no luck.

Any idea on what might be slowing it down?

Thanks!
-Alonso Martinez

Th232
10-05-2012, 07:43 PM
I'm starting to understand then parameters for PID control and it would be helpful to hear some real world examples of when it really comes in handy to have it and tune it properly.


Here's a basic one. There's a door that's being closed by a servo. If you haven't tuned the PID system well then you may get overshoot, causing the servo to not just close the door but go too far. To compensate it'll swing back the other way and overshoot again, but by a smaller amount. It'll then oscillate back and forth until it reaches an "acceptable" point. Alternately it might not overshoot to begin with, but take a ridiculously long time to go to the closed position instead. Compare to a well tuned system which won't overshoot, but go to 90 deg relatively quickly and stay there.




Also I'm having trouble getting my MX-28T to reach the specs on the Internet. The fastest I can move it in wheel mode is around 34 RPM, but it's rated to move at 67 RPM @ 14.8v

I'm using 14.8v LiPo battery with a RoboPlus Dynamixel Wizard Softtware and USB2Dynamixel hardware. I tried playing with the PID, Torque Limit, Max Torque parameters to see if I could speed it up, but no luck.

Any idea on what might be slowing it down?


Is there anything attached to the servo at the moment? I think the 67 RPM is the no load speed.

jwatte
10-06-2012, 11:44 AM
Assisted No-Resistance - After turning the torque off for the servo, moving the horn still still takes some effort. Has someone written something that looks at the load being applied, and assists it a little bit to compensate for the friction created by the gears?



I don't think the sensors in the servo can do this on their own. The reason is that the servo doesn't measure "torque" in the abstract, but instead measures "current drawn" and compares that to "angular velocity of the output shaft" and infers the load from that. I don't see how you could figure out the desired movement speed of externally introduced torque from that, but maybe there's some trick to it and it's actually possible :-)



Elastic Resistance - Where you give it a target position goal and the further away from that position, the more to torque that's applied to fight back (Just like a spring)


That's the definition of the "P" part of a PID controller.

alonso
10-06-2012, 03:13 PM
Nope, I don't have anything attached to the servo so it should be running at no-load