主要内容

初始化的面具

您可以添加MATLAB®面具的代码初始化面板编辑器来初始化一个蒙面的块。金宝app动态仿真模块®执行这些初始化命令初始化一个蒙面子系统在关键时期,如模型加载和模拟运行的开始。有关更多信息,请参见执行初始化命令

您可以添加面具这些案件的初始化代码:

  • 指定面具参数的初始值。例如,指定参数的初始值一个、类型一个= 5在初始化面板中。

  • 指定子块的价值。例如,

    set_param(“子块的名字”,“参数名”,“参数值”)
  • 创建一个self-modifiable面具。有关更多信息,请参见变为无效来创建面具使用掩码编辑器

一个蒙面的子系统的初始化代码可以参考变量在其本地工作区。

当你引用一个块,或一块复制到一个模型,面具对话框指定的默认值。你不能使用面具初始化代码改变面具参数默认值在图书馆块或任何其他块。

确保面具参数用于掩盖定义初始化代码。面具初始化错误显示在编辑面具初始化命令,但这仅仅是可能的如果所有的面具没有对参数值的错误。

请注意

  • 避免无条件修改的内容从面罩子系统初始化代码。这种无条件的修改不正常工作时使用模型参考。

  • 当你使用set_param在面具的初始化代码子系统块,所有的子块也评估。

  • 当你使用金宝appSimulink.Parameter对象作为一个面具参数的值,如果值的对象是一个数值,面具初始化代码可以把面具MATLAB变量参数。

使用掩码编辑器代码窗格添加MATLAB命令初始化一个蒙面的块。

代码窗格包含这些部分:

  • 初始化和回调

  • 参数

代码面板初始化

变量对话框

变量对话框部分显示变量的名称与蒙面的面具参数关联的块中定义的参数窗格。

你可以复制的名字从这个列表并粘贴到一个参数初始化代码部分。

你可以改变掩模参数变量的名称列表中通过双击和编辑的名字。

初始化代码

在这一节中您可以添加初始化命令。初始化代码必须是一个有效的MATLAB表达式,由MATLAB函数和脚本,操作符和变量定义在面具的工作区。初始化命令不能访问基本工作空间变量。

为了避免重复结果MATLAB命令窗口,用分号结束初始化命令。

查看相关的例子,请参阅

面具初始化的最佳实践

面具初始化命令必须遵守以下规则:

  • 不要使用初始化代码来创建动态面具对话框(对话框的外观或控制设置变化取决于其他控制设置更改)。相反,使用的面具回调用于这一目的。有关更多信息,看到动态掩码对话框

  • 不要使用初始化代码中添加或删除块模型加载时间。

  • 嵌套的蒙面子系统,不要使用set_param父块从一个孩子的块。子块面具和父块面具都可以初始化块的相同参数导致意想不到的行为。有关更多信息,请参见不安全的面具调误差

  • 不要使用set_param命令块位于另一个蒙面子系统初始化。试图在孩子水平设置参数块蒙面子系统可以触发未解决符号错误如果孩子水平蒙面子系统参考符号定义为父级蒙面子系统。

    假设,例如,一个蒙面的子系统一个包含一个蒙面的子系统B它包含获得C,他的获得参数定义的一个变量的引用B。还假设子系统一个初始化代码,包含这个命令:

    set_param (gcb‘/ B / C’,‘SampleTime’, ' 1 ');

    模拟或更新一个模型包含一个原因一个未定义的符号错误。

  • 你不能使用面具初始化代码来创建数据对象。数据对象是这些类的对象:

    • 金宝appSimulink.Parameter和子类

    • 金宝appSimulink.Signal和子类

  • 不添加初始化代码删除相同的蒙面块。

  • 使用面具初始化代码来控制直接子块。

请注意

不要使用面具初始化代码置评或取消一个街区。

相关的话题