Main Content

本页采用了机器翻译。点击此处可查看英文原文。

sltest.xil.framework.Framework 类

命名空间: sltest.xil.framework

初始化测试平台,启动和停止仿真,并显示测试平台、变量和任务

自 R2022a 起

需要附加组件

本课程要求您安装并设置 ASAM XIL 标准的 Simulink Test 支持包

描述

sltest.xil.framework.Framework 是允许使用 Simulink® Test™ 支持 ASAM® XIL 标准的包的其他对象的类。您必须创建一个 Framework 对象才能访问其他 sltest.xil 功能:

sltest.xil.framework.Framework 类是 handle 类。

创建对象

描述

示例

frm = sltest.xil.framework.Framework 创建一个 Framework 对象。

属性

全部展开

框架配置,指定为 sltest.xil.framework.FrameworkConfiguration 对象。

属性:

GetAccess
public
SetAccess
protected

控制信号数据在测试平台记录并检索记录的数据,指定为 sltest.xil.framework.Acquisition 对象。

属性:

GetAccess
public
SetAccess
protected

控制测试平台的外部输入,指定为 sltest.xil.framework.Stimulation 对象。

属性:

GetAccess
public
SetAccess
protected

方法

全部展开

示例

全部折叠

此示例演示如何:

  • 创建一个 Framework 对象

  • 配置模型访问端口

  • 初始化框架

  • 显示测试平台变量及其记录率(Task)信息。

注意

此示例中的配置值是占位符。要设置测试平台的值,请参阅 使用 Simulink Test 支持包(针对 ASAM XIL 标准)进行实时测试

import sltest.xil.framework.*;
frm = Framework;

frm.Configuration.addModelAccessPort(...
   'MAPort1', ...
   'asamxil.v2_1', ...
   'VendorName','ABC Co.', ...
   'ProductName','ABC Test Bench', ...
   'ProductVersion','2020_1', ...
   'PortConfigFile',fullfile(pwd,'myABC_MAPPortConfig.xml'));

frm.init;

frm.displayAllTestbenchVariables;
frm.displayAllTaskInfo;

此示例演示如何:

  • 创建一个 Framework 对象

  • 配置模型访问端口

  • Signal 测试变量映射到 Model/Integ1/Output1 测试平台变量

  • 初始化框架

  • 创建 Signal 变量的实例

  • 设置并启动采集,以及启动和停止仿真

  • 获取结果数据并绘制结果

注意

此示例中的配置和变量映射值是占位符。要设置测试平台的值,请参阅 使用 Simulink Test 支持包(针对 ASAM XIL 标准)进行实时测试

import sltest.xil.framework.*;
frm = Framework;

frm.Configuration.addModelAccessPort(...
   'MAPort1', ...
   'asamxil.v2_1', ...
   'vendorName','ABC Co.', ...
   'productName','ABC Test Bench', ...
   'productVersion','2020_1', ...
   'portConfigFile',fullfile(pwd,'myABC_MAPPortConfig.xml'));

frm.Configuration.addTestVariableMapping(...
   'Signal','MAPort1','Model/Integ1/Output1');

frm.init;

signal = frm.createVariable('Signal');
frm.Acquisition.setupWithVariables(signal);
frm.Acquisition.start;
frm.start;
pause(2);
frm.stop;

result = frm.Acquisition.fetch;
hold on;
for i = 1:result.numElements
    plot(result{i}.Values.Time,result{i}.Values.Data);
end
hold off;

版本历史记录

在 R2022a 中推出