主要内容

使用启用子系统

一个启用子系统是一个有条件地执行的子系统,其在每个主要时间步骤运行一次,而控制信号具有正值。如果信号在次要时间步骤期间交叉零,则在下一个主要时间步骤之前未启用或禁用子系统。

控制信号可以是标量或向量。

  • 如果标量值大于零,则子系统执行。

  • 如果矢量元素值中的任何一个大于零,则子系统执行。

创建一个支持的子系统

要创建一个启用的子系统:

  1. 加一个启用子系统块到您的模型。

    • 从Simulink复制块金宝app®端口和子系统库到您的模型。

    • 单击模型图,开始输入启用,然后选择启用子系统

  2. 设置初始和禁用值的外港块。看条件子系统初始输出值禁用时条件子系统输出值

  3. 指定在启用子系统时如何处理子系统状态。

    打开子系统块,然后打开参数对话框使能够端口块。从启用时状态下拉列表中,选择:

    • 握住-状态保持其最新值。

    • 重启- 如果至少一个时间步骤禁用子系统,则状态恢复为其初始条件。

      在简化初始化模式(默认)中,子系统运行时间总是在启用后的第一次执行期间重置。无论子系统是否配置为在启用时重置,都将发生重置。看underbiedied初始化检测

    对于嵌套子系统的使能够块具有不同的参数设置,子子系统的设置覆盖了父子系统继承的设置。

  4. 输出控制信号使能够堵塞。

    在“参数”对话框中使能够块,选择显示输出端口复选框。

    选择此参数允许您将控制信号传递到启用的子系统。你可以用一个算法来使用这个信号,这个算法取决于控制信号的值。

启用子系统中的块

离散块

启用的子系统中的离散块仅在子系统执行时执行,并且仅在它们的样本时间与模拟样本时间同步时执行。

考虑到这一点ex_enabled_subsys_1.模型,包含四个离散块和控制信号。离散块是:

  • 块A,采样时间为0.25秒

  • Block B,采样时间为0.5秒

信号E是a产生的使能控制信号脉冲发生器样品时间为0.125。其输出在0.375秒时将值从0变为1,并在0.875秒时返回0。

被启用的子系统中的离散块是:

  • 阻止C,在启用子系统中,采样时间为0.125秒

  • 块D,也在启用的子系统内,采样时间为0.25秒

离散块在示出的样本时间执行。

块A和块B独立于使能控制信号执行,因为它们不是使能子系统的一部分。当使能控制信号变为正数时,块C和块D按其分配的采样率执行,直到使能控制信号再次变为零。当使能控制信号变为零时,在0.875秒时C块不执行。

goto块

启用的子系统可以包含转到块。但是,只有具有状态的块的输出端口可以连接到转到块。有关使用的例子转到块在已启用的子系统中,请参见锁定子系统的sldemo_clutch.模型。

交替执行启用的子系统块

您可以使用条件子系统合并块以创建交替执行的子系统集,具体取决于模型的当前状态。

考虑一种使用两个的模型启用子系统块和A.合并块以模拟全波整流器(将AC电流转换为脉动DC电流的设备)。打开模型,见ex_alternations_executing_model.

打开p子系统。当AC波形为正时,使能子系统能够使波形不变通过其输出。

打开负的子系统。当波形为负且波形反转时,该子系统将被启用。

合并块通过当前启用的子系统的输出以及原始波形到范围堵塞。

运行一个模拟,然后打开范围堵塞。

模型例子

也可以看看

相关例子

更多关于