飞控计算机测试设备的设计与实现
为了对飞控计算机进行全面准确测试,本文提出了一种飞控计算机测试设备的软硬件设计方案。硬件部分主要是设计工控机中的两块板卡,产生测试系统需要的信号。软件部分以Windows XP为开发平台,标准C++为开发语言,最终能够合理调度硬件完成测试任务。经实际应用表明,该测试设备性能稳定,操作简单,结果准确,具有一定的实用性和推广价值。
0 引言
随着航空技术、控制理论、容错技术以及仿真技术的飞速发展,飞行控制技术有了很大的提高,并已经渗透到工业生产和军事研究的各个方面。飞控计算机是整个飞行控制系统的核心,主要完成控制率计算、余度管理、BIT(机内自检测)、系统调度、故障检测、空置率重构等关键特殊的任务[1],因此对其各项功能测试有着极其重要的意义。测试设备能对飞控系统的实时性、可用性、稳定性和可靠性进行完备测试。
飞控计算机应用具有对软硬件可靠性要求高、信号种类繁多等特点,而且对实时性要求高,导致其测试流程非常复杂。传统的飞控测试设备大多体积庞大,实现成本高,软件可移植性低[2]。本论文以某飞控计算机的测试需求为基础,研究并实现了一种基于PCI总线,以CPU模拟板和接口分组件模拟板为核心板的测试设备。经试验验证,该设备稳定性高,维护方便,能够对飞控计算机进行精确测试。
1 测试设备需求分析
测试设备硬件部分应满足:能够模拟并接管被测设备的CPU、模拟产生TMS320C25 CPU总线信号;为了对被测飞控计算机进行数据通路测试,板卡要求能模拟被测产品的接口分组件资源。
对于软件部分,要开发自己的设备驱动程序和应用程序。应用程序要易于操作和修改。此外,测试设备要能够进行自检,确保设备工作正常。
2 总体设计
该测试设备总体结构如图1所示。测控单元为产品提供电源信号、控制信号、产生各种数字信号实现产品测试。测控单元包括以下部分:
①工控机:整个测试设备的控制管理中心,通过其测试软件能合理调度硬件对飞控计算机进行各项测试,并生成数据报表。
②数字测试模块:用于产生飞控计算机的控制信号,同时具有I/O端口,用于模拟产生TMS320C25总线信号,并测试飞控计算机的输出信号。
③I/O模块:用于模拟产生TMS320C25总线控制信号,并测试飞控计算机的相应信号。
④程控电源:由控制程序控制输出,提供被测件的工作电压。
⑤通讯模块:实现工控机与程控电源及示波器之间的通讯。
此外,适配器用来实现测控单元与飞控计算机之间的信号调理及转接。通用示波器用于测试飞控计算机接口信号的波形。
3 测试设备硬件设计
整个测试设备的硬件系统由工控机及工控机中的两块板卡、程控电源及自用电源、示波器及示波器通道切换装置、程控电源过流保护装置及各个自检装置组成[4] ,如图2所示。
工控机作为系统的平台,安装和控制各板卡,运行各种自检和产品测试软件。CPU模拟板作为工控机中的PCI总线接口板[3],通过向被测产品发送“hold”信号,将被测产品中的CPU置于“hold”状态,并模拟产生TMS320C25 CPU总线信号,代替产品中的CPU对被测飞控计算机板上的各种资源进行访问测试。接口分组件模拟板同样是工控机中的PCI总线接口板[5],用来模拟接口分组件资源,如存储器单元、I/O资源等,以便对被测飞控计算机进行数据通路测试。示波器用于在动态测试中对规定的接口定时时序信号及接口控制信号进行测量,测量的结果通过USB接口送至工控机进行显示和判定。
程控电源为被测产品提供供电,程控电源通过RS-232接口连至工控机,加电、断电在计算机控制下实现,电源本身具有过压保护功能,但无过流保护功能,其过流保护功能由过流保护装置实现。设备自用电源为机柜中除被测产品及通用仪器之外的所有其它装置供电。示波器通道切换装置将需要连接至示波器进行测量的多个信号进行程控多路转换,转换为两路信号连接至示波器的两个输入通道。过流保护装置用于对产品供电电源进行过流保护,当供电电流超过预先设定值时,切断电源供电,并发出过流保护中断请求信号至工控机。
CPU模拟板及接口分组件模拟板自检装置代替被测飞控计算机产品,建立CPU模拟板及接口分组件模拟板之间的连接,以实现两个板卡之间的闭环联合自检。示波器通道切换自检装置产生多路可区分的信号连接至示波器通道切换装置。设备自用电源为示波器通道切换装置、过流保护装置、CPU模拟板及接口分组件模拟板自检装置及示波器通道切换自检装置供电。
4 测试设备软件设计
软件设计主要是在Windows XP 系统下,编译环境选择Visual C++6.0。软件采用分层设计的思想,最底层为驱动软件,即板卡的驱动程序,上层为设备的应用层软件。
4.1 应用层软件设计
应用层软件的组成如图3所示。
自检程序实现测试设备自身正确性检测,分为板卡自检及示波器通道切换自检。板卡自检实现CPU模拟板及接口分组件模拟板的自检,示波器通道切换自检则完成示波器通道切换装置的正确性检测。
芯片擦除测试是对作为程序存储器的E2PROM按规定步骤进行擦除操作,并测试擦除的正确性。芯片写入测试是将制定应用程序写入作为程序存储器的E2PROM中,并进行校验,以确定写入的正确性。RAM测试是指对RAM进行存储访问的功能性测试。E2PROM测试是指对E2PROM进行存储访问的功能性测试。数据通路测试是测试产品96芯接插件至两个37接插件信号的连通性。示波器观察测试是将需要观察的信号引至示波器,并观察、记录和分析信号特性是否满足要求。中断信号测试是由接口分组件模拟板产生一个中断请求信号,通过96芯XF信号连接至CPU模拟板,以测试中断响应的正确性。自动测试是一键完成用户规定的所有测试项目。
所有测试项完成后生成数据报表,方便用户观察测试结果。
4.2 驱动程序设计
开发PCI设备驱动程序,就是取得PCI板卡所占用的各种资源(内存、端口、中断和直接存储器存取(DMA)等),并提供给应用程序一条访问这些资源的途径。这里采用WDM模式进行驱动程序的开发。在驱动程序的设计过程中主要解决三个方面的问题:硬件访问、中断处理、驱动程序与应用程序之间的通信。
4.3 测试设备总流程
飞控计算机测试,分为静态测试及动态测试两个过程。测试设备总流程如图4所示。先进行静态测试,然后进行动态测试。只有两种测试的结果都正确时,才能判定飞控计算机的正确性。
静态测试具体方法是由测试设备中的CPU模拟板模拟CPU的工作时序,利用静态检测软件,在产品板上CPU(TMS320C25)非工作状态下,对产品的硬件资源(除CPU外)进行逻辑功能的检测。静态测试主要测试除CPU以外的板上资源逻辑实现的正确性,主要包括程序存储器测试、数据存储器测试、内部控制逻辑测试、调试接口及接口分组件接口连通性测试。
动态测试具体方法是由产品上的CPU运行专用的动态测试程序,对产品全系统进行实时工作条件下全面、细致的自我检测。动态测试检测的内容包括CPU、EPROM、SRAM、接口分组件接口等。在系统完成检测后,通过读取相应单元的测试代码,可对检测结果进行准确的判读,并对产品存在问题进行故障定位。
5 实验应用
设备软硬件系统设计完成之后,即可进行连接产品调试。调试过程为:首先运行测试软件[7],给目标设备上电,然后通过点击主程序界面的相应模块测试按钮进行相应的测试。程序面板的部分界面如图5所示。
6 结论
该测试系统采用装有PCI接口卡的工控计算机为硬件平台,软件设计采用分层设计思想,提高了系统的可靠性和可扩展性。该测试系统已被某研究所投入使用,实际应用表明,经过测试的飞控计算机系统(针对某无人机测试)其主要技术参数有一定的提升,如下所示:
①姿态(俯仰、横滚)保持精度:±2度;
②航向保持精度:±3度;
③气压高度保持精度:±40米(飞行高度>300米);
④悬停无线电高度保持精度:±3米;
⑤空速保持精度:±10千米/小时;
⑥自动导航精度:圆概率误差(CEP)50 米;
⑦发动机转速控制精度:±1%。
该测试系统采用流行、实用、可靠的软硬件测试技术,充分发挥各自的优点。从硬件设计上实现了模块化、系列化、通用化,以满足已知的测试分析需求、并兼顾未知测试分析需求的实现,结果准确、稳定可靠、易于操作,达到了设计要求。
作者:苏圣阳 来源:价值工程 2016年18期
上一篇:微课在电大计算机专业教学中的应用