主要内容

二阶积分器有限

输入信号的二阶积分

  • 库:
  • 万博1manbetx模型/连续

  • 二阶积分器有限块

描述

二阶积分器块和二阶积分器有限块解二阶初值问题:

d 2 x d t 2 u d x d t | t 0 d x o x | t 0 x o

在哪里u是系统的输入。因此,块是一个具有两种连续状态的动态系统:xdx / dt

请注意

这两种状态有一个数学关系,即dx / dt的导数x.为了在整个仿真过程中满足这种关系,Simulink对块参数和行为施加了各种约束。万博1manbetx

二阶积分器有限块与二阶积分器块,但它默认基于指定的上限和下限限制状态。有关更多信息,请参见限制美国

万博1manbetx®软件可以使用几种不同的数值积分方法来计算块的输出。每种方法对于特定的应用都有优势。使用解算器窗格中选择最适合您的应用程序的技术。(有关更多信息,请参见解算器选择标准.)选定的求解器计算的状态二阶积分器使用当前输入值在当前时间步长处阻塞。

使用block参数对话框:

  • 指定每个状态初始条件的来源是内部的还是外部的

  • 为状态初始条件指定一个值

  • 定义其中一种状态或两种状态的上限和下限

  • 为每个状态指定绝对公差

  • 为这两个状态指定名称

  • 选择外部复位条件

  • 使讨论二阶导数过零检测

  • 当x达到饱和时重新初始化dx/dt

  • 指定Simulink忽略线万博1manbetx性化操作的状态限制和外部复位

定义初始条件

您可以将每种状态的初始条件单独定义为块对话框上的参数,或者从外部信号输入一个或两个参数。

  • 来定义初始状态条件x作为块参数,使用初始条件源x下拉菜单选择内部并将值输入x初始条件字段。

  • 从外部来源提供状态的初始条件x,指定初始条件源x参数,外部.一个额外的输入端口出现在块上。

  • 来定义初始状态条件dx / dt作为块参数,使用初始条件源dx/dt下拉菜单选择内部并将值输入初始条件dx / dt字段。

  • 从外部来源提供状态的初始条件dx / dt,指定初始条件源dx/dt作为外部.一个额外的输入端口出现在块上。

如果您选择为两个状态初始条件使用外部源,则您的块将出现如下所示。

请注意

  • 万博1manbetxSimulink不允许初始条件值为

  • 如果你处于极限状态x或状态dx / dt通过指定饱和极限(见限制美国)和一个或多个初始条件超出了相应的限制,然后将各自的状态初始化为最接近的有效值,并计算出一组一致的初始条件。

限制美国

在对二阶系统建模时,您可能需要限制块状态。例如,活塞在气缸内的运动受牛顿第二定律的支配,并对活塞的位置有约束(x).与二阶积分器块,你可以限制状态xdx / dt彼此独立。你甚至可以在模拟过程中改变限制;但是,您不能更改状态是否受到限制。要遵循的一个重要规则是,上限必须严格大于相应的下限。

当您限制一种或两种状态时,块的外观会发生变化。当这两种状态都受到限制时,块显示如下。

对于每个状态,您可以使用块参数对话框设置适当的饱和度限制。

限制x只有

如果你使用二阶积分器有限块,默认情况下这两种状态都是有限的。但您也可以手动限制状态x二阶积分器块通过选择限制x并在适当的参数字段中输入极限。

然后块确定状态的值如下:

  • x小于或等于它的下限,值x在它的下限和dx / dt为零。

  • x处于上下限之间,两种状态都遵循二阶ODE给出的轨迹。

  • x是否大于或等于它的上限x在它的上限和dx / dt为零。

您可以选择重新初始化dx / dt变成了一个新的值x达到饱和。看到当x达到饱和时重新初始化dx/dt

限制dx / dt只有

与国家x,国家dx / dtdx / dt面板的二阶积分器有限块对话框。您可以手动设置该参数,限制dx / dt,在二阶积分器块。在这两种情况下,您都必须输入适当的限制dx / dt

