1 引言
PID控制系统之所以得到广泛应用,关键在于其结构、设计和实现的简单性。本章介绍如何实现具有操作约束的PID控制器。运行约束用于确保工厂的安全运行,并在控制信号超过限制时保护电子设备免受损坏。无一例外,在实际应用中实现的所有控制系统都必须包括操作约束。
2 PID使用控制器的场景
知道如何实现一个PID我们将首先描述数字控制系统在工作中的一般场景。计算机控制系统通常由被控对象(包括传感器和执行器)、存储控制算法和计算对象输入的计算机组成。在许多应用中,计算机被微控制器或数字信号处理器所取代。大多数物理系统都是连续时间系统。本质上,系统中的变量是模拟连续信号。例如,压力信号、温度信号、电压信号和电流信号是物理系统中常见的模拟信号。本质上,这些模拟信号是连续的。由于计算机、微控制器和数字信号处理器只接受数字信号处理,关键设备必须将模拟世界(物理设备)与数字世界(计算仪器)连接起来。这些设备称为模数转换器(ADC)和数模转换器(DAC)。内部时钟同步ADC和DAC的动作。它们共同构成了计算机控制系统或数字设备控制系统。电子采样是模数转换器中最常用的方法。常用接口卡中的微控制器和微控制器ADC均采用电子采样。使用此方法时,将传感器连接到物理对象,产生电子输出信号。该信号通过电子设备采样传感器的输出信号,并将其转换为数字信号。采用电子采样ADC它是一种将模拟电压作为输入的集成电路,同时接收外部环境与数据处理单元内同步环境之间的时间信号。
数模转换器是一种接收高电平和低电平电压信号的集成电路DAC二进制字表示输入端实数成比例的模拟输出。DAC是零阶电子实现。该设备的输入在第一位i采样时间由时钟信号提供。
数模转换器的输出信号是时间间隔ti ≤ t ≤ ti 1上的恒定电压,其中ti = iΔt,ti 1 = (i 1)Δt。数模转换器是一种接收数字信号并产生量化信号的电路。输出信号由一系列阶跃组成,阶跃宽度为采样间隔Δt。在这里,我们假设输入信号是离散信号,输出信号是分步连续时间信号。
计算机控制系统是如何工作的?以室温控制为例,解释一般意义上的计算机控制系统是如何工作的。假设在寒冷的环境中,通过加热来保持适当的室温。加热元件来自油炉。
控制室温的输入是炉的燃油喷射率,输出是室温。控制目标是将室温保持在19℃。假设测量和控制动作按照一系列时间间隔同步。假设两次执行之间的间隔相同,则称为采样间隔Δt。
一个典型的测量和控制周期总结如下。
- 测量产量。当闭环系统连接时,假设是t0.温度传感器读取室温y(t0)。然后计算机或数字设备将测量结果读入其存储器。
- 计算反馈误差。t将0的温度测量与所需的室温进行比较。反馈误差的比较e(t0)。
- 计算控制器输出。根据反馈误差的复杂性,计算机中的控制算法e(t用反馈误差的历史计算控制信号u(t0)。
- 该数字值u(t0)通过零阶保持被转换成模拟控制信号u(t)(燃油喷射率)u(t) = u(t0),t0 ≤ t ≤ t1,并且t1 = t0 Δt。
- 模拟信号是时间间隔t0 ≤ t ≤ t1.燃油喷射率。
- 时钟滴答下一个采样周期t1.温度传感器将室温读数为y(t1)整个控制过程中重复列出的步骤。
3使用位置形式的位置形式PID实现控制器
PID该控制器的位置形式涉及到连续时间控制器的直接离散。
3.1所需的稳态信息
用于使用方程计算PID控制器的控制信号u(t),
(4.1)
其中,e(t) = r(t)?y(t)是参考信号r(t)和输出y(t)反馈误差信号,yf(t)它是滤波器后的输出信号。重要的是要清楚,计算中使用的所有信号都不是数字上的实际物理变量,而是稳态操作中物理变量的偏差变量。换句话说,控制信号u(t)、参考信号r(t)和输出信号y(t)表示稳态操作中相应物理变量的变化。例如,在冬季环境中使用室温控制时,如果所有门窗都关闭,℃,这是由阀门开度为40%的燃气炉的热量维持的。输出变量的稳态为Yss = 18℃,控制变量的稳态为Uss = 40%。如果我们在室温下(r(t) = 0)感到满意,门窗保持关闭,所以由于燃气炉的稳定运行,室温y(t) = 0不会改变。
稳态操作时,来自PID控制器的控制信号为u(t) = 0.如果有人决定时间t将室温从18设置℃改变为20℃,则在t = t0处参考信号r(t) = 2℃,在t = t0处反馈误差e(t) = r(t)?y(t) = 20.基于反馈误差e(t),控制器在t = t0处产生控制信号u(t) > 0。燃气炉将改变阀门开度的百分比(uact(t):uact(t) = Uss u(t))。室温传感器将实际室温读取为yact(t),并输出信号y(t)被更新为 y(t) = yact(t)?Yss。控制信号u(t)新的输出信号y(t)而改变。PID根据反馈误差,控制器的位置形式是e(t)偏差控制量的直接计算u(t)。因此,当使用位置形式时PID实现控制器时,对控制信号和输出信号的稳态信息有先验知识很重要,以计算实际控制信号uact(t) = u(t) Uss,相反,输出信号y(t) = yact(t)?Yss。
3.2 PID离散控制器
在使用微控制器或其他计算设备实现PID控制器时,输入到PID控制器的信号是数字信号,而从PID控制器输出的信号也是数字信号。
因此,为了让其得以实现,我们需要找到它的离散形式。在位置表中,由三项之和计算出PID控制器的输出,如图4.1所示。为表达简单起见,我们将控制信号
其中up (t)、uI(t)和uD(t)分别表示比例、积分和导数控制项。
在位置形式中,比例(P)控制器、比例加积分(PI)控制器、比例加导数(PD)控制器和比例加积分加导数(PID)控制器的实现将由离散化函数中的单项或单项组合构成。
我们假设离散化发生在均匀采样间隔Δt中,并且连续时间t被采样为t = 0,t1,t2,…,ti−1,ti,ti+1,…。比例项最容易离散化。在任意时间ti,比例控制项up(ti)被计算为
(4.2)
积分控制项uI(ti)需要积分函数的数值近似,其被写为
(4.3)
当
我们可以知道
(4.4)
因此,近似的精度随着采样间隔Δt的减小而增加。位置形式中的导数项uD(t)的离散化与速度形式中使用的过程相同。
此实现的一个关键问题是,在(4.3)中使用的计算中的积分项可能太大,导致变量“溢出”的数值问题。由于积分项使用过去所有反馈误差信号的累加和,如果反馈误差具有非零的稳态值,则会出现此问题。第4.4节中介绍的PID实现算法通过迭代方法避免了这个问题。
位置式PID控制器的计算公式为
(4.5)
4用速度表实现的PID控制器
只有两种类型的PID控制器使用速度形式来实现。一种是比例加积分(PI)控制器,另一种是比例加积分加微分(PID)控制器。比例(P)控制器和比例加导数(PD)控制器不能使用速度形式实现,因为其实现涉及对积分项的直接处理。
在速度形式中,PI控制器或PID控制器被离散化,不分离单独的项,并且将解集中在控制变量的导数上,由此得到项“速度”。
4.1 PI控制器的离散化
控制信号U(s)的拉普拉斯传递函数与反馈误差E(s)有关
(4.6)
从(4.6),我们得到
(4.7)
(4.7)的拉普拉斯逆变换得到以下微分方程
(4.8)
这是用于计算控制信号的导数的方程。这被称为速度形式,因为在方程的左侧计算控制信号的导数。回顾到公式(4.8),我们注意到在计算中涉及误差信号的导数。然而,在离散化过程中将消除误差信号的导数。让我们用采样时间ti的一阶近似来表示控制和反馈误差信号和的导数:
(4.9)
(4.10)
通过将这些近似代入(4.8),我们得到
(4.11)
通过将项u(ti−1)从左侧移动到右侧,控制信号的计算变为
(4.12)
强调反馈误差信号e(ti) = r(ti)−y(ti)是有用的。对于第一章中讨论的IP结构,其中比例控制项仅在输出信号上实现,对(4.12)的小修改是将差反馈误差e(ti)−e(ti−1)替换为差输出信号−y(ti)+y(ti−1)。因此,IP控制器结构的实现基于计算公式。
(4.13)
注意,在等式(4.13)的实现中,在时间ti的电流控制信号u(ti)是过去控制信号u(ti−1)、电流输出y(ti)、过去输出信号y(ti−1)和电流参考信号r(ti)的线性组合。
在当前采样时间ti,在(4.13)的右侧的所有这些信号都是可用的。使用速度形式实现的主要优点之一是处理稳态信息。如前所述,(4.13)中的所有信号都是偏差信号。它们与它们的稳态值相关。为此,利用Uss、Yss和Rss的稳态值,操作后相对应的实际信号为
(4.14)
(4.15)
(4.16)
我们首先考虑(4.13)中的IP结构,然后将该过程扩展到(4.12)中的原始PI结构。现在,我们通过首先将Uss的稳态值加到两侧,将Yss加到与比例控制相对应的第二项上来 处理(4.13),这导致了它的等价表达式:
(4.17)
在这一点上,我们需要假设参考信号Rss的稳态等于输出信号Yss的稳态,这对于工厂运行是现实的。利用稳态信息,用实际物理量代替偏差变量,得到PI控制器实际实现的计算公式。
(4.18)
利用(4.18)给出的该公式,在更新控制信号时使用物理变量的所有实际测量,并且计算的控制信号是要实现的物理变量。更重要的是,(4.18)的实现不需要Uss和Yss的实际稳态信息,这使得在控制应用中的实现变得方便和实用。(4.12)中对原始PI结构的扩展遵循相同的假设参考信号Rss的稳态等于输出信号Yss的稳态。因此,原始PI结构的实现方程为
(4.19)
这里,比例控制将直接作用于参考信号。4.4.2使用速度形式的PID控制器的离散化
将PID控制器的拉普拉斯传递函数表示为
(4.20)
方程(4.20)左侧的前两项构成PI控制器,该控制器在上一节中已离散化。问题是,与衍生控制相对应的第三项将如何离散化。由于我们不希望使用输出的稳态信息,因此需要在速度形式中对导数项进行不同的离散化。从导数控制的传递函数
(4.21)
控制变量ud(t)和y(t)之间关系的微分方程如下所示
(4.22)
通过近似
在时间ti,微分方程(4.22)变为:
(4.23)
通过将等式两边的Δt相乘,并重新排列,我们得到
(4.24)
将ud(t)的稳态取为零,通过将输出值的稳态加减至(4.24),利用实际输出测量得到导数控制项的计算,
(4.25)
现在,回到(4.20)给出的PID控制器的表达式,控制信号的导数表示为
(4.26)
将导数项(4.25)的离散化和PI控制器部分的离散化相结合,将采用速度形式时的完整的PID控制器表示为
(4.27)
当直接在输出上实现比例控制时,采用速度形式的PID控制器为
(4.28)
二阶系统由传递函数描述
(4.29)
设计了带滤波的PID控制器对该对象进行控制。所需的闭环多项式指定为,其中 = 0.707,。使用离散PID计算算法模拟单位阶跃闭环响应,采样间隔Δt选择为和。
说明当Δt增加到0.1时,虽然连续时间PID控制器的设计产生了一个稳定的闭环系统,但是闭环系统变得不稳定。
图4.1将闭环响应与采样间隔的三种情况进行了比较。可以看出,使用Δt = 0.02和0.04时的闭环响应之间的差异可以忽略不计。但是,当采样间隔增加到0.1时,闭环系统会变得不稳定,如图4.1所示:
图4.1闭环响应(示例4.1)。(A)输入信号。(B)输出信号。关键:LINE(1)闭环响应,Δt = 0.02;LINE(2)闭环响应,采样间隔Δt = 0.04;LINE(3)闭环响应,采样间隔Δt = 0.1。
4.3在较慢的采样环境中提高精度
采样率1/Δt通常被选择为闭环系统带宽的5到10倍。在PI控制系统中,此带宽是参数Wn。实际上,此采样率范围将导致性能下降,而不是我们所期望的闭环系统性能。为了使采样效果真正可以忽略不计,采样率将至少比典型采样率高10倍。由于PID控制器是在连续时间环境下设计的(即模型是连续时间微分方程,其参数是根据连续时间系统选择的),原则上采样率1Δt应选择在系统的计算能力允许的范围内。当采样率较慢(或Δt相对于闭环带宽较大)时,提高PID控制器离散化精度的一种可能方法是对信号的导数使用高阶离散化方案(Burden and Faire(1989))。
使
(4.30)
(4.31)
考虑PI控制器的原始速度形式
(4.32)
通过将导数和替换为(4.30)和(4.31),我们得到了在采样时间ti时的近似公式(4.32);
(4.33)
通过将(4.33)左侧的量4Uss加减,(4.33)变为
(4.34)
其中uact(ti) = u(ti)+uss,uact(ti−1) = u(ti−1)+uss和uact(ti−2) = u(ti−2)+uss。因此,实际控制信号是
(4.35)
4.5使用位置形式的抗饱和实现
在存在对控制信号的约束的情况下,PID控制器的实现需要考虑抗饱和机制。有许多方法可用于实现具有抗饱和机制的PID控制器。本部分将讨论使用位置式PID的实现。考虑具有传递函数的积分加延迟对象
(4.36)
该对象的PI控制器的积分时间常数 = 244.5,比例增益Kc = 0.0065。用单位阶跃参考信号对该PI控制系统的闭环响应进行仿真。假设控制信号幅度不超过1.5×10−3,说明积分器结束的场景。:使用SIMULINK程序进行仿真设置,其中饱和模块用于模拟控制幅度限制的场景。在反馈误差信号上实施比例项和积分项。我们首先将饱和块中的限制设置为大于(±3)控制信号幅度的最大值和最小值。控制信号和输出响应如图4.2所示(见第(1)行)。闭环响应表现得相当好。通过将允许的控制幅度降低到1.5×10−3,对对象u的实际控制信号受到限制。当这种情况发生时,闭环响应变得振荡,如图4.2所示(参见第(2)行)。当进一步研究这一点时,我们发现控制器输出信号(u1)在对象的实际控制信号受到限制(见虚线-点线)后继续增长,如图4.3所示(见实线),因为反馈误差为正。当反馈误差e(t)从正号变为负号时,u1的幅度达到最大(如图4.1所示)。
控制信号的数值随着误差幅度的增加而逐渐减小,这是在负值区域。最终,积分项变得足够小,控制信号进入允许的上限。当控制信号改变其符号时,它遇到了负约束。由于控制信号饱和,误差信号和输出信号都变得振荡。
图4.2闭环响应(示例4.2),(a)输入信号、(b)输出信号。关键:线(1)无饱和的闭环响应;线(2)有饱和的闭环响应。
图4.3积分器绕组情况下的误差信号和控制信号(示例4.2)
在这个例子中,我们注意到了两件事。
1、在实现PI控制器时的位置形式中,使用以下方程计算控制信号,
(4.37)
其中,对反馈误差e(t)进行积分。只要反馈误差的符号保持不变(积分是关于曲线面积的计算),该积分项的大小就会继续增加。结果,只要反馈误差的符号保持不变,所计算的控制信号u(t)将继续增长。
2、由于饱和,当饱和极限达到时,被控对象的实际控制信号与控制器的输出是不同的。控制员不会被告知工厂内实际发生的情况。
这是在设计PID控制器的抗卷绕方案时需要考虑的两个关键点。总之,当达到饱和极限时,积分功能应该停止,并且应该通知控制器在被控对象中实际发生了什么。