APP下载

弹箭飞行仿真实时控制系统研究*

2019-07-30吴国东王志军尹建平刘亚昆

弹箭与制导学报 2019年1期
关键词:实时性传输速率通讯

纪 录,吴国东,王志军,尹建平,刘亚昆

(中北大学机电工程学院,太原 030051)

0 引言

在弹箭飞行仿真系统中,为了避免通信过程中的不可预测性,因此应尽量缩短整套半实物仿真系统的响应延迟,从而提高弹箭飞行仿真系统的真实度。弹箭飞行半实物仿真技术对系统实时性及可操作性的要求很高,而现在应用最广泛的Windows操作系统实时性较差,难以满足高精度的弹箭半实物仿真系统对实时性的要求,但其操作的界面和通用性比较优秀,而且其具有良好的人机交互功能。因此在文中采用在Windows操作系统的内核中引入RTX的实时通讯和控制系统的方式,形成了Windows + RTX的实时系统,该系统既保留了Windows系统传统的优势又解决了实时性较差的问题[1-4]。

文中根据弹箭飞行半实物仿真平台的具体要求和总体方案要求,设计了弹箭飞行仿真系统的整体系统,并对弹箭飞行仿真系统的整体通讯协议进行了定义,在引入的RTX实时系统,采用了VC++对RTX中的子系统RTSS进行开发,并利用开发的RTSS程序完成弹道控制模型的实时解算、弹载计算机的实时控制、整体飞行质量的实时评估及数据的实时采集和转换等实时任务。

1 实时系统

1.1 RTX系统简介

RTX(real-time eXtension)实时操作系统是Interval Zero公司的一款嵌入式软件产品。在Windows 下安装RTX 实时操作系统,拓展了Windows操作系统内核体系,修改并扩展了整个硬件抽象层HAL(hardware abstraction layer),实现在Windows下独立的内核驱动模式,形成与Windows 操作系统并列的实时子系统。RTX运行于系统内核层,实时子系统RTSS的线程优先于所有Windows线程,提供了对IRQ、I/O、内存的精确直接控制,以确保实时任务的100%可靠性[5-6]。通过高速的IPC通讯和同步机制,RTX方便地实现与Windows之间进行高速实时的数据交换。RTX系统其使用的成本相比其他的实时开发软件比较低,而且开发的周期比较短,支持VC++6.0开发环境。

图1 RTX工作原理图

1.2 光纤反射内存网络

光纤反射内存网络(OFRMN, optical fiber reflective memory network)是一种基于光纤的超高速共享内存的解决方案,其主要是由光纤反射内存板卡通过光纤等传输介质相互连接而成,其实质就是一个双口可以读写的RAM, 本地计算机和网络端可以自由访问该RAM,进行透明的数据接收和发送[7-9]。因此其有以下优点:

1)高速,最大传输速率可达174 MB/s;

2)简单易用,主机负载轻,与操作系统和处理器无关;

3)反射内存网络上的数据传输是纯硬件操作,只需要几行代码就可以完成反射内存卡的读、写操作,彻底省去软件开发开销和周期;

4)允许采用不同的总线结构和不同操作系统的计算机以确定的速率分享实时数据;

5)节点距离可达10 km(单模)、300 m(多模);

6)简单的软件,较强的抗干扰能力和传输纠错能力。

2 弹箭飞行仿真系统

2.1 弹箭飞行仿真系统的整体系统

整个弹箭飞行的半实物仿真系统的结构图和控制系统设计图如图2和图3所示。其中图2主要是对整个弹箭飞行仿真系统组成的硬件设备及各设备之间的关系进行简要的说明,各设备都连接在高速的反射内存网络中,再通过实时软件连接,可以满足弹箭飞行仿真过程中的实时性要求。图3主要是对整个系统的通讯和控制方案做了简要的说明,该图显示了主控机发送初始化命令,然后再发送飞行仿真的位置、姿态、轨迹、速度及数防加速度等命令,首先将这些命令传递到数据服务器中,然后转台、卫星信号模拟器、弹道仿真机、模拟负载设备等设备从数据服务器中读取自己所需要的命令或者数据,最后进行弹箭飞行仿真系统试验,在此过程中,评估系统在不断的工作,对转台的飞行姿态和卫星信号模拟器的轨迹进行不断的调整,从而实现飞行仿真的准确性和逼真度,在次过程中软件系统的闭环测试模块从硬件系统中读取转台控制模块收到飞行转台的位置数据,实现飞行转台的闭环监测。