如果你只限制状态dx / dt,然后该块确定的值dx / dt如下:

  • dx / dt小于或等于它的下限,值dx / dt保持在其下限。

  • dx / dt处于上下限之间,两种状态都遵循二阶ODE给出的轨迹。

  • dx / dt是否大于或等于它的上限dx / dt保持在它的上限。

当状态dx / dt在它的上限或下限,值x由一阶初值问题控制:

d x d t l x t l x l

在哪里ldx / dt极限(上限或下限),tl就是那个时候dx / dt达到这个极限xl是状态的价值吗x在那个时候。

限制这两个州

当你限制两种状态时,Simulink通过限制上下限的允许万博1manbetx值来保持状态的数学一致性dx / dt.这些限制是满足以下限制条件所必需的:

  • x在它的饱和极限,值dx / dt必须是零。

  • 为了让x如果不设置上限,则设置为dx / dt必须是负的。

  • 为了让x若要保留其下限,则为dx / dt必须是严格的正的。

对于这种情况,上限值dx / dt必须是严格为正的dx / dt必须是负的。

当这两种状态都是有限的时,block决定如下状态:

  • 每当x达到极限时,结果行为与“仅限x”中描述的行为相同。

  • 每当dx / dt当达到它的一个极限时,结果的行为与“仅限dx/dt”中描述的行为相同——包括计算x使用一阶ODEdx / dt在它的一个极限。在这种情况下,当x达到一个极限时,它就保持在那个极限dx / dt为零。

  • 当两者同时达到各自的极限时,状态x行为覆盖dx / dt行为保持状态的一致性。

当限制这两种状态时,可以选择重新初始化dx / dt以时当国x达到饱和。如果重新初始化的值超出了指定的限制dx / dt,然后dx / dt重新初始化为最接近的有效值,并计算一组一致的初始条件。看到当x达到饱和时重新初始化dx/dt

重置状态

块可以根据外部信号将其状态重置为指定的初始条件。要使块重置其状态,请选择外部复位的选择上属性窗格。触发器端口出现在其输入端口下面的块上,并指示触发器类型。

  • 选择不断上升的当复位信号从零上升到正值、从负上升到正值或从负上升到零时,复位状态。

  • 选择下降当复位信号从正数降至零、从正数降至负数或从零降至负时,复位状态。

  • 选择要么当复位信号从零变为非零值或改变符号时,复位状态。

复位端口有直接馈通。如果块输出反馈到这个端口,直接或通过一系列块直接馈通,一个代数循环结果(见代数循环概念).

使讨论二阶导数过零检测

该参数控制是否对该块启用过零检测。默认情况下,使讨论二阶导数过零检测属性窗格。但是,此参数仅在讨论二阶导数过零控制,在解算器窗格中的,为使用本地设置.有关更多信息,请参见讨论二阶导数过零检测

重新初始化dx / dtx达到饱和

对于某些建模应用程序,dx / dt必须重新初始化时状态x达到它的极限,为了拉x立即饱和。您可以通过选择来实现这一点当x达到饱和时重新初始化dx/dt属性窗格。

如果这个选项是开启的,那么当x达到饱和时,Simulink检查是否万博1manbetxdx / dt初始条件(参数或信号)允许状态x立即离开饱和。如果是这样,S万博1manbetximulink将重新初始化状态dx / dt初始条件(参数或信号)在该时刻的值。如果没有,Sim万博1manbetxulink将在当前时刻忽略此参数并设置dx / dt为0,以使块状态一致。

该参数仅在“when”时刻有效x达到饱和极限。这在以后的任何时候都不适用x被保持在饱和状态。

更多信息请参阅关于限制状态的章节。例如,请参见模拟弹跳球

不考虑状态限制和外部复位线性化

对于通过线性化简化模型的情况,可以通过选择让Simulink忽略状态和外部复位的限制万博1manbetx忽略状态限制和重置的线性化

