資源簡介
MATLAB上的仿真程序
用于PID的仿真。。。。。
代碼片段和文件信息
%Fuzzy?Controller
clear?all;
close?all;
a=newfis(‘fuzzf‘);
f1=1;
a=addvar(a‘input‘‘e‘[-3*f13*f1]);????????????%Parameter?e
a=addmf(a‘input‘1‘NB‘‘zmf‘[-3*f1-1*f1]);
a=addmf(a‘input‘1‘NM‘‘trimf‘[-3*f1-2*f10]);
a=addmf(a‘input‘1‘NS‘‘trimf‘[-3*f1-1*f11*f1]);
a=addmf(a‘input‘1‘Z‘‘trimf‘[-2*f102*f1]);
a=addmf(a‘input‘1‘PS‘‘trimf‘[-1*f11*f13*f1]);
a=addmf(a‘input‘1‘PM‘‘trimf‘[02*f13*f1]);
a=addmf(a‘input‘1‘PB‘‘smf‘[1*f13*f1]);
f2=1;
a=addvar(a‘input‘‘ec‘[-3*f23*f2]);??????????%Parameter?ec
a=addmf(a‘input‘2‘NB‘‘zmf‘[-3*f2-1*f2]);
a=addmf(a‘input‘2‘NM‘‘trimf‘[-3*f2-2*f20]);
a=addmf(a‘input‘2‘NS‘‘trimf‘[-3*f2-1*f21*f2]);
a=addmf(a‘input‘2‘Z‘‘trimf‘[-2*f202*f2]);
a=addmf(a‘input‘2‘PS‘‘trimf‘[-1*f21*f23*f2]);
a=addmf(a‘input‘2‘PM‘‘trimf‘[02*f23*f2]);
a=addmf(a‘input‘2‘PB‘‘smf‘[1*f23*f2]);
f3=1.5;
a=addvar(a‘output‘‘u‘[-3*f33*f3]);??????????%Parameter?u
a=addmf(a‘output‘1‘NB‘‘zmf‘[-3*f3-1*f3]);
a=addmf(a‘output‘1‘NM‘‘trimf‘[-3*f3-2*f30]);
a=addmf(a‘output‘1‘NS‘‘trimf‘[-3*f3-1*f31*f3]);
a=addmf(a‘output‘1‘Z‘‘trimf‘[-2*f302*f3]);
a=addmf(a‘output‘1‘PS‘‘trimf‘[-1*f31*f33*f3]);
a=addmf(a‘output‘1‘PM‘‘trimf‘[02*f33*f3]);
a=addmf(a‘output‘1‘PB‘‘smf‘[1*f33*f3]);
rulelist=[1?1?1?1?1;?????????%Edit?rule?base
??????????1?2?1?1?1;
??????????1?3?2?1?1;
??????????1?4?2?1?1;
??????????1?5?3?1?1;
??????????1?6?3?1?1;
??????????1?7?4?1?1;
???
??????????2?1?1?1?1;
??????????2?2?2?1?1;
????????
評論
共有 條評論