图2 弹箭飞行仿真系统的结构图

图3 飞行仿真控制系统方案设计图

2.2 弹箭飞行仿真系统通讯协议方案设计

在弹箭飞行仿真系统中,其通讯协议方案的设计是十分重要的,如果没有通讯协议,整个弹箭飞行仿真系统就不能协同工作以实现信息交换及资源共享,因此设计的仿真系统采用了UDP+TCP通讯方式,其通讯进程为:1)设备上线广播发送上线报文,在线设备收到后刷新设备列表,并回复收到上线报文,主设备记录各个从设备,从设备至少记录主设备和数据服务器;2)设备下线时发下线报文;3)主设备心跳方式,间隔时间发送更新列表;4)设备掉线后发掉线报文,重新连接;5)设备发送消息后,可以要求回复接收报文;6)设备间传输数据使用TCP协议。

//通讯端口

#define MFSS_UDP_PORT 0x1a85 //6789

#define MFSS_TCP_PORT 0x1a85 //6789

//通讯协议格式

版本号;消息序号;系统名;设备名;消息命令;消息内容

//协议版本号(双字节)

#define MFSS_VERSION 0x0100//高字节 版本号 低字节 小版本号

//消息序号 ID(4字节)

唯一ID,时间函数获取 time(),可以转换时间

//系统名(字符串)

#define MFSS_NAME_SYSTEM_CHS“弹箭飞行仿真系统”

#define MFSS_NAME_SYSTEM_CHS “Missile flight simulation system ”

//设备名(字符串)

#define MFSS_NAME_DEVICE_CHS“卫星信号模拟器”

#define MFSS_NAME_DEVICE_ENG “GNSS 8000”

#define MFSS_NAME_DEVICE_CHS “飞行转台”

#define MFSS_NAME_DEVICE_ENG “Flight turntable”

//各设备RTX-Win32通讯定义 (可分别定义多个)

//共享内存 Shared memory

#define MFSS_SHM_XXX “MFSS_XXX.SHM”

//互斥量 Mutex

#define MFSS_Mutex_XXX “MFSS_XXX.MUTEX”

//信号量 Semaphore

#define MFSS_SMP_XXX “MFSS_XXX.SMP”

//事件量 Event

#define MFSS_EVENT_XXX “MFSS_XXX.EVENT”

3 实时系统的方案设计

弹箭飞行仿真系统由Windows + RTX实时控制系统和光纤反射内存网络两大部分组成,Windows + RTX实时系统主要是实现各个设备之间的实时控制和通讯,而光纤反射内存网络是实现在实时控制和通讯过程中的准确性和稳定性的保证。

3.1 RTX 实时系统设计

3.1.1 RTX和Windows通讯对比

弹箭飞行仿真系统的各个设备之间控制和通讯,主要是在RTX实时系统下完成的,如图4和图5是分别在Windows下和RTX下进行通信的传输速率及传输时间。在相同的电脑上,同时进行Win32和RTX测试,可以发现RTX数据传输速率可以达到11.5 MB/s左右,而Win32下只有1.7 MB/s左右,RTX下传输速率大约是Win32的6.7倍;传输过程中反应时间在Win32下Minimum Time=489 μs,Maximum Time=1 797 μs,而在RTX下Minimum Time=158 μs,Maximum Time=580 μs,传输过程中的时间远小于Win32下,足以证明RTX系统相比于Windows系统具有更好的实时性。

图4 Windows下网络传输速率及时间图

图5 RTX下网络传输速率及时间图

