CN109960492A - 一种基于qt平台的检测系统及其使用方法 - Google Patents

一种基于qt平台的检测系统及其使用方法 Download PDF

Info

Publication number
CN109960492A
CN109960492A CN201811195928.4A CN201811195928A CN109960492A CN 109960492 A CN109960492 A CN 109960492A CN 201811195928 A CN201811195928 A CN 201811195928A CN 109960492 A CN109960492 A CN 109960492A
Authority
CN
China
Prior art keywords
signal
data
module
detection system
control signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811195928.4A
Other languages
English (en)
Inventor
周思远
谈卫
钱灿军
钱甦阳
陶娅
李雪
尹国亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yangzhou Wanfang Electronic Technology Co Ltd
Original Assignee
Yangzhou Wanfang Electronic Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yangzhou Wanfang Electronic Technology Co Ltd filed Critical Yangzhou Wanfang Electronic Technology Co Ltd
Priority to CN201811195928.4A priority Critical patent/CN109960492A/zh
Publication of CN109960492A publication Critical patent/CN109960492A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于QT平台的检测系统及其使用方法。涉及一种基于QT平台的检测系统,尤其是涉及针对飞机进行检测的一种基于QT平台的检测系统。提出了一种操作方便、逻辑清晰且修改速度快,可由检测系统的操作人员根据检测系统的子系统中控制/输出数据的微量修改直接对该检测系统进行方便、高效的修改,从而无需检测系统的设计人员对检测系统进行多次反复更新的基于QT平台的检测系统及其使用方法。包括界面层、数据层及通信层;所述通信层包括组包模块、解包模块和通信模块,所述通信层用于完成通信数据帧的编解码,完成必备通信参数的设置,使检测系统能与底层系统进行通信。本发明节省了检测系统的研发、测试成本,降低了使用难度,使用效果极佳。

Description

