本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

使用使能触发子系统

Enabled and Triggered Subsystem 是条件执行子系统,它在同时满足以下两个条件时在每个仿真时间步运行一次:

  • 使能控制信号具有正值。

  • 触发控制信号上升或下降过零。

Enabled and Triggered Subsystem 模块包含 Enable 端口模块和 Trigger 端口模块。当触发信号上升或下降过零时,将检查使能输入端口以计算使能控制信号。如果其值大于零,将执行子系统。如果两个输入都是向量,则子系统将在每个向量至少有一个元素为非零值时执行。

创建使能触发子系统

要创建使能触发子系统,请执行以下操作:

  1. 在您的模型中添加一个 Enabled and Triggered Subsystem 模块。

    • 将 Simulink® Ports & Subsystems 库中的模块复制到您的模型中。

    • 点击模型图,键入 enabled,然后选择 Enabled and Triggered Subsystem

  2. 设置 Outport 模块的初始值和禁用值。请参阅条件子系统初始输出值Conditional Subsystem Output Values When Disabled

  3. 设置控制信号如何触发执行。

    打开子系统模块,然后打开 Trigger 端口模块的模块参数对话框。从 Trigger type 下拉列表中,选择:

    • rising” - 当控制信号从负值或零值上升至正值时,触发子系统的执行。

    • falling” - 当控制信号从正值或零值下降至负值时,触发子系统的执行。

    • either” - 通过上升或下降控制信号触发子系统的执行。

    TriggerSubsystem 模块上将出现不同的符号,以指示上升和下降触发器。

  4. 指定启用后如何处理子系统状态。

    打开子系统模块,然后打开 Enable 端口模块。从 States when enabling 下拉列表中,选择:

    • held” - 状态保持最近使用的值。

    • reset” - 如果子系统被禁用至少一个时间步,则状态还原到初始条件。

    在简化初始化模式下,在子系统变为使能子系统后首次执行期间会始终重置其已用时间。无论子系统是否配置为在使能时重置,此重置都会发生。请参阅Underspecified initialization detection

    对于其 Enable 模块具有不同参数设置的嵌套子系统,子级子系统的设置将覆盖从父级子系统继承的设置。

使能触发子系统中的模块

使能和触发子系统中的所有模块的 Sample time 都必须设置为继承 (-1) 或固定 (inf)。此要求允许触发子系统中的模块仅在触发子系统本身运行时才运行。此要求还意味着触发子系统不能包含连续模块,如 Integrator 模块。

模型示例

另请参阅

模块

相关示例

详细信息