APP下载

基于MATLAB GUI的导航卫星测试数据分析处理系统的设计与实现

2018-01-20李绅杨国学寇会钢

电脑知识与技术 2018年31期
关键词:测试数据

李绅 杨国学 寇会钢

摘要:针对导航卫星测试数据处理量较大,重复性工作较多,人工处理耗时较长、过程易错等问题,开发了基于Matlab/GUI的导航卫星测试数据分析处理系统,实现了连续处理多组上下行测试数据以及自动生成报表等功能,极大地减少了测试数据的处理时间,提高了分析数据的效率,减轻了测试人员的工作量。从界面设计、回调函数设计、系统处理流程等方面详细介绍了系统开发的过程,并对试验数据进行分析处理与验证。结果表明,该系统实现了上下行测试数据特征值的计算与绘图,并生成了Word报表,系统可靠、高效、简便,数据处理精度保持与原始数据一致。

关键词:导航卫星;MATLAB GUI;测试数据;生成报表

中图分类号:TP393        文献标识码:A        文章编号:1009-3044(2018)31-0232-03

在我国北斗导航卫星全球系统建设中,导航卫星在整星出厂前及发射入轨后都需要严格的测试工作,只有各个阶段的测试结果合格,导航卫星才能正式运行。随着北斗导航卫星全球系统的建设,导航卫星的测试工作也越来越多,由此产生了大量的测试数据,如何快速有效地分析处理这些测试数据,是摆在测试人员面前一个亟待解决的问题。因为操作流程复杂、分析结果易错、处理等待时间长等原因,通常的人工分析处理方式的效率很难满足需求。因此,开发一款可以分析处理测试数据并能自动生成报表的软件有着重要的意义。

本文以某导航卫星在轨测试试验为背景,结合Matlab工具,利用Matlab高效率的矩阵运算特点缩短数据处理时间;利用Matlab图形用户界面开发环境GUIDE实现用户界面功能;通过对主界面中按钮回调函数的设计实现数据读取、计算,自动生成数据图像及表格报表。简化了操作流程,缩短了处理时间,并通过试验数据验证了软件功能及其可靠性。

1 GUI简介

图形用户界面GUI( Graphical User Interface) 是指利用图形控件来显示计算机操作的用户界面,简而言之,就是实现人机交互功能的界面。MATLAB GUI 具有易于开发、开发周期短的优点。GUIDE 是Matlab 图形用戶接口开发环境的简称,可方便地建立图形窗口、文本框、按钮、菜单等图形对象,实现GUI编程和图形界面的布局。

2 系统设计

2.1 界面设计

使用GUIDE 设计系统主界面,如图1所示,所有操作功能均设计在一个界面。

在界面的上方可以选择上下行测试文件所在的目录以及要写入的WORD文档报告模板。如果没有WORD模板,可点击界面上的按钮“生成报告模板”来生成一个WORD模板。在界面的中间可以输入配置参数,包括“上行测距精度拟合阶数”、“原始数据起始删除点数”和“原始数据末尾删除点数”,其中,“上行测距精度拟合阶数”只作为上行测试处理回调函数的输入参数,“原始数据起始删除点数”“原始数据末尾删除点数”可作为上行测试处理回调函数和下行测试处理回调函数的输入参数。在界面的下方有按钮“上行测试处理”“下行测试处理”,用于控制处理上行测试数据和下行测试数据。分别点击这两个按钮,系统可读取上述目录下的上行测试文件和下行测试文件,通过回调函数对测试文件进行处理,并将处理结果写入WORD文档中。

2.2 控件回调函数设计

回调函数设计部分包括上行测试处理回调函数设计和下行测试处理回调函数设计。

2.2.1 上行测试处理回调函数

上行测试处理回调函数用于处理导航卫星接收测试设备上行信号时产生的测试数据,测试数据通过S遥测下传给地面遥测接收机。数据处理的过程主要包含以下步骤:

1. 读取目录下的上行测试数据,含通道A和通道B测试数据;

2. 计算每个支路时延测量值的测距精度;

3. 计算每个支路时延测量值的变化量;

4. 计算每个支路时延测量值的拟合值,拟合阶数在系统主界面中输入,阶数越高,数据处理精度越高;

5. 计算时延测量值与拟合值的差值序列,并计算该差值序列的均方差;

6. 将时延测量值、时延测量值的变化量、时延测量值与拟合值的差值序列分别绘图;

7. 将上述数据处理结果与图片输出到Word文档中。

2.2.2 下行测试处理回调函数

下行测试处理回调函数用于处理测试设备接收导航卫星下行信号的测试数据。数据处理的过程主要包含以下步骤:

1. 读取目录下的下行测试数据,含B1B2B3测试数据;

2. 计算每个支路时延测量值的最大值、最小值与平均值;

3. 计算每个支路的时延测量值变化量和时延测量值二次变化量;

