输入信号的二阶积分
金宝app模型/连续
的二阶积分器块和二阶积分有限公司块解二阶初值问题:
在哪里u是系统的输入。因此,块是一个具有两种连续状态的动态系统:x和dx / dt.
请注意
这两种状态有一个数学关系,即dx / dt的导数x.为了在整个仿真过程中满足这种关系,Simulink对块参数和行为施加了各种约束。金宝app
的二阶积分有限公司块与二阶积分器块,但它默认基于指定的上限和下限限制状态。有关更多信息,请参见限制美国.
金宝app®软件可以使用几种不同的数值积分方法来计算块的输出。每种方法对于特定的应用都有优势。使用解算器窗格中选择最适合您的应用程序的技术。(有关更多信息,请参见解算器选择标准.)选定的求解器计算的状态二阶积分器使用当前输入值在当前时间步长处阻塞。
使用block参数对话框:
指定每个状态初始条件的来源是内部的还是外部的
为状态初始条件指定一个值
定义一个或两个状态的上限和下限
为每个状态指定绝对公差
为这两个状态指定名称
选择外部复位条件
使讨论二阶导数过零检测
当x达到饱和时,重新初始化dx/dt
指定Simulink忽略线金宝app性化操作的状态限制和外部复位
您可以将每种状态的初始条件单独定义为块对话框上的参数,或者从外部信号输入一个或两个参数。
来定义初始状态条件x作为块参数,使用初始条件源x要选择的下拉菜单内部的
并将值输入x初始条件字段。
从外部源为状态提供初始条件x,指定初始条件源x参数,外部
。块上会显示一个额外的输入端口。
来定义初始状态条件dx / dt作为块参数,使用初始条件源dx/dt要选择的下拉菜单内部的
并将值输入初始条件dx / dt字段。
从外部源为状态提供初始条件dx / dt,指定初始条件源dx/dt作为外部
。块上会显示一个额外的输入端口。
如果您选择为两个状态初始条件使用外部源,则您的块将出现如下所示。
请注意
金宝appSimulink不允许的初始条件值正
或南
.
如果你处于极限状态x或状态dx / dt通过指定饱和极限(见限制美国)和一个或多个初始条件超出了相应的限制,然后将各自的状态初始化为最接近的有效值,并计算出一组一致的初始条件。
对二阶系统建模时,可能需要限制块状态。例如,活塞在气缸内的运动由牛顿第二定律控制,并且对活塞位置有约束(x)。与二阶积分器块,你可以限制状态x和dx / dt彼此独立。你甚至可以在模拟过程中改变限制;但是,您不能更改状态是否受到限制。要遵循的一个重要规则是,上限必须严格大于相应的下限。
当您限制一种或两种状态时,块的外观会发生变化。当这两种状态都受到限制时,块显示如下。
对于每个状态,您可以使用块参数对话框设置适当的饱和度限制。
如果你使用二阶积分有限公司块,默认情况下这两种状态都是有限的。但您也可以手动限制状态x在二阶积分器通过选择来阻止限制x并在适当的参数字段中输入极限。
然后块确定状态的值如下:
什么时候x小于或等于它的下限,值x在它的下限和dx / dt为零。
什么时候x处于其下限和上限之间时,两种状态都遵循二阶常微分方程给出的轨迹。
什么时候x是否大于或等于它的上限x在它的上限和dx / dt为零。
您可以选择重新初始化dx / dt变成了一个新的值x达到饱和。看到当x达到饱和时重新初始化dx/dt.
与国家一样x状态dx / dt默认情况下,在dx / dt面板的二阶积分有限公司“块”对话框。您可以手动设置此参数,限制dx / dt,在二阶积分器块。在这两种情况下,您都必须输入适当的限制dx / dt.
如果你只限制状态dx / dt,然后该块确定的值dx / dt如下:
什么时候dx / dt小于或等于它的下限,值dx / dt保持在其下限。
什么时候dx / dt处于其下限和上限之间时,两种状态都遵循二阶常微分方程给出的轨迹。
什么时候dx / dt是否大于或等于它的上限dx / dt保持在其上限。
当状态dx / dt在它的上限或下限,值x由一阶初值问题控制:
在哪里l是dx / dt极限(上限或下限),tl就是那个时候dx / dt达到这个极限xl是状态的价值吗x当时。
当你限制两种状态时,Simulink通过限制上下限的允许金宝app值来保持状态的数学一致性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 / dt必须重新初始化时状态x达到它的极限,为了拉x立即脱离饱和状态。您可以通过选择当x达到饱和时,重新初始化dx/dt在属性窗格。
如果这个选项是开启的,那么当x达到饱和时,Simulink检查是否金宝appdx / dt初始条件(参数或信号)允许状态x立即离开饱和状态。如果是,Simulink将重新初始化状态金宝appdx / dt初始条件(参数或信号)在该时刻的值。如果没有,Sim金宝appulink将在当前时刻忽略此参数并设置dx / dt为0,以使块状态一致。
该参数仅在“when”时刻有效x达到饱和极限。这在以后的任何时候都不适用x被保持在饱和状态。
更多信息请参阅关于限制状态的章节。例如,请参见模拟弹跳球.
对于通过线性化简化模型的情况,可以通过选择让Simulink忽略状态和外部复位的限制金宝app忽略状态限制和重置的线性化.
默认情况下,Simul金宝appink软件使用配置参数对话框中指定的绝对公差值可变步长求解器的误差公差)来计算积分器块的输出。如果这个值不能提供足够的错误控制,请为state指定一个更合适的值x在绝对宽容x场与状态dx / dt在绝对宽容dx / dt参数对话框的字段。金宝appSimulink使用您指定的值来计算块的状态值。
您可以控制是否显示x或者dx / dt输出端口使用ShowOutput
参数。您可以显示一个或两个输出端口;但是,您必须至少选择一个。
可以指定的名称x州和dx / dt国家使用StateNameX
和StateNameDXDT
参数。但是,必须同时指定两者的名称或两者都不指定;您不能仅为其指定名称x或者只是dx / dt.两个州名必须具有相同的类型和长度。此外,名称的数量必须平均地除以州的数量。
当您选择所有选项时,块图标看起来像这样。
数据类型 |
|
直接引线 |
|
多维信号 |
|
可变大小信号 |
|
讨论二阶导数过零检测 |
|