www.gusucode.com > Simulink——模糊控制器设计仿真源码程序 > Simulink——模糊控制器设计仿真源码程序/FuzzyMotor/Fuzzy/Simulaciones/motor.m

    %% PID
%hold off
%num=3.839;
%den=[0.004 0.33 1];
%H=tf(num,den);
%KPid=2; % Kp sintonizado
%KId=2/.32; % Ki sintonizado
%KD=2*0.005; % Kd sintonizado
%FPID=tf([KD KPid KId],[1 0]); % bloque PID
%PID=feedback(FPID*H, 1); % control PID sintonizado
%f=step(PID); % comportamiento del sistema ante un escalon
%t=0:0.00158:0.2;
%plot(t,f,'r');
%title('Curva Del sistema con el Control PID sintonizado')
%xlabel('Tiempo')
%ylabel('Salida (v)')
%axis([0 0.3 0 1.2])

%% Plot PID and Fuzzy (P1 and P2)
sim('Motor_Fuzzy.mdl')
%plot(tiempo,salida(:,1),'r')
%hold on
hold on
plot(tiempo,salida,'k.','linewid',3)
plot(tiempo,salida2,'r--','linewid',1.5)
plot(tiempo,salida1);
title('Salida del sistema con los diferentes controladores')
xlabel('Tiempo [Seg]')
ylabel('Amplitud [v]')
legend('FuzzyP1','FuzzyP2','PID');
grid
%% PID and Fuzzy (P1 and P2) Out of control
hold on
plot(tiempo,salida3,'linewid',1.5);
plot(tiempo,salida4,'k-.','linewid',2.5)
%plot(tiempo,salida5,'r--','linewid',1.5)
title('Salida de los controladores difusos')
xlabel('Tiempo [Seg]')
ylabel('Amplitud [v]')
grid
legend('FuzzyP1','FuzzyP2','PID');