随着现代信息技术与软硬件技术的快速发展,嵌入式系统的功能日益强大,嵌入式设备和软件应用领域越来越宽泛。近年来,嵌入式软件代码量呈爆炸式增长,对测试的要求越来越高,尤其是涉及防务、航空、汽车等安全关键领域。
更加全面、系统的测试方法是必不可少的。更好的测试方法可以:
- 检验嵌入式软件是否满足需求;
- 检验预期结果与实际结果之间的差别;
- 保障装备质量。
- 嵌入式软件通常需要在特定的仿真测试环境中进行测试。仿真测试环境主要分为全实物仿真(目标机仿真)环境、半实物仿真(硬件在环仿真)环境、全数字仿真环境。
● 全实物仿真环境:建立真实的嵌入式环境并与外围物理设备相连接,形成闭环测试。该环境下测试所得结果的真实性最强,但是构造和使用的成本最为昂贵,可控行也比较差,难以进行数据收集和故障重现。一旦出现故障,很有可能会损害外部设备甚至整个物理环境,造成巨大的财产、人员损失。
● 半实物仿真环境:在目标机上测试软件,用仿真器模拟外部环境,以提供激励信息和接收反馈信息。该环境下测试接近实装测试,可靠性强。具有较好地收集数据、更容易地进行故障重现、可控性强且能实现自动化测试,风险小,收益大。
● 全数字仿真环境:用软件来仿真嵌入式环境和外围物理设备,也称为虚拟仿真,使用的都是虚拟的东西,例如:虚拟的控制器和虚拟的被测对象。这种仿真测试的可信度主要取决于模型的准确度,总体来说可信度低,应用场景少,与实际装备运行区别大。
对比三种测试环境,可以看出半实物仿真同其它类型的仿真方法相比具有经济地实现更高真实度的可能性。从系统的观点来看,半实物仿真允许在系统中接入部分实物,意味着可以把部分实物放在系统中进行考察,从而使部件能在满足系统整体性能指标的环境中得到检验,因此半实物仿真是提高系统设计的可靠性和研制质量的必要手段。
02半实物仿真测试的先进性和特点
半实物仿真,又称为硬件在回路中的仿真(Hardware in the Loop Simulation),是指在仿真实验系统的仿真回路中接入部分实物的实时仿真。
半实物仿真技术自20世纪60年代问世直到目前美国研制航天飞机,始终盛行不衰。美国大多数国防项目承包商都有一个或多个半实物仿真实验室,这些实验室代表了当前世界先进水平。
其先进性体现在:
(1) 有高速高精度的仿真机;
(2) 有先进完备的环境模拟设备。国内半实物仿真技术在导弹制导、火箭控制、卫星姿态控制等应用研究方面也达到了较高水平。
半实物仿真的特点是:
(1) 在回路中接入实物,必须实时运行,即仿真模型的时间标尺和自然时间标尺相同。
(2) 需要解决控制器与仿真计算机之间的接口问题。
(3) 半实物仿真的实验结果比数字仿真更接近实际。
03半实物仿真系统的基本组成和原理
半实物仿真系统是一种硬件在环实时技术,把实物利用计算机接口嵌入到软件环境中去,并要求系统的软件和硬件都要实时运行,从而模拟整个系统的运行状态。
● 仿真计算机:仿真计算机是实时仿真系统的核心部分,它运行实体对象和仿真环境的数学模型和程序。一般来说,采用层次化、模块化的建模法,将模块化程序划分为不同的速率块,在仿真计算机中按速率块实时调度运行。对于复杂的大型仿真系统,可用多台计算机联网实时运行。
● 物理效应设备:物理效应设备的作用是模拟复现真实世界的物理环境,形成仿真环境或称为虚拟环境。物理效应设备实现的技术途径多种多样,方案之一是采用伺服控制回路,通过伺服控制回路控制形成相应的物理量,方案之二是在已储存好的数据库中搜索相应的数据,转化为相应的物理量。
● 接口设备:仿真计算机输出的驱动信号经接口变换后驱动相应的物理效应设备。接口设备同时将操作人员或实物系统的控制输入信号馈入仿真计算机。
04半实物仿真开发环境ETest
ETest半实物仿真测试开发环境,提供图形化的测试用例开发环境,自动生成测试脚本;测试结果数据可以在线监控,同时生成测试结果信息,并自动生成符合要求的测试报告;ETest为开放性平台,提供C/C++, Python, Lua, Java等API,图形化监控软件界面可以根据用户需求定制。
ETest已经在航空、航天、兵器、船舶等多个军工领域科研单位数以百计的项目中中得到过广泛使用和验证,性能稳定可靠。
ETest 通用性强,针对不同的被测对象,无需从零开发测试工具,可以利用ETest快速搭建各类专业化仿真测试工装。与传统模式开发对比,在时间、人力等成本上降低80%以上,扩展灵活,覆盖充分。
ETest支持的操作系统除了中标麒麟、银河麒麟、统信软件外,还支持windows linux Mac以及实时的RT linux等。
版权归原作者 老元001 所有, 如有侵权,请联系我们删除。