运载火箭控制系统半实物仿真实时网络技术应用研究

发布时间:2013.09.06 新闻来源:反射内存-实时仿真技术网 浏览次数:

运载火箭控制系统半实物仿真实时网络技术应用研究

摘要:针对新一代运载火箭组合化、系统化、通用化的特点,必须在现有的运载火箭控制系统半实物仿真试验的基础上,建立新型的运载火箭控制系统分布式半实物仿真系统,实现仿真设备的组合化、功能的多样化。本文从系统总体角度出发,对运载火箭半实物仿真试验实时网络设备进行深入分析和科学选型,同时对其接13'软件进行设计,以提供实时网络各节点之间高效、方便的通信接13'。最终设计出比较完备的运载火箭半实物仿真试验实时网络集成方案,确保各种仿真设备能够连成一个有机整体,形成仿真试验能力。

关键词控制系统;半实物仿真;GE反射内存;实时网络;PCI5565;PMC5565;反射内存价格,反射内存测试

 

运载火箭控制系统半实物仿真是指在数学仿真基础上,把部分数学仿真模型用实物代替的一种实时仿真方法,又称硬件在回路中的仿真(HardwareIntheLoopSimulation,简称HILS)。半实物仿真比数学仿真更接近实际状态,对运载火箭控制系统的考核更全面、更真实有效,因此成为其研究过程的一个重要环节和手段。

实时网络是用于需要实时的应用领域的专用网络通信技术,一般采用基于高速网络的共享存储器技术实现。它除了具有严格的传输确定性和可观测性外,还具有速度高、通信协议简单、宿主机负载轻、软硬件平台适应性强、支持中断信号的传输等特点。

基于实时网络技术构建的运载火箭分布式半实物仿真系统通过相关实时网络产品组建成与传统电缆连接的I/O通讯模式完全不同的半实物仿真系统,满足运载火箭控制系统半实物分布实时仿真对网络实时性的高要求。

本文从系统角度出发,对运载火箭半实物仿真试验实时网络设备进行分析和科学选型,同时对接口进行设计,以提供实时网络各节点之间高效、方便的通信接口。最终设计出比较完备的运载火箭半实物仿真试验实时网络集成方案,确保各种仿真设备能够连成一个有机整体,形成仿真试验能力。

1基于实时网络搭建运载火箭分布式

实时仿真系统模型

1.1基于内存映射方式的实时网络系统简介

目前传统的以太网已经能够达到千兆级的传输速度,并得到了广泛深入的应用,可以搭建对实时性要求不高、仿真对象响应较慢、粒度较大、仿真对象绝大多数建立在计算机载体上的仿真模型,很少有实物在回路中的分布式半实物仿真系统,再加上其传输协议开销的不确定性因素,因此传统的以太网很难满足运载火箭控制系统半实物仿真对实时性要求很高的数据传输需要。而随着计算机网络技术的飞速发展,支持内存映射技术的共享内存光纤网络采用先进的计算机技术,具备了很强的支持分布实时仿真系统的数据传输能力,因此成为国内外构建分布式半实物仿真系统的首选方案。共享内存网络是一个实时的、基于内存的网络系统,其所有的工作都是由硬件完成的,没有软件开销,再加上采用光纤传输介质,因此可以达到数十兆字节的数据传输率和微秒级的数据传输延迟,更重要的是这种网络的传输延迟是确定和可以控制的,这是传统I/O接口通讯所难以达到的。它还具有通信协议简单、宿主机负载轻、软硬件平台适应性强、支持中断信号的传输等特点,适合构建大型复杂的分布式半实物仿真系统。系统的适应面宽,有利于仿真应用的重用,同时由于构建了一个分布式实时网络环境,便于仿真系统的扩充,给仿真系统以很大的灵活性。

 

图l共享内存光纤网络的逻辑工作原理图

