使用SLAM Toolbox 定位模式进行nav导航

写一个mapper_params_localization.yaml配置文件

复制代码
slam_toolbox:
  ros__parameters:
    # TF 相关
    odom_frame: odom
    map_frame: map
    base_frame: base_footprint
    scan_topic: /scan

    mode: localization       # 关键:纯定位
    map_file_name: /home/xxx/slam_toolbox_map   # 不写后缀,自动找 .posegraph + .data

    # 可选:启动时初始位姿
    # map_start_pose: [x, y, yaw]

编写slam_toolbox_localization.launch.py

复制代码
# slam_toolbox_localization.launch.py
# 放在你的包 my_slam_pkg/launch/ 目录下

from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import LaunchConfiguration
from launch.actions import DeclareLaunchArgument
from pathlib import Path


def generate_launch_description():
    # 支持从命令行传入参数(比如 map_file / use_sim_time)
    use_sim_time = LaunchConfiguration('use_sim_time')
    params_file = LaunchConfiguration('slam_params_file')

    declare_use_sim_time = DeclareLaunchArgument(
        'use_sim_time',
        default_value='false',
        description='Use simulation (Gazebo) clock if true'
    )

    declare_params_file = DeclareLaunchArgument(
        'slam_params_file',
        default_value=str(
            Path(__file__).parent.parent / 'config' / 'mapper_params_localization.yaml'
        ),
        description='Full path to the slam_toolbox localization parameter file'
    )

    slam_toolbox_node = Node(
        package='slam_toolbox',
        executable='sync_slam_toolbox_node',    # 或 online_async_slam_toolbox_node,看你喜欢哪种
        name='slam_toolbox',
        output='screen',
        parameters=[
            params_file,
            {'use_sim_time': use_sim_time}
        ]
    )

    return LaunchDescription([
        declare_use_sim_time,
        declare_params_file,
        slam_toolbox_node
    ])

启动服务

复制代码
ros2 launch my_slam_pkg slam_toolbox_localization.launch.py \
  use_sim_time:=True \
  slam_params_file:=/home/your_name/my_slam_pkg/config/mapper_params_localization.yaml
相关推荐
PascalXie9 小时前
服务机器人避障用的深度相机,主流选型有哪些?
计算机视觉·机器人
鲁邦通物联网10 小时前
机器人梯控防夹避让设计:高峰期人机混行状态机解析
机器人·机器人梯控·agv梯控·机器人乘梯·机器人自主乘梯
倍利福猎头公司官方账号11 小时前
2026具身智能赛道还火热吗?机器人人选该如何思考下半年的工作机会?
人工智能·面试·职场和发展·机器人·求职招聘
星云API技术支持13 小时前
企业微信二次开发项目实战:从实例接入到消息收发与 Webhook 回调的完整链路
机器人·yapi·企业微信
星云API技术支持15 小时前
企业微信二次开发如何实现外部群自动化?从消息监听到接口调用完整流程
机器人·yapi·企业微信
骑着蜗牛撵大象32715 小时前
微信远程指挥电脑:用Hermes Agent构建本地AI执行引擎实战指南
机器人·自动化·es
硅谷秋水16 小时前
RoboChallenge:具身策略的大规模真实机器人评估
计算机视觉·语言模型·机器人
Axis tech17 小时前
Haption Virtuose,为遥操作机器人提供精准力反馈
科技·机器人
星云API技术支持19 小时前
企业微信二次开发消息收发实战:单聊、群聊与事件消息如何统一处理
机器人·yapi·企业微信
河图洛水19 小时前
Behavior-1k:2026 挑战赛纯仿真 benchmark
人工智能·机器人