lunes, 29 de noviembre de 2010

DISEÑO DE CONTROLADORES UTILIZANDO MATLAB


Respuesta del motor en función del tiempo:

Código en MATLAB:

clf

A=[-5 1 0;0 -2 1;0 0 -1];

B=[0;0;1];

C=[-1 1 0];

D=0;

pos=input('Type %MP deseado (valores de 0 a 50) =');

Ts=input('Type Tiempo de Asentamiento deseado (en miliseg) =') ;

z=(-log(pos/100))/(sqrt(pi^2+log(pos/100)^2));

wn=4/(z*Ts);

[num,den]=ord2(wn,z);

r=roots(den);

poles=[r(1) r(2) -4];

K=acker(A,B,poles)

Anew=A-B*K ;

Bnew=B ;

Cnew=C ;

Dnew=D ;

Tss=ss(Anew,Bnew,Cnew,Dnew);

'T(s)'

T=tf(Tss);

T=minreal(T)

poles=pole(T)

step(Tss)

title('Respuesta Escal6n Compensada.')

Valores de K:

Función de transferencia y Polos:

Gráfica Correspondiente:

Respuesta Escalón Compensada


No hay comentarios:

Publicar un comentario