共享内存光纤网络的逻辑工作原理见图1。在每个需要实时通讯的节点上插入共享内存网卡,每块网卡都有自己独立的局部内存,它通过局部内存映射将网卡上的局部内存映射到主机内存,用户读写网卡上的数据就如同读写主机内存上的数据一样快速方便。另外,每块共享内存网卡又通过网络内存映射,将分布的节点卡上的局部内存映射到一个虚拟的全局内存,即每个节点在写入本地节点卡的数据的同时也写入所有其他节点卡的内存,这样,用户对本地节点内存的读写相当于对全局内存进行读写,而这个全局内存是所有分布节点都可见共享的,实现了分布节点间的数据通讯。通过这种方式,所有的节点能透明地并确定地传送中断、消息或者数据块到其它的节点。由于共享内存网络是一个实时的、基于内存的网络系统,不仅可以达到数十兆字节的数据传输率和微秒级的数据传输延迟,而且这种网络的传输延迟是确定和可预期的,这极大地弥补了以太网络在运载火箭控制系统半实物仿真试验的不足,满足了运载火箭控制系统半实物仿真试验对于实时性的需求。

1.2应用于运载火箭分布式实时仿真系统的VMIC实时网产品综述

目前,主要的共享网络实时网络产品有美国VMIC公司的反射内存,Systran公司的SCRAMNet+这些产品均能较好的完成实时通讯的功能,只是在性能指标上有些差异。综合半实物仿真试验的需求以及对各类实时网络产品现状的了解,决定采用GE公司的VMIPCI一5565反射内存实时网卡。反射内存实时网卡是共享内存光纤网络的一种,它可通过分布式计算机系统提供对共享数据快速有效的访

问。VMIPCI一5565是VMICVMIxxx一5565反射内存实时网络产品系列中的PCI成员。同属于这一系列的还有VMIVME一5565,即VME总线兼容模板,以及VMIPMC一5565,即PCI子卡(PMC)。这3种产品都是网络兼容的,并且能够以任意结合集成在一个网络中。该系列的产品允许计算机、工作站、PLC、还有其它使用不同操作系统或无操作系统的嵌入式控制器实时地分享数据。

对于本地节点,反射内存模板以共享内存的方式出现。可以使用包括应用软件自身在内的各级软件来读写数据。写入一个节点内存的数据可以通过网络硬件传输到其它所有的节点,并且在这些节点内存中的储存地址都相同。这一数据传输过程不涉及任何节点的处理器。使用这个系统,网络中所有的节点都存有共享数据的本地拷贝以便可以即时访问。

总的来说,VMIPCI一5565产品具有如下特点:

1)高速易用的光纤网络(2.12G串行波特率);

2)最多256个节点,每个节点具有唯一的识别数,从0~255;

3)多模光纤的连接距离可达300m,单模光纤的连接距离可达10km;

4)动态包的大小,4~64字节数据;

5)传输率达47.1Mb/s(4个字节的包)到174Mb/s(64字节的包);

6)64Mb或128MbSDRAM映像内存;7)两个独立DMA通道;

8)通过简单的命令,网上任何节点可以对其它或所有网上节点产生中断;

9)错误检测以及冗余传输模式,用于抑制额外错误;

10)处理器无系统开销;

11)PCI64位66MHz传输。

1.3基于实时网络搭建运载火箭分布式实时仿真

系统模型

在整个运载火箭控制系统分布式半实物仿真试验系统的环节中,包含有各种用途的计算机,比如:模拟弹体运动的仿真主控计算机、用于分别放置惯组和平台的2个三轴转台的控制计算机、摆角测量系统的管理计算机、仿真数据实时采集处理及视景仿真计算机系统以及通过计算机实现的各种负载执行机构等效器,这些设备不可能集中在一个区域,但它们之间的数据通讯必须满足:传输低延迟、时间确定性、传输可靠性这3个基本要求。基于目前的运载火箭半实物仿真试验系统,初步设想建立如图2所示的基于VMIC反射内存实时网络搭建运载火箭分布式实时仿真系统模型。由图2可见基于VMIC反射内存实时网构成的一个环型结构的分布式仿真环境,每个计算机上都有一块VMIPCI一5565节点卡,具备光纤输入和输出两个接口,可用光纤与其它不同功能的计算机共同构成一个光纤内存雏菊链环实时网络系统,根据实际需要,可在环型网络的任意处新增节点。其中仿真主控计算机、其它仿真计算机、三轴转台控制计算机、摆角测量计算机、可视化数据处理系统管理计算机之间通过共享内存光纤实时网络进行数据交互;仿真主控计算机作为服务器,其它节点计算机为客户机。这种基于实时网技术的分布式半实物仿真系统的实时性是传统用电缆连接的I/O数据传输方式所不能比拟的。

