!本文仅做个人使用参考,没有太多实用意义,谨慎阅读

原文csdn参考链接

有关px4的内容需要开启代理

git clone https://github.com/PX4/PX4-Autopilot.git --recursive
cd PX4-Autopilot/ 
git submodule update --init --recursive
bash ./Tools/setup/ubuntu.sh

重启系统后开始编译

make px4_sitl_default gazebo

因为需要版本v1.12.3,更换版本后重新编译

# 清理以下第一次的编译内容
make distclean
# 切换分支
git checkout v1.12.3
# 再次编译
make px4_sitl_default gazebo

添加环境变量(不重要,一般都是打开px4文件夹操作)

source ~/PX4-Autopilot/Tools/simulation/gazebo-classic/setup_gazebo.bash ~/PX4-Autopilot ~/PX4-Autopilot/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot/Tools/simulation/gazebo-classic/sitl_gazebo-classic

安装mavros

sudo apt-get install ros-noetic-mavros ros-noetic-mavros-extras ros-noetic-mavros-msgs
# 运行如下命令,必定会失败因为没有端口连接,目前只是仿真
roslaunch mavros px4.launch
# 安装GeographicLib数据集,虽然没啥用,也可以不装试一试
sudo /opt/ros/kinetic/lib/mavros/install_geographiclib_datasets.sh

以上配置完成后即可按照gitee中进行第一次仿真

由于最新的提交尚有bug存在,建议从这个链接进行访问,然后down下来zip格式,放在ws/src下进行编译。

1. 打开QGC。

2. 第一个终端进入PX4,启动jmavsim的图形界面:

cd PX4-Autopilot
make px4_sitl jmavsim

注: 可以在该终端使用指令起飞/降落无人机,并且改变无人机起飞默认高度:

commander takeoff  #起飞
commander land     #降落
param set MIS_TAKEOFF_ALT 1.5   #设置默认飞行高度为1.5米

3. 第二个终端启动mavros:

roslaunch mavros apm.launch fcu_url:=udp://:14540@localhost:14557

4. 第三个终端进入ego_planner_for_visual工程,启动launch文件,打开rviz图形界面:

cd ego_planner_for_visual
catkin_make
source devel/setup.bash
roslaunch ego_planner simple_run.launch

5. 在第一个终端中起飞无人机,在QGC中切换飞行模式为offboard,在rviz图形界面中点击“2D Nav Goal”即可实现避障飞行。

...
以下部分即可参考工程中的README