在航电设备的系统研制过程中,仿真技术和测试技术是不可或缺的设计辅助和检验手段,在减少损失、节约经费、缩短研制周期以及提高产品质量等方面发挥着巨大作用。与其他工程项目一样,航电设备在研制过程中也需要进行大量的测试工作。为验证性能指标和功能是否满足设计需求,或为从试验中获取定性、定量的参数以进行后期评定和处理,都需要进行适当、严密的测试,从而为设计方案的改进提供依据。
由于仿真技术本身具备一定的验证功能,因此与现有的测试技术有相当的可交融性。在航电设备的研制和测试过程中,都必须有仿真技术的支持:利用仿真技术,可根据系统设计方案快速构建系统原型,进行设计方案的验证;利用仿真验证成果,可在系统开发阶段进行产品调试;通过仿真功能,还可对与系统开发进度不一致的子系统进行模拟测试等。
针对航电设备产品结构和研制周期的特殊性,需要建立可以兼顾系统方案验证、调试环境构建、子系统联调联试、设计验证及测试的系统仿真平台。即以半实物仿真为基础,综合系统验证、系统测试、设备调试和快速原型等多种功能的硬件平台和软件环境。
FireBlade系统仿真测试平台
目前,众多研发单位都在思索着如何应对航电设备研制工作日益复杂的情况。如何采取高效的工程技术手段,来保证系统验证的正确性和有效性,是航电设备系统工程的重要研究内容之一,FireBlade系统仿真测试平台正是在这种大环境下应运而生的。
1 在航电设备研制工程中的定位
设备可被认为是航电设备研制工程中的终端输出,其质量的高低直接关系到整个航电设备系统工程目标能否实现。在传统的系统验证过程中,地面综合测试是主要的验证手段,然而,它首先要求必须完成所有分系统的研制总装,才能进行综合测试。如果能够结合面向设备的仿真手段,则可以解决因部分设备未赶上研发进度导致综合测试时间延长的问题。在以往的开发周期中,面向设备的仿真技术并没有真正得到重视:
(1)仿真技术的应用主要集中在单个测试对象上,并且缺乏对对象共性的重用;
(2)仿真技术缺乏对复杂环境与测试对象的模拟;
(3)仿真技术的应用缺乏系统性,比如各个阶段中仿真应用成果没有实现共享,即系统设计阶段仿真验证的成果,往往没有应用在后期产品测试阶段对设备的验证上。
FireBlade系统仿真测试平台从实际问题出发,基于面向设备的思想,提出了虚拟设备这一概念,用户可以根据任务的需求分解来设计设备的功能原型,实现用户自定义的界面设计、外部信号接口设计以及内部的数据处理流程,设计结果以虚拟设备描述文件的形式保存。虚拟设备概念的提出,弥补了综合测试中可能出现的不足,给出了测试依据,为设备研发后立即参与验证提供了可能。
2 在航电设备研制工程各阶段的作用
FireBlade系统仿真测试平台就以下4个开发阶段进行架构设计,以满足不同层次的仿真需求:
(1)系统总体方案设计阶段。
利用FireBlade对被测系统及各个子系统进行仿真模拟,为综合测试系统的研制提供虚拟的被测对象,辅助对系统设计中测试任务的合理性分析,以及对测试方案的研究,有效地提高了测试的针对性,准确地提炼了测试需求。此外,通过对被测系统的仿真,可以对各个子系统之间的接口进行观察和分析,初步模拟出接口的数据和信号特性,仿真数据和信息流程,从而验证系统设计的正确性。
(2)开发调试阶段。
利用FireBlade能够有效地在硬件接口层对系统中所有设备进行仿真和联调,在被测系统准备阶段对测试细则/测试脚本的编写提供验证,可以用来验证被测系统软件的正确性和可操作性,将会极大地节省开发调试费用,加快开发速度,并能有效地保证开发质量。
(3)系统联试阶段。
利用FireBlade的快速原型系统来保障可能因子系统研发未完成而延误的系统在线联试。在联试过程中,快速定位复杂系统中的故障;快速建立在线工作的设备原型,并能够提供丰富的在线监视和测试功能,为现场故障归零提供技术保障。
(4)系统验证测试阶段。
利用FireBlade构建被测设备的工作环境,实现现场故障状态的复现,以达到试验的完整性和真实性;能够对被测设备的工作环境进行模拟,实现测试用例的输入和自动循环测试,并能将IceBlade故障注入系统(即北京旋极信息技术股份有限公司的IceBlade故障注入系统)加入测试环路,实现对子系统间信号的故障注入,在物理层、电气层、链路层、协议层以及应用层进行故障模拟,在信号接口上模拟设备内部的运行异常,以实现对被测设备的逆向测试和容错性测试,在试验阶段实现故障复现、故障诊断和故障定位分析。
3 FireBlade系统仿真测试平台应用结构
针对于航电设备研制工程中的应用,FireBlade提出了分层的设计理念,使用户能够按照实际环境中的系统构建方式来搭建仿真系统。FireBlade的应用设计层可分为4部分,如图1所示。
单个仿真系统的应用包括以下设计资源:
·实际的被测系统。通过实时处理单元的外部接口与系统实现连接。
·仿真环境。用来设计虚拟设备,其在系统内通过仿真实现,并可以通过外部接口与其他设备连接,也可以直接在内部实现虚拟连接。
·界面工具。可以通过设计虚拟设备的面板实现人机界面,面板既可模拟仿真设备的人机接口,也可在运行时对系统进行控制与检测。
·仿真系统的总线和信号接口。属于仿真环境与被测系统之间信号数据交互连接的接口设备层,用来设置与其他资源之间的信号连接与映射。nextpage
仿真系统的应用结构如图2所示,其中虚拟设备的构建为仿真系统设计的重点,分为以下5部分:
(1)设备接口设计。
根据设备的ICD文件的定义,设计虚拟设备的外部接口及其特性。设备的外部接口包括系统支持的各种通信总线、模拟和数字信号、变量及事件接口。
(2)变量定义及映射。
变量是设备的外部接口和设备内各个运行模块之间实现数据交换和存储的单元。设置设备的接口可以与变量实现映射。
(3)事件定义及映射。
事件用来实现对运行模块和数据更新的触发,当设定的条件满足时事件有效,当事件有效时可以用来触发运行模块的运行、数据和设备接口的数据更新、内部计数等功能。
(4)运行模块。
运行模块是用来实现设备内部处理算法的可执行单元,可以由C代码设计、Matlab/Simulink导入。模块设计好以后可以实现重用。
(5)面板设计和应用。
面板作为人机交互的界面,既可以作为作为虚拟设备内部的一个模块也可以单独作为一个虚拟设备,独立运行。面板的设计采取所见即所得的控件设计方式,通过对控件的操作实现界面设计,设置控件和变量及事件的映射关系,实现显示和控制信息的自动更新。虚拟设备设计的原理如图3所示。
FireBlade系统仿真测试平台的功能特性
1 分布式仿真运算资源设计
FireBlade仿真测试平台采用“主控计算机+显控计算机+实时处理机+网络设备”的分布式仿真运算资源设计。采用这种分布式的运算资源分配可以有效提高系统实时性和系统仿真的灵活性。
2 面向设备的设计方案
在仿真测试实施过程中,FireBlade仿真测试平台(即北京旋极信息技术股份有限公司的FireBlade故障注入系统)用连接设置的方式实现虚拟设备和实际设备之间连接关系,这样就使系统的构建非常灵活。
对信号的录取过程不再仅仅是简单的变量值记录,而可以实现对总线、串口、模拟和数字信号原始数据的真实记录,这可以为事后的分析工作提供更多更详细的实验素材。
和其他系统周期性查询处理不同,FireBlade系统仿真测试平台运行采取实时事件触发和定时功能结合的方式,更接近实际设备的运行设计,提供更高的实时性能;支持运行模块和虚拟设备的可重用性;支持第三方提供仿真资源的能力。有些时候,建立虚拟设备需要合作单位的支持,而有些合作单位不愿意公开设计资料。系统提供第三方设计的方案,即脱离系统进行虚拟设备设计和原理验证的工具。第三方可以采用本工具实现运行模块的设计。这就为合作单位参与仿真设计提供了技术上的可能性。
3 支持多优先级多任务的设计方式
仿真设备设计中支持多任务、多优先级的设计,可以设置不同的触发事件,如总线消息、接口信号变化等。当事件被触发时,可以触发不同的运行模块,每个运行模块可以设定不同的优先级,可以更精确地实现对设备的仿真。nextpage
4 与IceBlade故障注入系统无缝集成
仿真测试平台的实时处理机通过以太网与故障注入系统相连。仿真系统和故障注入系统结合可以提供以下功能(见图4):
在试验过程中经常需要观察在故障注入前后系统的响应情况,故障注入系统在故障注入时可以向录取软件发送触发信号,用来触发一次录取操作,就可以根据预先设置把故障注入前后的选定信号的变化过程记录下来,用于事后分析或整理报告。
(2)故障注入类型和时机的控制。
多数情况下,故障注入的发生是要与仿真过程的进行相互配合实现的,即只有当仿真系统运行到特定的步骤时进行故障注入才有价值,这就需要仿真系统根据不同的运行情况向故障注入单元发送故障注入的设置、允许或触发信息,以保证故障注入能够和仿真进程有机配合。
(3)系统仿真和故障注入的自动运行。
有些情况下需要连续长时间对设备进行循环测试,这就需要实现无人值守的自动测试过程。在此情况下,就需要系统能够按照设置自动运行提前设置的仿真和故障注入脚本,并根据测试的进展实现故障注入,并实现系统的响应记录。
应用分析
FireBlade系统仿真测试平台含有多种总线接口以及扩展结构,并接受对扩展接口的定制。在客户的具体应用中,可以实现系统测试方案中“先分后总”的要求。如在某型号武器项目的需求定义中,接口方式包括STD-MIL-1553B总线、CAN总线、串口总线、AD/DA输入输出、隔离IO等;需开发的模块包括:中央控制器、车长、火控计算机、敌我识别系统、GPS等。项目开始时,指定开发计划,各个模块由职能不同的厂家生产,然后依据开发计划,制定模块的测试计划和综合测试计划。FireBlade系统仿真测试平台在某型号项目开发中的应用如图5所示。
在系统总体方案设计阶段,可以利用FireBlade对各个开发模块在仿真环境中进行模拟,初步对子系统的接口进行观察分析,对接口数据传递流程进行系统验证,修正系统设计和测试方案中的不正确因素。
针对具体模块的测试,需要详细考虑系统环境中各个模块的协作,以及数据交换等等复杂情况。中央控制器作为该武器项目的核心模块,功能是协调其他工作模块的任务调度,以及转发数据信息等等。在测试开始时,通常只会测中央控制器一个模块,所以在其他模块不具备的条件下,利用FireBlade丰富的硬件接口层资源,根据相关协议分别设计其他模块,来达到对中央控制器的测试目的。当仿真系统搭建完成后,就构成了一整套虚拟的测试环境,这其中只有中央处理器是真实设备。这样不仅可以加快验证具体模块的精度,还能够为后期真实设备进入测试后提供相关测试数据。
进入系统联试阶段,各种真实模块陆续进入测试环境,逐步替代掉FireBlade的仿真模块,直到整个环境全部由真实模块构成。另外,整个系统的健壮性和功能完整性也需要通过逆向测试和容错性测试进行验证。FireBlade提供了与故障注入系统IceBlade的无缝连接。
结束语
计算机仿真作为一门近年来发展迅速的综合学科,在多学科交汇的航天领域势必大有一番作为,仿真与测试的紧密结合也是推动仿真技术的契机。在测试理论中,循环、系统和环境是经常提到的关键词,计算机仿真技术的发展也离不开仿真成果的循环利用、整体系统的协调和仿真环境的搭建。FireBlade系统仿真测试平台基于用户实用角度,能够辅助进行系统方案验证、调试环境构建、子系统联调联试、设计验证及测试,推进了半实物仿真的理论应用,并提出了虚拟设备这一具有优秀实践性的设计思想,在航电领域获得了广泛关注和好评。