前言
PX4-Avoidance是给予PX4和MAVROS的无人机避障功能包,github地址:
https://github.com/PX4/PX4-Avoidance
环境:
ubuntu18.04
ROS Melodic
PX4 1.12.3
一、安装依赖
安装依赖
sudo apt install ros-melodic-pcl-ros
sudo apt install ros-melodic-stereo-image-proc ros-melodic-image-view
sudo apt install libpcl1 ros-melodic-octomap-*
创建工作空间(已有工作空间可以忽略)
mkdir -p ~/mavros_ws/src
cd ~/mavros_ws/src
catkin_init_workspace
cd ~/mavros_ws/
catkin_make
然后
gedit .bashrc
将source ~/mavros_ws/devel/setup.bash
加到.bashrc
中并保存然后source ~/.bashrc
然后执行
echo $ROS_PACKAGE_PATH
如果会显示工作空间路径,说明上面的步骤执行正确
mavros_ws/src:以及ROS安装路径/opt/ros/melodic/share
下载源码
cd ~/mavros_ws/src
git clone https://github.com/PX4/avoidance.git
编译
cd ~/mavros_ws
catkin_make
修改.bashrc
gedit .bashrc
在最后添加如下:
source ~/mavros_ws/devel/setup.bash
source ~/Firmware/Tools/setup_gazebo.bash ~/Firmware/ ~/Firmware/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware/Tools/sitl_gazebo
export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:~/mavros_ws/src/avoidance/avoidance/sim/models:~/catkin_ws/src/avoidance/avoidance/sim/worlds
测试
修改~/mavros_ws/src/avoidance/avoidance/launch/avoidance_sitl_mavros.launch
,将把gui设为true,否则不会显示Gazebo
<arg name="gui" default="true"/>
在home目录打开终端,执行:
我一开始执行下面的命令进行仿真时
roslaunch local_planner local_planner_stereo.launch
出现报错:
Planner abort: missing required data
可能是由于无人机模型有问题
换一个模型用下面这个命令启动仿真就可以了
roslaunch local_planner local_planner_sitl_3cam.launch
出现下图页面说明启动正常
可以在下图复选框选择图像显示类型
然后先执行:
rosrun mavros mavsys mode -c OFFBOARD
再执行:
rosrun mavros mavsafety arm
无人机会切换到offboard并解锁起飞,然后
在rviz里面通过2D Nav Goal设置一个目标点,无人机会自动规划并避障飞行到那个点。
可以通过rqt_reconfigure
设置无人机飞行高度等参数,默认会自动打开,如果没有打开可以运行下面命令打开
rosrun rqt_reconfigure rqt_reconfigure
文章出处登录后可见!
已经登录?立即刷新