主要内容

2-DOF PID控制器(命令行)

这个例子展示了如何在命令行设计一个二自由度(2-DOF) PID控制器。该示例还比较了2-DOF控制器的性能与1-DOF PID控制器的性能。

2-DOF PID控制器包括比例和导数项的设定值加权。与1-DOF PID控制器相比,2-DOF PID控制器可以在不显著增加设定值跟踪超调的情况下实现更好的抗干扰。使用2-DOF PID控制器的典型控制结构如下图所示。

在本例中,为给定的设备设计一个2-DOF控制器:

$ $ G \左(s \右)= {1 \ / {{s ^ 2} + 0.5 s + 0.1}}。$ $

假设系统的目标带宽是1.5 rad/s。

Wc = 1.5;G = tf(1,[1 0.5 0.1]);C2 = pidtune(G,“PID2”wc)
C2 = 1 u = Kp (b*r-y) + Ki—(r-y) + Kd*s (c*r-y) s, Kp = 1.26, Ki = 0.255, Kd = 1.38, b = 0.665, c = 0并联形式的连续时间2自由度PID控制器。

使用类型“PID2”原因pidtune生成2-DOF控制器,表示为pid2对象。显示屏证实了这一结果。pidtune调优所有控制器系数,包括设定值权重b而且c,以平衡性能和健壮性。

要计算闭环响应,请注意2-DOF PID控制器是一个2输入1输出的动态系统。您可以将控制器分解为两个通道,一个用于参考信号,一个用于反馈信号,如图所示。(见连续时间2自由度PID控制器表示以获取更多信息。)

将控制器分解为组件Cr而且Cy,并利用它们来计算的闭环响应ry

C2tf = tf(C2);Cr = C2tf(1);Cy = C2tf(2);T2 = Cr*反馈(G,Cy,+1);

为了检验抗扰性能,计算传递函数从dy

S2 =反馈(G,Cy,+1);

为了进行比较,设计具有相同带宽的1-DOF PID控制器,并计算相应的传递函数。然后比较阶跃响应。

C1 = pidtune(G,“PID”、wc);T1 =反馈(G*C1,1);S1 =反馈(G,C1);subplot(2,1,1) stepplot(T1,T2)标题(“参考跟踪”) subplot(2,1,2) stepplot(S1,S2)“抗干扰”)传说(“1-DOF”二自由度的

图中显示,添加第二个自由度可以消除参考跟踪响应中的超调,而不会对干扰抑制造成任何损失。也可以使用DesignFocus选择。此选项导致pidtune倾向于干扰抑制而不是定点跟踪。

opt = pidtuneOptions(“DesignFocus”“抗干扰”);C2dr = pidtune(G,“PID2”、wc、选择)
C2dr = 1u = Kp (b*r-y) + Ki—(r-y) + Kd*s (c*r-y) s, Kp = 1.72, Ki = 0.593, Kd = 1.25, b = 0, c = 0并联形式的连续时间2自由度PID控制器。

在默认的平衡设计焦点下,pidtune选择一个b取值在0到1之间。对于这种植物,当你改变设计重点以支持干扰抑制时,pidtuneb= 0和c= 0。因此,pidtune自动生成I-PD控制器以优化干扰抑制。(显式指定I-PD控制器而不设置设计焦点会产生类似的控制器。)

比较三种控制器的闭环响应。

C2dr_tf = tf(C2dr);Cdr_r = C2dr_tf(1);Cdr_y = C2dr_tf(2);T2dr = Cdr_r*反馈(G,Cdr_y,+1);S2dr =反馈(G,Cdr_y,+1);subplot(2,1,1) stepplot(T1,T2,T2dr)“参考跟踪”) subplot(2,1,2) stepplot(S1,S2,S2dr);标题(“抗干扰”)传说(“1-DOF”二自由度的“2-DOF排斥焦点”

结果表明,与平衡2自由度控制器相比,该控制器的抗扰能力进一步提高。这种改进是以牺牲一些引用跟踪性能为代价的,略慢一些。然而,引用跟踪响应仍然没有超调。

因此,使用2-DOF控制可以在不牺牲1-DOF控制的参考跟踪性能的情况下提高抗干扰能力。这些对系统性能的影响很大程度上取决于你的装置的特性。对于某些设备和某些控制带宽,使用2-DOF控制或改变设计焦点对调优结果影响较小或没有影响。

另请参阅

|

相关的话题