这个例子展示了如何使用控制系统理论中的Padé逼近来模拟一阶系统响应中的时滞。时滞出现在系统中,例如在输入和系统响应之间存在时滞的化学和运输过程中。当这些输入被建模时,它们被称为死区时间输入。
这个例子使用了Symbolic Math Toolbox™来求解一阶系统的传递函数,并使用Padé近似法求出系统对死时间步长输入的响应。这个例子符号化地执行计算以获得解析结果。
Padé近似的顺序(m, n)
近似函数f(x)
周围
像
Padé逼近是由两个幂级数之比构成的有理函数。由于它是有理函数,因此在用极点逼近函数时比Taylor级数更精确。Padé逼近由符号数学工具箱表示™ 作用帕德
.
当膨胀点存在极点或零点时 ,Padé逼近的精度降低。要提高精度,请使用另一种形式的Padé逼近,即
这个帕德
函数在设置OrderMode
输入参数到相对的
.
一阶系统的行为由该微分方程描述
在MATLAB®中输入微分方程。
符号τA.x(t)y (t)xS (s)y (s)H(s)tmpF = tau*diff(y)+y = a*x;
求它的拉普拉斯变换F
使用拉普拉斯
.
F =拉普拉斯(F, t, s)
F=
假设系统的响应为t = 0
是0
使用潜艇
代替y(0)=0
.
F =潜艇(F, y (0), 0)
F=
要收集常用术语,请使用简化
.
F=简化(F)
F=
为便于阅读,请替换的拉普拉斯变换x(t)
和y (t)
与xS (s)
和y (s)
.
F=subs(F,[laplace(x(t),t,s)laplace(y(t),t,s)],[xS(s)yS(s)])
F=
传递函数的拉普拉斯变换是yS(s)/xS(s)
.等式两边同时除以xS (s)
并用潜艇替换yS(s)/xS(s)
与H(s)
.
F = F / xS(年代);F =潜艇(F, y (s) / xS (s), H (s))
F=
解方程为H(s)
.代替H(s)
用一个虚拟变量,用solve求解虚拟变量,并赋值给Hsol (s)
.
F =潜艇(F、H (s), tmp);Hsol (s) =解决(F, tmp)
Hsol(s)=
一阶系统的输入是一个时滞阶跃输入。若要表示阶跃输入,请使用重熔
. 将输入延迟三个时间单位。使用拉普拉斯
.
阶跃=垂向(t-3);阶跃=拉普拉斯(阶跃)
一步=
求系统的响应,它是传递函数和输入的乘积。
y=Hsol(s)*步骤
y=
要允许打印响应,请设置参数A.
和τ
特定的值。为A.
和τ
,选择值1.
和3.
分别地
Y = subs(Y,[a tau],[1 3]);y = ilaplace (y,年代);
求序的Padé逼近[2 2]
的顺序输入参数帕德
.
步骤PADE22=pade(步骤,“秩序”,[2 2])
stepPade22 =
通过将传递函数与输入的Padé近似值相乘,找到对输入的响应。
* stepPade22 yPade22 = Hsol(年代)
yPade22 =
求拉普拉斯逆变换yPade22
使用伊拉普拉斯
.
yPade22=ilaplace(yPade22,s)
yPade22 =
要绘制响应,需要设置参数A.
和τ
他们的价值观1.
和3.
分别地
yPade22 = subs(yPade22,[a tau],[1 3])
yPade22 =
绘制系统的响应Y
以及通过Padé近似计算得到的响应yPade22
.
fplot (y, 20 [0])在fplot(yPade22,[0 20])网格在标题“死区时间步长输入的Padé逼近”传奇(“对死时间阶跃输入的响应”,'Padé approant [2 2]',...“位置”,“最好的”);
这个[2 2]
Padé近似不能很好地表示响应,因为在膨胀点存在极点0
.提高…的准确性帕德
当膨胀点有极点或零点时,设置OrderMode
输入参数,并重复上述步骤。有关详细信息,请参见帕德
.
stepPade22Rel = pade(步骤,“秩序”,[2 2],“订单模式”,“亲戚”)
stepPade22Rel =
* stepPade22Rel yPade22Rel = Hsol(年代)
伊帕德雷=
yPade22Rel = ilaplace (yPade22Rel);yPade22Rel = subs(yPade22Rel,[a tau],[1 3])
伊帕德雷=
fplot (yPade22Rel 20] [0,“显示名称”,“相对Padé逼近[2]”)
您可以通过增加Padé近似值的顺序来提高其准确性。增加订单到[4 5]
然后重复这些步骤。这个[n-1 n]
Padéapproximat更适合于在以下情况下近似响应:t = 0
比[n]
帕德近似。
步骤PADE45=pade(步骤,“秩序”[4 - 5])
stepPade45 =
yPade45=Hsol(s)*步骤板45
yPade45 =
yPade45=潜艇(yPade45,[a tau],[13])
yPade45 =
求拉普拉斯逆变换伊帕德45
使用伊拉普拉斯
近似伊帕德45
数字使用vpa
.绘制从Padé近似值计算的响应伊帕德45
.
yPade45 = vpa (ilaplace (yPade45));fplot (yPade45 20] [0,“显示名称”,“Padé逼近[4 5]”)
以下几点已显示出来:
Padé逼近可以模拟死区时间步长输入。
Padé近似值的准确性随着近似值顺序的增加而增加。
当扩展点处存在极点或零点时,Padé近似值对于扩展点不准确。若要提高近似值的精度,请设置OrderMode
选项相对的
。您也可以使用增加分母相对于分子的顺序。