指定块输出的绝对公差

默认情况下,Simul万博1manbetxink软件使用配置参数对话框中指定的绝对公差值可变步长求解器的误差公差)来计算积分器块的输出。如果这个值不能提供足够的错误控制,请为state指定一个更合适的值x绝对宽容x字段和状态dx / dt绝对宽容dx / dt参数对话框的字段。万博1manbetxSimulink使用您指定的值来计算块的状态值。

指定输出端口的显示

您可以控制是否显示x或者是dx / dt输出端口使用ShowOutput参数。您可以显示一个或两个输出端口;但是,您必须至少选择一个。

指定州名

可以指定的名称x州和dx / dt国家使用StateNameXStateNameDXDT参数。但是,您必须指定两者的名称,或者两者都不指定;不能为just指定名称x或者只是dx / dt.两个州名必须具有相同的类型和长度。此外,名称的数量必须平均地除以州的数量。

选择所有选项

当您选择所有选项时,块图标看起来像这样。

港口

输入

全部展开

输入信号u指定为标量、向量或矩阵的积分器系统。

数据类型:

指定初始条件的外部信号x0到积分器系统。可以将初始条件指定为标量、向量或矩阵。

依赖关系

要启用此输入端口,请设置初始条件源x参数外部

数据类型:

指定初始条件的外部信号dx0到积分器系统。你可以指定初始条件dx0标量、向量或矩阵。

依赖关系

要启用此输入端口,请设置初始条件源dx/dt参数外部

数据类型:

输出

全部展开

x状态输出信号,以标量、向量或矩阵形式提供。

数据类型:

dx状态输出信号,指定为标量、向量或矩阵。

数据类型:

参数

全部展开

x

指定状态初始条件的来源x

  • 内部-得到初始状态条件xx初始条件参数。

  • 外部-得到初始状态条件x从外部块连接到X0输入端口。

限制

万博1manbetxSimulink软件不允许此块的初始条件为

依赖关系

选择内部使x初始条件参数,并删除X0输入端口。

选择外部禁用x初始条件参数,并启用X0输入端口。

编程使用

块参数:ICSourceX
类型:特征向量,字符串
价值观:“内部”|“外部”
默认值:“内部”

指定状态的初始条件x

限制

万博1manbetxSimulink软件不允许此块的初始条件为

依赖关系

要启用该参数,请设置初始条件源x内部

设置初始条件源x外部禁用此参数并启用X0输入端口。

编程使用

块参数:ICX
类型:特征向量,字符串
价值观:标量|向量|矩阵
默认值:“0.0”

极限状态x对象之间的值下限x上限x参数。的默认值二阶积分器.的默认值二阶积分器有限

  • 对极限状态x之间的值下限x上限x参数,选中此复选框。

  • 取消州的范围限制x,清除此复选框。

依赖关系

选中此复选框将启用上限x下限x参数。

编程使用

块参数:LimitX
类型:特征向量,字符串
价值观:“关闭”|“上”
默认值:“关闭”二阶积分器) |“上”二阶积分器有限

指定状态上限x.的默认值二阶积分器.的默认值二阶积分器有限1

提示

状态的饱和上限x必须严格大于饱和下限。

依赖关系

要启用该参数,请选择限制x复选框。

编程使用

块参数:UpperLimitX
类型:特征向量,字符串
价值观:` 1 ` | ` inf ` | `标量|向量|矩阵
默认值:' 1 '二阶积分器有限) |“正”二阶积分器

指定状态的下限x.的默认值二阶积分器.的默认值二阶积分器有限0

提示

状态的低饱和极限x必须严格小于饱和上限。

依赖关系

要启用该参数,请选择限制x复选框。

编程使用

块参数:LowerLimitX
类型:特征向量,字符串
价值观:` 0 ` | ` -inf ` | . `标量|向量|矩阵
默认值:' 0 '二阶积分器有限) |“负”二阶积分器

