ego-planner-ros2核心算法解析

我们可以先看项目的组成

一、核心文件位置框架

复制代码
src/planner/
│
├── plan_manage/src/
│   ├── planner_manager.cpp    ← 【总调度】调用前端和后端
│   └── ego_replan_fsm.cpp     ← 状态机,决定什么时候重规划
│
├── path_searching/src/
│   └── dyn_a_star.cpp         ← 【前端】A* 搜索算法
│
└── bspline_opt/src/
    ├── bspline_optimizer.cpp  ← 【后端】轨迹优化
    └── uniform_bspline.cpp    ← B-spline 曲线表示

接着我们从启动脚本single_run_in_sim.launch开是往各个核心算法代码开始发散学习:

二、single_run_in_sim脚本调用

主要调用部分:

1.map_generator_node

2.mockamap_node

3.advanced_param_include

4.traj_server_node

5.simulator_include

解析以上:
1. 地图部分:

map_generator_node 和 mockamap_node 都是地图部分 single_run_in_sim脚本中二选一开启 如果你要测试无人机穿越森林场景 用 map_generator_node;如果要测试复杂室内/迷宫环境 用 mockamap_node

2.advanced_param_include(轨迹规划的核心):

include启动了advanced_param.launch.py

3.traj_server_node:

我们看看调用源代码:

cpp 复制代码
traj_server_node = Node(
    package='ego_planner',           # 所属功能包
    executable='traj_server',        # 可执行文件名
    name=['drone_', drone_id, '_traj_server'],  # 节点名,如 drone_0_traj_server
    output='screen',                 # 日志输出到终端
    
    remappings=[                     # 话题重映射
        ('position_cmd', ['drone_', drone_id, '_planning/pos_cmd']),
        # 原话题 position_cmd → drone_0_planning/pos_cmd
        
        ('planning/bspline', ['drone_', drone_id, '_planning/bspline'])
        # 原话题 planning/bspline → drone_0_planning/bspline
    ],
    
    parameters=[                     # 参数设置
        {'traj_server/time_forward': 1.0}  # 轨迹前向预测时间 1秒
    ]
)

包名: ego_planner**(但是文件夹名为plan_manage,具体名称由package.xml决定)**

可执行文件名称: traj_server (作为 轨迹服务 并非轨迹规划)

**节点名称:**drone_0_traj_server

相关推荐
M-Robots echo11 小时前
M-CLAW,面向具身智能的机器人任务编排开发框架
机器人·ros·鸿蒙·开源社区·m-robots
Axis tech13 小时前
无标记点动作捕捉 vs 惯性动作捕捉:专业从业者需要了解这些要点
科技·机器人
M-Robots echo13 小时前
王成录:机器人产业下一个十年,拼的是 “系统级智能化” 而非单点算法堆叠
机器人·ros·鸿蒙·开源社区·m-robots·王成录
leagsoft_100319 小时前
浙江某机器人创新企业:一体化终端、数据与身份安全实践
安全·机器人
M-Robots echo19 小时前
M-Robots ROS 兼容适配方案,实现存量机器人项目低成本迁移
机器人·ros·鸿蒙·开源社区·m-robots
拓维运动科技21 小时前
机器人动态模拟训练台:从并联机构原理到工程化落地的技术全解
机器人·六自由度运动模拟平台·六自由度定制厂家·南京拓维运动科技·机器人动态模拟训练平台
BOBY_KEJI1 天前
技术科普:AI迎宾机器人在超大型展馆的应用原理与功能优势
人工智能·机器人
具身智能进化论1 天前
具身智能率先进入汽车工厂,产业价值将从哪些场景显现?
大数据·人工智能·机器人·自动化·工厂方法模式
HAHAXX81 天前
RPA机器人开发全解:Copilot+大模型接口集成,从源码到架构的深度拆解
机器人·copilot·rpa
BFT白芙堂1 天前
星海图 R1Pro 机器人赋能DemoSpeedup 算法落地验证研究
人工智能·学习·算法·机器人·具身智能·franka