思考题:建立两输入单输出的模糊控制器(系统同上),其中一个输入是反馈值与设定的期望值之间的误差,另一输入为反馈值与设定的期望值之间的变化,调整量化因子和比例因子改变控制系统性能。
评价指标:最大偏差(最大超调) 尽量小(在作业中标出其值),控制时间 (过渡时间)尽量短(在作业中标出其值),余差(静差或残差)(在作业中标出其值)尽量小,达到稳定、快速、准确的控制的目的。
===========================================================
===========================================================
1.打开matlab,在命令行窗口中输入fuzzy,回车,弹出窗口
2.依次点击Edit-Add variable-input,新建输入,然后给两个输入改名为E和EC(也可以不改名)
3.双击这个红框,弹出窗口
4.先依次点击Edit-Remove All MFs, 然后Edit-Add MFs,填入7,点击OK
5.单击左上方的E,修改Range和Display Range,单击右上方图中每条线修改名字NB,NM,NS直至PB(也可以不改)
6.为EC和U做同样操作
7.关闭窗口,单击中间标有mamdani字样的白框,通过选择E,EC和U的值并点击Add rule加入规则,一共49条
8. 关闭,保存, 假设保存为‘myf49.fis’,然后在matlab命令行中输入myFLC=readfis(‘myf49.fis’),回车
9. 在命令行中输入simulink,回车,然后新建Blank Model
10. 在主面板或者view中找到Library Browser,点击
11. 分别搜索step,add,gain,derivative,mux,fuzzy logic controller,transfer fcn,transport delay,scope加入其中,并连线
12. 双击add,将其改为+-,双击gain改为相应的2和0.75。双击transfer fcn,修改分母,修改后可能不能正常显示,将图形放大即可。双击fuzzy logic controller输入刚才的myf49.fis,注意引号。
transfer fcn:
fuzzy logic controller:
13.将时长调至30,点击绿色箭头运行
14.双击scope,可观察到波形