一种数据驱动的测试驱动方法与流程

文档序号:19739158发布日期:2020-01-18 04:57阅读:561来源:国知局
一种数据驱动的测试驱动方法与流程

本发明涉及一种在无人系统节点数据和环境数据进行数据驱动的方法,属于无人机集群系统数据交互技术领域。



背景技术:

面向虚拟仿真环境中智能无人机集群系统的测试和验证需求,需要研究基于经验数据的测试驱动技术,构建数据驱动的测试驱动引擎,为无人节点可能面临的各种环境、载荷变化提供高精度的模拟,以提高智能无人集群系统测试床的有效性。



技术实现要素:

本发明的目的在于针对无人机集群系统的测试过程中,无人机节点数据和环境数据将随着测试复杂度和任务复杂度的增加而急剧增加。同时,各类数据之间存在着复杂而严格的空间关联性和时间依赖性。因此,对大规模时空关联的测试数据进行有效和高效的管理。

本发明采用的技术方案为一种数据驱动的测试驱动方法,该方法是一种面向无人机系统运行环境数据的抽象方法,首先建立可扩展、可定制的一体化运行环境数据模型;然后通过无人机系统运行环境数据模型的实例化,构建面向无人机的运行环境测试数据集;然后再利用无人机系统内部数据抽象和管理方法,以及内外部数据流交互关系,建立无人机内部数据模型;再根据运行环境数据与无人系统内部数据的时空同步与协同方法,提供仿真环境中无人集群系统与运行环境的数据同步交互与演进机制。最终,构建基于数据模型的测试驱动引擎,基于无人系统内部数据模型、运行环境数据模型和测试目标,支持流程驱动的智能无人集群系统测试和验证。

本发明拟采用数据作为无人机集群系统运行和测试的驱动。图1给出了数据驱动的测试的实施方法。整个实施方法包括测试数据建模生成、测试数据实例化以及数据驱动引擎三个层次。

在测试数据生成,主要对各种运行环境数据进行建模,提供一种抽象化的数据生成基础,以便支持大规模无人集群的并行测试。根据无人系统运行的外部环境特征,数据生成采用两种方法。对于简单的数据,拟利用数学模型进行建模,在运行过程中动态执行模型生成需要的数据。对于复杂的、难以进行数学建模的环境数据(如大气数据、环境数据等),利用经验数据或者提前采集的数据,进行融合提取。

在数据实例化,主要根据测试需求,分别采用多种技术手段来引用数据模型,将测试数据分配给各个无人终端。主要数据实例化手段包括插值方法、演化方法、位置标记法、时间标记法、时空关联方法等。

在数据驱动引擎,主要根据无人终端、无人集群的特点,利用位置、时间以及其它一些约束条件快速获取正确数据注入到每个无人终端,以驱动它们运行。

附图说明

图1数据驱动的测试方法实施方案。

图2三维地形仿真。

图3基于模型的无人系统状态数据生成方案。

图4真实飞行数据驱动的测试方法。

具体实施方式

下面结合附图和分别对数据驱动测试方法的主要技术内容进行详细阐述。

运行环境数据模型

根据仿真需求和所选的硬件,采用固定区域的高程数据、纹理数据和卫星遥感照片来生成三维地形,如图2所示,特殊效果包括自然环境特效(如风、雨、雾等)和人为特殊效果(如燃烧、炸等)。自然环境特效利用vegaprime提供的一些通用效果,人为特效利用creator创建模型的特殊纹理。利用creator生成三维地形。高程数据的选择和预处理。目前市场上可出售的dem数据有1∶25万、1∶5万等精度,能够满足一般视景仿真的需要,对dem数据的预处理主要是转换为creator能够识别的数据格式。

根据硬件平台,确定地形细节层次(lod)以及地形单元的范围、三角形密度、纹理密度。系统采用两层地形lod,分为低空(1000m以下)、中空(1000m~4000m)。文化特征包括林木、建筑、道路等,地物主要依据卫星遥感图片处理后纹理显示。

视景驱动采用mpi公司的vegaprime。视景驱动vegaprime是一个高性能的软件环境和工具包,包括了图形用户界面即lynx类库和可以调用的c函数。vegaprime具有良好的可视化编程环境,可以快速而容易地实现应用程序的功能(如显示通道、视点、观察者、特殊效果、模型等),缩短开发周期。vegaprime支持metaflight,metaflight是mpi公司基于xml的一种数据描述格式。它使得运行系统及数据库应用能够理解数据库组织结构,提升了openflight文件(仿真三维文件格式标准)的应用范围。vegaprime中的ladbm(大面积数据库管理)模块使用metaflight来确保海量数据以最高效率、最先进的方式联系在一起。

