(7)(7.6) 恢复任务回放

文章目录

前言

[7.6.1 配置](#7.6.1 配置)

[7.6.2 工作原理](#7.6.2 工作原理)

[7.6.3 局限性](#7.6.3 局限性)


前言

本页介绍了什么是"任务继续时后退"功能以及如何使用该功能。

Note

从 4.1 版起,Plane、Copter 和 Rover 均可使用此功能。


在某些应用或运行区域,为了消除冲突,通常会中断任务,方法是切换到另一种模式,并使飞行器偏离计划的任务路径。当准备继续执行任务时,飞行器的正常行为是直接飞行/驾驶到任务中加载的最后一个"活动"航点。这种行为如下图所示:

可以看出,这使得计划飞行任务的很大一部分要么被错误的航迹和航向覆盖,要么根本没有覆盖。这对于数据收集任务(如勘测)来说是个问题,导致需要重复执行任务。

恢复时倒带(rewind-on-resume)功能可以纠正这种行为。后退距离由操作员定义。当飞行任务恢复时,飞行器将在飞行任务中断点后方所需的距离内返回飞行任务轨道。这样,飞行器在到达最初中断的位置之前,就有足够的时间达到所需的轨道和航向。这种行为如下所示:

7.6.1 配置

通过设置 DO_SET_RESUME_REPEAT_DIST 任务项,可以启用恢复时倒带功能。有两种方法可供选择:

1) 地面控制站识别 DO_SET_RESUME_REPEAT_DIST 任务项目

  • 在任务中希望启用该功能的位置添加 DO_SET_RESUME_REPEAT_DIST 任务项;
  • 将第一列数据设置为任务恢复时的倒带距离(以米为单位)。

2) 地面控制站无法识别 DO_SET_RESUME_REPEAT_DIST 任务项目

  • 从希望启用该功能的任务点添加一个 UNKNOWN 任务项目,并将 MAVLink ID 设置为 215;
  • 将第一列数据设置为任务恢复时的倒带距离(以米为单位)。

Note

必须将 MIS_RESTART 参数设置为零,以防止飞行任务重新启动,这项功能才能起作用。

要检查飞行任务中是否正确设置了倒带距离,请监控地面控制站的信息输出。当飞行器注册该命令时,将显示以下信息: "恢复重复距离设置为 <DISTANCE> m"。

在整个任务过程中,可以设置多个 DO_SET_RESUME_REPEAT_DIST 命令。这使操作员能够在整个任务过程中改变倒带距离或开关该功能,因为在某些任务路段操纵飞行器时需要非常小心和准确。

可以通过设置距离为零的 DO_SET_RESUME_REPEAT_DIST 任务项来关闭这一功能。

Tip

在确定所需的恢复距离时,对大多数飞行器来说,一个合理的值是最小转弯半径的两倍。唯一的例外是可以原地转向的飞行器(多旋翼飞行器和某些无人车),在这种情况下,合理的距离应为 WP_RADIUS 的两倍。

7.6.2 工作原理

一旦启用,ArduPilot 将开始记录成功加载为"活动"的航点。最多可存储七个航点的历史记录。任务恢复后,将搜索任务历史记录,直到以下任一情况:

  • 在任务轨道中找到一个满足倒带距离要求的位置;
  • 找到已存储任务历史记录的终点,在这种情况下,恢复位置将是历史记录中存储的最后一个航点。

然后,飞行器将恢复到任务轨道上的该位置,并按计划继续执行任务。

Note

恢复位置会考虑高度因素。如果飞行器沿任务航迹恢复飞行,而飞行器的高度正在发生变化,则恢复位置的高度将在两个相邻航点之间进行线性插值。

Note

为防止飞行器存储模糊的历史记录并重新回到意外位置,如果使用地面控制站或脚本中的设定航点功能更改任务,则历史记录将被重置。这可以防止飞行器将任务倒带回到历史记录被重置的位置。

Note

该功能与 DO_JUMP 命令配合使用,在飞行器继续执行任务时,跳跃次数不会递增。

7.6.3 局限性

  1. 任务航段短:如果任务中的航点间距很近,而请求的后退距离大于最后通过的六个航点的距离,那么飞行器将在存储的"最旧"航点上继续前进。

  2. 曲线航点:该功能可与曲线航点一起使用。不过,由于距离计算是基于导航命令位置之间的直线,因此恢复距离的精确度会降低。

  3. 非航点导航命令:该功能适用于非航点导航命令,例如 LOITER_TURNS。但是,距离计算并不考虑这些命令中的飞行器航迹距离。以前面的例子为例,距离计算不考虑徘徊中的飞行距离。

相关推荐
Rense15 小时前
开源RK3588 AI Module7,并与Jetson Nano生态兼容的低功耗AI模块
人工智能·开源
程序员皮皮林8 小时前
开源PDF工具 Apache PDFBox 认识及使用(知识点+案例)
java·pdf·开源·apache
创小董9 小时前
机器狗与无人机空地协调技术分析
无人机
创小董11 小时前
智能机巢+无人机:自动化巡检技术详解
运维·自动化·无人机
EmotionFlying12 小时前
(11)(2.1.2) DShot ESCs(一)
外设硬件·copter·ardupilot
MinIO官方账号13 小时前
从 HDFS 迁移到 MinIO 企业对象存储
人工智能·分布式·postgresql·架构·开源
梦想科研社15 小时前
【无人机设计与控制】四旋翼无人机俯仰姿态保持模糊PID控制(带说明报告)
开发语言·算法·数学建模·matlab·无人机
giszz16 小时前
【开源大模型生态9】百度的文心大模型
人工智能·开源
棱镜七彩16 小时前
供方软件供应链安全保障要求及开源场景对照自评表(下)
安全·开源
创小董17 小时前
20Kg载重30分钟续航多旋翼无人机技术详解
无人机