资源描述:
《北航模糊控制作业》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、模糊控制查询表的MATLAB实现姓名:XXXXX学号:XXXXX专业:机械工程学院:机械工程及自动化学院北京航空航天大学智能控制及其应用20xx年xx月x日模糊控制查询表的MATLAB实现XXXXXX北京航空航大人学机械工程及自动化学院(北京100191)一作业要求以双输入一单输出系统为例,画岀模糊控制算法程序流程图,计算出模糊控制器的查询表。假设控制器输入为误差e和误弟变化率ec,输出为控制量u,其基本论域分别为8咼,ej,[ecrain,ecmax],[gn,,对应的语言变量E、EC和U的论域为{-6,-5,・・・,-1,0,1,・・・,5,6},E、EC和U都选7个语言值{NB,NM
2、,NS,Z,PS,PM,PB},各语言值的隶属函数采用三角函数,其分布可用表1-1表示,控制规则如表1-2所示。注意:u的去模糊化要采用与你的学号ID的奇偶性对应的方法,设ID二奇数者用最大隶属度法,ID二偶数者用重心法;耍有计算查询表时的必要计算步骤,不能只给岀最后结果。表1T语言变量E、EC和U的赋值表-6
3、-5
4、-4・3-2
5、-1012I345
6、6NB10.500000000000NM00.510.5000000000NS0000.510.50000000Z000000.510.500000PS00000000.510.5000PM00()00000()0.510.50PB00000
7、0000000.51表1-2模糊控制规则表uECNBNMNSZPSPMPBENBNBNBNBNBNMZZNMNBNBNBNBNMZZNSNMNMNMNMZPSPSZNMNMNSZPSPMPMPSNSNSZPMPMPMPMPMZZPMPBPBPBPBPBZzPMPBPBPBPB二模糊控制查询表和控制算法流程图2.1模糊控制查询表(1)模糊控制算法一般双输入一单输出模糊控制器的控制规则可写成条件语句:if5=A.andAE=BythenU=C;7,i=l,2,•••,z?;j=1,2,••・,/?;式子中,几、町、C7为定义在误差、误差变化率和控制量论域X、Y、Z、上的模糊集合。上述条件可以用
8、一个模糊关系斤描述,即斤=(J4x沐x斤的隶屈度函数为:i=n、j=m~~~>?(%,v,z)-vA.(x)aB{y}aC.kz),xeX,ye/=hj=i1Jij当误差及误差变化分别取模糊集不B时,控制器输出的变化量0根据模糊推理合成规则可得:4(AxB)?2oR0的隶属度函数为:U(z)=vA(x)AB(y)AR(x,y,z)xgXywY(2)模糊算法选择模糊推理用Mamchni推理方法,输出信息的模糊判别用最大隶屈度法。模糊控制查询表的实现,先根据模糊条件推理得出模糊条件所决泄的模糊关系,模糊推理关系为:$=(Ix叮'x©。将所有的模糊关系&利用“或”n放入关系组合在一起,即斤=RU
9、&U…UE=UE,斤整个系统的控制/=1规则的模糊关系。再根据新的模糊集力、B,求出控制器的输出变化量0,即0二(AxB)t^oRo最后根据最大隶属度法求的模糊判决结果。所有的判决结果组成了模糊控制查询表。最后建立输入变量输出变量的三维曲面。2.2程序结构说明一般情况下,输入量偏差e和偏差变化率Ae以及输出变量U的离散论域为13个量化等级{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}°为方便MATLAB编程,对相关的变量选择进行一些改变。原先的输入变量偏差e和偏差变化率cc以及输出变量U的量化等级{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}改写为{
10、1,2,3,4,5,6,7,8,9,10,11,12,13}。转化后语言变量E、EC和U的赋值表如表2-13所示。输入变量偏并e和偏并变化率ec以及输出变量U的模糊语言值均为{NB,NM,NS,Z,PS,PM,PB}。为了编程方便,将语言值用数字表示为{1,2,3,4,5,6,7},与模糊语言值相对应。转化后的模糊控制规则表如表2-2所示。表2-1语言变量E、EC和U的赋值表12345678910111213110.50000000000020().510.500000000030000.510.500000004000000.510.500000500000000.510.5000600
11、0000000().510.507000000000000.51表2-2模糊控制规则表UEC1234567E11111244211112443222245542234566533466666446777774467777程序初始化,输入谋差Error>偏差变化率ErrorC和控制量Controlvolumc的赋值表及模糊控制规则表。先计算模糊控制隶属度关系矩阵斤。根据每一条控制规则,查找对应的赋值表当屮的向量,然后求的(