主要内容

同步测试工具和模型之间的变更

测试工具为测试设计更改提供了一个隔离的环境。您可以将更改从测试工具同步到主模型,或者从主模型同步到测试工具。同步包括以下模型元素:

  • 被测组件

  • 块的参数

  • 可选地,模型或测试工具配置集

  • 模型工作区参数是可选的

您不需要同步基本工作区数据,因为它对测试工具和主模型都可用。子系统模型测试工具总是与它们的底层模型同步。

为新测试工具设置同步

创建测试线束时,可以指定测试线束中的更改与主模型同步的时间。同步可以自动进行,也可以手动进行。如果计划在测试线束中尝试不同的组件设计,请使用手动同步以避免覆盖主模型中的组件。具体取决于组件的类型在线束的测试下,您可以从多个同步选项中进行选择,这些选项是以下操作的组合:

  • 打开吊带同步—打开测试具时,测试具组件、配置集和参数从模型同步到测试具。这个选项适用于:

    • 方框图

    • 子系统,包括Stateflow®图表和MATLAB函数块

    • 子系统的参考块,仅同步块参数,而不同步块内容。

    • 模型

    • 功能

    打开吊带同步选项不适用于:

    • 银/公益诉讼利用

    • 子系统模型利用

  • 同步装具打开和关闭—打开测试具时,测试具组件、配置集和参数从模型同步到测试具。当测试装置关闭时,相同的元素从装置同步到模型。这个选项适用于:

    • 方框图

    • 子系统包括状态流程图和MATLAB函数块

    • 子系统的参考块,仅同步块参数,而不同步块内容。

    • 模型

    • 功能

    同步装具打开和关闭选项不适用于:

    • 方框图

    • 银/公益诉讼利用

    • 子系统模型利用

  • 仅在推送和重建期间进行同步-单击时同步推动改变重新利用推动改变同步从测试工具到模型的更改。重新利用同步从模型到测试工具的更改。这个选项适用于:

    • 子系统包括状态流程图和MATLAB函数块

    • 模型

    • 功能

    • 子系统模型,它总是只在推送和重建时进行同步。

    仅在推送和重建期间进行同步选项不适用于:

    • 方框图

    • 银/公益诉讼利用

    • 组件库

  • 仅在重建期间进行同步—只在单击时同步重新利用重新利用同步从模型到测试工具的更改。这个选项适用于:

    • 方框图

    • 子系统包括状态流程图和MATLAB函数块

    • 模型

    • 功能

    • SIL/PIL验证模式组件

    仅在重建期间进行同步选项不适用于:

    • 组件库

如果使用命令行,请设置SynchronizationMode财产sltest.harness.create

请注意

如果您在SIL或PIL模式中为a创建一个测试线束模型block,测试线束中的block模式分别更改为SIL或PIL。当您关闭测试装置时,此模式不会更新到主模型。

保持SIL或PIL块的保真度

如果您在测试工具中使用软件在环(SIL)或处理器在环(PIL)块,请考虑将测试工具设置为每次打开时重新构建。定期重新构建测试工具,使生成的代码被SIL/PIL块引用,作为主模型的反映。

更改现有测试线束的同步

修改测试利用同步模式。

  1. 关闭测试装置。

  2. 在主模型中,单击块或Simulink上的脊甲标识万博1manbetx®画布。

  3. 在测试工具缩略图预览中,单击利用操作图标并选择属性

  4. 改变同步模式在属性对话框中。

如果使用命令行,请设置SynchronizationMode财产sltest.harness.set

同步配置集和模型工作区数据

要在测试工具和主模型之间同步配置集和工作空间参数,请选择在重建时更新配置参数和模型工作区数据在工具创建或工具属性对话框中。

检查未同步组件差异

如果您的测试工具没有同步更改,您可以检查测试工具和主模型之间的非同步组件差异。如果:

  • 您正在测试工具中进行试探性的设计更改,并希望检查主要的模型组件没有被覆盖。

  • 您已经对主模型进行了设计更改,并希望检查必须重新构建哪些测试工具。

