Function Soloftyp

5
function soloftyp format long disp('PRIMER PASO') n=input('ingrese el numerador ='); d=input('ingrese el denominador ='); p=input('ingrese el polo deseado ='); disp('funcion de transferencia a lazo abierto') G=tf(n,d) disp('funcion de transferencia a lazo cerrado DEL SISTEMA NO COMPENSADO') C=feedback(G,1) disp('lOS polos dominantes de lazo cerrado del sistema no compensado son') pc=pole(C) zc=zero(C) xr=real(pc(1)); xp=real(p); yp=imag(p); figure (1) rlocus(G) axis([(-1+xp) (xr+0.5) -(1+yp) (1+yp)]) title('LUGAR GEOMETRICO DE RAICES DEL SISTEMA ORIGINAL') grid %Obtención de la ganancia usando el comando rlocfind %Si se quisiera determinar la ganancia correspondiente %a una dada posición de los %polos de lazo cerrado del lugar de raíces, %se debe recurrir al comando rlocfind. %Agregándole al archivo .m el conjunto %de comandos que se detallan a continuación, %se obtendrá la ganancia y la respuesta %de lazo cerrado al escalón: disp('Selecciona el polo deseado en el LGR') [k,poles] = rlocfind(n,d) [numc,denc]=cloop(k*n,d,-1); figure (2)

description

Function Soloftyp

Transcript of Function Soloftyp

function soloftyp format longdisp('PRIMER PASO') n=input('ingrese el numerador =');d=input('ingrese el denominador =');p=input('ingrese el polo deseado ='); disp('funcion de transferencia a lazo abierto')G=tf(n,d) disp('funcion de transferencia a lazo cerrado DEL SISTEMA NO COMPENSADO')C=feedback(G,1)disp('lOS polos dominantes de lazo cerrado del sistema no compensado son')pc=pole(C)zc=zero(C) xr=real(pc(1));xp=real(p);yp=imag(p); figure (1)rlocus(G)axis([(-1+xp) (xr+0.5) -(1+yp) (1+yp)])title('LUGAR GEOMETRICO DE RAICES DEL SISTEMA ORIGINAL')grid %Obtencin de la ganancia usando el comando rlocfind%Si se quisiera determinar la ganancia correspondiente %a una dada posicin de los%polos de lazo cerrado del lugar de races, %se debe recurrir al comando rlocfind.%Agregndole al archivo .m el conjunto %de comandos que se detallan a continuacin,%se obtendr la ganancia y la respuesta %de lazo cerrado al escaln: disp('Selecciona el polo deseado en el LGR')[k,poles] = rlocfind(n,d)[numc,denc]=cloop(k*n,d,-1); figure (2) step(numc,denc)title('Step response with gain') disp('CON LOS PARAMETROS:') disp('frecuencia natural no mortiguada y factor de amortiguamiento') [Wn,E] = damp(C); wla=Wn(2)Ela=E(2) Wd=wla*sqrt(1-(Ela)^2) figure (2) step(C) grid Cdr=input('ingrese el denominador en lazo cerrado para observar entrada rampa dr=');CR=tf(n,dr) figure(3)step([1],[1 0])legend('rampa')hold onstep(CR)legend('sys c')hold offaxis([0 2 0 2])disp('SEGUNDO PASO')disp('TERCER PASO')disp('CTE DE ERROR ESTATICO EN UN SISTEMANO NO COMPENSADO')%kv=lim(s-0).(s*G(s)), la s se va con una s del G(s),%pa=pole(G); %lpa=length(pa); %numero de polos en lazo abierto %pa1=abs(pa); %valor absoluto de los polos en lazo abierto%pa2=pa1(2:(lpa)); %muestra ubicacion componente de 2da fila 1ra columna%lpa2=length(pa2);%produc=1;x=syms('x') kv=limit()%for i=1:lpa2 produc=produc*pa2(i);%end%am=produc;kv1=(n/am) %Unidad :('seg-1') KV1=kv1(2) disp('SISTEMA COMPENSADO, asumo un cabe pequeo K^V ')KV=input('Ingrese K^V del SC= ');KCC=1B=KV/(KCC*KV1) disp('CUARTO PASO') disp('Elegimos el cero para conocer el polo del compensador de atraso (cerca al origen y T grande') ZA=input('ingrese el cero cercano al origen= ') disp('VALOR DE T')T=(1/ZA) disp('VALOR DEL POLO, CONOCIENDO T Y B')PA=1/(T*B) disp('Verificamos la contribucin angular del compensador (red de atraso) con: ') disp('POLOS DOMINANTES en LC hallado al principio') pc disp('CERO Y POLO DEL COMPENSADOR EN ATRASO') ZAPA disp('APORTE DE LA RED DE ATRASO A POLO DOMINANTE') PdomC=input('ingrese el polo dominante LC=') Re=real(PdomC) ; %POSITIVISA EL REAL DEL POLOIm=imag(PdomC) ; % EXTRAE EL IMGINARIO DEL POLO s1=-Re+j*Im;wn=sqrt((Re^2)+(Im^2));e=Re/wn; pop=((Re-PA)-Im*j)poz=((Re-ZA)-Im*j) angp=(180/pi)*angle(pop)angz=(180/pi)*angle(poz) disp('EL APORTE DE LA RED DE ATRASO AL POLO DOMINANTE')def=angz-angp while def