使包装的x之间的上包值x包装低值x参数。使包装的x消除了对过零检测的需要,减少了求解器重置,提高了求解器性能和精度,并增加了建模旋转和循环状态轨迹时的仿真时间跨度。

如果您指定上包值x作为包装低值x作为,包装将永远不会发生。

依赖关系

选中此复选框启用上包值x包装低值x

编程使用

块参数:WrapX
类型:特征向量,字符串
价值观:“关闭”|“上”
默认值:“关闭”

指定用于换行的上值x

依赖关系

要启用该参数,请选择用x复选框。

编程使用

块参数:WrappedUpperValueX
类型:特征向量,字符串
价值观:标量|向量|矩阵
默认值:“π”

为换行指定较低的值x

依赖关系

要启用该参数,请选择用x复选框。

编程使用

块参数:WrappedLowerValueX
类型:特征向量,字符串
价值观:标量|向量|矩阵
默认值:“-π”

指定计算状态的绝对公差x

  • 您可以输入汽车, -1,一个正的实标量或向量。

  • 如果你输入汽车或-1,Sim万博1manbetxulink使用配置参数对话框中的绝对公差值(参见解算器窗格中)来计算状态x

  • 如果您输入一个实标量值,该值将覆盖配置参数对话框中的绝对公差,并用于计算全部x州。

  • 如果输入一个真实的向量,那么该向量的维数必须与状态维数相匹配x.这些值覆盖配置参数对话框中的绝对公差。

编程使用

块参数:AbsoluteToleranceX
类型:特征向量,字符串
价值观:“汽车”|' 1 '|任何正的实标量或向量
默认值:“汽车”

为状态分配一个唯一的名称x

提示

  • 要为单个状态指定名称,请在引号之间输入名称,例如position'。

  • 将名称分配给多个xStates,输入用大括号括起来的以逗号分隔的列表,例如{'a', 'b', 'c'}。每个名称必须唯一。

  • 州名只应用于选定的块。

  • 如果指定的州名x,还必须指定其所属的州名dx / dt

  • 国家的名称xdx / dt必须具有相同的类型和长度。

  • 州的数目必须除以州名的数目。您可以指定少于x状态,但不能指定多于x州。例如,您可以在具有四种状态的系统中指定两个名称。第一个名字适用于前两个州,第二个名字适用于后两个州。但是,您必须保持一致,并将相同的方案应用于dx / dt

  • 在MATLAB中使用变量分配状态名®工作区,输入不带引号的变量。变量可以是字符向量、字符串或单元格数组。

编程使用

块参数:StateNameX
类型:特征向量,字符串
价值观:' '|用户定义
默认值:' '

dx / dt

指定状态初始条件的来源dx / dt作为内部外部

限制

万博1manbetxSimulink软件不允许此块的初始条件为

依赖关系

  • 选择内部使初始条件dx / dt参数,并删除dx0输入端口。

  • 选择外部禁用初始条件dx / dt参数,并启用dx0输入端口。

编程使用

块参数:ICSourceDXDT
类型:特征向量
价值观:“内部”|“外部”
默认值:“内部”

指定状态的初始条件dx / dt

限制

万博1manbetxSimulink软件不允许此块的初始条件为

依赖关系

  • 设置初始条件源dx/dt内部支持这个参数。

  • 设置初始条件源dx/dt外部禁用这个参数。

编程使用

块参数:ICDXDT
类型:特征向量
价值观:标量|向量|矩阵
默认值:“0.0”

限制dx / dt值之间的块的状态下限dx / dtdx / dt上限参数。的默认值二阶积分器.的默认值二阶积分器有限

提示

如果你设置了饱和度限制x,则区间由dx / dt上限下限dx / dt必须包含零。

依赖关系

选中此复选框将启用dx / dt上限下限dx / dt参数。

编程使用

参数:LimitDXDT
类型:特征向量
价值观:“关闭”|“上”
默认值:“关闭”二阶积分器) |“上”二阶积分器有限

指定状态的上限dx / dt

依赖关系

