运行多机前,确保你的单机运行没有问题。
Px4源码中已经包含了二机的仿真,运行以下命令:
roslaunch px4 multi_uav_mavros_sitl.launch
修改Launch相关代码,实现四机仿真:
模仿单机UAV1的写法,完成UAV1-4的编写。
<!— UAV1 —>
<group ns=“uav1”>
<!— MAVROS and vehicle configs —>
<arg name=“ID” value=“1”/>
<!—<arg name=“fcu_url” default=“udp://:14540@localhost:14557”/>—>
<arg name=“fcu_url” default=“udp://:14540@127.0.0.1:14557”/>
<!— PX4 SITL and vehicle spawn —>
<include file=“$(find px4)/launch/single_vehicle_spawn.launch”>
<arg name=“x” value=“1”/>
<arg name=“y” value=“0”/>
<arg name=“z” value=“0”/>
<arg name=“R” value=“0”/>
<arg name=“P” value=“0”/>
<arg name=“Y” value=“0”/>
<arg name=“vehicle” value=“$(arg vehicle)”/>
<arg name=“rcS” value=“$(find px4)/posix-configs/SITL/init/$(arg est)/$(arg vehicle)_1”/>
<arg name=“mavlink_udp_port” value=“14560”/>
<arg name=“ID” value=“$(arg ID)”/>
</include>
<!— MAVROS —>
<include file=“$(find mavros)/launch/px4.launch”>
<arg name=“fcu_url” value=“$(arg fcu_url)”/>
<arg name=“gcs_url” value=“”/>
<arg name=“tgt_system” value=“$(arg ID)”/>
<arg name=“tgt_component” value=“1”/>
</include>
</group>
运行多机仿真mavros
roslaunch px4 multi_uav_mavros_sitl.launch
- 1
修改基础的offboard节点,添加发布节点为UAV1-4,并完成编译
catkin_make
source devel/setup.sh
- 1
- 2
- 3
运行offboard
rosrun offboard offboard
- 1
很多东西还没有理解
多机之间的飞行策略有问题,延时太大等等等,各种节点的操作处理,没有明白。
评论(0)
您还未登录,请登录后发表或查看评论