一种基于QT平台的检测系统及其使用方法
技术领域
本发明涉及一种基于QT平台的检测系统,尤其是涉及针对飞机进行检测的一种基于QT平台的检测系统。
背景技术
飞机一线检测的结果是飞机放飞的重要依据,其依赖的检测系统也是检测、诊断飞机状态的重要手段。目前,检测系统主要与飞机的飞控计算机相连按接口控制协议(ICD)完成指令下达、数据回传工作,继而完成飞机的保障、检测工作。
在飞机设计过程中,需要经历多个节点和过程,在此期间各系统都处于协调优化的过程状态,而这种过程状态实际是飞机子系统中控制/输出数据的微量修改,为此与之配套的检测系统也随之反复迭代,而目前这种迭代是保障部门协同软件开发人员共同完成的,一方面增加了软件开发人员的工作量,另一方面也使检测系统的设计部门也将大量精力花费在因状态不定导致版本迭代的过程。
对于检测系统而言其主要分为在线和离线检测系统,在线检测主要是指令下达、数据显示和简单的统计分析,离线检测主要依赖累积的数据进行统计分析,一线检测系统大多属于在线检测的范畴。深入分析检测系统的迭代过程发现,其仅仅是增删改指令下达信号和数据显示信号,其它部分较少变动,为解决信号频繁变动而引起的界面频繁变化问题,航空工业成飞的孟宸逸等提出了《一种基于QT地面站的智能界面》(CN105468366A)试图解决上述问题,但其步骤仍然较为复杂,对于熟悉保障专业却不熟悉软件工程的设计人员而言还存在较大困难,其界面XML文件的生成还需要基于QT平台且处理逻辑仍需逐信号编写,本质上仍未将保障专业与软件开发割裂开来,且每次修改完毕仍需要对自身进行功能、性能测试。
发明内容
本发明针对以上问题,提出了一种操作方便、逻辑清晰且修改速度快,可由检测系统的操作人员根据检测系统的子系统中控制/输出数据的微量修改直接对该检测系统进行方便、高效的修改,从而无需检测系统的设计人员对检测系统进行多次反复更新的基于QT平台的检测系统及其使用方法。
本发明的技术方案为:包括界面层、数据层及通信层;
所述界面层包括登录权限模块、主界面模块、UI生成预览模块、信号库模块、信号布局模块、自动测试接口模块,所述界面层依据初始化文件完成交互界面的初始化工作、且依据QSS文件美化界面,同时,自动测试接口模块还能够识别并执行自动测试脚本,完成自动测试;
所述数据层包括参数装订模块、数据解析模块、数据存储模块,所述数据层是连接界面层、通信层的中间层,通过所述数据层完成界面层中控制信号内容数据的装订编码,完成外部数据解析,完成自动检测流程中各操作所需信号的触发及回传信息的判断、分析;
所述通信层包括组包模块、解包模块和通信模块,所述通信层用于完成通信数据帧的编解码,完成必备通信参数的设置,使检测系统能与底层系统进行通信。
所述初始化文件为xlsx后缀格式,所述初始化文件包括系统分类字段和初始化字段,所述初始化字段包括显示信号初始化字段和控制信号初始化字段;
所述系统分类字段由QTableWidget控件和QGroupBox控件进行划分,并作为显示信号和控制信号的父容器,所述QTableWidget控件和QGroupBox控件可互相嵌套;
所述显示信号初始化字段包括显示信号名称、显示信号父容器名称、显示信号类型、显示信号长宽信息、数据流中截取位置信息、显示精度信息、显示信号间逻辑运算信息、显示信号间算术运算信息、显示信号有无符号信息、显示信号报警状态信息、显示信号数据-文字映射信息和显示信号特殊初始化字段;
所述控制信号初始化字段包括控制信号名称、控制信号父容器名称、控制信号类型、控制信号长宽信息、控制信号初始化信息、作用数据流的字及位信息、控制精度信息、容器内控制信号组信息、控制信号间逻辑关系信息、控制信号间运算关系信息、控制信号有无符号信息、控制信号数据-文字映射信息和控制信号特殊初始化字段。
所述信号初始化字段采用json格式,key为对应该信号的属性,value对应该属性的值,支持json数据类型及数组,特殊初始化字段的key为custom,value为json类型中的数组。
所述登录权限模块包括登录控制子模块、初始化文件修改子模块、初始化文件加解密子模块、初始化文件合法性验证子模块;
所述主界面模块包括状态指示子模块、信号告警显示子模块、信号操作显示子模块、时统子模块;
所述UI生成预览模块包括UI预览子模块和QSS生成子模块;
所述信号库模块中信号均基于QT原有控件进行自定义扩展,其种类可自由增减,所述信号库模块中信号分为显示信号、控制信号、控制信号容器信号,显示信号是用于系统参数显示的节点,控制信号是用于系统参数控制的节点,显示信号的父类包含数据流截取位置虚函数及显示结果输出虚函数;控制信号的父类包含数据流作用位置虚函数及参数转换虚函数;控制信号容器信号能够装载控制信号,对外提供触发接口,能按照先进先触发的原则对装载的控制信号进行触发;
所述信号布局模块是自定义的流式布局方式,在信号初始化完毕后进行布局,自定义的流式布局将同级信号或信号容器进行信号及容器的宽度参数值动态调整,最终实现平均化的流式布局;
所述自动测试接口模块能够识别并运行自动测试脚本,其中自动测试脚本每行包含的字段为控制信号组、控制信号组数据生成器、控制信号间逻辑及算术运算关系、判断信号组、判断信号间逻辑运算关系、判断信号间算术运算关系、判断依据、循环次数、判断等级、最长/超时检测时间、超时事件处理类型;
所述数据生成器能识别的基本函数为求绝对值abs函数、反三角函数、正三角函数、取整函数、圆弧补差函数、计数器函数、有限单信号发生函数、门函数、直线补差函数、幂函数、归一化函数、取余函数、定时器函数、截断函数、开根函数。
参数装订模块是将控制信号中输入数据按照初始化文件中逻辑/算术关系转换为特定位置的十六进制数据的模块,其根据逻辑/算术关系转换生成十六进制数据后,最后基于数据流作用位置信息对数据流特定位置先进行置零操作随后进行或操作,完成参数装订;
数据解析模块能根据初始化文件逐条解析显示信号待显示的值,为显示信号的更新提供数据支撑,其依据先进先出的原则进行解析,按初始化文件中从上往下的顺序压入显示信号,先压入信号为先进信号;
数据存储模块提供本地存储文本存储及本地数据库存储两种方式,为后续的深入分析提供数据支撑;数据存储的字段为时刻、交互源码文本数据、信号名称,时刻为当前收到交互数据的时刻,交互源码文本是交互源码16进制文字形式,信号名称内容为对于显示信号在该时刻下的数据、对于控制信号为该时刻下的控制数据。
组包模块能将数据层提供的数据进行组包,组成帧头、序号、内容、校验、帧尾的形式,其输入为数据层的控制数据,输出为符合通信协议的帧数据;
解包模块能将符合通信协议的合法帧中内容取出给数据层中数据解析模块;该模块具备组/解包虚函数,输入为QByteArray元参数,输出为所需的QByteArray数据;
组包模块和解包模块均支持动态库的形式进行便捷替换;
通信模块为检测系统与操作系统交互的接口,支持周期、事件模式。
按以下步骤进行使用:
1)、权限判断:操作人员输入个人信息;
1.1)、个人信息非法则返回步骤1)重新输入;
1.2)、个人信息具有管理权限则进入步骤2);
1.3)、个人信息具有检测权限则进入步骤3);
2)、界面层修改;
2.1)、初始化文件创建/修改:操作人员根据被检测飞机的待检参数及控制接口按照初始化表的制定规则按需填入/修改各字段内容,形成后缀为xlsx的初始化文件;
2.2)、QSS样表创建/修改:操作人员可根据对界面美化的要求对QSS文件进行创建/修改;
2.3)、初始化文件采用正则表达式进行合法性判断,合法则进入下一步,反之则返回步骤2.1)重新输入;
2.4)、显示/控制信号预览:检测系统中的UI预览子模块根据初始化文件完成显示信号、控制信号的创建,并对其进行布局,实现UI的预览;
2.5)、QSS样表装载预览:检测系统中的QSS生成子模块能够根据QSS文件实现界面层的预览;
2.6)、操作人员判断是否满意:是则进入步骤3),否则返回步骤2.1)重新输入;
3)、系统初始化:由检测系统根据修改后的初始化文件和QSS文件自动的依次进行系统初始化分类、显示/控制信号初始化、信号布局、初始化样式装载、通信动态库载入;
4)、判断是否需要自动测试:是则进入步骤5),否则进入步骤6);
5)、自动测试:
5.1)、自动输入控制信号参数值:由自动测试脚本自动向检测系统中输入某一个控制信号;此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;
5.2)、自动判读显示信号参数值:自动测试脚本根据显示信号的值并结合自动测试脚本中判断依据对测试结果进行判定;
5.3)、判断是否需要人工干预:是则进入步骤7),否则进入步骤8);
6)、手动测试:
6.1)、人工输入控制信号参数值:由操作人员向检测系统中输入某一个控制信号;此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;
6.2)、人工判读显示信号参数值:操作人员根据显示信号的值对测试结果进行判定;
7)、事件处理:操作人员记录本次测试结果;
8)、判断测试是否结束,判断结构分为以下三种:
a)、否、且此前处于自动测试中,则返回步骤5.1)自动输入下一个控制信号;
b)、否、且此前处于手动测试中,则返回步骤6.1)手动输入下一个控制信号;
c)、是,则结束。
所述自动测试脚本按以下步骤进行自动测试:
S1)、按需进行自动测试脚本的创建/修改;
S2)、装载测试脚本,完成显示信号及控制信号的关联;
S3)、自动测试脚本完成控制信号及控制信号容器的参数自动生成及设置;
S4)、自动测试脚本依据循环次数进行控制信号/容器触发;
S5)、自动测试脚本结合测试脚本中判断依据测试结果判定,并根据显示信号的数据进行更新;
S6)、事件处理,判断是否需要人工干预,是则停止运行等待人工干预,否则顺序执行;
S7)、自动测试脚本判断检测是否结束,否则返回步骤S2),是则结束;完毕。
本发明能将系统分类、信号构建、信号布局所包含的重复、易错工作分割开来,加快开发进度,降低研发成本。框架内信号构建遵循通用信号先行定义,特殊信号按需定义的原则,且基于QT提供的控件自定义便于信号库扩展,可满足后续小型化、跨平台的多版本需求。利用初始化文件的形式构建信号和系统分类,开发效率高,操作门槛低,充分发挥各专业特长,且其预览功能能够减少产品迭代时间。综上,采用上述框架开发的检测系统,能快速满足被检测装备系列化、多用户的需求,节省研发、测试成本,快速形成保障能力,故具备良好的经济、商业价值。
本系统有效解决了检测系统的设计部门将大量精力花费在因状态不定导致版本迭代的过程中的问题,使得检测系统的使用部门也可对检测系统进行简单的修改,节省了检测系统的研发、测试成本,降低了使用难度,使用效果极佳。
附图说明
图1是本案的使用步骤流程图;
图2是本案中自动测试脚本的工作流程图。
具体实施方式
本发明如图1-2所示,包括界面层、数据层及通信层;
所述界面层包括登录权限模块、主界面模块、UI生成预览模块、信号库模块、信号布局模块、自动测试接口模块,所述界面层依据初始化文件完成交互界面的初始化工作(具体为显示/控制信号生成、信号初始参数装订、系统分类及信号布局)、且依据QSS文件美化界面(具体表现为为使用者提供显示工效良好、信号分类合理、功能完善的交互界面),最终形成柔性界面,同时,自动测试接口模块还能够识别并执行自动测试脚本,完成自动测试;
所述数据层包括参数装订模块、数据解析模块、数据存储模块,所述数据层是连接界面层、通信层的中间层,通过所述数据层完成界面层中控制信号内容数据(该数据为操作人员手动输入的控制信号)的装订编码,完成外部数据解析,完成自动检测流程中各操作所需信号的触发及回传信息的判断、分析;
所述通信层包括组包模块、解包模块和通信模块,所述通信层用于完成通信数据帧的编解码,完成必备通信参数的设置,使检测系统能与底层系统进行通信。
所述初始化文件为xlsx后缀格式,所述初始化文件包括系统分类字段和初始化字段,所述初始化字段包括显示信号初始化字段和控制信号初始化字段;
所述系统分类字段由QTableWidget控件和QGroupBox控件进行划分,并作为显示信号和控制信号的父容器,所述QTableWidget控件和QGroupBox控件可互相嵌套;
所述显示信号初始化字段包括显示信号名称、显示信号父容器名称、显示信号类型、显示信号长宽信息、数据流中截取位置信息、显示精度信息、显示信号间逻辑运算信息、显示信号间算术运算信息、显示信号有无符号信息、显示信号报警状态信息、显示信号数据-文字映射信息和显示信号特殊初始化字段;
所述控制信号初始化字段包括控制信号名称、控制信号父容器名称、控制信号类型、控制信号长宽信息、控制信号初始化信息、作用数据流的字及位信息、控制精度信息、容器内控制信号组信息、控制信号间逻辑关系信息、控制信号间运算关系信息、控制信号有无符号信息、控制信号数据-文字映射信息和控制信号特殊初始化字段(该特殊初始化字段可根据不同的信号类型进行复用,若需要多个参数信息,则各参数中间采用有序数组方式导入,参数与各数组元素间一一对应)。
所述信号初始化字段采用json格式,key为对应该信号的属性,value对应该属性的值,支持json数据类型及数组,特殊初始化字段的key为custom,value为json类型中的数组。
所述登录权限模块包括登录控制子模块、初始化文件修改子模块、初始化文件加解密子模块、初始化文件合法性验证子模块;
登录控制子模块用于区分当前用户是检测权限、管理权限或非法权限,检测权限能在系统初始化后开展一线检测工作,管理权限能进行初始化文件的修改,其修改过程首先是初始化文件解密,其次是合法性验证,若有不合法的字段则在修改子模块中标红显示且当鼠标滑过该字段时提示可能的错误,再次是用户进行初始化文件修改利用UI生成预览模块进行,最后进行初始化文件加密保存;
所述主界面模块包括状态指示子模块、信号告警显示子模块、信号操作显示子模块、时统子模块;
状态指示子模块指示的信息有通信端口当前状态、数据交互合法性状态,其中通信状态为正常、异常、初始态三态,合法性状态为初始态、无交互态、数据错误态、数据合法态;信号告警显示子模块能够按三个等级进行告警输出显示,对应于失效风险的三等级,最低等级为白底黑字,第二等级为白底红字,第三等级为黄底红字,显示依据基于初始化文件的报警状态信息,默认为最低等级;信号操作显示子模块显示各控制信号及数据层输出的信息,便于用户追溯;时统模块能够解析满足NMEA0183标准协议的输入信息,便于系统内的时间同步;
所述UI生成预览模块包括UI预览子模块和QSS生成子模块;
UI预览子模块能够解析初始化文件、装载QSS文件,提取其中的系统分类,完成显示信号、控制信号的创建,并对其进行布局,实现柔性UI的预览,为修改初始化文件及QSS文件的优化修改提供依据;
QSS生成子模块能够提供生成QSS文件的可视化接口,能对信号库中逐信号类型进行可视化修改,并按照QSS的语法规则生成QSS文件,降低显示工效及特殊需求的定制门槛;
所述信号库模块中信号均基于QT原有控件进行自定义扩展,其种类可自由增减,所述信号库模块中信号分为显示信号、控制信号、控制信号容器信号,显示信号是用于系统参数显示的节点,控制信号是用于系统参数控制的节点,显示信号的父类包含数据流截取位置虚函数及显示结果输出虚函数;控制信号的父类包含数据流作用位置虚函数及参数转换虚函数;控制信号容器信号能够装载控制信号,对外提供触发接口,能按照先进先触发的原则对装载的控制信号进行触发;
信号库模块中显示信号分为状态灯信号、只读文本信号、只读图表信号、指针仪表信号,控制信号分为按钮信号、只写文本信号、两态开关信号、三态开关信号、旋钮信号、下拉框信号、滑块信号、控制容器信号;其中控制容器信号能够按照先进先触发的原则逐个触发前述控制信号,控制信号的输入规则采用正则运算进行管控,范围及精度采用过滤器方式进行限制;
所述信号布局模块是自定义的流式布局方式,在信号初始化完毕后进行布局,自定义的流式布局将同级信号或信号容器进行信号及容器的宽度参数值动态调整,最终实现平均化的流式布局;
所述自动测试接口模块能够识别并运行自动测试脚本,其中自动测试脚本每行包含的字段为控制信号组、控制信号组数据生成器、控制信号间逻辑及算术运算关系、判断信号组、判断信号间逻辑运算关系、判断信号间算术运算关系、判断依据、循环次数、判断等级、最长/超时检测时间、超时事件处理类型;
所述数据生成器能识别的基本函数为求绝对值abs函数、反三角函数、正三角函数、取整函数、圆弧补差函数、计数器函数、有限单信号发生函数、门函数、直线补差函数、幂函数、归一化函数、取余函数、定时器函数、截断函数、开根函数(逻辑关系为与、或、非、相等、不等、小于、小于等于、大于、大于等于,算术关系为加、减、乘、除、取余,能识别括号符号,逻辑运算和算术运算的优先级按照C++11标准执行;超时事件处理类型为循环时间、等待人工指令动作、退出检测、触发控制信号后退出)。
参数装订模块是将控制信号中输入数据按照初始化文件中逻辑/算术关系转换为特定位置的十六进制数据的模块,其根据逻辑/算术关系转换生成十六进制数据后,最后基于数据流作用位置信息对数据流特定位置先进行置零操作随后进行或操作,完成参数装订;
数据解析模块能根据初始化文件逐条解析显示信号待显示的值,为显示信号的更新提供数据支撑,其依据先进先出的原则进行解析,按初始化文件中从上往下的顺序压入显示信号,先压入信号为先进信号;
数据存储模块提供本地存储文本存储及本地数据库存储两种方式,为后续的深入分析提供数据支撑;数据存储的字段为时刻、交互源码文本数据、信号名称,时刻为当前收到交互数据的时刻,交互源码文本是交互源码16进制文字形式,信号名称内容为对于显示信号在该时刻下的数据、对于控制信号为该时刻下的控制数据。
组包模块能将数据层提供的数据进行组包,组成帧头、序号、内容、校验、帧尾的形式,其输入为数据层的控制数据,输出为符合通信协议的帧数据;
解包模块能将符合通信协议的合法帧中内容取出给数据层中数据解析模块;该模块具备组/解包虚函数,输入为QByteArray元参数,输出为所需的QByteArray数据;
组包模块和解包模块均支持动态库的形式进行便捷替换;
通信模块为检测系统与操作系统交互的接口,支持周期、事件模式。
按以下步骤进行使用:
1)、权限判断:操作人员输入个人信息;
1.1)、个人信息非法则返回步骤1)重新输入;
1.2)、个人信息具有管理权限则进入步骤2);
1.3)、个人信息具有检测权限则进入步骤3);
2)、界面层修改;
2.1)、初始化文件创建/修改:操作人员根据被检测飞机的待检参数及控制接口按照初始化表的制定规则按需填入/修改各字段内容,形成后缀为xlsx的初始化文件;
2.2)、QSS样表创建/修改:操作人员可根据对界面美化的要求对QSS文件进行创建/修改;
2.3)、初始化文件采用正则表达式进行合法性判断,合法则进入下一步,反之则返回步骤2.1)重新输入;
2.4)、显示/控制信号预览:检测系统中的UI预览子模块根据初始化文件完成显示信号、控制信号的创建,并对其进行布局,实现UI的预览;
2.5)、QSS样表装载预览:检测系统中的QSS生成子模块能够根据QSS文件实现界面层的预览;
2.6)、操作人员判断是否满意:是则进入步骤3),否则返回步骤2.1)重新输入;
3)、系统初始化:由检测系统根据修改后的初始化文件和QSS文件自动的依次进行系统初始化分类、显示/控制信号初始化、信号布局、初始化样式装载(即QSS样式装载)、通信动态库载入;
4)、判断是否需要自动测试:是则进入步骤5),否则进入步骤6);
5)、自动测试:
5.1)、自动输入控制信号参数值:由自动测试脚本自动向检测系统中输入某一个控制信号(包括控制飞机机翼、发动机等部件动作等指令);此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;
5.2)、自动判读显示信号参数值:自动测试脚本根据显示信号的值并结合自动测试脚本中判断依据对测试结果进行判定;
5.3)、判断是否需要人工干预:是则进入步骤7),否则进入步骤8);
6)、手动测试:
6.1)、人工输入控制信号参数值:由操作人员向检测系统中输入某一个控制信号(包括控制飞机机翼、发动机等部件动作等指令);此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;使得操作人员可直观的将输入的控制信号与显示的动作状态进行对比,以最终实现对飞机的方便的检测;
6.2)、人工判读显示信号参数值:操作人员根据显示信号的值对测试结果进行判定;
7)、事件处理:操作人员记录本次测试结果;
8)、判断测试是否结束,判断结构分为以下三种:
a)、否、且此前处于自动测试中,则返回步骤5.1)自动输入下一个控制信号;
b)、否、且此前处于手动测试中,则返回步骤6.1)手动输入下一个控制信号;
c)、是,则结束。
所述自动测试脚本按以下步骤进行自动测试:
S1)、按需进行自动测试脚本的创建/修改;
S2)、装载测试脚本,完成显示信号及控制信号的关联;
S3)、自动测试脚本完成控制信号及控制信号容器的参数自动生成及设置;
S4)、自动测试脚本依据循环次数进行控制信号/容器触发;
S5)、自动测试脚本结合测试脚本中判断依据测试结果判定,并根据显示信号的数据进行更新;
S6)、事件处理,判断是否需要人工干预,是则停止运行等待人工干预,否则顺序执行;
S7)、自动测试脚本判断检测是否结束,否则返回步骤S2),是则结束;完毕。
本案在被检系统中输入/输出参数需要修改时,能够快速定制,形成满足测试功能需求及显示工效需求的检测系统。
检测系统的子系统中控制/输出信号需要修改时,直接对后缀为xlsx 的初始化文件进行修改,并在修改后由具有管理权限的操作人员重新载入检测系统中即可,操作起来十分方便,无需检测系统的设计人员及软件开发人员对检测系统进行多次反复更新,若通信方式及协议改变仅需要改变相应的部分,若显示/控制信号类型及功能需要调整则只需对其进行增删改,大大减少了了修改软件的大量重复工作,操作方便、逻辑清晰且修改速度快。
同时,本案在需对界面进行显示工效的界面优化(如颜色、位置、布局等)时,仅需修改QSS 文件,并在修改后由具有管理权限的操作人员重新载入检测系统中即可,同样具有操作方便、逻辑清晰以及修改速度快的优点。
此外,本案除人工手动测试外,可还通过自动测试脚本进行自动测试,从而降低了操作人员的劳动强度,提升了对飞机检测时整体的工作效率,增加飞行任务的出动率。
本系统有效解决了检测系统的设计部门将大量精力花费在因状态不定导致版本迭代的过程中的问题,使得检测系统的使用部门也可对检测系统进行简单的修改,节省了检测系统的研发、测试成本,降低了使用难度,使用效果极佳。

