ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

It looks like you're using a simulated Jackal. Looking at the r_l config for the Jackal, you can see that the yaw data from the IMU is being fused. Therefore, if at time t0, your simulated IMU reports a non-zero yaw, then the filter is going to reflect that. If you want it to start with 0 yaw even when the IMU doesn't, turn on relative mode.

It looks like you're using a simulated Jackal. Looking at the r_l config for the Jackal, you can see that the yaw data from the IMU is being fused. Therefore, if at time t0, your simulated IMU reports a non-zero yaw, then the filter is going to reflect that. If you want it to start with 0 yaw even when the IMU doesn't, turn on relative mode.relative mode for that sensor (i.e., imu0_relative: true).

It looks like you're using a simulated Jackal. Looking at the r_l config for the Jackal, you can see that the yaw data from the IMU is being fused. Therefore, if at time t0, your simulated IMU reports a non-zero yaw, then the filter is going to reflect that. If you want it to start with 0 yaw even when the IMU doesn't, turn on relative mode for that sensor (i.e., imu0_relative: true).

Edit in response to comments

First, the template launch file is just that: a template. It's meant to show you what parameters are available to you, but isn't actually used by the nodes in r_l. The various parameters, where appropriate, do have default values if not specified, and you are correct that the _relative parameter defaults to false.

Second, note that moving the odom frame origin is equivalent to setting the robot's pose in the odom frame. You can use the set_pose service for that.

It looks like you're using a simulated Jackal. Looking at the r_l config for the Jackal, you can see that the yaw data from the IMU is being fused. Therefore, if at time t0, your simulated IMU reports a non-zero yaw, then the filter is going to reflect that. If you want it to start with 0 yaw even when the IMU doesn't, turn on relative mode for that sensor (i.e., imu0_relative: true).

Edit in response to comments

First, the template launch file is just that: a template. It's meant to show you what parameters are available to you, but isn't actually used by the nodes in r_l. The various parameters, where appropriate, do have default values if not specified, and you are correct that the _relative parameter defaults to false.

Second, note that moving the odom frame origin is equivalent to setting the robot's pose in the odom frame. You can use the set_pose service for that.