diff --git a/src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam.launch.py b/src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam.launch.py index 3e131a5..964ca70 100644 --- a/src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam.launch.py +++ b/src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam.launch.py @@ -26,6 +26,9 @@ def generate_launch_description(): pkg_dir, 'params', 'gc_navigation_slam.yaml')) slam_params_file = os.path.join( pkg_dir, 'config', 'mapper_params_localization.yaml') + # slam_toolbox 定位所需的序列化地图 + posegraph_path = os.path.join( + pkg_dir, 'maps', 'my_map.posegraph') # =============================3.slam_toolbox 定位模式(替代 AMCL)========================================= slam_toolbox_node = Node( @@ -34,8 +37,8 @@ def generate_launch_description(): name='slam_toolbox', output='screen', parameters=[slam_params_file, - {'use_sim_time': True}], - # 关键:确保 slam_toolbox 作为定位器发布 map->odom 变换 + {'use_sim_time': True, + 'map_file_name': posegraph_path}], ) # =============================4.仅启动 nav2 navigation(不含 localization)================================= diff --git a/src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml b/src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml index 80ae804..cb4c1df 100644 --- a/src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml +++ b/src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml @@ -6,7 +6,7 @@ bt_navigator: ros__parameters: use_sim_time: True global_frame: map - robot_base_frame: base_link + robot_base_frame: base_footprint odom_topic: /odom bt_loop_duration: 20 default_server_timeout: 20