如果你限制x,则该参数必须为严格正的值。

要启用该参数,请选择限制dx / dt复选框。

编程使用

块参数:UpperLimitDXDT
类型:特征向量
价值观:标量|向量|矩阵
默认值:“正”

指定状态的下限dx / dt

依赖关系

如果你限制x,则该参数必须为严格负值。

要启用该参数,请选择限制dx / dt复选框。

编程使用

块参数:LowerLimitDXDT
类型:特征向量
价值观:标量|向量|矩阵
默认值:“负”

指定计算状态的绝对公差dx / dt

  • 您可以输入汽车1,一个正的实标量或向量。

  • 如果你输入汽车1,则Simul万博1manbetxink使用配置参数对话框中的绝对公差值(参见解算器窗格中)来计算dx / dt块的输出。

  • 如果您输入一个数值,该数值将覆盖“配置参数”对话框中的绝对公差。

编程使用

块参数:AbsoluteToleranceDXDT
类型:字符向量、字符串、标量或向量
价值观:“汽车”|' 1 '|任何正的实标量或向量
默认值:“汽车”

为状态分配一个唯一的名称dx / dt

提示

  • 要为单个状态指定一个名称,请在引号之间输入名称,例如,'velocity'。

  • 将名称分配给多个dx / dtStates,输入用大括号括起来的以逗号分隔的列表,例如{'a', 'b', 'c'}。每个名称必须唯一。

  • 州名只应用于选定的块。

  • 如果指定的州名dx / dt,还必须指定其所属的州名x

  • 国家的名称xdx / dt必须具有相同的类型和长度。

  • 州的数目必须除以州名的数目。您可以指定少于dx / dt状态,但不能指定多于dx / dt州。例如,您可以在具有四种状态的系统中指定两个名称。第一个名字适用于前两个州,第二个名字适用于后两个州。但是,您必须保持一致,并将相同的方案应用于x

  • 要在MATLAB工作空间中使用变量分配状态名,输入变量时不带引号。变量可以是字符向量、字符串或单元格数组。

编程使用

块参数:StateNameDXDT
类型:特征向量,字符串
价值观:' '|用户定义
默认值:' '

属性

当触发事件在复位信号中发生时,将状态重置为初始状态。

  • 没有一个—请勿将状态重置为初始状态。

  • 不断上升的—复位信号从零上升到正值或从负数上升到正值时的状态。

  • 下降—复位信号从正到零或从正到负的状态。

  • 要么—复位信号从零变为非零值或改变符号时的状态。

编程使用

块参数:ExternalReset
类型:特征向量,字符串
价值观:“没有”|“上升”|“下降”|“不是”
默认值:“没有”

选择启用过零检测。有关更多信息,请参见讨论二阶导数过零检测

编程使用

参数:ZeroCross
类型:特征向量,字符串
价值观:“上”|“关闭”
默认值:“上”

在瞬间当状态x达到饱和时,重置dx / dt到目前的初始条件。

提示

dx / dt初始条件必须具有启用的值x立即离开饱和。否则,Simulink万博1manbetx忽略的初始条件dx / dt以保持块状态的数学一致性。

编程使用

块参数:ReinitDXDTwhenXreachesSaturation
类型:特征向量,字符串
价值观:“关闭”|“上”
默认值:“关闭”

为了线性化的目的,让Simulink忽略指定的状态限制和外部复位。万博1manbetx

编程使用

块参数:IgnoreStateLimitsAndResetForLinearization
类型:特征向量,字符串
价值观:“关闭”|“上”
默认值:“关闭”

指定块上的输出端口。

  • 这两个——显示xdx / dt输出端口。

  • x-只显示x输出端口。

  • dx / dt-只显示dx / dt输出端口。

编程使用

块参数:ShowOutput
类型:特征向量,字符串
价值观:“两个”|“x”|“dxdt”
默认值:“两个”

块特征

数据类型

多维信号

没有

适应信号

没有

扩展功能

介绍了R2010a