标题 | 基于分布式网络的1553B数据处理软件设计与实现 |
范文 | 刘威 李杨 摘 要: 为了解决当前1553B数据处理单机软件制约海量数据情况下多课题并行处理效率的现状,在此采用基于Web的分布式中间件技术,将1553B数据处理软件开发成基于分布式网络的标准数据处理中间件。为保持参数名的惟一性,以ICD文件中的消息规范名为数据库中的参数名称,并且编写了该软件与飞行试验数据网络处理系统(FTDPS)的标准数据接口文件,根据分布式中间件的调用流程设计了相应的算法,最终实现100% 1553B数据的网络化并行处理,极大地提高了总线数据处理效率。 关键词: 1553B数据; 接口文件; 分布式网络; 数据处理软件 中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2014)06?0075?03 0 引 言 目前,中航工业试飞中心开发的基于C/S,B/S架构体系的飞行试验数据网络处理系统(FTDPS)已经解决了海量试飞数据的分布式存储及计算问题[1],并在重点型号任务的试飞过程中发挥着重要作用。该系统可以处理PCM数据和FCS数据[2],1553B数据仍然采用单机版处理。随着飞行试验中参试飞机飞行时间、测试参数的不断增加,总线数据量剧增,同时试飞工程师的参数处理需求更加多样,采用现行1553B数据处理方法给每位试飞工程师拷贝数据、处理数据、发送结果等过程耗时达到数小时,已经严重影响数据处理效率和型号试飞进度。针对这一问题,本文开发了基于分布式网络的1553B数据处理软件,使得课题人员在FTDPS的平台上可以根据任务所需个性化定制处理参数、处理时间段及飞行架次等课目。工程实践表明,本软件极大地提高飞行试验数据的处理效率,满足了多用户并行处理需求,保证了型号试飞任务进度。 1 ORACLE数据库设计 单机版的1553B数据处理系统由ICD信息数据库[3]和处理软件2部分组成。将1553B数据处理系统以分布式中间件的形式嵌入到FTDPS系统中,首要的工作就是在FTDPS的数据库中设计并增加新的ICD信息的ORACLE数据库,完成1553B数据处理系统数据库的网络化升级,文献[4]已经将ORACLE数据库设计完成,数据库总体设计如图1所示,为本文实现与FTDPS的输入输出接口工作,开发1553B数据处理中间件做好了准备工作。 2 1553B数据处理中间件设计 2.1 软件接口设计 开发FTDPS的数据处理中间件,本软件首先应保证总线参数名称的一致性,其次要满足系统标准的输入输出接口要求[5]。 2.1.1 参数名一致性 参数名称必须能够写入FTDPS数据库的TESTINSIDEPARAINFO表中,测试系统名称为Mini700,测试数据属性为1553B。参数名称是数据库表的主键,要求具有惟一性的特点;为了方便用户在浏览器端选择要处理的参数,参数命名也要符合总线参数特点,易于用户识别。因此在ICD文件中,选择总线信号名的规范名称作为数据库中的参数名,例如A/M1IR/00?00?00,可以满足参数名称惟一性和易于专业人员识别的需求,如图2所示。 2.1.2 软件接口统一 作为FTDPS的中间件,标准接口有2个要求: (1) 软件必须为可执行文件.exe,带有一个命令行参数,命令行参数为一个接口文件的名称; (2) 命令行参数所指的接口文件必须是文本文件格式。所以软件接口统一的工作实质是把原处理程序改写为CONSOLE APPLICATION控制台应用程序,完成读取图3所示的接口文件,然后按照FTDPS的输出格式输出。本文以Delphi7.0为软件开发工具[6],控制台程序关键代码如下: 2.2 系统调用软件流程 1553B数据处理软件以分布式中间件的形式嵌入到FTDPS系统中,按照已约定好的内部接口和整个数据处理系统之间协调通信,有效快速地进行数据处理,并准确地将结果信息返回给数据处理系统。客户端计算机需要安装分布式计算Active控件,主要完成的功能为向系统发出计算请求、与1553B数据处理中间件之间进行信息通信、监控计算过程的状态、接收系统返回的数据。FTDPS系统调用1553B数据处理中间件流程如下: (1) 客户端计算机(B端)首先向调度服务器发出数据处理申请,同时生成B端接口文件,调度服务器指定某台分布式计算服务器进行计算; (2) 计算服务器调用1553B数据处理中间件,访问存储在磁盘阵列上的原始总线数据文件进行解析计算,同时将状态信息输出到控制台,客户端ActiveX控件通过接口协议捕获并以界面的形式显示给用户。并输出标准格式的文件; (3) 计算结束后,结果文件通过Socket方式回传到用户客户端的Active X控件安装目录下。 图4展示了1553B数据处理中间件在FTDPS中的调用流程。图5是客户端ActiveX控件显示的软件运行状态示意图。其中*.eng文件为LST工程量文件;*.cod为文本文件,用户可以直接打开2种文件类型进行分析。*.inf文件是FTDPS的接口文件,*.sta文件为本次计算过程的状态文件。 2.3 软件设计 根据FTDPS系统调用1553B数据处理中间件的流程,设计软件的算法如下: (1) 获取接口文件名称后,解析接口文件协议,获取软件要处理的参数、时间段信息,以及结果文件存放位置等信息; (2) 访问ORACLE数据库中的ICD数据库,把所有参数相关的信息读取到结构体数组中; (3) 读取总线数据文件的时间信息; (4) 读取处理时间段内总线数据文件中的消息块信息,与数据库中读取的关键字逐一进行判断,若相等则表示找到数据中此参数的信息。然后根据MIL?STD?1553B(GJB289A)数据总线标准[7]中的总线消息收发标准进行计算、解析;同时将数据的时间等计算状态信息输出至控制台; (5) 根据接口文件协议,将结果文件传送到服务器指定的存放位置。 算法流程图如图6所示。 3 结 论 飞行试验数据网络处理系统(FTDPS)在型号试飞中发挥着重要作用,1553B数据处理中间件又是该系统中极为关键的子软件。1553B数据处理软件采用基于Web的分布式中间件技术,将数据处理软件做成标准化的分布式中间件,通过标准的接口协议成功地嵌入到FTDPS系统中。本文开发的软件作为FTDPS的1553B数据处理软件,已经用于某型号4架飞机的飞行试验总线数据处理,运行情况良好,数据处理效率满足了海量试飞数据处理的需求,保障了试飞数据及时高效的处理。 参考文献 [1] 王建军,党怀义.基于Web的分布式试飞数据处理系统结构设计[J].计算机测量与控制,2010,18(6):1452?1454. [2] 张阿莉,许应康,郭永林.飞行控制总线数据网络化处理软件设计[J].现代电子技术,2013,36(10):37?39,44. [3] 夏庆梅,徐亚军,熊华刚.航空电子接口控制文件的数据库管理[J].航空计算技术,2001,31(3):39?40. [4] 刘威,周嫦娥.1553B网络数据处理系统数据库优化设计[C]//航空试验测试技术交流会议论文集.北京:《测控技术》杂志社,2011:97?99. [5] 党怀义.ARJ21飞机试飞数据处理系统软件详细设计说明[M].西安:飞行试验研究院,2006. [6] 周果宏,罗述谦,罗起.Delphi 程序设计题解、编程技巧与疑难解答[M].2版.北京:清华大学出版社,2007. [7] 国防科学技术工业委员会.数字式时分制指令/响应型多路传输数据总线[M].北京:国防科学技术工业委员会,1998. [8] 赵彦.数据库原理与应用技术:SQL Server[M].北京:清华大学出版社,2009. 摘 要: 为了解决当前1553B数据处理单机软件制约海量数据情况下多课题并行处理效率的现状,在此采用基于Web的分布式中间件技术,将1553B数据处理软件开发成基于分布式网络的标准数据处理中间件。为保持参数名的惟一性,以ICD文件中的消息规范名为数据库中的参数名称,并且编写了该软件与飞行试验数据网络处理系统(FTDPS)的标准数据接口文件,根据分布式中间件的调用流程设计了相应的算法,最终实现100% 1553B数据的网络化并行处理,极大地提高了总线数据处理效率。 关键词: 1553B数据; 接口文件; 分布式网络; 数据处理软件 中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2014)06?0075?03 0 引 言 目前,中航工业试飞中心开发的基于C/S,B/S架构体系的飞行试验数据网络处理系统(FTDPS)已经解决了海量试飞数据的分布式存储及计算问题[1],并在重点型号任务的试飞过程中发挥着重要作用。该系统可以处理PCM数据和FCS数据[2],1553B数据仍然采用单机版处理。随着飞行试验中参试飞机飞行时间、测试参数的不断增加,总线数据量剧增,同时试飞工程师的参数处理需求更加多样,采用现行1553B数据处理方法给每位试飞工程师拷贝数据、处理数据、发送结果等过程耗时达到数小时,已经严重影响数据处理效率和型号试飞进度。针对这一问题,本文开发了基于分布式网络的1553B数据处理软件,使得课题人员在FTDPS的平台上可以根据任务所需个性化定制处理参数、处理时间段及飞行架次等课目。工程实践表明,本软件极大地提高飞行试验数据的处理效率,满足了多用户并行处理需求,保证了型号试飞任务进度。 1 ORACLE数据库设计 单机版的1553B数据处理系统由ICD信息数据库[3]和处理软件2部分组成。将1553B数据处理系统以分布式中间件的形式嵌入到FTDPS系统中,首要的工作就是在FTDPS的数据库中设计并增加新的ICD信息的ORACLE数据库,完成1553B数据处理系统数据库的网络化升级,文献[4]已经将ORACLE数据库设计完成,数据库总体设计如图1所示,为本文实现与FTDPS的输入输出接口工作,开发1553B数据处理中间件做好了准备工作。 2 1553B数据处理中间件设计 2.1 软件接口设计 开发FTDPS的数据处理中间件,本软件首先应保证总线参数名称的一致性,其次要满足系统标准的输入输出接口要求[5]。 2.1.1 参数名一致性 参数名称必须能够写入FTDPS数据库的TESTINSIDEPARAINFO表中,测试系统名称为Mini700,测试数据属性为1553B。参数名称是数据库表的主键,要求具有惟一性的特点;为了方便用户在浏览器端选择要处理的参数,参数命名也要符合总线参数特点,易于用户识别。因此在ICD文件中,选择总线信号名的规范名称作为数据库中的参数名,例如A/M1IR/00?00?00,可以满足参数名称惟一性和易于专业人员识别的需求,如图2所示。 2.1.2 软件接口统一 作为FTDPS的中间件,标准接口有2个要求: (1) 软件必须为可执行文件.exe,带有一个命令行参数,命令行参数为一个接口文件的名称; (2) 命令行参数所指的接口文件必须是文本文件格式。所以软件接口统一的工作实质是把原处理程序改写为CONSOLE APPLICATION控制台应用程序,完成读取图3所示的接口文件,然后按照FTDPS的输出格式输出。本文以Delphi7.0为软件开发工具[6],控制台程序关键代码如下: 2.2 系统调用软件流程 1553B数据处理软件以分布式中间件的形式嵌入到FTDPS系统中,按照已约定好的内部接口和整个数据处理系统之间协调通信,有效快速地进行数据处理,并准确地将结果信息返回给数据处理系统。客户端计算机需要安装分布式计算Active控件,主要完成的功能为向系统发出计算请求、与1553B数据处理中间件之间进行信息通信、监控计算过程的状态、接收系统返回的数据。FTDPS系统调用1553B数据处理中间件流程如下: (1) 客户端计算机(B端)首先向调度服务器发出数据处理申请,同时生成B端接口文件,调度服务器指定某台分布式计算服务器进行计算; (2) 计算服务器调用1553B数据处理中间件,访问存储在磁盘阵列上的原始总线数据文件进行解析计算,同时将状态信息输出到控制台,客户端ActiveX控件通过接口协议捕获并以界面的形式显示给用户。并输出标准格式的文件; (3) 计算结束后,结果文件通过Socket方式回传到用户客户端的Active X控件安装目录下。 图4展示了1553B数据处理中间件在FTDPS中的调用流程。图5是客户端ActiveX控件显示的软件运行状态示意图。其中*.eng文件为LST工程量文件;*.cod为文本文件,用户可以直接打开2种文件类型进行分析。*.inf文件是FTDPS的接口文件,*.sta文件为本次计算过程的状态文件。 2.3 软件设计 根据FTDPS系统调用1553B数据处理中间件的流程,设计软件的算法如下: (1) 获取接口文件名称后,解析接口文件协议,获取软件要处理的参数、时间段信息,以及结果文件存放位置等信息; (2) 访问ORACLE数据库中的ICD数据库,把所有参数相关的信息读取到结构体数组中; (3) 读取总线数据文件的时间信息; (4) 读取处理时间段内总线数据文件中的消息块信息,与数据库中读取的关键字逐一进行判断,若相等则表示找到数据中此参数的信息。然后根据MIL?STD?1553B(GJB289A)数据总线标准[7]中的总线消息收发标准进行计算、解析;同时将数据的时间等计算状态信息输出至控制台; (5) 根据接口文件协议,将结果文件传送到服务器指定的存放位置。 算法流程图如图6所示。 3 结 论 飞行试验数据网络处理系统(FTDPS)在型号试飞中发挥着重要作用,1553B数据处理中间件又是该系统中极为关键的子软件。1553B数据处理软件采用基于Web的分布式中间件技术,将数据处理软件做成标准化的分布式中间件,通过标准的接口协议成功地嵌入到FTDPS系统中。本文开发的软件作为FTDPS的1553B数据处理软件,已经用于某型号4架飞机的飞行试验总线数据处理,运行情况良好,数据处理效率满足了海量试飞数据处理的需求,保障了试飞数据及时高效的处理。 参考文献 [1] 王建军,党怀义.基于Web的分布式试飞数据处理系统结构设计[J].计算机测量与控制,2010,18(6):1452?1454. [2] 张阿莉,许应康,郭永林.飞行控制总线数据网络化处理软件设计[J].现代电子技术,2013,36(10):37?39,44. [3] 夏庆梅,徐亚军,熊华刚.航空电子接口控制文件的数据库管理[J].航空计算技术,2001,31(3):39?40. [4] 刘威,周嫦娥.1553B网络数据处理系统数据库优化设计[C]//航空试验测试技术交流会议论文集.北京:《测控技术》杂志社,2011:97?99. [5] 党怀义.ARJ21飞机试飞数据处理系统软件详细设计说明[M].西安:飞行试验研究院,2006. [6] 周果宏,罗述谦,罗起.Delphi 程序设计题解、编程技巧与疑难解答[M].2版.北京:清华大学出版社,2007. [7] 国防科学技术工业委员会.数字式时分制指令/响应型多路传输数据总线[M].北京:国防科学技术工业委员会,1998. [8] 赵彦.数据库原理与应用技术:SQL Server[M].北京:清华大学出版社,2009. 摘 要: 为了解决当前1553B数据处理单机软件制约海量数据情况下多课题并行处理效率的现状,在此采用基于Web的分布式中间件技术,将1553B数据处理软件开发成基于分布式网络的标准数据处理中间件。为保持参数名的惟一性,以ICD文件中的消息规范名为数据库中的参数名称,并且编写了该软件与飞行试验数据网络处理系统(FTDPS)的标准数据接口文件,根据分布式中间件的调用流程设计了相应的算法,最终实现100% 1553B数据的网络化并行处理,极大地提高了总线数据处理效率。 关键词: 1553B数据; 接口文件; 分布式网络; 数据处理软件 中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2014)06?0075?03 0 引 言 目前,中航工业试飞中心开发的基于C/S,B/S架构体系的飞行试验数据网络处理系统(FTDPS)已经解决了海量试飞数据的分布式存储及计算问题[1],并在重点型号任务的试飞过程中发挥着重要作用。该系统可以处理PCM数据和FCS数据[2],1553B数据仍然采用单机版处理。随着飞行试验中参试飞机飞行时间、测试参数的不断增加,总线数据量剧增,同时试飞工程师的参数处理需求更加多样,采用现行1553B数据处理方法给每位试飞工程师拷贝数据、处理数据、发送结果等过程耗时达到数小时,已经严重影响数据处理效率和型号试飞进度。针对这一问题,本文开发了基于分布式网络的1553B数据处理软件,使得课题人员在FTDPS的平台上可以根据任务所需个性化定制处理参数、处理时间段及飞行架次等课目。工程实践表明,本软件极大地提高飞行试验数据的处理效率,满足了多用户并行处理需求,保证了型号试飞任务进度。 1 ORACLE数据库设计 单机版的1553B数据处理系统由ICD信息数据库[3]和处理软件2部分组成。将1553B数据处理系统以分布式中间件的形式嵌入到FTDPS系统中,首要的工作就是在FTDPS的数据库中设计并增加新的ICD信息的ORACLE数据库,完成1553B数据处理系统数据库的网络化升级,文献[4]已经将ORACLE数据库设计完成,数据库总体设计如图1所示,为本文实现与FTDPS的输入输出接口工作,开发1553B数据处理中间件做好了准备工作。 2 1553B数据处理中间件设计 2.1 软件接口设计 开发FTDPS的数据处理中间件,本软件首先应保证总线参数名称的一致性,其次要满足系统标准的输入输出接口要求[5]。 2.1.1 参数名一致性 参数名称必须能够写入FTDPS数据库的TESTINSIDEPARAINFO表中,测试系统名称为Mini700,测试数据属性为1553B。参数名称是数据库表的主键,要求具有惟一性的特点;为了方便用户在浏览器端选择要处理的参数,参数命名也要符合总线参数特点,易于用户识别。因此在ICD文件中,选择总线信号名的规范名称作为数据库中的参数名,例如A/M1IR/00?00?00,可以满足参数名称惟一性和易于专业人员识别的需求,如图2所示。 2.1.2 软件接口统一 作为FTDPS的中间件,标准接口有2个要求: (1) 软件必须为可执行文件.exe,带有一个命令行参数,命令行参数为一个接口文件的名称; (2) 命令行参数所指的接口文件必须是文本文件格式。所以软件接口统一的工作实质是把原处理程序改写为CONSOLE APPLICATION控制台应用程序,完成读取图3所示的接口文件,然后按照FTDPS的输出格式输出。本文以Delphi7.0为软件开发工具[6],控制台程序关键代码如下: 2.2 系统调用软件流程 1553B数据处理软件以分布式中间件的形式嵌入到FTDPS系统中,按照已约定好的内部接口和整个数据处理系统之间协调通信,有效快速地进行数据处理,并准确地将结果信息返回给数据处理系统。客户端计算机需要安装分布式计算Active控件,主要完成的功能为向系统发出计算请求、与1553B数据处理中间件之间进行信息通信、监控计算过程的状态、接收系统返回的数据。FTDPS系统调用1553B数据处理中间件流程如下: (1) 客户端计算机(B端)首先向调度服务器发出数据处理申请,同时生成B端接口文件,调度服务器指定某台分布式计算服务器进行计算; (2) 计算服务器调用1553B数据处理中间件,访问存储在磁盘阵列上的原始总线数据文件进行解析计算,同时将状态信息输出到控制台,客户端ActiveX控件通过接口协议捕获并以界面的形式显示给用户。并输出标准格式的文件; (3) 计算结束后,结果文件通过Socket方式回传到用户客户端的Active X控件安装目录下。 图4展示了1553B数据处理中间件在FTDPS中的调用流程。图5是客户端ActiveX控件显示的软件运行状态示意图。其中*.eng文件为LST工程量文件;*.cod为文本文件,用户可以直接打开2种文件类型进行分析。*.inf文件是FTDPS的接口文件,*.sta文件为本次计算过程的状态文件。 2.3 软件设计 根据FTDPS系统调用1553B数据处理中间件的流程,设计软件的算法如下: (1) 获取接口文件名称后,解析接口文件协议,获取软件要处理的参数、时间段信息,以及结果文件存放位置等信息; (2) 访问ORACLE数据库中的ICD数据库,把所有参数相关的信息读取到结构体数组中; (3) 读取总线数据文件的时间信息; (4) 读取处理时间段内总线数据文件中的消息块信息,与数据库中读取的关键字逐一进行判断,若相等则表示找到数据中此参数的信息。然后根据MIL?STD?1553B(GJB289A)数据总线标准[7]中的总线消息收发标准进行计算、解析;同时将数据的时间等计算状态信息输出至控制台; (5) 根据接口文件协议,将结果文件传送到服务器指定的存放位置。 算法流程图如图6所示。 3 结 论 飞行试验数据网络处理系统(FTDPS)在型号试飞中发挥着重要作用,1553B数据处理中间件又是该系统中极为关键的子软件。1553B数据处理软件采用基于Web的分布式中间件技术,将数据处理软件做成标准化的分布式中间件,通过标准的接口协议成功地嵌入到FTDPS系统中。本文开发的软件作为FTDPS的1553B数据处理软件,已经用于某型号4架飞机的飞行试验总线数据处理,运行情况良好,数据处理效率满足了海量试飞数据处理的需求,保障了试飞数据及时高效的处理。 参考文献 [1] 王建军,党怀义.基于Web的分布式试飞数据处理系统结构设计[J].计算机测量与控制,2010,18(6):1452?1454. [2] 张阿莉,许应康,郭永林.飞行控制总线数据网络化处理软件设计[J].现代电子技术,2013,36(10):37?39,44. [3] 夏庆梅,徐亚军,熊华刚.航空电子接口控制文件的数据库管理[J].航空计算技术,2001,31(3):39?40. [4] 刘威,周嫦娥.1553B网络数据处理系统数据库优化设计[C]//航空试验测试技术交流会议论文集.北京:《测控技术》杂志社,2011:97?99. [5] 党怀义.ARJ21飞机试飞数据处理系统软件详细设计说明[M].西安:飞行试验研究院,2006. [6] 周果宏,罗述谦,罗起.Delphi 程序设计题解、编程技巧与疑难解答[M].2版.北京:清华大学出版社,2007. [7] 国防科学技术工业委员会.数字式时分制指令/响应型多路传输数据总线[M].北京:国防科学技术工业委员会,1998. [8] 赵彦.数据库原理与应用技术:SQL Server[M].北京:清华大学出版社,2009. 技术文 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。