Follow a trajectory with Hector quadrotor

asked 2017-09-13 10:26:39 -0500

fabriceN gravatar image

Dear All

I am using Hector_quadrotor and was able to connect it to Octomap. The idea is to use the Teleop mode to explore the space and then generate a trajectory to go back to the initial position automatically.

I am able to create a path using RRT* and from there a polynomial trajectory.

I am a bit stuck in the sense that I need to develop a module to execute the trajectory and I do not know how to do it:

  • There are three controlers available (velocity, attitude and position) and my guess is that I need to use the position controler and publish geometry_msg/poseStamped and geometry_msg/twist
  • If so I need to tanslate the trajectory into such messages, and somebody can tell me how to do it?
  • Is it easier to work with a set of waypoints (use the output of the RRT* directly)?
  • another question regarding the controlers, looks like there are independant in the sense that the ouptut of the position controler are not used by the attitude controler for instance. Am I right?

Thank you for reading

edit retag flag offensive close merge delete

Comments

You may have better luck getting help if you break this into 4 questions (one per bullet point).

jayess gravatar image jayess  ( 2017-09-15 13:18:03 -0500 )edit

If you are still interested, I will try to answer your questions:

  1. You can look for Pose Action of Hector_quadrotor for controlling position. It is pretty straightforward.
  2. Same as above.
  3. Definitely, it is easier. For example PoseAction accepts goals in the form of geometry_msgs/Pose.
tahsinkose gravatar image tahsinkose  ( 2018-09-16 15:25:35 -0500 )edit

4.You are right. They generally publish to different topics.

EDIT after 2 years time: No, they are adjusted in a cascaded setting. Such that the output of position controller is used as the input of velocity controller, which outputs attitude, yawrate and thrust; ultimately used as input by the attitude controller to generate a wrench command. This wrench command is read by the Gazebo controller and the quadrotor model is updated accordingly.

tahsinkose gravatar image tahsinkose  ( 2018-09-16 15:27:02 -0500 )edit