参考博客
- b站视频 【Simulink 0基础入门教程 P4 使能子系统 Enabled Subsystem
的使用介绍】
个人听了这个博主的视频风格觉得很适合我入门学习,讲得很清楚。
另外,视频里面教得很详细了,我也不会再详细写怎么打开创建等步骤,跟着操作就行。主要记录一下想记录的一些点。声明:坚持学习是一件很美好的事情,仅供个人学习复习。
1. Enabled Subsystem (使能子系统)
1.1 Enabled Subsystem
1.2 Enable (使能)
Enabled Subsystem上方的输入箭头指向的Enable (使能) :
2. Enabled Subsystem内部
在Enabled Subsystem内部可以随意搭建,示例为上一节的累加器。
2.1 设置
其中Solver(求解器)的stop time=10s, fixed-step size=0.1s, 因此 一共会被执行100次。
2.2 运行
2.2.1 开关打到1
开关打到1(boolean类型),子系统使能,run一下,执行累加,通过显示屏观测到结果为101。这是因为从第0次开始计,初始值为1,所以结果为1×100+1=101。
观察示波器:
蓝色线呈阶梯状。
2.2.2 开关打到0
开关打到0(boolean类型),子系统未使能,run一下,输出一直为0.
3. 技巧
和普通子系统不同的是,使能子系统多了使能。
3.1 Subsystem 和 Enabled Subsystem
3.2 把普通子系统快速变成使能子系统?
除了用搜索的方式,怎么把普通子系统快速变成使能子系统?
- 进入Subsystem内部的结构如下,仅一输入一输出:
- 加载一个Enable模块 ,再退出去Subsystem,此时Subsystem就自动变为了带使能的Subsystem:
4. Enable 参数
- held:全局变量的值,会保持
- reset :全局变量的值在没有使能的时候,会被清零
注:这是enable重要的设置,对enable调试时谨慎设置
4.1 运行(held)
选择“单步调试”Step Forward ,仿真只会一步一步跑 :
点一下,累加1:
再多点几下 :
Delay步长和初始值设置:
切换0和1的结果:
(黄线为开关状态,蓝线为累加结果)
- 当开关切换到0,模型初始值为0
- 当开关从0切换到1,模型开始累加
- 当开关从1切换到0,模型保持不变
- 当开关再次从0切换到1,模型继续累加
4.2 运行(reset)
- 当开关切换到0,模型初始值为0
- 当开关从0切换到1,模型开始累加
- 当开关从1切换到0,模型保持不变
- 当开关再次从0切换到1,模型重置后再累加
5. Out1参数
5.1 运行(held)
Enabled Subsystem中的输出:
5.2 运行(reset)
-END-