您好,欢迎访问三七文档
模糊控制技术模糊控制器设计实例•考虑右图液位系统的模糊控制器设计。上水箱下水箱倒锥形容器V1V2泵测量装置p模糊控制器操作台h•受控对象:倒锥形容器的液位高度h•检测装置:测量容器底部压力来间接测量液位•执行机构:为保持液位高度h为设定值,控制进水电磁阀V1的开启度,因此系统的执行机构就是电磁阀V1•模糊控制器:从硬件角度看,是计算机控制系统;从软件角度看,应设计合适的模糊控制算法。•为简单起见,假设电磁阀V1的开启度与进水量间呈线性关系。•注意:受控对象是倒锥形容器,其液位高度h和进水量Q间的关系不是线性关系,且有实质性,因此是较为复杂的控制对象。此类控制对象采用模糊控制器是可取的方案。1.首先确定模糊控制器结构。为得到良好的控制性能,观测液位误差e和误差变化ec,控制量只有一个——电磁阀V1的开启电压u。因此,模糊控制器采用两输入单输出的二维结构。2.确定语言变量。需要确定的语言变量有3个:误差e、误差变化ec和输出控制电压u。①设液位给定高度hd,实际高度h,则液位误差e=hd-d,取其语言变量为E,论域X={-3,-2,-1,0,+1,+2,+3},论域上模糊子集是Ai(i=1,2,…,7),相应语言值为{正大(PB),正中(PM),正小(PS),零(Z),负小(NS),负中(NM),负大(NB)}。分别表示当前水位h相对设定值hd为:“极低”、“很低”、“偏低”、“正好”、“偏高”、“很高”、“极高”。②系统液位误差前后两次采样值变化量是ec=e2-e1=(hd-h1)-(hd-h2)=h2-h1,取其语言变量为EC,论域Y={-3,-2,-1,0,+1,+2,+3},论域上的模糊子集是Bj(j=1,2,3,…,5),相应语言值为{正大(PB),正小(PS),零(Z),负小(NS),负大(NB)}。分别表示当前水位变化h2-h1为:“快速上升”、“上升”、“不变”、“下降”、“快速下降”。③系统输出控制量u,取其语言变量为U,论域Z={-3,-2,-1,0,+1,+2,+3},论域上模糊子集是Ck(k=1,2,3,…,7),相应语言值为{正大(PB),正中(PM),正小(PS),零(Z),负小(NS),负中(NM),负大(NB)}。分别表示控制执行机构动作为:“发水位高限报警,并全关闭阀门V1”、“阀门V1开度减小量大”、“阀门V1开度减小量小”、“阀门V1开度不变”、“阀门V1开度增加量小”、“阀门V1开度增加量大”、“发水位低限报警,并阀门V1开度为最大”。3.确定语言值隶属度函数。对上面各语言之给定其模糊化的隶属度函数,这里为简单起见选择三角形函数。0123-1-2-30.1ZPSPMPBNSNMNBA1A2A3A4A5A6A7e(a)0123-1-2-30.1ZPSPMPBNSNMNBC1C2C3C4C5C6C7u(c)Z0123-1-2-30.1ZPSPBNSNBB1B2B3B4ec(b)YB5④建立模糊控制规则1)IfE=PBandEC=NBorNSorZthenU=NB2)IfE=PBandEC=PBorPSthenU=NM3)IfE=PMandEC=NBorNSthenU=NB4)IfE=PMandEC=PBthenU=NS5)IfE=PMandEC=PSorZthenU=NM6)IfE=PSandEC=NBthenU=NM7)IfE=PSandEC=NSorZthenU=NS8)IfE=PSandEC=PBorPSthenU=Z9)IfE=ZandEC=NBorNSthenU=NS10)IfE=ZandEC=PBorPSthenU=PS11)IfE=ZandEC=ZthenU=Z12)IfE=NSandEC=NBorNSthenU=Z13)IfE=NSandEC=ZorPSthenU=PS14)IfE=NSandEC=PBthenU=PM15)IfE=NMandEC=NBthenU=PS16)IfE=NMandEC=ZorNSthenU=PM17)IfE=NBandEC=NSorNBthenU=PM18)IfE=NMandEC=PBorPSthenU=PB19)IfE=NBandEC=ZorPSorPBthenU=PBEAiUCkECBjA1PBA2PMA3PSA4ZA5NSA6NMA7NBB1PBNMC6R2NSC5R4ZC4R6PSC3R10PMC2R14PBC1R18PBC1R19B2PSNMC6R5PSC3R13B3ZNBC7R1NSC5R7ZC4R11PMC2R16B4NSNBC7R3NSC5R9ZC4R12PMC2R17B5NBNMC6R6PSC3R15⑤确定模糊关系Rl计算模糊关系R,为计算方便起见,先将由图给出的模糊隶属度函数以矢量形式表示,列成表。并以计算R1为例。μA(x)等级E-3-2-10+1+2+3PBA100000.300.651PMA20000.30.6510.6PSA3000.30.6510.650.3ZA400.30.6510.650.30NSA50.30.6510.650.300NMA60.610.650.3000NBA710.650.30000模糊集合A的隶属度函数μB(x)等级EC-3-2-10+1+2+3PBB10000.250.50.751PSB2000.30.6510.70.4ZB300.30.6510.650.30NSB40.40.710.650.300NBB510.750.50.25000模糊集合B的隶属度函数μC(x)等级U-3-2-10+1+2+3PBC100000.300.651PMC20000.350.6510.7PSC3000.350.6510.70.4ZC400.30.6510.650.30NSC50.40.710.650.3500NMC60.710.650.35000NBC710.650.30000模糊集合C的隶属度函数00000.30.65100000.30.6565.00000.30.33.0000000000000000000000000.30.651165.03.0000)(71000000=,0,0,0 , ,CARA在求RB1之前先求出“并集”jjB5300.30.65110.75154353,,,,,,BBBBjj000000.65000000.30.653.00000.30.6556.00000.30.65100000.30.65100000.30.6575.00000.30.6510.30.65103.065.01175.01)(7531000=,0,0,0 , ,CBRjjB同样可求得RAl和RBl(l=2,3,…,19),并按求得和BllBAllARRRR19119100.30.350.650.65110.30.350.650.651110.40.650.651117.00.650.71110.70.650.71110.650.650.41110.650.650.30.3110.650.60.350.30RA1111110.70.750.750.750.750.750.757.010.7110.6517.011111110.710.65110.710.70.750.750.750.750.750.751111111RB则总的模糊关系按BARRR求得00.30.350.60.6510.70.30.350.650.650.750.757.00.40.650.6510.6517.00.650.71110.70.650.710.6510.650.650.40.70.750.750.650.650.30.3110.650.60.350.30RRRBA⑥模糊推理和解模糊在求得所设计模糊控制器的模糊关系R以后,可以由合成推理方法求解输出控制量模糊值矢量。设系统当前偏差是e*和偏差变化是ec*,则对于第l条规则的输出控制量为19,...,2,1lRecReUllB*A*l因此控制器总的输出量是l191ll191lUUU也可以写成llllB191l*A191l*B*A*191ll191lRecReRecReUU即得到B*A*RecReU1)当e*=NS(负小),即系统水位实际高度h比给定值hd略微高一点,而ec*=PS(正小),即系统水位稍有增高趋势,则这时的控制量应该是0.70.7110.650.650.6510.7110.710.70.71110.650.650.651111110.70.750.750.750.750.750.757.010.7110.6510.711111110.710.65110.710.70.750.750.750.750.7575.011111110.40.710.650.30000.30.350.60.65110.30.350.650.651110.40.650.651110.70.650.71110.70.650.71110.650.654.01110.650.650.33.0110.650.60.350.30000.30.6510.653.0RecReUB*A*对于上面得到的控制器输出模糊矢量30.720.71101165.0265.0365.0U由于具有两个相邻的隶属度最大值,因此采用最大隶属度法解模糊时,取它们的平均值为)(5.0210u*等级从图c可知:此时模糊控制器的输出u*值对应于子集C4或C3(即Z或PS),使阀门V1开度暂时不变或作少量的减小。2)当e*=NS(负小),即系统水位实际高度h比给定值hd略微高一点,而ec*=PB(正大),即系统水位仍有很快增高趋势,则这时的控制量应该是0.71110.650.650.651111110.70.71110.650.650.651111110.70.750.750.750.750.750.757.010.7110.6510.711111110.710.65110.710.70.750.750.750.750.7575.0111111110.750.50.2500000.30.350.60.65110.30.350.650.651110.40.650.651110.70.650.71110.70.650.71110.650.654.01110.650.650.33.0110.650.60.350.30000.30.6510.653.0RecReUB*A*对于上面得到的控制器输出模糊矢量30.7211101165.0265.0365.0U由于具有多个相邻的隶属度最大值,因此采用最大隶属度法解模糊时,取它们的平均值为)(13210u*等级从图c可知:此时模糊控制器的输出u*值对应于子集C3(即PS),使阀门V1开度作少量的减小。•比较1)和2)两种情况,液位系统的水位误差均为e*=NS(负小),即系统水位实际高度h比给定值hd略微高一点;同时,误差变化ec*的情况略有不同,前者是ec*=PS(正小),系统水位稍有增高趋势;而后者是ec*=PB(正大),系统水位有很快增高的动向。•因此模糊控制器经过模糊推理和解模糊的结果,其输出控制策略也有不同:•针
本文标题:模糊控制器设计实例
链接地址:https://www.777doc.com/doc-4442358 .html