其他分享
首页 > 其他分享> > Simulink仿真入门到精通(九) Simulink的流控制

Simulink仿真入门到精通(九) Simulink的流控制

作者:互联网

9.1 Simulink流控制分类

simulink中流控制时通过自带的模块实现的,包括If else、Switch、For和While4个种类。

9.2 While流控制

while

 

 

 

 

如果条件为真,那么子系统在当前的步长内反复执行,直到达到最大循环次数或者判断条件为假。

 

 

参数标签 功能说明
Maximum number of iteration 最大循环次数
While loop type 循环类型:while/do while
States when starting Held(保持上次状态)/reset(状态恢复默认值)
Show iteration number port 勾选则多出一个输出循环次数的输出端口
Output data type 结合上一个参数使用,为输出循环次数设置数据类型

 

 

 

 

阶跃信号1s阶跃,最大循环次数保持默认值5。

 

第一个步长计数器输出结果为4,因为在第一个循环时,模块执行一次(初始化)输出Unit Delya的初始值为0,然后再执行4次。

在计数达到99时,再执行2次不满足小于等于100的条件,退出循环。

 

do-while

仿真进行时,子系统内模块首先要执行一次,然后再去检查cond输入条件是否为真,如果为真则继续循环,直到cond条件不满足时退出当前步长的仿真,进入下一个步长。

没有IC输入,仅需要cond条件即可反复循环。

9.3 For循环控制

 

 

 

 

 

 

参数标签 功能说明
States when starting 每次循环时保持子系统内的状态或恢复默认
Iteration limit source 循环次数选择从内部限制或外部输入限制
Iteration limit 内部限制时输入的循环次数
Set next i(iteration variable) externally 通过外部输入当前循环的循环变量值
Show iteration variable 选择是否输出循环变量值
Index mode 循环变量的初始值从0/1开始
Iteration variable data type 循环变量输出时的数据类型

 

标签:仿真,输出,Simulink,iteration,while,次数,步长,循环,流控制
来源: https://www.cnblogs.com/dingdangsunny/p/12248468.html