3.1.2 实时控制系统方案设计

整个弹箭半实物仿真平台的实时控制系统由Windows和RTX进程两大部分组成[10],整个系统的整体架构图如图6所示。

图6 实时控制系统的架构图

从图6 可知Win32和RTX是通过共享内存进行通信。如图7所示,采用VC++编写的共享内存程序的Win32界面,经过测试可以实现共享内存的调用和回收,能够满足Windows和RTX程序的连接及信息的传递。如图8所示,显示出RTX程序下共享内存的建立过程。

图7 共享内存Win32操作界面图

图8 RTX下共享内存创建图

3.1.3 实时控制系统接口程序设计

对本系统中实时控制系统的接口程序进行了设计和测试,其中包括RTX下的PCI总线接口、普通的通信和接收数据的串口和并口及MOXA的4 口RS-232 通用 PCI 多串口通讯卡、API 接口的VC++6.0程序的编写和测试,通过对编写程序的测试,可以实现接口在RTX下实时的开关及数据的实时传输。如图9~图11是各个接口的测试图。由于在该系统中工控机自带单串口,传输速率达不到实时系统串口通讯的速率921.6 kbit/s,满足不了两个分系统之间数据的快速传输与实时通讯的需求,因此本系统外插入了MOXA CP-104UL V2的多串口卡,可以支持4个接口进行实时数据交换,从而达到所需要的实时性。

图9 RTX下PCI总线接口测试图

图10 单串口、并口及API接口测试图

3.2 反射内存网的实时通讯方案设计

3.2.1 反射内存板卡传输速率及工作流程

本系统采用通用电气公司的VMICPCIE5565反射内存卡构建拓扑结构网络。经过反射内存卡测试程序对数据传输速率进行了测试,可以得到连续接收和发送数据85 082 MB,该板卡组成的网络稳定传输数据的速率可以达到153 MB/s,而且经过测试在高速数据传输过程中,没有数据的丢失,可以满足弹箭飞行系统的数据传输的实时性要求,测试图如图12所示。图13准确的反应了光纤内存反射内存板卡的整个工作流程图,其采用的是中断式通讯,其主要特点是发送方和接收方通过事件进行同步,CPU占用少;发送方可以向多个指定的接收方发送数据,即1→n方式,也可以采用UDP广播的方式。

图12 反射内存卡速度测试图

图13 光纤反射板卡通讯流程

3.2.2 RTX下反射内存板卡程序设计及测试

本系统将反射内存板卡在RTX子程序下运行,如图14所示的VMI-PCI-5565板卡进行数据传输测试的界面,其可以实现数据连续实时的传输,传输过程中没有出现数据的丢失,延时时间在1 μs左右,可以实现弹箭飞行仿真系统的实时性要求。

图14 RTX下光纤反射内存卡程序测试图

4 实时系统运行测试及分析

本次试验,通过运行Win32界面,在RTX下运行实时系统,进行飞行姿态的测试和飞行轨迹的测试,其测试结果如图15和图16所示。经过测试,通讯命令和通讯数据能够满足弹箭飞行仿真系统的实时性、准确性和稳定性的要求。

图15 飞行转台姿态试验图

图16 GNSS卫星信号模拟器试验图

5 结论

文中将Windows良好的人机交互性和RTX高效实时性结合起来建立实时控制系统,并通过反射内存网络的设计,实现数据的实时和准确传输,该设计系统具有较好通用性和灵活性,可实现弹箭飞行仿真的实时通讯和控制要求。通过对整个系统进程进行试验测试,取得了大量的飞行参数和数据,试验结果为以后进行某型号导弹的研究提供了参考。

猜你喜欢

实时性传输速率通讯
《茶叶通讯》编辑委员会
《茶叶通讯》简介
三星利用5G毫米波 实现创纪录传输速率
夏季滨海湿地互花米草植物甲烷传输研究
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
国内首个AR通讯应用浮出水面
国内首个AR通讯应用浮出水面
数据传输速率
基于B/S的实时用户行为检测管理系统设计与实现