Claims (8)

1.一种基于QT平台的检测系统,其特征在于,包括界面层、数据层及通信层;
所述界面层包括登录权限模块、主界面模块、UI生成预览模块、信号库模块、信号布局模块、自动测试接口模块,所述界面层依据初始化文件完成交互界面的初始化工作、且依据QSS文件美化界面,同时,自动测试接口模块还能够识别并执行自动测试脚本,完成自动测试;
所述数据层包括参数装订模块、数据解析模块、数据存储模块,所述数据层是连接界面层、通信层的中间层,通过所述数据层完成界面层中控制信号内容数据的装订编码,完成外部数据解析,完成自动检测流程中各操作所需信号的触发及回传信息的判断、分析;
所述通信层包括组包模块、解包模块和通信模块,所述通信层用于完成通信数据帧的编解码,完成必备通信参数的设置,使检测系统能与底层系统进行通信。
2.根据权利要求1所述的一种基于QT平台的检测系统,其特征在于,所述初始化文件为xlsx后缀格式,所述初始化文件包括系统分类字段和初始化字段,所述初始化字段包括显示信号初始化字段和控制信号初始化字段;
所述系统分类字段由QTableWidget控件和QGroupBox控件进行划分,并作为显示信号和控制信号的父容器,所述QTableWidget控件和QGroupBox控件可互相嵌套;
所述显示信号初始化字段包括显示信号名称、显示信号父容器名称、显示信号类型、显示信号长宽信息、数据流中截取位置信息、显示精度信息、显示信号间逻辑运算信息、显示信号间算术运算信息、显示信号有无符号信息、显示信号报警状态信息、显示信号数据-文字映射信息和显示信号特殊初始化字段;
所述控制信号初始化字段包括控制信号名称、控制信号父容器名称、控制信号类型、控制信号长宽信息、控制信号初始化信息、作用数据流的字及位信息、控制精度信息、容器内控制信号组信息、控制信号间逻辑关系信息、控制信号间运算关系信息、控制信号有无符号信息、控制信号数据-文字映射信息和控制信号特殊初始化字段。
3.根据权利要求2所述的一种基于QT平台的检测系统,其特征在于,所述信号初始化字段采用json格式,key为对应该信号的属性,value对应该属性的值,支持json数据类型及数组,特殊初始化字段的key为custom,value为json类型中的数组。
4.根据权利要求1所述的一种基于QT平台的检测系统,其特征在于,所述登录权限模块包括登录控制子模块、初始化文件修改子模块、初始化文件加解密子模块、初始化文件合法性验证子模块;
所述主界面模块包括状态指示子模块、信号告警显示子模块、信号操作显示子模块、时统子模块;
所述UI生成预览模块包括UI预览子模块和QSS生成子模块;
所述信号库模块中信号均基于QT原有控件进行自定义扩展,其种类可自由增减,所述信号库模块中信号分为显示信号、控制信号、控制信号容器信号,显示信号是用于系统参数显示的节点,控制信号是用于系统参数控制的节点,显示信号的父类包含数据流截取位置虚函数及显示结果输出虚函数;控制信号的父类包含数据流作用位置虚函数及参数转换虚函数;控制信号容器信号能够装载控制信号,对外提供触发接口,能按照先进先触发的原则对装载的控制信号进行触发;
所述信号布局模块是自定义的流式布局方式,在信号初始化完毕后进行布局,自定义的流式布局将同级信号或信号容器进行信号及容器的宽度参数值动态调整,最终实现平均化的流式布局;
所述自动测试接口模块能够识别并运行自动测试脚本,其中自动测试脚本每行包含的字段为控制信号组、控制信号组数据生成器、控制信号间逻辑及算术运算关系、判断信号组、判断信号间逻辑运算关系、判断信号间算术运算关系、判断依据、循环次数、判断等级、最长/超时检测时间、超时事件处理类型;
所述数据生成器能识别的基本函数为求绝对值abs函数、反三角函数、正三角函数、取整函数、圆弧补差函数、计数器函数、有限单信号发生函数、门函数、直线补差函数、幂函数、归一化函数、取余函数、定时器函数、截断函数、开根函数。
5.根据权利要求1所述的一种基于QT平台的检测系统,其特征在于,参数装订模块是将控制信号中输入数据按照初始化文件中逻辑/算术关系转换为特定位置的十六进制数据的模块,其根据逻辑/算术关系转换生成十六进制数据后,最后基于数据流作用位置信息对数据流特定位置先进行置零操作随后进行或操作,完成参数装订;
数据解析模块能根据初始化文件逐条解析显示信号待显示的值,为显示信号的更新提供数据支撑,其依据先进先出的原则进行解析,按初始化文件中从上往下的顺序压入显示信号,先压入信号为先进信号;
数据存储模块提供本地存储文本存储及本地数据库存储两种方式,为后续的深入分析提供数据支撑;数据存储的字段为时刻、交互源码文本数据、信号名称,时刻为当前收到交互数据的时刻,交互源码文本是交互源码16进制文字形式,信号名称内容为对于显示信号在该时刻下的数据、对于控制信号为该时刻下的控制数据。
6.根据权利要求1所述的一种基于QT平台的检测系统,其特征在于,组包模块能将数据层提供的数据进行组包,组成帧头、序号、内容、校验、帧尾的形式,其输入为数据层的控制数据,输出为符合通信协议的帧数据;
解包模块能将符合通信协议的合法帧中内容取出给数据层中数据解析模块;该模块具备组/解包虚函数,输入为QByteArray元参数,输出为所需的QByteArray数据;
组包模块和解包模块均支持动态库的形式进行便捷替换;
通信模块为检测系统与操作系统交互的接口,支持周期、事件模式。
7.一种权利要求1所述的基于QT平台的检测系统的使用方法,其特征在于,按以下步骤进行使用:
1)、权限判断:操作人员输入个人信息;
1.1)、个人信息非法则返回步骤1)重新输入;
1.2)、个人信息具有管理权限则进入步骤2);
1.3)、个人信息具有检测权限则进入步骤3);
2)、界面层修改;
2.1)、初始化文件创建/修改:操作人员根据被检测飞机的待检参数及控制接口按照初始化表的制定规则按需填入/修改各字段内容,形成后缀为xlsx的初始化文件;
2.2)、QSS样表创建/修改:操作人员可根据对界面美化的要求对QSS文件进行创建/修改;
2.3)、初始化文件采用正则表达式进行合法性判断,合法则进入下一步,反之则返回步骤2.1)重新输入;
2.4)、显示/控制信号预览:检测系统中的UI预览子模块根据初始化文件完成显示信号、控制信号的创建,并对其进行布局,实现UI的预览;
2.5)、QSS样表装载预览:检测系统中的QSS生成子模块能够根据QSS文件实现界面层的预览;
2.6)、操作人员判断是否满意:是则进入步骤3),否则返回步骤2.1)重新输入;
3)、系统初始化:由检测系统根据修改后的初始化文件和QSS文件自动的依次进行系统初始化分类、显示/控制信号初始化、信号布局、初始化样式装载、通信动态库载入;
4)、判断是否需要自动测试:是则进入步骤5),否则进入步骤6);
5)、自动测试:
5.1)、自动输入控制信号参数值:由自动测试脚本自动向检测系统中输入某一个控制信号;此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;
5.2)、自动判读显示信号参数值:自动测试脚本根据显示信号的值并结合自动测试脚本中判断依据对测试结果进行判定;
5.3)、判断是否需要人工干预:是则进入步骤7),否则进入步骤8);
6)、手动测试:
6.1)、人工输入控制信号参数值:由操作人员向检测系统中输入某一个控制信号;此后,检测系统可将控制指令传达至飞控计算机中,待飞机动作完毕后,将动作状态反馈给检测系统并以显示信号的方式显示在界面层中;
6.2)、人工判读显示信号参数值:操作人员根据显示信号的值对测试结果进行判定;
7)、事件处理:操作人员记录本次测试结果;
8)、判断测试是否结束,判断结构分为以下三种:
a)、否、且此前处于自动测试中,则返回步骤5.1)自动输入下一个控制信号;
b)、否、且此前处于手动测试中,则返回步骤6.1)手动输入下一个控制信号;
c)、是,则结束。
8.根据权利要求7所述的一种基于QT平台的检测系统的使用方法,其特征在于,所述自动测试脚本按以下步骤进行自动测试:
S1)、按需进行自动测试脚本的创建/修改;
S2)、装载测试脚本,完成显示信号及控制信号的关联;
S3)、自动测试脚本完成控制信号及控制信号容器的参数自动生成及设置;
S4)、自动测试脚本依据循环次数进行控制信号/容器触发;
S5)、自动测试脚本结合测试脚本中判断依据测试结果判定,并根据显示信号的数据进行更新;
S6)、事件处理,判断是否需要人工干预,是则停止运行等待人工干预,否则顺序执行;
S7)、自动测试脚本判断检测是否结束,否则返回步骤S2),是则结束;完毕。
CN201811195928.4A 2018-10-15 2018-10-15 一种基于qt平台的检测系统及其使用方法 Pending CN109960492A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811195928.4A CN109960492A (zh) 2018-10-15 2018-10-15 一种基于qt平台的检测系统及其使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811195928.4A CN109960492A (zh) 2018-10-15 2018-10-15 一种基于qt平台的检测系统及其使用方法

