APP下载

基于粒子群算法液压伺服系统PID参数的优化

2013-09-04丁曙光

机械工程与自动化 2013年6期
关键词:伺服系统阶跃极值

丁曙光,许 来

(合肥工业大学,安徽 合肥 230009)

0 引言

液压伺服系统是在液压传动和自动控制理论基础上建立起来的一种自动控制系统。由于其优良的动态性能,在机械行业得到了广泛应用,通常在一些简单的液压伺服系统中,我们采用传统PID控制方法对系统进行控制就能得到较好的控制效果,然而随着社会的进步,液压技术与自动化水平也相应提高,人们在对一些复杂的液压伺服系统进行控制时,由于系统的非线性、滞后性和时变性等特点,用传统PID控制方法很难对这些系统进行有效的控制,为此就需要采用一些新型的控制策略对系统进行控制[1]。

近几十年来,一些新型的智能算法(如神经网络、遗传算法、免疫算法)被人们相继提出,这些算法具有通用性和鲁棒性好、算法简单以及并行处理等优点,对于一些传统PID控制算法不能较好控制的复杂系统,选取合适的智能控制算法可以取得好的控制效果。随着这些算法的逐渐成熟,在复杂的液压伺服系统中的应用也越来越多。当然,这些算法也有一些缺陷,如遗传算法,其主要缺点为:①容易早熟,其算法对新空间的探索能力是有限的,也容易收敛到局部最优解;②涉及到大量个体的计算,当问题复杂时,计算时间是个问题;③稳定性差,因为遗传算法属于随机类算法,需要多次运算,结果的可靠性差,不能得到稳定的解。为了克服液压伺服系统中传统PID控制器的不足,本文拟采用粒子群优化算法来调整液压伺服控制系统中的PID参数值,使系统运行保持合适的瞬态参数,以提高系统的鲁棒性和控制品质。

1 粒子群优化算法

粒子群优化算法(Particle Swarm Optimization,PSO)是由Kennedy和Eberhart于1995年提出的一种演化计算算法,它是一种基于种群进化的计算方法,算法的基本思想是通过群体中个体之间的协作和信息共享来寻找最优解。可以这样来理解PSO算法:PSO算法就是模拟一群鸟寻找食物的过程,每只鸟都是PSO算法中的一个粒子,也就是我们需要求解问题的可能解,这些鸟在寻找食物的过程中,通过跟踪个体极值与全局极值,然后不停改变自己在空中飞行的位置和速度来寻找食物的最佳位置[2],其中个体极值是每个粒子当前搜索到的最优位置,全局极值是整个粒子群当前搜索到的最优位置。

假设种群中有m个粒子在D维空间中搜索,我们用Xi=[xi1,xi2,…,xiD]T表示第i个粒子的位置,Vi=[vi1,vi2,…,viD]T为第i个粒子的速度,粒子的个体极值用Pi=[pi1,pi2,…,piD]T来表示,Pg=[pg1,pg2,…,pgD]T则为整个粒子群的全局极值。每个粒子的飞行速度和位置通过下面两个式子不断更新[3]:

其中:w为惯性因子;c1、c2分别为将每个粒子推向个体极值和全局极值位置的统计加速项的权值,称为加速因子,通常情况下取c1=c2=2.0;r1、r2为[0,1]之间的随机变量。对于惯性因子w,一般情况下我们取0.1~0.9之间的数,通常来讲,惯性因子的取值较大,其局部寻优能力较弱而全局寻优能力较强,取值较小时则有相反的效果。

在迭代的时候,粒子的位置向量被限制在[Xmin,Xmax]范围内,而Xmin和Xmax由实际问题决定。

2 基于粒子群算法整定的PID控制器参数

PID控制器是按偏差的微分、积分和比例的线性组合来控制的一种调节器,传统PID控制器的系统结构框图如图1所示。

图1 传统PID控制器的系统结构框图

图1中,C(s)为PID 控制器的传递函数;G(s)为被控对象的传递函数;r(t)为系统输入;e(t)为反馈偏差;u(t)为控制器输出;d(t)为扰动;y(t)为系统输出。PID控制器的输出可以描述为:

其中:Kp、Ki、Kd分别为比例系数、积分系数和微分系数,Ki=Kp/Ti、Kd=KpTd,Ti、Td分别为积分时间常数和微分时间常数。

2.1 算法的编码与适应度函数

因为粒子群算法使用实数来进行编码,而控制器的设计问题通常也可以理解为多维函数的优化,因此对于参数寻优中的粒子可以直接将其编码为(Kp、Ki、Kd)。优化控制参数的目的有三个:一是尽量减小控制偏差,使其趋于零;二是提高响应速度;三是减小超调量。综上所述,本文采用性能评价指标IATE作为目标函数,其适应度函数用下式来表示:

