主要内容

控制长期时间的过程:史密斯预测因子

此示例显示了PI控制对于具有长时间的过程的PI控制的限制,并说明了称为“史密斯预测器”的控制策略的好处。

该示例的灵感来自:

A. Ingimundarson和T. Hagglund,“死者补偿控制器的强大调整程序”,控制工程实践,9,2001,PP。1195-1208。

过程模型

过程开环响应被建模为一阶加死胡日,使用40.2秒常数和93.9秒延迟:

s = tf(');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.和一个积分的时间TI.。我们使用Pidtune.使用0.006 Rad / S的开环带宽设计PI控制器的命令:

CPI = PidTune(P,PIDSTD(1,1),0.006);CPI.
CPI = 1 1 kp *(1 + ---- * ---)Ti s,kp = 0.0501,Ti = 47.3连续时间PI控制器标准形式

为了评估PI控制器的性能,关闭反馈回路并模拟参考信号中的步骤变化的响应ysp.和输出干扰信号D.。由于反馈路径的延迟,有必要转换P.或者CPI.使用的状态空间表示SS.命令:

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.。每个人都经历过类似的现象在阵雨中,水温需要很长时间才能调整。在那里,耐急力通常通过燃烧热和冷冻水来交替责骂。更好的策略包括在进行调整之前等待温度设定的变化以生效。一旦我们了解了旋钮设置提供了我们最喜欢的温度,我们就可以在淋浴所需的时间内获得正确的温度。这种“最佳”控制策略是史密斯预测因素方案背后的基本理念。

史密斯预测因子

史密斯预测器控制结构如下图绘制。

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

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

  • 一个模型GP.过程动态和估计TAU过程中的流程

  • 补偿器和滤波器动力学的适当设置(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 ='DP';

为了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);gp.inputname ='U';gp.outputname =.'yp';dp = exp(-93.9 * s);dp.inputname =.'yp';dp.outputname =.'y1';%工厂s1 = sumblk('ym = yp + dp');s2 = sumblk('dy = y0  -  y1');Plant = Connect(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控制器与史密斯预测因子的比较

要比较两种设计的性能,首先导出闭环传输功能YSP,Dy对于史密斯预测者架构。为了便于连接所涉及的所有块的任务,请命名其所有输入和输出通道并让连接布线:

%将闭环模型从[Y_SP,D]组装到Y.sum1 = sumblk('e = ysp  -  yp  -  dp');sum2 = sumblk('y = y0 + d');sum3 = sumblk('dy = y  -  y1');T = Connect(P,GP,DP,C,F,SUM1,SUM2,SUM3,{'ysp''D'},'是');

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

步骤(t,'B',TPI,'r--') 网格传奇('史密斯预测器''PI控制器'

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

BODE(T(1,1),'B',TPI(1,1),'r--',{1e-3,1})网格传奇('史密斯预测器''PI控制器'

模型不匹配的鲁棒性

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

$$ g_p(s)e ^ { -  \ tau s} $$

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

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

p1 = exp(-90 * s)* 5 /(38 * s + 1);p2 = exp(-100 * s)* 6 /(42 * s + 1);BODE(P,P1,P2),网格标题('标称和扰动的流程模型'

要分析稳健性,将标称和扰动模型收集到一个过程模型中,重建PI和Smith预测器设计的闭环传输功能,并模拟闭环响应:

植物=堆叠(1,P,P1,P2);%流程模型数组T1 = Connect(植物,GP,DP,C,F,SUM1,SUM2,SUM3,{'ysp''D'},'是');%史密斯TPI =反馈([植物* CPI,1],1,1,1);%pi.步骤(t1,'B',TPI,'r--') 网格传奇('史密斯预测器1''PI控制器'

这两种设计对模型不匹配敏感,如闭环凸编图所确认的:

BODE(T1(1,1),'B',TPI(1,1),'r--') 网格传奇('史密斯预测器1''PI控制器'

改善稳健性

为了减少史密斯预测因子对建模误差的敏感性,检查内部和外环的稳定性边缘。内循环C有开环传输C * GP.所以稳定性保证金是通过的

保证金(C * GP)标题('内循环的稳定性边缘(c)'

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

sum1o = sumblk('e = ysp  -  yp');%打开dp的循环L = Connect(P,GP,DP,C,F,SUM1O,SUM2,SUM3,{'ysp''D'},'DP');Bodemag(L(1,1))

该传递函数基本上为零,当过程和预测模型完全匹配时要预期。为了了解外循环的稳定性边距,我们需要使用一个扰动的过程模型,例如,P1.

H = Connect(植物(:,:,2),GP,DP,C,SUM1O,SUM2,SUM3,{'ysp''D'},'DY');h = h(1,1);%开环转移YSP  - > Dyl = f * h;保证金(L)标题('外环的稳定性边缘(f)') 网格;XLIM([1E-2 1]);

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

f =(1 + 10 * s)/(1 + 100 * s);f.InputName =.'DY';f.outputname ='DP';

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

l = f * h;保证金(L)标题(“具有修改的F”的外循环的稳定性边缘) 网格;XLIM([1E-2 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} $$

在哪里TAU是内部模型的死区时间。无论之间的不匹配如何,这种选择都能实现完美的干扰拒绝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)

B = 0.05 /(40 * S + 1);tau = totaldelay(dp);f =(1 + b)/(1 + b * exp(-tau * s));f.InputName =.'DY';f.outputname ='DP';

重新设计具有减少带宽的PI控制器

Plant = Connect(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,kp = 0.144,Ti = 40.1标准形式的连续时间PI控制器

计算闭环模型T3

T3 = Connect(植物,GP,DP,C,F,SUM1,SUM2,SUM3,{'ysp''D'},'是');

将T3与T2和TPI进行比较

步骤(t2,'B',t3,'G',TPI,'r--') 网格传奇('史密斯预测器2''史密斯预测器3''PI控制器'

这种比较表明,我们的最后一个设计以较慢的设定点跟踪为代价速度速度速度。