第3章基于模型的PID和谐振控制器设计 3.1引言 用于PID控制器设计的模型仅限于两种特定类型——一阶模型和二阶模型。如果控制对象的动态模型是高阶模型,通常需要近似得到一阶或二阶模型,以使PID控制器可由基于模型的方法进行设计。 使用基于模型的设计方法时,首先需要一个期望的闭环性能指标。期望性能根据期望闭环极点的位置来选择。期望闭环极点反映闭环系统对给定输入变化和扰动抑制的响应时间; 对于频域则是闭环控制系统的期望带宽。在设计人员设计出合适的闭环性能之前,通常要通过闭环仿真和实验验证对期望闭环性能进行多次调整。 3.2PI控制器设计 采用一阶模型设计PI控制器。虽然一阶动力学(the first oraler dynamics)是形成一个系统的基本单元,它也可以用来描述一些常见的物理系统,如运动控制问题中电动机转矩和角速度之间的动态关系、流体容器内的流速和液位控制问题。 3.2.1期望闭环性能指标 在基于模型的设计中,需要给定一个期望的闭环性能。对于PI控制器,采用二阶传递函数: T(s)=ω2ns2+2ξωns+ω2n(3.1) 这里ωn和ξ是二阶传递函数的自然频率和阻尼系数。作为理想的性能指标,这些是设计人员需要选择的自由参数。 通常取参数ξ为1或0.707。当ξ=1时,期望闭环传递函数式(3.1)的极点是多项式方程式(3.2)的解: s2+2ξωns+ω2n=0(3.2) 此时s1=s2=-ωn。也就是说,当ξ=1时,有两个相同的极点。当ξ=0.707时,极点是由下式确定的一对共轭复数: s1,2=-2ξωn±4ξ2ω2n-4ω2n2=-0.707ωn±j0.707ωn(3.3) 参数ξ确定后(1或0.707),自然频率ωn成为用户根据期望闭环响应需求指定的闭环性能参数。一般来说,ωn越大,期望闭环响应速度越快。参数ωn与闭环响应时间以及闭环系统的频带限制直接相关,这为它的选择提供了指导,对这两方面都要进行考察。 从式(3.1)的阶跃响应仿真(见图3.1)可以看出,响应时间与参数ωn成反比。图3.1(a)表明当阻尼系数ξ=0.707时,阶跃响应时间约为3ωn; 图3.1(b)表明当ξ=1时,阶跃响应时间约为5ωn。ωn还有另一个估算值,可作为设计者的指导,因为参数ωn与期望闭环控制系统的带宽有关。对于式(3.1)给出的期望闭环传递函数,当ξ=0.707时,可以证明在频率ω=ωn时,|T(ω)|=12。因此,当阻尼系数ξ=0.707时,自然频率ωn即为闭环系统的带宽,这可以直接作为闭环性能指标。当取ξ=1时,闭环系统的带宽比ωn稍小。 图3.1闭环传递函数期望的阶跃响应 其中,1线表示ωn=1; 2线表示ωn=10 3.2.2模型和控制器结构 对于一阶模型,假设一阶时间常数τ和稳态增益K已知,传递函数为: G(s)=Kτs+1(3.4) 也可以用零极点形式表示为: G(s)=bs+a(3.5) 其中,a=1/τ,且b=K/τ。 PI控制器传递函数由下式给出,为: C(s)=Kc1+1τIs(3.6) 写成传递函数形式为: C(s)=c1s+c0s(3.7) 式中,Kc=c1,τI=cI/c0。首先根据模型[见式(3.5)]求出系数c1和c0,然后将这些系数转换成标准PI控制器参数Kc和τ1。 求解PI控制器参数的关键是使期望闭环极点与实际闭环极点相等。闭环极点的位置决定了闭环系统是否稳定、闭环响应时间、闭环系统的带宽限制。 最后,利用设计模型[见式(3.5)]和控制器模型[见式(3.7)]计算实际闭环系统传递函数: Tcl=G(s)C(s)1+G(s)C(s)=bs+ac1s+c0s1+bs+ac1s+c0s =b(c1s+c0)s(s+a)+b(c1s+c0) (3.8) 实际系统的闭环极点是关于s的多项式方程的解: s(s+a)+b(c1s+c0)=0(3.9) 式(3.9)称为闭环特性方程。由于模型参数a和b已知,式(3.9)中自由参数是控制器参数c1和c0。为了求解控制器参数c1和c0,使以下多项式相等: s(s+a)+b(c1s+c0)=s2+2ξωns+ω2n(3.10) 由方程[见式(3.10)]的左侧多项式确定实际闭环极点,右侧多项式确定期望闭环极点。使两边多项式相等,则将实际闭环极点配置给期望闭环极点。这种控制器设计技术称为极点配置控制器设计。 现在,比较多项式方程[见式(3.10)]两边的系数: s2:1=1(3.11) s:a+bc1=2ξωn(3.12) s0:bc0=ω2n(3.13) 解式(3.12)得: c1=2ξωn-ab(3.14) 解式(3.13)得: c0=ω2nb(3.15) 由c1、c0与Kc、τI之间的关系[见式(3.7)],求出PI控制器参数为: Kc=c1=2ξωn-ab(3.16) τI=c1c0=2ξωn-aω2n(3.17) 【例3.1】用一阶系统描述直流电动机电压变化与速度之间的动态关系。假设某电机拉普拉斯传递函数模型为: G(s)=0.110s+1(3.18) 求速度控制的PI控制器参数。期望闭环性能指定为两种不同情况: ①快速响应ωn=5,②慢速响应ωn=0.5。这两种情况下,均取ξ=0.707; 比例控制仅作用于输出端。对闭环阶跃响应进行仿真,并比较仿真结果。 解PI控制器设计所需的模型参数为a=1/10=0和b=0.1/10=0.01。利用这些参数和闭环性能指标,基于方程[见式(3.16)和式(3.17)],对ωn=5和ξ=0.707,求出控制器参数为: Kc=697;τI=0.2788 对于ωn=0.5且ξ=0.707,有: Kc=60.7;τI=2.43 可以看出,当ωn较大时,比例增益Kc较大,而积分时间常数τI较小。 用图3.2所示的结果对闭环单位阶跃响应进行仿真。与ωn=0.5的情况相比,当ωn=5时,闭环响应速度更快,控制信号的幅值也更大。 图3.2闭环响应(例3.1) 其中,1线表示ωn=0.5; 2线表示ωn=5 3.2.3不同结构的闭环传递函数 已经设计了PI控制器,现在研究传统PI控制器结构和IP控制器结构的闭环传递函数。 对于传统的PI控制器结构(见图1.5),控制信号的拉氏变换U(s)与反馈误差信号E(s)的关系为: U(s)=C(s)E(s)=c1s+c0sE(s)(3.19) 式中,E(s)=R(s)-Y(s),且C(s)=(c1s+c0)/s。给定输入信号R(s)和输出信号Y(s)之间的闭环传递函数为: Y(s)R(s)=G(s)C(s)1+G(s)C(s)(3.20) 其中,G(s)是一阶传递函数b/(s+a)。将控制器传递函数C(s)和控制对象传递函数G(s)代入式(3.20),得到传统实现时PI控制系统的闭环传递函数: Y(s)R(s)=b(c1s+c0)s(s+a)+b(c1s+c0)(3.21) 注意到式(3.21)的分母用于PI控制器的设计[见式(3.10)],它等于期望闭环特征多项式s2+2ξωns+ω2n。将控制器参数[见式(3.14)和式(3.15)]和期望闭环特性多项式代入式(3.21),得闭环传递函数: Y(s)R(s)=(2ξωn-a)s+ω2ns2+2ξωns+ω2n(3.22) 使用传统PI控制器结构,给定输入信号和输出之间的实际闭环传递函数和设计中指定的期望闭环传递函数[见式(3.8)中T(s)]并不相同; 此时闭环传递函数有一个零点,位置由多项式方程确定: (2ξωn-a)s+ω2n=0(3.23) 即,零点位于s=-ω2n2ξωn-a处。该零点的存在可能引起阶跃响应的超调。取ξ=0.707时,可以验证闭环传递函数式(3.22)的带宽大于ωn。 对于IP控制器结构(见图1.7),控制信号为: U(s)=-KcY(s)+KcτIsE(s) =-c1Y(s)+c0s(R(s)-Y(s)) (3.24) 输出信号Y(s)为: Y(s)=bs+aU(s)(3.25) 将式(3.24)代入式(3.25),得到这种替代结构的闭环传递函数为: Y(s)R(s)=bc0s(s+a)+b(c1s+c0)(3.26) 由设计流程,传递函数的分母为s2+2ξωns+ω2n,分子为bc0=ω2n,因此闭环传递函数为: Y(s)R(s)=ω2ns2+2ξωns+ω2n(3.27) 这就是在性能指标中指定的期望闭环传递函数[见式(3.1)]。 在扰动抑制和测量噪声衰减方面,两种PI控制系统结构具有相同的闭环传递函数,因为两种配置中的结构变化只与给定输入信号引入反馈环的方式有关。这里通过计算输入扰动与控制对象输出之间的闭环传递函数来说明这一点。 假设一个输入扰动的拉氏变换为Di(s),它在控制对象输入的位置进入系统。在这种情况下,控制对象的输出为: Y(s)=bs+a(U(s)+Di(s))(3.28) 为了得到输入扰动与被控对象输出之间的闭环传递函数,设给定信号R(s)=0,以集中精力抑制扰动。当给定信号R(s)=0时,两种结构[见式(3.19)和式(3.24)]的控制信号有相同的拉氏变换: U(s)=-c1Y(s)-c0sY(s)(3.29) 将式(3.29)代入式(3.28),得到输入扰动Di(s)与输出Y(s)之间的闭环传递函数为: Y(s)Di(s)=bss(s+a)+b(c1s+c0)=bss2+2ξωns+ω2n(3.30) 这里使用了设计方程式(3.10)。 注意到闭环传递函数的分子中有一个因子s。该因子保证了闭环控制系统能够无稳态误差抑制阶跃输入扰动。这一点将通过以下例子阐明。 【例3.2】一个连续时间系统由以下微分方程描述: Jdω(t)dt+Bω(t)=kv(t)+TL(t)(3.31) 式中,v(t)和ω(t)为控制和输出信号,TL(t)为未知扰动,J=0.02,B=0.001,k=0.5为物理参数。控制目标是保持系统的期望输出,同时抑制扰动。期望闭环带限的值由ωn=5(rad·s-1)指定,阻尼系数为ξ=0.707。设计PI控制器来实现控制目标,并对这两种PI控制系统结构的闭环响应进行仿真。 解为了得到输入v与输出ω(t)之间的传递函数模型,对动态模型[见式(3.31)]进行拉氏变换: JsΩ(s)+BΩ(s)=kV(s)+TL(s)(3.32) 其中Ω(s)、V(s)和TL(s)是连续时间变量的拉氏变换。 式(3.32)也可以表示为: Ω(s)=kJs+BV(s)+TL(s)Js+B =K/Js+BJV(s)+TL(s)/Js+BJ(3.33) 计算PI控制器参数如下: Kc=2ξωn-ab=0.2808;τI=2ξωn-aω2n=0.2808 其中,a=B/J=0.05,b=k/J=25,ωn=5,ξ=0.707。 利用Simulink对系统的闭环响应进行仿真。在闭环仿真中,给定输入为单位阶跃输入信号,在t=0时刻加入; 输入扰动是幅值为1.5的阶跃输入信号,在t=10时刻加入。图3.3(a)和(b)比较了原始PI控制器结构与IP控制器结构的闭环输出和控制信号。可以看出,IP控制器结构避免了原结构中的超调,两个控制器结构在扰动抑制方面有相同的响应。 图3.3PI控制系统的闭环响应(例3.2) 其中,1线表示IP控制系统; 2线表示PI控制系统 3.2.4进一步思考 (1) 你会采用二阶模型来设计PI控制器吗? (2) 如果发现闭环响应速度太慢,是否可以减小参数ωn? (3) “当闭环系统传递函数为ω2ns2+2ξωns+ω2n,阻尼系数ξ=0.707时,闭环带宽ωb=ωn”,这种说法是否正确? (4) 请列出3个可以用一阶模型描述的物理系统。 (5) 与原来的PI控制器相比,IP控制器结构是否改变了扰动抑制性能? 3.3PID控制器的经典整定规则 二阶模型直接用于PD或PID控制器的设计。另外,一阶延迟模型使用二阶传递函数模型近似,其中无理传递函数 e-ds用有理传递函数-ds+2ds+2近似(这称为一阶Padé近似)。如果数学模型是高阶的,则通过近似得到二阶模型,以便进行PID控制器的设计。 3.3.1PD控制器设计 比例控制和微分控制的结合(PD)对于不稳定系统或系统严重振荡的情况有用。 由于微分作用会放大测量噪声(见第2章),所以PD控制器的实现需要微分滤波器。因此,PD控制器的一般形式如下: C(s)=Kc+Kdsτfs+1(3.34) 其中Kc、Kd、τf分别为比例增益、微分控制增益、滤波器时间常数。 对这类的控制器设计,假设连续时间系统为二阶系统,传递函数为: G(s)=b1s+b0s2+a1s+a0(3.35) 根据二阶模型式(3.35)选择参数Kc、Kd、τf并非一项简单的任务。然而,PD控制器可转换为经典的超前滞后补偿器,形如: C(s)=p1s+p0s+l0(3.36) 其中,参数Kc、Kd、τf与p1、p0、τf相关,关系如下: τf=1l0(3.37) Kc=p0l0(3.38) Kd=p1l0-p0l20(3.39) 式(3.36)中超前滞后补偿器可以通过将期望闭环极点配置在复平面的左半部分来设计。 对于超前滞后补偿器,实际闭环特征多项式为三阶: Acl(s)=(s+l0)s2+a1s+a0+p1s+p0(b1s+b0) =s3+a1+l0+p1b1s2+a0+l0a1+p0b1+b0p1s+l0a0+b0p0 通过选择具有以下形式的三阶期望闭环特征多项式: Adcl(s)=s3+acl2s2+acl1s+acl0 并且使Acl(s)=Adcl(s),得到以下线性方程: a1+l0+p1b1=acl2 a0+l0a1+p0b1+b0p1=acl1 l0a0+b0p0=acl0 参数可以通过求解线性方程组得到: l0 p1 p0=1b10 a1b0b1 a00b0-1acl2-a1 acl1-a0 acl0(3.40) 多项式方程Acl(s)=Adcl(s)称为丢番图方程,它是极点配置控制器设计中求控制器参数的关键步骤。式(3.40)中维数为3×3的矩阵称为Sylvester矩阵,在极点配置控制器设计中要求该矩阵可逆。 下面的教程总结了求解带滤波器的PD控制器参数的计算过程。后文将使用此程序。 教程3.1本教程编写一个简单的MATLAB程序来计算PD控制器参数。期望的闭环特性多项式为: Acl=s3+acl2s2+acl1s+acl0 模型是一个二阶系统,传递函数为: G(s)=b1s+b0s2+a1s+a0 步骤 (1) 为MATLAB函数创建一个名为PDplace.m的新文件。 (2) 定义MATLAB函数的输入和输出变量,其中a1、a0、b1和b0是模型参数,Acl是期望闭环特性多项式。在文件中输入以下程序: function [Kc,Kd,tauf]=PDplace(a1,a0,b1,b0,Acl); (3) 求出闭环性能参数。继续在文件中输入以下程序: ac_2=Acl(2); ac_1=Acl(3); ac_0=Acl(4); (4) 构建以下矩阵和向量求解PD控制器参数,并求解线性方程。继续在文件中输入以下程序: S_matrix=[1 b1 0; a1 b0 b1; a0 0 b0]; Vec=[ac_2-a1;ac_1-a0;ac_0]; contr_p=inv(S_matrix)*Vec; (5) 将参数转换为带微分滤波器的PD控制器。继续在文件中输入以下程序: L0=contr_p(1); p1=contr_p(2); p0=contr_p(3); tauf=1/L0; Kc=p0/L0; Kd=p1/L0-p0/L0^2; (6) 用例3.3中的双积分系统测试该程序,使用以下代码: a1=0; a0=0; b1=0; b0=0.1; Ac=conv([1 1],[1 1]); Acl=conv(Ac,[1 1]); [Kc,Kd,tauf]=PDplace(a1,a0,b1,b0,Acl) 对于许多应用,二阶模型简化为: G(s)=b0s2+a1s+a0(3.41) PD控制器参数的解如下: l0=acl2-a1(3.42) p1=acl1-a0-l0a1b0(3.43) p0=acl0-l0a0b0(3.44) 【例3.3】双积分系统的拉普拉斯传递函数为: G(s)=0.1s2 设计带滤波器的PD控制器,使系统稳定,且所有的期望闭环极点均位于-1。 解由双积分模型,有a1=a0=0,b1=0,b0=0.1。期望的闭环多项式为: (s+1)3=s3+3s2+3s+1 因此,acl2=3,acl1=3,acl0=1。控制器参数由以下方程求解: l0 p1 p0=100 00.10 000.1-13 3 1(3.45) 求得l0=3,p1=30,p0=10。这样,系统的超前滞后补偿器为: C(s)=30s+10s+3 对PD控制器的实现,可由式(3.37)~式(3.39)求出相应的比例、微分增益和滤波器时间常数为: τf=13;Kc=103; Kd=809; τD=KdKc=83 3.3.2存在零极点对消的理想PID分析实例 在设计PID控制器时,零极点对消技术广泛应用于各种领域。主要原因是,采用零极点对消技术使控制器参数计算变得非常简单,仅用一支笔就可以进行计算。然而,零极点对消技术有两个重要的规则。首先,不应对消系统中不稳定的极点或零点,因为对消会导致系统内部不稳定,原因是对消的极点或零点仍然是期望闭环极点的一部分(见2.5节)。其次,不应对消系统中靠近虚轴的稳定极点(对应于大时间常数的慢极点),因为在对扰动输入作用下,闭环响应中慢极点将重新成为主导极点,从而产生慢的扰动抑制(见第2章中的灵敏度分析)。一般情况下,如果稳定极点或零点位于复平面上期望闭环极点的左侧,则可以被对消。也可以说,在控制对象模型中,被对消的是一定是更快的稳定极点。 假设在一个二阶模型中有两个极点,它们都是实极点、稳定极点。基于这些假设,传递函数表示为: G(s)=b0(s+α1)(s+α2)(3.46) 式中,α2>0为正,且α2≥ α1。 假设PID控制器具有理想结构,为: C(s)=Kc1+1τ1s+τDs(3.47) 在实施阶段增加一个实现滤波器,由设计者选择一个较小的β(见1.2节),这意味着设计阶段不需要考虑参数β。在PID控制器的设计中采用一种称为零极点对消的技术,将使控制器参数的求解变得非常简单。 将式(3.47)给出的PID控制器重新写为传递函数形式: C(s)=c2s2+c1s+c0s(3.48) 比较式(3.48)和式(3.47),得到以下关系: Kc=c1;τ1=c1c0;τD=c2c1(3.49) 因此,首先求出式(3.48)中的参数,然后将其转换成实现阶段所需的PID控制器参数。 当使用零极点对消技术时,假设对控制器C(s)的分子进行因式分解,形为: C(s)=c2s2+c1s+c0s=c2(s+γ1)s+γ2s(3.50) 取控制器的零点-γ2等于模型的极点-α2(即γ2=α2),模型中的极点与控制器中的零点对消。这样,G(s)C(s)的关系简化为: G(s)C(s)=b0c2(s+γ1)(s+α1)s(3.51) 给定信号R(s)和输出Y(s)之间的闭环传递函数为: Y(s)R(s)=C(s)G(s)1+C(s)G(s)=b0c2(s+γ1)s(s+α1)+b0c2(s+γ1)(3.52) 注意到式(3.52)中的自由参数分别为c2和γ1,分母为二阶多项式。设计过程与采用极点配置技术设计PI控制器的情况相同。因此,期望闭环特性多项式为: Acl(s)=s2+2ξωns+ω2n(3.53) 对ξ=0.707或ξ=1,且ωn>0,使期望闭环特征多项式与式(3.52)中的分母相等,得到多项式方程,为: s(s+α1)+b0c2(s+γ1)=s2+2ξωns+ω2n(3.54) 比较式(3.54)的两边,得自由参数为: c2=2ξωn-α1b0;γ1=ω2nc2b0(3.55) 利用这些参数和等式γ2=α2,重新整理PID控制器为: C(s)=c2(s+γ1)(s+α2)s(3.56) 由式(3.49),得实际控制器参数为: Kc=c2γ1+c2α2=ω2nb0+2ξωn-α1α2b0(3.57) τ1=c1c0=c2γ1+c2α2c2γ1α2=1α2+2ξωn-α1ω2n(3.58) τD=c2c1=1γ1+α2=2ξωn-α1α22ξωn-α1+ω2n(3.59) 【例3.4】假设动态系统具有二阶传递函数: G(s)=2(10s+1)0.5s+1(3.60) 采用零极点对消的极点配置控制器设计技术,设计一个PID控制器。闭环性能由ξ=0.707和ωn=1指定。对闭环响应进行仿真,观察扰动抑制性能和测量噪声的影响。 解首先,将传递函数模型式(3.60)写成便于获取PID控制器参数的形式: G(s)=0.4(s+0.1)(s+2)(3.61) 该式中,b0=0.4,α1=0.1,α2=2。因此,在零极点对消设计中,将消去s=-2处的极点。由式(3.57)~式(3.59),计算PID控制器参数为: Kc=9.07;τ1=1.814;τD=0.3622 取参数β=0.1。在闭环仿真中,在t=0时刻引入单位阶跃信号作为给定输入信号,在t=10时刻引入振幅为1.5的阶跃信号作为扰动。图3.4(a)为无噪声环境下的闭环响应。为了观察PID控制器在噪声环境中的性能,在闭环仿真中加入方差为0.01的带限白噪声,闭环仿真结果如图3.4(b)所示。与无噪声情况相比,测量噪声引起了控制信号的显著波动。这一观察结果提醒我们,在噪声环境中使用PID控制器时应谨慎。 图3.4PID控制系统的闭环响应(例3.4) 3.3.3带滤波器的PID控制器分析实例 随着系统变得越来越复杂,需要在PID控制器设计中使用微分滤波器,以在控制器参数的求解中提供额外的自由度。这对于消除在实现阶段选择滤波器时间常数而引入近似所产生的影响非常重要,提高了PID控制系统的鲁棒性。 PID控制器传递函数的一般形式为: C(s)=c2s2+c1s+c0s(s+l0)(3.62) 其中,l0为微分滤波器参数。然而,工业控制系统通常按PID控制器参数Kc、τI、τD和滤波器时间常数τf定义。 τf与前面的导数增益τD相关,即τf=βτD。 因此,需要找到PID控制器参数,使式(3.62)定义的控制器C(s)和工业PID控制器之间的结构完全相同。基于此选择PID控制器参数,使得传递函数: C(s)=Kc1+1τ1s+τDsτfs+1(3.63) 与式(3.62)中PID控制器相同。将式(3.63)表示为: C(s)=Kcτ1s(τfs+1)+(τfs+1)+τ1τDs2τ1s(τfs+1)(3.64) 该式应与式(3.62)完全相同。对比两个表达式,得: c2=Kcτ1τD+τIτfτIτf(3.65) c1=Kc(τ1+τf)τ1τf(3.66) c0=KcτIτf(3.67) l0=1τf(3.68) 求解以上4个线性方程,得PID控制器参数: τf=1l0(3.69) τI=c1c0-τf(3.70) Kc=τIτfc0(3.71) τD=c2τf-KcτfKc(3.72) 【例3.5】考虑一阶延迟模型,其中无理传递函数e-ds采用Padé近似: G(s)=Kpe-dsτps+1≈Kp(-ds+2)(τps+1)(ds+2)(3.73) 采用零极点对消法求带滤波器的PID控制器的参数解析解。 解τp>0时,一阶延迟模型是稳定的。传递函数模型式(3.73)也可写成二阶模型的零极点形式: G(s)=b1s+b0(s+α1)(s+α2)(3.74) 式中,b1=-Kpτp,b0=2Kpτpd。 为了得到带滤波器PID控制器的解析解,采用零极点对消技术。若1τp<2d,取α1=1τp,α2=2d; 若1τp>2d,控制对象的时延占主导,则取α1=2d,α2=1τp。 由于在s=2d处,零点不稳定,因此在控制器设计中不能消去该零点,而消去极点-α2,因其动态响应更快。PID控制器结构的传递函数形为: C(s)=c2s2+c1s+c0s(s+l0)(3.75) 这是一种理想的带滤波器PID控制器,滤波器极点-l0将用于设计。假设带滤波器PID的零点位于-γ1和-α2,其中α2对应于模型中的一个极点,则开环传递函数为: L(s)=G(s)C(s)=b1s+b0(s+α1)(s+α2)c2(s+γ1)(s+α2)s(s+l0) =c2(b1s+b0)(s+γ1)s(s+α1)(s+l0)(3.76) 闭环传递函数为: T(s)=L(s)1+L(s)=c2(b1s+b0)(s+γ1)s(s+α1)(s+l0)+c2(b1s+b0)(s+γ1)(3.77) 注意,式(3.77)分母为一个三阶多项式,存在三个未知控制器参数: l0、c2、γ1。因此,期望闭环特性多项式Acl(s)必须为三阶多项式,阶次与式(3.77)的分母匹配。为此,选择期望闭环特性多项式为: Acl(s)=s2+2ξωns+ω2n(s+λ1)(3.78) 式中,λ1>0为正。如前所述,选择阻尼系数ξ=0.707和自然振荡频率ωn来反映闭环响应时间和带宽等设计要求。位于-λ1的额外极点通常选择远离主导极点-ξωn±j1-ξ2ωn(ξ=0.707)的左侧。例如,可以取λ1>10ωn。 闭环特征多项式方程为: s(s+a1)(s+l0)+c2(b1s+b0)(s+γ1)=s2+2ξωns+ω2n(s+λ1)(3.79) 式中,方程左边为闭环特征多项式,右边为期望特征多项式。作为练习,分别对方程两边进行整理: s3+(α1+l0+c2b1)s2+α1l0+c2(b0+b1γ1)s+c2b0γ1 =s3+2ξωn+λ1s2+ω2n+2λ1ξωns+λ1ω2n(3.80) 比较多项式两边系数,得到3个线性方程: s2:α1+l0+c2b1=2ξωn+λ1(3.81) s:α1l0+c2b0+c2b1γ1=ω2n+2λ1ξωn(3.82) s0:c2b0γ1=λ1ω2n(3.83) 基于式(3.83)求解c2γ1为: c2γ1=λ1ω2nb0(3.84) 然后,将c2γ1的值代入式(3.82),即: α1l0+c2b0=ω2n+2λ1ξωn-b1λ1ω2nb0(3.85) 注意到式(3.81)和式(3.85)都包含一对相同的未知变量(α1,c2),因此同时由这两个方程求解两个未知变量。由式(3.81)求出l0的值: l0=-c2b1+2ξωn+λ1-α1(3.86) 将l0代入式(3.85)并整理,求出: c2=-2ξωnα1-λ1α1+α21+ω2n+2λ1ξωn-b1λ1ω2nb0b0-α1b1(3.87) 其中,假设b0- α1b1≠ 0。由式(3.87)求出c2,再由式(3.86)可求出l0。由c2还可求出γ1为: γ1=λ1ω2nb0c2(3.88) 计算出参数c2、γ1、l0,带滤波器的PID控制器重新整理为: C(s)=c2(s+γ1)(s+α2)s(s+l0)(3.89) 式中,α2对应于模型中被消去的极点。 等价地,式(3.89)用更一般的形式表示为: C(s)=c2s2+c1s+c0s(s+l0)(3.90) 式中,c2由式(3.87)计算,c1=c2( γ1+ α2),c0=c2α2γ1。 【例3.6】给定一阶延迟系统,传递函数为: G(s)=10e-5s10s+1(3.91) 利用极点配置设计技术求出PID控制器参数。期望闭环性能由ξ=0.707和λ1=1指定。为了理解对传递函数模型时延的近似导致实际控制对象与设计所用模型之间的误差,对于ωn=0.4和较小的ωn=0.2,分别求PID控制器参数,给定信号为单位阶跃信号进行闭环性能仿真,扰动取幅值为0.2的阶跃信号进行扰动抑制性能仿真。 解用Padé近似法对一阶延迟模型进行近似,有: G(s)≈-s+0.4(s+0.1)(s+0.4)(3.92) 设计时消去时延产生的极点,指定α1和α2的值分别为α1=0.1,α2=0.4。同样由式(3.92),有b1=-1,b0=0.4。 首先取ωn=0.4进行计算。c2的值为: c2=-2ξωnα1-λ1α1+α21+2λ1ξωn-b1λ1ω2nb0b0-α1b1=1.9581(3.93) l0为: l0=-c2b1+2ξωn+λ1-α1=3.4237(3.94) c1=c2(γ1+α2)=1.1832,c0=c2α2γ1=0.16。根据这些参数,由式(3.69)~式(3.72)计算PID控制器参数: Kc=0.332;τI=7.1;τD=1.43;τf=0.292 图3.5(a)为闭环响应。结果表明,控制信号和控制对象输出信号都是振荡的,这是由于时延近似引入的建模误差造成的。为了证明减小闭环系统的期望带宽可以减少振荡,将性能参数ωn从0.4减小到0.2。按照同样的步骤,得到ωn=0.2时PID控制器参数: Kc=0.1793;τI=8.0323;τD=1.3375;τf=0.5581 图3.5(b)为ωn减小后的闭环响应。可以看出,闭环系统的振荡确实消除了。 图3.5PID控制系统的闭环响应(例3.6) 以下例子将说明零极点对消对给定值跟踪和扰动抑制的影响。 【例3.7】在高精度机加工应用中需要对交流电机角位置进行控制。假设交流电机的拉普拉斯传递函数模型为: G(s)=0.05s(10s+1)(3.95) 其中,模型的输入为转矩电流,输出为电机的角位置。采用零极点对消的极点配置设计技术设计带滤波器的PID控制器,所有期望闭环极点均位于-1。验证闭环控制系统的输出将无稳态误差跟踪恒值给定输入,同时研究扰动振幅dm未知时闭环系统动态响应。 解将模型写成零极点形式: G(s)=0.005s(s+0.1)(3.96) 控制器形为: C(s)=c2s2+c1s+c0s(s+l0)(3.97) 由于要消去交流电机模型中的位于-0.1的极点,将控制器参数化为: C(s)=c2(s+γ1)(s+0.1)s(s+l0)(3.98) 这样,得到开环传递函数: Lo(s)=C(s)G(s)=c2(s+γ1)(s+0.1)s(s+l0)0.005s(s+0.1) =0.005c2(s+γ1)s2(s+l0) (3.99) 给定信号R(s)到输出Y(s)的闭环传递函数为: G(s)C(s)1+G(s)C(s)=0.005c2(s+γ1)s2(s+l0)1+0.005c2(s+γ1)s2(s+l0) =0.005c2(s+γ1)s2(s+l0)+0.005c2(s+γ1) (3.100) 式(3.100)的分母是三阶多项式,它是确定闭环极点的实际系统闭环特性多项式,因此闭环极点数为3。当所有闭环极点位于-1时,期望闭环多项式为: Acl(s)=(s+1)3=s3+3s2+3s+1(3.101) 使实际闭环特征多项式与期望特征多项式相等,有: s2(s+l0)+0.005c2(s+γ1)=s3+3s2+3s+1(3.102) 即 s3+l0s2+0.005c2s+0.005c2γ1=s3+3s2+3s+1(3.103) 比较等式两边,有: s2:l0=3(3.104) s:0.005c2=3(3.105) s0:0.005c2γ1=1(3.106) 这些方程给出了PID控制器参数的解,l0=3,c2=600,γ1=13。由这些参数和被消去的极点,得到控制器C(s): C(s)=600s+13(s+0.1)s(s+3)=600s2+260s+20s(s+3)(3.107) 基于C(s)计算出PID控制器参数为: Kc=84.4;τ1=12.7;τD=0.16;τf=0.33 给定信号R(s)和输出信号Y(s)之间的传递函数为: Y(s)R(s)=C(s)G(s)1+C(s)G(s)(3.108) 由于零极点对消,闭环传递函数为: Y(s)R(s)=0.005c2(s+γ1)s2(s+l0)+0.005c2(s+γ1)=3s+1(s+1)3(3.109) 这里用了丢番图方程(Diophantine Equation)即式(3.102)。 设给定信号为阶跃信号,拉氏变换为1s,则输出为: Y(s)=3s+1(s+1)31s(3.110) 应用终值定理,计算出输出的终值为: limt→∞y(t)=lims→0sY(s)=lims→03s+1(s+1)3=1(3.111) 因此,闭环控制系统的输出将无稳态误差跟踪阶跃给定信号,且所有闭环极点均按设计要求位于-1。 图3.6为三个不同控制器结构在给定信号下的响应。因为控制器C(s)包含一个滤波器,其分母的阶次等于分子的阶次,并且可以直接在前馈通路实现,即U(s)=C(s)(R(s)-Y(s))。输出如图3.6中的线1所示,可以看出,输出响应中存在较大超调。比例和微分项均仅作用于输出。闭环系统输出响应如线2所示,这种实现没有超调,但响应速度比第一种方法慢。如果仅微分项作用于输出,闭环响应如线3所示,这种情况超调量较小,闭环响应速度比线2快。 图3.6PID控制系统的给定值响应(例3.7) 其中,1线表示直接使用C(s)实现; 2线表示比例项和微分项都作用于输出的PID控制器; 3线表示仅微分项作用于输出的PID控制器 为了研究输出响应对扰动输入的动态特性,将输入扰动Di(s)与输出Y(s)之间的闭环传递函数写为: Y(s)Di(s)=G(s)1+G(s)C(s)=0.005s(s+0.1)1+0.005c2(s+γ1)s2(s+l0)(3.112) 将c2、γ1、l0的值以及丢番图方程代入式(3.112),有: Y(s)Di(s)=0.005s(s+3)(s+1)3(s+0.1)(3.113) 式(3.113)的分母说明闭环传递函数有四个极点: 其中三个位于期望位置-1,另一个位于-0.1,这是设计中要消去的控制对象极点。由于扰动作用下控制对象的极点会重新出现,影响闭环系统响应,并且控制对象的极点为设计中选择的期望闭环极点的十分之一,这不好; 因为这意味着,尽管跟踪给定值的动态响应达到了闭环性能的设计要求,但实际的闭环扰动抑制响应速度远低于设计的闭环性能。 图3.7扰动抑制(例3.7)所有控制器 结构产生相同的扰动响应 在稳态下,利用终值定理,可以验证: limt→∞y(t)=lims→0s0.005s(s+3)(s+1)3(s+0.1)dMs=0(3.114) 因此,PID控制器可以无稳态误差完全抑制扰动。图3.7显示了对未知振幅输入扰动的动态响应。扰动发生在50s,可以看出,对扰动的闭环响应非常慢,大约需要50s才能使输出响应恢复到此时的稳态值0。 对扰动抑制来说,当控制对象为欠阻尼时,由于设计中消去的控制对象极点会重新出现在闭环系统中,因此要避免采用零极点对消技术。 3.3.4无零极点对消的PID控制器设计 假设PID控制器为: C(s)=c2s2+c1s+c0s(s+l0)(3.115) 二阶模型为: G(s)=b1s+b0s2+a1s+a0(3.116) 如果没有零极点对消,开环传递函数为: L(s)=C(s)G(s)=c2s2+c1s+c0s(s+l0)b1s+b0s2+a1s+a0(3.117) 闭环传递函数为: T(s)=L(s)1+L(s) =c2s2+c1s+c0(b1s+b0)s(s+l0)s2+a1s+a0+c2s2+c1s+c0(b1s+b0) (3.118) 注意到,闭环传递函数的分母是一个四阶多项式,在设计中要确定四个未知控制器参数。因此,期望闭环特征多项式Acl(s) 为四阶多项式,零点全部位于复平面左半部分。例如,设Acl(s)形为: Acl(s)=s2+2ξωns+ω2n(s+λ1)2(3.119) 其中,主导极点为-ξωn±j1-ξ2ωn,(ξ=0.707或1),λ1≥ωn>0。为简单起见,将期望闭环特性多项式Acl(s)表示为s4+t3s3+t2s2+t1s+t0。为了将闭环极点配置到期望位置,求解丢番图方程: s(s+l0)(s2+a1s+a0)+(c2s2+c1s+c0)(b1s+b0) =s4+t3s3+t2s2+t1s+t0 (3.120) 通过分解合并,求出等式(3.120)左边的表达式,使其与等式右边相等: s4+(b1c2+a1+l0)s3+(b1c1+b0c2+a0+a1l0)s2+ (b1c0+b0c1+l0a0)s+b0c0 =s4+t3s3+t2s2+t1s+t0 (3.121) 比较式(3.121)的两边,得到一组线性方程: s3:b1c2+a1+l0=t3(3.122) s2:b1c1+b0c2+a0+a1l0=t2(3.123) s:b1c0+b0c1+l0a0=t1(3.124) s0:b0c0=t0(3.125) 为便于求解,将线性方程组以矩阵向量的形式表示为: 1b100 a1b0b10 a00b0b1 000b0Syl0 c2 c1 c0=t3-a1 t2-a0 t1 t0(3.126) 这里设方阵Sy(称为Sylvester矩阵)可逆。 【例3.8】实验室倒立摆试验台中,小车上倒立摆所受外力为输入f(t),输出为角位置θ(t),描述该试验台动态模型的拉普拉斯传递函数为: G(s)=-0.1(s-1)(s+1)(3.127) 为试验台设计一个PID控制器,其中闭环性能由ξ=0.707和ωn=λ1=10指定。对两种情况下PID控制器的闭环阶跃响应进行仿真: ①微分项作用于输出端,比例项和积分项作用于误差信号; ②微分项和比例项作用于输出端,而积分项作用于误差信号。 解本例中,b1=0,b0=-0.1,a1=0,a0=-1。由式(3.126)知,基于极点配置控制器设计技术的线性方程组为: 1000 0-0.100 -10-0.10 000-0.1l0 c2 c1 c0=34 484 3414 10000(3.128) 求解线性方程组得出使用极点配置技术设计的控制器: l0=34.14,c2=-4834,c1=-34481,c0=-100000,将这些参数转换成PID控制器参数: τf=1l0=0.0293(3.129) τI=c1c0-τf=0.3155(3.130) Kc=τIτfc0=-904.2028(3.131) τD=c2τIτf-KcτIτfKcτI=0.1240(3.132) 注意比例增益Kc符号为负,而不是通常情况下的正。这是因为有一个极点位于复平面右半部分,系统不稳定,比例控制器增益Kc不遵循由稳定系统建立的规则。 对两种结构的闭环阶跃响应进行仿真。输入信号为单位阶跃,在t=0时刻加入,如图3.8所示为控制信号和输出信号。与原PID控制器结构相比,比例项仅作用于输出的IPD控制器结构显著降低了超调。 图3.8闭环响应(例3.8) 其中,1线表示IPD控制器结构; 2线表示原始PID控制器结构 3.3.5求解带滤波器PID控制器的MATLAB教程 教程3.2本教程编写一个简单的MATLAB程序来计算PID控制器参数。设期望闭环特性多项式为: Acl=s4+ac3s3+ac2s2+ac1s+ac0 模型为二阶系统,传递函数为: G(s)=b1s+b0s2+a1s+a0 步骤 (1) 为MATLAB函数创建一个名为PIDplace.m的新文件。 (2) 定义MATLAB函数的输入和输出变量,其中a1、a0、b1和b0是模型参数且Acl是期望闭环特性多项式。在文件中输入以下程序: function [Kc,tauI,tauD,tauf]=PIDplace(a1,a0,b1,b0,Acl); (3) 找出闭环性能参数。继续在文件中输入以下程序: ac_3=Acl(2); ac_2=Acl(3); ac_1=Acl(4); ac_0=Acl(5); (4) 构成以下矩阵和向量,用于求解PID控制器参数和线性方程。继续在文件中输入以下程序: S_matrix=[1 b1 0 0; a1 b0 b1 0; a0 0 b0 b1; 0 0 0 b0]; Vec=[ac_3-a1;ac_2-a0;ac_1;ac_0]; contr_p=inv(S_matrix)*Vec; (5) 将参数转换为带微分滤波器的PID控制器。继续在文件中输入以下程序: L0=contr_p(1); c2=contr_p(2); c1=contr_p(3); c0=contr_p(4); tauf=1/L0; tauI=c1/c0-tauf; Kc=tauI*tauf*c0; tauD=(c2*tauI*tauf-Kc*tauI*tauf)/(Kc*tauI); (6) 用例3.8中给出的倒立摆系统测试该程序,代码如下: b1=0; b0=-0.1; a1=0; a0=-1; Ac1=[1 0.707*20 100]; Ac2=[1 20 100]; Acl=conv(Ac1,Ac2); [Kc,tauI,tauD,tauf]=PIDplace(a1,a0,b1,b0,Acl) 3.3.6进一步思考 (1) 你会为一阶系统设计PD或PID控制器吗? (2) 如果系统有一个极点位于复平面的右半部分(不稳定极点),可以选择控制器零点对消这个不稳定的极点吗? (3) 在设计中被消去的开环极点会重新出现在扰动输入作用下的输出响应中——这种说法正确吗? (4) 在设计中被消去的开环极点会重新出现在对输出扰动的输出响应中——这种说法正确吗? (5) 在设计中被消去的开环极点会重新出现在给定信号作用下的输出响应中——这种说法正确吗? (6) 当使用极点配置控制器设计技术时,如何处理时延? (7) 一般极点配置控制器设计(无零极点对消),得到控制器参数唯一解的条件是什么? 3.4谐振控制器设计 不同于PI或PID控制器,谐振控制器分母中包含因式s2+ω20。在嵌入模式下,闭环反馈控制系统被设计成稳定的,控制系统的稳态输出将完全跟踪正弦信号和/或抑制包含频率ω0的正弦扰动信号,稳态误差为0(见2.5.3节)。 3.4.1谐振控制器设计 考虑一阶传递函数,用于描述交流电机的动态模型,形为: G(s)=bs+a=B(s)A(s)(3.133) 其中,输入是转矩电流,输出是速度。任务为设计控制器C(s),以抑制频率为ω0rad-1的正弦波扰动。这里将使用极点配置控制器设计技术。 对于一阶系统,控制器结构选择如下: C(s)=c2s2+c1s+c0s2+ω20=P(s)L(s)(3.134) 这里,控制器的分母是二阶(s2),分子也选为二阶,以允许比例控制作用。这种情况要确定3个未知系数c2、c1、c0。实际闭环特性多项式为: L(s)A(s)+P(s)B(s)=(s2+ω20)(s+a)+bc2s2+c1s+c0(3.135) 这是一个三阶多项式。因此,期望闭环特性多项式应该是三阶的,相应地,期望闭环极点数目应该是3个。例如,可以假设期望闭环特征多项式Acl(s)形为(ξ,ωn,λ1>0): Acl(s)=s2+2ξωns+ω2n(s+λ1)(3.136) 其中,主极点为-ξωn±j1-ξ2ωn(ξ=1或0.707),λ1≥ωn>0。为简单起见,将期望的闭环特性多项式Acl(s)表示为s3+t2s2+t1s+t0。 采用极点配置控制器设计技术,使实际的闭环特性多项式等于期望闭环特性多项式,有: L(s)A(s)+P(s)B(s)=Acl(s)(3.137) 式(3.137) 称为丢番图方程。将L(s)、A(s)、P(s)、B(s)、Acl(s)的表达式代入式(3.137),丢番图方程为: s3+a+bc2s2+ω20+bc1s+aω20+bc0=s3+t2s2+t1s+t0(3.138) 使方程两边相等,得到以下线性方程: s2:a+bc2=t2(3.139) s:ω20+bc1=t1(3.140) s0:aω20+bc0=t0(3.141) 求解这些线性方程,得控制器的系数为: c2=t2-ab(3.142) c1=t1-ω20b(3.143) c0=t0-aω20b(3.144) 3.4.2稳态误差分析 为了证明闭环控制系统的输出将跟踪频率为ω0的正弦信号,计算给定正弦信号R(s)下的闭环反馈误差信号E(s)=R(s)-Y(s)。这里,控制信号为: U(s)=c2s2+c1s+c0s2+ω20E(s)(3.145) 输出信号为: Y(s)=bs+aU(s)=bs+ac2s2+c1s+c0s2+ω20E(s)(3.146) 将Y(s)=R(s)-E(s)代入式(3.146),得: 1+bs+ac2s2+c1s+c0s2+ω20E(s)=R(s)(3.147) 给定信号R(s)和输出信号Y(s)之间的关系为: E(s)=(s+a)(s2+ω20)(s2+ω20)(s+a)+bc2s2+c1s+c0R(s) =(s+a)(s2+ω20)s2+2ξωns+ω2n(s+λ1)R(s) (3.148) 这里使用了丢番图方程即式(3.137)。当给定信号r(t)=Rmsin(ω0t)时,其拉氏变换为R(s)=Rmω0s2+ω20。由式(3.148)得到反馈误差信号的拉氏变换为: E(s)=(s+a)(s2+ω20)s2+2ξωns+ω2n(s+λ1)Rmω20s2+ω20 =(s+a)Rmω0s2+2ξωns+ω2n(s+λ1) (3.149) 这里已经消去了因式(s2+ω20)。由于式(3.149)的分母包含的所有零点均位于复平面左半部分,应用终值定理,得: limt→∞e(t)=lims→0s(s+a)Rmω0s2+2ξωns+ω2n(s+λ1)=0(3.150) 由于e(t)=r(t)-y(t)且limt→∞e(t)=0,因而得出结论: 输出y(t)将收敛于给定信号r(t)。 为了证明闭环控制系统能完全抑制正弦扰动,求出输入扰动与输出之间的关系。这里,输入扰动Di(s)与输出Y(s)之间的传递函数为: Y(s)Di(s)=G(s)1+G(s)C(s)=(s2+ω20)b(s2+ω20)(s+a)+bc2s2+c1s+c0 =b(s2+ω20)s2+2ξωns+ω2n(s+λ1) (3.151) 假设扰动信号是一个幅值dm未知的正弦信号di(t)=dmsin(ω0t),拉氏变换为Di(s)=dmω0s2+ω20。那么输入扰动Di(s)作用下的输出响应为: Y(s)=b(s2+ω20)s2+2ξωns+ω2n(s+λ1)Di(s) =b(s2+ω20)s2+2ξωns+ω2n(s+λ1)dmω0s2+ω20 =bdmω0s2+2ξωns+ω2n(s+λ1) (3.152) 当参数λ1>0,ξ=0.707或1,ωn>0时,分母的零点均位于复平面的左半部分,应用终值定理,得: limt→∞y(t)=lims→0sY(s)=lims→0sbdmω0s2+2ξωns+ω2n(s+λ1)=0(3.153) 因此,输入扰动di(t)作用下输出响应y(t)的稳态值为零。这意味着闭环反馈控制系统将完全抑制输入扰动di(t)。 【例3.9】对于参数a=0.01,b=0.05的交流电机,如果扰动频率为ω0=0.1,并且所有3个期望闭环极点均取-0.1,为该交流电机设计反馈控制器使得闭环控制信号抑制正弦扰动信号。 解期望的闭环特性多项式为: Acl(s)=(s+0.1)3=s3+0.3s2+0.03s+0.001(3.154) 图3.9谐振控制的闭环响应(例3.9) 这里,t2=0.3,t1=0.03,t0=0.001。由式(3.138),求出控制器参数为: c2=t2-ab=0.3-0.010.05=5.8(3.155) c1=t1-ω20b=0.03-0.010.05=0.4(3.156) c0=t0-aω20b=0.001-0.0120.05=0.018(3.157) 首先,运行于稳态值0.3,对闭环扰动抑制性能进行仿真。在t=0时刻加入扰动信号din(t)=2sin(0.1t)。图3.9(a)为扰动信号作用下的输出响应。可以看出,扰动被完全抑制,输出回到给定信号。同一控制系统还将跟踪正弦给定信号,如图3.9(b)所示,输出跟踪正弦信号r(t)=sin(0.1t)。因此,所设计的抑制正弦扰动的控制系统将自动跟踪同一频率的正弦信号。 3.4.3谐振控制器设计中的零极点对消 【例3.10】某电路具有二阶传递函数: G(s)=1(s+1)(s+6)(3.158) 该系统存在频率ω0=1的正弦扰动,设计一个谐振控制器,使稳态下完全抑制扰动,所有期望闭环极点均位于-3。 解设计中使用零极点对消技术,由于闭环极点-3位于系统快极点-6的右侧,极点-6的消除不会显著改变输入扰动的响应速度。但是,由于控制器的确切阶次未知,将采用尽可能低的阶次开始设计,看能否求出控制器参数的唯一解。 最简单的谐振控制器结构为: C(s)=c2s2+c1s+c0s2+ω20(3.159) 之所以选择这种结构,是为了抑制正弦扰动,控制器的分母应包含因式s2+ω20,分子的阶次是为了与分母的阶次匹配。 为了实现零极点对消,重写控制器为: C(s)=c2(s+γ1)(s+6)s2+ω20(3.160) 含控制对象和控制器的开环传递函数为: Lo(s)=G(s)C(s)=1(s+1)(s+6)c2(s+γ1)(s+6)s2+ω20(3.161) 给定信号R(s)和输出Y(s)之间的闭环传递函数为: Y(s)R(s)=G(s)C(s)1+G(s)C(s)=c2(s+γ1)c2(s+γ1)+(s+1)(s2+ω20)(3.162) 由式(3.162)可以看出,闭环传递函数的分母是三阶多项式,因此在系统中有3个闭环极点。仔细看式(3.162),只有两个未知控制器系数c2和γ1。研究丢番图方程: c2(s+γ1)+(s+1)(s2+ω20)=s3+t2s2+t1s+t0(3.163) 这里方程右边为期望闭环多项式,要将实际闭环极点与期望闭环极点匹配,可列出3个线性方程。这样,由3个线性方程组确定两个未知控制器系数c2和γ1,没有唯一解。这说明控制器结构对系统来说过于简单。 为了增加控制器的复杂性,选择: C(s)=c3s3+c2s2+c1s+c0(s2+ω20)(s+l0)(3.164) 其中分母和分子阶次相同,均为3,以实施比例控制。考虑零极点对消,将控制器结构重写为: C(s)=c3s2+γ1s+γ0(s+6)(s2+ω20)(s+l0)(3.165) 开环传递函数为: L0(s)=G(s)C(s)=1(s+1)(s+6)c3s2+γ1s+γ0(s+6)(s2+ω20)(s+l0)(3.166) 当因子s+6被消去时,闭环传递函数为: Y(s)R(s)=c3s2+γ1s+γ0c3s2+γ1s+γ0+(s+1)(s2+ω20)(s+l0)(3.167) 由式(3.167)可知,闭环特性多项式为四阶,有四个闭环极点,并且有四个独立的未知控制器参数——c3、γ1、γ0、l0。根据设计要求,所有闭环极点均位于-3,因此期望的闭环特性多项式为(s+3)4。得到丢番图方程为: c3s2+c3γ1s+c3γ0+(s+1)(s2+ω20)(s+l0)=(s+3)4(3.168) 即 s4+(1+l0)s3+ω20+l0+c3s2+ω20+l0ω20+c3γ1s+l0ω20+c3γ0 =s4+12s3+54s2+108s+81 (3.169) 比较式(3.169)的两边,得线性方程: s3:1+l0=12(3.170) s2: ω20+l0+c3=54(3.171) s: ω20+l0ω20+c3γ1=108(3.172) s0:l0ω20+c3γ0=81(3.173) 求解线性方程,得控制器参数的值: l0=11,c3=54-ω20-l0=42,γ1=108-ω20-l0ω20/c3=2.2857,γ0=81-l0ω20/c3=1.667。利用这些参数将谐振控制器重新写为: C(s)=c3s2+γ1s+γ0(s+6)(s2+ω20)(s+l0) =42s3+348s2+657s+486s3+11s2+s+11(3.174) 系统运行于稳态值1时,对输入扰动di(t)=2sin(t)的闭环输出响应进行仿真,扰动在t=0时刻加入系统。图3.10为扰动输入下的输出响应。可以看出,闭环系统完全抑制正弦扰动需要约3s。 图3.10正弦输入扰动抑制(例3.10) 对于谐振控制器,2.5.3节已经说明,在频率ω=ω0时,要求补灵敏度函数满足T(ω)=1。这表明闭环谐振控制系统的带宽至少要大于ω0。根据第2章的分析,如果ω0较大,意味着一般而言,谐振控制系统需要更精确的数学模型以实现鲁棒性,需要更好的传感器使噪声衰减。 3.4.4进一步思考 (1) 已知周期给定信号的频率为50Hz,在谐振控制器的设计中,要无稳态误差跟踪给定信号,如何取频率参数ω0? (2) 如果一个谐振控制器被设计成无稳态误差跟踪频率为ω0的正弦信号,那么相同的谐振控制器能否抑制频率为ω0的周期性输入扰动信号? (3) 如果已知正弦给定信号的频率为ω0,扰动的频率为3ω0,那么选择谐振控制器的分母包含因式(s2+ω20)(s2+9ω20)是否正确? (4) 如果给定信号是频率为ω0的正弦信号加上一个常数,如何选择谐振控制器分母的关键因式,使得闭环控制系统跟踪给定信号? 3.5前馈控制 前馈控制与PID(或谐振控制器)的结合得到广泛应用。前馈补偿的基础是直接测量或估计前馈变量,其效果由控制信号减去前馈量的影响来体现。前馈有多种形式,但基本思想相同。 3.5.1前馈控制的基本思想 假设动态系统输出的拉氏变换为: Y(s)=G(s)U(s)+Gd(s)Do(s)(3.175) 式中,U(s)为控制信号的拉氏变换,Do(s)为扰动信号,可测量并用于前馈补偿。为了引入前馈补偿,将式(3.175)重写为: Y(s)=G(s)U(s)+Gd(s)G(s)Do(s)=G(s)U~(s)(3.176) 其中的中间控制信号U~(s)定义为: U~(s)=U(s)+Gd(s)G(s)Do(s) 在式(3.176)的基础上,利用传递函数G(s)设计一个PID控制器C(s),得到中间控制信号U~(s),从中减去扰动Do(s)的影响。通过该过程可精确地得到实际控制信号U(s),为: U(s)= U~(s)-Gd(s)G(s)Do(s) =C(s)(R(s)-Y(s))-Gd(s)G(s)Do(s)(3.177) 显然,前提是传递函数Gd(s)G(s)稳定、可实现,且Do(s)可测量。图3.11给出了反馈和前馈控制系统。作为例子,假设G(s)和Gd(s)由以下一阶延迟传递函数表示: G(s)=0.5e-5s2s+1;Gd(s)=0.1e-10s6s+1 图3.11反馈和前馈控制系统框图 那么控制信号U(s)为: U(s)=C(s)(R(s)-Y(s))-0.2(2s+1)e-5s6s+1Do(s) 由于扰动模型的时延大于控制对象模型的时延,传递函数Gd(s)G(s)可实现,因此可以对其进行前馈补偿。 3.5.2三弹簧双质块系统 为了说明如何将前馈控制器与PID控制器结合,研究三弹簧双质块系统的PID控制系统设计。 图3.12为一个三弹簧双质块系统Tongue(2002)。图中,两个质块的质量为M1和M2,左右弹簧的弹性系数为α1,中间弹簧的弹性系数为α2。输入变量为施加的两个力u1和u2,输出变量为质块1的位移y1和质块2的位移y2。 图3.12三弹簧双质块系统 考虑简化弹簧力f1,f1=α1d1,d1是质块的位移,并将牛顿第二定律 F=Ma,其中F是总力,M是质量,a是加速度。应用于第一个质块,得到以下方程: u1(t)-α1y1(t)-α2y1(t)-y2(t)=M1d2y1(t)dt2(3.178) 其中第一项表示第一个外力,第二项和第三项分别表示弹簧1和弹簧2产生的力。式(3.178)的右边是质块1的质量和加速度的乘积。同样地,将牛顿定律应用于第二个质块,得到: u2(t)-α1y2(t)+α2y1(t)-y2(t)=M2d2y2(t)dt2(3.179) 其中,第一项表示第二个外力,第二项和第三项是弹簧3和弹簧2产生的力。式(3.179)的右边是质块2的质量和加速度的乘积。 为了清楚展示系统动态模型,将式(3.178)和式(3.179)重写为: d2y1(t)dt2=-α1+α2M1y1(t)+α2M1y2(t)+u1(t)M1(3.180) d2y2(t)dt2=-α1+α2M2y2(t)+α2M2y1(t)+u2(t)M2(3.181) 对于三弹簧双质块系统,存在两个二阶系统,而且,两个系统还存在相互作用。 Tongue(2002)物理参数为M1=2kg,M2=4kg,α1=40Nm-1,α2=100Nm-1。作为练习,参数改为α1=200Nm-1。 【例3.11】本例假设第二个质块不受控制,来自第二个质块的力对第一个质块的闭环控制起扰动作用。求出未控制系统的自然振荡频率,并在设计PID控制器时,选择所有闭环极点与自然振荡频率相关。 解微分方程式(3.180) 和式(3.181) 的拉氏变换如下: Y1(s)=1/M1s2+α1+α2M1α2Y2(s)+U1(s)(3.182) Y2(s)=1/M2s2+α1+α2M2α2Y1(s)+U2(s)(3.183) 这里假设变量y1(t)和y2(t)的初始条件为零。利用这两个传递函数模型,可由传递函数模块建立三弹簧双质块系统的Simulink仿真模型。 为了求第一个质块的自然振荡频率,考虑式(3.182),其中Laplace变换Y2(s)是外部扰动。因此,开环系统在虚轴上有一对极点,为以下多项式方程的解: s2+α1+α2M1=0 即 s1,2=±jα1+α2M1=±j40+1002=±j8.3667 则自然振荡频率为8.3667Nm-1kg-1。 1. 带滤波器的PID控制器 利用MATLAB程序PIDplace.m(见3.3.5节的教程3.2),基于传递函数模型式(3.182)设计带滤波器的PID控制器。α2Y2(s)视为扰动,极点配置PID控制器设计中采用两对复极点。阻尼系数ξ=0.707,参数ωn用作性能调节参数。由于两个输出之间相互作用,第一个质块的闭环动态更加复杂。因此,要使闭环系统稳定存在一个最小的ωn。仿真研究表明,ωn的最小值约为原系统自然振荡频率的5倍。这类似于控制不稳定系统,要使反馈系统具有鲁棒性,存在一个最小的控制器增益。 分别取ωn=6×8.3667=50.2,ξ=0.707,得到两对复极点,由程序PIDplace.m计算PID控制器参数如下: Kc=4269.8;τI=0.0477;τD=0.0260;τf=0.0070 2. 闭环仿真研究 在第一个仿真中,假设当t>0时u2(t)=0。由于第二个质块与第一个质块相连,所以输出y2(t)不为零。取采样间隔Δt=0.0001s,在闭环控制中加入振幅为0.1的阶跃给定信号。将第一个质块从原点移动0.1m的控制信号如图3.13(a),图3.13(b)为输出信号。由图3.13(a)可以清楚地看出,第二个质块产生正弦扰动,反馈控制信号试图对其进行补偿,正弦扰动的影响并不明显。 图3.13u2=0时三弹簧双质块系统的闭环响应(例3.11) 图3.14u2=-120时三弹簧双质块系统的闭环响应(例3.11) 现在给出另一个仿真场景。假设有一个恒定的负力作用在第二个质块上,u2(t)=-120,而控制信号u1(t)被限制为正值[u1(t)≥0]。图3.14为u2=-120的三弹簧双质量系统的闭环响应。控制信号[见图 3.14(a)]仍试图减少扰动的影响,但由于其振幅较大,可从输出响应中看出扰动的影响[见图 3.14(b)]。 【例3.12】为了克服第2个质块产生的正弦扰动,将扰动前馈控制与PID反馈控制相结合,并对闭环控制性能进行仿真,假设测量输出y2(t)。 解为了与PID控制器一起设计前馈,考虑第一个质块的动态物理方程即式(3.180): d2y1(t)dt2=-α1+α2M1y1(t)+1M1α2y2(t)+u1(t) =-α1+α2M1y1(t)+1M1u~1(t) (3.184) 这里定义了一个中间控制变量: u~1(t)=α2y2(t)+u1(t) 现在,保持例3.11中的PID控制器不变,并用于计算中间控制信号u~1(t)。则前馈控制为: u1(t)=u~1(t)-α2y2(t)(3.185) 在u2=-120的情况下,对具有扰动前馈补偿的PID控制器进行评估。图3.15(a)为闭环控制信号,从中可以看出,控制信号获取了第2个质块引起的振荡。更重要的是,由于控制信号的特性,与图3.14(b)相比,输出y1(t)不再存在周期性振荡,这意味着周期性扰动被完全消除。 图3.15三弹簧双质量系统的扰动前馈控制闭环响应,u2=-120(例3.12) 使用前馈补偿时需要谨慎,前馈补偿的有效性取决于用于补偿的模型精度,这种对模型的依赖比使用反馈控制策略的情况更严重。这里,参数α2起着重要作用。为了说明这一点,考虑以下3种情况: u1(t)=u~1(t)-0.5α2y2(t)(a) u~1(t)-1.5α2y2(t)(b) u~1(t)+0.5α2y2(t)(c) (3.186) 图3.16比较了3种前馈补偿的输出响应。可以清楚地看到,周期扰动不再能完全补偿,稳态响应也彼此不同; 当补偿符号错误时,情况更糟。 图3.16使用不同前馈补偿时,闭环输出响应的比较(例3.12) 其中,1线表示前馈使用式(3.186(a)); 2线表示前馈使用式(3.186(b)); 3线表示前馈使用(3.186(c)) 3.5.3进一步思考 (1) 在前馈控制中,如果前馈变量有界,如三弹簧双质块系统,前馈控制会引起闭环不稳定吗? (2) 在使用前馈补偿的大多数应用中,如三弹簧双质块系统所示,前馈变量被捕获为控制信号的一部分,可以方便地将其减去。是否可以将前馈补偿的思想扩展到给定信号? (3) 使用前馈控制的主要优点是什么? (4) 使用前馈控制有什么缺点? 3.6小结 本章讨论了PID和谐振控制器的控制系统设计方法,该方法是使用最广泛的方法之一。极点配置控制器设计的核心思想是通过闭环极点的位置来指定期望闭环性能,通过寻找多项式方程的解使期望闭环极点和实际闭环极点相匹配。这些方法概念和计算都很简单,并且设计方法可以扩展到各种控制器结构和模型。其他重要内容总结如下。  对一阶模型,可以设计P控制器、PI控制器或谐振控制器。  对二阶模型,可以设计PD控制器、PID控制器或带有一阶滤波器的谐振控制器。  对高阶模型,需要选择控制器的结构,以唯一确定控制器参数。  可以使用零极点对消技术获得简单的解析解,但只能消去对应于快速动态响应的极点。对输入扰动的响应,闭环系统被消的极点会重新出现,因而在设计中不能消去不稳定的极点或零点。  对高阶系统,模型降阶为一阶或二阶模型以进行PID控制器设计。  选择期望闭环极点的位置,并对其进行调整,以满足闭环系统给定值跟踪、扰动抑制、噪声衰减、鲁棒性的闭环响应速度要求。可根据第2章介绍的奈奎斯特图和灵敏度分析对其进行调整。 3.7进一步阅读 (1) Morari和Zafiriou(1989)书中介绍了内模控制。 (2) Goodwin等(2000)、Cominos和Munro(2002)介绍了极点配置PID控制器的设计以及其他几种设计方法。 (3) Soh等(1987)、Nurges(2006)、Wang等(2009)提出了鲁棒极点配置控制器的设计方法。 (4) Langer和Landau(1999)提出了结合灵敏度整形的极点配置方法。 (5) Wellstead等(1979)提出的极点配置自整定控制是自整定控制器之一。 (6) Zitek等(2013)介绍了考虑和分析主导极点的极点配置PID控制器设计。 (7) 通过对时延近似和指定期望的闭环时间常数,采用直接综合法对扰动抑制设计PI和PID控制器[Chen和Seborg(2002)]。 (8) 提出一种简单的继电器非线性PD控制器,用于控制带摩擦的高精度运动系统[Zheng等(2018)]。 (9) 在同步参考系(dq参考系)中,由于给定信号恒定,交流传动和功率变换器中的电流控制通常使用PI控制器结构[Wang等(2015)]。如果采用静止参考系,由于给定信号是正弦的,则交流传动和功率变换器的电流控制采用谐振控制器[Wang等(2015)]。 问题 3.1设系统传递函数为G(s)=bs+a,试设计PI控制器,其中参数a和b如下所示: (1) a=0.1,b=3; (2) a=10,b=-0.1; (3) a=-3,b=1。 在设计中,期望的闭环特性多项式取s2+2ξωns+ω2n,ξ=0.707,取自然振荡频率参数ωn为|a|、5|a|、10 |a|。比较3种带宽选择的比例控制器增益Kc和积分时间常数τ1。你的观察结果是什么? 3.2 基于二阶模型设计PD控制器,模型为: G(s)=b1s+b0s2+a1s+a0 (1) 为以下系统求解带微分滤波器的PD控制器。 ① b1=0,b0=3,a1=0,a0=4。 ② b1=-1,b0=1,a1=0.2,a0=1。 ③ b1=0.1,b0=-1,a1=1,a0=0。 这里,所有期望的闭环多项式选为s2+2ξωns+ω2ns+2ωn,其中ξ=0.707,ωn=2。 (2) 取采样间隔Δt=0.01s,给定信号为单位阶跃,编写一个Simulink仿真程序来评估3个闭环PD控制系统的性能,其中微分控制仅作用于输出。闭环输出是否无稳态误差跟踪给定信号? 3.3 在PI控制器的设计中,通常采用一阶传递函数来近似高阶系统,此时,确定主导时间常数(最大时间常数)并保留,忽略其他较小的时间常数。首先将传递函数写成以下形式: G(s)=K(τs+1)(εs+1)≈Kτs+1 这里假设ετ。 (1) 设计下列系统的PI控制器,对复杂动态作适当近似。期望的闭环性能由多项式s2+2ξωns+ω2n指定,其中ξ=0.707,ωn为5/τ。 ① G(s)=0.1(s+0.2)(s+3); ② G(s)=-5(s+0.1)(s+6)2; ③ G(s)=e-0.1ss+0.1。提示: 对时延使用Pade近似,以求出主导动态,e-ds≈-ds+2ds+2 (2) 用奈奎斯特图评价闭环稳定性。如果闭环系统不稳定,减小参数ωn,使闭环系统稳定。 (3) 对PI控制系统的闭环阶跃响应进行仿真,采样间隔取Δt=0.001。 (4) 如果闭环响应是振荡的,则减小参数ωn,直到获得满意的性能。 3.4 利用极点配置控制器设计技术求PID控制器参数,采用零极点对消简化参数求解。这里,假定PID控制器结构为Kc+KcτIs+KcτDs。如有必要,对复杂动态进行近似。期望的闭环特性多项式为s2+2ξωns+ω2n,其中ξ=0.707,不同系统的ωn不同。传递函数和给定性能如下: (1) G(s)=10(s+20)s,ωn=5; (2) G(s)=2(s+3)(s-1),ωn=1; (3) G(s)=e-0.1s(s+3)s,ωn=1; (4) G(s)=s-3s(s+0.4)(s+10),ωn=0.2。 3.5 利用极点配置控制器设计技术求带滤波器的PID控制器参数。利用零极点对消技术简化参数求解,必要时对复杂动态进行近似。在零极点相消的情况下,期望的闭环多项式为(s2+2ξωns+ω2n)(s+3ωn)。传递函数和给定性能如下: (1) G(s)=e-1(s+5)(s+2)(s+0.1),ωn=1,ξ=0.707; (2) G(s)=s-1(s+10)s+0.01s,ωn=0.1,ξ=1。 3.6 设系统传递函数为: G(s)=b0s2+a1s+a0 设计控制器,结构为: C(s)=c2s2+c1s+c0s 其中,所有3个期望的闭环极点均取-λ。将该控制器转化为理想PID控制器,结构为Kc+KcτIs+KcτDs,求出比例增益Kc、积分时间常数τI、微分时间τD。利用终值定理证明,对于幅值R0的给定阶跃信号,t→∞时,闭环输出响应为R0。本练习基于以下3个系统: (1) G(s)=1s(s+2),λ=3,R0=1; (2) G(s)=-3s2+32,λ=6,R0=-3; (3) G(s)=1s2-1,λ=1,R0=2。 3.7 设系统传递函数为: G(s)=bs+a 设计谐振控制器,结构为: C(s)=c2s2+c1s+c0s2+ω20 其中,所有3个期望闭环极点均取-λ。设给定信号为正弦信号r(t)=sin(ω0t),证明当t→∞时,反馈误差r(t)-y(t)→0。本练习基于以下3个系统: (1) G(s)=-12s+1,ω0=1,λ=2; (2) G(s)=0.5s,ω0=0.1,λ=0.5; (3) G(s)=1s-1,ω0=2,λ=1。 3.8 为了使闭环系统跟踪给定信号r(t)=sin(ω0t)+R0,控制器需要在分母中包含因式s和s2+ω20。设系统传递函数为: G(s)=bs+a 设计带积分的谐振控制器,结构为: C(s)=c3s3+c2s2+c1s+c0s(s2+ω20) 其中,所有4个期望闭环极点均取-λ。设给定信号为正弦信号r(t)=sin(ω0t)+1,说明当t→∞时,反馈误差r(t)-y(t)→0。本练习基于以下3个系统: (1) G(s)=0.1s+0.1,ω0=1,λ=1; (2) G(s)=15s+3,ω0=0.1,λ=2; (3) G(s)=2s-2,ω0=2,λ=2。 3.9 一机械臂的二阶传递函数模型为: G(s)=1s(s+6)(3.187) 其中输入为电压,输出为机械臂在x轴的位置。 (1) 设计一个谐振控制系统,使机械臂的输出无稳态误差跟踪正弦给定信号r(t)=3sin(t)。所有期望闭环极点均位于-1(提示: 使用零极点对消技术简化计算)。 (2) 验证你的设计,说明误差信号(r(t)-y(t))随着时间t→∞收敛到零,即 limt→∞e(t)=limt→∞(r(t)-y(t))=0 编写一个Simulink仿真程序评估闭环系统对给定正弦信号的跟踪性能,采样间隔取Δt=0.005。 (3) 现在,假设给定信号包含一个常数10,新的给定信号为r(t)=10+3sin(t)。证明采用该谐振控制器时,误差信号 [r(t)-y(t)]也随着时间t→∞收敛到零。修改Simulink仿真程序,加入新的给定信号,确保闭环输出无稳态误差跟踪新的给定信号。 (4) 假设输入扰动di(t)=d0+dmsin(t)在仿真时间进行到一半时进入系统,其中d0=-2,dm=1。修改Simulink仿真程序,使其包含扰动,确认谐振控制器不能完全抑制这种输入扰动。为使谐振控制器无稳态误差抑制这种扰动,你对其结构有什么建议?请用终值定理验证你的答案。 3.10 一不稳定系统,传递函数为: G(s)=1(s-a)(s+p)(3.188) 其中a>0且p>0。 (1) 设计一个PI控制器来控制该系统,使所有期望的闭环极点均位于-a。 (2) 为了保证PI控制系统闭环稳定,稳定极点p与不稳定极点a的大小有一定的关系,用RouthHurwitz稳定性判据找出这个关系。