Unit Delay
将信号延迟一个计算步长。
类型: UnitDelay
图书馆中的路径:
|
说明
区块 Unit Delay 延迟指定计算步骤的输入。当置于迭代子系统中时,它会延迟一个迭代的输入。该程序块等同于离散时间运算符 。程序块接收一个输入信号并生成一个输出信号。每个信号可以是标量或矢量。如果输入信号是矢量,程序块会将矢量的所有元素延迟到同一计算步骤。
该程序块第一个时间步的输出由参数 Initial condition .正确选择该参数可以最大限度地减少输出信号的不良行为。计算步长由*采样时间*参数设置。数值 -1
表示程序块继承计算步长的数值。
如果使用该块在以不同采样率运行的块之间创建过渡,则会产生错误。相反,请使用块Rate Transition 。 |
与类似程序块比较
Memory、Unit Delay 和 Zero-Order Hold 区块提供类似的功能,但具有不同的特点。此外,每个区块的目的也不尽相同。
下表列出了每个区块的建议用途。
程序块 | 程序块用途 |
---|---|
Unit Delay |
使用指定的计算步长实现延迟。该程序块接收并输出具有离散计算步长的信号。 |
使用一个基本计算步骤实现延迟。理想情况下,程序块接收连续信号(或时间步长较小的固定信号),并输出时间步长较小的固定信号。 |
|
将连续输入信号转换为离散信号。 |
每个单元都具有以下功能。
能力 | Memory | Unit Delay | Zero-Order Hold |
---|---|---|---|
初始条件设置 |
是 |
是 |
否,因为程序块在 |
设置计算步骤 |
否,因为程序块只能从用于整个模型的控制块或求解器中继承计算步长。 |
是 |
是 |
支持基于帧的信号 |
不支持 |
是 |
是 |
支持状态记录 |
不支持 |
有 |
是 |