临摹对象

可变子系统

demo名称:sldemo_variant_subsystems

模型图:

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

 

模型功能简介

Controller是一个可变子系统(Variant Subsystem),里面包含2个子系统:Linear Controller和Nonlinear Controller

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

这两个子系统是排他的关系,每次仿真时只有一个是生效的,它由变量VSS_MODE来控制。每次模型加载时,会在基础工作区创建VSS_MODE变量。

当VSS_MODE的值为2时,Nonlinear Controller子系统使能,子系统外观显示为黑色,子系统里面的模块也是正常的黑色。而Linear Controller子系统被禁能,子系统外观以及它里面的子模块都显示为灰色。

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

 

在基础工作区中设置VSS_MODE为1,则上面的Linear Controller变为使能了:

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

同时,可变子系统上的名称也会显示为:Linear Controller

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

 

然而,VSS_MODE是什么呢?它又是如何控制子系统的呢?

是在Controller这个可变子系统的参数里面设置的:

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

而VSS_LINEAR_CONTROLLER和VSS_NONLINEAR_CONTROLLER这两个变体对象是在模型预加载的回调函数里设置的:

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

 

 

临摹步骤

1,拖放顶层模块:正弦波,可变子系统、示波器等。

其中,可变子系统模块在:Simulink Library Browser => Simulink => Ports & Subsystems => Variant Subsystem

2,在可变子系统中放置输入、输出端口。

3,在可变子系统中放置多个子系统。方法有二:

(1)先拖放一个普通子系统,再在其中添加端口、功能模块;

(2)在子系统参数对话框中,点击:Create and add a new subsystem choice:在表中放置一个新子系统变体选项

simulink仿真demo临摹笔记之可变子系统(variant_subsystems)

这时就会自动添加一个子系统,并且配置好相关的输入输出端口。

4,配置可变的条件。

 

 

参考资料

可变子系统模块:

https://ww2.mathworks.cn/help/simulink/slref/variantsubsystem.html

 

可变子系统示例:

https://ww2.mathworks.cn/help/simulink/examples/variant-subsystems.html

 

相关文章:

  • 2021-10-04
  • 2021-07-08
  • 2021-10-19
  • 2021-11-12
  • 2022-01-05
  • 2021-08-24
  • 2021-12-01
  • 2021-07-15
猜你喜欢
  • 2021-09-13
  • 2021-04-20
  • 2021-07-19
  • 2021-08-26
  • 2021-11-16
  • 2022-01-05
  • 2021-12-15
相关资源
相似解决方案