Cristian Andres Aldaco Vega 12120263 Jorge Ortiz Marn 12120280 Johan Fras Daz 13122512
Control 1 Lugar Geomtrico de las Races
Fecha de entrega: 28 de marzo de 2014
Morelia, Michoacn de Ocampo. Introduccin Utilizacin de matlab y simulink para encontrar el lugar geomtrico de las races. Matlab tiene comandos que son empleados para el clculo del lugar de las races. Las instrucciones que utilizaremos son rlocus y r locfind. El lugar de las races nos muestra la evolucin de los polos del sistema realimentado o en lazo cerrado M(s) cuando el parmetro K vara desde 0 hasta un valor muy grande.
Hemos llegado a la conclusin de que los comandos rlocus y locfind son muy viables para el tipo de calculo que estamos realizando, y como ya sabemos nos va a facilitar el trabajo que se lo hiciramos con clculos, adems que aqu nos muestra la forma en que se comporta el sistema, nos ayuda a encontrar los polos y ceros, el eje de intercesin, etctera.
Resumen A partir de las prcticas resueltas con anterioridad, con herramientas como Matlab y Simulink encontraremos el lugar geomtrico de las races, en esta prctica utilizamos los comandos rlocus y rlocfind. Empezamos a hacer unos ejemplos que los iremos describiendo a continuacin.
EJEMPLOS Obtenemos el lugar de las races para el siguiente sistema: El primer paso es definir las funciones de transferencia G(s), H(s) y G(s) H(s). Nombraremos estas funciones sis_g, sis_h y sis_gh, respectivamente y al definirs en matlab quedan de la siguiente manera: sis_g=tf(1,[1 4 3]) sis_h=tf(1,[1 5])
Y mat lab en la pantalla de trabajo nos da: sis_g = 1 ------------- s^2 + 4 s + 3 Continuous-time transfer function. sis_h = 1 ---- s + 5 Continuous-time transfer function. Enseguida indicamos que la funcin de transferencia G(s) H(s) ser el equivalente serie de las dos funciones anteriores. Y lo que se ingresa en el el archivo script es: sis_gh=series(sis_g,sis_h)
Y lo obtenido en la ventana de trabajo de matlab es: sis_gh =
1 ----------------------- s^3 + 9 s^2 + 23 s + 15 Enseguida emplearemos el archive sis_gh que acabamos de crear para la instruccin rlocus ingresndolo de la siguiente manera: rlocus(sis_gh) Y lo que genero matlab es:
Donde cada uno de los polos esta de distinto color lo que permite visualizar ms clara mente cual es la trayectoria del polo conforme el valor de K est siendo modificado. Si no se aade ningn parmetro extra, matlab elegir automticamente los valores de K entre cero e infinito para los cuales calcular el lugar de las races. En determinadas ocasiones interesa elegir manualmente el rango de valores deseado para K. Para ello basta con introducir un nuevo parmetro en rlocus quedando de la siguiente manera: rlocus(sis_gh,[1:0.1:100]) Y la grfica que genera es la siguiente:
En el caso de que no se requiera un resultado grfico, y se desea conocer los valores numerios de los polos en lazo cerrado para cada valor de K la instruccin que se debe ingresar es la siguiente: [r,k]=rlocus(sis_gh) Y los valores que arroja son los siguientes:
k = 1.0e+07 * Columns 1 through 8 0 0.000000086100000 0.000000215901392 0.000000307612223 0.000000307920144 0.000000308228064 0.000000541386890 0.000001357563106 Columns 9 through 16 0.000003404178453 0.000008536200556 0.000021405082297 0.000053674646600 0.000134592693812 0.000337500000000 4.735061082943670 Inf La variable k contendr los valores del parmetro K utilizados para el clculo del lugar de las races, la variable r contendr los valores de los polos del sistema para cada valor de K. Matlab adems tiene otra herramienta que permite comprobar sobre el propio grafico los valores del parmetro K correspondiente a cada punto del lugar de las races, la instruccin a emplear es rlocfind. Esta instruccin tiene que estar despus de rlocus, permite seleccionar con el ratn sobre un punto cualquiera del lugar de las races y obtener el valor del polo ms cercano al punto donde se ha pinchado, el valor de K correspondiente a ese polo y la situacin del resto de polos para ese valor de K. Y lo escrito en el archivo script es el siguiente: rlocus(sis_gh) rlocfind(sis_gh)
Al seleccionar en la grfica el punto a partir del cual aparecen los polos complejos son los siguientes:
Y lo que obtuvimos en la pantalla de trabajo de matlab es la siguiente: Select a point in the graphics window
selected_point =
-1.805687203791470 - 0.046583850931679i
ans =
3.081505836750343
Ahora selecciono aproximadamente el punto donde los polos cruzan el eje jw que es donde empiezan a aparecer los polos inestables y por lo tanto el sistema es inestable. La grafica es la siguiente:
Y lo obtenido en la pantalla de trabajo de matlab es la siguiente: Select a point in the graphics window selected_point = -0.004739336492891 + 4.798136645962732i ans = 1.919812025508568e+02 Existen tres rangos de valores con un comportamiento distinto del sistema: Rango 1 k<3.08 el sistema tiene 3 polos reales. No debe haber sobre oscilacin. Rango 2 3.08<k<192 el sistema tiene 1 polo real y dos polos complejos conjugados, puede haber sobre oscilacin. Rango 3 k>193 el sistema tiene un polo real y dos polos complejos conjugados con parte real mayor que cero por lo que el sistema es inestable. Enseguida emplearemos simulink para poder visualizar el resultado de cada rango que describimos anteriormente. El sistema de simulink es el siguiente:
Para poder observar barias simulaciones lo que estaremos cambiando son los valores de las ganancias para el caso de la primera simulacin el valor de la ganancia ser 2 y no existir sobre oscilacin, la grfica obtenida es la siguiente:
Despus consideraremos el sistema con sobre oscilacin y la ganancia ser de 20 para la siguiente grafica:
En el caso de esta grafica la ganancia fue de 60.
Por ultimo entraremos al rango de inestabilidad y el valor de la ganancia lo definimos en 250, donde obtuvimos la siguiente grfica:
2 Utilizacin del lugar de las races para el diseo de sistemas de control. Tomando en cuenta el servo mecanismo empleado en la prctica 7, los valores que vamos a considerar para el diagrama del servo motor son los siguientes: R=1.25 I=0.8 B=0.5 K P =3 K V =0.01 Podemos reducir el sistema y llegar al diagrama siguiente:
Tomando en cuenta el diagrama anterior es posible comprobar el efecto que produce la variacin Kc sobre la situacin de los polos del sistema mediante la instruccin rlocus y los valores son los siguientes: sis=tf(3,[1 0.625 0]) rlocus(sis) Lo que obtuvimos en la pantalla de matlab es lo siguiente: sis = 3 ------------- s^2 + 0.625 s Y la grfica es la siguiente:
Puede aplicarse como el LDR tienen dos ramas lo que indica que el sistema tiene dos polos, que son reales para valores bajos del parmetro K y complejos conjugados para valores ms altos. Matlab ofrece una utilidad adicional que es la instruccin sgrid muestra un entramado sobre el lugar de las races que permite conocer fcilmente cuales son los puntos con un mismo coeficiente de amortiguamiento, al probarla simplemente se teclea y lo obtenido es lo siguiente:
En la figura puede apreciarse como las lneas radiales muestran los puntos del diagrama con el mismo valor para el coeficiente de amortiguamiento: 0.98, 0.92 ,0.84, 0.72, 0.58, 0.44, 0.3 y 0.14. Si el rango de valores que ofrece no es suficiente, es posible indicar un rango de valores de k para los que se quieren construir el lugar de las races, por ejemplo un rango de 0 a 0.5 con incrementos de 0.001 y obtendramos lo siguiente:
CONCLUCIN
Hemos llegado a la conclusin de que los comandos rlocus y locfind son muy viables para el tipo de calculo que estamos realizando, y como ya sabemos nos va a facilitar el trabajo que se lo hiciramos con clculos, adems que aqu nos muestra la forma en que se comporta el sistema, nos ayuda a encontrar los polos y ceros, el eje de intercesin, etctera.
Bibliografa: Laboratorio de Control 1. Prctica 9: Lugar Geomtrico de las Races.