无人机模型选择这个standard_vtol即可。
把之前启动普通四旋翼的px4 gazebo仿真的launch文件中的无人机模型替换掉即可
<?xml version="1.0"?>
<launch>
<!-- MAVROS posix SITL environment launch script -->
<!-- launches MAVROS, PX4 SITL, Gazebo environment, and spawns vehicle -->
<!-- vehicle pose -->
<arg name="x" default="0"/>
<arg name="y" default="0"/>
<arg name="z" default="0"/>
<arg name="R" default="0"/>
<arg name="P" default="0"/>
<arg name="Y" default="0"/>
<!-- vehicle model and world -->
<arg name="est" default="ekf2"/>
<arg name="vehicle" default="iris"/>
<arg name="world" default="$(find mavlink_sitl_gazebo)/worlds/empty.world"/>
<arg name="sdf" default="$(find mavlink_sitl_gazebo)/models/iris_downward_camera/iris_downward_camera.sdf"/>
<!-- gazebo configs -->
<arg name="gui" default="true"/>
<arg name="debug" default="false"/>
<arg name="verbose" default="false"/>
<arg name="paused" default="false"/>
<arg name="respawn_gazebo" default="false"/>
<!-- MAVROS configs -->
<arg name="fcu_url" default="udp://:24540@localhost:34580"/>
<arg name="respawn_mavros" default="false"/>
<!-- PX4 configs -->
<arg name="interactive" default="true"/>
<!-- PX4 SITL and Gazebo -->
<include file="$(find px4)/launch/posix_sitl.launch">
<arg name="x" value="$(arg x)"/>
<arg name="y" value="$(arg y)"/>
<arg name="z" value="$(arg z)"/>
<arg name="R" value="$(arg R)"/>
<arg name="P" value="$(arg P)"/>
<arg name="Y" value="$(arg Y)"/>
<arg name="world" value="$(arg world)"/>
<arg name="vehicle" value="$(arg vehicle)"/>
<arg name="sdf" value="$(arg sdf)"/>
<arg name="gui" value="$(arg gui)"/>
<arg name="interactive" value="$(arg interactive)"/>
<arg name="debug" value="$(arg debug)"/>
<arg name="verbose" value="$(arg verbose)"/>
<arg name="paused" value="$(arg paused)"/>
<arg name="respawn_gazebo" value="$(arg respawn_gazebo)"/>
</include>
<!-- MAVROS -->
<include file="$(find mavros)/launch/px4.launch">
<!-- GCS link is provided by SITL -->
<arg name="gcs_url" value=""/>
<arg name="fcu_url" value="$(arg fcu_url)"/>
<arg name="respawn_mavros" value="$(arg respawn_mavros)"/>
</include>
</launch>
然后重命名为mavros_posix_sitl_maxitest_vtol.launch,并通过下面命令启动
roslaunch px4 mavros_posix_sitl_maxitest_vtol.launch
此时再打开QGC
点这里的take off可以使垂起无人机起飞
此时在QGC地图上选好想让无人机飞到的地图点,并鼠标左键点击,会出现三个选项,选择Go to location
QGC下方会出现个滑窗,让你确认,往右滑动滑窗确认之后,垂起无人机就会转头开始飞往所选择的地图点
在无人机飞到地图点的过程中(也可以到达地图点悬停后),我们依旧可以继续左键点击选择新的地图点,确认之后无人机会立马调转航向飞向最新的地图点,不再飞向之前的地图点。
下图就是飞的过程中选择新的地图点,可以看到一个明显的折线轨迹
想垂起返航我们可以点这里的return,并右滑滑窗确认,垂起会先原地爬升到30米,再往回飞到起飞点上方,然后垂直降落,并自动上锁。