主要内容

长死期过程的控制:史密斯预测器

这个例子展示了PI控制在长死区过程中的局限性,并说明了一种名为“Smith Predictor”的控制策略的好处。

该示例的灵感来自:

陈志强,“死区补偿控制器的鲁棒调谐程序”,控制工程实践,9,2001,第1195-1208页。

过程模型

过程开环响应模型为一阶加死区时间,时间常数为40.2秒,延时为93.9秒:

s =特遣部队(');p = exp(-93.9 * s)* 5.6 /(40.2 * s + 1);p.InputName =.'U';P.OutputName ='是';P.
P =从输入“U”输出“Y”:5.6 exp(-93.9 * s)* ----------40.2 S + 1连续时间传输功能。

请注意,延迟超过时间常数的两倍。该模型代表了许多化学过程。其阶跃响应如下所示。

步骤(P)、网格

PI控制器

比例积分(PI)控制是过程控制中常用的控制方法。相应的控制体系结构如下所示。

补偿器C是一个标准形式的PI控制器,具有两个调谐参数:比例增益Kp和一个积分的时间“透明国际”.我们使用PIDTUNE使用0.006 Rad / S的开环带宽设计PI控制器的命令:

Cpi = pidtune (P, pidstd (1, 1), 0.006);消费者价格指数
Cpi = 1 1 Kp *(1 + ---- *——)Ti s, Kp = 0.0501, Ti = 47.3标准形式的连续时间PI控制器

为了评估PI控制器的性能,关闭反馈回路并模拟参考信号的阶跃变化的响应ysp.和输出干扰信号D..由于反馈路径的延迟,需要进行转换P.消费者价格指数的状态空间表示党卫军命令:

Tpi =反馈(P * Cpi, 1, 1, 1, 1);%闭环模型[YSP; D]  - > Y.tpi.InputName = {'ysp'' d '};步骤(TPI),网格

闭环响应具有可接受的超调量,但有点迟缓(大约在600秒内稳定下来)。增加比例增益Kp会加快响应速度,但也会显著增加超调量,并迅速导致不稳定:

Kp3 = (0.06; 0.08; 0.1);尝试增加三个Kp值Ti3 = repmat (Cpi.Ti 3 1);% Ti保持不变C3 = pidstd (Kp3 Ti3);%相应的三个PI控制器T3 =反馈(P * C3,1);t3.Inputname ='ysp';步骤(T3)标题(增加Kp时的稳定性损失

长死区时间严重限制了PI控制器的性能。这是因为PI控制器不知道死区时间,当实际输出时反应太“不耐烦”y与所需的设定值不匹配ysp..每个人都经历过类似的现象在阵雨中,水温需要很长时间才能调整。在那里,耐急力通常通过燃烧热和冷冻水来交替责骂。更好的策略包括在进行调整之前等待温度设定的变化以生效。一旦我们了解了旋钮设置提供了我们最喜欢的温度,我们就可以在淋浴所需的时间内获得正确的温度。这种“最佳”控制策略是史密斯预测因素方案背后的基本理念。

史密斯预测器

Smith Predictor控制结构如下图所示。

史密斯预测器使用一个内部模型GP.预测过程的无延迟响应YP(例如,给定旋钮设置的水温是什么)。然后,将该预测YP与所需的设定值YSP进行比较以确定所需的调整(控制U)。为防止漂移和拒绝外部干扰,史密斯预测器还将实际过程输出与预测进行了比较日元这将考虑死亡时间。差距dy = y-y1通过滤波器F反馈,并对整体误差信号作出贡献E..请注意,dy相当于感知温度不匹配等待足够长的淋浴要做出反应。

部署史密斯预测器方案需要

  • 一个模型GP.过程动力学和估计τ进程死时间

  • 适当的补偿器和滤波器动态设置(CF

基于流程模型,我们使用:

$$ g_p(s)= {5.6 \超过1 + 40.2 s},\ tau = 93.9 $$

为了F,使用一个20秒时间常数的一阶滤波器来捕获低频干扰。

f = 1 /(20 * s + 1);f.InputName =.'DY';f.outputname =“迪拜”

为了C,我们重新设计了PI控制器与整体工厂看到的PI控制器,其中包括动力学从P.GP.F和死时间。在史密斯预测器控制结构的帮助下,我们能够增加开环带宽,以实现更快的响应,并增加相位裕度,以减少超调。

%的过程p = exp(-93.9 * s)* 5.6 /(40.2 * s + 1);p.InputName =.'U';P.OutputName =“y0”%预测模型Gp = 5.6 / (40.2 * s + 1);全科医生。InputName ='U';全科医生。OutputName =“yp”;Dp = exp (-93.9 *);Dp。InputName =“yp”;dp.outputname =.“日元”%整体植物S1 = sumblk ('ym = yp + dp');S2 = sumblk ('dy = y0  -  y1');工厂=连接(P, Gp, Dp, F, S1, S2,'U'“ym”);%设计PI控制器,具有0.08 rad/s带宽和90度相位裕度选项= pidtuneOptions(“PhaseMargin”, 90);C = pidtune(植物、pidstd(1, 1), 0.08,选项);c.InputName =.“e”;C.OutputName ='U';C
C = 1 1 Kp *(1 + ---- *——)Ti s带有Kp = 0.574, Ti = 40.2的标准形式的连续时间PI控制器

PI控制器与Smith预测器的比较

为了比较两种设计的性能,首先推导出闭环传递函数ysp dy用于Smith Predictor体系结构。为了方便连接所涉及的所有块,命名它们所有的输入和输出通道并让连接做连接:

%从[y_sp,d]到y组装闭环模型sum1 = sumblk('e = ysp - yp - dp');sum2 = sumblk('y = y0 + d');Sum3 = sumblk ('dy = y - y1');T =连接(P, Gp, Dp, C、F Sum1, Sum2, Sum3, {'ysp'' d '},'是');

采用一步将史密斯预测器(蓝色)与PI控制器(红色)进行比较:

步骤(t,“b”,TPI,“r——”网格)传奇(“史密斯预测器”'PI控制器'

史密斯预测器提供了更快的响应,没有过冲。通过绘制闭环BODE响应,在频域中也可见差异ysp.y.注意史密斯预测器的更高带宽。

波德(T (1, 1),“b”Tpi (1,1),“r——”1}、{1 e - 3)网格传奇(“史密斯预测器”'PI控制器'

模型失配的鲁棒性

在前面的分析中,内部模型

$$ G_p(s) e^{-\ s} $

匹配流程模型P.确切地。在实际情况下,内部模型只是真正的过程动态的近似值,因此重要的是要了解史密斯预测器对过程动态和死区时间的不确定性有何稳健。

考虑两个代表过程参数不确定性范围的受扰植物模型:

P1 = exp(-90*s) * 5/(38*s+1);P2 = exp(-100*s) * 6/(42*s+1);波德(P, P1, P2),网格标题(“标称和扰动过程模型”

为了分析鲁棒性,将标称模型和扰动模型收集到一组过程模型中,重建PI和Smith Predictor设计的闭环传递函数,并模拟闭环响应:

植物=堆叠(1,P,P1,P2);%流程模型数组T1 = Connect(植物,GP,DP,C,F,SUM1,SUM2,SUM3,{'ysp'' d '},'是');%史密斯Tpi =反馈(植物* Cpi, 1, 1, 1, 1);步骤(t1,“b”,TPI,“r——”网格)传奇('史密斯预测器1''PI控制器'

两种设计都对模型不匹配很敏感,闭环Bode图证实了这一点:

波德(T1 (1, 1),“b”Tpi (1,1),“r——”网格)传奇('史密斯预测器1''PI控制器'

改善稳健性

为了降低Smith Predictor对建模错误的敏感性,检查内圈和外圈的稳定裕度。内循环C有开环传输C *的全科医生因此,稳定性裕度由

保证金(C * GP)标题(“内循环的稳定裕度(C)”

内圈具有舒适的增益和相位利润,因此请重点关注外环。采用连接派生开环传输函数L.ysp.DP.内环关闭时:

sum1o = sumblk('e = ysp - yp');%在dp处打开回路L =连接(P, Gp, Dp, C、F Sum1o, Sum2, Sum3, {'ysp'' d '},“迪拜”);Bodemag(L(1,1))

这个传递函数本质上是零,这是当过程和预测模型完全匹配时所期望的。为了深入了解外环的稳定边际,我们需要使用一个扰动过程模型,例如,P1

H =连接(植物(:,:2),Gp, Dp, C, Sum1o, Sum2, Sum3, {'ysp'' d '},'DY');H = H (1,1);%开环转移YSP  - > DYL = f * h;保证金(L)标题(“外环的稳定裕度(F)”网格);xlim([1依照1]);

该增益曲线的驼峰近0.04 rad / s,可降低增益裕度并增加闭环步长响应中的驼峰。要解决此问题,请选择过滤器F更早、更迅速地完成:

f =(1 + 10 * s)/(1 + 100 * s);f.InputName =.'DY';f.outputname =“迪拜”

验证增益裕度是否改善了0.04 Rad / S相交附近:

L = f * h;保证金(L)标题(“修正F外环的稳定裕度”网格);xlim([1依照1]);

最后,用改进后的滤波器模拟闭环响应:

T2 = Connect(植物,GP,DP,C,F,SUM1,SUM2,SUM3,{'ysp'' d '},'是');步骤(t2,“b”,TPI,“r——”网格)传奇('史密斯预测器2''PI控制器'

改进的设计提供了更一致的性能,但牺牲了稍慢的标称响应。

改善干扰拒绝

的闭环传递函数的公式D.y表明最佳选择F

$ F(s) = e^{\tau s} $

在哪里τ是内部模型的死区时间。无论之间的不匹配如何,这种选择都能实现完美的干扰拒绝P.GP..不幸的是,这种“负延迟”不是因果的,无法实施。在论文中:

Huang,H.-P.等,“一个改进的史密斯预测因子,具有近似死亡时间的逆,”Aiche Journal,36(1990),PP。1025-1031

作者建议使用相位超前近似:

$$ ^ {\ tau s} \大约{1 + b(s)\超过1 + b(s)e ^ { -  \ tau s}} $$

在哪里B.是一个低通滤波器,具有与内部模型相同的时间GP..您可以测试该方案如下:

定义B(s)和F(s)

40 * s + B = 0.05 / (1);τ= totaldelay (Dp);F = (1 + B) / (1 + B * exp(τ* s));f.InputName =.'DY';f.outputname =“迪拜”

重新设计带带宽的PI控制器

工厂=连接(P, Gp, Dp, F, S1, S2,'U'“ym”);C = pidtune(植物、pidstd (1, 1), 0.02, pidtuneOptions (“PhaseMargin”,90));c.InputName =.“e”;C.OutputName ='U';C
C = 1 1 Kp *(1 + ---- *——)Ti s with Kp = 0.144, Ti = 40.1 standard形式的连续时间PI控制器

计算闭环模型T3

T3 =连接(植物、全科医生、Dp、C、F, Sum1, Sum2, Sum3, {'ysp'' d '},'是');

比较T3、T2和Tpi

步骤(t2,“b”T3,‘g’,TPI,“r——”网格)传奇('史密斯预测器2'“史密斯预测3 ''PI控制器'

这个比较表明,我们最后的设计以较慢的设定值跟踪为代价,加快了抗扰能力。