FastPlanner
来源: https://github.com/HKUST-Aerial-Robotics/Fast-Planner
Fast-Planner旨在帮助四旋翼飞行器在复杂的未知环境中实现快速飞行。它包含一套丰富的、精心设计的规划算法,并提供了基础代码框架和算法,支持多个流行的开源无人机项目,包括ego-planner、 FUEL和RACER等。
消息:
作者:香港科技大学空中机器人课题组周博宇、沈少杰,浙江大学FAST实验室高飞。
完整视频: video1、 video2、 video3。IEEE Spectrum 上已报道了有关此项工作的演示:page1、page2、 page3 (在页面中搜索_HKUST )。_
要在几分钟内运行此项目,请查看快速入门。查看其他部分以获取更多详细信息。
如果此项目对您有帮助,请点赞⭐。我们非常努力地开发和维护它😁😁。
目录
1. 快速入门
该项目已经在 Ubuntu 18.04(ROS Melodic)和 20.04(ROS Noetic)上进行了测试。
首先,您应该安装nlopt v2.7.1:
git clone -b v2.7.1 https://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make install
接下来,您可以运行以下命令来安装其他所需的工具:
sudo apt-get install libarmadillo-dev
然后简单地克隆并编译我们的包(这里使用 ssh):
cd ${YOUR_WORKSPACE_PATH}/src
git clone https://github.com/HKUST-Aerial-Robotics/Fast-Planner.git
cd ../
catkin_make
您可以查看详细的项目设置说明。编译完成后,您可以通过以下方式启动可视化:
source devel/setup.bash && roslaunch plan_manage rviz.launch
并开始模拟(在新终端中运行):
source devel/setup.bash && roslaunch plan_manage kino_replan.launch
您将在 中找到随机地图和无人机Rviz。您可以使用该工具选择无人机要到达的目标。此处2D Nav Goal展示了一个示例模拟。
2. 算法与论文
该项目包含一系列用于四旋翼飞行器的稳健且计算高效的算法:
- 运动动力学路径搜索
- 基于B样条的轨迹优化
- 拓扑路径搜索和路径引导优化
- 感知意识规划策略(待出版)
这些方法在下面列出的论文中有详细说明。
如果您在研究中使用此项目,请至少引用我们的一篇论文:Bibtex。
- 实现快速自主飞行的稳健高效四旋翼飞行器轨迹生成,周博宇、高飞、王璐琪、刘楚豪和沈少杰,IEEE 机器人与自动化快报( RA-L),2019 年。
- 使用基于引导梯度优化和拓扑路径的鲁棒实时无人机重新规划,周博宇、高飞、潘杰和沈少杰,IEEE 国际机器人与自动化会议( ICRA),2020 年。
- RAPTOR:四旋翼快速飞行的稳健感知轨迹重规划,周博宇、潘杰、高飞和沈少杰,IEEE 机器人学报( T-RO)。
所有规划算法以及其他关键模块(例如映射)都在fast_planner中实现:
- plan_env:在线地图构建算法。它以深度图像(或点云)和相机姿态(里程计)对作为输入,进行光线投射以更新概率体积地图,并为规划系统构建欧氏有向距离场(ESDF)。
- path_searching:前端路径搜索算法。目前,它包含一个动态路径搜索算法,该算法遵循四旋翼飞行器的动力学原理。它还包含一个基于采样的拓扑路径搜索算法,用于生成多个拓扑结构独特的路径,从而捕捉三维环境的结构。
- bspline:基于 B 样条的轨迹表示的实现。
- bspline_opt:使用 B 样条轨迹的基于梯度的轨迹优化。
- active_perception:感知规划策略,使四旋翼飞行器能够主动观察并避开未来出现的未知障碍物。
- plan_manage:调度和调用映射与规划算法的高级模块。其中包含启动整个系统的接口以及配置文件。
除了文件夹fast_planner之外,还使用轻量级uav_simulator进行测试。



