Prácticas y exámenes de control óptimo (subida a slide share)

783 views
661 views

Published on

Control óptimo está incluido como unidad docente de la asignatura Control Avanzado de Sistemas impartido en la UMH por José María Azorín Poveda.

http://ocw.umh.es/ingenieria-y-arquitectura/control-avanzado

El objetivo general de las prácticas es que los alumnos diseñen y comprueben en simulación el comportamiento de los controladores estudiados en teoría. En particular:

- Técnicas de optimización para su aplicación en ingeniería de control.
- Diseño de reguladores que optimicen el índice de prestaciones de un sistema (control óptimo).

Se incorporan también ejemplos de examen.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
783
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prácticas y exámenes de control óptimo (subida a slide share)

  1. 1. Práctica 1: Control digital óptimo de un Sistema Discreto Escalar ALUMNO: MARTÍNEZ VERDÚ, Jaime ASIGNATURA: CAV GRUPO: Martes de 12:30 a 14:30 Fecha límite: 23 de Junio de 2.006 INGENIERÍA INDUSTRIAL CURSO: 4º
  2. 2. Escuela Politécnica Superior de Elche Ingeniería Industrial CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO curso 2005-2006 PRÁCTICA 1: Control Digital Óptimo de un Sistema Discreto Escalar Objetivos • • • Realizar el control digital óptimo de un sistema discreto utilizando Matlab. Implementar una función en Matlab para el cálculo de las ganancias de realimentación óptimas de un sistema discreto escalar. Simulación de un sistema de control discreto mediante Matlab. Descripción Considérese el siguiente sistema discretizado con un periodo de muestreo de T = 0.01 segundos: x k +1 = 3 x k + 2u k Suponiendo que el intervalo de tiempo en el que se desea controlar el sistema es de 1 segundo y que el estado inicial del sistema es x0 = 4, realizar los siguientes apartados: (i) Encontrar la ganancia de realimentación óptima que minimiza la función de coste: N −1 ( 2 2 J = 10 x N + ∑ 2 x k2 + u k ) k =0 (ii) Obtener la señal de control óptima, así como la trayectoria de estado resultante de aplicar dicha señal de control. (iii) Calcular el valor de la función de coste: a. A partir de la expresión completa mostrada en el apartado (i). b. Considerando que el valor de la función de coste óptima es: J* = 1 T x0 S 0 x0 2 Comprobar que en ambos casos se obtiene el mismo resultado. Página 1 de 2
  3. 3. Escuela Politécnica Superior de Elche Ingeniería Industrial Observaciones Deberá implementarse una función en Matlab que a partir de las matrices de la ecuación de estado, los factores de ponderación de la función de coste y el número de intervalos de muestreo, devuelva la ganancia de realimentación óptima en cada instante de muestreo. Así mismo deberá crearse un fichero de Matlab para realizar la simulación del sistema discreto con las ganancias de realimentación óptimas calculadas. Importante • Debe entregarse un informe de la práctica indicando los resultados obtenidos junto con los listados de los ficheros de Matlab utilizados. • El plazo de entrega del informe de la práctica finaliza el día del examen de la asignatura en la convocatoria de Junio de 2006. Página 2 de 2
  4. 4. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 1. Desarrollo teórico. Tal y como viene expresado en el enunciado, el sistema discreto a controlar es el siguiente: xk 1  3  xk  2  uk De clase de teoría conocemos que los sistemas se modelan o rigen a partir de unas ecuaciones físicas que modelan el sistema y entre ellas se encuentra el modelo de estado cuya. Sabemos de teoría cual es la forma de la expresión de la ecuación del modelo dinámico del sistema para sistemas dinámicos lineales discretos. De hecho, la forma general es la siguiente:    x k 1  F  xk  G  u k donde cada término de dicha expresión viene descrito por términos matriciales que comparados con los de la expresión que proporciona el enunciado de la función de estado, que no son matriciales, da lugar a los siguientes resultados:    xk 1  F  xk  G  u k F y G son escalares xk 1  f  xk  g  u k   x k 1  f  x k  g  u k  xk 1  3  x k  2  u k  f 3 g 2 El intervalo de tiempo en el que se desea controlar el sistema es de 1 segundo y el estado inicial del sistema es x0 = 4. Por otro lado, la función de coste a minimizar es: N 1 2 2 2 J  10 x N   (2 x k  u k ) k 0 De igual manera, en clases de teoría aprendimos el análisis de funciones de coste matriciales por lo que, como en este caso empleamos valores escalares, hemos de realizar una transformación de un desarrollo matricial a uno más sencillo escalar: J S N ,Q y R   T  1 T 1 N 1  T 1 1 N 1 2 2 2 x N  S N  x N   ( x k  Q  x k  u k  R  u k ) son escalares J   s N  x N   (q  x N  r  u N )  2 2 k 0 2 2 k 0 Si esta expresión de la función de coste obtenida la comparamos con la proporcionada por el enunciado, obtenemos los siguientes resultados: J N 1 1 1 N 1 2 2 2 2 2 2  s N  x N   (q  x N  r  u N )  J  10 x N   (2 x k  u k ) 2 2 k 0 k 0  1  s N  10  s N  20 2 Jaime Martínez Verdú 1 q  2  q  4 2 1-1 1 r 1 r  2 2
  5. 5. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO Una vez despejados todos los parámetros necesarios para la resolución del ejercicio pasamos a obtener los valores de la ganancia de realimentación. Para obtener esa ganancia de realimentación, no hay más que traducir a código implementado en Matlab® las siguientes funciones: kk  f  g  sk 1 r  g 2 sk 1 f 2  sk 1  r sk  q r  g 2 sk 1 Transformación de las ecuaciones de Riccati en código MatlLab®: 1 2 3 4 5 6 7 8 9 10 11 12 function [k,s]=ctropt1d(f,g,r,q,N,Sn) i=N; % La obtención de los valores de k y s se hace recursividad hacia atrás s(N)=Sn; % Damos el valor de Sn al valor final de S k(N)=0; % La ganancia final será nula for i=N-1:-1:1 k(i)=f*g*s(i+1)/(r+g^2*s(i+1)); s(i)=((f^2*s(i+1)*r)/(r+g^2*s(i+1)))+q; end return Jaime Martínez Verdú 1-2
  6. 6. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 2. Desarrollo práctico. APARTADO (i) Encontrar la ganancia de realimentación óptima que minimiza la función de coste siguiente: N 1 2 2 2 J  10 x N   (2 x k  u k ) k 0 Crearemos un fichero .m con el siguiente código implementado: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r Sn=20; % Valor final de S % A continuación obtenemos el valor de la ganancia de realimentación optima % que minimiza la función de coste propuesta [k,s]=ctroptd(f,g,r,q,N,Sn); k El valor de la ganancia permanece constante para cada muestra desde el principio hasta tres muestras antes de finalizar el control: Columns 1 through 8 1.3874 1.3874 1.3874 Columns 9 through 16 1.3874 1.3874 1.3874 Columns 17 through 24 1.3874 1.3874 1.3874 Columns 25 through 32 1.3874 1.3874 1.3874 Columns 33 through 40 1.3874 1.3874 1.3874 Columns 41 through 48 1.3874 1.3874 1.3874 Columns 49 through 56 1.3874 1.3874 1.3874 Columns 57 through 64 1.3874 1.3874 1.3874 Columns 65 through 72 1.3874 1.3874 1.3874 Columns 73 through 80 1.3874 1.3874 1.3874 Columns 81 through 88 1.3874 1.3874 1.3874 Columns 89 through 96 1.3874 1.3874 1.3874 Columns 97 through 101 1.3874 1.3876 1.3912 Jaime Martínez Verdú 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.4634 0 1-3
  7. 7. Jaime Martínez Verdú 1-4 0 0.5 1 1.5 0 20 40 60 Muestras Trayectoria de la gananacia de control optima k 80 100 120 CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO Amplitud de la gananacia de control optima k
  8. 8. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO APARTADO (ii) Obtener la señal de control óptima, así como la trayectoria de estado resultante de aplicar dicha señal de control. Crearemos un fichero .m, cuyo comienzo es semejante al anterior, con el siguiente código implementado: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r Sn=20; % Valor final de S % A continuación obtenemos el valor de la ganancia de realimentación optima % que minimiza la función de coste propuesta [k,s]=ctroptd(f,g,r,q,N,Sn); x(1)=4; % Obtenemos del estado para k = 0 x1 for i=1:N-1 u(i)=-k(i)*x(i); % Obtenemos cada acción de control desde k = 0 u0 hasta k = N-1 uN-1 x(i+1)=f*x(i)+g*u(i); % Obtenemos cada estado desde k = 1 x2 hasta k = N xN end u(i+1)=-k(i)*x(i); ); % Obtenemos la acción de control para k = N uN subplot(2,1,1) stairs(u,'k') TITLE('Trayectoria de la señal de control optima u(k)') XLABEL('Muestras') YLABEL('Amplitud de la señal de control u(k)') AXIS([0 100 -7 1]) hold on subplot(2,1,2) stairs(x,'b') TITLE('Trayectoria del estado resultante al aplicar la señal de control x(k)') XLABEL('Muestras') YLABEL('Amplitud de los estados x(k)') AXIS([0 100 -1 4]) Jaime Martínez Verdú 1-5
  9. 9. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO x= Columns 1 through 8 4.0000 0.6863 0.1177 Columns 9 through 16 0.0000 0.0000 0.0000 Columns 17 through 24 0.0000 0.0000 0.0000 Columns 25 through 32 0.0000 0.0000 0.0000 Columns 33 through 40 0.0000 0.0000 0.0000 Columns 41 through 48 0.0000 0.0000 0.0000 Columns 49 through 56 0.0000 0.0000 0.0000 Columns 57 through 64 0.0000 0.0000 0.0000 Columns 65 through 72 0.0000 0.0000 0.0000 Columns 73 through 80 0.0000 0.0000 0.0000 Columns 81 through 88 0.0000 0.0000 0.0000 Columns 89 through 96 0.0000 0.0000 0.0000 Columns 97 through 101 0.0000 0.0000 0.0000 0.0202 0.0035 0.0006 0.0001 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 u= Columns 1 through 8 -5.6569 -0.9706 -0.1665 Columns 9 through 16 -0.0000 -0.0000 -0.0000 Columns 17 through 24 -0.0000 -0.0000 -0.0000 Columns 25 through 32 -0.0000 -0.0000 -0.0000 Columns 33 through 40 -0.0000 -0.0000 -0.0000 Columns 41 through 48 -0.0000 -0.0000 -0.0000 Columns 49 through 56 -0.0000 -0.0000 -0.0000 Columns 57 through 64 -0.0000 -0.0000 -0.0000 Columns 65 through 72 -0.0000 -0.0000 -0.0000 Columns 73 through 80 -0.0000 -0.0000 -0.0000 Columns 81 through 88 -0.0000 -0.0000 -0.0000 Columns 89 through 96 -0.0000 -0.0000 -0.0000 Columns 97 through 101 -0.0000 -0.0000 -0.0000 Jaime Martínez Verdú -0.0286 -0.0049 -0.0008 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 1-6
  10. 10. Jaime Martínez Verdú Amplitud de la señal de control u(k) Amplitud de los estados x(k) 1-7 -1 0 1 2 3 4 -7 -6 -5 -4 -3 -2 -1 0 1 0 0 10 10 20 20 40 50 Muestras 60 70 30 40 50 Muestras 60 70 Trayectoria del estado resultante al aplicar la señal de control x(k) 30 Trayectoria de la señal de control optima u(k) 80 80 90 90 100 100 CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO
  11. 11. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO APARTADO (iii) Calcular el valor de la función de coste. a. A partir de la expresión completa mostrada en el apartado (i). b. Considerando que el valor de la función de coste óptima es: J*  1 T  x0  S 0  x0 2 Comprobar que en ambos casos se obtiene el mismo resultado. Crearemos un fichero .m, cuyo comienzo es semejante al anterior, con el siguiente código implementado: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r Sn=20; % Valor final de S % A continuación obtenemos el valor de la ganancia de realimentación optima % que minimiza la función de coste propuesta [k,s]=ctroptd(f,g,r,q,N,Sn); x(1)=4; % Obtenemos del estado para k = 0 x1 for i=1:N-1 u(i)=-k(i)*x(i); % Obtenemos cada acción de control desde k = 0 u0 hasta k = N-1 uN-1 x(i+1)=f*x(i)+g*u(i); % Obtenemos cada estado desde k = 1 x2 hasta k = N xN end u(i+1)=-k(i)*x(i); ); % Obtenemos la acción de control para k = N uN Xn=x(i+1)^2; a=0; b=0; for i=1:N-1 Xk(i)=x(i)^2; % Vamos calculando cada uno de los cuadrados de los estados Uk(i)=u(i)^2; % Vamos calculando cada uno de los cuadrados de las acciones de control a=a+Xk(i); % Vamos sumando los cuadrados de los estados b=b+Uk(i); % Vamos sumando los cuadrados de las acciones de control end J1=1/2*Sn*Xn+1/2*q*a+1/2*r*b J2=1/2*x(1)*s(1)*x(1) El resultado es el siguiente: J1 = 65.9411 J2 = J 1 1 N 1 1 1 N 1 1 N 1 2 2 2 2 2 2  s N  xN   (q  x N  r  u N )  J   s N  xN   (q  xN )   (r  u N ) 2 2 k 0 2 2 k 0 2 k 0 J a 65.9411 Jaime Martínez Verdú 1 1 N 1 2 1 N 1 2 2  s N  x N   q  ( x N )   r  (u N ) 2 2  2  k 0 k 0 1-8 b
  12. 12. Práctica 2: Control digital óptimo de un Sistema Discreto en el Estado Estacionario ALUMNO: MARTÍNEZ VERDÚ, Jaime ASIGNATURA: CAV GRUPO: Martes de 12:30 a 14:30 Fecha límite: 23 de Junio de 2.006 INGENIERÍA INDUSTRIAL CURSO: 4º
  13. 13. Escuela Politécnica Superior de Elche Ingeniería Industrial CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO curso 2004-2005 PRÁCTICA 2: Control Digital Óptimo de un Sistema Discreto en el Estado Estacionario Objetivos • • • • • Realizar el control digital óptimo, durante un determinado intervalo de tiempo, de un sistema discreto utilizando Matlab. Efectuar el control óptimo en el estado estacionario de un sistema discreto. Implementar una función en Matlab para el cálculo de la matriz de realimentación óptima en cada instante, de un sistema discreto con una única entrada. Crear una función en Matlab para obtener la matriz de realimentación óptima en el estado estacionario de un sistema discreto con una única entrada. Comparar el control óptimo en el estado estacionario frente al control óptimo durante un intervalo de tiempo determinado. Descripción Un oscilador armónico está descrito por la ecuación de estado: & x1 = x 2 & x 2 = −ω 2 x1 + u donde ω = 2 es la frecuencia natural del oscilador. Suponiendo que el sistema es discretizado con un periodo de muestreo de T = 0.025 segundos y que el estado inicial es x0 = [1 0]T, realizar los siguientes apartados: (i) Controlar el sistema durante un intervalo de tiempo de 10 segundos de forma que se minimice la función de coste: J= ( ) ( 1 1 N −1 2 2 2 s1 x12N + s 2 x 2 N + ∑ q1 x12k + q 2 x 2 k + ru k 2 2 k =0 ) donde x1k y x2k corresponden a las variables de estado x1 y x2, respectivamente, en el instante k; y los factores de ponderación tienen los siguientes valores: s1 = 2 q1 = 2 s2 = 1 q2 = 1 r=1 Página 1 de 2
  14. 14. Escuela Politécnica Superior de Elche Ingeniería Industrial (ii) Diseñar un regulador lineal cuadrático en el estado estacionario de forma que se minimice la función de coste: J∞ = ( 1 ∞ ∑ q1 x12k + q2 x22k + ru k2 2 k =0 ) donde los parámetros q1, q2 y r tienen los mismos valores que en el apartado anterior. (iii) Comparar los sistemas de control (i) y (ii). Observaciones Deberá implementarse una función en Matlab que a partir de las matrices de la ecuación de estado, los factores de ponderación de la función de coste y el número de intervalos de muestreo, devuelva la ganancia de realimentación óptima en cada instante de muestreo. Así mismo deberá crearse una función en Matlab que a partir de las matrices de la ecuación de estado y los factores de ponderación de la función de coste, calcule la ganancia de realimentación óptima en el estado estacionario. Importante • Debe entregarse un informe de la práctica indicando los resultados obtenidos (gráficas del estado, señal de control, ...) junto con los listados de los ficheros de Matlab utilizados. • El plazo de entrega del informe de la práctica finaliza el día del examen de la asignatura en la convocatoria de Junio de 2005. Página 2 de 2
  15. 15. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 1. Desarrollo teórico. En esta práctica se va a realizar el control digital óptimo de un sistema discreto de segundo orden utilizando para ello el software MatLab®. Tal y como puede observarse al leer el enunciado de la práctica, se va a realizar dos controles:   Un control digital óptimo durante un intervalo de tiempo. Y otro control digital óptimo en el estado estacionario. Primeramente necesitaremos implementar una función desarrollada en el entorno de programación de MatLab® para que, de este modo, puedan calcular las ganancias óptimas de realimentación en cada instante del control. Como tenemos dos situaciones, tendremos que distinguir dos cálculos de ganancias:  En primer lugar, se va a calcular la ganancia de realimentación constante para cada instante dentro del intervalo de control. En segundo lugar, se va a calcular la ganancia de realimentación constante para cada instante en el estado estacionario.  Finalmente, y tal y como se exige en el enunciado de la práctica, se realizacrá una comparación entre ambos métodos. El sistema de segundo orden que representa el comportamiento del oscilador armónico (sabiendo que la frecuencia natural del oscilador es  raíz de dos) está modelado por la siguiente ecuación de estado:  x1 (t )  x2 (t )  x2 (t )    x1 (t )  u (t ) 2 , con   2 y x1 (0)  1 x2 (0)  0 Si el sistema de dos ecuaciones lo convertimos a su forma matricial, obtenemos el siguiente resultado:   x1 (t )   0  x (t )   2  2   1  x1 (t )  0    u (t ) , con 0  x 2 (t ) 1       x1 (0)  1  x (0)  0  2    Puesto que el control digital es de un sistema discreto, necesitamos discretizarlo. El sistema debe ser discretizado con un periodo de T = 0.025 s. La función implementada en Matlab que calcula la secuencia de ganancias es la siguiente: 1 2 3 4 5 6 7 8 9 10 11 12 Jaime Martínez Verdú function K1=ctropt(F,G,R,Q,N,Sn) S=Sn; % Damos el valor de Sn al valor final de S [n m]=size(F); K1(N,:)=zeros(1,n); % La ganancia final será nula for i=N:-1:2 M=S-S*G*inv(R+G'*S*G)*G'*S; K1(i-1,:)=inv(R+G'*S*G)*G'*S*F; S=F'*M*F+Q; end return 2-1
  16. 16. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 2. Desarrollo práctico. APARTADO (i) Control en un intervalo de tiempo finito de 10 segundos. Controlar el sistema durante un intervalo de tiempo de 10 segundos de forma que se minimice la función de conste siguiente:   1 1 N 1 2 2 2 2 J   s1, N  x1, N  s 2, N  x2, N   (q1  x12,k  q 2  x2,k  r  u k ) 2 2 k 0 donde x1,k y x2,k corresponden a las variables de estado x1 y x2, respectivamente, en el instante k, y los factores de ponderación tiene los siguientes valores: s1, N  2 s 2, N  1 q1  2 q2  1 r 1 Podemos comparar la función de coste a estudiar con una función de coste en forma general: J   1 1 N 1 2 2 2  s1, N  x12, N  s 2, N  x2, N   (q1  x12,k  q 2  x2,k  r  u k ) 2 2 k 0    T  1 T 1 N 1  T J  x N  S N  x N   ( xk  Q  xk  u k  R  u k ) 2 2 k 0 Para obtener los valores de las matrices realizamos las operaciones siguientes: MATIZ S N : Para obtener la forma de esta matriz necesitamos comparar el término fuera del sumatorio, es decir,  S11, N SN    S 21, N  1 T x N  S N  x N  x1, N 2  x1, N  S11, N Jaime Martínez Verdú S12, N  S N es simétrica  S11, N       S N   S S 22, N   12, N S12, N   x1, N   S11, N x 2 , N     S 22, N   x2, N   S12, N     S11, N  x1, N  S12, N  x2, N  x 2 , N     S12, N  x1, N  S 22, N  x2, N  2  x12, N  2  S12, N  x1, N  x2, N  S 22, N  x2, N 2-2 S12, N  S 22, N  
  17. 17. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 2 2 s1, N  x12, N  s2, N  x2, N  S11, N  x12, N  2  S12, N  x1, N  x2, N  S 22, N  x2, N S11, N  s1, N  2  2  S12, N  0  S N   0 S  22, N  s2, N 0 1  MATIZ Q : Para obtener la forma de esta matriz necesitamos comparar el término izquierdo de dentro del sumatorio, es decir, Q Q   11 Q21 Q12  Q es simétrica Q11       Q  Q Q22   12 Q12  Q22   Q12   x1,k    Q22   x 2,k    Q11  x1,k  Q12  x 2,k   x1,k x 2 , k    Q12  x1,k  Q22  x 2,k  2  Q11  x12,k  2  Q12  x1,k  x 2,k  Q22  x 2,k T  x k  Q  x k  x1,k Q x 2,k   11 Q12 2 2 q1  x12,k  q 2  x 2,k  Q11  x12,k  2  Q12  x1,k  x 2,k  Q22  x 2,k Q11  q1 2   2  Q12  0  Q   0 Q  q 2  22 0 1  MATIZ R : Tal y como puede observarse, ésta matriz no es más que un escalar, por lo que su valor es de 1. Jaime Martínez Verdú 2-3
  18. 18. CONTROL AVANZADO DE SISTEMAS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 CONTROL ÓPTIMO T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector F=[0,1;-2,0]; % Introducimos la Matriz de Estados F G=[0;1]; % Introducimos la Matriz de Entradas G Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r Sn=[2,0;0,1]; % Valor final de S [Fd,Gd]=c2d(F,G,T); % A continuación obtenemos el valor de la ganancia de realimentación optima % que minimiza la función de coste propuesta Ki=ctropt(Fd,Gd,R,Q,N,Sn); Ki; subplot(2,1,1) stairs(Ki(:,1),'b') TITLE('Trayectoria de la ganancia de control optima K(k) que controla el estado x1(k)') XLABEL('Muestras') YLABEL('Amplitud de la ganancia de control K1(k)') AXIS([0 400 0 0.5]) hold on subplot(2,1,2) stairs(Ki(:,2)) TITLE('Trayectoria de la ganancia de control optima K(k) que controla el estado x2(k)') XLABEL('Muestras') YLABEL('Amplitud de la ganancia de control K2(k)') AXIS([0 400 0 1.5]) El valor de la ganancia permanece constante para cada muestra desde el principio hasta tres muestras antes de finalizar el control: Ki = 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 Jaime Martínez Verdú 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 0.4077 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 0.4077 0.4077 0.4077 0.4077 0.4077 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 2-4 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 0.4076 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3598 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597 1.3597
  19. 19. CONTROL AVANZADO DE SISTEMAS 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4075 0.4074 0.4074 0.4074 0.4074 0.4074 0.4074 0.4074 0.4074 0.4074 0.4074 0.4073 0.4073 0.4073 0.4073 0.4073 0.4073 0.4072 0.4072 0.4072 0.4072 0.4072 0.4071 0.4071 0.4071 0.4071 0.4071 0.4070 0.4070 0.4070 0.4070 0.4069 0.4069 0.4069 0.4068 0.4068 0.4068 0.4067 1.3597 1.3597 1.3597 1.3597 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3596 1.3595 1.3595 1.3595 1.3595 1.3595 1.3595 1.3595 1.3595 1.3594 1.3594 1.3594 1.3594 1.3594 1.3594 1.3593 1.3593 1.3593 1.3593 1.3593 1.3592 1.3592 1.3592 1.3592 1.3591 1.3591 1.3591 1.3591 1.3590 1.3590 1.3590 1.3590 1.3589 1.3589 1.3589 1.3588 1.3588 1.3588 1.3587 1.3587 1.3586 1.3586 1.3586 Jaime Martínez Verdú 0.4067 0.4067 0.4066 0.4066 0.4066 0.4065 0.4065 0.4065 0.4064 0.4064 0.4063 0.4063 0.4063 0.4062 0.4062 0.4061 0.4061 0.4060 0.4060 0.4059 0.4059 0.4059 0.4058 0.4058 0.4057 0.4057 0.4056 0.4055 0.4055 0.4054 0.4054 0.4053 0.4052 0.4052 0.4051 0.4050 0.4050 0.4049 0.4048 0.4047 0.4046 0.4045 0.4044 0.4043 0.4042 0.4041 0.4040 0.4039 0.4037 0.4036 0.4034 0.4033 0.4031 0.4029 0.4027 0.4025 0.4023 1.3585 1.3585 1.3584 1.3584 1.3583 1.3583 1.3583 1.3582 1.3581 1.3581 1.3580 1.3580 1.3579 1.3579 1.3578 1.3577 1.3577 1.3576 1.3575 1.3575 1.3574 1.3573 1.3572 1.3571 1.3570 1.3569 1.3568 1.3567 1.3566 1.3565 1.3564 1.3563 1.3562 1.3560 1.3559 1.3558 1.3556 1.3554 1.3553 1.3551 1.3549 1.3548 1.3546 1.3544 1.3542 1.3539 1.3537 1.3535 1.3532 1.3530 1.3527 1.3525 1.3522 1.3519 1.3516 1.3512 1.3509 CONTROL ÓPTIMO 0.4021 0.4019 0.4017 0.4014 0.4011 0.4009 0.4006 0.4003 0.3999 0.3996 0.3993 0.3989 0.3985 0.3981 0.3977 0.3973 0.3968 0.3964 0.3959 0.3954 0.3949 0.3944 0.3939 0.3933 0.3927 0.3921 0.3915 0.3909 0.3903 0.3896 0.3890 0.3883 0.3876 0.3869 0.3862 0.3854 0.3847 0.3839 0.3832 0.3824 0.3816 0.3808 0.3800 0.3792 0.3783 0.3775 0.3766 0.3758 0.3749 0.3740 0.3731 0.3722 0.3713 0.3703 0.3694 0.3684 0.3674 2-5 1.3506 1.3502 1.3498 1.3495 1.3491 1.3487 1.3482 1.3478 1.3474 1.3469 1.3464 1.3459 1.3454 1.3449 1.3444 1.3438 1.3433 1.3427 1.3421 1.3415 1.3408 1.3402 1.3395 1.3388 1.3381 1.3374 1.3366 1.3359 1.3351 1.3343 1.3335 1.3326 1.3318 1.3309 1.3300 1.3290 1.3281 1.3271 1.3261 1.3250 1.3239 1.3228 1.3217 1.3205 1.3193 1.3180 1.3167 1.3154 1.3140 1.3126 1.3111 1.3095 1.3080 1.3063 1.3046 1.3028 1.3010 0.3664 0.3654 0.3644 0.3633 0.3622 0.3610 0.3599 0.3587 0.3574 0.3561 0.3548 0.3534 0.3520 0.3505 0.3489 0.3473 0.3456 0.3438 0.3419 0.3400 0.3379 0.3358 0.3335 0.3311 0.3286 0.3260 0.3233 0.3204 0.3174 0.3142 0.3109 0.3075 0.3038 0.3001 0.2961 0.2920 0.2877 0.2833 0.2787 0.2739 0.2689 0.2638 0.2585 0.2530 0.2474 0.2416 0.2357 0.2296 0.2233 0.2170 0.2105 0.2039 0.1972 0.1904 0.1835 0.1766 0.1696 1.2990 1.2971 1.2950 1.2928 1.2906 1.2883 1.2858 1.2833 1.2807 1.2779 1.2751 1.2721 1.2690 1.2658 1.2625 1.2590 1.2554 1.2517 1.2478 1.2437 1.2395 1.2351 1.2306 1.2259 1.2211 1.2160 1.2108 1.2054 1.1999 1.1941 1.1882 1.1820 1.1757 1.1692 1.1625 1.1556 1.1485 1.1413 1.1338 1.1261 1.1183 1.1102 1.1020 1.0936 1.0850 1.0762 1.0673 1.0582 1.0488 1.0394 1.0297 1.0199 1.0099 0.9997 0.9894 0.9789 0.9683 0.1625 0.1555 0.1484 0.1413 0.1343 0.1272 0.1203 0.1133 0.1065 0.0998 0.0932 0.0867 0.0804 0.0742 0.0682 0.0624 0.0567 0.0513 0.0461 0.0412 0.0365 0.0320 0.0278 0.0238 0.0201 0.0167 0.0135 0.0106 0.0079 0.0055 0.0034 0.0015 -0.0002 -0.0016 -0.0028 -0.0038 -0.0046 -0.0052 -0.0057 -0.0060 -0.0061 -0.0061 -0.0060 -0.0058 -0.0055 -0.0051 -0.0047 -0.0042 -0.0036 -0.0031 -0.0025 -0.0019 -0.0012 -0.0006 0 0.9575 0.9465 0.9353 0.9240 0.9126 0.9009 0.8891 0.8772 0.8650 0.8527 0.8401 0.8274 0.8145 0.8014 0.7881 0.7745 0.7607 0.7467 0.7324 0.7178 0.7030 0.6879 0.6725 0.6568 0.6408 0.6244 0.6077 0.5907 0.5733 0.5556 0.5374 0.5189 0.5001 0.4808 0.4611 0.4411 0.4207 0.3999 0.3787 0.3571 0.3352 0.3129 0.2903 0.2674 0.2442 0.2206 0.1969 0.1728 0.1486 0.1241 0.0995 0.0748 0.0499 0.0250 0
  20. 20. CONTROL AVANZADO DE SISTEMAS Jaime Martínez Verdú CONTROL ÓPTIMO 2-6
  21. 21. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO APARTADO (ii) Diseñar un regulador lineal cuadrático en el estado estacionario de forma que se minimice la función de coste: J 1   (q1  x12,k  q2  x22,k  r  u k2 ) 2 k 0 donde q1, q2 y r tienen los mismos valores que en el apartado anterior. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 function K2=ctroptest(F,G,R,Q) [n m]=size(F); S=eye(n); % Inicializamos el valor actual Sk al de Sn final (algortimo recursivo hacia detras) E=1e-6; fin=0; while fin==0 Saux=S; M=S-S*G*inv(R+G'*S*G)*G'*S; S=F'*M*F+Q; a=max(max(abs(Saux-S))); if a<=E fin=1; end end K2=inv(R+G'*S*G)*G'*S*F; return Crearemos un fichero .m, cuyo comienzo es semejante al anterior, con el siguiente código implementado: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector F=[0,1;-2,0]; % Introducimos la Matriz de Estados F G=[0;1]; % Introducimos la Matriz de Entradas G Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r Sn=[2,0;0,1]; % Valor final de S [Fd,Gd]=c2d(F,G,T); % A continuación obtenemos el valor de la ganancia de realimentación optima % que minimiza la función de coste propuesta Kii=ctroptest(Fd,Gd,R,Q,N,Sn); Kii Kii = 0.4077 1.3598 Jaime Martínez Verdú 2-7
  22. 22. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO APARTADO (iii) Comparar los sistemas. Tal y como puede observarse, el valor de la ganancia en un control en el estado estacionario es coincide justamente con la ganancia del control en un intervalo finito aunque en éste solamente coincide durante un período de tiempo. No obstante, la comparación debemos realizarla más exhaustiva y, para ello, analizaremos la trayectoria de estados y de acciones de control. Para realizar la comparación de aplicar un control en un tiempo finito o un control en el espacio estacionario se ha desarrollado la siguiente función de MatLab®: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector F=[0,1;-2,0]; % Introducimos la Matriz de Estados F G=[0;1]; % Introducimos la Matriz de Entradas G Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r Sn=[2,0;0,1]; % Valor final de S [F,G]=c2d(A,B,T); K1 = ctropt(F,G,R,Q,N,Sn); %Hallamos la ganancia óptima en int. finito X1(1,1)=1; X1(2,1)=0; for i=1:N-1 U1(i)=-K1(i,:)*X1(:,i); X1(:,i+1)=F*X1(:,i)+G*U1(i); end K2 = ctroptest (F,G,R,Q); %Hallamos la ganancia óptima en estado estacionario X2(1,1)=1; X2(2,1)=0; for i=1:N-1 U2(i)=-K2*X2(:,i); X2(:,i+1)=F*X2(:,i)+G*U2(i); end XDIFF=X1-X2; UDIFF=U1-U2; subplot(2,1,1) stairs(X1(1,:),'b') hold on stairs(X1(2,:),'r') TITLE('Trayectoria de Estados en control de intervalo finito') XLABEL('Muestras') YLABEL('Amplitud de la Trayectoria de Estados x1(k) y x2(k)') hold on subplot(2,1,2) stairs(U1,'b') TITLE('Trayectoria de las acciones de control en control de intervalo finito') XLABEL('Muestras') YLABEL('Amplitud de la acción de control u(k)') figure subplot(2,1,1) stairs(X2(1,:),'b') hold on stairs(X2(2,:),'r') TITLE('Trayectoria de Estados en control en Estado Estacionario') XLABEL('Muestras') YLABEL('Amplitud de la Trayectoria de Estados x1(k) y x2(k)') Jaime Martínez Verdú 2-8
  23. 23. CONTROL AVANZADO DE SISTEMAS 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 CONTROL ÓPTIMO hold on subplot(2,1,2) stairs(U1,'b') TITLE('Trayectoria de las acciones de control en Estado Estacionario') XLABEL('Muestras') YLABEL('Amplitud de la acción de control u(k)') figure subplot(2,1,1) stairs(XDIFF(1,:),'b') hold on stairs(XDIFF(2,:),'r') TITLE('Trayectoria de la diferencia de Estados') XLABEL('Muestras') YLABEL('Amplitud de la diferencia de Trayectoria de Estados ') hold on subplot(2,1,2) stairs(UDIFF,'b') TITLE('Trayectoria de la diferencia de las acciones de control ') XLABEL('Muestras') YLABEL('Amplitud de la diferencia de acciones de control') A Grosso modo, el funcionamiento de dicha función va dirigido a calcular la evolución de los estados y de la acción de control resultante de emplear cada una de las secuencia de ganancias de realimentación por un lado (X1, U1) y la ganancia de realimentación constante por otro (X2, U2). En las páginas siguientes, compararemos el funcionamiento de ambos sistemas de control basándonos en las siguientes gráficas. Jaime Martínez Verdú 2-9
  24. 24. CONTROL AVANZADO DE SISTEMAS Jaime Martínez Verdú CONTROL ÓPTIMO 2-10
  25. 25. CONTROL AVANZADO DE SISTEMAS Jaime Martínez Verdú CONTROL ÓPTIMO 2-11
  26. 26. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO La evolución de los estados no es fielmente la misma. De todas maneras, la diferencia es tan pequeña que es casi insignificativa. Por tanto, en este caso se puede decir que no es recomendable realizar un control en intervalo de Tiempo Finito puesto que la carga computacional no favorece la obtención de unos resultados mejores; se trabaja con mayor cantidad de datos debido a que la ganancia de realimentación tiene valores diferentes en cada instante de muestreo y la mejora en el control no es los suficientemente significativa como para que merezca la pene tal esfuerzo computacional de cálculos de ganancias. Jaime Martínez Verdú 2-12
  27. 27. Práctica 3: Control digital óptimo de un Péndulo Invertido ALUMNO: MARTÍNEZ VERDÚ, Jaime ASIGNATURA: CAV GRUPO: Martes de 12:30 a 14:30 Fecha límite: 23 de Junio de 2.006 INGENIERÍA INDUSTRIAL CURSO: 4º
  28. 28. Escuela Politécnica Superior de Elche Ingeniería Industrial CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO curso 2004-2005 PRÁCTICA 3: Control Digital Óptimo de un Péndulo Invertido Objetivos • • Aplicar el control digital óptimo en estado estacionario al diseño de un sistema de seguimiento. Simular en Matlab el comportamiento de un servosistema Descripción Se desea realizar el control digital óptimo del péndulo invertido que se muestra a continuación: El péndulo invertido es un sistema inestable, pudiendo caer en cualquier momento y hacia cualquier dirección, a menos que se le aplique una fuerza de control. La fuerza de control u se aplica sobre el carro. Se desea mantener el péndulo invertido en posición vertical tanto como sea posible realizando un control de la posición del carro. Se supone que la masa del péndulo, m, se concentra al final de la varilla, que la varilla tiene una longitud l, y que la masa del carro es M. Se define el ángulo de rotación de la varilla alrededor del punto P como θ, y la posición de carro se representa por x. El esquema de control que debe utilizarse para que la posición del carro siga la referencia introducida es el siguiente: Página 1 de 2
  29. 29. Escuela Politécnica Superior de Elche Ingeniería Industrial Se va a suponer que θ es pequeño, ya que se desea mantener el péndulo invertido en posición vertical. Con esta consideración, las ecuaciones del péndulo invertido son: & M lθ& = (M + m )gθ − u M && = u − m gθ x Asumiendo que la masa del carro es de 2 kg, la masa de la varilla es 0.1 kg y la longitud de la varilla es de 0.5 m, diseñar el esquema de control que hace que la posición del carro siga la referencia introducida y que la varilla se mantenga en posición vertical. Observaciones • • Considerar un periodo de muestreo de 0.1 segundos Simular el funcionamiento del sistema durante al menos 10 segundos Importante • Debe entregarse un informe de la práctica indicando los resultados obtenidos (gráficas del estado, señal de control, ...) junto con los listados de los ficheros de Matlab utilizados. • El plazo de entrega del informe de la práctica finaliza el día del examen de la asignatura en la convocatoria de Junio de 2005. Página 2 de 2
  30. 30. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 1. Introducción. Como objetivo esencial de la presente práctica es el de aplicar los conceptos de control digital óptimo en estado estacionario a un sistema de seguimiento adquiridos y desarrollados en clases de teoría. El sistema a controlar es el péndulo invertido mostrado en la figura. El carrito con un l·sen(θ) x péndulo invertido, se muestra a la derecha, es "empujado" con una fuerza impulsiva, u. Tenemos determinadas ya las ecuaciones θ Z l·cos(θ) dinámicas de movimiento del sistema, y hemos linealizado cerca del ángulo del péndulo, θ = 0 (en otras palabras, X asumamos que péndulo no se u aparta más que unos pocos grados de la vertical, elegida en un ángulo de π). Debemos encontrar un controlador para satisfacer todos los requerimientos de diseño. Para realizar el control óptimo se calculará la ganancia de realimentación óptima constante para el estado estacionario. Para ello, se empleará la función implementada en la práctica anterior ctroptest.m con unas ligeras modificaciones. Además de todo lo dicho, se simulará el sistema con MatLab® para probar que su comportamiento es los más estable posible. 2. Conceptos Teóricos. Las ecuaciones que representan al sistema del péndulo invertido son las siguientes:  Ml   ( M  m) g  u  M x  u  mg  Para este caso, asumamos que M masa del carro 2 kg m masa del péndulo 0.1 kg l longitud al centro de masa del péndulo 0.5 m u fuerza aplicada al carro x coordenadas de posición del carro  ángulo del péndulo respecto de la vertical Los requerimientos de diseño para este sistema son:   Periodo de muestreo de 0.1 segundos. Tiempo de simulación de 10 segundos. Jaime Martínez Verdú 3-1
  31. 31. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO Se toman las siguientes variables de estado de modo que todas ellas tengan significado físico. La variable de estado x1 será el ángulo del péndulo respecto a la vertical, la variable x2 la velocidad angular del péndulo, la variable de estado x3 hace referencia a la posición del carro y x4 a la velocidad lineal del carro::  x2 (t )   (t ) x1 (t )   (t ) x3 (t )  x(t )  x4 (t )  x(t ) El modelo de estado empleando las ecuaciones del péndulo invertido quedaría de la siguiente manera:    x1 (t )   (t )  x1 (t )  x 2 (t )    x3 (t )  x(t )  x3 (t )  x 4 (t ) ( M  m)  g 1 ( M  m)  g 1    (t )   u (t )  x 2 (t )   x1 (t )   u (t ) M l M l M l M l m g 1 m g 1    x 4 (t )  (t )  x 4 (t )   x  x1 (t )   u (t )  x 4 (t )     (t )   u (t ) M M M M    x 2 (t )  (t )  x 2 (t )  Por tanto, tendríamos el siguiente sistema de ecuaciones diferenciales:  x1 (t )  x 2 (t ) ( M  m)  g 1  x1 (t )   u (t ) M l M l  x 3 (t )  x 4 (t )  x 2 (t )   x 4 (t )   mg 1   (t )   u (t ) M M En forma matricial, el modelo de estado del sistema, queda del siguiente modo:   0  x1 (t )         ( M  m)  g  x2 (t )      M l    x3 (t )    0        x (t )   m  g  4  M  y  0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0   0    x1 (t )         1        x2 (t )  M  l       u (t )     x3 (t )   0          1        x4 (t )  M        x1 (t )       x2 (t )       x3 (t )       x (t )  4  Se pretende que el sistema siga una referencia determinada por lo que se hace necesario añadir un controlador integral. Jaime Martínez Verdú 3-2
  32. 32. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO Para averiguar el valor de la matriz de realimentación que hace estable al sistema, debemos analizar el sistema ampliado. Dicho sistema se obtiene del siguiente modo:       (k  1)  F  (k )  G w(k )   xe (k )   (k )      ve (k )     F F  C  F  con  0  I   G  G   C  G  F: es la matriz de estado del sistema discretizada. G: es la matriz de entradas del sistema discretizada. C: es la matriz de salidas del sistema. De esta forma, la nueva ecuación de estado del sistema es:       (k  1)  F  (k )  G w(k )   xe (k )    (k )      ve (k )    La señal de control es una realimentación de estado:    w(k )   K  (k )  K  K  KI  donde K es la matriz de realimentación del sistema KI es la constante del integrador.  Para calcular el valor de la ganancia K se define una función de coste que se pretende optiminzar minimizándola. Tal función de coste es la siguiente: J    1  T  ( k  Q   k  wkT  R  wk ) 2 k 0 Los valores de las matrices de ponderación se toman: 10 0  Q 0  0 0  Jaime Martínez Verdú 0 0 0 1 0 0 0 100 0 0 0 1 0 0 0 3-3 0 0  0  0 1  R  1
  33. 33. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 3. Procedimiento. A continuación mostraremos el código empleado en MatLab®: Jaime Martínez Verdú 3-4
  34. 34. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO La función ctroptest.m, es igual que la de la práctica anterior cambiando F y G por F1 y G1 que son las matrices del sistema discretizadas ampliadas. Si se simula el sistema durante diez segundos, se obtienen las gráficas expuestas en páginas siguientes. 4. Resultados. Tal y como se puede observar en los experimentos 1A 1B y 1C al ponderar más la posición del carro, la gráfica de su estado posee menos oscilaciones que en los demás casos. Por tanto, el valor de la salida será más estable. Con respecto a la posición angular no existe mucha diferencia de unos casos a otros. Al aumentar el valor del factor de ponderación de la acción de control de 1 a 10 se produce una notable mejora en la salida del sistema puesto que se suaviza mucho más sobre todo si estamos ponderando el tercer estado. En los demás casos 2B y 2C la salida es mejor aunque no tan buena. Se nota también una diferencia sobre todo en la trayectoria de la señal de control puesto que en los experimentos 1A 1B y 1C tuvo un pico inicial de unos 1.5 voltios y ahora no excede de 0.75. Por tanto, y obviamente, se ha disminuido la exigencia de señal de control. Al disminuir el valor del factor de ponderación de 1 a 0.1 se produce un aumento de oscilaciones en la salida y también de valores de la señal de control pues consigue picos de casi 3 voltios. Jaime Martínez Verdú 3-5
  35. 35. 1A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=1; 1B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=1; Trayectoria de los estados x(k) Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 1 0.8 0.8 Amplitud del estado x(k) 1.2 0.6 0.4 0.6 0.4 0.2 0.2 0 0 -0.2 -0.2 -0.4 0 10 20 30 40 50 60 70 80 -0.4 90 0 10 20 30 40 Muestras 50 Muestras 1C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=1; Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 Amplitud del estado x(k) Amplitud del estado x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 0.8 0.6 0.4 0.2 0 -0.2 -0.4 0 10 20 30 40 50 Muestras 60 70 80 90 60 70 80 90
  36. 36. 1A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=1; 1B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=1; Trayectoria de la salida y(k) Trayectoria de la salida y(k) 1.5 Amplitud de y(k) Amplitud de y(k) 1.5 1 0.5 0 0 10 20 30 40 50 60 70 80 1 0.5 0 90 0 10 20 30 Trayectoria de la señal de control u(k) Amplitud de u(k) Amplitud de u(k) 1 0 -0.5 0 10 20 30 40 50 60 70 80 70 80 90 60 70 80 90 60 70 80 90 1 0 -0.5 -1 90 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 20 Amplitud de v(k) 20 15 10 5 20 30 40 50 60 70 80 15 10 5 0 90 0 10 20 30 40 Muestras 50 Muestras 1C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=1; Trayectoria de la salida y(k) 1.5 Amplitud de y(k) 10 1 0.5 0 0 10 20 30 40 50 60 70 80 90 60 70 80 90 60 70 80 90 Trayectoria de la señal de control u(k) 2 Amplitud de u(k) 0 1 0 -1 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 15 Amplitud de v(k) Amplitud de v(k) 60 0.5 Trayectoria de la salida del integrador v(k) 0 50 1.5 0.5 -1 40 Trayectoria de la señal de control u(k) 1.5 10 5 0 0 10 20 30 40 50 Muestras
  37. 37. 2A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=10; 2B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=10; Trayectoria de los estados x(k) Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 1 0.8 0.8 Amplitud del estado x(k) 1.2 0.6 0.4 0.6 0.4 0.2 0.2 0 0 -0.2 -0.2 -0.4 0 10 20 30 40 50 60 70 80 -0.4 90 0 10 20 30 40 50 Muestras Muestras 2C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=10; Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 Amplitud del estado x(k) Amplitud del estado x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 0.8 0.6 0.4 0.2 0 -0.2 -0.4 0 10 20 30 40 50 Muestras 60 70 80 90 60 70 80 90
  38. 38. 2A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=10; 2B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=10; Trayectoria de la salida y(k) Trayectoria de la salida y(k) 1.5 Amplitud de y(k) Amplitud de y(k) 1.5 1 0.5 0 0 10 20 30 40 50 60 70 80 1 0.5 0 90 0 10 20 30 Amplitud de u(k) Amplitud de u(k) 0.5 0 0 10 20 30 40 50 60 70 80 70 80 90 60 70 80 90 60 70 80 90 0 -0.5 -1 90 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 20 25 Amplitud de v(k) 20 15 10 5 20 30 40 50 60 70 80 15 10 5 0 90 0 10 20 30 40 Muestras 50 Muestras 2C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=10; Trayectoria de la salida y(k) 1.5 Amplitud de y(k) 10 1 0.5 0 0 10 20 30 40 50 60 70 80 90 60 70 80 90 60 70 80 90 Trayectoria de la señal de control u(k) 1 Amplitud de u(k) 0 0.5 0 -0.5 -1 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 20 Amplitud de v(k) Amplitud de v(k) 60 0.5 Trayectoria de la salida del integrador v(k) 0 50 1 1 -0.5 40 Trayectoria de la señal de control u(k) Trayectoria de la señal de control u(k) 15 10 5 0 0 10 20 30 40 50 Muestras
  39. 39. 3A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; 3B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; Trayectoria de los estados x(k) Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 1 0.8 0.8 Amplitud del estado x(k) 1.2 0.6 0.4 0.6 0.4 0.2 0.2 0 0 -0.2 -0.2 -0.4 0 10 20 30 40 50 60 70 80 -0.4 90 0 10 20 30 40 Muestras 50 Muestras 3C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; Trayectoria de los estados x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 1.2 1 Amplitud del estado x(k) Amplitud del estado x(k) x1 posicion angular x2 velocidad angular x3 posicion del carro x4 velocidad del carro 1.4 0.8 0.6 0.4 0.2 0 -0.2 -0.4 0 10 20 30 40 50 Muestras 60 70 80 90 60 70 80 90
  40. 40. 3A Q=[10 0 0 0 0;0 1 0 0 0;0 0 100 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; 3B Q=[100 0 0 0 0;0 1 0 0 0;0 0 10 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; Trayectoria de la salida y(k) Trayectoria de la salida y(k) 1.5 Amplitud de y(k) Amplitud de y(k) 1.5 1 0.5 0 0 10 20 30 40 50 60 70 80 1 0.5 0 90 0 10 20 30 Amplitud de u(k) Amplitud de u(k) 2 1 0 0 10 20 30 40 50 60 70 80 70 80 90 60 70 80 90 60 70 80 90 1 0 -1 -2 90 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 15 Amplitud de v(k) 15 10 5 20 30 40 50 60 70 80 10 5 0 90 0 10 20 30 40 Muestras 50 Muestras 3C Q=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1];R=0.1; Trayectoria de la salida y(k) 1.5 Amplitud de y(k) 10 1 0.5 0 0 10 20 30 40 50 60 70 80 90 60 70 80 90 60 70 80 90 Trayectoria de la señal de control u(k) 4 Amplitud de u(k) 0 2 0 -2 0 10 20 30 40 50 Trayectoria de la salida del integrador v(k) 10 Amplitud de v(k) Amplitud de v(k) 60 2 Trayectoria de la salida del integrador v(k) 0 50 3 3 -1 40 Trayectoria de la señal de control u(k) Trayectoria de la señal de control u(k) 8 6 4 2 0 0 10 20 30 40 50 Muestras
  41. 41. Práctica 4: Problema del Seguimiento Lineal cuadrático ALUMNO: MARTÍNEZ VERDÚ, Jaime ASIGNATURA: CAV GRUPO: Martes de 12:30 a 14:30 Fecha límite: 23 de Junio de 2.006 INGENIERÍA INDUSTRIAL CURSO: 4º
  42. 42. Escuela Politécnica Superior de Elche Ingeniería Industrial CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO PRÁCTICA Cuadrático 4: Problema de curso 2004-2005 Seguimiento Lineal Objetivos • • • Diseñar un regulador lineal cuadrático óptimo para que el estado de un sistema siga una referencia durante un intervalo de tiempo utilizando Matlab. Implementar una función en Matlab que calcule los parámetros de regulación óptima en cada instante para que el estado siga una referencia. Simular en Matlab el comportamiento del sistema con el control óptimo de seguimiento diseñado. Descripción Considérese el siguiente sistema discreto correspondiente a un servomotor, obtenido utilizando un periodo de muestreo T = 0.06 s: ⎡ x1 (k + 1)⎤ ⎡1 0.053⎤ ⎡ x1 (k )⎤ ⎡0.0116⎤ ⎢ x (k + 1)⎥ = ⎢0 0.787 ⎥ ⎢ x (k )⎥ + ⎢ 0.373 ⎥u (k ) ⎦⎣ 2 ⎦ ⎣ ⎦ ⎣ 2 ⎦ ⎣ donde x1 y x2 representan respectivamente la posición y velocidad del servomotor. (i) Suponiendo el estado inicial es x0 = [1 0]T, diseñar un regulador lineal cuadrático de forma que se minimice el siguiente índice durante un intervalo de control de 5 s: J= [ N −1 1 (xN − rN )T S (xN − rN ) + 1 ∑ (xk − rk )T Q(xk − rk ) + ukT Ruk 2 2 k =0 ] ⎡15 0 ⎤ T donde R = 0.1, S = Q = ⎢ ⎥ , rk = [2 0] , k = 0, 1, …,N. ⎣ 0 0.2⎦ (ii) Diseñar el regulador considerando que la referencia introducida es rk = [4 0]T, k = 0, 1, …,N. (iii) Comprobar que en tanto en (i) como en (ii) el regulador diseñado consigue que el estado del sistema siga la referencia indicada. Página 1 de 2
  43. 43. Escuela Politécnica Superior de Elche Ingeniería Industrial Observaciones Deberá implementarse una función en Matlab que a partir de las matrices de la ecuación de estado, los factores de ponderación de la función de coste, el número de intervalos de muestreo, y de la referencia que debe seguir el estado, devuelva los parámetros de regulación óptima en cada instante de muestreo. Así mismo deberá crearse un fichero de Matlab para realizar la simulación del sistema discreto con los parámetros de regulación óptima calculados. Importante • Debe entregarse un informe de la práctica indicando los resultados obtenidos (gráficas del estado, señal de control, ...) junto con los listados de los ficheros de Matlab utilizados. • El plazo de entrega del informe de la práctica finaliza el día del examen de la asignatura en la convocatoria de Junio de 2005. Página 2 de 2
  44. 44. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO 1. Desarrollo teórico. Esencialmente, el objetivo de esta práctica va dirigido a diseñar un regulador lineal cuadrático óptimo, para cualquier estado del sistema siga una señal de referencia determinada. Para ello se implementarán en Matlab las funciones de computación de parámetros para cada instante. Finalmente, se simulará el sistema para dos referencias distintas verificando el comportamiento del sistema. El sistema discreto obtenido con un tiempo de muestreo de 0.06 s que va a ser objeto de estudio, correspondiente a un servomotor, es el siguiente:  x1 (k  1)  1       x2 (k  1) 0 0.053   x1 (k )  0.0116      u (k )      0.787   x2 (k )  0.373  donde x1 representa la posición del servomotor y x2 representa la velocidad del servomotor. Suponiendo que el estado inicial es x0 = [0 1]T y la minimización del índice de costes debe realizarse durant4e un intervalo de tiempo de5 s;: J 1 1 N 1 T ( x N  rN )T  S  ( xN  rN )   [( xK  rK )T  Q  ( xK  rK )  u K  R  u K 2 2 K 0 donde R = 0.1, S y Q son las matrices de ponderación y que son exactamente iguales (matrices diagonales con pivotes 15 y 0.2) y rk la señal de referencia. Tal y como nos explicó José María Azorín en clases de teoría, la señal de control viene definida de la siguiente manera: uk   K k xk  M k Las matrices Kk y Mk se obtiene de forma recursiva hacia atrás empleando las siguientes expresiones matemáticas: K k  ( R  G T S k 1G ) 1 G T S k 1 F M k  ( R  G T S k 1G ) 1 G T Pk 1 Para poder obtener los valores de dichas matrices, necesitamos calcular también las matrices Pk y Sk del siguiente modo: Pk  F T Pk 1  F T S k 1G ( R  G T S k 1G ) 1 G T Pk 1  Qrk S k  F T ( S k 1  S k 1G ( R  G T S k 1G ) 1 G T S k 1 ) F  Q Para poder aplicar el algoritmo, hemos de conocer el valor de las condiciones iniciales del algoritmo que son: KN = 0, SN, MN = 0 y PN = -SN·RN. Jaime Martínez Verdú 4-1
  45. 45. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO El programa desarrollado para la realización de la práctica es el siguiente: Para modificar el valor de la amplitud de la señal de referencia hemos de variar la línea 10 cambiando [1 0]’ por [4 0]’ para pasar de un apartado a otro. Tal y como se puede comprobar en las prácticas, se alcanza el valor en ambos casos. Jaime Martínez Verdú 4-2
  46. 46. CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO El programa desarrollado para calcular las matrices K y M es el siguiente: Jaime Martínez Verdú 4-3
  47. 47. CONTROL AVANZADO DE SISTEMAS Jaime Martínez Verdú CONTROL ÓPTIMO 4-4
  48. 48. CONTROL AVANZADO DE SISTEMAS Jaime Martínez Verdú CONTROL ÓPTIMO 4-5
  49. 49. Escuela Polit´cnica Superior de Elche e Ingenier´ Industrial ıa Examen de Control Avanzado de Sistemas ´ Control Optimo Junio 2002 1. Consid´rese el siguiente sistema discreto escalar: e xk+1 = f (xk , uk ) yk = cxk Plantear las ecuaciones del controlador optimo que hacen que la salida del sistema siga una se˜al de ´ n referencia rk sobre el intervalo [0, N ], suponiendo que el estado inicial x0 es conocido y que el estado final xN puede variarse en la b´squeda de la soluci´n ´ptima. u o o (4 puntos) 2. Consid´rese el siguiente sistema continuo: e x1 (t) ˙ 01 = x2 (t) ˙ 00 x1 (t) 0 + u(t) x2 (t) 1 y la siguiente funci´n de coste: o J(0) = 1 2 ∞ (x(t)T 0 q1 0 x(t) + u2 (t))dt 0 q2 Determinar los valores de q1 y q2 para que el polinomio caracter´ ıstico del sistema en bucle cerrado utilizando la ganancia de realimentaci´n sub´ptima sea: o o p(s) = s2 + 5s + 10 (6 puntos)
  50. 50. Escuela Polit´cnica Superior de Elche e Ingenier´ Industrial ıa Examen de Control Avanzado de Sistemas ´ Control Optimo Septiembre 2003 1. Consid´rese el siguiente sistema discreto lineal escalar: e xk+1 = 4xk + 2uk (a) Encontrar la ley de control optimo que minimiza la funci´n de coste siguiente: ´ o ∞ (4x2 + 4u2 ) k k J= k=0 (3 puntos) (b) Obtener la ubicaci´n de los polos del sistema en bucle cerrado utilizando la ley de control calculada. o ¿Es estable el sistema en bucle cerrado? Razonar la respuesta. (0.5 puntos) (c) Calcular el valor de la funci´n de coste asociado a la estrategia de control optimo si el estado inicial o ´ es x0 = 3. (0.5 puntos) (d) Consid´rese que el sistema anterior ha sido obtenido al discretizar un sistema continuo con un periodo e de muestreo de 0.1 seg. Plantear la expresi´n de la funci´n de coste que deber´ minimizarse si se o o ıa desea controlar el sistema unicamente durante 2 seg de forma que se utilice la m´ ´ ınima se˜al de n control posible, asumiendo que el estado inicial es conocido y que el estado final puede variarse en la b´squeda de la soluci´n optima. Razonar la respuesta. u o ´ (1.5 puntos) 2. Consid´rese el sistema continuo descrito por la siguiente ecuaci´n diferencial: e o y (t) = u(t) ¨ (a) Calcular la ley de control que minimiza la siguiente funci´n de coste: o J= 1 2 ∞ (y 2 (t) + y 2 (t) + u2 (t))dt ˙ 0 (4 puntos) (b) Obtener la ubicaci´n de los polos del sistema en bucle cerrado utilizando la ley de control calculada. o ¿Es estable el sistema en bucle cerrado? Razonar la respuesta. (0.5 puntos)
  51. 51. Escuela Polit´cnica Superior de Elche e Ingenier´ Industrial ıa Examen de Control Avanzado de Sistemas ´ Control Optimo Junio 2004 1. Consid´rese el siguiente sistema discreto: e x1 (k + 1) = x2 (k) x2 (k + 1) = u(k) y la siguiente funci´n de coste: o ∞ J= x2 (k) + x2 (k) + x1 (k)x2 (k) + ru2 (k) 1 2 k=0 Determinar el valor de r para que los polos del sistema en bucle cerrado utilizando la ley de control o ´ptimo que minimiza la funci´n de coste anterior sean z1 = 0, z2 = −0.2. o (5 puntos) 2. Consid´rese el siguiente sistema continuo: e x(t) = ˙ 01 0 x(t) + u(t) 20 2 (a) Encontrar la ley de control optimo que minimiza la funci´n de coste: ´ o J= 1 2 ∞ 0 (x(t)T 10 x(t) + 2u2 (t))dt 01 (3 puntos) (b) Obtener la ubicaci´n de los polos del sistema en bucle cerrado utilizando la ley de control calculada. o ¿Es estable el sistema en bucle cerrado? Razonar la respuesta. (1 punto) (c) Indicar cual ser´ la funci´n de coste que habr´ que minimizar si se deseara que el estado x(t) ıa o ıa siguiera un estado de referencia r(t) durante un intervalo de control [t0 , T ]. (1 punto)
  52. 52. Escuela Polit´cnica Superior de Elche e Ingenier´ Industrial ıa Examen de Control Avanzado de Sistemas ´ Control Optimo Diciembre 2004 1. Consid´rese el siguiente sistema discreto: e xk+1 = 01 0 x + u 00 k 1 k y la siguiente funci´n de coste: o J= 1 2 ∞ (xT k k=0 11 x + 2u2 ) k 1q k (a) Determinar el valor de q para que los polos del sistema en bucle cerrado, utilizando la ley de control ´ptimo que minimiza la funci´n de coste anterior, sean z1 = 0, z2 = −0.1. o o (7 puntos) (b) ¿Es necesario aplicar el control ´ptimo para poder determinar cu´l es el valor ´ptimo de la funci´n o a o o de coste? Razonar la respuesta. (1 punto) (c) Plantear la funci´n de coste a minimizar para que la salida del sistema, y k = Cxk , siga una se˜al de o n referencia rk durante el intervalo de control [0, N ]. (2 puntos)

×