a=mamfis('fuzzpid'); %新建模糊推理系统
a=addInput(a,'input','e',[-6,6]); %Parameter e 添加模糊语言变量
a=addMF(a,'input',1,'NB','trimf',[-8,-6,-4]);
a=addMF(a,'input',1,'NM','trimf',[-6,-4,-2]); %添加
a=addMF(a,'input',1,'NS','trimf',[-4,-2,0]);
a=addMF(a,'input',1,'Z','trimf',[-2,0,2]); % 三角形的隶属函数
a=addMF(a,'input',1,'PS','trimf',[0,2,4]);
a=addMF(a,'input',1,'PM','trimf',[2,4,6]);
a=addMF(a,'input',1,'PB','trimf',[4,6,8]);
a=addInput(a,'input','ec',[-6,6]); %Parameter ec 添加模糊语言变量
a=addMF(a,'input',2,'NB','trimf',[-8,-6,-4]);
a=addMF(a,'input',2,'NM','trimf',[-6,-4,-2]); %添加
a=addMF(a,'input',2,'NS','trimf',[-4,-2,0]);
a=addMF(a,'input',2,'Z','trimf',[-2,0,2]); % 三角形的隶属函数
a=addMF(a,'input',2,'PS','trimf',[0,2,4]);
a=addMF(a,'input',2,'PM','trimf',[2,4,6]);
a=addMF(a,'input',2,'PB','trimf',[4,6,8]);
a=addOutput(a,'output','kp',[0,1]); %Parameter kp
a=addMF(a,'output',1,'NB','gaussmf',[0.07079,1.735e-18]);
a=addMF(a,'output',1,'NM','trimf', [0,0.1667,0.3333]);
a=addMF(a,'output',1,'NS','trimf', [0.1667,0.3333,0.5]);
a=addMF(a,'output',1,'Z','trimf', [0.3333,0.5,0.6667]);
a=addMF(a,'output',1,'PS','trimf',[0.497,0.664,0.831]);
a=addMF(a,'output',1,'PM','trimf',[0.6667,0.8333,1]);
a=addMF(a,'output',1,'PB','gaussmf', [0.07104,1]);
a=addOutput(a,'output','ki',[0,1]); %Parameter ki
a=addMF(a,'output',2,'NB','gaussmf',[0.07079,1.735e-18]);
a=addMF(a,'output',2,'NM','trimf', [0,0.1667,0.3333]);
a=addMF(a,'output',2,'NS','trimf', [0.1667,0.3333,0.5]);
a=addMF(a,'output',2,'Z','trimf', [0.3333,0.5,0.6667]);
a=addMF(a,'output',2,'PS','trimf',[0.497,0.664,0.831]);
a=addMF(a,'output',2,'PM','trimf',[0.6667,0.8333,1]);
a=addMF(a,'output',2,'PB','gaussmf', [0.07104,1]);
rulelist=[1 1 7 1 1 1;
1 2 7 2 1 1;
1 3 6 2 1 1;
1 4 6 2 1 1;
1 5 5 3 1 1;
1 6 4 3 1 1;
1 7 4 4 1 1;
2 1 7 1 1 1;
2 2 7 1 1 1;
2 3 6 2 1 1;
2 4 5 3 1 1;
2 5 5 3 1 1;
2 6 4 4 1 1;
2 7 3 5 1 1;
3 1 7 1 1 1;
3 2 6 2 1 1;
3 3 6 3 1 1;
3 4 5 3 1 1;
3 5 4 4 1 1;
3 6 3 5 1 1;
3 7 3 6 1 1;
4 1 6 2 1 1;
4 2 6 3 1 1;
4 3 5 3 1 1;
4 4 4 4 1 1;
4 5 3 5 1 1;
4 6 2 6 1 1;
4 7 1 6 1 1;
5 1 5 3 1 1;
5 2 5 4 1 1;
5 3 4 4 1 1;
5 5 3 5 1 1;
5 6 2 6 1 1;
5 7 1 7 1 1;
6 1 5 4 1 1;
6 2 4 5 1 1;
6 3 3 5 1 1;
6 4 2 6 1 1;
6 5 2 6 1 1;
6 6 2 7 1 1;
6 7 1 7 1 1;
7 1 4 4 1 1;
7 2 4 5 1 1;
7 3 2 6 1 1;
7 4 2 6 1 1;
7 5 2 6 1 1;
7 6 1 7 1 1;
7 7 1 7 1 1];
a=addRule(a,rulelist); %添加模糊规则函数
a=FIS(a,'DefuzzMethod','mom'); %设置模糊推理特性
writeFIS(a,'fuzzpid'); %保存模糊推理系统
a=readfis('fuzzpid');%从磁盘读模糊推理系统
有没有大佬忙看一下这个问题?
MATLAB版本:R2020a
