ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

PID Position control with ardrone

asked 2015-06-15 12:17:37 -0600

tn0432 gravatar image


I am trying to use PID for position control of ardrone. I use ardrone_autonomy as a package to connect with Ardrone and send /cmd_vel. The values of /cmd_vel are calculated by PID controlling. The feedback Ardrone current positions are gotten from Motion Capture System. I am struggling at tuning PID parameters. Does anyone try it before?

My PID tunning, Ardrone can fly to /goal frame but still too osscilation and overshoot. My PID x,y is Kp_0.15, Ki_0.0, Kd_0.05. My target is that the position errors is about <20 cm. Is my target realistic with Ardrone? Any suggestion?

Thank you very much! I very appreciate.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2015-06-16 11:57:48 -0600

AndyZe gravatar image

I usually start with just Kp and get the best performance I can with that. Then add Kd to minimize oscillations. Finally, add just a bit of Ki to ensure zero steady-state error.

Or read the wiki page and follow their recommendations:

edit flag offensive delete link more

answered 2015-06-16 10:05:51 -0600

jbrown gravatar image

updated 2015-06-17 14:03:26 -0600

Are your cmd_vel messages controlling the speed of the motors? If so, use Kp and maybe very little Ki, here are some links:

This thread might help explain it, look at the part by Mr. Lim:

As far as tuning the PID's, I would go with any open loop method.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2015-06-15 12:17:37 -0600

Seen: 1,685 times

Last updated: Jun 17 '15