主要内容

有条件执行的子系统概述

一个有条件地执行子系统是一个非虚拟子系统,允许您使用外部信号控制其执行。外部信号,叫做控制信号,附属于控制输入端口。当您创建复杂的模型,其中包含的组件的执行依赖于其他组件时,条件子系统非常有用。

金宝app带有条件执行子系统块的Simulink canvas。分系统模块顶部有控制输入端口,左侧有数据输入端口,两者都与输入模块相连。子系统块在右侧有数据输出端口,连接到一个Outport块。

金宝app®金宝app支持这些类型的条件子系统:

  • 启用子系统-当控制信号为正值时,执行每个时间步长。当控制信号从负向正跨越零时,执行开始于时间步长。看到使用启用子系统

  • 触发子系统-当控制信号上升或下降到零或过零时,在每个时间步骤执行。看到使用触发子系统

  • 启用和触发子系统-当启用控制信号为正值且触发控制信号上升或下降到零时,在时间步长执行。看到使用启用和触发的子系统

  • 函数调用子系统——当控制信号接收到函数调用事件时执行。事件可以在一个时间步骤中发生一次或多次。一个Stateflow®图表,函数调用生成器块,功能块,或打穿越块可以提供函数调用事件。看到使用函数调用子系统

有条件执行的子系统或有条件执行的引用模型运行:

  • 当由控制块启用时,在当前时间步长一次。控制块实现的控制逻辑类似于用编程语言语句表示的控制逻辑,例如if - then - else开关

  • 当控制信号或动作信号启用或触发时,在当前时间步长一次。

  • 在一个时间步骤中接收函数调用事件时的一次或多次。

金宝appSimulink canvas带有2个输出端口的If块,每个输出端口都用虚线连接到单独的If动作子系统块的动作端口。每个If Action子系统块连接到Merge块的输出,Merge块的输出连接到Outport块。If块和两个If动作子系统块的输入连接到import块。

金宝appSimulink画布显示2个模型。在第一个模型中,有2个Enabled Subsystem块。标记为“启用信号”的导入块连接到一个已启用子系统块的控制端口,并连接到一个未输出连接到另一个已启用子系统块的未输出模块。两个Enabled Subsystem块的输出都连接到Merge块。在第二个模型中,一个标记为“Function-Call Event”的导入块连接到标记为“Enabled_Model”的模型块的控制端口。

模型的例子

另请参阅

相关的例子

更多关于