主要内容

同步测试线束和模型之间的变化

测试线束提供孤立的环境以测试设计变化。您可以将从测试线束与主模型的更改同步,或者从主模型到测试线束。同步包括这些模型元素:

  • 正在测试的组件

  • 块参数

  • 可选地,模型或测试线束配置集

  • 可选地,模型工作区参数

您不需要同步基础工作区数据,因为它可以使用测试线束和主模型。子系统模型测试线束总是与其底层模型同步。

设置新测试线束的同步

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

  • 在线接头同步- 当测试线束打开时,测试线束组件,配置集和参数与模型同步到测试线束。此选项可用于:

    • 方框图

    • 子系统,包括eventsflow®图表和MATLAB功能块

    • 为了子系统参考块,只同步块参数,而不同步块内容。

    • 模型参考块

    • S函数块

    在线接头同步选项不可用:

    • SIL / PIL束

    • 子系统模型线束

  • 同步在接头和关闭时- 当测试线束打开时,测试线束组件,配置集和参数与模型同步到测试线束。当测试线束关闭时,相同的元件与模型的线束同步。此选项可用于:

    • 方框图

    • 子系统,包括StateFlow Charts和Matlab功能块

    • 为了子系统参考块,只同步块参数,而不同步块内容。

    • 模型参考块

    • S函数块

    • 子系统模型线束

    同步在接头和关闭时选项不可用:

    • 方框图

    • SIL / PIL束

    • 子系统模型线束

  • 仅在推动和重建期间同步—单击时同步推动变化重建线束推动变化同步从测试线束到模型的更改。重建线束将模型的更改同步到测试线束。此选项可用于:

    • 子系统,包括StateFlow Charts和Matlab功能块

    • 模型参考块

    • S函数块

    • 子系统模型,始终仅在推送和重建时同步。

    仅在推动和重建期间同步选项不可用:

    • 方框图

    • SIL / PIL束

    • 图书馆中的组件

  • 仅在重建期间同步—只在单击时同步重建线束重建线束将模型的更改同步到测试线束。此选项可用于:

    • 方框图

    • 子系统,包括StateFlow Charts和Matlab功能块

    • 模型参考块

    • S函数块

    • SIL / PIL验证模式组件

    仅在重建期间同步选项不可用:

    • 图书馆中的组件

如果使用命令行,请设置同步窗口财产与sltest.harness.Create.

笔记

如果您在SIL或PIL模式下创建测试线束模型块,测试线束中的块模式分别变为SIL或PIL。关闭测试线束时,此模式不会更新到主模型。

保持SIL或PIL区块的保真度

如果在测试线束中使用软件循环(SIL)或循环(PIL)块(PIL)块,请考虑在每次打开时设置测试线束以重建。定期重建测试线束使SIL / Pil块引用的生成的代码作为主模型的反映。

已存在测试控制的变更同步

要更改测试线束同步模式:

  1. 关闭测试线束。

  2. 在主模型中,单击块或Simulink上的线束徽章金宝app®帆布。

  3. 在Test Harness缩略图预览中,单击线束运营图标和选择特性

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

如果使用命令行,请设置同步窗口财产与sltest.harness.set.

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

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

检查未同步组件差异

如果您的测试线束没有同步更改,则可以检查测试线束和主模型之间的未同步组件差异。检查未同步差异是否有用,如果:

  • 您正在进行测试线束中的初步设计更改,并希望检查主要模型组件是否未被覆盖。

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

从测试线束窗口,选择检查安全带检查差异。如果组件的不同,则可以将测试线束的变化推向主模型,或从主模型重建测试线束。也看到了sltest.harness.check功能。

在检查非同步差异时,请考虑以下条件:

  • sltest.harness.check在测试线束和主模型之间的比较中仅包括框图,块参数和掩码参数。比较中不包括端口选项,编译的属性,隐藏参数和模型参考数据记录参数。

  • 如果组件包含SIMSCAPE™求解器配置块,检查结果始终表明该组件在测试线束和主模型之间不同。这求解器配置块受组件外部的Simscapt块的影响,因此在测试线束和主模型之间总是不同。

重新构建测试工具

重建测试线束以反映主要模型的最新状态。在测试线束中,选择重建线束.除了更新正在测试的组件和块参数之外,此操作还重建线束转换子系统。如果测试线束没有转换子系统,则重建会增加它们。

重建可以断开信号线路连接。例如,如果在主模型中更改的信号名称,则可以断开测试线束中的信号线。如果线路断开连接,请将信号线重新连接到测试或转换子系统的组件。如果指定用于使用SIL / Pil子系统的现有生成代码使用sltest.harness.Create.sltest.harness.set.,则脊甲重建使用该代码,而不是重新生成它。

有关更多信息,请参阅创建测试线束并选择属性sltest.harness.rebuild

将测试线束的变化推向模型

在更改系统在测试线束后,您可以将更改推向主模型。在测试线束中,选择推动变化.此过程覆盖主模型中的组件。

检查组件并将参数推到主模型

此示例显示了在测试线束中更新参数的基本工作流程,检查测试线束和主模型之间的同步,并将参数变为从测试线束推动到主模型。

此示例还包括程序化步骤。

打开模型sltestCar.该模型包括传输移位控制器算法和简化动力总成和车辆动态。

Open_System('sltestcar');

更新测试线束中的掩码参数

1.打开测试线束。点击徽章shift_logic.图表并选择ShiftLogic_InportHarness测试线束。当您从主模型推入或重建时,测试线束仅设置为同步。

sltest.harness.open('sltestcar / shift_logic'“ShiftLogic_InportHarness”);

2.双击shift_logic.子系统。为了齿轮变化前的延迟(勾选), 进入4..点击好吧

shiftlogicmask = 金宝appsimulink.mask.get('shiftlogic_inportharness / shift_logic');maskparamvalue = shiftlogicmask.parameters.Value;shiftlogicmask.parameters.Value =.'4';%设置为新参数值

检查测试线束和主模型之间的同步

在命令行上,运行sltest.harness.check功能。

[比较,详情] = sltest.harness.check('sltestcar / shift_logic'......“ShiftLogic_InportHarness”);

结果表明,由于更新的掩模参数,测试线束的待测部件不同。

比较
比较=逻辑0
细节
详细信息=带字段的结构:总体:0目录:1原因:'主模型中的利用组件的内容和组件的内容相同,但它们在块或掩码参数方面不同。

更新主模型的参数

1.在测试线束中,打开测试管理器。在这一点应用选项卡,在模型验证、验证和测试下,单击金宝appSimulink测试.然后,在测试选项卡,单击金宝appSimulink测试经理

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

sltest.harness.push ('sltestcar / shift_logic'“ShiftLogic_InportHarness”

在测试线束和主模型之间重新检查同步

在命令行上,更新主模型和测试线束。然后,运行sltest.harness.check功能。

set_param('sltestcar''simulationcommand''更新');set_param(“ShiftLogic_InportHarness”'simulationcommand''更新');
[比较,详情] = sltest.harness.check('sltestcar / shift_logic'......“ShiftLogic_InportHarness”);

结果表明,在测试线束和主模型之间的测试部件是相同的。

比较
比较=逻辑1
细节
详细信息=带字段的结构:总体:1内容:1原因:'主模型中的利用组件和组件的校验和相同。'
close_system('sltestcar', 0);

也可以看看

||

相关的话题