-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
I am experiencing a significant discrepancy between the raw IMU data and the final odometry output from the LIO-SAM mapping module. My setup uses a Unitree B2 robot and a Robosense Helios 32 LiDAR、ROS2 humble.
Configuration
The relevant topic configurations from my parameter file are:
pointCloudTopic: "/rslidar_points_converted"
imuTopic: "/dog_imu_raw"
odomTopic: "odometry/imu"
gpsTopic: "odometry/gpsz"
Observed Data
-
Raw IMU Data (topic: /dog_imu_raw):
The linear acceleration data from the IMU appears stable and shows small, plausible changes in position, consistent with the robot's movement on a relatively flat surface (note the Z-axis acceleration is close to gravity, ~9.8 m/s²).x: 0.014365210197865963
y: 0.1041477769613266
z: 9.740509986877441x: 0.014365210197865963
y: 0.1041477769613266
z: 9.740509986877441x: 0.03232172131538391
y: 0.13198037445545197
z: 9.807847023010254 -
LIO-SAM Odometry Output (topic: /lio_sam/mapping/odometry):
The pose position from the final odometry topic shows enormous and unrealistic values.x: -27.7979679107666
y: 1.8861989974975586
z: 0.05000000074505806x: -33.032894134521484
y: -3.063706398010254
z: 0.05000000074505806x: -39.27899169921875
y: -9.487403869628906
z: 0.05000000074505806x: -45.427345275878906
y: -18.16677474975586
z: 0.05000000074505806
Problem
The estimated position from /lio_sam/mapping/odometry drifts massively compared to the stable input from the IMU. The values jump to tens of meters, which is not physically possible for the robot's movement.
Questions
- What could be causing this massive drift in the odometry output?
- Could the issue be related to the coordinate frame transformations or the configuration of the IMU/LiDAR parameters (e.g., extrinsics, noise models)?
Any insights or suggestions for debugging this issue would be greatly appreciated.
Environment:
• Robot: Unitree B2
• LiDAR: Robosense Helios 32
- ROS2 humble
