Robot_Localization EKF and Navsat_Transform node parameter configuration [closed]

asked 2015-10-01 10:39:54 -0500

The_Mad_Geometer gravatar image

updated 2015-10-01 10:41:39 -0500

I am trying to configure the robot_localization nodes on the Clearpath Husky robot. I have set the robot up to use one copy each of navsat_transform_node and ekf_localization_node. On the husky, we have the following sensors publishing to the following topics:

Microstrain 3DM-GX2 IMU --> /imu/data Wheel encoding odometry --> /husky_velocity_controller/odom Garmin GPS puck --> /fix

Navsat_transform_node is set as follows:

Subscriptions: /imu/data, /odometry/filtered, /fix Publications: /odometry/gps, /gps/filtered

Ekf_localization_node is set as follows:

Subscriptions: /husky_velocity_controller/odom, /imu/data, /odometry/gps Publications: /odometry/filtered

My understanding is that the wheel husky_velocity_controller/odom and imu/data should begin spamming when everything is started and the messages on these topics should be fused in the EKF which should then spit out a /odometry/filtered message. The /imu/data and /odometry/filtered messages should go into navsat_transform_node which, once it receives its first /fix message from the GPS, should start spitting out its two message types.

When I run this on our Husky robot, the raw GPS fix gives nearly perfect positioning, but my /gps/filtered messages are returning coordinates that are all over the place. Most of the /gps/filtered points are near the correct path (although the path appears rotated and less neat than the raw /fix path), but there are a lot of places where the estimates jump very large distances. Also, the distances that the estimates jump appear to grow the longer the robot is run. I have a few questions:

  1. Is /gps/filtered carrying the results of the data fusion and estimates in latitude and longitude? I.e., is this the message topic that I want to use for the robot's position estimate in actual latitude and longitude? If not, which message is and how must I prepare the data to be output into a .gpx file?
  2. Are there parameters or reference frame settings that anyone can think of that might lead to the path jumps that I'm describing, or can anyone think of any reason why this might happen?

I wanted to include photos to help my description, but I'm not allowed.

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by Tom Moore
close date 2019-06-06 02:00:30.440874

Comments

Please post your launch file and a sample of each input message. Given your description of what's happening, I suspect some trouble with covariances. Maybe record a bag file and post a DropBox or Google Drive link?

Tom Moore gravatar image Tom Moore  ( 2015-10-01 13:44:42 -0500 )edit

Here is a link to the most recent bagfile that I captured:

https://drive.google.com/file/d/0B6jX...

Here is the launch file:

https://drive.google.com/file/d/0B6jX...

The_Mad_Geometer gravatar image The_Mad_Geometer  ( 2015-10-02 10:59:34 -0500 )edit

I have been working on this, and here are updated files:

Bag: https://drive.google.com/open?id=0B6j...

Launch: https://drive.google.com/open?id=0B6j...

The_Mad_Geometer gravatar image The_Mad_Geometer  ( 2015-10-05 14:21:52 -0500 )edit

Can you also post the .yaml files? Thanks.

Tom Moore gravatar image Tom Moore  ( 2015-10-06 08:37:11 -0500 )edit

I'm having the same problem. Did you find a solution for this issue? Regards,

WCharles gravatar image WCharles  ( 2016-01-05 12:30:28 -0500 )edit

This question is very old, I realize. Did you find a solution to this?

Tom Moore gravatar image Tom Moore  ( 2017-08-22 05:25:19 -0500 )edit