1、4 模糊控制技术信息学院杨为民二一一年九月现代过程控制基础4.1 模糊控制系统4.2 模糊控制器的设计4.3 模糊控制器的实现4.4 模糊控制器设计举例4 模糊控制技术 模糊控制系统的结构与一般计算机控制系统基模糊控制系统的结构与一般计算机控制系统基本相似,通常由模糊控制器、输入输出接口、广本相似,通常由模糊控制器、输入输出接口、广义被控对象和测量装置四个部分组成,如图义被控对象和测量装置四个部分组成,如图4-14-1所示。所示。4.1 模糊控制系统4.1.1 4.1.1 模糊控制系统的组成模糊控制系统的组成图4-1 模糊控制系统的组成结构图4.1 模糊控制系统 给定值与被控制量之间的偏差为模
2、糊控制器的输入量。这是给定值与被控制量之间的偏差为模糊控制器的输入量。这是一个精确量,为了增强系统控制能力,方便调节控制性能,同一个精确量,为了增强系统控制能力,方便调节控制性能,同时也为模糊化处理做准备,对精确量进行量化,然后经过模糊时也为模糊化处理做准备,对精确量进行量化,然后经过模糊化处理转化为模糊量,用相应的模糊子集表示。再由和模糊控化处理转化为模糊量,用相应的模糊子集表示。再由和模糊控制规则(即模糊关系),根据推理的合成规则进行模糊决策,制规则(即模糊关系),根据推理的合成规则进行模糊决策,得到模糊控制量。由于实际被控对象的控制量是精确量,因此得到模糊控制量。由于实际被控对象的控制量
3、是精确量,因此需要将模糊控制量进行反模糊化处理变成精确量,再经过输出需要将模糊控制量进行反模糊化处理变成精确量,再经过输出量化处理得到实际输出值,经过量化处理得到实际输出值,经过D/AD/A转换变为精确的模拟量送转换变为精确的模拟量送到执行机构对被控对象进行控制。这样周而复始的循环下去,到执行机构对被控对象进行控制。这样周而复始的循环下去,就实现了被控过程的模糊控制。就实现了被控过程的模糊控制。4.1.2 模糊控制系统的工作过程模糊控制系统的工作过程 模糊控制器的控制规律是由计算机的程序实现的,具模糊控制器的控制规律是由计算机的程序实现的,具体步骤如下:体步骤如下:4.1 模糊控制系统(1 1
4、)根据本次采样值得到模糊控制器的输入量,并进行输)根据本次采样值得到模糊控制器的输入量,并进行输入量化处理;入量化处理;(2 2)量化后的变量进行模糊化处理,得到模糊量;)量化后的变量进行模糊化处理,得到模糊量;(3 3)根据输入的模糊量及模糊控制规则,按模糊推理合成)根据输入的模糊量及模糊控制规则,按模糊推理合成规则计算控制量(输出的模糊量);规则计算控制量(输出的模糊量);(4 4)对得到的模糊输出量进行反模糊化处理,得到控制量)对得到的模糊输出量进行反模糊化处理,得到控制量的精确量,并进行输出量化处理,得到实际控制量。的精确量,并进行输出量化处理,得到实际控制量。4.1.3 模糊控制器的
5、结构模糊控制器的结构4.1 模糊控制系统 模糊控制器的输入变量一般选为偏差及其变化率,输出模糊控制器的输入变量一般选为偏差及其变化率,输出变量通常为作用于被控对象的控制量。输入变量的个数称变量通常为作用于被控对象的控制量。输入变量的个数称为模糊控制器的维数,根据输入变量的个数不同,模糊控为模糊控制器的维数,根据输入变量的个数不同,模糊控制器一般有三种结构,如图制器一般有三种结构,如图4-24-2所示。所示。(a)一维模糊控制器(b)二维模糊控制器(c)三维模糊控制器图4-2 基本模糊控制器的几种结构模糊控制器t ddeuececcdtd模糊控制器et dduec4.1 模糊控制系统4.1.3.
6、1 一维模糊控制器 控制器输入和输出语言变量只有一个,其模糊控制规则的形式为:R1:如果e是E1,则u是U1;R2:否则如果e是E2,则u是U2;R3:否则如果e是E3,则u是U3;.Rn:否则如果e是En,则u是Un;4.1 模糊控制系统4.1.3.2 二维模糊控制器输入变量为两个,而控制的输出变量为一个,被控对象为单输入单输出系统。控制器的模糊规则为:R1:如果e是E1和de是DE1,则u是U1;R2:如果e是E2和de是DE2,则u是U2;R3:如果e是E3和de是DE3,则u是U3;.Rn:如果e是En和de是DEn,则u是Un;二维模糊控制器考虑到系统的误差和误差变化,控制性能明显优
7、于一维模糊控制器。(3)、多维模糊控制器应用于更高的控制场合4.2 模糊控制器的设计4.2.1 模糊控制的基础知识模糊控制的基础知识4.2.1.1 4.2.1.1 模糊集合与隶属函数模糊集合与隶属函数 模糊控制器是一种模拟人的思维推理过程的控制器,采用模糊控制器是一种模拟人的思维推理过程的控制器,采用语言变量来描述输入输出数据。语言变量是自然语言中的词或语言变量来描述输入输出数据。语言变量是自然语言中的词或句,它的取值不是通常的数,而是用如长、短、大、小、年轻、句,它的取值不是通常的数,而是用如长、短、大、小、年轻、年老等模糊语言表示的模糊集合。年老等模糊语言表示的模糊集合。例如,将例如,将“
8、青年青年”看作是一个集合,则它就是一个模糊集看作是一个集合,则它就是一个模糊集合。若认为小于合。若认为小于4040岁的人可称为岁的人可称为“青年青年”,那么,那么3535岁的人应毫岁的人应毫无疑问地属于无疑问地属于“青年青年”,如果对此加以量化,则可设其属于,如果对此加以量化,则可设其属于“青年青年”的程度为的程度为1 1,3939岁的人属于岁的人属于“青年青年”的程度为的程度为0.70.7,4040岁的人属于的程度为岁的人属于的程度为0.50.5,4141岁的人属于的程度为岁的人属于的程度为0.30.3等等。这等等。这种属于的程度值可在种属于的程度值可在0 01 1之间连续变化,称为隶属度函
9、数(也之间连续变化,称为隶属度函数(也叫隶属函数)。叫隶属函数)。4.2 模糊控制器的设计 用大写字母 表示模糊集合,用 表示隶属函数,中的元素用 表示,则 表示 元素属于模糊集合 的程度。AAxAx)(xA 定义:所谓给定论域 上的一个模糊集合 是指 都存在一个数 与 对应,这个数叫做 对 的隶属度,即存在映射UAUx 1,0)(xAxxA 1,0:UA)(xxA 隶属度表示了 隶属于模糊集合 的程度,当 为有限集合 时,可以采用下面的表达方法表示模糊集合。xAU,21nxxxnnAAAxxxxxxA)()()(2211式中,并不表示分数,而是表示论域中的元素 与其隶属度 之间的对应关系;“
10、”也不表示“求和”,而是表示模糊集合在论域上的整体。iiAxx)(ix)(iAx4.2.1.2 几种典型的隶属函数(1)高斯型隶属函数222)(),;(cxecxf图4-3 高斯型隶属函数4.2 模糊控制器的设计4.2 模糊控制器的设计(2)S形隶属函数)(11),;(cxaecaxf图4-4 S形隶属函数(3)梯形隶属函数xddxccdxdcxbbxaabaxaxdcbaxf010),;(图4-5 梯形隶属函数4.2 模糊控制器的设计4.2 模糊控制器的设计(4)三角形隶属函数xccxbbcxcbxaabaxaxcbaxf00),;(图4-6 三角形隶属函数4.2 模糊控制器的设计(5)Z形
11、隶属函数bxbxbaabxbbaxaabaxaxbaxf02)(22)(211),;(22图4-7 Z形隶属函数4.2 模糊控制器的设计4.2.1.3 隶属函数的确定方法(1)模糊统计法 隶属函数可以通过模糊统计试验方法来确定。即根据所提出的模糊概念进行调查统计,提出与之对应的模糊集合 ,通过统计实验,确定不同元素属于 的程度,如下式所示。AANAxAx试验总次数的次数的隶属度对00(2)例证法AUA(3)专家经验法 专家经验法就是根据专家的实际经验,再加上必要的数学处理而得到隶属函数的方法。例证法的主要思想是从已知有限个 的值来估计论域 上的模糊集合 的隶属函数。4.2 模糊控制器的设计4.
12、2.2 论域的确定及输入输出量化论域的确定及输入输出量化 所谓论域就是被考虑客体所有元素的集合。在模糊控制系统中,把模糊控制器的输入变量偏差 及其变化率 的实际范围称为这些变量的基本论域。基本论域内的量为精确量,需要对它们进行量化处理。eec 在实际控制系统中,需要通过所谓量化因子进行量化处理,实现论域变换。量化因子的定义为:eeeabnk22ecececmkba 对于系统输出量,基于量化因子的概念,定义为其比例因子:labkuuu24.2 模糊控制器的设计 模糊控制器的量化因子和比例因子对系统的控制品质有很大的影响。从理论上讲,增大,相当于缩小了偏差的基本论域,增大了偏差变量的控制作用。因此
13、,量化因子 选得越大,系统超调越大,过渡过程时间越长,但稳态控制精度高;变小,可减小超调,但会增大系统稳态误差。量化因子 对系统超调的抑制作用十分明显,选择较大时,超调量减小,但会减慢系统响应速度。输出比例因子 的大小也影响模糊控制的特性。选择过小会使系统动态响应过程变长,而 选择过大会导致系统振荡。ekekekeckeckukuk4.2 模糊控制器的设计4.2.3 模糊化处理模糊化处理 模糊控制器的输入数据都是精确量,而模糊控制器是采用人的思维,也就是语言规则进行推理,因此需要将输入数据(如温度910)变换成语言值(如温度“低”、“中”、“高”),这个过程称之为模糊化的过程。对输入数据进行模
14、糊化处理是模糊控制器设计必不可少的一步。4.2.3.1 确定输入输出变量的模糊集合 模糊控制器中常用正大、正中、正小、零、负小、负中、负大等模糊语言描述输入的偏差。因此,若将“偏差”看成是一个模糊语言变量,则它的取值不是具体的偏差大小,而是诸如“正大”、“正小”、“负中”、“零”等用模糊语言表示的模糊集合。一个模糊集合通常有三种等级划分方法:(1)负大,负小,零,正小,正大五个等级;(2)负大,负中,负小,零,正小,正中,正大七个等级;(3)负大,负中,负小,零负,零正,正小,正中,正大八个等级。4.2 模糊控制器的设计4.2.3.2 确定隶属函数 输入变量偏差、偏差变化率和输出控制量的模糊集
15、合以及论域确定后,需要确定模糊语言变量的隶属函数。一般是根据专家经验或统计分析结果进行确定。4.2.3.3 模糊化处理 所谓模糊化,就是根据模糊集合的隶属函数,对输入的数值找出相应的隶属度的过程。在确定模糊变量隶属函数以后,就可以根据所选择的隶属函数确定论域内元素对模糊语言变量的隶属度值,即所谓对模糊变量赋值。4.2 模糊控制器的设计4.2.4 模糊控制规则的建立与模糊推理模糊控制规则的建立与模糊推理4.2.4.1 模糊控制规则的建立 模糊控制规则是模糊控制的核心,因此,如何建立模糊控制规则是至关重要的问题。模糊控制规则的生成大致有四种方法:(1)根据专家经验或过程知识生成控制规则;(2)根据
16、过程模糊模型生成控制规则;(3)根据对手工控制操作的系统观察和测量生成控制规则;(4)根据学习算法生成控制规则。实际工程中,通常采用第一种方法来确定控制规则,并在试验过程中不断进行修改和完善。规则的形式常采用类似于计算机程序设计语言的条件语句:thenif4.2 模糊控制器的设计 将模糊控制器的输入量转化为模糊量功模糊逻辑决策系统用,每一条模糊规则可以求出一个模糊关系R。模糊逻辑决策器根据控制规则决定的模糊关系R,应用模糊逻辑推理算法得出控制器的模糊输出控制量,最后精确化输出。对于n条模糊控制规则可以得到输入输出关系矩阵R1,R2,.,Rn,从而有模糊规则的合成算法可得到总的模糊关系矩阵为:4
17、.2.4.2 模糊推理iniRUR1对于任一系统误差 和系统误差变化 ,其对应的模糊控制器输出 为:iEjDEijCRDEECjiij)(通过上面的公式计算出模糊控制量 ,但是计算量非常的大,一般采用查表法ijCk1k2量化量化模糊控制表k3对象edexyzuT+图4-8 控制表方式的模糊控制逻辑控制器结构图4.2 模糊控制器的设计4.2 模糊控制器的设计4.2.5 反模糊化处理反模糊化处理 通过模糊推理得到的结果仍然是一个模糊量,但实际应用中,控制或驱动执行机构需要的是精确量。因此要将模糊量转换为精确量,这一过程称为反模糊化。从工程应用的角度看,需要使用代表性好、算法简单的反模糊化方法。(1
18、)最大隶属度法 这种方法最简单,在输出模糊集合中取隶属度最大的作为精确值输出:(2)重心法所谓重心法就是取输出模糊集合隶属函数曲线与横坐标轴围成面积的重心相应的输出作为输出的精确值。Vvvvv )(max0VvVvdvvdvvvv)()(0mkkvmkkvkvvvv110)()(或4.2.6 以温度控制系统的模糊控制器设计为例,说明设计步骤:(1)确定模糊控制器的输入、输出变量deTTed以及误差变化输入语言变量控制加热装置的供电电压u输出语言变量()确定个输入、输出变量的变化范围、量化等级和量化因子k1、k2、k3取三个语言变量的量化等级为9级,即x,y,z=-4,-3,-2,-1,0,1,
19、2,3,4。误差e的论域为-150,150。误差变化de的论域为-50,50。控制输出u的论域为-64,64。则各比例因子为:K1=4/150,k2=4/50,k3=64/4(3)在各输入和输出语言变量的量化域内定义模糊子集首先确定各语言变量论域内的模糊子集的个数。这里取5个模糊子集,即PB、PS、ZE、NS、NB。各模糊子集通过隶属度函数来定义。为提高稳态点控制的精度,量化方式采用非线性量化。4.2 模糊控制器的设计4.2 模糊控制器的设计误差e-150-90-30-100103090150误差率de-50-30-15-505153050控制v-64-16-4-20241664量化等级-4-
20、3-2-101234状态变量相关的隶属度函数PB00000000.351PS000000.410.40ZE0000.210.2000NS00.410.400000NB10.350000000模糊集的隶属度函数4.2 模糊控制器的设计(4)模糊控制规则的确定 模糊控制规则的实质是将操作员的控制经验加以总结而得出一条条模糊条件语句的集合。确定模糊控制规则的原则是必须保证控制器的数出能够使系统输出响应的动静态特性达到最佳。设控制系统的响应曲线如下图:TTd0t12345考虑误差e=T-Td为负的情况。当e为负大(NB)时,系统处于曲线1段,此时,无论de的值如何,为了消除偏差应使控制量加大,所以控制
21、量u因该取正大(PB),控制规则如下:4.2 模糊控制器的设计规则1 如果误差e是NB、且误差变化是PB,则控制U为PB;规则2 如果误差e是NB、且误差变化是PS,则控制U为PB;规则3 如果误差e是NB、且误差变化是ZE,则控制U为PB;规则4 如果误差e是NB、且误差变化是NS,则控制U为PB;当误差e为负小或者零时,主要矛盾转化为系统性问题。为了防止超调量过大并使系统尽快稳定,就要根据误差的变化de来确定控制量的变化。若de为正,表明误差有减小的趋势。系统响应位于曲线的第2段,所以可以取较小的控制量,控制规则如下:4.2 模糊控制器的设计规则5 如果误差e是NS、且误差变化是ZE,则控
22、制U为PS;规则6 如果误差e是NS、且误差变化是PS,则控制U为ZE;规则7 如果误差e是NS、且误差变化是PB,则控制U为NS;规则8 如果误差e是ZE、且误差变化是ZE,则控制U为ZE;规则9 如果误差e是ZE、且误差变化是PS,则控制U为NS;规则10 如果误差e是ZE、且误差变化是PB,则控制U为NB;当误差变化de为负时,偏差有增大的趋势,此时系统响应曲线位于第5段。这时应该使控制量增加,防止偏差进一步增加。控制规则如下:规则11 如果误差e是NS、且误差变化是NS,则控制U为PS;规则12 如果误差e是NS、且误差变化是NB,则控制U为PB;规则13 如果误差e是ZE、且误差变化
23、是NS,则控制U为PS;规则14 如果误差e是ZE、且误差变化是NB,则控制U为PB;4.2 模糊控制器的设计当误差e和误差变化de同时变符号时,控制量的变化也应变符号。一共有9条规则。U EDENBNSZEPSPBNB*PBPBPSNBNSPBPSPSZENBZEPBPSZENSNBPSPBZENSNSNBPBPBNSNBNB*所有的规则库为:4.2 模糊控制器的设计(5)求模糊控制表 模糊控制表是最简单的模糊控制器之一。可以通过查询将当前时刻的模糊控制器的输入变化量值(如误差、误差变化量化值)所对应的控制输出值作为模糊逻辑控制器的最终输出,达到实时快速控制。离线控制 给定某个时刻的输入状态
24、根据控制规则由极大极小推理法得到控制量的输出模糊集根据重心法计算出模糊控制输出的精确量。4.2 模糊控制器的设计 dej ei-4-3-2-101234-4433223000-3333222000-23322110-1-2-1322110-1-1-2022110-1-1-2-212110-1-1-2-2-32110-1-1-2-2-3-33000-2-2-2-3-3-34000-3-2-2-3-3-4 模糊控制表cij模糊控制表的建立是离线进行的,完全满足实时控制的要求。4.3 模糊控制器的实现4.3.1 查表法查表法 所谓查表法就是将输入量的隶属度函数、模糊控制规则及输出量的隶属度函数都用表
25、格来表示,通过查表来实现输入量的模糊化、模糊规则推理和输出量反模糊化。查表法是模糊控制最早采用的方法,也是应用最广的一种方法。4.3.2 专用硬件模糊控制器专用硬件模糊控制器 专用硬件模糊控制器是用硬件直接实现上述的模糊推理。4.3.3 软件模糊推理法软件模糊推理法 软件模糊推理法的特点是模糊控制过程中输入量模糊化、模糊规则推理和输出量反模糊化这三个步骤都用软件来实现。人们可以事先编好相应的程序存入计算机的存储器之中。4.4 模糊控制器设计举例4.4.1 流量控制的模糊控制器的设计流量模糊控制系统是一个单输入单输出的控制对象,其要求系统的输出是液位恒定、系统控制量是控制流量的阀门4.4.1.1
26、 模糊化过程模糊化过程模糊化与自然语言的含糊和不确定相联系,这是一个主观评价,它把测量值转换为主观量值的评价。模糊划分:将模糊规则的前提中的每一个语言变量与模糊输入控制空间相对应;结论中的语言变量与模糊输出空间相对应。基本模糊集的确定:通常有:负大(NB)、负中(NM)、负小(NS)、零(ZE)、正小(PS)、正中(PM)、正大(PB)4.4 模糊控制器设计举例对于流量模糊控制器而言:设模糊控制器的输入量分别为误差e和误差变化de,控制器输出为阀门流量的校正量u典型的二维模糊控制器设计问题。误差e分为“负大”、“负小”、“零”、“正小”、“正大”五个模糊子集;误差变化de为“负大”、“负小”、
27、“零”、“正小”、“正大”五个模糊子集;流量校正量u 为“关”、“半开”、“中等”和“开”四个模糊子集。负大负小零正小正大1.00.6250.3750-16-80816e负大负小零正小正大1.00.80.20-20-1001020de图4-9 误差和误差变化的隶属度函数图4.4 模糊控制器设计举例关半开中等开1.004812u 图4-10 阀门流量的隶属度函数4.4.1.2 模糊控制规则的建立 规则库的数量增加,可以增加控制系统的灵活度和减少对系统模型的依赖,但是系统的建立和调整不容易把握,需不断进行修正和调试。控制规则条输得多少视输入输出的物理量数目及所需的控制精度来定。模糊控制器的中心工作
28、是依据语言规则进行的模糊推理。模糊推理的依据是模糊控制规则库。依据专家的经验利用“IF THEN “的形式建立规则库。当然可以用”IF x IS A AND y IS B,THEN z IS C”的形式进行修正和完善。4.4 模糊控制器设计举例如,对于一个二维模糊控制器,若每维输入量分成3级,那么就有9条规则对应。对于一个二维模糊控制器,若每维输入量分成7级,那么就有49条规则对应。对于流量模糊控制系统:规则1 如果(IF)误差为零,或者(OR)误差变化为正小,则(THEN)阀门半开规则2 如果(IF)误差为正小,和(AND)误差变化为正小,则(THEN)阀门中等4.4 模糊控制器设计举例4.
29、4.1.3 精确化计算 精确化计算就是把语言表达的模糊量回复到精确的数值,就是根据输出模糊子集的隶属度计算出输出的确定值。最简单的方法是最大隶属度函数方法,通常用重心法。例:对于流量模糊控制器的设计,如果输入误差为5,误差变化为8。第一步,模糊化过程 根据输入的数值找出相应的隶属度函数值 误差属于“零”的隶属度函数为0.375,误差属于“正小”的隶属度函数为0.625;误差变化属于“零”的隶属度函数为0.2,误差属于“正小”的隶属度函数为0.84.4 模糊控制器设计举例第二步 模糊化推理利用规则库进行推理对应规则1 误差为零的隶属度为0.375,误差变化正小的隶属度为0.675,由并运算推理规
30、则得到MAX(0.375,0.8)=0.8,即阀门半开的隶属度为0.8。对应规则2 误差为正小的隶属度为0.625,误差变化正小的隶属度为0.8,由交运算推理规则得到MIN(0.625,0.8)=0.625,即阀门中等的隶属度为0.625。4.4 模糊控制器设计举例第三步 精确化计算根据上面的填充部分,计算各拐点的坐标,如(0,0)、(3.5,0.8)、(4.8,0.8)、(6,0.5)、(6.5,0.625)、(9.5,0.625)、(12,0)利用重心法计算可得到:87.5288.68823.36)413(625.0)141()412(8.041)413(625.0)141()412(8.
31、041)()(5.305.95.6125.95.6668.48.45.35.305.66125.95.95.668.48.45.32*duududuuduuduuduuduuuduuduuuduuududuuduuuduuuuUuU得到阀门的确切的开度为5.87。4.4 模糊控制器设计举例4.4.2 直流调速系统的模糊控制器的设计对于直流传动模块易知,此对象为一个纯延时的惯性环节。设传递函数为:。允许转速误差为)1/(25.0sessr/24.4.2.1 系统结构设计k1k2模糊化控制规则精确化k3电动机速度检测edeedeEDER+-DuDu图4-12 直流传动速度控制系统的模糊控制结构4.
32、4 模糊控制器设计举例4.4.2.2 模糊化设计4.4.2.3 控制规则设计规则1:如果误差e是NZ、且误差变化de是NZ,则控制Du为PS;规则2:如果误差e是NZ、且误差变化de是PZ,则控制Du为ZE;规则3:如果误差e是PZ、且误差变化de是NZ,则控制Du为ZE;规则4:如果误差e是PZ、且误差变化de是PZ,则控制Du为NS;4.4 模糊控制器设计举例如果:给定某一时刻,e=-3,de=1。则有:由第一条规则可得到:由第二条规则可得到:由第三条规则可得到:由第四条规则可得到:1(3)(1)/0.33/NZNZDuZEPS2(3)(1)/0.67/NZPZDuNSZE3(3)(1)/
33、0.2/PZNZDuPSZE4(3)(1)/0.2/PZPZDuZENS对于论域e:(3)0.8 ,(3)0.2NZPZ对于论域de:(1)0.33 ,(1)0.67NZPZ最后输出的控制增量为四条推理结果的合成:12340.20.670.33DuDuDuDuDuNSZEPS4.4 模糊控制器设计举例4.4.2.3 精确化计算(重心法)61610.2(7)0.2(5.6)0.67(2.31)0.67 2.31 0.33 4.69 0.33 70.560.2 0.2 0.67 0.67 0.33 0.33iiiiiaDuDua 0.20.670.33DuNSZEPS其中ai是图中拐点处的横坐标,Dui是拐点处的纵坐标。这是一种近似算法。谢 谢 同 学们