从测试工具窗口中选择检查工具检查差异。如果组件不同,您可以将更改从测试工具推到主模型,或者从主模型重新构建测试工具。也看到了sltest.线束.检查函数。

在检查不同步差异时考虑这些条件:

  • sltest.线束.检查在测试线束与主模型的比较中,只包括框图、框图参数和掩模参数。端口选项、编译属性、隐藏参数和模型块数据测井参数不包括在比较中。

  • 如果组件包含Simscape™解算器配置块,检查结果总是显示出测试线束和主模型之间的组件不同。的解算器配置块受到组件外部Simscape块的影响,因此测试工具和主模型之间总是不同的。

重建测试线束

重新构建测试工具以反映主模型的最新状态。在测试工具中,选择重新利用.除了更新待测试组件和块参数外,该操作还将重建线束转换子系统。如果测试工具没有转换子系统,重新构建会添加它们。

重建会断开信号线。例如,如果在主模型中更改了信号名称,则可以断开测试线束中的信号线。如果线路断开,将信号线重新连接到被测部件或转换子系统。如果您指定使用现有生成的代码为SIL/PIL子系统使用sltest.harness.createsltest.harness.set,线束重建将使用该代码,而不是重新生成该代码。

有关更多信息,请参见创建测试工具和选择属性sltest.harness.rebuild

将变更从测试工具推到模型

在测试工具中更改系统之后,您可以将更改推到主模型。在测试工具中,选择推动改变.这个过程覆盖主模型中的组件。

检查组件和推送参数到主模型

这个例子展示了一个基本的工作流,更新一个测试工具中的参数,检查测试工具和主模型之间的同步,并将参数更改从测试工具推到主模型。

此示例还包括编程步骤。

打开模型sltestCar.该模型包括变速器换挡控制算法和简化的动力系统和车辆动力学。

open_system (“sltestCar”);

更新测试束中的掩码参数

1.打开测试工具。点击徽章上的shift_logic图表,并选择移位逻辑输入测试工具。只有当您推入主模型或从主模型重新构建时,测试工具才会被设置为同步。

要从命令行打开测试工具,请使用:

sltest.harness.open (“sltestCar / shift_logic”“换档逻辑输入”);

2.双击shift_logic子系统。为换档前延迟(滴答),输入4.点击好啊

要从命令行更改该值,请使用:

shiftLogicMask = 万博1manbetxSimulink.Mask.get (“ShiftLogic_InportHarness / shift_logic”);maskParamValue = shiftLogicMask.Parameters.Value;shiftLogicMask.Parameters.Value =“4”%设置为新参数值

检查测试工具和主模型之间的同步

在命令行中,运行sltest.线束.检查函数。

(对比,细节)= sltest.harness.check (“sltestCar / shift_logic”...“换档逻辑输入”);

结果表明,由于掩模参数的更新,在测试线束中被测元件有所不同。

比较
比较=逻辑0
细节
1个原因:“被利用的组件的内容和主模型中的组件的内容是相同的,但它们在块或掩码参数方面是不同的。”

将参数更新到主模型

1.在测试中,在利用选项卡上,单击推动改变

2.在主模型中,双击shift_logic子系统。更新参数值。

要使用命令行推送更改,请使用:

sltest.harness.push(“sltestCar / shift_logic”“换档逻辑输入”

重新检查测试工具和主模型之间的同步

在命令行上,更新主模型和测试工具。然后,运行sltest.线束.检查函数。

set_param (“sltestCar”“SimulationCommand”“更新”);set_param (“换档逻辑输入”“SimulationCommand”“更新”);
(对比,细节)= sltest.harness.check (“sltestCar / shift_logic”...“换档逻辑输入”);

结果表明,该测试装置与主模型的测试组件是相同的。

比较
比较=逻辑1
细节
1个原因:“被利用的组件和主模型中的组件的校验和是相同的。”
close_system (“sltestCar”,0);

另请参阅

||

相关话题