实时测试动态仿真模块测试支援套件ASAM自标准
的动态仿真模块®ASAM测试™支持包®自标准实现了ASAM自API,它是定义测试自动化工具之间通信的标准,例如仿真软件测试、测试台架等仿真软件实时™以及第三方测试台。ASAM XIL API允许运行使用其XIL框架在Simulink test中创建的实时硬件、软件和循环中模型(分别为HIL、SIL和MIL)测试用例。的仿真软件测试框架包括将变量从测试代码映射到测试平台的方法,配置要使用的端口,指定测试平台启动和关闭顺序,以及查询和控制测试平台的其他命令。
Simulink Test ASAM XIL标准工作流
方法创建测试的步骤ASAM XIL标准的Simulink测试支持包.工作流任务为:
安装支持包和设置试验台和您的模型-见安装和设置ASAM XIL标准的Simulink测试支持包.
如果要使用多个测试台,请为每个测试台重复设置和配置测试台任务。有关详细示例,请参见使用ASAM XIL标准的Simulink测试支持包创建测试.
配置测试台
按照以下步骤配置测试平台端口,将端口添加到Simulink test ASAM XIL框架,并将模型中的变量映射到测试平台变量。您可以将这些步骤的代码包含在与测试主体相同的文件中(请参阅创建测试主体).
类的实例
sltest.xil.framework.Framework
类。一次只能使用一个框架对象。使用
displayAvailableTestbenches
的方法sltest.xil.framework.Framework
获取可用测试台架的名称。创建XML端口配置文件。配置选项取决于测试台架。将示例端口配置文件中显示的产品版本号替换为您拥有的版本。示例端口配置文件如下:
实时仿真软件
使用
createPortConfigureFile
(实时仿真软件)创建文件。倪™VeriStand
<?xml version="1.0" encoding="UTF-8"?>
C:\NIProjects\Project.nivsproj dSPACE®
<?XML版本="1.0"编码="utf-8"?>
C:\DSPACEProjects\smd_1104_sl.sdf DS1104
添加与Simulink Test ASAM XIL框架一起使用的端口。看到使用ASAM XIL标准的Simulink测试支持包创建测试在MATLAB中包含此代码的位置®带有测试体的代码文件。将示例端口文件中显示的产品版本号替换为您拥有的版本。
实时仿真软件.
使用所有的实时仿真软件功能,添加所有三个端口。
framework.Configuration.addModelAccessPort (...“MAPort”,...“asamxil.v2_1”,...“VendorName”,“MathWorks”,...“ProductName”,“自API”,...“ProductVersion”,“1.0”,...“PortConfigFile”fullfile (pwd,“myConfigureFile.xml”));framework.Configuration.addECUCalibrationPort (...“ECUCPort”,...“asamxil.v2_1”,...“VendorName”,“MathWorks”,...“ProductName”,“自API”,...“ProductVersion”,“1.0”,...“PortConfigFile”fullfile (pwd,“myConfigureFile.xml”),...“TargetState”,“开始”);framework.Configuration.addECUMeasurementPort (...“ECUMPort”,...“asamxil.v2_1”,...“VendorName”,“MathWorks”,...“ProductName”,“自API”,...“ProductVersion”,“1.0”,...“PortConfigFile”fullfile (pwd,“myConfigureFile.xml”));
倪™VeriStand
framework.Configuration.addModelAccessPort (...“MAPort1”,...“asamxil.v2_1”,...“VendorName”,国家仪器公司,...“ProductName”,“NI VeriStand ASAM XIL接口”,...“ProductVersion”,“2020”,...“PortConfigFile”fullfile (pwd,“NIVeriStandPortConfig.xml”));
dSPACE
framework.Configuration.addModelAccessPort (...“MAPort1”,...“asamxil.v2_1”,...“vendorName”,“dSPACE GmbH”,...“productName”,“自API”,...“productVersion”,“2021年”,...“portConfigFile”fullfile (pwd,“dSpaceConfig.XML”));
使用
框架。配置
显示配置的摘要。
将测试中使用的测试变量名映射到指定测试台架的测试台架变量名。还可以为变量指定任务(即日志记录速率)。要显示可用的测试台架变量id,请使用
displayAllTestbenchVariables
方法sltest.xil.framework.Framework
类。要查看关联的任务,请使用displayAllTaskInfo
方法。看到使用ASAM XIL标准的Simulink测试支持包创建测试在测试体的MATLAB代码文件中包含此代码的位置。此示例将
RPM
的测试变量名目标/控制器/仿真模型/模型/ simple_R2020a_2 /外港/ Out3
试验台变量名。framework.Configuration.addTestVariableMapping (...“转”,“MAPort1”,...[“目标/控制器/仿真模型/模型”...' / simple_R2020a_2 /外港/ Out3 ']);
创建测试主体
在MATLAB代码文件中编写测试体。如果您将测试体编写为函数,则可以从定义不同配置的函数中调用它。测试主体步骤独立于测试平台。一旦定义了测试主体,就可以像使用任何测试台架配置一样使用它。
测试体通常包括以下步骤:
使用
初始化
初始化测试台架。实例化映射的测试变量,以便您可以在测试体的其余部分中使用它们。
将模型中的参数调整为您的测试所需的值。您可以在任何时候更改这些值,但是如果您在测试中间更改值,那么时间是不确定的。
设置收购,包括触发条件,并启动它。
设置刺激并启动它。
在任何时候,如果需要,调用
slt。测试Case
方法,例如sltest.TestCase.verifyThat
,以确定测试用例的通过或失败状态。方法等待采集或模拟完成,或停止模拟
停止
方法。获取日志数据。
将记录的数据结果推到Test Manager。仅当您计划使用测试管理器运行测试时,才包括推送记录的数据。
运行测试
在配置测试平台并编写测试主体之后,在test Manager或命令行中运行测试。
MATLAB代码文件继承自
slt。测试Case
,它使您能够在测试管理器中打开并运行MATLAB代码测试文件。在测试主体代码中,您可以包括将记录的数据结果推到test Manager,然后使用将文件加载到test Manager开放>基于matlab的Simulink测试(.m).然后,像在测试管理器中运行其他测试用例一样运行测试。您可以在MATLAB命令行中运行代码,但是不能从命令行中将数据推到Test Manager。
对记录的数据执行额外的分析,例如使用verifySignalsMatch
方法将结果与基线数据进行比较。
限制
ASAM XIL标准的这些限制适用于使用ASAM XIL标准的Simulink测试支持包.
ASAM XIL标准不支持设置模型的停止时间。在一些试验台上,模拟在模型建立时的停止时间停止。其他测试工作台强制停止时间为
正
.在一些测试台上,日志记录与模拟开始的时间不同。这种时间差异可能导致您的测试不能精确地重复。使用一个
收购
触发器重复捕获记录数据中感兴趣的区域。触发器对应于T = 0
.ASAM XIL标准不提供验证结果的支持。使用
验证
方法从slt。测试Case
分析捕获的数据。ASAM XIL标准不支持枚举、定点或总线数据类型。
故障排除
通过使用这些,您可以显示有关可用测试工作台、变量和任务的信息sltest.xil.framework.Framework
方法:
displayAllAvailableTestbenches
displayAllTestbenchVariables
displayAllTaskInfo
另请参阅
sltest.xil.framework.Framework
|sltest.xil.framework.FrameworkConfiguration
|sltest.xil.framework.Acquisition
|sltest.xil.framework.Stimulation
|sltest.xil.framework.TestVariable