主要内容

PID整定的设定值跟踪vs.干扰抑制

这个例子使用了systune探索整定PID控制器时,设定值跟踪和干扰抑制之间的权衡。

PID整定权衡

在整定一自由度PID控制器时,通常不可能同时实现良好的跟踪和快速的抗扰。假设控制带宽是固定的,更快的抑制干扰需要带宽内更大的增益,这只能通过增加交叉频率附近的斜率来实现。因为较大的斜率意味着较小的相位裕度,这通常是以对设定值变化的响应中更多的超调为代价的。

图1:1- dof PID整定中的权衡。

这个例子使用了systune探索这种权衡,并为您的应用程序找到合适的折衷方案。另请参阅pidtool以更直接的方式做出这样的权衡(见“设计焦点”控制器选项)。

优化设置

考虑图2的PID回路,在工厂输入处有负载扰动。

图2:PID控制回路。

对于这个例子,我们使用植物模型

$ $ G (s) = {10 (s + 5) \ (s + 1) (s + 2) (s + 10)}。$ $

目标控制带宽为10 rad/s。创建一个可调PID控制器,并固定其导数滤波器时间常数为T_f = 0.01美元(10倍带宽),这样就只有三种增益可调(比例增益、积分增益和导数增益)。

G = zpk(-5,[-1 -2 -10],10);C =可调谐pid (“C”“pid”);C.Tf.Value = 0.01;C.Tf.Free = false;% fix Tf=0.01

构造一个可调模型T0的闭环传输ry.使用“分析点”块来标记位置u干扰进入的地方。

LS =分析点(“u”);T0 =反馈(G*LS*C,1);T0。u =“r”;T0。y =“y”

开环响应的增益$ l = gc $是反馈回路行为的关键指标。开环增益在控制带宽内应该高(大于1)以确保良好的干扰抑制,而在控制带宽外应该低(小于1)以对测量噪声和未建模的植物动态不敏感。相应地,用三个需求来表达控制目标:

  • “跟踪”要求指定响应时间约为0.2秒的步进变化r

  • “MaxLoopGain”要求强制滚转-20 dB/decade超过交叉频率10 rad/s

  • “MinLoopGain”要求在频率低于0.1 rad/s时调整积分增益。

S = tf(“年代”);Wc = 10;目标交叉频率%%跟踪R1 = TuningGoal。跟踪(“r”“y”2 / wc);%带宽和滚转R2 = TuningGoal。MaxLoopGain (“u”、wc / s);干扰抑制百分比R3 = TuningGoal。MinLoopGain (“u”、wc / s);R3。焦点= [0 0.1];

一自由度PID控制器整定

使用systune调整PID增益以满足这些要求。将带宽和干扰抑制目标作为硬约束,并根据这些约束优化跟踪。

T1 = systune(T0,R1,[R2 R3]);
最终:软= 1.12,硬= 0.9998,迭代= 155

验证几乎满足了所有三个需求。蓝色曲线是实现的值,黄色斑块突出了违反需求的区域。

图(“位置”,[100,100,560,580]) viewGoal([R1 R2 R3],T1)

跟踪vs.拒绝

为了深入了解跟踪和干扰抑制之间的权衡,将频段[0,0.1]rad/s中的最小环路增益增加一个因子\α美元.重新调整PID增益的值美元\α= 2,4美元

增加循环增益因子2Alpha = 2;R3。MinGain = alpha*wc/s;T2 = systune(T0,R1,[R2 R3]);
最终:软= 1.17,硬= 0.99954,迭代= 115
增加循环增益4倍Alpha = 4;R3。MinGain = alpha*wc/s;T3 = systune(T0,R1,[R2 R3]);
最终:软= 1.25,硬= 0.99994,迭代= 166

将响应与step命令进行比较r对阶跃扰动d进入工厂输入u

图,step(T1,T2,T3,3)“定位点跟踪”)传说('\alpha = 1''\alpha = 2''\alpha = 4'

计算从u到y的闭环传输D1 = getIOTransfer(T1,“u”“y”);D2 = getIOTransfer(T2,“u”“y”);D3 = getIOTransfer(T3,“u”“y”);步骤(D1、D2、D3 10)标题(“抗干扰”)传说('\alpha = 1''\alpha = 2''\alpha = 4'

注意干扰抑制如何随着α增加,但代价是在设定值跟踪中增加了超调。绘制三种设计的开环响应图,并注意交叉前的斜率(0dB)如何随着α

L1 = getLoopTransfer(T1,“u”);L2 = getLoopTransfer(T2,“u”);L3 = getLoopTransfer(T3,“u”);bodemag(L1,L2,L3,{1e-2,1e2}),网格标题(的开环反应)传说('\alpha = 1''\alpha = 2''\alpha = 4'

哪种设计最合适取决于您调优的反馈循环的主要目的。

二自由度PID控制器的整定

如果你不能牺牲跟踪来改善干扰抑制,可以考虑使用2-DOF架构。二自由度PID控制器能够快速抑制扰动,且不显著增加设定值跟踪的超调量。

图3:二自由度PID控制回路。

使用tunablePID2对象参数化2-DOF PID控制器,构造可调模型T0图3所示闭环系统。

C = tunablePID2(“C”“pid”);C.Tf.Value = 0.01;C.Tf.Free = false;% fix Tf=0.01T0 =反馈(G*LS*C,1,2,1,+1);T0 = T0(:,1);T0。u =“r”;T0。y =“y”

接下来调优2-DOF PI控制器的最大环路增益尝试之前($\alpha = 4$).

最小带宽内环路增益(用于干扰抑制)Alpha = 4;R3。MinGain = alpha*wc/s;调2-DOF PI控制器T4 = systune(T0,R1,[R2 R3]);
最终:软= 1.09,硬= 0.86731,迭代= 66

比较1-DOF和2-DOF设计的设定值跟踪和干扰抑制特性$\alpha = 4$

clf、步骤(T3,“b”T4,“g——”4)标题(“定位点跟踪”)传说(“1-DOF”二自由度的

D4 = getIOTransfer(T4,“u”“y”);步骤(D3,“b”D4,“g——”4)标题(“抗干扰”)传说(“1-DOF”二自由度的

对阶跃扰动的响应是相似的,但2-DOF控制器消除了对设定值变化的响应的超调。你可以使用showTunable比较1-DOF和2-DOF控制器的调谐增益。

showTunable (T3)% 1-dof PI
C = 1 s Kp + Ki *——+ Kd * -------- s Tf*s+1 with Kp = 9.51, Ki = 14.9, Kd = 0.89, Tf = 0.01名称:C并行形式连续时间PIDF控制器。
showTunable (T4)% 2-dof PI
C = 1 s u = Kp (b*r-y) + Ki—(r-y) + Kd -------- (C *r-y) s Tf*s+1 with Kp = 5.55, Ki = 20, Kd = 0.853, Tf = 0.01, b = 0.678, C = 1.3

另请参阅

相关的话题

Baidu
map