无人系统内部数据模型

无人系统(无人机、机器人)等的内部数据是无人集群系统进行局部和全局决策的重要信息基础。无人系统在物理空间中运行,受到物理规律的约束,因此控制系统运行必须遵循物理规律约束。在无人集群系统试验床中,为了确保试验的真实性、有效性,必须利用符合规律的数据作为仿真测试的驱动力。在无人集群系统试验环境中,本发明主要关注2种类型的数据:无人系统内部动力学数据、以及面向任务目标的载荷数据。

(1)无人系统内部动力学状态数据

无人系统内部动力学数据包括任意时间点的速度、加速度、坐标位置、海拔高度、方向、旋转速度等。它刻画出一个无人系统的基本运行特点。由于物理系统的连续行特征,在这些内部状态数据的基础上,利用恰当的动力学模型可以估计出后续的状态特征。

无人系统内部动力学数据是驱动无人机飞行控制系统和机器人运动控制系统运行的重要数据。为了有效支持试验床,无人系统内部动力学状态数据的获取采用两种方法:动态模型生成和真实数据采集。

基于模型的无人系统内部状态生成方案

在无人系统运行过程中,如果记录每个时刻的状态,那么数据量非常大。更进一步,对于无人集群系统,每个无人终端的内部状态数据将是一个巨大的数据集。在某些无人终端中,无人系统内部状态往往可以通过特定的模型表达,这种模型具有严格数学表达;它的后续状态可以根据当前的状态演算和推导出来。针对这种情况,项目拟采用严格数学模型动态生成无人系统内部状态数据,然后利用这些数据驱动试验床运行。

图3给出了基于模型无人系统状态数据方案。在该方案中,无人系统的动力学模型是核心,它往往被表示为一组数学方程。对于无人机而言,该模型是一个6自由度的数学方程组;对于机器人而言,该模型是一个多约束环境的3自由度数学方程组。无人系统的动力学模型以当前的无人系统内部状态为输入,进行方程组解算,从而计算出后续状态值。为了更为真实地反应出真实系统的运行状态,利用一个噪音生成器,生成一组噪音,并且将其参杂到模型解算出的状态数据中,从而作为输出驱动测试床运行。

基于真实的数据生成方案

无论是无人机还是机器人的真实运行环境非常复杂,自身的动力学特性也具有一定的不确定性。这是因为真实的系统除了受设计上的数理特性制约外,还受到工艺和其它不确定性的因素影响。确定的动力学模型和环境模型并不能完整地刻画它们的真实运行特点。因此,无人系统真实的运行数据更能够反应出各种无人终端的特点。

利用无人系统(无人机、机器人)的真实运行数据作为测试驱动更能反应出系统的运行情况。为此,项目通过选择典型的无人系统作为原型,按照无人系统的不同场景下的运行特点,在真实环境下进行状态数据采集,构成每种无人系统的运行状态数据集。运行状态数据集尽可能反映出该型无人系统在不同工况、不同运行环境下的特点。从本项目试验床构建需求出发,将选择试验床使用的固定翼无人机、旋翼无人机和地面无人车作为原型,分别采集它们的数据集,如图4所示。

由于无人系统的运行具有连续行,它们的运行状态数据集将是无限的。项目很难以构建出所有工况的数据集。基于上述特点,通过采集出各型无人系统的典型工况的数据构成基本数据集。设计一种数据派生引擎,利用基本数据集作为基础,根据测试任务需求派生出面向测试需求的驱动数据。该引擎的主要工作流程如下:

首先,将该型无人系统的各种工况数据作标准化处理。使得在不同运行环境、不同工况的数据具有一种统一的表示和运行基础;

然后,利用差值、数据杂交、数据突变等方法,生成一定的新数据,并且利用演化算法选择出一定的有效数据;

最后,根据测试系统当前状态,对新生成的状态数据进行实例化,与当前的状态进行对接,作为驱动测试的测试数据集。

(2)无人系统载荷模型

智能无人集群系统的价值是能够协同完成某项传统方法无法完成的任务或者能够以更有效的方法完成某项任务。根据任务特性,无人系统上需要配备专用的载荷。典型的载荷包括环境调研、地形探测、灾害检测、通信、送货等。由于载荷的多样性,很难以统一的形式对载荷进行描述。

但是,从智能无人集群系统的闭环测试出发,无人系统的载荷特点以及各种载荷任务的完成情况是无人集群系统的重要组成部分和决策依据。为此,项目在测试床的软件架构设计方面将其作为重点考虑因素之一,提供必要的灵活性,使得测试人员可以根据测试任务需求开发特定的载荷模型作为插件。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1