模糊控制技术模糊控制器设计实例•考虑右图液位系统的模糊控制器设计。上水箱下水箱倒锥形容器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⑥模糊推理和解模糊