tarea11-spc
Transcripción
tarea11-spc
Sanchez Plaza Carlos Grupo:03 Función de Transferencia: H(s) = (3s2 + 2s +3) / [ (s2+3s+2)(s+4) ] 1.- Inicialmente obtenemos los residuos del la funcion de transferencia y observamos que existen 3 negativos, por lo tanto, la funcion es inestable Código Matlab: num = [3,2,3]; d1 = [1,5,2]; d2 = [1,4]; dt = conv(d1,d2); k = [1 5 10]; t = [0:.3:15]; [ceros,residuos,gan] = tf2zp(num,dt) Sanchez Plaza Carlos Grupo:03 2.- A continuación se analiza la estabilidad de nuestra función observando las respuestas al escalón e impulso unitarios y a un ruido aleatorio, determinando para éste último, la naturaleza del filtro obtenido. Observamos que la energía de la función tienda a crecer al infinito, por lo tanto, es inestable Código Matlab: resp = step(num,dt,t); plot(t,resp); title('Respuesta a un escalon unitario'); xlabel('tiempo(seg)'); grid; Sanchez Plaza Carlos Grupo:03 Aquí nos damos cuenta, de igual forma que en la respuesta anterior, que la energía tiende a infinito en el intervalo observado, por lo tanto, es inestable. Código Matlab: resp = impulse(num,dt,t); plot(t,resp); title('Respuesta a un impulso unitario'); xlabel('tiempo(seg)'); grid Sanchez Plaza Carlos Grupo:03 Al aplicar un ruido aleatorio, observamos la evidente inestabilidad de la energía de la función y además, que obtuvimos un filtro “paso altas” Código Marlab: ruido = rand(size(t)); genera = lsim(num,dt,ruido,t); plot(t,genera,t,ruido); title('Respuesta a un ruido aleatorio'); xlabel('tiempo(seg)'); 3.- Podemos graficar el ‘lugar de los polos’ Observamos que, existiendo una raíz en la parte positiva, la función es inestable Código Matlab: r = rlocus(num,dt,k); rlocus(num,dt); [k,residuos] = rlocfind(num.dt); [numz,dtz] = c2dm(num,dt,1,'zoh'); rlocus(numz,dtz); zgrid Sanchez Plaza Carlos Grupo:03 4.- Por último, verificando en el circulo unitario Raíces fuera del circulo unitario indican que la función es inestable Código Matlab: [numz,dtz] = c2dm(num,dt,1,'zoh'); rlocus(numz, dtz); zgrid