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

52
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:

Upload: jaime-martinez-verdu

Post on 22-Nov-2014

705 views

Category:

Education


1 download

DESCRIPTION

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.

TRANSCRIPT

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

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º

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 1 de 2

CONTROL AVANZADO DE SISTEMAS curso 2005-2006 CONTROL ÓPTIMO

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:

kkk uxx 231 +=+ 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:

( )∑−

=

++=1

0

222 210N

kkkN uxxJ

(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:

000*

21 xSxJ T=

Comprobar que en ambos casos se obtiene el mismo resultado.

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 2 de 2

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-1

1. Desarrollo teórico.

Tal y como viene expresado en el enunciado, el sistema discreto a controlar es el

siguiente:

kkk uxx 231

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:

kkk uxx GF1

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:

kkkkkk ugxfxuxx 1

escalaresson y

1

GFGF

23

2311

gf

uxxugxfx kkkkkk

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:

1

0

222 )2(10N

k

kkN uxxJ

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:

1

0

222escalaresson y ,1

0

)(2

1

2

1)(

2

1

2

1 N

k

NNNN

N

k

k

T

kk

T

kNN

T

N urxqxsJuuxxxxJN RQS

RQS

Si esta expresión de la función de coste obtenida la comparamos con la

proporcionada por el enunciado, obtenemos los siguientes resultados:

212

142

2

12010

2

1

)2(10)(2

1

2

1 1

0

2221

0

222

rrqqss

uxxJurxqxsJ

NN

N

k

kkN

N

k

NNNN

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-2

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:

1

2

1

k

kk

sgr

sgfk

qsgr

rsfs

k

kk

1

2

1

2

Transformación de las ecuaciones de Riccati en código MatlLab®:

1 function [k,s]=ctropt1d(f,g,r,q,N,Sn) 2 3 i=N; % La obtención de los valores de k y s se hace recursividad hacia atrás 4 s(N)=Sn; % Damos el valor de Sn al valor final de S 5 k(N)=0; % La ganancia final será nula 6 7 for i=N-1:-1:1 8 k(i)=f*g*s(i+1)/(r+g^2*s(i+1)); 9 s(i)=((f^2*s(i+1)*r)/(r+g^2*s(i+1)))+q; 10 end 11 12 return

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-3

2. Desarrollo práctico.

APARTADO (i) Encontrar la ganancia de realimentación óptima que minimiza la

función de coste siguiente:

1

0

222 )2(10N

k

kkN uxxJ

Crearemos un fichero .m con el siguiente código implementado:

1 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos

2 Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f

6 g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g

7 q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q

8 r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r

9 Sn=20; % Valor final de S

10

11 % A continuación obtenemos el valor de la ganancia de realimentación optima

12 % que minimiza la función de coste propuesta

13

14 [k,s]=ctroptd(f,g,r,q,N,Sn);

15 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 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 9 through 16

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 17 through 24

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 25 through 32

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 33 through 40

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 41 through 48

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 49 through 56

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 57 through 64

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 65 through 72

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 73 through 80

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 81 through 88

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874

Columns 89 through 96

1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 1.3874 Columns 97 through 101

1.3874 1.3876 1.3912 1.4634 0

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-4

020

40

60

80

100

120

0

0.51

1.5

Tra

yecto

ria d

e la g

ananacia

de c

ontr

ol optim

a k

Muestr

as

Amplitud de la gananacia de control optima k

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-5

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 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos

2 Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f

6 g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g

7 q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q

8 r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r

9 Sn=20; % Valor final de S

10

11 % A continuación obtenemos el valor de la ganancia de realimentación optima

12 % que minimiza la función de coste propuesta

13

14 [k,s]=ctroptd(f,g,r,q,N,Sn);

15

16 x(1)=4; % Obtenemos del estado para k = 0 x1

17 for i=1:N-1

18 u(i)=-k(i)*x(i); % Obtenemos cada acción de control desde k = 0 u0 hasta k = N-1 uN-1

19 x(i+1)=f*x(i)+g*u(i); % Obtenemos cada estado desde k = 1 x2 hasta k = N xN

20 end

21 u(i+1)=-k(i)*x(i); ); % Obtenemos la acción de control para k = N uN

22 subplot(2,1,1)

23 stairs(u,'k')

24 TITLE('Trayectoria de la señal de control optima u(k)')

25 XLABEL('Muestras')

26 YLABEL('Amplitud de la señal de control u(k)')

27 AXIS([0 100 -7 1])

28 hold on

29 subplot(2,1,2)

30 stairs(x,'b')

