某型制导弹弹载计算机测试系统设计
2015-12-16邢广义
李 晖,邢广义
(中国航天科技集团公司第四研究院第四十一研究所,燃烧、流动和热结构国家级重点实验室,西安710025)
某型制导弹弹载计算机测试系统设计
李 晖,邢广义
(中国航天科技集团公司第四研究院第四十一研究所,燃烧、流动和热结构国家级重点实验室,西安710025)
弹载计算机作为整个导弹控制系统的核心部件,有着最复杂的电气功能及对外接口。以某新型号制导弹弹载计算机测试方法为研究对象,Lab Windows/CVI为开发平台,通过自主编程,设计并实现了一套弹载计算机测试系统。使用串口服务器实现了多串口同时控制,在CVI环境中应用基于多线程的异步定时器实现了多个高精度时钟。该系统具有功能较强、构建简易、定时器精度高、具有一定通用性等特点。某型制导弹弹载计算机的验收测试结果表明该系统能够完成具有复杂电气功能的弹载计算机测试任务。
弹载计算机;LabWindows/CVI平台;测试;串行通信;多线程;设计
1 引 言
在新型导弹研制周期中制导弹处于最后阶段,弹载计算机作为整个导弹控制系统“大脑”,有着最复杂的电气功能及对外接口[1]。制导弹弹载计算机在发射阶段需通过弹地通信接口完成诸元装订、导航启动、数据链检测等发射时序;在中制导阶段需通过与惯性测量装置(或测姿仪)通信接口不断接收导航信息并依据控制律生成舵指令驱动舵机偏转;进入末制导后需通过与数据链通信接口不断接收来自地面发控装置上行的导引头控制指令,并结合来自导引头通信接口发来的导引头状态信息依据制导律生成舵指令驱动舵机偏转将导弹导向目标。可见弹载计算机有着复杂的功能及接口,自然,对弹载计算机的测试也成为一项较为复杂的事情。
现有的弹载计算机测试系统一般采用上下位机的形式,即上位机提供人机交互界面,下位机为嵌入式系统,上位机通过向下位机发送控制指令控制下位机向相应接口发出/接收信号来实现对弹载计算机的测试。然而这种方式往往系统构建时间较长,下位机嵌入式系统结构复杂、研制经费较大、测试功能不够灵活[2]。因此研制一套构建简易、功能较强、软硬件扩展性好、并具有一定通用性的弹载计算机测试系统很有必要。
以某新型制导弹弹载计算机测试为背景,设计并实现了一套弹载计算机测试系统。该系统能够模拟弹载计算机在整个发射飞行过程中的外界电气接口环境,对弹载计算机进行全面测试,系统具有构建简易、功能较强、精度较高、软硬件扩展性好,并具有一定通用性等特点。
2 测试系统构架
串行通信作为一种协议简单、成本低廉、稳定性高、构建方便的数字通信方式在导弹武器系统中的应用最为广泛[3-4]。本制导弹弹载计算机与弹上及地面其它电气部件的数字通信也均采用异步RS-422通信方式。测试系统构成如图1所示。
图1 测试系统构架
可见测试系统构成简单,易于构建,主要由串口服务器、直流稳压电源、加固笔记本、测试电缆等组成。
(1)串口服务器:测试系统的核心组成部分,型号为台湾MOXA的Nport 5650I-8-DTL,带8路RS232/RS422/RS485可配置串口,各路均带隔离,具有抗干扰能力强、扩展性和通用性好等特点;制导弹弹载计算机用到其中5个串口,分别对应发控接口、数据链接口、导引头接口、惯导接口、弹载记录仪接口。
(2)直流稳压电源:TDK可调直流稳压电源,用于给弹载计算机供电。
(3)加固笔记本电脑:通过网线连接串口服务器,对于笔记本电脑而言,直接看到的是本机上的8个串口。
(4)测试电缆:电缆1和电缆2,用于连接弹载计算机对外接口和测试设备,若弹载计算机对外电气接口不同则测试电缆不同。
(5)其他:示波器用于采集弹载计算机进行舵机自检时发出的舵指令,电缆2上的开关用于发出电气分离信号(脱插分离信号),电缆1上的开关用于控制弹载计算机上电或断电。
3 软件设计
3.1 软件总体设计
显而易见,测试软件是该测试系统的核心。制导弹弹载计算机测试软件应具备以下主要功能:
(1)多串口控制:能够至少管理和控制5个串口。
(2)测试精度:串口周期发送数据时间精度应尽量高,不大于2ms。
(3)测试完备性:软件应能模拟与弹载计算机相连的所有电气部件,完成与弹载计算机信息交互;能够发出错误的数据对弹载计算机进行容错测试。
④通用性:软件应能根据不同弹载计算机设计数据规格随意编辑各串口通信协议,做到通用;应能更改串口服务器各物理串口与串口号的映射关系,对各串口参数可配置。
⑤数据完整性:对各串口接收的数据能够进行完整保存,便于后续数据分析。
软件开发环境选用Lab Windows/CVI 2012。LabWindows/CVI(C/C++for Visual Instrument)是美国NI公司推广的面向测控领域的专业软件开发环境,其优势在于完全建立在ANSI C基础之上,实现了功能强大、使用灵活的C语言平台与用于数据采集、分析与显示的测控专业工具的有机结合,特有的交互式编程方法及丰富的功能面板和函数库可以很方便地设计出非常友好的测控操作界面[5-6]。
3.2 定时器设计
制导弹弹载计算机与其它部件数据交互复杂,大多数数据都是以一定周期发送或接收的,比如最关键的数据链上行的导引头控制指令、惯导输出的导航数据、导引头输出的导引头状态信息、发送给弹载记录仪的记录数据等,因此测试系统定时发送数据的时间精度较为重要。
LabWindows/CVI环境提供了高精度定时器,这是其作为专业测控软件开发环境相比一般通用软件开发环境的一大优势。LabWindows/CVI的高精度定时器基于多线程机制。Lab Windows/CVI提供了两种多线程机制,一种是线程池,另一种是异步定时器[7-8],其中异步定时器是以Windows下多媒体定时器为基础的高精度定时器,定时精度为1ms。本弹载计算机软件中所有周期性发送或接收数据的功能均采用异步定时器实现,软件共开出6个异步定时器,模拟了与弹载计算机相连的所有电气部件。Lab Windows/CVI环境下一个应用程序中最多可以开出16个异步定时器。
3.3 串口及通信协议管理
LabWindows/CVI作为专业的测控软件开发环境提供了RS232函数库,该函数库对Windows下的串口操作API进行了高度封装,使用非常方便。RS232函数库相比其它开发环境下的串口API优势在于对于被操作串口的数量及波特率不受限制,均可配置。虽然RS232函数库是针对RS232设计的,但对于软件而言,并不关心外部串口电平状态,本测试系统中在串口服务器的配合下,可以任意实现RS232、RS422、RS485的串口通信。
对于制导弹弹载计算机而言,与之通信的电气部件较多,通信协议也各不相同。为了便于用户对通信协议的编辑,做到一定的通用性,本软件对于协议的管理采用加载.ini配置文件的方式来实现。每个串口的发送和接收都对应一个协议配置文件,用户只需将串口通信协议以一定格式写入各自的配置文件中,软件启动时会自动加载协议,使用方便。
3.4 软件界面设计
软件界面设计遵从以下原则:①最小最大化原则:用户承担的工作量尽量少,计算机承担的工作量尽量大;②合理利用空间,保持界面简洁、自然友好,界面不可显得拥挤。;③依照功能和重要性对界面上的控件等元素合理布局,重要操作位于界面醒目位置,方便用户操作;④能够以最直观的方式显示控制结果及测试数据;⑤测试数据的保存应简单、快速。软件界面总体设计如图2所示。
图2 软件界面总体设计
5路串口控制位于界面顶端第一排醒目位置,串口开关采用LabWindows/CVI自带的二值开关控件,波特率可通过下拉框进行选择,旁边的LED灯用来直观显示串口打开状态。
模拟数据链发出的导引头控制指令开关采用二值开关控件,用户可通过界面设置控制指令发送周期以及导引头转入手动跟踪状态、转入自动跟踪状态、转比相对于计时零点的时刻,时刻到后控制指令转入相应状态。
模拟导引头发出的导引头状态信息开关采用二值开关控件,用户可通过界面设置状态信息发送周期、导引头俯仰/偏航框架角以及视线角速度数值。
5路串口的接收区均采用TextBox控件,实时显示串口接收内容,并具备显示/停止显示开关,“清空”按钮用来清空接收区。
5路串口的发送区均采用ListBox控件,软件启动后自动加载各路串口配置的通信协议,用户选中某个协议后点击“发送”即可发送数据,各发送区均具有“周期发送”单项框,选中后软件将自动周期发送选中的协议,发送周期也可以通过旁边的发送周期设置框进行设置。
软件具备“电气分离”模拟开关,模拟脱插分离,以便为导引头控制指令提供计时零点,采用二值开关控件,二值开关复位后软件回到初始状态。
软件为各个串口均开出了较大的数据接收缓冲区,可保证各串口接收到的所有数据不会丢失,界面上各串口接收区均配备有保存数据按钮,用户点击后可将串口接收到的所有数据一次保存为二进制流文件,方便下一步数据处理。
4 测试系统应用结果
弹载计算机测试系统已经顺利完成了某型制导弹弹载计算机的测试验收工作,且已通过了导弹飞行试验考核,弹载计算机全程工作正常。经多次试验测量,本测试系统在同时控制5个串口时10ms定时器误差最大为1.8ms,满足不大于2ms的精度要求。另外,在更换测试电缆及重新配置各串口通信协议的情况下,该测试系统也顺利完成了另一型号程控弹弹载计算机的测试验收任务,并已通过了导弹飞行试验考核,能够说明本弹载计算机测试系统具有一定的通用性。
5 结束语
弹载计算机作为整个导弹控制系统的“大脑”,有着最复杂的电气功能及对外接口,其测试工作也是一项较为复杂的任务。现行的弹载计算机测试系统大多基于上下位机形式构建,结构复杂、构建时间较长、研制经费较高。以某新型制导弹弹载计算机测试为背景,设计并实现了一套相对简易的弹载计算机测试系统。该系统能够模拟弹载计算机在整个工作过程中的外部电气接口,完成与弹上其它电气部件的信息交互,对弹载计算机功能进行测试。某型制导弹弹载计算机以及另一型程控弹弹载计算机的测试结果表明该系统具有测试功能较强、构建简易、具有一定通用性等特点,具有较强的实用性。
[1] 罗阳,张红波,王春雷.基于PXI+LVDS的弹载计算机测试系统[J].航空兵器,2011(1):60-64.LUO Yang,ZHANG Hong-bo,WANG Chun-lei.Test System of Missile-Borne Computer Based on PXI and LVDS[J].AERO WEAPONRY,2011(1):60-64.
[2] 叶中脉,秦开宇,陈华伟,等.航电系统通用总线监控软件的设计与实现[J].测控技术,2012,31(3):94-97.YEZhong-mai,QINKai-yu,CHENHua-wei.Design and Implementation of Monitor Soft for Universal Avionics Bus[J].Measurement&Control Technology,2012,31(3):94-97.
[3] 郑红星,曹晓绯.RS422在反坦克导弹上的应用研究[J].弹箭与制导学报,2008,4(4):32-35.ZHENG Hongxing,CAO Xiaofei.The Study of Application of RS422 to Anti-tank Missile[J].JOURNAL OF PROJECTILES,ROCKETS,MISSILESANDGUIDANCE,2008,4(4):32-35.
[4] 赵冬冬,窦满峰,陈哲.RS-422总线在大功率BLDCM通信中的抗干扰设计[J].测控技术,2010,29(8):76-78.ZHAO Dong-dong,DOU Man-feng,CHEN Zhe.Anti Jamming Design of RS-422 Communication Bus in High Power BLDCM[J].Measurement&Control Technology,2010,29(8):76-78.
[5] 李腾飞,张辉.基于Labwindows/CVI和Matlab的滤波器设计[J].电子科技,2007(3):29-35.Li Tengfei,Zhang Hui.Designing filters with Labwindows/CVI and Matlab[J].ELECTRONIC SCIENCE AND TECHNOLOGY,2007(3):29-35.
[6] 王浩,齐建宇.基于Labwindows/CVI的捷联惯导测试软件设计[J].航天控制,2011,29(2):56-60.WANG Hao,QI Jianyu.The Test Software Design for Strap-down Inertial Navigation Based on Labwindows/CVI[J].AEROSPACE CONTROL,2011,29(2):56-60.
[7] 谭秀萍,吴晓辉,范蟠果,等.Labwindows/CVI多线程技术在电负载系统中的应用[J].测控技术,2011,30(8):79-83.TAN Xiu-ping,WU Xiao-hui,FAN Pan-guo.Labwindows/CVI Multi-thread Technology in Electrical-Load System[J].Measurement&Control Technology,2011,30(8):79-83.
[8] 王俊鸣,张智军,张安旭,等.基于Labwindows/CVI的多线程技术的电磁兼容预测试系统设计与实现[J].弹箭与制导学报,2008,28(2):311-314.WANG Junming,ZHANG Zhijun,ZHANG Anxu.Design and Realization of EMC Prearrangement Test System Based on Multithreading Technique of Labwindows/CVI[J].JOURNALOFPROJECTILES,ROCKETS,MISSILES AND GUIDANCE,2008,28(2):311-314.
Design on Test System of Guided-Missile-Borne Computer
Li Hui,Xing Guangyi
(National Key Laboratory of Combustion,Flow and Thermo-structure,The 41st Institute of the Academy of China Aerospace Science and Technology Corporation,Xi’an 710025,China)
The missile-borne computer,as the core component of the control system of missile,has the most complex electric functions and external interfaces.The test method of the missile-borne computer of a new guided missile is provided for studying,a missile-borne computer test system is designed and implemented by programming based on Lab Windows/CVI development platform.The serial port server is applied to control multiple serial ports simultaneously,asynchronous timer based on multithreading is applied to achieve several high precision timers in CVI environment.The system has such features as powerful function,simple structure,high precision timer and certain versatility.The test results of the guided-missile-borne computer show that the system can accomplish the test task of missile-borne computer with complex electric functions.
Missile-Borne Computer;LabWindws/CVI Platform;Test;Serial Communication;Multithreading;Design
10.3969/j.issn.1002-2279.2015.04.020
TP392
A
1002-2279(2015)04-0077-04
李晖(1984-),男,陕西省咸阳市人,硕士研究生,工程师,主研方向:计算机测量与控制。
2015-01-09