火箭发动机试验演示系统设计与应用

2021-02-03 07:12中国航天系统科学与工程研究院魏子衿齐俊鹏钟雷禹东山
网信军民融合 2021年1期
关键词:试验台子系统客户端

◎中国航天系统科学与工程研究院 魏子衿 齐俊鹏 钟雷 禹东山

◎中邮信息科技(北京)有限公司 程玲

引言

火箭发动机试验是保障火箭发射任务成功的主要任务之一[1],对全试验过程实施有效地跟踪与监控,为试验人员及时作出决策是保障试验成功的关键所在。为此,试验团队基于单机模式建设提出并建设了早期的发动机试验演示系统,提供参数表格和现场视频两种功能展现方式,采用VB编程语言实现。随着时代发展,现有演示系统操作效率低、功能单一、运行性能差等弊端逐渐展现出来,为解决上述问题,提出了基于网络架构的发动机试验演示系统。

演示系统存在于科研生产各个领域之中,一般分为面向科学研究与面向工程应用两大类。面向科学研究的演示系统[2~7]主要特点为小而细,即该类系统无需建设为大规模分布式架构,而需提供必要的用于观察科研细节的功能。典型如文献2所述的5G无线仿真演示系统,其仅仅设计并实现了针对单位面积吞吐量等3项关键指标的可视化展示,而文献3中描述的汽车操作稳定性试验演示系统也重点突出了对试验中6个指标的观测。文献4至7中同样仅面向相应实验中的关键环节设计。此外,上述六篇文献中的系统均是面向单机环境。相反,面向工程应用的演示系统则具备大而粗的特点[8~12],即系统往往设计为基于网络的分布式架构,且无需提供过多面向细节的功能。在文献8-12所描述的系统中,均对系统的网络结构进行了详细的描述。文献8中的系统主要由各类模拟装置、控制中心与指挥中心构成,文献9中的系统则是由演示客户端、演示引擎、态势信息库和仿真引擎构成。当然,工程应用包括一些小的应用领域,如教育、宣传等领域[13-14]。在文献13与14中所描述的系统均是教学演示软件,它们同样被设计为单机架构。

对于面向工程应用领域的大型软件系统,其基本结构一般由3个部分组成,即数据采集子系统、管理与服务子系统、前端展示子系统。三个子系统的工作流程大致为:首先由数据采集子系统采集并传递数据给管理与服务子系统,再由管理与服务子系统将采集数据做预处理分发给各前端展示子系统,最后由前端展示子系统通过多媒体或可视化模型的方式完成效果展示。

为此,本文构建了一套基于网络架构的火箭发动机试验演示系统(以下简称演示系统),将以往的展现方式扩充为4种功能展现方式,并提供一套较为丰富完善的管控工具和更现代化的演示体验。

表1 演示系统子系统清单

一、总体设计

火箭发动机试验基地一共建造了大小试验台十余座,每座试验台由主台、测控间、装配间、演示间、运输线路等多个部分组成。试验演示系统的最终展示部分部署在演示间。系统面向的人群包括国家领导、有关单位领导、外部专家、试验技术人员、学生以及航天爱好者。在试验进行过程中,发动机的上千个参数及发动机的直观状态是科研人员关注的重点,系统需要满足实时观测,并提供四大展现方式。四种展现方式分别为参数表格方式、参数曲线方式、流媒体方式以及工艺图方式。其中参数表格方式、参数曲线方式与工艺图方式用于展示参数,流媒体方式用于展示视频。工艺图方式是通过程序界面绘制工具绘制出可编程的图形界面,并在关键部位添加动画效果,再由程序控制参数实现参数驱动工艺图的实时动态展现。流媒体方式对接摄像头流媒体数据实现音视频实时播放。

为此,演示系统拟提供以下功能模块:(1)数据采集功能:接收现场参数数据及流媒体数据,并转发给演示系统服务端。(2)服务与管理功能:提供组织机构权限管理、数据采集与转发管理、试验基本信息管理、综合测控管理等管理功能。(3)客户端:提供四种展现方式给最终用户用于观看试验过程。

演示系统基于上述所述的三级模式设计,将上述功能拆分为11个子系统。在数据采集部分,建设NI数据转发系统、P6000数据转发系统、二级流媒体服务3个子系统,传递由传感器数据采集系统和流媒体数据采集系统获取的数据。在管理与服务端,建设权限服务、数据服务、存储服务、试验管理平台、综合测控平台5个子系统用于服务提供与系统管控。在 前端,建设桌面客户端一体机版、桌面客户端大屏幕版、浏览器客户端等3种客户端。表1给出了子系统清单。

图1 演示系统空间结构示意图

(一)硬件