Publications (1)

Publication Number Publication Date
CN109960492A true CN109960492A (zh) 2019-07-02

Family

ID=67023219

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811195928.4A Pending CN109960492A (zh) 2018-10-15 2018-10-15 一种基于qt平台的检测系统及其使用方法

Country Status (1)

Country Link
CN (1) CN109960492A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797276A (zh) * 2020-07-07 2020-10-20 江苏深蓝航天有限公司 一种火箭发动机显控终端控制方法
CN113268467A (zh) * 2021-06-09 2021-08-17 成都航创启辰信息技术有限公司 一种多层级复用icd数据库和数据库的自检方法
CN113505126A (zh) * 2021-06-18 2021-10-15 山东师范大学 基于国产数据库的信息管理安全性可视化方法及系统
CN113568609A (zh) * 2021-09-24 2021-10-29 成都中科合迅科技有限公司 基于Qss样式表的UI样式编辑方法
CN113656005A (zh) * 2021-06-29 2021-11-16 杭州华橙软件技术有限公司 应用组件库构建方法、应用组件配置方法及相关装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020035595A1 (en) * 2000-09-14 2002-03-21 Yen Hsiang Tsun Method and system for generating user interfaces
US20030086426A1 (en) * 2000-11-08 2003-05-08 Ivo Vandeweerd Computer based verification system for telecommunication devices and method of operating the same
CN1866221A (zh) * 2006-02-27 2006-11-22 华为技术有限公司 一种软件接口测试方法和装置
CN105659886B (zh) * 2007-03-23 2012-01-04 北京航天测控技术有限公司 虚拟界面定制与自动生成方法
CN103902256A (zh) * 2012-12-24 2014-07-02 航天信息股份有限公司 一种界面的生成系统和方法
CN105242597A (zh) * 2015-09-29 2016-01-13 中国科学院光电技术研究所 一种嵌入式控制器调试界面的自动生成方法
CN105468811A (zh) * 2015-10-10 2016-04-06 陕西千山航空电子有限责任公司 一种飞行参数系统自动化测试方法
CN106354027A (zh) * 2015-07-17 2017-01-25 陕西千山航空电子有限责任公司 一种面向icd的rs422总线信号仿真测试方法
CN106569801A (zh) * 2016-10-18 2017-04-19 中国运载火箭技术研究院 一种基于复杂参数的组态化显控系统
CN106940642A (zh) * 2017-01-13 2017-07-11 西南电子技术研究所(中国电子科技集团公司第十研究所) 动态icd配置的总线模拟器系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020035595A1 (en) * 2000-09-14 2002-03-21 Yen Hsiang Tsun Method and system for generating user interfaces
US20030086426A1 (en) * 2000-11-08 2003-05-08 Ivo Vandeweerd Computer based verification system for telecommunication devices and method of operating the same
CN1866221A (zh) * 2006-02-27 2006-11-22 华为技术有限公司 一种软件接口测试方法和装置
CN105659886B (zh) * 2007-03-23 2012-01-04 北京航天测控技术有限公司 虚拟界面定制与自动生成方法
CN103902256A (zh) * 2012-12-24 2014-07-02 航天信息股份有限公司 一种界面的生成系统和方法
CN106354027A (zh) * 2015-07-17 2017-01-25 陕西千山航空电子有限责任公司 一种面向icd的rs422总线信号仿真测试方法
CN105242597A (zh) * 2015-09-29 2016-01-13 中国科学院光电技术研究所 一种嵌入式控制器调试界面的自动生成方法
CN105468811A (zh) * 2015-10-10 2016-04-06 陕西千山航空电子有限责任公司 一种飞行参数系统自动化测试方法
CN106569801A (zh) * 2016-10-18 2017-04-19 中国运载火箭技术研究院 一种基于复杂参数的组态化显控系统
CN106940642A (zh) * 2017-01-13 2017-07-11 西南电子技术研究所(中国电子科技集团公司第十研究所) 动态icd配置的总线模拟器系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797276A (zh) * 2020-07-07 2020-10-20 江苏深蓝航天有限公司 一种火箭发动机显控终端控制方法
CN111797276B (zh) * 2020-07-07 2023-07-21 江苏深蓝航天有限公司 一种火箭发动机显控终端控制方法
CN113268467A (zh) * 2021-06-09 2021-08-17 成都航创启辰信息技术有限公司 一种多层级复用icd数据库和数据库的自检方法
CN113268467B (zh) * 2021-06-09 2021-12-28 成都航创启辰信息技术有限公司 一种多层级复用icd数据库系统和数据库系统的自检方法
CN113505126A (zh) * 2021-06-18 2021-10-15 山东师范大学 基于国产数据库的信息管理安全性可视化方法及系统
CN113656005A (zh) * 2021-06-29 2021-11-16 杭州华橙软件技术有限公司 应用组件库构建方法、应用组件配置方法及相关装置
CN113656005B (zh) * 2021-06-29 2023-11-24 杭州华橙软件技术有限公司 应用组件库构建方法、应用组件配置方法及相关装置
CN113568609A (zh) * 2021-09-24 2021-10-29 成都中科合迅科技有限公司 基于Qss样式表的UI样式编辑方法

