标题: MATLAB模糊控制洗衣机程序 [打印本页]

作者: 体验地球生活    时间: 2020-12-18 11:15
标题: MATLAB模糊控制洗衣机程序
  1. %Fuzzy Control for washer
  2. clear all;
  3. close all;

  4. a=newfis('fuzz_wash');

  5. a=addvar(a,'input','x',[0,100]);      %Fuzzy Stain
  6. a=addmf(a,'input',1,'SD','trimf',[0,0,50]);
  7. a=addmf(a,'input',1,'MD','trimf',[0,50,100]);
  8. a=addmf(a,'input',1,'LD','trimf',[50,100,100]);

  9. a=addvar(a,'input','y',[0,100]);      %Fuzzy Axunge
  10. a=addmf(a,'input',2,'NG','trimf',[0,0,50]);
  11. a=addmf(a,'input',2,'MG','trimf',[0,50,100]);
  12. a=addmf(a,'input',2,'LG','trimf',[50,100,100]);

  13. a=addvar(a,'output','z',[0,60]);      %Fuzzy Time
  14. a=addmf(a,'output',1,'VS','trimf',[0,0,10]);
  15. a=addmf(a,'output',1,'S','trimf',[0,10,25]);
  16. a=addmf(a,'output',1,'M','trimf',[10,25,40]);
  17. a=addmf(a,'output',1,'L','trimf',[25,40,60]);
  18. a=addmf(a,'output',1,'VL','trimf',[40,60,60]);

  19. rulelist=[1 1 1 1 1;
  20.           1 2 3 1 1;
  21.           1 3 4 1 1;

  22.           2 1 2 1 1;
  23.           2 2 3 1 1;
  24.           2 3 4 1 1;

  25.           3 1 3 1 1;
  26.           3 2 4 1 1;
  27.           3 3 5 1 1];

  28. a=addrule(a,rulelist);
  29. showrule(a)

  30. a1=setfis(a,'DefuzzMethod','mom');
  31. writefis(a1,'wash');
  32. a2=readfis('wash');

  33. figure(1);
  34. plotfis(a2);
  35. figure(2);
  36. plotmf(a,'input',1);
  37. figure(3);
  38. plotmf(a,'input',2);
  39. figure(4);
  40. plotmf(a,'output',1);

  41. ruleview('wash');

  42. x=60;
  43. y=70;
  44. z=evalfis([x,y],a2)
复制代码


51hei.png (5.15 KB, 下载次数: 148)

51hei.png

模糊控制洗衣机.zip

1.87 KB, 下载次数: 20, 下载积分: 黑币 -5






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1