任务模式(多旋翼飞行器)
任务模式 使载具执行预定义的自主 使命 (飞行计划)上传到飞行控制器。任务通常由地面控制站(GCS)应用程序创建和上传,如 QGroundControl (QGC)。
信息
说明
飞行任务通常是在地面控制站(如 QGroundControl)并在发射前上传。它们也可以由开发人员应用程序接口创建和/或在飞行中上传。
个人 任务指令 是以适合多旋翼飞行特性的方式处理的(例如悬停是以 悬停 ).
信息
任务会上载到需要插入的 SD 卡上 之前 启动自动驾驶仪
在高级模式下,所有类型的载具在任务模式下的表现都是一样的:
如果没有存储任务,或 PX4 已执行完所有任务命令,或 任务不可行:
- 如果飞行,载具将保持不动。
- 如果着陆,载具将等待。
如果任务已存储,且 PX4 正在飞行,它将执行 任务/飞行计划 从当前步开始。
- A
起飞
项被视为普通航点。
- A
如果任务已存储且 PX4 已着陆:
- PX4 将执行 任务/飞行计划.
- 如果特派团没有
起飞
项,然后 PX4 将飞行器飞行到最低高度,然后再执行当前步骤的剩余飞行计划。
如果未存储任务,或 PX4 已执行完所有任务命令:
- 如果飞行,载具将保持不动。
- 如果着陆,载具将等待。
您可以手动更改当前的任务指令,方法是在 QGroundControl.
信息
如果您有 跳转到项目 命令,移动到另一个项目将 不 重置循环计数器。这意味着,如果将当前任务命令改为 1,就不会完全重新启动任务。
只有在解除载具上膛或上传新任务时,任务才会重置。
TIP
要在载具着陆后自动解除警报,请在 QGroundControl 前往 载具设置与安全,导航至 降落模式设置 并选中标有 之后解除.输入着陆后等待解除载具上膛的时间。
从任务模式切换到任何其他模式(如 保持模式 或 位置模式),并通过切换回任务模式来恢复。如果飞行器在暂停时没有捕捉图像,那么在恢复时它将从它的 当前位置 驶向与最初驶向相同的航点。如果飞行器正在捕捉图像(有相机触发项目),则会从当前位置朝最后经过的航点(暂停前)前进,然后以相同的速度和相同的相机触发行为重走路径。这可确保在勘测/摄像任务中捕捉到计划的路径。任务可以在飞行器暂停时上传,在这种情况下,当前活动任务项将被设置为 1。
信息
当任务暂停而飞行器上的摄像头正在触发时,PX4 会将当前的活动任务项目设置为前一个航点,这样当任务重新开始时,飞行器就会重新回到上一个任务航段。此外,PX4 还会存储上次用于速度设置和摄像机触发的任务项目(来自已覆盖的任务计划),并在重新开始任务时重新应用这些设置。
警告
在切换到任何遥控模式之前,请确保油门杆不为零(否则载具会崩溃)。我们建议您在切换到任何其他模式之前将控制杆置于中心位置。
有关任务规划的更多信息,请参阅
任务可行性检查
PX4 在上传任务和首次上膛飞行器时会进行一些基本的正确性检查,以确定任务是否可行。如果任何检查失败,都会通知用户,并且无法启动任务。
最重要的检查子集如下:
- 第一个任务物品离载具太远 (MIS_DIST_1WP)
- 任何任务项目与计划或安全地理围栏相冲突
QGroundControl 支持
QGroundControl 除飞行控制器提供的支持外,该系统还提供额外的 GCS 级任务处理支持。
欲了解更多信息,请参阅
任务参数
任务行为受一系列参数的影响,其中大部分参数在 参数参考 > 任务.下面列出了很小一部分。
一般参数:
参数 | 说明 |
---|---|
NAV_RCL_ACT | 遥控失效保护模式(载具在失去遥控连接时的操作)--例如,进入保持模式、返回模式、终止等。 |
com_rc_override | 控制多旋翼飞行器(或 多旋翼 模式下的 VTOL)上的摇杆移动是否在以下情况下将控制权交还给驾驶仪 位置模式.可分别在自动模式和离板模式下启用,默认情况下在自动模式下启用。 |
com_rc_stick_ov | 杆的移动量会导致过渡到 位置模式 (如果 com_rc_override 已启用)。 |
相关参数 任务可行性检查:
参数 | 说明 |
---|---|
MIS_DIST_1WP | 如果当前航点距离原点的距离大于此值,则不会启动任务。如果值为 0 或更小,则禁用。 |
FW_LND_ANG | 最大着陆斜角。 |
mis_tkoo_land_req | 任务起飞/着陆要求配置。FW 和 VTOL 的默认设置都是 2,这意味着任务必须包含着陆。 |
任务指令
在任务模式下,PX4 可接受以下 MAVLink 任务指令(部分指令可在任务模式下执行 注意事项在列表后给出)。除非另有说明,否则均按照 MAVLink 规范中的定义执行。
任务项目:
- mav_cmd_nav_waypoint
- 参数3 (飞越)会被忽略。如果 参数 1 (time_inside) > 0.
- mav_cmd_nav_loiter_unlim
- mav_cmd_nav_loiter_time
- mav_cmd_nav_land
- mav_cmd_nav_takeoff
- mav_cmd_nav_loiter_too_alt
- mav_cmd_doo_jump
- mav_cmd_nav_roi
- mav_cmd_doo_set_roi
- mav_cmd_doo_set_roi_location
- mav_cmd_doo_set_roi_wpnext_offset
- mav_cmd_doo_set_roi_none
- mav_cmd_doo_change_speed
- mav_cmd_doo_set_home
- mav_cmd_doo_set_servo
- mav_cmd_doo_land_start
- mav_cmd_doo_trigger_control
- mav_cmd_doo_digicam_control
- mav_cmd_doo_mount_configure
- mav_cmd_doo_mount_control
- mav_cmd_image_start_capture
- mav_cmd_image_stop_capture
- mav_cmd_video_start_capture
- mav_cmd_video_stop_capture
- mav_cmd_doo_set_cam_trigg_dist
- mav_cmd_doo_set_cam_trigg_interval
- mav_cmd_set_camera_mode
- mav_cmd_nav_delay
- mav_cmd_nav_return_too_launch
- mav_cmd_doo_control_video
- mav_cmd_doo_gimbal_manager_pitchyaw
- mav_cmd_doo_gimbal_manager_configure
- mav_cmd_oblique_survey
- mav_cmd_doo_set_camera_zoom
- mav_cmd_doo_set_camera_focus
- mav_cmd_nav_vtol_takeoff
MAV_CMD_NAV_VTOL_TAKEOFF.param2
(过渡航向)将被忽略。相反,下一个航点的航向将被用作过渡航向。
地理围栏定义
- mav_cmd_nav_fence_return_point
- mav_cmd_nav_fence_polygon_vertex_inclusion
- mav_cmd_nav_fence_polygon_vertex_exclusion
- mav_cmd_nav_fence_circle_inclusion
- mav_cmd_nav_fence_circle_exclusion
集结点
信息
如果发现遗漏或不正确的信息,请添加问题报告或 PR。 ::: info:
- PX4 会解析上述信息,但这些信息并非必需 行动 例如,有些信息是针对载具类型的。例如,有些信息是针对特定载具类型的。
- PX4 不支持用于任务指令的本地帧(如:"......")。 mav_frame_local_ned).
- 并非所有信息/命令都能通过 QGroundControl.
- 随着信息的添加,列表可能会过时。您可以通过检查代码来查看当前的设置。支持
MavlinkMissionManager::parse_mavlink_mission_item
于 /src/modules/mavlink/mavlink_mission.cpp.
圆形转弯航点间轨迹
PX4 希望从上一个航点沿直线到达当前目标(它不会在航点之间规划任何其他类型的路径--如果您需要,可以通过添加额外的航点来模拟)。
多旋翼 载具将改变 速度 在接近或离开航点时,根据 jerk-limited 调整。载具将沿着平滑的圆形曲线驶向下一个航点(如果定义了航点),该曲线由接受半径 (NAV_ACC_RAD).下图显示了你可能想到的路径。
载具进入接受半径后,立即切换到下一个航点 (NAV_ACC_RAD).
任务起飞
通过添加一个 起飞
任务项目的地图(这相当于 mav_cmd_nav_takeoff MAVLink 命令)。
在任务执行过程中,这将使飞行器垂直上升到 "起飞高度 "中规定的最低起飞高度。 误起飞高度 参数,然后朝任务项目中定义的 3D 位置前进。
如果启动的飞行任务中没有起飞任务项目,飞行器将上升到最低起飞高度,然后进入第一个起飞项目。 航点
任务项目。
如果飞行器在任务开始时已经在飞行,则起飞任务项目将被视为普通航点。