31 TITLE('Trayectoria del estado resultante al aplicar la señal de control x(k)')

32 XLABEL('Muestras')

33 YLABEL('Amplitud de los estados x(k)')

34 AXIS([0 100 -1 4])

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-6

x =

Columns 1 through 8

4.0000 0.6863 0.1177 0.0202 0.0035 0.0006 0.0001 0.0000

Columns 9 through 16

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 17 through 24

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 25 through 32

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 33 through 40

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 41 through 48

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 49 through 56

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 57 through 64

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 65 through 72

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 73 through 80

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 81 through 88

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 89 through 96

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

Columns 97 through 101

0.0000 0.0000 0.0000 0.0000 0.0000

u =

Columns 1 through 8

-5.6569 -0.9706 -0.1665 -0.0286 -0.0049 -0.0008 -0.0001 -0.0000

Columns 9 through 16

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 17 through 24

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 25 through 32

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 33 through 40

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 41 through 48

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 49 through 56

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 57 through 64

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 65 through 72

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 73 through 80

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 81 through 88

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 89 through 96

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

Columns 97 through 101

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-7

010

20

30

40

50

60

70

80

90

100

-7-6-5-4-3-2-101Tra

yecto

ria d

e la s

eñal de c

ontr

ol optim

a u

(k)

Muestr

as

Amplitud de la señal de control u(k)

010

20

30

40

50

60

70

80

90

100

-101234Tra

yecto

ria d

el esta

do r

esultante

al aplic

ar

la s

eñal de c

ontr

ol x(k

)

Muestr

as

Amplitud de los estados x(k)

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 1-8

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:

000

*

2

1xSxJ T

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 T=0.01; % Sistema discretizado con un periodo de muestreo de T = 0.01 segundos

2 Tc=1; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 1 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 f=3; % Introducimos la Matriz de Estados F que en este caso es un escalar f

6 g=2; % Introducimos la Matriz de Entradas G que en este caso es un escalar g

7 q=2; % Introducimos la Matriz de Ponderación de estados Q que en este caso es un escalar q

8 r=2; % Introducimos la Matriz de Ponderación de la señal de control R que es un escalar r

9 Sn=20; % Valor final de S

10

11 % A continuación obtenemos el valor de la ganancia de realimentación optima

12 % que minimiza la función de coste propuesta

13

14 [k,s]=ctroptd(f,g,r,q,N,Sn);

15

16 x(1)=4; % Obtenemos del estado para k = 0 x1

17 for i=1:N-1

18 u(i)=-k(i)*x(i); % Obtenemos cada acción de control desde k = 0 u0 hasta k = N-1 uN-1

19 x(i+1)=f*x(i)+g*u(i); % Obtenemos cada estado desde k = 1 x2 hasta k = N xN

20 end

21 u(i+1)=-k(i)*x(i); ); % Obtenemos la acción de control para k = N uN

22 Xn=x(i+1)^2;

23 a=0;

24 b=0;

25 for i=1:N-1

26 Xk(i)=x(i)^2; % Vamos calculando cada uno de los cuadrados de los estados

27 Uk(i)=u(i)^2; % Vamos calculando cada uno de los cuadrados de las acciones de control

28 a=a+Xk(i); % Vamos sumando los cuadrados de los estados

29 b=b+Uk(i); % Vamos sumando los cuadrados de las acciones de control

30 end

31 J1=1/2*Sn*Xn+1/2*q*a+1/2*r*b

32 J2=1/2*x(1)*s(1)*x(1)

El resultado es el siguiente:

J1 =

65.9411

J2 =

65.9411

b

N

k

N

a

N

k

NNN

N

k

N

N

k

NNN

N

k

NNNN

urxqxsJ

urxqxsJurxqxsJ

1

0

21

0

22

1

0

21

0

221

0

