* demo(turtlebot3): add FusionCore + icp_odometry feedback loop demo
Adds a TurtleBot3 Gazebo Harmonic demo (ref issue #1418 Option A) where
FusionCore (wheel + IMU UKF) and icp_odometry tighten each other in a
feedback loop: FusionCore's stable odom frame serves as the scan-match
initial guess via guess_frame_id, and the ICP result feeds back into
FusionCore as a second velocity source. rtabmap SLAM consumes the ICP
output for mapping/loop-closure. Nav2 uses /fusion/odom.
Files added:
launch/turtlebot3/fusioncore/turtlebot3_fusioncore_icp.launch.py
launch/turtlebot3/fusioncore/turtlebot3_sim_fusioncore_icp_demo.launch.py
launch/turtlebot3/fusioncore/README.md
params/fusioncore_tb3.yaml
params/fusioncore_tb3_bridge.yaml (TF-conflict-free bridge)
params/turtlebot3_fusioncore_icp_nav2_params.yaml
* demo(turtlebot3): add FusionCore demo entry to rtabmap_demos README
* fix(fusioncore-demo): remove Odom/ResetCountdown from rtabmap, strip GPS params
* docs(demos): add FusionCore icp_odometry demo GIF to README
* fix(fusioncore-demo): add imu.frame_id override and docking_server params
* fix(fusioncore-demo): remove docking_server from nav2 params
* Fixing turtlebot3 demos on Jazzy
* Updated humble
* Working turtlebot3 demos on humble and jazzy
* Fixed Twist->TwistStamped. Fixed rviz2 crashing because missing docking server
* demo(turtlebot3): add FusionCore + icp_odometry feedback loop demo
Adds a TurtleBot3 Gazebo Harmonic demo (ref issue #1418 Option A) where
FusionCore (wheel + IMU UKF) and icp_odometry tighten each other in a
feedback loop: FusionCore's stable odom frame serves as the scan-match
initial guess via guess_frame_id, and the ICP result feeds back into
FusionCore as a second velocity source. rtabmap SLAM consumes the ICP
output for mapping/loop-closure. Nav2 uses /fusion/odom.
Files added:
launch/turtlebot3/fusioncore/turtlebot3_fusioncore_icp.launch.py
launch/turtlebot3/fusioncore/turtlebot3_sim_fusioncore_icp_demo.launch.py
launch/turtlebot3/fusioncore/README.md
params/fusioncore_tb3.yaml
params/fusioncore_tb3_bridge.yaml (TF-conflict-free bridge)
params/turtlebot3_fusioncore_icp_nav2_params.yaml
* demo(turtlebot3): add FusionCore demo entry to rtabmap_demos README
* fix(fusioncore-demo): remove Odom/ResetCountdown from rtabmap, strip GPS params
* docs(demos): add FusionCore icp_odometry demo GIF to README
* fix(fusioncore-demo): add imu.frame_id override and docking_server params
* fix(fusioncore-demo): remove docking_server from nav2 params
* Fixing turtlebot3 demos on Jazzy
* Updated humble
* Fixed Twist->TwistStamped. Fixed rviz2 crashing because missing docking server
* fix(fusioncore-demo): tune IMU noise for Gazebo sim, add real-hardware comments
* docs(fusioncore-demo): add sim vs real hardware note to README
---------
Co-authored-by: manankharwar <[email protected]>
Co-authored-by: matlabbe <[email protected]>
* Try fixing qt6-qt5 rtabmap-rviz-plugins build issue. Disabled rtabmap-costmap-plugins for rolling.
* fixed ci
* Seems to fix the issue
* fixed rtabmap_python test failing
* Added stale_update_detection parameter to detect if upstream is stale for too long, trigger new map
* On too small guess motion, still publish odom topic along tf
* Added parameters when guess odom topic is sent
* fixed stale disabled logic
* Added info when odometry update is skipped.
* Making vo publishing the expected output data even if odometry update was skip by not enough motion
* fixed skipping odom
* refactored tooOldPreviousData to work with guess
* renamed stale_update_detection to staleness_factor
* cleanup
* reverting a change
---------
Co-authored-by: mathieu86 <[email protected]>