结合试验台实际建筑环境,决定将全部硬件设备集中部署在测控间与演示间。其空间结构示意图如图1所示。

基于上述空间结构,给单试验台配备如下硬件资源:(1)测控间:数据转发服务器2台、流媒体服务器1台、应用服务器2台、存储服务器1台、交换机2台;(2)演示间:交换机1台、路由器1台、防火墙服务器1台、一体机数台、大屏幕投射PC机3台,监控PC机数台。其中一体机、监控机的数量由各演示间根据实际情况作调整。(3)其它:主干交换机1台、机柜、网线、不间断电源等。

试验台的网络结构拓扑图如图2所示。通过1台核心交换机连通测控间与演示间,3台子交换机连通数据转发网络、管理与服务网络以及前端演示网络。表2给出了各子系统与各硬件之间的部署关系。

(二)软件

软件部分设计为由3个数据转发子系统、5个管理与服务子系统及3种客户端组成,各软件系统的功能描述如表3所示。

表2 子系统与硬件部署关系

各子系统间的工作流如图3所示。

图2 试验台网络结构拓扑图

图3 子系统间数据与控制流

其中数据流在权限服务、综合测控平台指向试验管理平台的通道为权限、试验配置与运行状态数据,在其他通道为参数数据与流媒体数据。控制流在权限服务指向各子系统的通道为权限控制,在综合测控平台指向各子系统为程序运行状态控制。

在数据服务的描述中,数据服务传递数据直接面向全部客户端与存储服务,会带来一定的开销。系统采用组播的方式,利用交换机的中转性能实现带宽流量的有效控制。

表3 软件功能描述

二、关键技术

演示系统主要基于.net技术栈实现,采用其它对等的技术栈也可实现系统中全部功能。

(一)数据传输

参数与流媒体数据的传输是演示系统的核心功能。在试验试车期间,数据转发程序、数据服务、存储服务、各客户端中,均存在不间断的数据流。这对数据传输的可靠性提出了一定的要求。

这里主要考虑如下两方面:(1)网络带宽:主要关注数据服务至全部客户端传输主干线的带宽性能,即每秒能支撑多少个客户端接收多少个大小为某个字节数的数据包。(2)传输可靠性:即是否能接受数据包丢失的情况[15]。

首先分析网络带宽,设客户端数为n,数据服务发包周期为每秒m个包,每个数据包大小为p。则网络带宽w为:w=n×m×p(1 )。

这里n考虑最大演示间放置一体机、PC机总和约为100,即演示系统用户数约为100人。对于m,显示器刷新频率多为60Hz,高于此值人眼无法捕捉更多信息[16],但对于变化的数值,频率超过10Hz多数人已无法准确识别每一帧的数值。为提高容错率,这里取m为20Hz。对于p,参数数据和流媒体数据的计算有所不同。

对于参数数据,可采用TCP和UDP两种协议传输,由于TCP协议开销较大,这里首先按TCP协议做计算。常用UDP协议帧结构如图4所示,由此可见协议头与尾的字节总数为56字节。在一次最大规模的试验中,参数个数接近2000个,每个参数数值采用单精度浮点数存储,不存储名称等其它信息(可按存储顺序确定参数映射)。取参数个数最大值为2048,则p=80+2048×4=8272。因此w参数=400×20×8272×8 ≈ 504.88Mbps。

对于流媒体数据,试验台一级流媒体采用RTP协议传输,传输视频帧采用DVD标准,分辨率720×576像素,帧率25,采用MPG2编码,码率约为6Mbps。因此W流媒体=100×6=600Mbps。

图4 TCP协议帧结构

总干 线 带宽需 求值 为W总=W参数+W流媒体=1105Mbps≈1.08Gbps。试验台所使用的交换机为思科4503交换机,其背板带宽为64Gbps,足以支撑数据传输需求。

对于传输可靠性,实时流媒体要求可靠性较高,且一级流媒体已采用RTP协议,保证了可靠性,故二级流媒体继续采用RTP协议。对于参数数据,由于数据每秒钟跳动达10次之多,参观者仅感受数据变化的趋势,无需切实关注每个数据,因此可适当放宽可靠性要求。在此情形下,我们采用了UDP协议作为参数数据传输的协议,除了帧长略低于TCP协议外,该协议放弃了建立点到点连接、拥塞控制算法等特性也有助于传输速率的提升。

此外对于浏览器客户端,对于参数数据,由于浏览器内核不直接支持TCP与UDP协议,我们采用WebSocket协议作为替代。WebSocket协议是近年来诞生的新协议标准,其设计目的便是为了解决浏览器无法由服务器主动推送消息及轮询效率低的问题[17],这与我们的场景不谋而合。

(二)界面

