2020年智能控制实验报告

  • 格式:doc
  • 大小:96.00 KB
  • 文档页数:33

下载文档原格式

  / 4
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能控制实验报告

姓名

学院

专业自动化班级

学号

指导教师

成绩

2019 年 12 月 25 日

实验一

模糊控制在角度随动系统中的应用一、实验目的与意义学习 Matlab 中建立模糊控制器的方法;了解模糊控制在角度随动系统中的

应用。

二、实验内容在 Matlab 中建立模糊控制器,将生成的模糊规则表插入程序代码中,交叉

编译代码,下载到目标版中进行测试。

1 、Matlab 文本模式建立模糊控制器(必做)

2 、利用 Matlab 模糊逻辑工具箱建立模糊控制器(选做)

3 、模糊控制器 Simulink 仿真(必做)

4 、嵌入式程序交叉编译(选做)

三、实验结果 1 、matlab 文本模式建立模糊控制器 %Fuzzy Controller Design clear all;

close all;

%新建 FIS a=newfis("myfuzzy");

%输入e,范围[-48,48],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB

a=addvar(a,"input","e",[-48 48]);

%Parameter e a=addmf(a,"input",1,"NB","trimf",[-48 -36 -24]); a=addmf(a,"input",1,"NM","trimf",[-36 -24 -12]); a=addmf(a,"input",1,"NS","trimf",[-24 -12 0]); a=addmf(a,"input",1,"Z","trimf",[-12 0 12]); a=addmf(a,"input",1,"PS","trimf",[0 12 24]); a=addmf(a,"input",1,"PM","trimf",[12 24 36]);

a=addmf(a,"input",1,"PB","trimf",[24 36 48]);

%输入ec,范围[-64,64],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB a=addvar(a,"input","ec",[-64 64]);

%Parameter ec a=addmf(a,"input",2,"NB","trimf",[-64 -48 -32]); a=addmf(a,"input",2,"NM","trimf",[-48 -32 -16]); a=addmf(a,"input",2,"NS","trimf",[-32 -16 0]); a=addmf(a,"input",2,"Z","trimf",[-16 0 16]); a=addmf(a,"input",2,"PS","trimf",[0 16 32]); a=addmf(a,"input",2,"PM","trimf",[16 32 48]); a=addmf(a,"input",2,"PB","trimf",[32 48 64]);

%输出u,范围[-90,90],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB a=addvar(a,"output","u",[-90 90]);

%Parameter u a=addmf(a,"output",1,"NB","trimf",[-90 -65 -45]); a=addmf(a,"output",1,"NM","trimf",[-65 -45 -25]); a=addmf(a,"output",1,"NS","trimf",[-45 -25 0]); a=addmf(a,"output",1,"Z","trimf",[-25 0 25]); a=addmf(a,"output",1,"PS","trimf",[0 25 45]); a=addmf(a,"output",1,"PM","trimf",[25 45 65]); a=addmf(a,"output",1,"PB","trimf",[45 65 90]);

%模糊规则表,7*7=49 行,5 列 rulelist=[1 1 1 1 1;

1 2 1 1 1;

1 3 1 1 1;

1 4

2 1 1;

1 5

2 1 1;

1 6 3 1 1;

1 7 4 1 1;

2 1 1 1 1;

2 2 1 1 1;

2 3 1 1 1;

2 4 2 1 1;

2 5 2 1 1;

2 6

3 1 1;

2 7 4 1 1;

3 1 1 1 1;

3 2 2 1 1;

3 3 2 1 1;

3 4 3 1 1;

3 5

4 1 1;

3 6 5 1 1;

3 7 6 1 1;

4 1 1 1 1;

4 2 3 1 1;

4 3 3 1 1;

4 4 4 1 1;

4 5 5 1 1;

4 6 6 1 1;

4 7 7 1 1;

5 1 2 1 1;

5 2 3 1 1;

5 3 4 1 1;

5 4 5 1 1;

5 5

6 1 1;

5 6 7 1 1;

5 7 7 1 1;

6 1 3 1 1;

6 2 4 1 1;

6 3 5 1 1;

6 4 6 1 1;

6 5

7 1 1;

6 6

7 1 1;

6 7 7 1 1;

7 1 4 1 1;

7 2 5 1 1;

7 3 6 1 1;

7 4 6 1 1;

7 5 7 1 1;

7 6 7 1 1;

7 7 7 1 1;

];

a=addrule(a,rulelist); %showrule(a)