加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

用MATLAB玩控制-模糊控制输出表

(2017-02-26 08:42:57)
标签:

模糊控制

控制表

仿真

模糊控制前面已经讲过,这里把模糊控制输出表计算再略微详细讲一下,同时给出在SIMULINK环境下的仿真。在计算模糊控制输出表前,先要确定语言变量x、y和z的隶属度函数及模糊控制规则表,这里用书上的表格(智能控制理论和技术  孙增圻),见图1、2、3,当然,你也可以自己定一套这样的表格, 隶属度函数可以根据理论和经验来确定, 模糊控制规则表是根据操作经验、先验知识等来定。
模糊控制输出表计算步骤如下:
1.   取A1=(1.0 0.8 0.7 0.4 0.1 0 0 0 0 0 0 0 0),B1=(1.0 0.7 0.3 0 0 0 0 0 0 0 0 0 0),根据规则表确定C1,这里C1=B1
2.   r1=(A1 的转置 ×B1 =(a1i∧b1j)=( min(a1i , b1j) )
3.   将r1转写为列向量形式,R1=r1 × C1= (r1i∧c1j)=( min(r1i ,c1j) )
4.  
 根据规则表Ri总共要计算7*8=56个,然后计算R=R1∪R2∪...∪R56=(  max(R1(i,j), R2(i,j),...,  R56(i,j) 
5.   设此时实际值为A*、B*,则R*= (A*的转置  )×B* 
6.   将R*转写为行向量形式,C*=R*○R
7.   清晰化输出,通常采用重心法
依上算法,我们可以得到模糊控制输出表,如图4所示,模糊控制输出表也可以称为控制表,或实时查询控制表。相应的仿真如图5所示,从图中可以看出,控制存在有余差,如果在模糊控制基础上再加上常规PID控制,则可消除余差,此时成为复合模糊控制。

 

20170304  PS:增加模糊输入输出曲面图,见图6。
http://s15/mw690/001Agcsvzy794YtNhdYee&690

http://s4/mw690/001Agcsvzy794YuujLlb3&690



http://s7/mw690/001Agcsvzy795bi2D1Y86&690


http://s13/mw690/001Agcsvzy7959egp2sfc&690



http://s1/mw690/001Agcsvzy7959eSoY8c0&690

 

http://s15/mw690/001Agcsvzy79fhI6wJo2e&690

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有