使用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
相关推荐
Robot_Nav9 小时前
Kinodynamic Lazy ThetaStar:面向实时机器人导航的两阶段运动学路径规划算法
算法·机器人·lazy theta
全栈开发圈10 小时前
新书速览|机器人系统开发与优化:算法、感知与控制策略
算法·目标跟踪·机器人
北京盟通科技官方账号10 小时前
拒绝返工,应对挑战:fe.screen-sim 虚拟调试技术深度问答
人工智能·机器人·具身智能·虚拟调试·agv安全·工业产线·现场工程师
瑞璐塑业peek注塑10 小时前
基于PEEK+碳纤维注塑加工髋关节,助力外骨骼机器人实现全面跃升
人工智能·机器人
千流出海11 小时前
盛视科技竞得法国Aldebaran机器人资产能否撑起第二增长曲线?
机器人·千流出海·盛视科技
沧海一颗粟11 小时前
模型训练1----关节数据
机器人·isaaclab
暮光62911 小时前
Intel RealSense相机AlignDepthToColor卡顿问题
机器人·自动驾驶
鲁邦通物联网11 小时前
架构实战:工业级 机器人梯控 节点的选型指标与高可用状态机设计
机器人·机器人梯控·agv梯控·非侵入式采集·机器人乘梯·机器人自主乘梯·agv机器人梯控
梦想的旅途212 小时前
自动化执行器:如何通过 RPA 逻辑实现高可靠的 API 调度?
microsoft·机器人·自动化·企业微信