延迟输入由可变的时间量
连续
可变传输延迟和可变时间延迟在Simulink中显示为两个模块万博1manbetx®块库。然而,它们是相同的Simulink块,具有不同的设置万博1manbetx选择延迟类型参数。使用此参数指定块操作的模式。
在这种模式下,块有一个数据输入,一个延时输入和一个数据输出。(见旋转或翻转后的端口位置在Simuli万博1manbetxnk文档中,对各种块方向的端口顺序进行描述。)当前时间步长的输出等于它在前一个时间步长的数据输入值。这个时间步长是当前仿真时间减去由延时输入指定的延时时间。
在模拟过程中,块将时间和输入值对存储在内部缓冲区中。在仿真开始时,块输出的值初始输出参数,直到仿真时间超过延时输入。然后,在每个仿真步骤中,块输出当前仿真时间减去延迟时间对应的时间的信号。
如果你想在输入存储时间和求解器是连续求解器之间的时间点上得到输出,块在点之间进行线性插值。如果时间延迟小于步长,则块从前一个点推断出一个输出点。例如,考虑一个步长为1、当前时间为t = 5的固定步长模拟。如果延迟为0.5,则块需要在t = 4.5时生成一个点,但最近存储的时间值是在t = 4时。因此,该块从4处的输入推断出4.5处的输入,并使用推断出的值作为t = 5处的输出。
从前一个时间步长推断出的结果可能比从当前时间步长推断出的结果更不准确。然而,块不能使用当前输入来计算其输出值,因为输入端口没有直接馈通。
如果模型指定了离散解算器,则块不会在时间步骤之间进行插值。相反,它返回所需值之前最近的存储值。
在这种模式下,当前时间步长的块输出等于它的数据(顶部或左侧)在更早的时间步长的输入值,等于当前时间减去传输延迟。
万博1manbetxSimulink软件发现运输延迟, ,通过解以下方程:
这个方程包含一个瞬时时滞, ,由时间延迟(底部或右侧)输入给出。
假设您想使用此块来模拟流体通过管道的流动,其中流体速度随时间变化。在这种情况下,输入到块的时间延迟为
L是管子的长度和 是流体的速度。
可变时间延迟和可变传输延迟块接受和输出真实信号的类型双
.
有关更多信息,请参见Simulink支持的万博1manbetx数据类型万博1manbetx在Simuli万博1manbetxnk文档中。
指定块操作的模式。
默认值:可变时间延迟块的默认值为变量的时间延迟
.变量传输延迟块的默认值为变量传输延迟
.
变量的时间延迟
指定可变时间延迟块。
变量传输延迟
指定可变传输延迟块。
将该参数设置为变量的时间延迟
使处理零延迟参数。
将该参数设置为变量传输延迟
使绝对的宽容和国家的名字参数。
参数:VariableDelayType |
类型:特征向量 |
值:变量传输延迟的 |“可变延时” |
默认值:“可变延时” |
设置时间延迟输入的最大值。
默认值:10
此值定义此块允许的最大时间延迟输入。区块将剪辑任何超过此值的延迟。
该值不能为负数。如果时间延迟为负,该块将其剪辑为零并发出警告消息。
参数:MaximumDelay |
类型:标量或矢量 |
值:“十” |
默认值:“十” |
指定块生成的输出,直到模拟时间首次超过延时输入。
默认值:每次运行的可调参数
一个每次运行的可调参数
无法在模拟运行时更改。但是,在模拟开始之前更改它不会导致Accelerator或Rapid Accelerator重新生成代码。同样,这个块的初始输出不能是正
或南
.
参数:InitialOutput |
类型:标量或矢量 |
值:' 0 ' |
默认值:' 0 ' |
定义要存储的输入点数量的初始内存分配。输入点定义输入信号到当前仿真时间的历史。
默认值:1024
如果输入点的数量超过初始缓冲区大小,则块分配额外的内存。
模拟结束后,如果缓冲区不足,需要分配更多内存,将显示一条消息。
因为分配内存会降低模拟速度,所以如果模拟速度有问题,请仔细选择这个值。
对于长时间延迟,此块可能会使用大量内存,特别是对于量纲化的输入。
参数:MaximumPoints |
类型:标量 |
值:“1024” |
默认值:“1024” |
指定使用固定大小的缓冲区来保存以前时间步骤中的输入数据。
默认值:从
该块使用固定大小的缓冲区。
该块不使用固定大小的缓冲区。
的最初的缓冲区大小参数指定缓冲区大小。如果缓冲区已满,则新数据将替换缓冲区中已经存在的数据。万博1manbetxSimulink软件使用线性外推来估计不在缓冲区中的输出值。
即使您没有选中此复选框,ERT或GRT代码生成也会使用固定大小的缓冲区。
如果输入的数据是线性的,选中此复选框可以节省内存。
如果输入的数据是非线性的,请不要选中此复选框。这样做可能会产生不准确的结果。
参数:FixedBuffer |
类型:特征向量 |
值:“关闭” |“上” |
默认值:“关闭” |
将此块转换为直接馈通块。
默认值:从
该区块使用直接馈通。
该块不使用直接馈通。
设置选择延迟类型来变量的时间延迟
支持这个参数。
参数:ZeroDelay |
类型:特征向量 |
值:“关闭” |“上” |
默认值:“关闭” |
使块输出其在线性化和修剪期间的输入,这设置块模式直接馈通。
默认值:从
允许直接通过输入。
禁止直接输入。
参数:TransDelayFeedthrough |
类型:特征向量 |
值:“关闭” |“上” |
默认值:“关闭” |
设置线性化程序的Pade近似的顺序。
默认值:0
默认值是0,这将导致没有动态状态的单位增益。
将顺序设置为正整数n
增加了n
状态到你的模型,但结果是一个更准确的线性模型的运输延迟。
参数:PadeOrder |
类型:特征向量 |
值:' 0 ' |
默认值:' 0 ' |
指定计算块状态的绝对公差。
默认值:汽车
您可以输入汽车
,-1
,或正实标量或向量。
如果你输入汽车
,或-1
,则Simul万博1manbetxink使用配置参数对话框中的绝对公差值(参见解算器窗格中)来计算块状态。
如果输入实标量,则该值将覆盖“配置参数”对话框中计算所有块状态的绝对公差。
如果输入一个真实的向量,那么这个向量的维数必须与块中连续状态的维数相匹配。这些值覆盖配置参数对话框中的绝对公差。
设置选择延迟类型来变量传输延迟
支持这个参数。
参数:AbsoluteTolerance |
类型:字符向量、标量或向量 |
值:“汽车” |' 1 ' |任何正的实标量或向量 |
默认值:“汽车” |
为每个状态分配一个唯一的名称。
默认值:' '
如果该字段为空,则不会发生名称分配。
若要为单个州指定名称,请在引号之间输入名称,例如:“速度”
.
要将名称分配给多个州,请输入用大括号括起来的逗号分隔的列表,例如:{' a ', ' b ', ' c '}
.每个名称必须唯一。
州名只应用于选定的块。
州的数目必须在州名的数目中平均分配。
可以指定比状态更少的名称,但不能指定比状态更多的名称。
例如,您可以在具有四种状态的系统中指定两个名称。第一个名字适用于前两个州,第二个名字适用于后两个州。
在MATLAB中使用变量分配状态名®工作区,输入不带引号的变量。变量可以是字符向量、单元格数组或结构。
设置选择延迟类型来变量传输延迟
支持这个参数。
参数:ContinuousStateAttributes |
类型:特征向量 |
值:' ' |用户定义 |
默认值:' ' |
的sldemo_VariableTransportDelay
和sldemo_VariableTransportDelay_pipe
模型展示了如何使用可变传输延迟块。
的sldemo_VariableTransportDelay
模型展示了如何在一维汽车上建立垂直车轮位移模型。可变运输延迟块模拟了当路面轮廓改变时后轮垂直位移的延迟:
的sldemo_VariableTransportDelay_pipe
该模型显示了如何模拟不可压缩流动通过固定长度的管道。变量运输延迟块模型在流体流动发生时出口温度变化的延迟:
有关更多信息,请参见描述这两个模型。
数据类型 |
双 |
样品时间 |
连续 |
直接引线 |
是的,时间延迟(秒)输入 |
多维信号 |
没有 |
适应信号 |
没有 |
讨论二阶导数过零检测 |
没有 |
代码生成 |
是的 |