222

)(2

1)(

2

1

2

1

)(2

1)(

2

1

2

1)(

2

1

2

1

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

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º

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 1 de 2

CONTROL AVANZADO DE SISTEMAS curso 2004-2005 CONTROL ÓPTIMO

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:

uxxxx

+−=

=

12

2

21

ω&

&

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:

( ) ( )∑−

=

++++=1

0

2222

211

222

211 2

121 N

kkkkNN ruxqxqxsxsJ

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 s2 = 1 q1 = 2 q2 = 1

r = 1

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 2 de 2

(ii) Diseñar un regulador lineal cuadrático en el estado estacionario de forma que se

minimice la función de coste:

( )∑∞

=∞ ++=

0

2222

2112

1k

kkk ruxqxqJ

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-1

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:

)()()(

)()(

1

2

2

21

tutxtx

txtx

, con 2 y

0)0(

1)0(

2

1

x

x

Si el sistema de dos ecuaciones lo convertimos a su forma matricial, obtenemos

el siguiente resultado:

)(1

0

)(

)(

02

10

)(

)(

2

1

2

1tu

tx

tx

tx

tx

, con

0

1

)0(

)0(

2

1

x

x

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 function K1=ctropt(F,G,R,Q,N,Sn)

2

3 S=Sn; % Damos el valor de Sn al valor final de S

4 [n m]=size(F);

5 K1(N,:)=zeros(1,n); % La ganancia final será nula

6 for i=N:-1:2

7 M=S-S*G*inv(R+G'*S*G)*G'*S;

8 K1(i-1,:)=inv(R+G'*S*G)*G'*S*F;

9 S=F'*M*F+Q;

10 end

11

12 return

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-2

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

0

22

,22

2

,11

2

,2,2

2

,1,1 )(2

1

2

1 N

k

kkkNNNN urxqxqxsxsJ

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:

2,1 Ns 1,2 Ns

21 q 12 q

1r

Podemos comparar la función de coste a estudiar con una función de coste en

forma general:

1

0

22

,22

2

,11

2

,2,2

2

,1,1 )(2

1

2

1 N

k

kkkNNNN urxqxqxsxsJ

1

0

)(2

1

2

1 N

k

k

T

kk

T

kNN

T

N uuxxxxJ

RQS

Para obtener los valores de las matrices realizamos las operaciones siguientes:

MATIZ NS :

Para obtener la forma de esta matriz necesitamos comparar el término fuera del

sumatorio, es decir,

2

,2,22,2,1,12

2

,1,11

,2,22,1,12

,2,12,1,11

,2,1

,2

,1

,22,12

,12,11

,2,1

,22,12

,12,11

,22,21

,12,11

2

2

1

NNNNNNN

NNNN

NNNN

NN

N

N

NN

NN

NNNN

T

N

NN

NN

N

simétricaes

NN

NN

N

xSxxSxS

xSxS

xSxSxx

x

x

SS

SSxxxx

SS

SS

SS

SSN

S

SSS

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-3

10

0202

2

,2,22

,12

,1,11

2

,2,22,2,1,12

2

,1,11

2

,2,2

2

,1,1

N

NN

N

NN

NNNNNNNNNNN

sS

S

sS

xSxxSxSxsxs

S

MATIZ Q :

Para obtener la forma de esta matriz necesitamos comparar el término izquierdo

de dentro del sumatorio, es decir,

2

,222,2,112

2

,111

,222,112

,212,111

,2,1

,2

,1

2212

1211

,2,1

2212

1211

2221

1211

2 kkkk

kk

kk

kk

k

k

kkk

T

k

simétricaes

xQxxQxQ

xQxQ

xQxQxx

x

x

QQ

QQxxxx

QQ

QQ

QQ

QQ

Q

QQQ

10

0202

2

222

12

111

2

,222,2,112

2

,111

2

,22

2

,11

Q

qQ

Q

qQ

xQxxQxQxqxq kkkkkk

MATIZ R :

Tal y como puede observarse, ésta matriz no es más que un escalar, por lo que su

valor es de 1.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-4

1 T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos

2 Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 F=[0,1;-2,0]; % Introducimos la Matriz de Estados F

6 G=[0;1]; % Introducimos la Matriz de Entradas G

7 Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q

8 R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r

9 Sn=[2,0;0,1]; % Valor final de S

10

11 [Fd,Gd]=c2d(F,G,T);

12

13 % A continuación obtenemos el valor de la ganancia de realimentación optima

14 % que minimiza la función de coste propuesta

15

16 Ki=ctropt(Fd,Gd,R,Q,N,Sn);

17 Ki;

18 subplot(2,1,1)

19 stairs(Ki(:,1),'b')

20 TITLE('Trayectoria de la ganancia de control optima K(k) que controla el estado x1(k)')

21 XLABEL('Muestras')

22 YLABEL('Amplitud de la ganancia de control K1(k)')

23 AXIS([0 400 0 0.5])

24 hold on

25 subplot(2,1,2)

26 stairs(Ki(:,2))

27 TITLE('Trayectoria de la ganancia de control optima K(k) que controla el estado x2(k)')

28 XLABEL('Muestras')

29 YLABEL('Amplitud de la ganancia de control K2(k)')

30 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 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598 0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598 0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4077 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598 0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598 0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3598

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597

0.4076 1.3597 0.4076 1.3597

0.4076 1.3597

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-5

0.4075 1.3597

0.4075 1.3597

0.4075 1.3597

0.4075 1.3597

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3596

0.4075 1.3595

0.4075 1.3595

0.4075 1.3595

0.4075 1.3595

0.4075 1.3595

0.4074 1.3595

0.4074 1.3595

0.4074 1.3595

0.4074 1.3594

0.4074 1.3594

0.4074 1.3594

0.4074 1.3594

0.4074 1.3594

0.4074 1.3594

0.4074 1.3593

0.4073 1.3593

0.4073 1.3593

0.4073 1.3593

0.4073 1.3593

0.4073 1.3592

0.4073 1.3592

0.4072 1.3592

0.4072 1.3592

0.4072 1.3591

0.4072 1.3591

0.4072 1.3591

0.4071 1.3591

0.4071 1.3590

0.4071 1.3590

0.4071 1.3590

0.4071 1.3590

0.4070 1.3589

0.4070 1.3589

0.4070 1.3589

0.4070 1.3588

0.4069 1.3588

0.4069 1.3588

0.4069 1.3587

0.4068 1.3587

0.4068 1.3586

0.4068 1.3586

0.4067 1.3586

0.4067 1.3585

0.4067 1.3585

0.4066 1.3584

0.4066 1.3584

0.4066 1.3583

0.4065 1.3583

0.4065 1.3583

0.4065 1.3582

0.4064 1.3581

0.4064 1.3581

0.4063 1.3580

0.4063 1.3580

0.4063 1.3579

0.4062 1.3579

0.4062 1.3578

0.4061 1.3577

0.4061 1.3577

0.4060 1.3576

0.4060 1.3575

0.4059 1.3575

0.4059 1.3574

0.4059 1.3573

0.4058 1.3572

0.4058 1.3571

0.4057 1.3570

0.4057 1.3569

0.4056 1.3568

0.4055 1.3567

0.4055 1.3566

0.4054 1.3565

0.4054 1.3564

0.4053 1.3563

0.4052 1.3562

0.4052 1.3560

0.4051 1.3559

0.4050 1.3558

0.4050 1.3556

0.4049 1.3554

0.4048 1.3553

0.4047 1.3551

0.4046 1.3549

0.4045 1.3548

0.4044 1.3546

0.4043 1.3544

0.4042 1.3542

0.4041 1.3539

0.4040 1.3537

0.4039 1.3535

0.4037 1.3532

0.4036 1.3530

0.4034 1.3527

0.4033 1.3525

0.4031 1.3522

0.4029 1.3519

0.4027 1.3516

0.4025 1.3512

0.4023 1.3509

0.4021 1.3506

0.4019 1.3502

0.4017 1.3498

0.4014 1.3495

0.4011 1.3491

0.4009 1.3487

0.4006 1.3482

0.4003 1.3478

0.3999 1.3474

0.3996 1.3469

0.3993 1.3464

0.3989 1.3459

0.3985 1.3454

0.3981 1.3449

0.3977 1.3444

0.3973 1.3438

0.3968 1.3433

0.3964 1.3427

0.3959 1.3421

0.3954 1.3415

0.3949 1.3408

0.3944 1.3402

0.3939 1.3395

0.3933 1.3388

0.3927 1.3381

0.3921 1.3374

0.3915 1.3366

0.3909 1.3359

0.3903 1.3351

0.3896 1.3343

0.3890 1.3335

0.3883 1.3326

0.3876 1.3318

0.3869 1.3309

0.3862 1.3300

0.3854 1.3290

0.3847 1.3281

0.3839 1.3271

0.3832 1.3261

0.3824 1.3250

0.3816 1.3239

0.3808 1.3228

0.3800 1.3217

0.3792 1.3205

0.3783 1.3193

0.3775 1.3180

0.3766 1.3167

0.3758 1.3154

0.3749 1.3140

0.3740 1.3126

0.3731 1.3111

0.3722 1.3095

0.3713 1.3080

0.3703 1.3063

0.3694 1.3046

0.3684 1.3028

0.3674 1.3010

0.3664 1.2990

0.3654 1.2971

0.3644 1.2950

0.3633 1.2928

0.3622 1.2906

0.3610 1.2883

0.3599 1.2858

0.3587 1.2833

0.3574 1.2807

0.3561 1.2779

0.3548 1.2751

0.3534 1.2721

0.3520 1.2690

0.3505 1.2658

0.3489 1.2625

0.3473 1.2590

0.3456 1.2554

0.3438 1.2517

0.3419 1.2478

0.3400 1.2437

0.3379 1.2395

0.3358 1.2351

0.3335 1.2306

0.3311 1.2259

0.3286 1.2211

0.3260 1.2160

0.3233 1.2108

0.3204 1.2054

0.3174 1.1999

0.3142 1.1941

0.3109 1.1882

0.3075 1.1820

0.3038 1.1757

0.3001 1.1692

0.2961 1.1625

0.2920 1.1556

0.2877 1.1485

0.2833 1.1413

0.2787 1.1338

0.2739 1.1261

0.2689 1.1183

0.2638 1.1102

0.2585 1.1020

0.2530 1.0936

0.2474 1.0850

0.2416 1.0762

0.2357 1.0673

0.2296 1.0582

0.2233 1.0488

0.2170 1.0394

0.2105 1.0297

0.2039 1.0199

0.1972 1.0099

0.1904 0.9997

0.1835 0.9894

0.1766 0.9789

0.1696 0.9683

0.1625 0.9575

0.1555 0.9465

0.1484 0.9353

0.1413 0.9240

0.1343 0.9126

0.1272 0.9009

0.1203 0.8891

0.1133 0.8772

0.1065 0.8650

0.0998 0.8527

0.0932 0.8401

0.0867 0.8274

0.0804 0.8145

0.0742 0.8014

0.0682 0.7881

0.0624 0.7745

0.0567 0.7607

0.0513 0.7467

0.0461 0.7324

0.0412 0.7178

0.0365 0.7030

0.0320 0.6879

0.0278 0.6725

0.0238 0.6568

0.0201 0.6408

0.0167 0.6244

0.0135 0.6077

0.0106 0.5907

0.0079 0.5733

0.0055 0.5556

0.0034 0.5374

0.0015 0.5189

-0.0002 0.5001

-0.0016 0.4808

-0.0028 0.4611

-0.0038 0.4411

-0.0046 0.4207

-0.0052 0.3999

-0.0057 0.3787

-0.0060 0.3571

-0.0061 0.3352

-0.0061 0.3129

-0.0060 0.2903

-0.0058 0.2674

-0.0055 0.2442

-0.0051 0.2206

-0.0047 0.1969

-0.0042 0.1728

-0.0036 0.1486

-0.0031 0.1241

-0.0025 0.0995

-0.0019 0.0748

-0.0012 0.0499

-0.0006 0.0250

0 0

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-6

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-7

APARTADO (ii) Diseñar un regulador lineal cuadrático en el estado estacionario de

forma que se minimice la función de coste:

0

22

,22

2

,11 )(2

1

k

kkk urxqxqJ

donde q1, q2 y r tienen los mismos valores que en el apartado anterior.

1 function K2=ctroptest(F,G,R,Q)

2 [n m]=size(F);

3 S=eye(n); % Inicializamos el valor actual Sk al de Sn final (algortimo recursivo hacia detras)

4 E=1e-6;

5 fin=0;

6 while fin==0

7 Saux=S;

8 M=S-S*G*inv(R+G'*S*G)*G'*S;

9 S=F'*M*F+Q;

10 a=max(max(abs(Saux-S)));

11 if a<=E

12 fin=1;

13 end

14 end

15 K2=inv(R+G'*S*G)*G'*S*F;

16 return

Crearemos un fichero .m, cuyo comienzo es semejante al anterior, con el

siguiente código implementado:

1 T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos

2 Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 F=[0,1;-2,0]; % Introducimos la Matriz de Estados F

6 G=[0;1]; % Introducimos la Matriz de Entradas G

7 Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q

8 R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r

9 Sn=[2,0;0,1]; % Valor final de S

10

11 [Fd,Gd]=c2d(F,G,T);

12

13 % A continuación obtenemos el valor de la ganancia de realimentación optima

14 % que minimiza la función de coste propuesta

15

16 Kii=ctroptest(Fd,Gd,R,Q,N,Sn);

17 Kii

Kii =

0.4077 1.3598

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-8

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 T=0.025; % Sistema discretizado con un periodo de muestreo de T = 0.025 segundos

2 Tc=10; % Intervalo de tiempo en el cual se desea controlar el sistema de Tc = 10 seg

3 t=[0:T:Tc]; % Calculamos el vector con los instantes en los cuales se sucede cada muestra

4 N=length(t); % Obtenemos el numero de muestras que van a existir, la dimensión del vector

5 F=[0,1;-2,0]; % Introducimos la Matriz de Estados F

6 G=[0;1]; % Introducimos la Matriz de Entradas G

7 Q=[2,0;0,1]; % Introducimos la Matriz de Ponderacion de estados Q

8 R=[1]; % Introducimos la Matriz de Ponderacion de la señal de control r

9 Sn=[2,0;0,1]; % Valor final de S

10 [F,G]=c2d(A,B,T);

11 K1 = ctropt(F,G,R,Q,N,Sn); %Hallamos la ganancia óptima en int. finito

12 X1(1,1)=1;

13 X1(2,1)=0;

14 for i=1:N-1

15 U1(i)=-K1(i,:)*X1(:,i);

16 X1(:,i+1)=F*X1(:,i)+G*U1(i);

17 end

18 K2 = ctroptest (F,G,R,Q); %Hallamos la ganancia óptima en estado estacionario

19 X2(1,1)=1;

20 X2(2,1)=0;

21 for i=1:N-1

22 U2(i)=-K2*X2(:,i);

23 X2(:,i+1)=F*X2(:,i)+G*U2(i);

24 end

25 XDIFF=X1-X2;

26 UDIFF=U1-U2;

27 subplot(2,1,1)

28 stairs(X1(1,:),'b')

29 hold on

30 stairs(X1(2,:),'r')

31 TITLE('Trayectoria de Estados en control de intervalo finito')

32 XLABEL('Muestras')

33 YLABEL('Amplitud de la Trayectoria de Estados x1(k) y x2(k)')

34 hold on

35 subplot(2,1,2)

36 stairs(U1,'b')

37 TITLE('Trayectoria de las acciones de control en control de intervalo finito')

38 XLABEL('Muestras')

39 YLABEL('Amplitud de la acción de control u(k)')

40

41 figure

42 subplot(2,1,1)

43 stairs(X2(1,:),'b')

44 hold on

45 stairs(X2(2,:),'r')

46 TITLE('Trayectoria de Estados en control en Estado Estacionario')

47 XLABEL('Muestras')

48 YLABEL('Amplitud de la Trayectoria de Estados x1(k) y x2(k)')

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-9

49 hold on

50 subplot(2,1,2)

51 stairs(U1,'b')

52 TITLE('Trayectoria de las acciones de control en Estado Estacionario')

53 XLABEL('Muestras')

54 YLABEL('Amplitud de la acción de control u(k)')

55

56 figure

57 subplot(2,1,1)

58 stairs(XDIFF(1,:),'b')

59 hold on

60 stairs(XDIFF(2,:),'r')

61 TITLE('Trayectoria de la diferencia de Estados')

62 XLABEL('Muestras')

63 YLABEL('Amplitud de la diferencia de Trayectoria de Estados ')

64 hold on

65 subplot(2,1,2)

66 stairs(UDIFF,'b')

67 TITLE('Trayectoria de la diferencia de las acciones de control ')

68 XLABEL('Muestras')

69 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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-10

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-11

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 2-12

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.

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

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º

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 1 de 2

CONTROL AVANZADO DE SISTEMAS curso 2004-2005 CONTROL ÓPTIMO

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:

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 2 de 2

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:

( )θ

θθgmuxM

ugmMlM−=

−+=&&

&&

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 3-1

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

péndulo invertido, se muestra a

la derecha, es "empujado" con

una fuerza impulsiva, u. Tenemos

determinadas ya las ecuaciones

dinámicas de movimiento del

sistema, y hemos linealizado

cerca del ángulo del péndulo,

θ = 0 (en otras palabras,

asumamos que péndulo no se

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:

mguxM

ugmMMl

)(

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.

X

Z

u

θ

x l·sen(θ)

l·cos(θ)

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 3-2

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::

)()(1 ttx )()(2 ttx )()(3 txtx )()(4 txtx

El modelo de estado empleando las ecuaciones del péndulo invertido quedaría de

la siguiente manera:

)(1

)()()(1

)()()()(

)(1

)()(

)()(1

)()(

)()()(

)()()()(

)()()()(

4144

1222

433

211

tuM

tM

gmtxtu

Mtx

M

gmtxtxtx

tulM

txlM

gmMtxtu

lMt

lM

gmMtxttx

txtxtxtx

txtxttx

Por tanto, tendríamos el siguiente sistema de ecuaciones diferenciales:

)(1

)()(

)()(

)(1

)()(

)(

)()(

4

43

12

21

tuM

tM

gmtx

txtx

tulM

txlM

gmMtx

txtx

En forma matricial, el modelo de estado del sistema, queda del siguiente modo:

)(

)(

)(

)(

0100

)(

1

0

1

0

)(

)(

)(

)(

000

1000

000)(

0010

)(

)(

)(

)(

4

3

2

1

4

3

2

1

4

3

2

1

tx

tx

tx

tx

y

tu

M

lM

tx

tx

tx

tx

M

gm

lM

gmM

tx

tx

tx

tx

Se pretende que el sistema siga una referencia determinada por lo que se hace

necesario añadir un controlador integral.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 3-3

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:

)(

)(

)(

)()()1(

kv

kx

k

kwkk

e

e

GF

con

GC

GG

IFC

FF

0

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:

)(

)(

)(

)()()1(

kv

kx

k

kwkk

e

e

GF

La señal de control es una realimentación de estado:

IKK

kkw

K

K )()(

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:

0

)(2

1

k

k

T

kk

T

k wwJ

RQ

Los valores de las matrices de ponderación se toman:

1

10000

01000

0010000

00010

000010

RQ

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 3-4

3. Procedimiento.

A continuación mostraremos el código empleado en MatLab®:

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 3-5

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.

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

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

-0.5

0

0.5

1

1.5Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15

20Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

-0.5

0

0.5

1

1.5Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15

20Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

0

1

2Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-0.5

0

0.5

1Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15

20

25Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

-0.5

0

0.5

1Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15

20Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

-0.5

0

0.5

1Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15

20Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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;

0 10 20 30 40 50 60 70 80 90-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Trayectoria de los estados x(k)

Muestras

Am

plit

ud d

el esta

do x

(k)

x1 posicion angular

x2 velocidad angular

x3 posicion del carro

x4 velocidad del carro

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

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-1

0

1

2

3Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-2

-1

0

1

2

3Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

5

10

15Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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;

0 10 20 30 40 50 60 70 80 900

0.5

1

1.5Trayectoria de la salida y(k)

Am

plit

ud d

e y

(k)

0 10 20 30 40 50 60 70 80 90-2

0

2

4Trayectoria de la señal de control u(k)

Am

plit

ud d

e u

(k)

0 10 20 30 40 50 60 70 80 900

2

4

6

8

10Trayectoria de la salida del integrador v(k)

Muestras

Am

plit

ud d

e v

(k)

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

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º

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 1 de 2

CONTROL AVANZADO DE SISTEMAS curso 2004-2005 CONTROL ÓPTIMO

PRÁCTICA 4: Problema de Seguimiento Lineal Cuadrático 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:

( )( )

( )( ) ( )kukxkx

kxkx

⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡++

373.00116.0

787.00053.01

11

2

1

2

1

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:

( ) ( ) ( ) ( )[ ]∑−

=

+−−+−−=1

021

21 N

kk

Tkkk

TkkNN

TNN RuurxQrxrxSrxJ

donde R = 0.1, ⎥⎦

⎤⎢⎣

⎡==

2.00015

QS , rk = [2 0]T, k = 0, 1, …,N.

(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.

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

Escuela Politécnica Superior de Elche

Ingeniería Industrial

Página 2 de 2

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 4-1

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:

)(

373.0

0116.0

)(

)(

787.00

053.01

)1(

)1(

2

1

2

1

ku

kx

kx

kx

kx

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;:

1

0

)()[(2

1)()(

2

1 N

K

K

T

KKK

T

KKNN

T

NN uRurxQrxrxSrxJ

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:

kkkk MxKu

Las matrices Kk y Mk se obtiene de forma recursiva hacia atrás empleando las

siguientes expresiones matemáticas:

1

1

1

1

1

1

)(

)(

k

T

k

T

k

k

T

k

T

k

PGGSGRM

FSGGSGRK

Para poder obtener los valores de dichas matrices, necesitamos calcular también

las matrices Pk y Sk del siguiente modo:

QFSGGSGRGSSFS

QrPGGSGRGSFPFP

k

T

k

T

kk

T

k

kk

T

k

T

k

T

k

T

k

))((

)(

1

1

111

1

1

111

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 4-2

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.

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 4-3

El programa desarrollado para calcular las matrices K y M es el siguiente:

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 4-4

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

CONTROL AVANZADO DE SISTEMAS CONTROL ÓPTIMO

Jaime Martínez Verdú 4-5

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

Escuela Politecnica Superior de Elche

Ingenierıa Industrial

Examen de Control Avanzado de Sistemas

Control Optimo

Junio 2002

1. Considerese el siguiente sistema discreto escalar:

xk+1 = f(xk, uk)yk = cxk

Plantear las ecuaciones del controlador optimo que hacen que la salida del sistema siga una senal dereferencia rk sobre el intervalo [0, N ], suponiendo que el estado inicial x0 es conocido y que el estadofinal xN puede variarse en la busqueda de la solucion optima.

(4 puntos)

2. Considerese el siguiente sistema continuo:[

x1(t)x2(t)

]

=

[

0 10 0

] [

x1(t)x2(t)

]

+

[

01

]

u(t)

y la siguiente funcion de coste:

J(0) =1

2

0

(x(t)T[

q1 00 q2

]

x(t) + u2(t))dt

Determinar los valores de q1 y q2 para que el polinomio caracterıstico del sistema en bucle cerradoutilizando la ganancia de realimentacion suboptima sea:

p(s) = s2 + 5s + 10

(6 puntos)

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

Escuela Politecnica Superior de Elche

Ingenierıa Industrial

Examen de Control Avanzado de Sistemas

Control Optimo

Septiembre 2003

1. Considerese el siguiente sistema discreto lineal escalar:

xk+1 = 4xk + 2uk

(a) Encontrar la ley de control optimo que minimiza la funcion de coste siguiente:

J =

∞∑k=0

(4x2k

+ 4u2k)

(3 puntos)

(b) Obtener la ubicacion de los polos del sistema en bucle cerrado utilizando la ley de control calculada.¿Es estable el sistema en bucle cerrado? Razonar la respuesta. (0.5 puntos)

(c) Calcular el valor de la funcion de coste asociado a la estrategia de control optimo si el estado iniciales x0 = 3. (0.5 puntos)

(d) Considerese que el sistema anterior ha sido obtenido al discretizar un sistema continuo con un periodode muestreo de 0.1 seg. Plantear la expresion de la funcion de coste que deberıa minimizarse si sedesea controlar el sistema unicamente durante 2 seg de forma que se utilice la mınima senal decontrol posible, asumiendo que el estado inicial es conocido y que el estado final puede variarse enla busqueda de la solucion optima. Razonar la respuesta. (1.5 puntos)

2. Considerese el sistema continuo descrito por la siguiente ecuacion diferencial:

y(t) = u(t)

(a) Calcular la ley de control que minimiza la siguiente funcion de coste:

J =1

2

∫∞

0

(y2(t) + y2(t) + u2(t))dt

(4 puntos)

(b) Obtener la ubicacion de los polos del sistema en bucle cerrado utilizando la ley de control calculada.¿Es estable el sistema en bucle cerrado? Razonar la respuesta. (0.5 puntos)

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

Escuela Politecnica Superior de ElcheIngenierıa Industrial

Examen de Control Avanzado de Sistemas

Control Optimo

Junio 2004

1. Considerese el siguiente sistema discreto:

x1(k + 1) = x2(k)x2(k + 1) = u(k)

y la siguiente funcion de coste:

J =∞∑

k=0

[x2

1(k) + x22(k) + x1(k)x2(k) + ru2(k)

]

Determinar el valor de r para que los polos del sistema en bucle cerrado utilizando la ley de controloptimo que minimiza la funcion de coste anterior sean z1 = 0, z2 = −0.2.

(5 puntos)

2. Considerese el siguiente sistema continuo:

x(t) =[

0 12 0

]x(t) +

[02

]u(t)

(a) Encontrar la ley de control optimo que minimiza la funcion de coste:

J =12

∫ ∞

0

(x(t)T

[1 00 1

]x(t) + 2u2(t))dt

(3 puntos)

(b) Obtener la ubicacion de los polos del sistema en bucle cerrado utilizando la ley de control calculada.¿Es estable el sistema en bucle cerrado? Razonar la respuesta.

(1 punto)

(c) Indicar cual serıa la funcion de coste que habrıa que minimizar si se deseara que el estado x(t)siguiera un estado de referencia r(t) durante un intervalo de control [t0, T ].

(1 punto)

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

Escuela Politecnica Superior de Elche

Ingenierıa Industrial

Examen de Control Avanzado de Sistemas

Control Optimo

Diciembre 2004

1. Considerese el siguiente sistema discreto:

xk+1 =

[

0 10 0

]

xk +

[

01

]

uk

y la siguiente funcion de coste:

J =1

2

∞∑

k=0

(xT

k

[

1 11 q

]

xk + 2u2k)

(a) Determinar el valor de q para que los polos del sistema en bucle cerrado, utilizando la ley de controloptimo que minimiza la funcion de coste anterior, sean z1 = 0, z2 = −0.1.

(7 puntos)

(b) ¿Es necesario aplicar el control optimo para poder determinar cual es el valor optimo de la funcionde coste? Razonar la respuesta.

(1 punto)

(c) Plantear la funcion de coste a minimizar para que la salida del sistema, yk = Cxk, siga una senal dereferencia rk durante el intervalo de control [0, N ].

(2 puntos)