首页
/ mpl_ros 项目安装与使用教程

mpl_ros 项目安装与使用教程

2024-09-14 13:11:46作者:凌朦慧Richard

1. 项目目录结构及介绍

mpl_ros 是一个基于 ROS 的轨迹规划库的封装,主要用于无人机等移动机器人的轨迹规划。项目的目录结构如下:

mpl_ros/
├── DecompROS/
├── motion_primitive_library/
├── mpl_external_planner/
├── mpl_test_node/
├── planning_ros_msgs/
├── planning_ros_utils/
├── .gitignore
├── .gitmodules
├── LICENSE
├── README.md
└── wercker.yml

目录介绍

  • DecompROS: 用于凸分解和可视化的工具。
  • motion_primitive_library: 轨迹规划的后端库,支持多种环境下的轨迹规划。
  • mpl_external_planner: 基于 motion_primitive_library 的外部规划器。
  • mpl_test_node: 示例 ROS 节点,用于演示和测试规划器。
  • planning_ros_msgs: 用于存储、可视化和通信的 ROS 消息。
  • planning_ros_utils: 与 motion_primitive_library 接口的 ROS 工具,包括地图和 Rviz 插件。
  • .gitignore: Git 忽略文件。
  • .gitmodules: Git 子模块配置文件。
  • LICENSE: 项目许可证文件。
  • README.md: 项目介绍和使用说明。
  • wercker.yml: Wercker CI 配置文件。

2. 项目的启动文件介绍

mpl_ros 项目提供了多个启动文件,用于不同的规划器和场景。以下是一些主要的启动文件及其功能介绍:

2.1 mpl_test_node/launch/map_planner_node/test.launch

  • 功能: 在体素地图中进行简单测试,使用内置数据生成轨迹。
  • 使用方法:
    cd /mpl_test_node/launch/map_planner_node
    roslaunch rviz.launch
    roslaunch test.launch
    

2.2 mpl_test_node/launch/poly_map_planner_node/test.launch

  • 功能: 在包含移动障碍物的多边形地图中进行规划。
  • 使用方法:
    cd /mpl_test_node/launch/poly_map_planner_node
    roslaunch rviz.launch
    roslaunch test.launch
    

2.3 mpl_test_node/launch/ellipsoid_planner_node/test.launch

  • 功能: 在 SE(3) 空间中使用椭球模型进行规划,使用点云作为障碍物。
  • 使用方法:
    cd /mpl_test_node/launch/ellipsoid_planner_node
    roslaunch rviz.launch
    roslaunch test.launch
    

3. 项目的配置文件介绍

mpl_ros 项目的配置文件主要用于 CMake 构建和 ROS 包的配置。以下是一些主要的配置文件及其功能介绍:

3.1 CMakeLists.txt

  • 功能: 定义项目的构建规则和依赖项。
  • 主要内容:
    • 设置 C++ 标准为 C++14。
    • 查找并链接 PCL 库。
    • 包含必要的头文件目录。

3.2 package.xml

  • 功能: 定义 ROS 包的元数据和依赖项。
  • 主要内容:
    • 包的名称、版本和维护者信息。
    • 依赖的 ROS 包和系统库。

3.3 rviz.launch

  • 功能: 启动 Rviz 可视化工具。
  • 使用方法:
    roslaunch rviz.launch
    

通过以上配置文件和启动文件,用户可以方便地构建和运行 mpl_ros 项目,进行轨迹规划的测试和应用。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
507
544
docsdocs
暂无描述
Markdown
846
5.65 K
kernelkernel
deepin linux kernel
C
33
16
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.04 K
2.46 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
835
1.28 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
842
1.68 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.16 K
848
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.25 K
1.37 K
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
502
343
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
769
400