在11个子系统中,除权限服务、数据服务和存储服务被设计为windows服务程序外,其余8个子系统均设计为包含用户界面的应用程序。对于这些系统,由于不同系统所处的平台及功能的各不相同,所采用的技术也不同。表4给出了各子系统所采用的界面开发技术框架的一个清单。

对于NI参数转发程序与P6000参数转发程序,因实际需要被设计为嵌入相应的采集系统的一部分,故沿用了相应采集系统的技术选型。这里的LabView为一种可视化编程语言,常用于测量、控制、仿真等领域。VB为Visual Basic,6.0是它的最后一个版本,作为最早诞生的快速图形化界面程序编程语言而被广泛使用。

二级流媒体服务、综合测控平台、一体机桌面客户端以及大屏幕桌面客户端采用WPF语言加c#语言开发,WPF语言全称是Windows Presentation Fundation,它作为微软提供的新一代桌面应用程序在2005年首次推出,并沿用至今。它提供类似html的xaml语言用于高效地构建界面树,并配合c#语言实现完整的程序功能。

表4 各子系统界面开发技术框架

图5 关键参数两种表现方式

图6 工艺图表现效果

试验管理平台与浏览器客户端采用ASP.net2.0配合c#语言实现。ASP.net是微软推出的网页开发框架,提供了大量可复用的界面控件,配合c#实现的后端支持,可快速实现既标准又美观的网站页面。

(三)可视化

在四种展现方式中,参数表格、参数曲线与工艺图三种展现方式是可视化方式,如图5所示。

参数表格在数据表格中罗列了选定的参数,对参数实测值按指定周期实时刷新显示。参数曲线图则按指定周期刷新时移曲线,一个曲线坐标轴下可包含多条曲线,当试验发出点火信号后,曲线图出现时间坐标,记录点火持续时间。

工艺图即模仿试验台实际工艺图的演示版本,如图6所示。除包含图本身的静态结构外,对图中各种可动态化的元素做了参数驱动控制,这些元素包括各类开关、指示灯、液位罐液位以及数字量的直接展示等。每个动态元素均受相关参数的影响,当参数值变化时,元素的展现效果也会相应的变化。

(四)通信

如图3,各子系统间涉及数据流与控制流的传递。由于各子系统所承担的任务及采用的技术框架不同,系统采用了如下4种数据传递技术。

1、UDP

UDP即用户数据报协议,我们利用该技术实现参数数据的传输,从参数转发程序、到各服务及管理平台、最后到各桌面客户端,均采用了UDP方式。在UDP包中,我们自定义了协议头,其中包含信源、时间戳、帧长、数据校验和等所需信息,保证数据传输过程的安全与可靠。

2、WebSocket

WebSocket[17]为一种主要工作在浏览器端的新兴协议,在数据服务给浏览器客户端发送参数数据时,采用了WebSocket协议,原因在于浏览器不支持UDP协议。相比TCP协议,WebSocket协议更轻,且工作模式与UDP较相似。此外协议也传递服务程序向浏览器端的控制数据。

3、RTP

RTP即实时传输协议,适用于流媒体传输。在各子系统间传递流媒体数据采用RTP协议。

4、WCF

WCF全称Windows通讯开发平台,主要用于在服务子系统、管理子系统及桌面客户端之间传递控制流。

三、应用效果

目前,该系统已成为航天相关型号单位的重要试验装备。近期,系统在多个试验区和试验台部署,并参与保障了大小几十次的型号相关试验,为领导决策分析、技术专家跟踪保障、航天爱好者学习进步提供了有效支撑。

系统主要在如下几个方面取得了成效:

1、为各类试验人员提供了一套网络互联的试验演示系统;

2、扩充功能展现方式支持参数表格、参数曲线、视频、工艺图四种展现方式;

3、提供了一套丰富且较为完善的试验信息管控工具;

4、提供了更现代化的试验演示体验;

5、提供客户端、浏览器等多种终端以供各类人群参与试验试车。

四、结束语

本文系统地介绍了火箭发动机试验演示系统。该系统基于数据采集、管理与服务及前端展现三层设计模式,系统地规划软硬件架构,解决数据传输、界面、可视化、通信四大关键技术问题,形成了一套先进的、完善的试验演示系统。现该系统已成为航天领域重要的科研生产装备,为祖国航天事业的发展作出了重要的贡献。

猜你喜欢
试验台子系统客户端
不对中转子系统耦合动力学特性研究
血管吻合试验台的研制及试用
GSM-R基站子系统同步方案研究
滚动直线导轨副静刚度试验台设计
驼峰测长设备在线监测子系统的设计与应用
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
KYJ-T型空压机试验台自动化控制系统研究与开发
防爆变频器加载试验台的设计