4. 计算每个支路的时延测量值百点平均;

5. 计算每个支路时延测量值百点平均的最大值与最小值;

6. 计算每个支路电平测量值的最大值、最小值与平均值;

7. 将每个支路的时延测量值、时延测量值变化量、时延测量值二次变化量、时延测量值百点平均与电平测量值绘图;

8. 将上述数据处理结果与图片输出到Word文档中。

2.3 生成Word报告

由于导航卫星的测试数据格式相同,处理结果的数据格式也一样,需要将大量格式相同的数据生成Word报告,因此,Word报告的自动生成功能就显得十分必要了。一个Word报告的生成共需要经过Word文档的创建、文字的插入、表格的创建与插入、图片的插入等操作。

Matlab调用Word组件实现Word文档的创建编辑,利用activeserver 函数将Word COM组件创建为服务器。使用get 函数获得某个COM 服务器的属性,再使用set 函数设置该属性,比如光标位置。通过改变光标的位置来控制输入内容的位置,对于文字内容可以设置字体、大小、段落格式,对于表格可以设置表格大小、边框样式、宽度和虚实,打印输出图片。系统自动生成WORD报告流程图如图2所示。

3 系统处理流程圖

本文通过GUIDE 完成了GUI 的界面设计和编程设计,最终设计开发了导航卫星测试数据分析处理系统。在系统主界面上操作可以完成卫星测试数据的分析处理,并把处理结果输出到Word文档。系统处理流程图如图3所示。

4 案例分析

应用本系统对某导航卫星在轨测试的试验数据进行分析处理,以验证系统的可靠性。随机选取某段时间运行数据进行验证,在处理数据过程中以及处理数据完成后,在主界面上都会提示,增加系统使用的体验性。

试验数据分为上行测试数据和下行测试数据,上行测试数据包含通道A、通道B两个通道的测距数据,下行测试数据包含B1、B2、B3三个频点的测距数据、电平测试数据等。

本系统处理后的数据,能够计算出上行时延测量值的测距精度、下行时延测量值的最大值最小值、下行时延测量值百点平均的最大值最小值等数值,也能够生成上行时延测量数据图、时延测量值与时延拟合值的差值图、下行时延测量数据图、下行时延测量值百点平均数据图、下行电平测量数据图等绘图,并将数值结果与图片插入Word报表。表1为下行数据处理结果记录表,记录了下行各支路时延测量值和电平测量值的最大值、最小值和波动值。图4为写入Word报表的上行通道A时延测量数据图,含通道A时延测量原始数据图和通道A时延测量值变化量数据图,图5为写入Word报表的下行B1Ap支路时延测量值百点平均数据图,时延测量值的变化是由卫星的运动带来的,一定程度上体现了卫星的运动轨迹。采用本系统进行数据处理并生成报表的时间大约为10秒,速度快、图片精良、统计结果准确,在实现要求的同时提升了用户体验性。而如果采用人工处理的方式,则至少需要15分钟。

5 结束语

基于MATLAB /GUI开发的导航卫星测试数据分析处理系统,充分发挥了MATLAB在数据处理中的优势,系统主界面层次分明,操作简单,可以连续处理多组上下行测试数据,大大减轻了重复性的工作,减少了测试人员处理数据的时间,提高分析处理的效率及准确性,自动生成报表功能可以一键生成所有特征量的处理结果和图形,生成WORD报告,获得直观的分析结果。通过对某导航卫星在轨测试的试验数据进行分析,结果表明,本系统是导航卫星测试数据分析处理的有效工具,系统可靠、高效。

参考文献:

[1] 张立国.基于Matlab/GUI的地铁车辆试验数据分析系统[J].城市轨道交通研究,2016(12):53-55.

[2] 杨海莲,王红梅.基于Matlab/GUI的延迟发光数据处理平台的设计与实现[J].德州学院学报,2015,31(4):43-46.

[3] 秦浩,李同春.基于Matlab/GUI的水电工程安全监测数据处理界面设计[J].水利水电技术,2016,47(4):70-74.

[4]  孙剑.一种基于MATLAB的Word报告自动生成方法[J].科技广场,2017(1):32-35.

[5]  王琳,刘伟建.基于Matlab/GUI的汽车动力性试验数据分析软件设计[J].汽车实用技术,2017(12):197-201.

[6]  李彦,甄丹. 基于Matlab GUI的色域平台设计与开发[J].电视技术,2017,41(3):22-27.

猜你喜欢

测试数据
基于ID3决策树算法的大学生体能测试数据管理系统设计
基于回收测试数据特点的判读方案设计与实现
测试数据管理系统设计与实现
基于自适应粒子群优化算法的测试数据扩增方法
空间co-location挖掘模式在学生体能测试数据中的应用
影响《标准》测试数据真实性的因素及破解策略