主要内容

为输入测试用例加载数据

对于大多数输入测试用例,您尝试最小化时间点的数量。您加载的信号数据包括具有斜坡和不连续的样本。

导入测试用例的指导方针

通常在导入测试用例数据时,您希望最小化时间点的数量。测试数据侧重于信号数据中的不连续点。

  • 创建一个有坡道和台阶的信号。换句话说,信号有一个或多个不连续点。

  • 使用尽可能少的点创建信号。

  • 有Simulink金宝app®求解器在指定的不连续点执行。

要在Simulink中导入此信号,请使用a金宝app从工作空间从文件,或信号编辑器块,所有这些都支持过零检测。金宝app

你可以加载这些类型的数据:

  • 一个金宝appSimulink.SimulationData.Dataset

  • 数组

  • 金宝appSimulink.SimulationData.Signal

  • 结构

  • 包含所有输入端口(不支持)的数据的结构数组金宝app信号编辑器块)

  • 空矩阵-使用空矩阵的端口,您想要使用接地值,而不必创建数据值

  • 时间表达式(不支持金宝app信号编辑器块)

指定时间向量和信号值,但只指定输出形状跳跃点的时间步长。指定时间矢量的具体操作请参见指定时间数据

中描述的任何输入数据格式输入数据的形式,除了MATLAB®时间表达式。

测试用例数据示例

下面是测试用例数据的示例:

下面的两个例子使用这个测试用例数据。

使用工作区块作为测试用例

  1. 打开模型ex_data_import_test_case_from_workspace

  2. 使能过零检测。在从工作空间对话框中,选择使能过零检测。过零检测允许您准确捕获不连续。

  3. 为测试用例创建一个信号结构。在每个不连续点,在时间向量中输入一个重复的条目,这将产生一个零交叉,并迫使变步长求解器在这个确切的时间采取一个时间步长。有关详情,请参阅使用From工作区块加载数据

    定义var表示测试用例的结构:

    Var.time = [0 1 1 5 5 8 8 10];Var.signals.values = [0 0 2 2 2 3 3 3]';Var.signals.dimensions = 1;
  4. 导入测试用例结构,在From Workspace块对话框中,在数据参数,指定var

  5. 模拟模型。Scope块反映了测试用例数据。

对测试用例使用信号编辑器块

代替使用From Workspace块,您可以使用信号编辑器阻塞到任意一个:

  • 交互式地创建信号

  • 从mat文件导入信号

  1. 创建一个模型信号编辑器获得,范围块。

  2. 创建一个结构并将其保存在mat文件中:

    scenario = 金宝appSimulink.SimulationData.Dataset;时间= [0 1 1 5 5 8 8 10];Data = [0 0 2 2 2 3 3 3];场景{1}= timeseries(数据,时间);场景{1}。Name =“var”;保存var.mat场景
  3. 打开信号编辑器对话框中信号编辑器块。

  4. 在“文件名”参数中输入var.mat

  5. 活跃的场景参数,选择场景。点击好吧

    范围块显示反映了来自mat文件的测试用例数据。

相关的例子

更多关于