Engee 文档

Unit Delay

将信号延迟一个计算步长。

类型: UnitDelay

图书馆中的路径:

/Basic/Discrete/Unit Delay

说明

区块 Unit Delay 延迟指定计算步骤的输入。当置于迭代子系统中时,它会延迟一个迭代的输入。该程序块等同于离散时间运算符 。程序块接收一个输入信号并生成一个输出信号。每个信号可以是标量或矢量。如果输入信号是矢量,程序块会将矢量的所有元素延迟到同一计算步骤。

该程序块第一个时间步的输出由参数 Initial condition .正确选择该参数可以最大限度地减少输出信号的不良行为。计算步长由*采样时间*参数设置。数值 -1 表示程序块继承计算步长的数值。

如果使用该块在以不同采样率运行的块之间创建过渡,则会产生错误。相反,请使用块Rate Transition

与类似程序块比较

MemoryUnit DelayZero-Order Hold 区块提供类似的功能,但具有不同的特点。此外,每个区块的目的也不尽相同。

下表列出了每个区块的建议用途。

程序块 程序块用途

Unit Delay

使用指定的计算步长实现延迟。该程序块接收并输出具有离散计算步长的信号。

Memory

使用一个基本计算步骤实现延迟。理想情况下,程序块接收连续信号(或时间步长较小的固定信号),并输出时间步长较小的固定信号。

Zero-Order Hold

将连续输入信号转换为离散信号。

每个单元都具有以下功能。

能力 Memory Unit Delay Zero-Order Hold

初始条件设置

否,因为程序块在 t = 0 时的输出必须等于输入值。

设置计算步骤

否,因为程序块只能从用于整个模型的控制块或求解器中继承计算步长。

支持基于帧的信号

不支持

支持状态记录

不支持

港口

输入

# IN_1 — 输入信号
scalar | vector | bus

Details

程序块延迟一个计算步骤的输入信号。可定义为标量、矢量或总线。

有关总线类型的更多信息,请参阅自定义总线类型
数据类型

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool, BusSignal.

复数支持

输出

# OUT_1 — 输出信号
scalar | vector | bus

Details

输出信号,即延迟一个计算步长的输入信号。可指定为标量、矢量或总线。输出信号类型与输入信号类型相对应。

有关总线类型的更多信息,请参阅自定义总线类型
数据类型

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool, BusSignal.

复数支持

参数

主要

# Initial condition — 输出信号的初始值

Details

第一个模拟步骤的输出信号值。

默认值

0.0

程序使用名称

InitialCondition

可调谐

可计算

# Sample Time — 计算间隔
SampleTime (real number / vector of two real numbers)

Details

以非负数指定计算步骤之间的间隔。要继承一个计算步骤,请将此参数设置为 -1

默认值

-1

程序使用名称

SampleTime

可调谐

可计算

附加选项

C 代码生成: 是

Verilog生成:是