Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

条件子系统初始输出值

要初始化某条件子系统的输出值,请使用以下方法之一初始化该子系统中的 Outport 模块:

  • 从连接到 Outport 模块的输入信号继承初始输出值。

  • 使用 Outport 模块参数指定初始输出值。

注意

如果条件子系统驱动的是同一模型中的 Merge 模块,则不需要为该子系统的 Outport 模块指定初始条件。

继承输入信号的初始输出值

Simulink® 尝试使用连接到条件子系统 Outport 模块的输入信号来初始化输出值。在将 Outport 模块参数初始输出值的源设置为“输入信号”后,会出现此行为。当初始输出值的源设置为“对话框”并且初始输出设置为 “[]” 时,会出现相同的行为。

用于设置初始输出值的有效输入信号包括:

  • 来自另一个条件执行子系统的输出端口。

  • 来自 Model 模块(其中 Trigger 模块的触发器类型设置为“函数调用”)的输出端口。

  • Merge 模块。

  • Constant 模块。

  • IC(初始条件)模块。

  • 通过信号线连接到 Outport 模块的 Simulink 信号对象。如果定义了 InitialValue 参数,Simulink 将使用此值。

  • Stateflow® 图。

  • C Function 模块。

如果输入信号来自此处未列出的模块,则 Outport 模块使用输出数据类型的默认初始值。

当条件子系统的 Outport 模块继承其初始输出值时,在模型更新或运行后,Outport 模块旁边会显示 IC 标记。

triggered subsystem connected to Outport block, with IC badge next to block

您还可以使用 Simulink.getOutportInheritsInitialValue 函数来确定条件子系统的 Outport 模块是否继承其初始输出值。

注意

如果使用经典初始化模式,则选择“输入信号”将导致错误。要从输入信号继承初始输出值,请将初始输出值的源参数设置为“对话框”,将禁用时的输出设置为“保持”,并将初始输出设置为空矩阵 []IC 标记在经典初始化模式下不显示。请参阅Classic Initialization Mode

使用对话框参数指定初始输出值

在您要执行以下操作的情况下显式设置初始输出值:

  • 用各种初始值测试模型的行为。

  • 将初始值设置为稳定状态并减少仿真时间。

  • 省去通过跟踪输入信号确定初始输出值的必要。

要指定初始输出值,请执行下列操作:

  1. 打开条件子系统中 Outport 模块的对话框。

  2. 初始输出值的源列表中,选择“对话框”。

  3. 初始输出框中,输入初始值。

相关主题