主要内容

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

创作测试序列和测试评估

此示例显示如何使用 Test Sequence模块和 Test Assessment模块为变速器换档逻辑控制器创建测试框架。Test Sequence 模块改变输入到控制器的速度,而 Test Assessment 模块验证速度是否适合齿轮位置。有关更多信息,请参阅测试序列基础知识

创建测试序列

1.打开模型。

open_system("sf_car")

Example model sf_car.

2.右键点击 shift_logic 子系统并选择测试框架 > 为“shift_logic”创建

3.在“创建测试框架”对话框中的信源和信宿下:

  • 将源下拉菜单设置为 Test Sequence

  • 选择添加单独的 Test Assessment 模块

  • 选择创建后打开框架

The Sources and Sinks section of the Create Test Harness dialog box.

有关更多信息,请参阅创建测试框架

4.点击确定shift_logic 子系统的测试框架打开。

The shift_logic test harness

5.双击 Test Sequence 模块。测试序列编辑器 打开。

The Test Sequence Editor. The block has one step titled Run.

6.将第一步的名称从 Run 更改为 Accelerate,并添加指定初始节气门设置和速度如何增加的步骤操作:

speed = 10*ramp(et);

throttle = 100;

ramp 函数返回斜率为 1 的斜坡信号在时间 et 时的值,即该步骤的经过时间。对于此示例,步骤开始后的特定时间的速度是当时斜坡值的 10 倍。查看 测试序列编辑器 以了解更多信息。

7.右键点击 Accelerate 步骤并选择添加步骤。将此步骤名称由 step_1 改为 Stop,并添加当节气门和速度等于 0: 时停止测试的步骤动作

throttle = 0;

speed = 0;

8.在符号窗格中,指向常量,然后点击 The add data button.。输入 Limit 作为常量名称,然后点击添加数据

9.将光标移动到 Limit,然后点击编辑按钮 the Edit button。在常量字段中,输入 2。点击确定

The Data Limit dialog box

10.右键点击第一步中的转移列,选择添加转移。输入 Accelerate 步骤的转移条件。在此示例中,当系统处于四档至少两秒时,Accelerate 会转移为 Stop。在转移列中,输入:

duration(gear == 4) >= Limit

11.在下一步列中,选择 Stop

The Test Sequence Editor. There is an Accelerate step and a Stop step.

12.保存更改并关闭测试序列编辑器。

创建测试评估

接下来,向Test Assessment模块添加验证。

1.双击 Test Assessment 模块以打开编辑器。编辑器在步骤列中显示默认的 When 分解序列。有关更多信息,请参阅使用信号条件激活 verify 语句

The Test Sequence Editor. There are two substeps in one step.

2.将第一步的名称从 Run 更改为 Assessments

3.更改名称并添加四个子步骤的操作:

  • step_1_1 重命名为 Check1st。将 when 条件定义为 gear == 1,并添加 verify 语句来评估速度是否小于 45

  • step_1_2 重命名为 Check2nd。将 when 条件定义为 gear == 2,并添加 verify 语句来评估速度是否小于 75

  • 右键点击 Check2nd 步骤,然后点击添加步骤。将步骤重命名为 Check3rd。将 when 条件定义为 gear == 3,并添加 verify 语句来评估速度是否小于 105

  • 右键点击 Check3rd 步骤,然后点击添加步骤。将步骤重命名为 else。此步骤处理前面的 when 条件之外的仿真条件。在此步骤中,您无需指定任何操作。

The Test Sequence Editor. There is one step named Assessments with four substeps.

4.保存更改并关闭测试序列编辑器。

5.在测试框架中,添加一个 Scope 模块并将 speedthrottlegear 信号连接到示波器。

The shift_logic test harness with a Scope block.

6.打开 Scope 模块。在视图 > 布局中,选择三列、一行的布局。

7.在 Simulink 模型中的仿真选项卡中,将停止时间设置为 15,然后点击运行。查看 Scope 模块中的信号数据。速度图显示速度如何增加到最大值 105。节气门图显示,在整个测试过程中节气门值保持在 100。齿轮图显示齿轮以适当的速度换到下一个更高的齿轮。档位等于 4 并持续 2 秒后,速度和节气门归零,档位降低。

The Scope block with the three subplots. The plots display the throttle, speed, and gear signals.

8.在仿真数据检查器中查看 verify 语句的结果。

  • 在 Simulink 模型中的仿真选项卡中,点击数据检查器

  • 点击可视化和布局按钮 VisualizationAndLayoutIcon.png,然后在网格下,将设置为 3,将设置为 1

  • 选择一个图,然后从左侧窗格中选择一个评估。对每个其他地模块和评估重复上述操作。

The Simulation Data Inspector. A plot is displayed for each verify statement which show pass and untested results.

当模型运行时,Test Assessment 模块会验证每个齿轮位置的速度是否在正确的范围内。通过表示速度在正确的范围内。每个 verify 语句都针对特定的档位,因此当控制器处于与被测试档位不同的档位时,速度是未经测试的。Check1st 测试评估有两个通过区域,因为在测试序列的第二步中齿轮位置回到第一位。

另请参阅

|

主题