三、模糊控制系统原理与结构(一)模糊控制的基本原理模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,它是从行为上模仿人的模糊推理和决策过程的一种智能控制方法。该方法首先将操作人员或专家经验编成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化后的信号作为模糊规则的输入,完成模糊推理,将推理后得到的输出量加到执行器上。模糊控制原理框图模糊控制器(FuzzyController—FC)也称为模糊逻辑控制器(FuzzyLogicController—FLC),由于所采用的模糊控制规则是由模糊理论中模糊条件语句来描述的,因此模糊控制器是一种语言型控制器,故也称为模糊语言控制器(FuzzyLanguageController—FLC)。模糊控制系统的主要部件是模糊化处理单元、知识库(含数据库和规则库)、推理决策单元和精确化(清晰化)处理单元。模糊控制器应该具备下列三个重要功能:1)把输入的精确量转化为模糊量(模糊化处理单元、数据库。)2)对模糊量由给定的规则进行模糊推理(规则库、推理决策单元)。3)把推理结果的模糊输出量转化为实际系统能够接受的精确量(精确化处理单元)。(二)模糊控制器的构成模糊控制器的组成框图1.模糊化接口(Fuzzyinterface)模糊控制器的输入必须通过模糊化才能用于控制输出的求解,因此它实际上是模糊控制器的输入接口。它的主要作用是将真实的确定量输入转换为一个模糊矢量。对于一个模糊输入变量e,其模糊子集通常可以作如下方式划分:•(1):{负大,负小,零,正小,正大}={NB,NS,ZO,PS,PB}•(2):{负大,负中,负小,零,正小,正中,正大}={NB,NM,NS,ZO,PS,PM,PB}•(3):{负大,负中,负小,负零,正零,正小,正中,正大}={NB,NM,NS,NZ,PZ,PS,PM,PB}用三角型隶属度函数表示如图所示。模糊子集和模糊化等级2.知识库(KnowledgeBase—KB)知识库由数据库和规则库两部分构成。(1)数据库(DataBase—DB)数据库存放的是所有输入、输出变量的全部模糊子集的隶属度矢量值(即经过论域等级离散化以后对应值的集合),若论域为连续域则为隶属度函数。在模糊推理时,向推理机提供数据。(2)规则库(RuleBase—RB)模糊控制器的规则是基于专家知识或手动操作人员长期积累的经验,它是按人的直觉推理的一种语言表示形式。模糊规则通常有一系列的关系词连接而成,如if-then、else、also、and、or等。例如,某模糊控制系统输入变量为(误差)和(误差变化),它们对应的语言变量为E和EC,可给出一组模糊规则:R1:IFEisNBandECisNBthenUisPBR2:IFEisNBandECisNSthenUisPM通常把if…部分称为“前提部,而then…部分称为“结论部”,其基本结构可归纳为IfAandBthenC,其中A为论域U上的一个模糊子集,B是论域V上的一个模糊子集。•规则库是用来存放全部模糊控制规则的,在推理时为“推理机”提供控制规则。规则条数和模糊变量的模糊子集划分有关,划分越细,规则条数越多,但并不代表规则库的准确度越高,规则库的“准确性”还与专家知识的准确度有关。3.推理与解模糊接口(InferenceandDefuzzy-interface)推理是指模糊控制器根据输入模糊量、模糊控制规则,进行模糊推理来求解模糊关系方程,获得模糊控制量。在模糊控制中,考虑到推理时间,通常采用运算较简单的推理方法,最基本的有Zadeh近似推理。推理所获得的结果仍是一个模糊矢量,不能直接用来作为控制量,还必须作一次转换,求得清晰的控制量输出,即为解模糊。通常把输出端具有解模糊转换功能作用的部分称为解模糊接口。•综上所述,模糊控制器实际上就是依靠微机(或单片机)来构成的,它的绝大部分功能都是由计算机程序来完成的。随着专用模糊芯片的研究和开发,也可以由硬件逐步取代各组成单元的软件功能。四、模糊控制系统的设计(一)模糊控制器的设计步骤1、定义输入输出变量首先要决定受控系统有哪些输入的状态必须被监测和哪些输出的控制作用是必须的,如模糊温度控制器就必须定义系统的温度为输入变量,而把加热操作量作为输出变量。2、定义所有变量的模糊化条件根据受控系统的实际情况,决定输入变量的测量范围和输出变量的控制作用范围,以进一步确定每个变量的论域,然后再安排每个变量的语言值及其相对的隶属度函数。3、设计控制规则库这是一个把专家知识和熟练操作工的经验转换为用语言表达的模糊控制规则的过程。4、设计模糊推理结构这一部分可以在通用计算机或单片机上用不同推理算法的软件程序来实现,也可采用专门设计的模糊推理硬件集成电路芯片来实现。5、选择精确化方法为了得到确切的控制值,就必须对模糊推理获得的模糊输出量进行转换,这个过程称作精确化处理。这实际上是要在一组输出量中找到一个有代表性的值。常用的精确化方法有三种:(1)最大隶属度法选取推理结果模糊集合中隶属度最大的元素作为输出值,即,。如果在输出中,其最大隶属度对应的输出值多于一个,则取所有具有最大隶属度输出的平均值,即:N为具有相同最大隶属度输出的总数。NiivNv101))((maxvvvVvi)(max0vvvVv最大隶属度法不考虑输出隶属度函数的形状,只考虑最大隶属度处的输出值。因此,难免会丢失许多信息。它的突出优点是计算简单,在一些控制要求不高的场合,可采用最大隶属度法。(2)重心法为了获较准确的控制量,就要求能较好地表达输出隶属度函数的计算结果。重心法是取隶属度函数曲线与横坐标围成面积的重心为模糊推理的最终输出值,即VvVvdvvdvvvv)()(0对于具有m个输出量化级的离散域情况与最大隶属度法相比较,重心法具有更平滑的输出推理控制。即使对应于输入信号的微小变化,输出也会发生变化。mkkvmkkvkvvvv110)()((3)加权平均法加权平均法,输出值由下式决定其中系数的选择根据实际情况而定。不同的系数决定系统具有不同的响应特性。当系数取隶属度时,就转化为重心法。miimiiikkvv110ikik)(iVv精确化方法的选择与隶属度函数形状的选择、推理方法的选择相关。(二)模糊控制器的常规设计方法常规模糊控制器如下图所示:常规模控制器图中的模糊集。由模糊逻辑推理可知,对于条模糊控制规则可以得到个输入输出关系矩阵,从而由模糊规则的合成算法可得系统总的模糊关系矩阵为模糊化模糊逻辑决策精确化edeEDEuUudeeUDEE控制量、误差变化、为误差、、nnnRRR,,,21niiRR1•当论域为离散时,经过量化后的输入量的个数是有限的。可以针对输入情况的不同组合,离线计算出相应的控制量,从而组成一张控制表,实际控制时只要直接查这张控制表即可,在线的运算量是很少的。•这种离线计算、在线查表的模糊控制方法比较容易满足实时控制的要求。下图所示为论域为离散时的模糊控制系统的结构。以水位的模糊控制为例,如下图所示。设有一个水箱,通过调节阀可向内注水和向外抽水。设计一个模糊控制器,通过调节阀门将水位稳定在固定点附近。按照日常的操作经验,可以得到基本的控制规则:“若水位高于O点,则向外排水,差值越大,排水越快”;“若水位低于O点,则向内注水,差值越大,注水越快”。根据上述经验,按下列步骤设计模糊控制器:(三)模糊控制系统设计举例h水箱液位控制1、确定观测量和控制量(语言变量的选择)定义理想液位O点的水位为h0,实际测得的水位高度为h,选择液位差将当前水位对于O点的偏差e作为观测量,hhhe02、输入量和输出量的模糊化将偏差e分为五级:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。根据偏差e的变化范围分为七个等级:-3,-2,-1,0,+1,+2,+3。得到水位变化模糊表1变化等级隶属度-3-2-10123PB000000.51PS000010.50O000.510.500NS00.510000模糊集NB10.500000表1水位变化划分表控制量u为调节阀门开度的变化。将其分为五级:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。并根据u的变化范围分为九个等级:-4,-3,-2,-1,0,+1,+2,+3,+4。得到控制量模糊划分表2。变化等级隶属度-4-3-2-101234PB00000000.51PS000000.510.50O0000.510.5000NS00.510.500000模糊集NB10.50000000表2控制量变化划分表3、模糊规则的描述根据日常的经验,设计以下模糊规则:(1)“若e负大,则u正大”(2)“若e负小,则u正小”(3)“若e为0,则u为0”(4)“若e正小,则u负小”(5)“若e正大,则u负大”上述规则采用“IFATHENB”形式来描述:(1)ife=NBthenu=PB(2)ife=NSthenu=PS(3)ife=0thenu=0(4)ife=PSthenu=NS(5)ife=PBthenu=NB根据上述经验规则,可得模糊控制表3。表3模糊控制规则表若(IF)NBeNSeOePSePBe则(THEN)PBuPSuOuNSuNBu4、求模糊关系模糊控制规则可以表示为U×V上的模糊子集,即模糊关系R:其中规则内的模糊集运算取交集,规则间的模糊集运算取并集。)NB(PB)NS(PS)O(O)PS(NS)PB(NBRueueueueue5、模糊决策模糊控制器的输出为误差向量和模糊关系的合成:6、控制量的反模糊化Reu仿真:按上述步骤,设计水箱模糊控制的Matlab仿真程序。通过该程序,可实现模糊控制的动态仿真。