Variable Time Delay
按可变时间量延迟输入
库:
Simulink /
Continuous
描述
Variable Transport Delay 和 Variable Time Delay 模块在 Simulink® 模块库中显示为两个模块。但它们是同一个 Simulink 模块,只是选择延迟类型参数的设置不同。使用此参数可以指定模块的运行模式。
可变时滞
在此模式中,模块具有数据输入、时滞输入和数据输出。(有关各种模块方向的端口顺序的描述,请参阅标识旋转或翻转模块上的端口位置。)当前时间步的输出等于上一个时间步的数据输入值。此时间步等于当前仿真时间减去由时滞输入指定的延迟时间。
在仿真过程中,模块将时间和输入值对存储在内部缓冲区。仿真开始时,模块会输出初始输出参数的值,直到仿真时间超过时滞输入。然后,在每个仿真步,模块会在相当于当前仿真时间减去延迟时间的时间输出信号。
如果您需要两个存储输入时间之间的某个时间的输出,且求解器是连续求解器,模块将在各点之间进行线性插值。如果时滞小于步长,模块将根据上一个点外插输出点。例如,假定一个定步长仿真的步长为 1
,当前时间为 t = 5
。如果延迟为 0.5
,则模块必须在 t = 4.5
时生成点,但最新存储的时间值为 t = 4
。那么,模块将根据 t = 4
时的输入外插 t = 4.5
时的输入,并将外插值作为 t = 5
时的输出。
根据上一个时间步向前外插产生的结果没有根据当前时间步向后外插产生的结果准确。但是,模块无法使用当前输入计算其输出值,因为输入端口没有直接馈通。
如果模型指定了离散求解器,模块将不会在时间步之间插值。相反,它将返回所需值前面的那个最近存储值。
可变传输延迟
在此模式中,当前时间步的模块输出等于之前的时间步(等于当前时间减去传输延迟)的数据(顶部或左侧)输入的值。
Simulink 软件通过解析下列方程来计算传输延迟 :
此方程涉及到一个瞬时时滞 ,由时滞(底部或右侧)输入指定。
假设您要使用此模块为管道内流速随时间改变的流体建模。在本例中,模块的时滞输入为
其中 L
代表管道长度, 代表流速。
示例
端口
输入
输出
参数
扩展功能
版本历史记录
在 R2007a 中推出