0
$\begingroup$

Rosanswers logo

Hi, I am working on fusing visual odometry, IMU, and gps sensor by using a robot localization package. There are a couple of issues with my IMU data 1) it's not giving absolute orientation or heading as required by the node, it is providing relative orientation(the orientation will be zero at start irrespective of its orientation with east) 2) its orientation values are subjected to high noise (it might be due to interference and vibration on the robot). But, for the navsat_transform node, absolute heading from IMU is required to transform GPS position values to robot local map frame. As my IMU orientation values are not absolute and have high noise, I used the datum parameter in the navsat_transform node to define local-frame origin and get the initial transformation. image description

My questions are.

  1. Is it the right approach to use the datum parameter if we have noisy or relative IMU orientation data?

  2. Is defining this datum parameter is enough for the navsat_transform node to work (irrespective of IMU heading values) or Do I still need to provide absolute heading or orientation values to the navsat_transform node though I define datum parameter at the start?

  3. If I should have to provide absolute heading or orientation values to the navsat_transform node, how can I convert the relative headings to absolute heading?

Thank you and I would be glad if someone can help with this issue.


Originally posted by rcbot on ROS Answers with karma: 39 on 2021-11-07

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

navsat_transform_node needs to know the robot's heading w.r.t. the UTM grid, or it's impossible for it to create a transform from that coordinate frame to your robot's local coordinate frame. If your IMU does not have a magnetometer, you're going to have to find a way to get that information. You can maybe write a node that differentiates two GPS poses to generate an IMU message with that information, or you can always make sure your robot is facing exactly east when it starts.


Originally posted by Tom Moore with karma: 13689 on 2021-12-22

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by rcbot on 2022-03-09:
Thank you @TomMoore for the detailed answer. I really appreciate it.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.