Similar Documents

Publication Publication Date Title
CN109960492A (zh) 一种基于qt平台的检测系统及其使用方法
US9754059B2 (en) Graphical design verification environment generator
CN100492316C (zh) 测试自动化的系统和方法
CN106873972A (zh) 基于插件的电网规划仿真平台计算模块接入方法及系统
US7523440B2 (en) Dynamic generation of formatted user interfaces in software environments
US7865350B1 (en) Partitioning a model in modeling environments
Karneyeu et al. MCPLOTS: a particle physics resource based on volunteer computing
CN108280291A (zh) 可重用仿真模型接口设计与对接方法、装置和计算机设备
JP2018185850A (ja) ソフトウェアコードの視覚的実現方法及び装置
CN104662514A (zh) 基于模型关联关系的遗产软件系统的现代化
US20090030661A1 (en) Three-Dimensional Process Planning
CN111625226B (zh) 一种基于原型的人机交互设计实现方法及系统
CN111881662A (zh) 表单生成方法、装置、处理设备及存储介质
CN107608747A (zh) 表单系统的构建方法、装置、电子设备、存储介质
CN104239073A (zh) 一种数据维护系统快速原型开发系统及方法
US8839251B2 (en) Automating sequential cross-application data transfer operations
CN109491571A (zh) 一种配置项关联及其关联图展示方法和系统
CN107861721A (zh) 逆向图形化智能编程方法与装置、设备和存储介质
Cleary et al. Workspace: A workflow platform for supporting development and deployment of modelling and simulation
CN112214980A (zh) 树结构模板的定制和推荐
CN115495069A (zh) 基于模型驱动的煤炭工业软件流程实现方法、装置及设备
Silva et al. Analysis of WIMP and post WIMP interactive systems based on formal specification
CN103677841B (zh) 基于元素级模板的ietm的代码生成方法及装置
CN113919158A (zh) 一种用于飞行控制面板的仿真方法、装置及存储介质
CN104133680A (zh) 一种erp窗体模块的快速构建方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190702