2半实物仿真系统中实时网络接口软件设计

2.1VMIPCI一5565反射内存实时网卡基本操作函数库的编写

VMIPCI一5565反射内存实时网卡上共有5个寄存器,它们分别为:PCI配置寄存器、本地配置寄存器、运行时间寄存器、DMA控制寄存器与反射内存(RFM)控制状态寄存器。VMIC网络应用程序接口(API)对应了这5个寄存器的各个基本操作。

图2基于VMIC反射内存实时网络构建运载火箭分布式半实物仿真系统的模型

(RFM)控制状态寄存器。VMIC网络应用程序接口(API)对应了这5个寄存器的各个基本操作。在对VMIC网络应用程序接口进行深入研究之后,为了方便半实物仿真试验人员编写与VMIC实时网相关的有特殊需要的仿真程序,编写了如下的相关类函数,供用户在仿真程序中直接调用。同时,这些应用程序也将以函数库的形式提供给其它节点使用,其它节点通过该函数库可方便地利用实时网进行实时通信。对于这些类函数说明如下:

1)实时网卡基本操作函数,如打开、关闭实时网卡等;

2)通过VMIC实时网卡进行常规发送和接收数据的函数;

3)通过VMIC网络发送/接收字符串、整数、单精度浮点数、双精度浮点数或结束符的函数,有数据类型及数据长度标志位;

4)读取、设置或是清除读写标志位的函数;

5)发送/接收整数、单精度浮点数或双精度浮点数的函数,有读写标志位;

6)中断操作函数。

以上都是根据GE公司针对VMIPCI一5565板卡所提供的最基本的API函数经过改编所构建的类函数,此外,还编写了若干其它扩展的API函数,其中包括获取网络连接状态、设置DMA传输阈值等。这些类函数可基本满足运载火箭控制系统半实物仿真试验中仿真程序的需求,且在针对VMIC反射内存实时网络的驱动软件上已充分考虑了在运载火箭半实物仿真试验系统中的通用性和超前性。

2.2实时网数据传输分析

在VMIC实时网络中采用查询方式进行数据传输时,必须要解决数据传输的完整性、正确性以及读写冲突问题,这里在编写类函数的时候,就采用了标志位的方式解决了这些问题。在用查询方式进行实时网数据传输时,为了保证数据传输的正确性,避免读写冲突,采用了如图3所示的数据结构:在传输的数据前,增加4个字节的标志区。其中,第一个字节为写标志位,第二个字节为读标志位,第3,4个字节保留。

图3数据结构

 

2.2.1读写数据流程分析

如图4的读写数据方操作流程在VMIC实时网络中,假设有节点A和节点进行数据传输,且节点A为写人数据的节点,而节点为读取数据的节点。节点A通过读取读标志位判断是否有其它节点正在读数据,直到没有任何节点读数据后,节点A置上写标志位,并且开始写入数据,大约4.5s后,数据同时写入节点的相同区域,此时节点A在写完数据之后,清除了写标志位。当节点读取到数据写标志为1时,继续等待,直到写标志为0,代表节点A已写完了数据,且数据已传输到节点的相同区域后,节点才开始读该区域的数据。

图4读写数据流程

 

2.2.2数据传输正确性、完整性以及读写冲突分析对于节点A来说,不管节点读取数据时所占用时间是多少,节点A都会一直等到节点把数据读完,并且清除了读标志位之后,才将新数据写入该区域中,而且在写入数据的时候,置上写标志位,以保证其它节点不会读取数据以保证数据的完整性和正确性;而对于节点来说,也是一直要等到节点A写完数据,并且清除了写标志位以后,才被获准从该区域中读取数据,也能同样保证所读到数据的完整性和正确性。同时,由于设置了数据读写标志位,可以避免数据传送中的读写冲突问题。可以看出,通过设置数据读写标志位的方法完全能够保证数据传输正确性、完整性并解决读写冲突问题。

2.3实时网络通讯时各节点同步分析

