Main Content

For Iterator

For Iterator 子系统的控制模块

  • For Iterator block

描述

放置在 Subsystem 模块中的 For Iterator 模块在当前时间步中重复执行子系统,直到迭代变量超过指定的迭代限制。您可以使用此模块实现与某种编程语言中的 for 循环等效的模块图。

For Iterator Subsystem 模块的输出不能是函数调用信号。模型更新时,Simulink® 显示错误消息。

端口

输入

全部展开

  • 输入端口接受混合数值类型的数据。

  • 如果输入端口值为非整数,则先截断为整数。

  • 在内部将输入值强制转换为针对迭代变量输出端口指定的整数类型。

  • 如果未指定输出端口,则输入端口值将强制转换为 int32 类型。

  • 如果输入端口值超过输出端口类型的最大值,则溢出将饱和。

数据类型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

输出

全部展开

选中显示迭代变量参数复选框会将输出端口添加到此模块。

数据类型: double | int8 | int16 | int32 | uint8 | uint16 | uint32

参数

全部展开

选择如何处理时间步之间的模块状态。

保持

在时间步之间保持模块状态。模块状态值跨时间步保持不变。

重置

在每个时间步的开始和第一个迭代循环之前,将模块状态重置为其初始值。

编程用法

模块参数ResetStates
类型:字符向量
'held' | 'reset'
默认值'held'

选择迭代次数的数据源。

内部

迭代限制参数的值确定迭代次数。

外部

N 端口的信号值确定迭代次数。信号源必须位于 For Iterator Subsystem 模块之外。

依存关系

选择内部将显示并启用迭代限制参数。选择外部将添加标签为 N 的输入端口。

编程用法

模块参数 IterationSource
类型:字符向量
'internal' | 'external'
默认值'internal'

指定迭代次数。此参数支持存储类。您可以在模型资源管理器的基础工作区中,将命名常量定义为内置存储类 Define (custom) 类型的 Simulink.Parameter 对象。

5

For Iterator Subsystem 模块中的模块执行 5 次迭代。

整数

指定一个整数或指定的常变量。

依存关系

要启用此参数,请从迭代限制来源下拉列表中选择内部

编程用法

模块参数IterationLimit
类型:字符向量
'5' | '<integer>'
默认值'5'

控制输入端口的显示。

off

删除输入端口。

on

添加标签为 Next_i 的输入端口以连接到外部迭代变量源。当前迭代中的输入值用作下一次迭代的迭代变量值。

依存关系

要启用此参数,请选择显示迭代变量参数,这也会显示标签为 1:N 的输出端口。

编程用法

模块参数ExternalIncrement
类型:字符向量
'off' | 'on'
默认值'off'

使用循环的当前迭代器值控制输出端口的显示。

on

将标签为 1:N 的输出端口添加到 For Iterator 模块。

off

删除输出端口。

依存关系

选择此参数将启用在外部设置下一个 i (迭代变量) 参数。

编程用法

模块参数ShowIterationPort
类型:字符向量
'on' | 'off'
默认值'on'

选择 01 作为初始迭代序号。

从 1 开始

迭代序号从 1 开始。

从 0 开始

迭代序号从 0 开始。

编程用法

模块参数IndexMode
类型:字符向量
'One-based' | 'Zero-based'
默认值'One-based'

设置从迭代序号端口输出的迭代值的类型。迭代变量允许的最大值由索引模式迭代变量数据类型参数确定。例如,如果将索引模式设置为从 1 开始,并将迭代变量数据类型设置为 int8,则迭代变量允许的最大值为 27-1。但是,如果将迭代变量数据类型设置为 uint32double,迭代变量允许的最大值将限制为有符号 32 位整数 (int32) 的最大正值。有关不同整数类的值范围的详细信息,请参阅整数

int32

将数据类型设置为 int32

uint32

将数据类型设置为 uint32

int16

将数据类型设置为 int16

uint16

将数据类型设置为 uint16

int8

将数据类型设置为 int8

uint8

将数据类型设置为 uint8

double

将数据类型设置为 double

编程用法

模块参数IterationVariableDataType
类型:字符向量
'int32' | 'uint32'|'int16' | 'uint16'|'int8' | 'uint8'|'double'
默认值'int32'

版本历史记录

在 R2006a 之前推出