Im doing some underwater UUV Gazebo simulation and would like to use the


package to fuse IMU and Fluid pressure sensors input for pose estimation. In the gazebo launch file I have this tf transformation <node pkg="tf" type="static_transform_publisher" name="world_to_nav" args="0 0 0 0 0 0 /world /nav 100" /> So the tf looks like thisgazebo tf. and when using the following hector_pose_estimation launch file

<?xml version="1.0"?>
  <node pkg="hector_pose_estimation" type="pose_estimation" name="hector_pose_estimation">
    <remap from="raw_imu" to="/rexrov2/imu" />
    <remap from="pressure_height" to="/pressure_height" />
   <node pkg="tf" type="static_transform_publisher" name="nav_to_base_footprint" args="0 0 0 0 0 0 /nav /rexrov2/base_footprint 100" />

the TF is following hector_pose_estimation tf . The both TF from gazebo and hector_pose_estimation are not correct. Any help how to get the correct frames to make it work? And when using the above launch the hector_pose_estimation /pose is like these

  seq: 329
    secs: 781
    nsecs: 118000000
  frame_id: "nav"
    x: 0.0
    y: 0.0
    z: -1.64102132948e-09
    x: -8.80621330591e-06
    y: 0.000294167493465
    z: 3.71623915803e-14
    w: 0.999999956694

Which is not correct as I have the true pose which if following

  seq: 15460
    secs: 781
    nsecs: 608000000
  frame_id: "world"
child_frame_id: "rexrov2/base_link"
      x: 0.083413690347
      y: 0.133535986662
      z: -0.77756440376
      x: -9.34768900238e-06
      y: 0.000294151069482
      z: 0.00184072884918
      w: 0.999998262551

In the hector /Pose the frame_id: "nav" and no child_frame. In the real pose is frame_id: "world" and child_frame_id: "rexrov2/base_link" (rexrov2 is the name of the robot) . Why the x and Y component of the Position are zeros? They shouldn't be zero. So any help how to fix it?

  • 1
    $\begingroup$ Just from your question, it is difficult to understand what is going on. I would ask you to explain your question better, for example, why do you have/need a nav frame if there is a static transform between nav and the robot base frame? In mobile robotics, we usually use the odom frame, does nav frame perform the same function as odom frame does in ground mobile robots? $\endgroup$
    – Franky
    Oct 4, 2021 at 13:07
  • $\begingroup$ When you say that the TF from gazebo is not correct, can you expand on what you mean? You appear to be using a ground truth plugin, which I expect is accurate. What's not "correct" about it? Please edit your question with more details. It will help if you provide enough information to reproduce your setup with the exact commands etc. Make sure to include the output you are seeing as well as what you expect to see and what's different as well as any debugging you've done. $\endgroup$
    – Tully
    Oct 5, 2021 at 17:31
  • $\begingroup$ sorry I hava more urgent problem to solve which is getting linear velocity from robot_localization package. I will come back on this later. I post a question regarding that problem that have issue with the linear velocity $\endgroup$
    – bob
    Oct 6, 2021 at 12:26
  • $\begingroup$ ok. I have time now. I fixed the TF and now is ok. The problem is that the velocity is not correct as output of this package. When move the robot hector_pose_estimation think that it stay in same place as the pressure_height topic is 0 in X and Y. So how to fix that problem? $\endgroup$
    – bob
    Oct 12, 2021 at 6:53
  • $\begingroup$ should I open a new question or? $\endgroup$
    – bob
    Oct 12, 2021 at 6:59


Your Answer

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

Browse other questions tagged or ask your own question.