发布于 2010-12-13 11:29:28
8楼
注:大部分为摘入或加以修改。
模糊自适应PID 控制器是在常规PID控制器的基础上以偏差E和偏差变化率Ec 作为输入,利用模糊控制规则在线对Kp、Ki、Kd的修改,以满足不同时刻偏差E 和偏差变化率Ec 对PID参数自调整的要求。
模糊控制器是以e 和ec 为输入变量,Kp、Ki、Kd为输出语言变量的双输入三输出的模糊控制器。在运行中通过不断检测e 和ec,查询模
糊控制表得出三个参数Kp、Ki、Kd对P、I、D进行在线修改(得到Kp、Ki、Kd需去模糊化处理,一般采用重心法),以满足不同e 和ec 时对P、
I、D的不同要求,从而使被控对象具有良好的动、静态性能。
模糊控制表的规则:
(1)当e较大时,为使系统具有较好的跟踪性能,应取较大的Kp与较小的Kd,同时为避免系统响应出现较大的超调,应对积分作用加以限制,通
常取Ki=0。
(2)当e处于中等大小时,为使系统响应具有较小的超调,Kp应取得小些。在这种情况下,Kd的取值对系统响应的影响较大,Ki的取值要适当。
(3)当e较小时,为使系统具有较好的稳定性能,Kp与Ki均应取得大些,同时为避免系统在设定值附近出现振荡,Kd值的选择根据ec值较大时
,Kd取较小值,通常Kd为中等大小。
具体控制表制作方式:
另外主要还得根据系统本身的特性和你自己的经验来整定。
注:E是设定值与实际输入变量的差值,Ec是当前偏差与前一偏差值之差
P=KP+KP*(设定的原始值)
I=KI+KI*(设定的原始值)
D=KD+KD*(设定的原始值)
做为PID控制的参数
具体做法如下:
1,输入输出模糊化及隶属函数的建立
偏差e和偏差变化率ec作为模糊运算的输入量,Kp,Ki和Kd模糊运算的输出量。e 和ec 基本论域均设为(-0.6,0.6),输出量Kp,Ki和Kd的基本论域分别设为(-0.3,0.3), (-0.06,0.06)和(-3,3),都划分为7个等级,即(e,ec,Kp,Ki,Kd)={-3,-2,-1,0,1,2,3},对应其模糊集的语言变量均取7个,{NB,NM,NS,Z,PS,PM,PB},其含义依次为:负大,负中,负小,零,正小,正中,正大。各模糊子集均采用三角形作为隶属函数.
e 和ec量化因子为5,Kp比例因子0.1,Ki比例因子0.02,Kd比例因子1。
2,根据模糊规则得出模糊查询表
例如,Kp模糊规则
Kp EC
E NB NM NS Z PS PM PB
NB PB PB PM PM PS Z Z
NM PB PB PM PS PS Z NS
NS PM PM PM PS Z NS NS
Z PM PM PS Z NS NM NM
PS PS PS Z NS NS NM NM
PM PS Z NS NM NM NM NB
PB Z Z NM NM NM NB NB
则其模糊查询表就是将其符号用对应的子集参数代替。
3,查询表格及解模糊
运行中读取E和EC将其模糊化(乘以对应的量化因子),找出表格对应KP,Ki,Kd值,由于受隶属度不同,采用重心法计算最符合的KP,Ki,
Kd值,然后将此值乘以其对应比例因子,就得到我们所需的参数值了,将此值加上设定基准值,送入PID回路进行运算即可。