MATLAB Simulink - For 循环

在本章中,让我们了解 for-iterator 块的工作原理。 首先,创建一个空白模型,如下图所示 −

迭代器

在此模型中,我们将使用 for 迭代器,它将为我们提供 1..N 的总和。

您可以根据您的选择使用 n 的值。 该值将采用常量块并用值 5 更新它,如下所示 −

值 5

让我们添加 for-iterator 块,如下所示 −

For Iterator

选择 for Iterator 子系统模块并添加到您的模型中。 接下来,我们需要显示块,如下所示 −

子系统块

如下所示连接块 −

连接块

for 迭代器块是一个子系统。 选择块并单击 Enter。 它将带您到新模型区域,必须在其中定义 for 块。

模型区域

右键for迭代器,选择block参数,如下图 −

For Iteratorbp

将启动时的状态更改为重置并将迭代限制源更改为外部。 单击"确定"更新更改。

现在,您将获得 for 循环的输入块,如下所示 −

For N

我们需要一个求和块和一个延迟块,如下所示 −

延迟块

必须翻转延迟块,以便将其添加到输出中。 我们需要将输出返回给 sum 块,以便可以将其与当前迭代相加。

右键单击延迟块并将延迟长度从 2 更改为 1,如下所示。 单击"确定"更新更改。

Bp 延迟

最终的 for 循环子系统块如下所示 −

For 循环

现在,在运行模拟之前,将停止时间更改为 1。我们这样做是因为我们希望模拟仅运行一次。

停止时间

点击"立即运行"即可在显示块中查看结果,如下所示

输入值为 5,因此 for 循环将从 1 到 5。因此,显示屏中会显示值 1+2+3+4+5 = 15。

输入值