Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

36
Tiempo Discreto: Uso en Matlab Jorge Rodr´ ıguez E. Adriana Rojas M. Josu´ e Rojas V. Instituto Tecnol´ ogico de Costa Rica Escuela de Ingenier´ ıaElectr´onica EL5409 - Laboratorio de Control Autom´ atico 7 de mayo de 2020

Transcript of Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Page 1: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Tiempo Discreto:Uso en Matlab

Jorge Rodrıguez E. Adriana Rojas M. Josue Rojas V.

Instituto Tecnologico de Costa RicaEscuela de Ingenierıa Electronica

EL5409 - Laboratorio de Control Automatico

7 de mayo de 2020

Page 2: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Contenidos

1 Sistemas Discretos

Discretizaciones aplicadas

Respuestas a entradas en lazo cerrado

2 Estabilidad de los sistemas en tiempo discreto

Lugar de Raıces

3 Metodos para probar la estabilidad absoluta

Metodo de Jury

Criterio de Routh Hurwitz

4 Bibliografıa

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 3: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Sistemas Discretos

Las variables dependientes estan definidas solamente en momentosespecıficos de tiempo. Su modelo se basa en ecuaciones de diferen-cias. Se pueden subdividir en:

Sistema de control de datos muestreados (senales en forma depulsos).

Sistema de control digital (senales estan en codigo digital).

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 4: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Tratamiento de funciones de transferencia en Matlab

Discretizacion de un modelo en tiempo continuo, cuya funcion detransferencia viene dada por los polinomios numerador y denomi-nador. Como tercer parametro se especifica el periodo de muestreo[1].

El comando a utilizar es:

[Nz,Dz] = c2d (N,D, Ts,metodo)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 5: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Metodos

En el comando anterior, el ultimo parametro proporciona una cade-na de caracteres que indica el metodo de discretizacion [1] [2], lasposibilidades son:

Metodo Usozoh Discretizacion utilizando mantenedor de orden cero (ZOH)

foh Discretizacion utilizando mantenedor de orden uno (FOH)

tustin Discretizacion mediante aproximacion trapezoidal

prewarp Discretizacion trapezoidal con prewarping

impulse Discretizacion de Impulso invariante

least-squares Metodo de mınimos cuadrados

matched Discretizacion mediante emparejamiento de polos y ceros

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 6: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Mantenedor de orden cero (ZOH)

Mantiene constante la senal entre muestra y muestra. Es el mas usa-do por su sencillez y porque suele venir incluido en los convertidoresanalogico-digital. [3]

Mantenedor de orden uno (FOH)

La interpolacion entre periodos de muestreo se hace en forma trian-gular, se basa en obtener la derivada en la muestra exacta, paracalcular la pendiente entre muestra y muestra el cual crea una rectacon la pendiente obtenida anteriormente.[3]

Aproximacion trapezoidal (Tustin)

Se hace la aproximacion de la integral por el area del trapecio.[3]

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 7: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Ejemplo:

Utilizando la Funcion de Transferencia en Lazo Abierto G(s) definidacomo:

Figura 1: Funcion de Transferencia en lazo abierto, en tiempo continuo

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 8: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Mantenedor de orden cero (ZOH)

Figura 2: Funcion de Transferencia en lazo abierto, en tiempo discretopor mantenedor de orden cero (ZOH)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 9: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Mantenedor de orden uno (FOH)

Figura 3: Funcion de Transferencia en lazo abierto, en tiempo discretopor mantenedor de orden uno (FOH)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 10: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Aproximacion trapezoidal (Tustin)

Figura 4: Funcion de Transferencia en lazo abierto, en tiempo discretopor aproximacion trapezoidal (Tustin)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 11: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Discretizaciones aplicadas

Otras funciones a considerar [2]:

Metodo Uso

dstep(Nz,Dz)Calcula la respuesta temporal de un sistema discreto a una secuencia escalon. Esta funcion dibuja directamente la respuesta.Esta representacion no tendra en el eje horizontal valores temporales absolutos, sino que apareceran multiplos del periodo de muestreo.

stairs(y)Para obtener una respuesta con la forma escalonada tıpica de sistemas digitales, simulando que la salida se mantieneconstante entre dos periodos de muestreo, basta con reemplazar la instruccion plot(y,’.’) por stairs(y)

dimpulse(Nz,Dz) Version discreta de impulse

dlsim(Nz,Dz) Version discreto de lsim

[mag,phase] = dbode(Nz,Dz,Ts,w)Calcula el diagrama de bode de un sistema en tiempo discreto. Siendo w un vector con las frecuenciasdonde queremos que se evalue en magnitud y fase de la funcion de transferencia

rlocus (Nz,Dz);zgrid

Se calcula igual que en dominio s, usando rlocus. Sin embargo, usa una rejilla distinta para que la representacion tenga encuenta el cırculo de radio

dnyquist y dnichols

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 12: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Analisis de estabilidad en sistemas de lazo cerrado

Figura 5: Diagrama de bloques en lazo cerrado

Considere la siguiente ecuacion la cual describe el sistema realimen-tado:

C(z)

R(z)=

G(z)

1 +G(z)H(z)(1)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 13: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Ası como su ecuacion caracterıstica:

P (z) = 1 +G(z)H(z) = 0 (2)

