无人直升机数据分析软件设计与实现
2021-06-16宋乐
宋乐
(航空工业直升机设计研究所无人机事业部,江西景德镇,333001)
0 背景和意义
从上世纪80 年代开始,我国无人直升机已经历经30多年的发展。近年来,在无线电侦测、地质地貌测绘、航空影拍、电力施工、森林防火、应急救灾、通信中继、反恐侦查等领域有广泛的应用[1]。随着越来越多在民用场景下应用,无人直升机在使用过程中产生的数据对无人机系统设计、仿真验证、地勤维修以及试验试飞等工作都具有较高的工业价值[2]。因此研发出一款针对无人直升机的数据分析软件对无人机直升机的使用和发展具有极大的帮助。
本文首先提出一种无人直升机通用数据存储结构。并此基础上设计无人直升机数据分析软件的功能和界面。最后通过实际使用场景检验该软件的应用价值。
1 数据存储结构
无人直升机在使用过程中每时每刻会产生大量数据。根据数据来源不同大体可分为飞行遥控数据、飞行遥测数据、链路状态数据、链路控制数据和地面设备数据等。这些数据通过网络或串口以字节流的形式传递。
为了更加全面有效的分析数据。需要将数据本身和数据的各种属性存储在本地。表1 列出数据的通用存储结构。其中接收时间使用长整形保存,也可以使用BCD 时间量。帧数据指多种不同类型的数据帧二进制字节流。
表1 数据通用存储结构
2 软件功能设计
无人直升机数据分析软件具有协议管理模块、帧仿真模块和数据分析模块。可以模拟无人直升机各种真实数据实现各种功能的虚拟仿真。也可以对真实的无人直升机数据进行图形化展现,并提供各种分析工具获取分析结论。
■2.1 协议管理模块
无人直升机使用中产生了各种帧数据均由协议格式决定。管理协议数据是软件的核心功能之一。协议管理模块提供协议的管理、编辑和保存功能。图1 显示该软件协议编辑和管理的界面。具体功能如下所示。
图1 协议管理模块界面
(1)协议管理。
对协议进行树形分类管理。同时在协议类下创建协议信息,包括协议名称和描述等。
(2)协议编辑。
创建协议信号表结构。表中每行可表示一个协议信号。通过填写信号名、字节数、有无符号、分辨率和偏移量等信息创建一个信号。根据不同信号特点可以分辨创建模拟量信号、离散量信号、校验信号等。
(3)协议保存。
编辑完所有信号后可以将协议数据进行保存。该软件采用SQLite 轻量级关系型数据库保存数据。也可以选择其他关系型数据库或本地配置文件保存。
■2.2 帧仿真模块
无人直升机数据分析软件可以方便的创建各种帧数据仿真用例以测试无人机各种功能是否正常。帧仿真模块用于创建各种满足协议的帧数据。并通过指定通信接口发送。图2 显示该软件帧仿真功能界面。具体功能如下所示。
图2 帧仿真模块界面
(1)帧用例管理。
根据测试需求创建帧用例信息,并对用例进行树形分类管理。帧用例信息包括用例名和描述等。
(2)帧数据编辑。
在帧用例中可以创建若干帧数据。每个帧数据都必须指定对应的协议。编辑帧数据值(十六进制字符串)可以自动解析出协议中信号的具体值(数值、状态值或文本值)。同理编辑协议中的信号具体值会自动解析成帧数据值。
(3)通信接口设置。
可以根据需要为帧用例设置发送接口。UDP 网络接口需要设置IP 地址和端口号。串口接口需要设置波特率、数据位等信息。还可以设置发送的周期时间。
(4)数据仿真发送
提供循环发送和单步发送两种方式。循环发送可以根据帧用例的发送周期时间自动将每帧数据按次序循环发送。
■2.3 数据分析模块
数据分析模块是软件的核心功能。它可以将真实的帧二进制字节流解析成指定协议的信号值。同时在时间轴维度上绘制出信号值曲线。该模块可以将多个信号曲线绘制在同一个时间轴上,并提供多种功能进行数据分析。图3 显示不同信号数据的分析曲线界面。具体功能如下所示。
图3 数据分析模块界面
(1)可以显示曲线上的数据离散点。点击后可详细显示帧十六进制源码值、信号真实值、协议类型和数据发生时间等。
(2)可以框选曲线的一部分放大显示。方便分析某小段时间内的数据变化。
(3)可以拖动一根垂直线标注出同一时刻不同信号值的对比结果。方便精确分析信号值之间的关联关系。
(4)可以拉动一根水平线圈定一段时间范围,以显示在该时间内的各项统计数据结果。
(5)可以统计出指定信号的数据发生时长、最大值、最小值、平均值、相邻点最大幅度和最大时段等。
(6)可以分析数据点之间的时间间隔、以确定通信质量。
(7)可以分析出现数据跳变的时间和幅度。
(8)可以通过程序对不同信号分析出微小时间段内异常数据曲线。
(9)可以平铺显示多个信号数据的曲线段。方便在较大时间范围内观察数据变化。
(10)可以将多次飞行后分析的结果进行再次比较,以确定在不同环境不同任务下无人机的飞行性能。
3 应用实例
软件在无人机飞行任务后对各种数据进行分析后,可用于排查潜在的故障隐患。比如在某型无人机某次试飞后。试飞人员通过飞行数据分析后发现发动机缸温在很小时间段内出现多次不正常数据波动。进而地勤人员检查无人机后发现发动机冷却液管路出现微小渗漏。此次数据分析避免了可能发生的重大险情。
软件可以对无人机设计研发提供帮助。比如某型无人机在高原进行多次飞行后,将飞控数据进行分析比对发现空气盒温度比平时使用有较大提高。为保证无人机的高原性能和动力系统的安全。设计人员对无人机加装了中冷系统。之后使用软件进行数据分析后正式中冷系统改善了无人机的环境温度。
除对机载设备数据分析外。软件还可以对地面控制系统数据进行分析。通过多次分析无人机在各飞行姿态下的链路通信数据。可以分析出不同无人机外形下天线安装的最优方案。也可以对无人机飞行过程中的航线设计进行优化,以防止出现较大范围内通信中断的现象。
长期实践表明无人直升机数据分析软件在无人机设计、试飞和使用阶段都具有重要的应用价值。对无人直升机的发展有一定的帮助。
4 结束语
本文详细介绍了无人直升机数据分析软件的模块设计、界面设计和功能实现。并通过多个应用实例说明该软件的科研价值、工程价值和应用价值。