Using set_Pose service in robot_localization package [closed]

asked 2016-08-16 05:27:55 -0500

Igel gravatar image

Hi Everyone,

I am trying to use the set_pose service of the robot_localization package. Due to some landmarks I know exactly that the robot is at this pose, but when I feed it via the service after a short time the orientation from the robot_localization package switches back to the old state. I think I know why the filter jumps to the old orientation, because I use the absolute orientation from the IMU, which does not have changed. So what is the best way to set this landmark pose, without just using the incremental IMU data.

Thank you and kind regards!

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by Igel
close date 2017-09-11 03:23:46.274628


Did you ever figure this out? You are correct: if you are fusing yaw from the IMU, then it will immediately override your set_pose call. This says to me that your IMU is in a different world frame than your landmarks, and therein lies the problem.

Tom Moore gravatar image Tom Moore  ( 2017-07-20 04:18:53 -0500 )edit

Actually I didn't really figured it out. My landmarks and the IMU are in the same world frame, my IMU values are simply wrong due drift. So the intention was to correct the drift from the IMU within the filter. I did a workaround where the landmarks are publishing some kind of a correction frame.

Igel gravatar image Igel  ( 2017-07-20 08:12:54 -0500 )edit

Great! Can you make your solution an answer to this question, and/or close it?

Tom Moore gravatar image Tom Moore  ( 2017-09-11 02:58:28 -0500 )edit