Professional Documents
Culture Documents
Obtener ante una entrada escaln unitario.
Mximo sobreimpulso 25%
Tiempo de establecimiento 5 seg
Error de estado nulo
Diseamos un controlador PD:
( )
p d
Gc s K K s
3
4
p
d
K
K
Quedando el sistema compensado:
3 2
1.06(4 3)
( )* ( )
3 2
s
G s Gc s
s s s
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
0 2 4 6 8 10 12 14 16 18
0
0.2
0.4
0.6
0.8
1
1.2
1.4
System: lcc
Settling Time (sec): 3.94
System: lcc
Peak amplitude: 1.07
Overshoot (%): 7.21
At time (sec): 1.88
Sistema 2
2
1
( )
( 5)
G s
s s
Obtener ante una entrada escaln unitario.
Mximo sobreimpulso 25%
Tiempo de establecimiento 5 seg
Error de estado nulo
Diseamos un controlador PD:
( )
i
p d
K
Gc s K K s
s
8
10
2.2
p
d
K
Ki
K
0 100 200 300 400 500 600 700 800
-7
-6
-5
-4
-3
-2
-1
0
1
x 10
6
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
0 1 2 3 4 5 6 7 8 9 10
0
0.5
1
1.5
System: lcc
Settling Time (sec): 4.77
System: lcc
Peak amplitude: 1.24
Overshoot (%): 24.4
At time (sec): 0.944
Sistema 3
2
1
( )
1
G s
s
Obtener ante una entrada escaln unitario.
Mximo sobreimpulso 25%
Tiempo de establecimiento 5 seg
Error de estado nulo
Diseamos un controlador PD:
( )
i
p d
K
Gc s K K s
s
8
10
2.2
p
d
K
Ki
K
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
0
0.2
0.4
0.6
0.8
1
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
0 1 2 3 4 5 6 7 8 9 10
0
0.2
0.4
0.6
0.8
1
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
3.3 Proponer un programa en MATLAB que realice la compensacin PID, verificar el
programa con los sistemas propuestos en el tem 3.2
clear all
clc
% funcion de transferencia del sistema
n=input('ingrese el valor del numerador de FT n=');
d=input('ingrese el valor del denominador de FT d=');
ftlc=feedback([tf(n,d)],1)
figure (1)
step(ftlc)
hold on
% calculo de parametros del PID
for kp=80:-3:1
for ki=80:-3:1
for kd=10:-1:1;
nlc1=conv(n,[kd kp ki]);
d1=conv(d,[1 0]);
d2=conv(n,[kd kp ki]);
v1=length(d1);
v2=length(d2);
for j=1:1:v1;
d3(j)=0;
end
for i=1:1:v2;
d3(i+(v1-v2))=d2(i);
d4=d1+d3;
end
dlc1=d4;
y=step(nlc1,dlc1);
m=max(y);
if m<1.25 & m>1.10 ,break
end
end
end
end
step(nlc1,dlc1,'r')
grid on
hold off
figure(2)
nr=[1];
dr=[1 0];
step(nr,dr,'g') %Entrada rampa
hold on
[n1,d1]=feedback(n,d,1,1,-1);
nr=n1;
dr=[d1 0];
step(nr,dr,'b') %Salida rampa sin compensar
hold on
nrs=nlc1;
drs=[dlc1 0];
step(nrs,drs,'r') %Salida rampa sin compensar
grid on
hold off
%parametros del pid
kp
ki
kd