VMIPCI一5565可提供4个网络中断。任何处理器都可以对网络的其它节点产生中断。另外,通过对一个寄存器的写操作,任何处理器都可以对网络的所有节点产生中断。为了实现写操作,作为发出源的VMIPCI一5565产生一个特殊的包,包括一个选通脉冲,发送节点的ID,目的节点的ID和32位的数据。当接收节点检测到数据包中的目的节点ID和选通脉冲符合自己时,就将发送节点的ID和数据存贮在4个深度为127的FIFO之中的一个中。这4个FIFO分别对应4个中断。将信息存储在FIFO中之后,如果经过软件允许,接收节点将会对本地处理器发出中断。存储在FIFO中的32位数据是用户可定义的,通常被看作是中断向量。作为中断服务的一部分,本地处理器从FIFO中读出该信息,并作出相应反应。因此在用VMIPCI一5565实时网卡构建半实物仿真系统时,完全可以利用实时网卡所提供的4个中断事件实现通讯时各节点的同步机制。图5是两个节点之间用中断方式进行数据传输的流程图。

图5中断数据传输流程图

 

由上图可以看出,利用VMIPCI一5565实时网卡的中断方式数据传输模式与前面所列举的已编写的相关中断函数配合可以实现多节点的数据同步传输。在中断发送之前,节点曰必须先使能一种中断事件,并且等待想要接收的中断事件。在两节点进行通讯时,节点A先在事先约定好的地址(也可采用不事先约定的方式:发送中断事件时,在与该中断事件随之发送的4个字节的数据中指定地址)内写入若干数据,然后由节点A发送一个中断事件,以告知节点曰,可以读取数据;节点曰在等待未超时的情况下一直等到节点A通过光纤发过来的中断事件后,首先判断该中断事件是否为自己要等待的中断事件,并且获取发送该中断的节点号。如果节点A所发送的中断事件正是节点曰设置为等待的中断事件,那么节点曰马上从对应地址内读取数据,接着可以设置是否继续等待其它中断事件还是发送自己的中断事件,达到通讯的目的;如果不是的话,则节点曰放弃该中断,继续等待,直到等待中断超时,退出中断模式。每个节点之间只有光纤传输过程的微秒级延时,可以实现真正意义上的各节点的同步。

3实时仿真监控软件的编写

在基于实时网络搭建运载火箭分布式实时仿真系统模型之后,经过对实时网络驱动技术深入细致的研究,利用VMIC实时网卡给出的最基本的API函数编写了适合于半实物仿真试验的函数库,并且在函数库中通过相关软件技术确保实时网数据传输的完整性、正确性并且无读写冲突,也同时确保了实时网络通讯时各节点的同步。通过汇总以上这些研究工作,可以编写出如下图所示的适用于运载火箭分布式实时仿真系统的实时网络监控软件。该软件可以独立运行在连接于实时网络上某节点的一台计算机上,它的功能是:

(1)用于实时监控反射内存上某段地址区间内的数据变化情况,并可作为数据记录设备将监控到的数据存储在本地硬盘上;(2)可以对基于VMIPCI一5565实时网卡构建的实时网络上任意节点或多节点进行中断模式下的数据传输,以达到中断测试的目的;(3)可以与任意节点或多节点进行带读写标志位的查询方式的数据传输,以达到查询测试的目的。该实时仿真监控软件采用VisualC++6.0编写,采用面向对象方式编程,力求界面友好,简单易操作且不失功能的完整性。可运行在WindowsNT4.0以上的操作系统下。

图6实时仿真监控软件运行监控时的界面

 

4结论

基于VMIC实时网卡建立的半实物仿真试验实时网络可将分布在试验室不同位置的仿真节点连接起来,以建立新型的运载火箭分布式半实物仿真系统,实现仿真设备的组合化、功能的多样化、以及各节点之间的实时通信。

随着运载火箭控制系统半实物仿真试验中仿真节点数量的日益增多,分布式半实物仿真系统对网络实时性以及数据传输速率的要求将进一步提高,实时网络技术在运载火箭控制系统半实物仿真试验中的应用将会越来越普遍。

参考文献

[1]刘志国,王仕成,金光军.基于实时网络的激光制导武器半实物仿真系统设计[J].计算机仿真,2003,20(5):20~21.

[2]王朝辉.面向实时分布系统的实时网络技术研究[D].西北工业大学硕士毕业论文,2003.

[3]肖卫国,尔联洁,谢廷毅.基于共享内存机制微机实时网的数据传输实时性研究[J].系统仿真学报,2004,16(8):1717~1720.

本文共分 1