需要具备单机仿真的前置知识。
-
修改 launch 文件:
PX4-Autopilot/launch/multi_uav_mavros_sitl.launch,仿照已有内容,增加uav3,其中fcu_url、mavlink_udp_port和mavlink_tcp_port都要 +1 避免重复,上限是10台。(注意起始坐标) -
在单机 offboard 的环境下,src 中新建
offb_node_4_circle.cpp,每架无人机都要定义 NodeHandle 以及设置Offboard enabled和Vehicle armed。 -
启动 gazebo:
cd PX4-Autopilot git submodule update --init --recursive DONT_RUN=1 make px4_sitl_default gazebo roslaunch px4 multi_uav_mavros_sitl.launch -
运行 offboard 节点:
rosrun offboard offb_node -
主程序为无人机画圆的过程,启动节点后无人机开始画圆
-
如果无人机出现碰撞,则可以调整 launch 文件中的起始位置和 cpp 文件中的 offset。