2.2 参数的搜索空间

粒子群优化算法的搜索空间是在以Ziegler-Nichols(ZN)法获得的参数基础上向左右两边拓展形成,这样可以缩小实际参数的搜索空间。如果参数的优化解十分靠近搜索空间的边界,则应在该解的基础上进一步拓展搜索空间,进行新一轮搜索[4]。参数的搜索空间表示为:

其中:K′p、K′i、K′d为ZN 法的整定值;a为[0,1]内选定的数值。

2.3 算法流程

PID控制器的参数优化算法流程如下:

(1)迭代次数从n=1开始,在搜索空间随机初始化粒子群,第i个粒子的位置向量为Xi(t),速度向量为Vi(t)。

(2)将每个粒子的位置向量依次作为PID控制器参数,对系统进行仿真后根据公式(4)计算其适应度值。

(5)每个粒子的速度vid(t+1)与位置向量xid(t+1)通过式(1)和式(2)不断更新。

(6)取n=n+1,返回第2步,直至最大迭代次数。

3 液压位置伺服系统的组成

典型的液压位置伺服系统通常由液压缸、伺服阀、调节器以及反馈元件组成,系统的传递函数框图如图2所示。

图2 液压位置伺服系统框图

4 仿真研究

典型的液压位置伺服系统的参数如表1所示[5]。

表1 液压位置伺服系统的参数

通过用MATLAB软件对上述液压位置伺服系统进行仿真[6],采用PSO算法对 Kp、Ki、Kd三个参数进行优化。液压系统模型中PID参数Kp的取值范围为0.01~0.5,Ki的取值范围为0.01~0.5,Kd的取值范围为0.01~0.1。设最大迭代次数为100次,粒子速度的最大权重系数为0.9,最小权重系数为0.3,学习因子c1、c2为2。图3为PSO-PID系统阶跃响应曲线与传统PID控制器阶跃响应曲线对比图。由图3可以看出,优化后系统的综合性能有了很大提高,响应速度明显增快,稳定性也提高了。

系统运行一段时间后,由于设备的摩擦磨损、腐蚀、阻尼、负载的变化等原因,液压系统的参数会发生一定的变化。图4为液压系统的阻尼系数变化后,经PSO-PID控制器100次迭代优化后的系统阶跃响应曲线与传统PID控制器的阶跃响应对比。从图4中明显看出阻尼系数变化后,传统PID控制器控制的系统稳定性变差,出现了振荡现象,而经优化计算的PSO-PID控制系统的性能明显优于传统PID控制系统。

图3 采用PSO-PID控制器与传统PID控制器阶跃响应对比图

图4 系统参数变化后的阶跃响应曲线

5 结论

本文将粒子群算法与传统的PID控制器结合,构成PSO-PID控制器,它结合了粒子群算法鲁棒性强和寻优速度快和传统PID控制精确的优点。通过仿真我们可以得到以下结论,典型液压位置伺服系统在文中提出的PSO-PID算法下,系统响应速度快,能适应于非线性、时变、干扰的不确定复杂系统,在工况变化的情况下也能取得较好的控制效果。

[1] 周建刚.液压伺服系统PID控制器参数的优化[D].无锡:江南大学,2009:1-6.

[2] 刘波.粒子群优化算法及其工程应用[M].北京:电子工业出版社,2010.

[3] Shi Y,Eberhart R C.A modified particle swarm optimizer[C]//Proc of the IEEE Int l Conf of Evolutionary Computation.Piscataway:IEEE Press,1998:69-73.

[4] 王介生,王金城,王伟.基于粒子群算法的PID控制器参数自整定[J].控制与决策,2005,20(1):73-76.

[5] 任玉军,邹俊,傅新.液压位置伺服系统PID参数在线优化[J].机床与液压,2005,10(1):87-88.

[6] 王正林,王胜开,陈国顺.MATLAB/Simulink与控制系统仿真[M].北京:电子工业出版社,2005.

猜你喜欢

伺服系统阶跃极值
基于ESO的电液位置伺服系统反步滑模控制
极值点带你去“漂移”
基于阶跃双包层光纤的螺旋型光纤传感器
极值点偏移拦路,三法可取
一类“极值点偏移”问题的解法与反思
基于复合前馈模糊PID的位置伺服系统研究
探讨单位阶跃信号的教学
借助微分探求连续函数的极值点
基于自适应反步的DGMSCMG框架伺服系统控制方法
消除弹道跟踪数据中伺服系统的振颤干扰