摘要 针对定量排料控制系统的特点,本文设计了一种参数自整定模糊PID控制器,利用模糊推理的方法,根据不同的误差e和误差变化率ec实现对PID参数Kp、K1、KD的在线自整定。仿真结果表明,该控制器明显地改善了控制系统的动态性能,并且此方法计算量少,易于实现,同时给出了基于CIMPLICITY HMI的实现方法,在企业不增加硬件投资的情况下,提供了一个较好的途径,具有良好的应用前景。
关键词 定量排料控制系统 动态性能 参数自整定
1 引言
随着科学技术的发展和工业水平的提高,定量排料控制系统在冶金、化工、机械等各类工业控制中得到广泛应用,并且在国民经济中占有举足轻重的地位。由于定量排料控制系统具有非线性、大滞后、时变性等特点,很难用数学方法建立精确的数学模型。传统的定量排料控制系统采用经典的PID控制算法,因此很难达到好的控制效果。模糊控制器是近年来发展的很快的新型控制器,它能方便地将专家的经验与推理输入到计算机中,使计算机在控制时可以像人一样思维并解决问题,从而、达到控制被控对象的目的。实践证明模糊控制器有更快的响应和更小的超调,它不依赖于精确的数学模型,对参数的变化不敏感,适应性强,具有很好的鲁棒性,可以克服非线性因素的影响。考虑到模糊控制的这些显著的优点,及其作为当今控制领域的一大发展方向,本文以马钢港务原料厂混匀系统配矿槽定量排料控制系统为例,把模糊控制技术应用到配矿槽定量排料的控制系统中,设计了配矿槽定量排料的模糊控制器,并给出基于MATLAB下的仿真。
2 定量排料控制系统模糊控制器的设计
2.1控制系统的结构
马钢港务原料总厂老混均系统共设有11个混均配矿槽,在混均配矿槽槽下设有圆盘给料机及装有电子皮带秤的给料皮带机。定量排料控制系统由电子皮带配料秤、顺序控制器、电流电压变换器、变频调速控制器及传动电机等组成。定量排料装置按照各自的设定值,排出相应的物料。一般情况下,各混均配矿槽的配矿比设定值由HMI通过PLC系统给出。在混均作业过程中,各定量排料装置将测得的排料量信号、运行状态信号(包括圆盘给料机运行信号和给料皮带机运行信号)和控制异常信号(累积偏差过大)通过PLC送到HMI,计算机对接收到的各个信号进行监视、判断,在确认状态完好无误后,选定所需的定量排料装置,根据本批次原料的总排料量及要求的成分计算各槽的配矿比,按水分率的大小进行水分补正,求出所需的各物料量作为定量排料装置排料量的设定值。另一方面,定量排料装置以HMI给出的排料量设定值为基准,调节设置在混均配矿槽槽下的圆盘给料机和给料皮带机的转速,实现排料量的自动控制。其引入模糊控制算法系统结构框图如图1所示。
2.2模糊控制算法
模糊控制器主要由模糊化接口(fuzzification)、知识库(knowledg base)、模糊推理机(inference engine)、解模糊接口(defuzzification)四部分组成。模糊控制器输入/输出变量的实际论域一般是实数域上的连续论域,而这些变量在模糊控制器内部的论域可以是连续的也可以是离散的,所以模糊控制器可以分成离散论域的模糊控制器D—FC和连续论域的模糊控制器C—FC两大类。
配矿槽定量排料的模糊控制器采用离散论域的模糊控制器D—FC(Decentralized FuzzyControl)
其原理如下图2所示:
图中x是积累排料量设定值,y为定量排料装置的积累排料量测量值,e=y—x是排料量误差,Δe是误差差分,Δet=Δet-1一Δet,u为控制量,它对应着变频调速控制器的频率的变化量。
模糊控制器的控制步骤大体可分为以下几步:
1)输入输出变量论域的离散化
e,Δe,u都是实数域上的连续变量,它们的变化范围分别为:e∈[一30,30]、△e∈[一24,24]、u∈[-36,36],将e变换到离散论域x′={一6,一5,一4,一3,一2,一l,-0,十0,1,2,3,4,5,6}上,将Δe变换到离散
论域y′={一6,一5,一4,一3,一2,一1,0,l,2,3,4,5,6)上,将u变换到离散论域z′={一6,一5,一4,一3,一2,一1,0,1,2,3,4,5,6}上,得到离散论域上的输人输出变量e*,Δe*,u*。
量化因子Ke=0.2,Kc=0.25
2)定义模糊集合及其隶属函数表
对e*定义8个模糊集合E1,E2,…,E8,分别代表PL(正大)、PM(正中)、PS(正小)、PZ(正零)、NZ(负零)、NS(负小)、NM(负中)、NL(负大)。对△e*定义7个模糊集合△El,△E2,…,△E7,分别代表PL(正大)、PM(正中)、PS(正小)、Z(零)、NS(负小)、NM(负中)、NL(负大)。对u*定义7个模糊集合U1,U2,…,U7,分别代表PL(正大)、PM(正中)、PS(正小)、Z(零)、NS(负小)、NM(负中)、NL(负大)。
对e*,△e*,u*的模糊集合分别定义隶属函数,见表1,表2,表3
隶属度
3)设计模糊控制规则集
规则库包含一组模糊控制规则,即以“IF…,THEN··”形式表示的模糊条件语句。总结工程设计人员的技术知识和现场实际操作经验的经验给出52条控制规则,归纳于表4。它的一般式为ife*=Ei andΔe*=ΔEj then u*=Uk(i=1,2…8;j=1,2…7;k=1,2…7)
控制规则的一般式具体写成如下的语句:
R1:if e*=E8 and Δe*=ΔE1then u*=U1
R2:if e*=E7 andΔe*=△E1 then u*=U2
R3:if e*=E6 and Δe*=△E1then u*=U6
……
R50:if e*=E3 and Δe*=△E7then u*=U2
R51:if e*=E2 and Δe*=△E7then u*=U6
R52:if e*=E1 and Δe*=△E7then u*=U7
4)求模糊关系矩阵R和模糊控制表
由于论域是离散的,模糊控制规则集可以表示为一个模糊关系矩阵R:
R= U (Ei×△Ej)×Uk
Vi,j,k
该系统中,R是一个(14×13)×13的大矩阵,占2366个内存单元。具体求解如下:
依此类推,可算出R3、R4……R52,规则库中的52条规则是并列的,它们之间是“或”的逻辑关系,因此整个规则集的模糊关系就可以求出来e*,Δe*,u*
算出R以后,对e*和Δe*设不同的值,例如e*=一6,Δe*=一6,将它们看成是模糊单点,这时的输入是模糊矢量E’=[l,0,0,…,0]T,△E’=[l,0,0,…,0]T,可求出输出模糊矢量U;
U′=(E′×AE′)o R
这里(E′×△E′)是一个14×13的矩阵,将其按行排成矢量(182个元素),再去与R合成。由于(E′×ΔE′)此时只有第一个元素为1,其它元素皆为0,合成后U′即是R的第一行(13个元素)。用最大隶属度法解模糊,U中最大隶属度对应的U′的离散论域值即为此时的输出。再如e*=一4,Δe*=一2,这时的输入是模糊矢量E=[0,0,l,…,O]T,ΔE′=[0,0,0,0,1,…,0]T,(E′×ΔE′)按行排成矢量,此时只有第31个元素为1,其它元素皆为0,合成后U′即是R的第31行(13个元素)。再解模糊,得到输出u*。用同样的方法,对每对输入ei*,Δej*都可求出相应的输出uij*,将它们整理成模糊控制表5所示。
5)实时控制
控制表可离线算出,在实时控制时得到et、Δet后,先变换成离散量et*、Δet*,查表得到ut*,再求出真正的连续控制量U。
输出控制量的比例囚子为Ku=6;
实际的连续控制量U=Ku×u*
模糊控制设计的核心是总结工程设计人员的技术知识和现场实际操作经验,建立合适的模糊规则表,得到针对KP、KI、KD三个参数分别整定的模糊控制表,如表一1,表一2,表一3所示。模糊控制设计的核心是总结工程设计人员的技术知识和现场实际操作经验,建立合适的模糊规则表,得到针对KP、KI、KD三个参数分别整定的模糊控制表,如表一1,表—2,表一3所示。
2.2.3解模糊
为了充分利用模糊控制量所得的信息,本文的解模糊采用加权平均法。
本文将模糊PID应用于定量排料控制系统中。定量排料模型G(s)=6.43e一219.5s/(1759.5s+1)可以近似为一个一阶惯性加延迟环节:G(s)=Ke—τs/(Ts+1)式中K为对象的增益;T为对象的时间常数;T为对象的延迟。由于工业现场存在大量干扰和不确定因数,因此,该传递函数实际上描述的是一个不精确模型,是一个预测模型。
常规的PID控制器具有算法简单、可靠性高以及无静差等优点。其核心是其参数的整定,对于确定性的被控对象通过适当的整定PID的三个参数,可以获得比较满意的控制效果;但对于滞后时变的复杂系统则较难达到预期效果。而模糊自整定PID控制器不必精确地辩识被控对象的数学模型,也不必对被控过程加任何激励信号,就可对PID参数进行整定。由它构成的控制系统运行稳定、有效、可靠。针对常规PID控制器和模糊PID控制器的特点,本文在常规PID控制基础上,采用模糊PID控制器实现对PID参数的最佳调整。系统仿真模型如图2所示:
量化因子Ke、Kec:和比例因子Ku对模糊系统的稳态特性和动态特性均有较大的影响。一般来说,Ke增加,上升时间短,控制作用强,但会出现超调;Kec增加,超调减小,但系统的响应速度变慢,增加Kec可有效抑制超调作用。Ku也影响系统性能,过小则响应变长,过大会导致振荡。因此,当e和ec较大时,Ke、Kec取较小值,Ku取较大值,这样可以保证系统的快速性和稳定性;当e和ec较小时,Ke、Ke c取较大值,Ku减小,这样可以避免超调,使系统尽快进入稳态范围。
图2中的PID控制器是封装好的子系统,其内部模型如图3所示。
3 定量排料控制系统仿真
由于模糊控制器的设计思想是模拟人脑的思考过程,在模糊控制器的设计过程中,对实际经验的依赖很大,要求设计者结合实际经验,选取控制量、设计控制规则。选取的某些控制量和控制规则的效果如何,必须编制大量的程序进行仿真分析,或者是等到控制器完成以后通过实验来观察、验证。显然这两种方法都费时、费力,而且都必须通过反复实验才能确定,实际设计过程中,类似的工作往往占工作量的大部分。针对上面的情况,结合定量排料控制系统的特点,使用MATLAB的模糊控制工具箱和Simulink仿真软件,进行模糊参数自整定PID控制器的设计和动态仿真。
本文利用MATLAB软件对系统进行了仿真,为了更清楚的说明问题,在相同情况下,做一个常规PID控制器的仿真并作比较。图是在正常情况下的阶跃响应曲线。常规PID控制器的仿真模型如图4所示。
上图中,PID控制曲线是按ZieglerNichoIs整定公式得到的初始参数为基础进行参数优选后得到的控制结果,其参数分别为:KP=0.1159,KI=0.0044,KD=0.2333,超调量为439303(约为1098%),调节时间约为1215分钟,稳态误差约为1.8*10-3。由图可见,响应曲线的超调很大,动态特性较差。模糊控制曲线的超调为0,调节时间约为122分钟,稳态误差约为-4.53311.8*10-5。
从仿真结果可见,可以明显看出模糊PID控制器在模型不确定的情况下的控制效果明显优于常规PID控制器。动静态性能方面都优于PID控制器,其超调量小、调节时间短,比无超调的PID控制器提前20分钟进入稳态,控制效果好。
4 基于CIMPLICITY HMI定量排料控制系统模糊控制的实现方法
4.1系统实现结构框图
4.2模糊控制算法的实现方法
Cimplicity HMI提供了许多编辑器来完成其强大的功能,VB Script编辑器是Cimplicity HMI向用户提供的一个扩展系统功能接口,用户可以在这里用VB Script语言编写函数,这些函数可在工程中被调用。将模糊控制算法嵌入Cimplicity HMI的工作主要就是在这里完成。下面编辑Cimplicity动作,用它来实现模糊控制算法,在Cimplicity中可以给动作增加触发器,一旦满足了触发条件,动作就能够自动执行,部分源程序如下:
Sub OnExpressionUpdate(exprValue As Variant)
Status=PointGet(”ACT—STATUS”)
ctrlmode=PointGet(”ACT_CTRLMODE”)
If(status=1)And(ctrlmode=1)Then
/*定义控制查询表和中间计算变量,略*/
/*从Cimplicity中获取控制算法计算所需要的变量*/
ke=PointGet(”E”)
kc=PointGet(”EC”)
ku=PointGet(”KU”)
sp=PointGet(”ACT_SP”)/*获取被控参数设定值*/
y=PointGet(”ACT_PV”)/*获取被控参数测量值*/
u=PointGet(”ACT_MV”)/*获取前一时刻控制输出值*/
el=sp—y
e2=PointGet(”E2”)、
Δe=el-e2
/*将e和Δe模糊化*/
If(e1<一30 or el>30)Then e*=0
If(一30<=e1<=30)Then e*=ke*e1
If(Δe<一24 orΔe>24)Then Δe*=0
If(一24<=Δe<=24)ThenΔe*=kc*Δe
/*通过查询表得到输出u的量化值u*,根据比例因子计算控制输出*/
u—ku*u*
/*将控制输出传给Cimplicity“/
u—PointGet(”ACT MV”)
el—PointGet(”E2”、
End If
End Sub
在具体实现过程中,我们可以设置了status和ctlmode两个状态字,通过这两个状态字来区分仪表PD控制、模糊控制和手动控制,其逻辑关系如表5—6所示
此外为了能够在模糊控制和手动控制之间进行无扰切换,还必须由Cimplicity HMI对两个控制信号进行同步。这样就实现了仪表PD控制、模糊控制和手动控制之间的切换,满足了实际生产的需求。
5 结论
在工业过程中,带有滞后的对象很普遍,仅采用PID控制和简单Fuzzy控制较难获得令人满意的控制效果,本文提出一种模糊自调整PID控制,并将它应用于定量排料控制系统,通过在Matlab的Simulink环境下仿真,能获得较满意的控制特性。因此,模糊参数自调整PID控制不失为对大滞后对象进行控制的一种好方法。同时给出了基于CIMPLICITY HMI的实现方法,在企业不增加硬件投资的情况下,提供了一个较好的途径,具有良好的应用前景。