La estabilidad de un sistema como el anterior, se puede determinarpor la localizacion de los polos, por las raıces de las ecuaciones 1 y3.

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 14: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Condiciones:

1 Los polos de la ecuacion 1 o las raıces de la ecuacion 3 debenestar en el circulo unitario en el plano z

2 Un polo en z = 1 o si un par de polos conjugados sepresentan sobre el circulo unitario, se determina al sistemacomo crıticamente estable [4]

3 Los ceros en lazo cerrado no afectan la estabilidad absoluta

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 15: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuestas a entradas en lazo cerrado

Mediante el comando “feedback” se realiza una retroalimentacionunitaria. Ademas, los comandos “dstep” y “dimpulse” se determinala respuesta a una entrada escalon e impulso, respectivamente.

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 16: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Script para discretizacion

Figura 6: Comando para ZOH en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 17: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al escalon para ZOH

Figura 7: Respuesta al escalon para ZOH en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 18: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al escalon para FOH

Figura 8: Respuesta al escalon para FOH en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 19: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al escalon para Tustin

Figura 9: Respuesta al escalon para Tustin en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 20: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al impulso para ZOH

Figura 10: Respuesta al impulso para ZOH en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 21: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al impulso para FOH

Figura 11: Respuesta al impulso para FOH en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 22: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Respuesta al impulso para Tustin

Figura 12: Respuesta al impulso para Tustin en lazo cerrado

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 23: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Lugar de Raıces

Mediante el comando “rlocus” se determina el lugar de las raıcespara cada metodo de discretizacion.

Solo se agrega zgrid en el Script [1].

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 24: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Lugar de Raıces para ZOH

Figura 13: Lugar de Raıces para ZOH

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 25: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Lugar de Raıces para FOH

Figura 14: Lugar de Raıces para FOH

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 26: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Lugar de Raıces

Lugar de Raıces para Tustin

Figura 15: Lugar de Raıces para Tustin

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 27: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Estabilidad absoluta

Existen dos pruebas a las que se puede someter a la ecuacion carac-terıstica para determinar la estabilidad de un sistema:

Metodo de Jury

Criterio de Routh Hurwitz

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 28: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Script para estos metodos

Figura 16: Comandos para los metodos de Jury [5] y Routh Hurwitz [6]

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 29: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Metodo de Jury

Sea la ecuacion caracterıstica:

P (z) = a0zn + azn−1 + ...+ an (3)

Y la tabla para evaluar el criterio de Jury:

Figura 17: Tabla para evaluar el criterio de Jury

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 30: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Metodo de Jury

Para el metodo de Jury se deben de satisfacer las siguientes condi-ciones para que el sistema sea estable[7]:

El polinomio caracterıstico evaluado en 1 es mayor que cero:p(1) > 0

El polinomio caracterıstico evaluado en -1 es positivo parapolinomios de orden par y negativo para polinomios de ordenimpar:

(−1)n p (−1) > 0

El coeficiente an del polinomio caracterıstico debe ser positivoy mayor que el valor absoluto del coeficiente a0:

|a0| < an > 0

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 31: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Metodo de Jury

|bn−1| > |b0| , |cn−2| > |c0| , ...

Es decir, todos los coeficientes calculados de la columnaizquierda en las filas impares del arreglo deben tener unamagnitud mayor que el coeficiente mas a la derecha de lamisma fila.

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 32: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Figura 18: Metodo de Jury (parte 1)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 33: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Figura 19: Metodo de Jury (parte 2)

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 34: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Metodo de JuryCriterio de Routh Hurwitz

Criterio de Routh Hurwitz

Se realiza el arreglo de Routh, en el cual, para que el sistema seaestable, las valores en las filas deben tener el mismo signo.

Figura 20: Criterio de Routh Hurwitz

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 35: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Bibliografıa I

MathWorks. (2020) Convert model from continuous to discrete time.[Online]. Available: https://la.mathworks.com/help/control/ref/c2d.html

M. V. Villanueva. Tutorial de anAlisis y control de sistemas usandomatlab. [Online]. Available:https://www.u-cursos.cl/usuario/f77fc7be176d9b7e1bf51e951eae2753/mi blog/r/Matlab Tutorial Control.pdf

J. Dorsey, Sistemas de Control Continuos y Discretos., 1st ed. McGrawHill, 2005.

K. Ogata, Sistemas de control en tiempo discreto, 2nd ed. PearsonEducation.

MathWorks. (2019, dec) Jury stability criterion by riccardo agnesi.[Online]. Available: https://la.mathworks.com/matlabcentral/fileexchange/72082-jury-stability-criterion

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab

Page 36: Tiempo Discreto: Uso en Matlab - Escuela de Ingeniería ...

Sistemas DiscretosEstabilidad de los sistemas en tiempo discreto

Metodos para probar la estabilidad absolutaBibliografıa

Bibliografıa II

MathWorks. (2015, oct) Routh’s array in symbolic wayby carlos m. velezs. [Online]. Available: https://la.mathworks.com/matlabcentral/fileexchange/33926-routh-s-array-in-symbolic-way

E. Interiano. (2020) Estabilidad de los sistemas en tiempo discreto.[Online]. Available: http://www.ie.tec.ac.cr/einteriano/control/clase/05.AnalisisenTiempoDiscreto.pdf

Jorge Rodrıguez E., Adriana Rojas M., Josue Rojas V. Tiempo Discreto: Uso en Matlab