主要内容

初始化的面具

你可以添加MATLAB®在“屏蔽编辑器”的“初始化”窗格中初始化屏蔽块。金宝app动态仿真模块®在关键时刻执行这些初始化命令来初始化被屏蔽的子系统,例如模型加载和模拟运行的开始。有关更多信息,请参见执行初始化命令

你可以为这些情况添加掩码初始化代码:

  • 指定掩码参数的初始值。例如,指定参数的初始值一个、类型一个= 5在初始化窗格中。

  • 指定子块的值。例如,

    set_param('子块名称','参数名称','参数值')
  • 创建一个可自我修改的遮罩。有关更多信息,请参见变为无效来掩盖

屏蔽子系统的初始化代码只能引用其本地工作空间中的变量。

当您使用模型引用块或将块复制到模型中时,掩码对话框将显示指定的默认值。不能使用掩码初始化代码更改库块或任何其他块中的掩码参数默认值。

确保定义了掩码初始化代码中使用的掩码参数。当编辑掩码初始化命令时,会显示掩码初始化中的错误,但只有在计算所有掩码参数值时没有错误时才会显示错误。

请注意

  • 当使用模型引用时,包含初始化代码的块不能正常工作。

  • 当你使用set_param掩码的初始化代码子系统块,所有子块也会被计算。

使用蒙版编辑器初始化窗格中添加初始化屏蔽块的MATLAB命令。

初始化窗格包含以下部分:

  • 变量对话框

  • 初始化命令

变量对话框

变量对话框中定义的掩码块的掩码参数关联的变量的名称参数窗格。

可以从列表中复制参数的名称,并将其粘贴到初始化命令部分。

您可以通过双击和编辑名称来更改列表中掩码参数变量的名称。

初始化命令

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

为了避免将结果返回到MATLAB命令窗口,使用分号结束初始化命令。

要查看相关示例,请参见

掩码初始化最佳实践

掩码初始化命令必须遵循以下规则:

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

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

  • 对于嵌套的屏蔽子系统,不要使用set_param从子块到父块。子块掩码和父块掩码都可能初始化块的相同参数,从而导致意外行为。有关更多信息,请参见不安全掩码回调错误

  • 不要使用set_param位于您正在初始化的另一个屏蔽子系统中的块上的命令。如果低级屏蔽子系统引用由高级屏蔽子系统定义的符号,尝试设置低级屏蔽子系统中的块参数可能会触发未解析符号错误。

    例如,假设有一个屏蔽子系统一个包含一个屏蔽子系统B它包含获得C,他的获得参数引用定义的变量B.再假设这个子系统一个具有包含以下命令的初始化代码:

    set_param([gcb '/B/C'], '采样时间','-1');

    模拟或更新包含a的模型会导致无法解析的符号错误。

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

    • 金宝app仿真软件。参数和子类

    • 金宝app仿真软件。信号和子类

  • 不要添加初始化代码来删除相同的屏蔽块。

  • 使用掩码初始化代码只控制直接的子块。

请注意

不要使用掩码初始化代码来注释或取消注释块。

相关的话题