今天为咱们介绍一下经典操控算法之一的PID操控办法。 PID操控办法从提出至今已有百余年前史,其因为结构简略、易于完成、鲁棒性好、可靠性高级特点,在机电、冶金、机械、化工等职业中使用广泛。
在大学期间,参与的智能轿车比赛中就运用到了PID经典操控算法,对于智能小车的调试更加的方便。
一、PID原理
PID操控办法将差错的份额(proportional)、积分(integral)、微分(derivative)通过线性组合构成操控量,对被控目标进行操控。
惯例的PID操控体系如图所示:
体系的输入r(t)为操控量的目标输出值,输出y(t)为操控量的实践输出值,e(t)为输出量目标值与实践值的差错量,PID算法的调控是根据e(t)进行的。
份额调理是根据实践值与目标值的差错量进行线性调理, 在体系中表现为Kpe(t),Kp为份额增益。
份额增益Kp越大调理作用越急进,输入输出的细小差错都会造成很大的调理动作;相反的Kp越小调理作用越保存,即便输入输出差异很大体系的调理作用都不太显着。
积分调理是使用前史差错量的累计对体系输出进行调理,在体系种表明为:
积分调理的意义是消除体系的稳态差错。积分增益Ki越大体系的稳态差错消除的越快,Ki越小体系的稳态差错越不易消除,体系的调理精度越差。可是Ki过大会在呼应过程发生较大超调,导致积分饱满现象的发生。
微分调理是根据差错量的改变速率(差错求导)对体系输出进行调理,在体系种表明为:
微分调理主要起到阻尼的作用,按捺超调。微分增益Kd越大,体系的稳定性越好,调理过程中曲线动摇越小。可是Kd若设置过大会使得体系的调理时间添加,抗搅扰性削弱。
差错值在通过三种调理作用后会发生一个操控量u(t),u(t)将通过履行单元操控输出。体系将使用采样单元将输出反馈给输入端进行差错量核算。
惯例PID操控体系中u(t)与e(t)之间的函数联系如下:
别离调理Kp、Ki、Kd参数对PID操控体系功能的影响如下表所示:
二、数字PID操控
跟着核算机技术发展,目前多以微操控器或核算机为运算中心,使用软件程序来完成PID操控和校正,也便是数字PID操控。常用的数字PID操控办法有:方位式PID、增量式PID以及步进式PID等。
01
方位式PID
因为核算机的运算是离散的,要想完成数字PID操控首先需求将连续函数进行离散化。
咱们用差错的累加代替积分运算,用差错的差分代替微分运算,可得:
其间k为采样序列号(k=0,1,2,3……),e(k)为第k次采样时的差错值,e(k-1)为第k-1次采样时的差错值u(k)为第k次采样时操控量的输出值。在方位式PID中输出u(k)直接操控待操控目标,u(k)的值和操控目标是一一对应的联系。
从式2可以看出,方位式PID需求核算第k次和k-1次的差错,操控器会对差错进行累加,这样会使得体系的运算量变大,占用内存过多,给核算机带来担负。
一起,操控器的每次输出u(k)都和曩昔的状况有关,u(k)的大幅改变会导致履行机构的状况大幅改变,体系抗搅扰能力差。
为了改进这些问题,有学者提出了数字PID的另外一种完成办法——增量式PID。
02
增量式PID
增量式PID的输出是对被控目标的增量∆u(k),而不是实践的操控量巨细。
其间a0=kp+ki+kd, a₁=-Kp-2kd,a₂=kd。
从上式可以看出增量式PID跟k时间、k-1时间、k-2时间的差错都有联系,可是不会对差错进行累积,所以比较方位式PID的核算量要小,也不会跟曩昔的差错有关联,所以操控体系的稳定性好。
03
步进式PID
当PID体系的设定值发生较大的骤变时,体系很容易发生超调,影响其稳定性。为了防止阶跃信号带来的晦气影响,有学者提出了步进式PID。
步进式PID不对阶跃信号进行直接呼应,而是依照设定的步进规矩逐渐添加设定值,使得信号逐渐靠近目标值,这样被控目标运转平稳,防止了因骤变带来的超调。
这种办法并未改变PID算法结构本身,而是对设定值进行步进处理,使其不发生骤变。步进处理办法有很多种,最为常见的是建立一个线性改变函数,确定改变步长,当检测到目标值发生改变后依照步长逐渐调整设定值。
Ys=Yn+kT
其间Ys为设定目标值,Yn为当时目标值,T为步长,k为改变系数。当检测到目标值添加时k=1,当目标值不变时k=0,当目标值减小时k=-1。
步进式PID虽然可以减少阶跃信号带来的搅扰,可是也会让体系的呼应速度变慢,可以调理步长来平衡两者之间的联系。步长越小运转越稳定,体系呼应速度越慢,反之亦然。
三、PID算法优化
01
积分饱满优化处理
若体系持续存在一个方向的差错时,PID操控器的输出因为积分作用不断累加而增大,然后导致操控器输出发生超调进入饱满区。
当体系呈现反向差错时,因为输出饱满而不能对反向的差错进行快速呼应,这种现象称为积分饱满。
常用按捺PID积分饱满办法有: 积分分离法、遇限削弱积分法以及变速积分法等。
//积分分离法
当体系检测到差错e(k)较大时,取消积分环节,当被控量挨近给定值时,差错减小,此刻康复积分环节。这样既不影响操控器的动态功能,又能防止呈现严重超调或持续振动现象。
//变速积分法
根据体系的差错e(k)巨细对积分速度进行调整,当e(k)绝对值很大时减慢积分速度,当e(k)绝对值很小时加快积分速度。在积分饱满时减小积分时间可以达到按捺积分饱满的作用,增强体系的适应性。
//遇限削弱积分法:
当检测到操控量u(k)进入饱满区时不再进行积分项累加,而履行削弱积分的运算。这样不会发生过多的超调量,当需求反向调理时能较快地呼应,防止输出长期停留在饱满区。
02
微分项优化处理
PID算法中微分项与差错的改变速率有关。假如体系存在频率较高的搅扰或骤变等情况时,微分项的数值会不断跳变,使操控过程发生体系振动,影响操控体系的稳定性。
常用的微分环节优化办法如下:
//微分先行 :
微分项对测量值发生的差错起作用,而不是对设定值起作用。这样可以防止设定值的改变而发生较大的调理动摇,按捺高频搅扰引起的体系振动。
//不完全微分 :
不完全微分是在微分作用后引入一阶惯性环节,使得在差错作阶跃式改变时发生的微分调理量,以一种较为陡峭的方法输出。这样在不减小微分调理作用的前提下,降低因为差错骤变发生的动摇。
//受控微分法 :
受控量微分PID算法是对操控器的输出值进行微分,而不是对体系呼应的实践输出值进行微分,可防止因为体系设定值频繁改变或履行器的振动发生的体系呼应超调量过大。
03
串级PID
所谓串级PID,便是选用多个PID操控器串联作业,外环操控器的输出作为内环操控器的设定值,由内环操控器的输出去操作外环操控器,然后完成外环被控量的操控作用。串级PID可以有用改进操控质量,在过程操控中使用广泛。
操控体系以外环操控器为主导,保证外环主变量稳定为目的,两个操控器协调一致,互相配合。外环操控器按负荷和操作条件的改变不断纠正内环操控器的设定值,使内环操控器的设定值适应负荷和操作条件的改变。
在电机操控中串级PID十分常见,常用的方位环+速度环+电流环操控结构如图。
在PID操控办法中P、I、D是三种不同的调理作用,在实践使用时可根据需求对三种调理作用进行灵敏组合,这也是PID操控办法的魅力地点,它的结构决议了它在实践使用中的多样性与灵敏性。
本篇主要从PID原理、数字PID完成方法以及算法优化方面进行了简略介绍,期望可以对咱们学习PID算法有所帮助。