【无人机自主导航10 自主导航】PX4仿真环境下RGBD+港科大Fast-Planner旋翼无人机自主导航

发布于 2021-04-05  5717 次阅读


以开源项目XTDrone、Promethus、px4_fast_planner等为例,自行迁移修整的基于RGBD深度相机与港科大的Fast-Planner路径优化项目,实现无人机的自主导航飞行与避障。

一、环境及依赖

1.1 仿真环境

项目 配置
平台 Ubuntu18.04
硬件 8G i5 NVIDA GTX1080T
ROS melodic
mavros

2.1 依赖包

二、配置环境与测试

#######

  • Fast-Planner
  • mavros_controllers

#######

Ubuntu 18 + ROS Melodic

克隆功能包到 ~/catkin_ws/src

cd ~/catkin_ws/src
git clone https://github.com/mzahana/px4_fast_planner.git

使用安装文件夹中的setup.sh脚本轻松地设置所有依赖项:

cd ~/catkin_ws/src/px4_fast_planner/install
./setup.sh

脚本会询问是否要安装PX4。如果在机载计算机上进行安装,则可能希望跳过此步骤,此时只需在请求时将n传递给setup.sh脚本

cd ~/catkin_ws/src/px4_fast_planner/install
./setup.sh
  • NOTE: you may need to provide credentials to sudo when prompted, for the script to continue

setup.sh脚本安装PX4 v1.10.1,mavros_controllers软件包和修改后的Fast-Planner软件包。

模拟运行打开终端,执行如下命令:

roslaunch px4_fast_planner px4_fast_planner.launch

注意!第一次运行模拟时,可能要花一些时间下载一些gazebo模型,推荐在前文配置的时候直接配置好。

向/move_base_simple/goal主题发布一条消息,命令无人机飞到目标姿态:

rostopic pub --once /move_base_simple/goal geometry_msgs/PoseStamped "header:
  seq: 0
  stamp:
    secs: 0
    nsecs: 0
  frame_id: ''
pose:
  position:
    x: 19.0
    y: 15.0
    z: 3.0
  orientation:
    x: 0.0
    y: 0.0
    z: 0.0
    w: 1.0"

三、无人机自主导航

节点图如下:

file

四、最终飞行效果

4.1 穿越凉亭

一次
file

二次

file

4.2 障碍物避障与路径优化

file

4.3 视频——室外飞行避障

4.4 视频——室内飞行避障

参考文献

[1] Github px4_fast_planner
[2] Ubuntu18.04配置搭建基于Gazebo的虚拟仿真平台(Px4):无人机(UAV)、无人车等模拟实验平台
[3] 仿真平台基础配置(PX4 1.11版)