CSO-PID算法在空压机控制系统中的应用*
2021-12-30吕晨悦施一萍张金立程宗政
吕晨悦, 施一萍, 刘 瑾, 张金立, 程宗政
(上海工程技术大学 电子电气工程学院,上海 201620)
0 引 言
随着空压机的广泛应用,用户对于设备运行稳定性及节能的要求越来越高,而空压机系统是个结构十分复杂的非线性高阶系统,传统的比例—积分—微分(proportional-integral-differential,PID)控制很难达到良好的控制效果。因此有学者将BP神经网络与PID算法相结合[1~3]或是利用仿生算法,例如:蚁群算法[4]、遗传算法[5]、蜂群算法[6]等来整定PID参数。但这些算法存在搜索范围大、收敛速度慢以及易陷入局部最优解等问题,因此本文利用改进鸡群优化(chicken swarm optimization,CSO)算法整定PID参数,从而实现了对空压机出口压力的有效控制,使系统保持最优的运行状态。
1 空压机系统
空压机系统主要由普通电机、螺杆主机、储气罐以及运行控制系统等组成,为了使空压机系统更加稳定、节能,因此在系统中增设变频器和永磁电动机,其系统结构如图1所示[7,8]。在普通螺杆空压机的基础上增设了变频器,通过变频器改变电源的频率来改变空压机电动机的转速,使得空压机的排气量发生改变,从而解决普通螺杆空压机由于频繁空载和负载而运行不稳定、波动较大和浪费过多功率两种问题。将普通电机换为永磁电动机,利用永磁体来产生电机的磁场,无需励磁线圈也无需励磁电流,从而降低电流消耗、提高电动机的效率。利用压力变送器将出口气体压力转变为电信号,传入可编程逻辑控制器(programmable logic controller,PLC),利用PLC中的PID控制算法测算出实际用气量,并根据实际用气量调整变频器供电的频率和幅值从而控制电动机的转速,最终实现对空压机系统排气量相对于用气量的平衡与实时控制。
图1 节能的空压机系统结构
2 CSO算法
CSO算法步骤如下[9,10]:
1)划分鸡群
鸡群分为许多子群,每个子群由一只公鸡,同数量的母鸡以及同数量的小鸡组成。将适应度值位于前列的个体作为公鸡分配到每个子群当中。将适应度值(目标函数值)位于公鸡后的个体作为母鸡平均分至每个子群当中,而母鸡又分为一般母鸡和带领小鸡觅食的鸡妈妈。最后剩余个体作为小鸡平均分至每个子群当中。公鸡是鸡群的领头者,带领鸡群主动去寻找食物;母鸡跟随公鸡觅食;小鸡跟随鸡妈妈去觅食。鸡群中的领头关系、母子关系可延续数代,直至重新划分鸡群。
2)鸡群位置更新规则
鸡群中的每个个体就是参数寻优问题里的一个解。用NR,NH,NB,NM分别表示公鸡、母鸡、小鸡、鸡妈妈的个数。
公鸡在寻找食物时,不受母鸡与小鸡觅食行为的影响,并且适应度值较高的公鸡相对于适应度值较低的公鸡,其觅食的空间会更加宽阔。公鸡觅食时位置更新公式如下
xij(t+1)=xij(t)[1+randn(0,σ2)]
(1)
式中randn(0,σ2)是均值为0,标准差为σ2的高斯分布;ε为非常小的数,目的是使分母有意义;k=[1,NR],k≠i,表示鸡群中除第i只公鸡以外的其他的公鸡。
母鸡在寻找食物时,不受小鸡觅食行为的影响,但受到其所在子群中的公鸡以及整个鸡群中公鸡和其他母鸡觅食行为的影响。鸡妈妈与母鸡觅食行为一致。母鸡位置更新
xij(t+1)=xij(t)+C1rand[xr1,j(t)-xij(t)]+
C2rand[xr2,j(t)-xij(t)]
(2)
式中C1=exp{(fi-fr1)/[abs(fi)+ε]};C2=exp(fr1-fi);rand为0~1之间的随机数;ri为第i只母鸡所在子群中的公鸡;r2为整个鸡群中公鸡和母鸡里面随机选取的个体,且r1≠r2。
小鸡跟随鸡妈妈寻找食物,其位置更新
xij(t+1)=xij(t)+FL[xm,j(t)-xi,j(t)]
(3)
式中m为第i只小鸡所跟随的鸡妈妈,FL为服从[0,2]均匀分布的随机数。
但鸡妈妈的觅食路径会影响小鸡的觅食路径,而鸡妈妈的觅食路径并不是子群的最优路径,因此为了提高算法的收敛速度,避免算法陷入局部最优,因此将小鸡位置更新[11]
xij(t+1)=
(4)
式中C为子群公鸡的跟随因子,C=0.4+0.5(nmax-nnow)/nmax;nmax为最大迭代次数;nnow为当前迭代次数;randpos为解空间的随机位置;rand为0~1之间的随机数,rand≤0.2代表小鸡走丢,rand>0.2代表没有走丢。
3 CSO-PID控制器设计
空压机系统是一个十分复杂的高阶非线性系统,采用传统的PID控制技术对空压机的出口压力进行控制,难以达到令人满意的控制结果,因此本文利用CSO算法对PID参数进行整定。PID 控制器的传递函数可描述为
(5)
式中kp为比例增益;ki为积分增益;kd为微分增益。
PID控制器通常运用于具有反馈的闭环系统中,根据系统的偏差,通过比例(P)、积分(I)、微分(D)计算出控制量来对系统进行控制。比例环节能够让系统的误差越来越小;积分环节能够让系统的稳态误差为0;微分环节能够对系统的误差变化进行性预测,从而实现对系统的超前控制。
基于CSO算法的PID控制系统结构如图2所示, CSO算法的PID控制系统由CSO算法以及PID控制器组成。鸡群中每个个体可以直接表示为kp,ki,kd。
图2 CSO-PID控制系统结构
基于CSO算法整定PID的流程为:1)将永磁变频螺杆机理想的出口压力作为rin(t),将永磁变频螺杆机实际出口压力作为yout(t),可得误差e(t)=rin(t)-yout(t);2)将初始参数的确定:定义NR,NH,NB,NM,nmax,鸡群关系确定后维持的代数G、问题的维数D,kp,ki,kd的约束范围等初始参数;3)种群初始化:以随机的方式产生初始鸡群,计算个体的适应度值,并排序,根据排序划分子群,并建立子群间个体的关系;4)利用式(1)、式(2)、式(4)更新个体的位置;5)如果达到重新划分子群的条件,则重新划分子群并建立个体关系;6)重复步骤(1)~ 步骤(5),直到达到最大迭代次数,得出Kp,Ki,Kd最优的参数值,经过PID控制器从而获得最佳出口压力值u(t)。
4 CSO-PID算法在空压机系统中的应用
4.1 智能空压机系统结构
利用PLC控制空压机系统控制效果不佳,为了能够更好地控制空压机系统,本文将鸡群算法和PID控制算法相结合,并将其应用到PLC控制器中,从而实现对空压机系统的控制。智能控制的空压机系统如图3所示。
图3 智能控制的空压机系统
4.2 仿真实验
空压机系统为高阶非线性系统,其内部结构十分复杂,因此将其转化为二阶控制系统来分析其运动特性并进行理想化,近似地视为一个二阶系统,表达式设为k/(T1s+1)(T2s+1),k为放大系数,k=2,T1=1/2,T2=1/3[12]。
利用PID算法和改进的CSO-PID算法对空气压缩机的出口压力进行仿真(两种算法Kp,Ki,Kd参数设定一致),寻优范围为Kp∈[1,0],Ki∈[1,10],Kd∈[1,10],NR=30,NH=20,NB=40,NM=10,nmax=1 000。G=D=3迭代次数也为1 000。设置采样时间为0.02 s,整个仿真时间为20 s。
PID与CSO-PID控制仿真如图4。
图4 PID与CSO-PID控制MATLAB仿真
由图4可知,CSO-PID控制器的控制效果比PID控制效果好。可以看出,PID控制的响应速度慢,超调量为28 %,并且曲线波动明显,系统控制不稳定,而CSO-PID控制响应速度快,虽然也有超调现象,超调量为0,且没有波动情况的出现,系统控制稳定。为了验证两种控制器的抗干扰性能,在运行10 s时给系统加增加10 %的阶跃扰动信号,如图5所示PID控制器调节至稳定需要5 s,由CSO-PID控制器调节至稳定仅需要1 s,因此CSO-PID控制器比PID控制器抗干扰能力更强。
图5 控制器抗干扰分析
4.3 测试与能耗分析
系统控制器采用S7—1200PLC,根据CSO-PID控制算法流程,采用SCL编写,编译生成CSO-PID功能块。当系统第一次运行时,压力传感器采集到的系统此时的出口压力,将此出口压力与事先设定好的出口压力值进行比较,整个系统通过对以上比较后的差值,利用CSO算法对kp,ki,kd三个参数进行整定,输出控制效果最佳的参数值。
空压机的比功率是衡量空压机的能耗指标,是产生一个立方的压缩空气所要消耗的能耗,相同压力下空压机的比功率越小则越省电。比功率公式为
比功率=总功率/排量
(6)
总功率为:电机的输入功率
总功率=电参数×1×电动机功率因素
(7)
排量=1129×10-8×喷嘴直径×喷嘴系数×进气温度×
(8)
式中 1129×10-8为常数,喷嘴直径根据表格可查得,喷嘴系数一般取0.95。
为了计算出比功率的值,需要对空压机系统中的进气温度、排气温度、水注高、大气压、电参数进行测量。本文分别对改造前后的37 kW/8 kg和22 kW/8 kg两种型号的螺杆空压机进行实验。所需参数的测量值如表1所示。
表1 准备工作的数据测量
本文测试出两种不同型号的螺杆空压机改进前后在相同工况下的比功率,每台空压机一年的耗电量为:实际功率×每天工作时间×使用天数,本文以一年工作250天,每天工作8 h为例,推算出每台螺杆机一年的耗电量。如表2所示。
表2 改造前后对比表
测试结果表明,改进后的螺杆空压机比功率低于改进前的螺杆空压机比功率,因此相比改进前的螺杆空压机,改进后的螺杆空压机节能效果更佳。
5 结 论
普通螺杆空压机空载和负载两种运行状态易造成运行不稳定、波动较大和浪费过多功率两种问题,因此本文以更加节能的永磁变频螺杆空压机为例,研究其系统的控制算法发现,传统的PLC控制效果不佳,为了提高其系统的控制效果,本文利用改进的CSO算法对PID参数进行整定,并将这种CSO-PID算法应用到PLC控制器中,实现了对复杂高阶的空压机系统的有效控制,提升了系统的稳定性,从而使空压机系统更加安全可靠。经过实际测试,相比改进前的螺杆空压机,改进后的螺杆空压机控制性能更加优秀,节能效果更佳。