这个例子展示了PI控制在长死区过程中的局限性,并说明了一种名为“Smith Predictor”的控制策略的好处。
这个例子的灵感来自于:
A. Ingimundarson和T. Hagglund,“死者补偿控制器的强大调整程序”,控制工程实践,9,2001,PP。1195-1208。
过程开环响应模型为一阶加死区时间,时间常数为40.2秒,延时为93.9秒:
s =特遣部队(“年代”);P = exp(-93.9*s) * 5.6/(40.2*s+1);P.InputName =“u”;P.OutputName =“y”;P
P =从输入u到输出y: 5.6 exp(-93.9*s) * ---------- 40.2 s + 1连续时间传递函数。
注意延迟是时间常数的两倍多。这个模型代表了许多化学过程。它的阶跃响应如下所示。
步骤(P)、网格在
比例积分(PI)控制是过程控制中常用的控制方法。相应的控制体系结构如下所示。
补偿器C是一个标准形式的PI控制器,具有两个调谐参数:比例增益Kp
积分时间“透明国际”
.我们使用PidTune.
命令设计PI控制器,开环带宽为0.006 rad/s:
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;dTpi。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方案背后的基本思想。
史密斯预测器控制结构如下图绘制。
史密斯预测器使用一个内部模型全科医生
预测过程的无延迟响应yp(例如,给定的旋钮设置将提供的水温)。然后将这个预测yp与期望的设定值ysp进行比较,以决定需要哪些调整(控制u)。为了防止漂移和拒绝外部干扰,史密斯预测器还将实际过程输出与预测进行比较日元
这也考虑到了死时间。的差距dy = y-y1
通过过滤器F馈回并有助于整体误差信号e
.注意dy
等于感知到的温度失配后等着淋浴有反应。
部署Smith Predictor方案需要
一个模型全科医生
过程动态和估计TAU
进程死时间
补偿器和滤波器动力学的适当设置(C
和F
)
根据过程模型,我们使用:
为F
,使用一个20秒时间常数的一阶滤波器来捕获低频干扰。
F = 1 / (20 * s + 1);F.InputName =“dy”;F.OutputName ='DP';
为C
,我们用PI控制器看到的整个工厂重新设计PI控制器,其中包括来自的动态P
,全科医生
,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控制器
为了比较两种设计的性能,首先推导出闭环传递函数ysp d
来y
对于史密斯预测者架构。为了便于连接所涉及的所有块的任务,请将其所有输入和输出通道的名称命名并让连接
做接线:
%从[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 '},“y”);
使用一步
比较Smith Predictor(蓝色)和PI控制器(红色):
步骤(T)“b”Tpi,“r——”) 网格在传奇('史密斯预测器',比例积分控制器的)
史密斯预测器提供了更快的响应,没有超调。这种差异在频域也可见,通过绘制闭环波德响应ysp
来y
.请注意Smith Predictor的更高带宽。
BODE(T(1,1),“b”Tpi (1,1),“r——”,{1E-3,1})网格在传奇('史密斯预测器',比例积分控制器的)
在前面的分析中,内部模型
匹配流程模型P
完全正确。在实际情况中,内部模型只是真实过程动态的一个近似,因此理解Smith Predictor对过程动态和死时间的不确定性的鲁棒性是很重要的。
考虑两个代表过程参数不确定性范围的受扰植物模型:
p1 = exp(-90 * s)* 5 /(38 * s + 1);p2 = exp(-100 * s)* 6 /(42 * s + 1);BODE(P,P1,P2),网格在标题('标称和扰动的流程模型')
为了分析鲁棒性,将标称模型和扰动模型收集到一组过程模型中,重建PI和Smith Predictor设计的闭环传递函数,并模拟闭环响应:
植物=堆栈(1,P, P1, P2);%流程模型数组T1 =连接(植物、全科医生、Dp、C、F, Sum1, Sum2, Sum3, {“ysp”,' d '},“y”);%史密斯Tpi =反馈(植物* Cpi, 1, 1, 1, 1);%pi.步骤(T1,“b”Tpi,“r——”) 网格在传奇(“史密斯预测器1”,比例积分控制器的)
两种设计都对模型不匹配很敏感,闭环Bode图证实了这一点:
波德(T1 (1, 1),“b”Tpi (1,1),“r——”) 网格在传奇(“史密斯预测器1”,比例积分控制器的)
为了减少史密斯预测因子对建模误差的敏感性,请检查内部和外环的稳定性边距。内循环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 =连接(植物(:,:2),Gp, Dp, C, Sum1o, Sum2, Sum3, {“ysp”,' d '},“dy”);h = h(1,1);%开环转移l = 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 =连接(植物、全科医生、Dp、C、F, Sum1, Sum2, Sum3, {“ysp”,' d '},“y”);步骤(T2,“b”Tpi,“r——”) 网格在传奇(《史密斯预测2》,比例积分控制器的)
改进的设计提供了更一致的性能,但牺牲了稍慢的标称响应。
的闭环传递函数的公式d
来y
说明。的最优选择F
是
在哪里TAU
是内部模型的死时间。这种选择实现了完美的干扰抑制,不管之间的不匹配P
和全科医生
.不幸的是,这种“消极延迟”不是因果关系,也无法实施。摘要:
黄,H.-P。,et al., "A Modified Smith Predictor with an Approximate Inverse of Dead Time," AiChE Journal, 36 (1990), pp. 1025-1031
作者建议使用阶段引入近似:
在哪里B
低通滤波器是否与内部模型具有相同的时间常数全科医生
.您可以如下测试此计划:
定义B(s)和F(s)
40 * s + B = 0.05 / (1);τ= totaldelay (Dp);F = (1 + B) / (1 + B * exp(τ* s));F.InputName =“dy”;F.OutputName ='DP';
重新设计带带宽的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 = Connect(植物,GP,DP,C,F,SUM1,SUM2,SUM3,{“ysp”,' d '},“y”);
比较T3、T2和Tpi
步骤(T2,“b”T3,‘g’Tpi,“r——”) 网格在传奇(《史密斯预测2》,“史密斯预测3 ',比例积分控制器的)
这种比较表明,我们的最后一款设计速度速度速度速度较慢的设定点跟踪。