标签:
1.打开模糊控制工具箱,编辑输入输出变量的隶属度函数和模糊控制规则,如下图所示,导出为fuzzy_control.fis文件。
2.打开Simulink模块,建立下图所示的系统框图,两输入,一输出,处理模块是Fuzzy Logic Controller with Ruleviewer(或者Fuzzy Logic Controller)。
3.在MATLAB窗口命令下输入fuzzy=readfis(‘fuzzy_control’)将之前建立的模糊控制器加载到工作空间,将Simulink中模糊控制模块的参数设置为fuzzy,保存该模型,生成Fuzzy_model.mdl。
4.Start->MATLAB->More->SystemTest,打开测试界面,选中Main Test ,菜单栏 Insert -> Test Element -> Simulink ,选择第二步中建立的模型 fuzzy_model 。
5.变量定义。在Test Vectors 项里定义两个测试向量,变量名分别为 input1和input2,编辑两个变量的取值范围;在Test Variables 里定义测试变量,变量名为output。
6.变量映射。把测试向量input1、input2分别映射到模糊控制器的输入口 in1、in2,做为输入测试信号。把测试变量 output 映射到模糊控制器输出口out1。设置后的界面如下两图所示。
6.Save Results,如下图所示。
7.保存,进行测试。
8.结果格式转换
%导入模糊控制器 %fuzzy=readfis(‘Fuzzy_20150323.fis‘); %Run Test %把下面的代码复制到Command Window运行 test_data=stresults.ResultsDataSet.Output; a=zeros(121,1); for i=1:121 b=test_data{i}; a(i)=b(1); end c=reshape(a,11,11); table_data=c‘; %保存到txt文件 %d=table_data.*10000; %dlmwrite(‘fuzzy.txt‘,d,‘precision‘,‘%.0f‘,‘newline‘,‘pc‘)
参考资料:
标签:
原文地址:http://www.cnblogs.com/yffq/p/4561745.html