tsfuzzyp34.asv
来自「Fuzzy Control Systems Design and Analysi」· ASV 代码 · 共 86 行
ASV
86 行
clear;
clc;
a=1;
x(1:2,1)=[0.9 -0.7]';
for t=1:1:30
A1=[1 -0.5
1 0];
A2=[-1 -0.5
1 0];
B1=[1
1];
B2=[-2
1];
F1=[0.65 -0.5];
F2=[0.87 -0.11];
% MBF
% M1 M2
%---------- \ / ----------
% \ /
% \ /
% \
% / \
%------------------------------------
% -a a
%M1
if x(2,t)<=-a; M1=1;end
if x(2,t) > -a;M1=(a-x(2,t))/(a-(-a));end
if x(2,t) > 1 ; M1=0;end
%M2
if x(2,t)<=-a;M2=0;end
if x(2,t) > -a;M2=(x(2,t)+a)/(a-(-a));end
if x(2,t) >= 1 ;M2=1;end
%PDC controller
u=(-((M1*F1*x(1:2,t)+M2*F2*x(1:2,t))/(M1+M2)));
%Dfuzzy
x(1:2,t+1)=( (M1*(A1*x(1:2,t)+B1*u)) +(M2*(A2*x(1:2,t)+B2*u)) ) /(M1+M2);
Power()
end
c=1:1:31;
fi1=figure;set(fi1,'color','white');set(fi1,'name',datestr(now,30));
plot(c,x(1,:),'r','LineWidth',2)
axis([1 20 -0.1 0.9])
xlabel('t'); ylabel('x1(t)');
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?