Clase10-02

Anuncio
Universidad Nacional de Ingenierı́a - Facultad de Ingenierı́a Mecánica
Departamento Académico de Ingenierı́a Aplicada
CONTROL MODERNO Y ÓPTIMO (MT 227C)
Clase10-02
Elizabeth Villota Cerna
09/06/2010
Semestre 2010I - UNI
5.
Problema del Regulador Cuadrático Lineal (LQR, por sus siglas
en inglés)
Consideremos ahora el problema con planta lineal y criterio de desempeño cuadrático. En esta parte
investigaremos el uso de la ecuación de Hamilton-Jacobi-Bellman como una forma de resolver la forma
general del problema del regulador cuadrático lineal.
El sistema a ser controlado es descrito por las ecuaciones espacio de estado:
ẋ(t) = A(t)x(t) + B(t)u(t),
y(t) = Cx(t)
x(to ) = xo ,
(1)
y el ı́ndice de desempeño asociado a ser minimizado es:
Z tf
1 T
1 T
J(x) = x (tf )F x(tf ) +
x (t)Q(t)x(t) + uT (t)R(t)u(t) dt,
2
2
to
(2)
donde Q = QT ≥ 0 y F = F T son matrices reales simétricas semidefinidas positiva y R = RT > 0 es una
matriz real simétrica y definida positiva, el estado inicial to y el estado final tf son especificados, y u(t) y
x(t) no estan restringidos.
5.1.
Ecuación de Riccati Diferencial (DRE, por sus siglas en inglés)
Para usar la ecuación de Hamilton-Jacobi-Bellman, primero escribimos el Hamiltoniano H:
H(x(t), u(t), Jx∗ , t) =
1 T
[x (t)Q(t)x(t) + uT (t)R(t)u(t)] + Jx∗ (x(t), t)[A(t)x(t) + B(t)u(t)],
2
(3)
Una condición necesaria para u(t) que minimiza H es que ∂H/∂u = 0; entonces:
∂H
(x(t), u(t), Jx∗ , t) = R(t)u(t) + B T (t)Jx∗ (x(t), t) = 0.
∂u
(4)
La condición suficiente está dada por ∂ 2 H/∂u2 > 0, luego se tiene que:
∂2H
(x(t), u(t), Jx∗ , t) = R(t),
∂u2
(5)
que es definida positiva y H posee forma cuadrática en u. El control que satisface (4) minimiza H (globalmente). Resolviendo (4) para u∗ (t) resulta:
u∗ (t) = −R−1 (t)B T (t)Jx∗ (x(t), t).
(6)
Reemplazando u∗ (t) en (3) se obtiene:
H(x(t), u∗ (t), Jx∗ , t)
1 Cuando
1 T
x Qx +
2
1 T
= x Qx −
2
=
1 ∗T
J BR−1 B T Jx∗ + Jx∗T Ax − Jx∗T BR−1 B T Jx∗
2 x
1 ∗T
J BR−1 B T Jx∗ + Jx∗T Ax
2 x
sea evidente se ha omitido la dependencia del tiempo
1
(7)
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
La ecuación de Hamilton-Jacobi-Bellman se reduce a:
1
1
0 = Jt∗ + xT Qx − Jx∗T BR−1 B T Jx∗ + Jx∗T Ax
2
2
(8)
De (2) la condición de frontera es:
J ∗ (x(tf ), tf ) =
1 T
x (tf )F x(t).
2
(9)
Del análisis de estabilidad realizado en secciones anteriores para sistemas lineales, debe existir una función
de Lyapunov V (t) = xT (t)P (t)x(t) que garantice la estabilidad asintótica en lazo cerrado; esto es, existe
alguna matriz definida positiva P (t) y la derivada en función del tiempo dV /dt evaluada en las trayectorias
del sistema en lazo cerrado es definida negativa.
Luego, asumiendo la solución J ∗ (x(t), t) de la siguiente forma:
J ∗ (x(t), t) =
1 T
x (t)P (t)x(t),
2
(10)
donde P (t) es una matriz real simétrica definida positiva que debe ser determinada. Sustituyendo la solución
asumida en (8) resulta:
0=
1
1
1 T
x Ṗ x + xT Qx − xT P BR−1 B T P x + xT P Ax
2
2
2
(11)
La matriz P A que aparece en el último término puede ser escrita como la suma de una parte simétrica
y otra parte anti-simétrica,
1
1
(12)
P A = [P A + (P A)T ] + [P A − (P A)T ].
2
2
Usando la propiedad de matrices (P A)T = AT P T y sabiendo que la transpuesta de un escalar es igual a
si misma se puede demostrar que sólo la parte simétrica de P A contribuye en (26). Luego (26) puede ser
escrita como:
1
1
1
1
1
0 = xT Ṗ x + xT Qx − xT P BR−1 B T P x + xT P Ax + xT AT P x.
(13)
2
2
2
2
2
Esta ecuación debe cumplirse para todo x(t), luego:
0 = Ṗ (t) + Q(t) − P (t)B(t)R−1 (t)B T (t)P (t) + P (t)A(t) + AT (t)P (t),
(14)
y la condición de frontera de (9) y (10).
P (tf ) = F
(15)
La ecuación en (14) es conocida como la ecuación diferencial de Riccati.
A continuación consideremos las implicancias del resultado obtenido: primero, la ecuación diferencial
parcial de H-J-B se reduce a un conjunto de ecuaciones diferenciales no lineales ordinarias. Segundo, la
matriz P (t) puede ser determinada por integración numérica de (14) retrocediendo en el tiempo - a partir
de t = tf hacia t = to - usando la condición de frontera P (tf ) = F . En realidad dado que la matriz P (t) es
simétrica, necesitamos integrar solo n(n + 1)/2 ecuaciones diferenciales.
Una vez que P (t) ha sido determinado, la ley de control óptima está dada por:
u∗ (t) = −R−1 (t)B T (t)P (t)x(t),
(16)
donde al haber asumido (10), la ley de control óptima es lineal, variante en el tiempo y por realimentación
de estados. Por similitud con el control por realimentación de estados podemos reescribir:
u∗ (t) = −K(t)x(t).
(17)
La Fig. 1 muestra el diagrama de bloques de la realimentación de estados para el regulador cuadrático
lineal. Se observa que en general la ganancia LQR será dependiente del tiempo aún cuando el sistema sea
Clase10-02, pág. 18
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
Figura 1: Sistema en lazo cerrado con LQR.
LTI y la función de costo tenga matrices de ponderación Q y R constantes. Nótese que la ganancia del
controlador LQR es un controlador lineal por realimentación de estados y que la ganancia LQR sólo depende
de parámetros que se conocen con anticipación y luego podrı́a ser calculado fácilmente offline.
Una vez obtenida la ley de control óptima, el sistema en lazo cerrado está dado por:
ẋ(t) = Ac (t)x(t) = [A(t) − B(t)K(t)]x(t)
5.2.
(18)
Valor del Índice de Desempeño
El valor del ı́ndice de desempeño puede ser evaluado en base a la solución de la ecuación de Riccati.
Primero, notar que:
d T
(x P x) = ẋT P x + xT Ṗ x + xT P ẋ.
dt
Usando las ecuaciones (1), (14) y (16), se encuentra que:
d T
(x P x) = −xT Qx − uT Ru.
dt
Luego en el ı́ndice de desempeño (2) se obtiene:
J(u∗ )
1 T
x (tf )F x(tf ) −
2
1
= xT (tf )F x(tf ) −
2
=
Z 1 tf d T
x (t)P (t)x(t) dt,
2 to dt
1 T
1
x (tf )P (tf )x(tf ) + xT (to )P (to )x(to )dt
2
2
Usando (15) los dos primeros términos desaparecen y el valor óptimo (mı́nimo) del ı́ndice de desempeño es:
Jmı́n = 21 xT (to )P (to )x(to )
5.3.
Ejemplo integrador doble con LQR
Considere un integrador doble descrito por la ecuación espacio de estado:
0 1
p(t)
0
ẋ(t) = Ax(t) + Bu(t) =
+
u(t)
0 0
v(t)
1
Clase10-02, pág. 19
(19)
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
El vector de estados está formado por la posición p(t) y la velocidad v(t) y la entrada de control es la
aceleración u(t). El ı́ndice de desempeño a ser minimizado es:
1
1
J = xT (tf )F x(tf ) +
2
2
Z
tf
to
Aqui las matrices han sido seleccionadas como:
F =
Q=
T
x (t)Qx(t) + ρu2 (t) dt
f11
f12
f12
f22
rp
0
0
rv
ρ > 0.
,
,
Para que F y Q sean semidefinidas positivas, los parámetros rp , rv y ρ y los autovalores de F deben ser no
negativos. Introduciendo las matrices de ponderación en la ecuación de Riccati diferencial resulta:
−Ṗ (t)
= Q(t) − P (t)B(t)R−1 (t)B T (t)P (t) + P (t)A(t) + AT (t)P (t)
=
rp
0
0
rv
− P (t)
0
1
1
0 1 P (t) + P (t)
ρ
0 0
1 0
+
0 0
1 0
P (t)
Como P (t) es simétrico tenemos que resolver tres ecuaciones para los elementos de P (t) =
−ṗ11
−ṗ12
−ṗ22
p11
p12
p12
p22
:
= rp − ρ1 p212
= p11 − ρ1 p12 p22
= rv + 2p12 − ρ1 p222
Estas ecuaciones tienen que ser resueltas retrocediendo en el tiempo desde el valor inicial en el tiempo tf
donde P (tf ) = F . Integración numérica con los valores f11 = f12 = f22 = 1, rp = 3, rv = 4 y ρ = 1 resulta
en la solución mostrada en la Fig. 2. Se observa de la figura que los tres valores de los elementos de la matriz
P (t) se aproximan a una constante cuando tf − t comienza a crecer.
5
p11
4
3
P(t)
p22
2
p12
1
0
4
8
10
time [sec]
Figura 2: Solución de la ecuación de Ricatti para el integrador doble.
La Fig. 3 muestra la respuesta del control óptimo para diversos valores de la matriz Q. Se observa que
para grandes valores de los elementos de la matriz Q, la respuesta es más rápida pero con un mayor esfuerzo
de control (señal de control más grande).
Clase10-02, pág. 20
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
1
position
0
velocity
–1
0
1
2
3
0
Control signal
rp = 3 , rv = 4
rp = rv = 100
rp = rv = 10000
–4
NB. The dotted signal has a minimum at –60.
–8
0
1
2
3
time [sec]
Figura 3: Respuesta del sistema integrador doble con LQR.
6.
Regulador Cuadrático Lineal en Estado Estacionario - Horizonte Infinito
El control LQR antes mostrado es el control óptimo que minimiza el ı́ndice de desempeño sobre un intervalo de tiempo finito [to , tf ]. Se ha demuestra que lleva a una ganancia de control variante en el tiempo
que puede ser calculada offline. En la mayoria de los casos es más conveniente tener una matriz de ganancia constante. Es preferible entonces analizar el problema de control óptimo con un ı́ndice de desempeño
extendido hasta el infinito:
Z t
T
T
T
[x (t)Qx (t) + u (t)Ru(t) dt.
(20)
J(u) = lı́m
t→∞
to
Adicionalmente asumiremos que el sistema es invariante en el tiempo:
ẋ(t) = Ax(t) + Bu(t),
(21)
tal que todas las matrices son consideradas constantes y Q = QT ≥ 0 y R = RT > 0.
Siendo que el problema de control LQR estándar consiste en mover los estados del sistema hacia cero de
forma óptima, el vector de estados x(t) se aproximará al vector cero a medida que tf → ∞ si el sistema en
lazo cerrado es estable. Luego no es relevante incluir el término del estado final en el ı́ndice de desempeño,
que es lo mismo que considerar F = 0 en (2).
El valor óptimo del ı́ndice está dado por (14). Siendo que el sistema es LTI, el valor de Jmı́n es independiente del tiempo, lo que significa que la matriz P debe ser constante. Esto implica que Ṗ = 0 y la ecuación
de Riccati se reduce a:
0 = Q − P BR−1 B T P + P A + AT P.
(22)
Este es un conjunto de ecuaciones algebraicas no lineales acopladas cuadráticas. En la práctica se le llama
ecuación de Riccati algebraica.
Clase10-02, pág. 21
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
La ecuación (34) pueda tener múltiples soluciones pero solo una de ellas provee una matriz P semidefinida
positiva (siempre y cuando el sistema sea estabilizable) y la solución particular lleva a:
Jmı́n = 21 xTo P∞ xo .
(23)
donde P∞ es la solución constante de (34).
La matriz de ganancias óptima para el control LQR en estado estacionario queda definida por:
K∞ = R−1 B T P∞ ,
(24)
u(t) = −K∞ x(t).
(25)
y la señal de control resulta:
En conclusión, el controlador lineal por realimentación de estados óptimo que minimiza el ı́ndice de
desempeño:
Z t
T
T
T
[x (t)Qx (t) + u (t)Ru(t) dt.
J(u) = lı́m
t→∞
0
sujeto a
ẋ(t) = Ax(t) + Bu(t),
x(0) = xo
satisface el teorema a continuación.
El objetivo es construir un controlador lineal por realimentación de estados de la forma u = −Kx que
estabiliza al sistema y minimiza el ı́ndice de desempeño J(u). Denotar dicha ley de control lineal como u∗ .
Primero, asumimos que el controlador lineal por realimentación de estados óptimo existe tal que el sistema
en lazo cerrado óptimo
ẋ = (A − BK)x
es asintóticamente estable. Esta suposición implica que existe una función de Lyapunov V = xT P x para el
sistema en lazo cerrado; esto es, para alguna matriz definida positiva P la derivada en función del tiempo
dV
dt evaluada en las trayectorias del sistema en lazo cerrado es definida negativa.
Teorema 1. Si el controlador por realimentación de estados u∗ = −Kx es tal que
dV
T
T
+ x Qx + u Ru = 0,
minu
dt
(26)
para algún V = xT P x, entonces el controlador es óptimo.
⋄
Demostración Podemos escribir la condición del teorema como:
dV + xT Qx + u∗T Ru∗ = 0.
dt u=u∗
Luego,
dV = −xT Qx − u∗T Ru∗ .
dt u=u∗
Integrando ambos lados de la ecuación resultante con respecto al tiempo desde 0 hasta ∞, obtenemos
Z ∞
(xT Qx + u∗T Ru∗ )dt.
V (x(∞)) − V (x(0) = −
0
Debido a la suposición de que el sistema en lazo cerrado es asintóticamente estable, x(∞) = 0, y luego
Z ∞
(xT Qx + u∗T Ru∗ )dt.
V (x(0) = xTo P xo =
0
Entonces, hemos demostrado que si un controlador lineal por realimentación de estados satisface la
suposición del teorema, entonces el valor del ı́ndice de desempeño para tal controlador es
J(u∗ ) = xTo P xo .
Clase10-02, pág. 22
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
Para demostrar que tal controlador es de hecho óptimo, usamos una prueba por contradicción. Asumimos
que (26) se cumple y que u∗ no es óptima. Supóngase que ũ resulta en un menor valor de J, esto es,
J(ũ) < J(u∗ ).
De (26) tenemos que
dV + xT Qx + ũT Rũ ≥ 0,
dt u=ũ
esto es,
dV ≥ −xT Qx − ũT Rũ.
dt u=ũ
Integrando la expresión arriba con respecto al tiempo de 0 a ∞ resulta
Z ∞
(xT Qx + ũT Ru)dt
V (x(0)) ≤
0
lo que implica que
J(u∗ ) ≤ J(ũ),
lo que es una contradicción, y la demostración se ha completado.
6.1.
Ejemplos
6.1.1.
Ejemplo 1
⋄
Considere el siguiente modelo de un sistema dinámico:
ẋ = 2u1 + 2u2 ,
x(0) = 3,
asi como el ı́ndice de desempeño asociado
J=
Z
∞
(x2 + ru21 + ru22 )dt,
0
donde r > 0 es un parámetro.
1. Primero encontramos las solución de ARE correspondiente al controlador lineal por realimentación de
estados óptimo. Tenemos
A = 0,
B= 2 2 ,
Q = 1,
R = rI2 .
La ARE para este problema es
8
0 = AT P + P A + Q − P BR−1 B T P = 1 − p2 ,
r
cuya solución es
p=
r
r
.
8
2. Ahora escribimos el sistema en lazo cerrado que se obtiene usando el controlador óptimo. El controlador
óptimo tienen la forma
1
1
−1 T
√
u = −R B P x = −
x.
2r 1
Entonces, el sistema en lazo cerrado óptimo es descrito por
ẋ =
2 2
4
u = − √ x.
2r
3. Finalmente, encontramos el valor de J para el sistema en lazo cerrado óptimo. Tenemos que
r
9 r
J = x(0)T P x(0) =
.
2 2
Clase10-02, pág. 23
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
6.1.2.
Ejemplo integrador doble con LQR en estado estacionario
Considere un integrador doble descrito por la ecuación espacio de estado:
0
0 1
u(t)
x(t) +
ẋ(t) =
1
0 0
El controlador tiene que minimizar el siguiente ı́ndice de desempeño:
Z ∞
T
x (t)Qx(t) + ρu2 (t) dt
J=
0
Aqui las matrices han sido seleccionadas como:
Q=
rp
0
0
rv
,
ρ > 0,
donde rp y rv son los pesos de posición y velocidad respectivamente. Con los valores dados la ecuación de
Riccati algebraica resulta en las siguientes ecuaciones acopladas:
0
0
0
= rp − ρ1 p212
= p11 − ρ1 p12 p22
= rv + 2p12 − ρ1 p222
p11 p12
Aqui, P =
, es la solución de la ARE. Resolviendo estas ecuaciones algebraicas se obtiene
p12 p22
la solución definida positiva única:
√ p √
p11 = rp 2ρ rp ρ + rv ρ
√
p12 = prp ρ
√
p22 = 2ρ rp ρ + rv ρ
El controlador resulta en el control por realimentación de estados con la señal de control:
u(t)
= −K∞ x(t)
= −(R−1 B T P∞ )x(t)
#
"r s r
rp
rp
rv
2
x(t)
+
=−
ρ
ρ
ρ
Se observa que la ganancia de control se incrementa a medida que los pesos de los estados se incrementan,
en otras palabras, rp y rv se incrementan en comparación al peso de la señal de control. La ecuación
caracterı́stic del sistema en lazo cerrado puede ser encontrada como:
s r
rp
rv
rp
2
+ s+
=0
s + 2
ρ
ρ
ρ
La frecuencia natural correspondiente al sistema en lazo cerrado ω y el factor de amortiguamiento ζ son
calculados como:
r
rp
ω= 4
ρ
r
1
rv
ζ=√
1+ √ √
2
ρ
rp
2
√
Para ρ = 1, si rv = 0 los polos en lazo cerrado tienen un factor de amortiguamiento de 1/ 2 ≈ 0,71.
El “root locus” como función de las ponderaciones se observa en la Fig. (4), donde rp varia desde 0 hasta
10. Para este sistema en particular se observa que el factor de amortiguamiento de los polos en lazo cerrado
siempre seran mayores que 0.71 para elementos de la matriz de ponderación positivos.
Clase10-02, pág. 24
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
1.5
1
0.5
0
rv = 5
1 0.5 0.1 0
2
–0.5
–1
–1.5
–2
–1.5
–1
–0.5
0
0.5
1
Figura 4: Root-locus del sistema integrador doble con LQR en estado estacionario para una variación de rp .
6.2.
Resolviendo la ARE usando el Método del Autovector
A continuación presentamos un método para resolver la ARE referido como el método del autovector.
Comenzamos representando la ARE de la forma
A −BR−1 B T
In
P −In
= 0.
(27)
P
−Q
−AT
La matriz 2n × 2n en la mitad es denominada de matriz Hamiltoniana. usamos el sı́mbolo H para denotar
a la matriz Hamiltoniana, esto es,
A −BR−1 B T
.
H=
−Q
−AT
Entonces, la ARE puede ser representada como
P
−In
H
In
P
=0
Si premultiplicamos la ecuación arriba por X −1 y luego postmultiplicamos esta por X, donde X es una
matriz no singular n × n,
−1
X
X P −X −1 H
= 0.
(28)
PX
Observar que si pudiésemos encontrar matrices X y P X tal que
X
X
H
=
Λ,
PX
PX
luego la ecuación (28) resulta en
X −1 P
−X −1
X
PX
Λ = 0.
Luego hemos reducido el problema de resolver la ARE a aquel en el que construimos matrices X y P X
apropiadas. Continuando, sea vi el autovector de H y sea si el autovalor correspondiente; entonces
Hvi = si vi .
Si asumimos que H tiene al menos n autovalores reales distintos entre sus 2n autovalores. (Los resultados
obtenidos pueden ser generalizados para el cado cuando los autovalores de H son complejos o iguales.)
Entonces, podemos escribir


s1 0 ... 0


 0 s2 ... 0 
H v1 v2 ... vn = v1 v2 ... vn  .
.
.
.
..
.. 
 ..

0
Clase10-02, pág. 25
0
...
sn
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
Sea
y
X
PX



Λ=

v1
v2
...
s1
0
..
.
0
s2
..
.
...
...
0
0
..
.
0
0
...
sn
=
vn



.

La selección de X y P X constituye una posible solución de la ecuación
−1
X
−1
X P −X
Λ = 0.
PX
Para construir P , particionamos la matriz de autovectores v1 v2
submatrices de orden n × n como sigue
W
v1 v2 ... vn =
.
Z
...
vn
de orden 2n × n en dos
Luego,
X
PX
=
W
Z
.
Tomando X = W y P X = Z y asumiendo que W es invertible, obtenemos
P = ZW −1 .
(29)
Ahora tenemos que elegir que conjunto de n autovalores elegir, dentro de todos los autovalores de H,
para poder contruir P . En el caso en que los 2n autovalores de H son diferentes, el número de matrices P
generadas con el método descrito arriba son
(2n)!
.
(n!)2
Sea Q = C T C una factorización de rango completo de Q. Del Teorema 3 de Kucera (ver referencias al
final) se concluye que la matriz Hamiltoniana H tiene n autovalores en el semiplano complejo izquierdo y n
en el semiplano complejo derecho si y sólo si el sistema como definido en (1) es estabilizable y detectable.
La matriz P que nosotros buscamos corresponde a los autovalores asintóticamente estables de H. Con P
construido como deseado, tenemos el siguiente resultado.
Teorema 2. Los polos del sistema en lazo cerrado
ẋ(t) = (A − BR−1 B T P )x(t)
son aquellos autovalores de H que tienen parte real negativa.
W
, podemos escribir
Demostración Siendo que v1 v2 ... vn =
Z
W
A −BR−1 B T
W
=
Λ.
Z
Z
−Q
−AT
⋄
Realizando las multiplicaciones apropiadas de bloques de matrices n × n resulta
AW − BR−1 B T Z = W Λ,
o
A − BR−1 B T ZW −1 = A − BR−1 B T P = W ΛW −1 ,
dado que P = ZW −1 . Entonces, la matriz A − BR−1 B T P es similar a la matriz Λ cuyos autovalores son
los autovalores asintóticamente estables de H. Luego, la demostración ha sido completada.
⋄
Clase10-02, pág. 26
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
6.2.1.
Ejemplo 1
Considere el siguiente modelo de un sistema dinámico
ẋ = 2x + u,
asi como el ı́ndice de desempeño asociado
J=
Z
∞
(x2 + ru2 )dt.
0
Encuentre el valor de r tal que el sistema en lazo cerrado óptimo tenga un polo en −3.
1. Formamos la matriz Hamiltoniana asociada
A −BR−1 B T
2 − 1r
.
=
H=
−Q
−AT
−1 −2
2. La ecuación caracterı́stica de H es
det(sI2 − H) = s2 − 4 −
1
= 0.
r
Luego,
1
5
resulta en el sistema en lazo cerrado óptimo teniendo su polo localizado en −3.
r=
6.2.2.
Ejemplo 2
Considere un modelo simple de un robot manipulador como mostrado en la Fig. 5. El movimiento del
brazo del robot es controlado por un motor DC a través de un engranaje. El motor DC es controlado por
armadura y su figura esquemática es presentada en la Fig. 6. Asumimos que el momento de inercia del motor
es despreciable en comparación con el del brazo del robot. Modelamos el brazo como una masa puntual m
ubicada en el extremo final de la barra (sin masa) de longitud l. Entonces el momento de inercia del brazo
Ib = ml2 . Asumimos que el tren de engranajes no tiene juego, y que todos los ejes conectores son rı́gidos.
Como podemos ver de la Fig. 5, la rotación del brazo en sentido contrario a las agujas del reloj es definida
como positiva, y la rotación siguiendo las agujas del reloj es considerada como negativa; mientras que la
rotación del eje del motor en sentido contrario a las agujas del reloj es definida como negativa, y la rotación
del eje siguiendo las agujas del reloj es definida como positiva. El torque entregado por el motor es
Tm = Km ia ,
donde Km es la constante del torque del motor, y ia es la corriente de armadura. Sea N la razón de los
engranajes. Luego tenemos:
θp
radio del engranaje del motor
número de dientes del engranaje del motor
1
=
=
= .
θm
radio del engranaje del brazo
número de dientes del engranaje del brazo
N
Esto ocurre puesto que los engranajes estan en contacto y luego
θp × radio del engranaje del brazo = θm × radio del engranaje del motor,
y los radios de los engranajes son proporcionales a sus números de dientes. El trabajo realizado por cada
engranaje debe ser igual. Sea Tp que denota el torque aplicado al brazo del robot. Entonces,
Tp θ p = Tm θ m .
Entonces, el torque aplicado al péndulo es
Tp = N Tm = N Km ia .
Clase10-02, pág. 27
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
Mass m
␪p
Massless rod of length l
1: N
Gear
DC motor
u
⫹
⫺
Control voltage
Figura 5: Robot manipulador controlador por un motor DC via un engranaje.
La
Ra
⫹
ia
u
eb ⫽ back emf
⫹
␪m ⫽ motor shaft
position
⫺
⫺
Armature circuit
if ⫽ constant
Field circuit
Figura 6: Figura esquemática de un motor DC controlado por armadura.
Usando la segunda Ley de Newton para escribir la ecuación que modela la dinámica del brazo,
Ib
d2 θ p
= mgl sin θp + Tp .
dt2
(30)
Sustituyendo en (30) las expresiones para Ib y Tp y luego rearreglando tenemos
ml2
d2 θ p
= mgl sin θp + N Km ia
dt2
(31)
donde g = 9,8m/s2 es la aceleración de la gravedad. Aplicado la Ley de Kirchhoff (voltaje) al circuito de
armadura resulta en
dia
dθp
La
+ Ra ia + Kb N
= u,
dt
dt
donde Kb es la constante emf. Asumiendo que La ≈ 0. Entonces,
u = Ra ia + Kb N
dθp
,
dt
A continuación calculamos ia de (32) y sustituimos el resultado en (31) para obtener
!
dθ
2
Kb N dtp
u
2 d θp
ml
= mgl sin θp + N Km
−
.
dt2
Ra
Ra
(32)
(33)
Ahora podemos construir el modelo de espacio de estados para el robot de un brazo. Escogiendo los siguientes
estados y variables de salida:
dθp
x1 = θp , x2 =
= ωp , y y = x1 .
dt
Entonces, usando (33), obtenemos el siguiente modelo de espacio de estados simple del robot manipulador:
#
"
x2
ẋ1
= g
Kb Km N 2
N Km
ẋ2
l sin x1 − ml2 Ra x2 + ml2 Ra u
Clase10-02, pág. 28
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
y = x1 .
Parámetros razonables para el robot son: l = 1m, m = 1kg, N = 10, Km = 0,1Nm/A, Kb = 0,1Vsec/rad,
Ra = 1Ω. Usando los valores de los parámetros el modelo del robot toma la siguiente forma:
ẋ1
x2
=
ẋ2
9,8 sin x1 − x2 + u
y = x1 .
Respuestas en el tiempo para las trayectorias de estado del sistema no lineal sin control, u = 0, son
mostrados en la Fig. 7 para las condiciones iniciales x1 (0) = 1 y x2 (0) = 0. Un plano de fase del sistema no
lineal sin control es mostrado en la Fig. 8. El modelo linealizado alrededor de x = 0, u = 0 tiene la forma
0
1
0
d
∆x +
∆u,
dt ∆x =
1
(34)
9,8 −1
∆y = 1 0 ∆x.
5
4
x1
3
x1 , x 2
2
1
x2
0
⫺1
⫺2
⫺3
0
2
4
6
8
10
Time (sec)
Figure 5.13
Figura 7: Gráficas de y = x1 y x2 versus tiempo para el sistema no lineal sin control.
10
8
6
4
2
x2
0
⫺2
⫺4
⫺6
⫺8
⫺10
⫺10
0
x1
⫺5
5
10
Figura 8: Un plano de fase del sistema no lineal sin control.
En la Fig. 9 son mostradas las gráficas de y = x1 y x2 versus tiempo para el sistema lineal sin control.
Un plano de fase del sistema linealizado es mostrado en la Fig. 10. Sea
Z ∞
(y 2 + u2 )dt.
J=
0
Encontraremos una ley de control lineal por realimentación de estados u = −kx que minimice J sujeto a las
ecuaciones dadas por (34). Tenemos
1 0
Q = cT c =
y R = [1].
0 0
Clase10-02, pág. 29
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
25
20
x2
x 1, x 2
15
10
x1
5
0
0
0.2
0.4
0.6
Time (sec)
0.8
1
Figura 9: Gráficas de y = x1 y x2 versus tiempo para el sistema linealizado sin control.
10
8
6
4
2
x2
0
⫺2
⫺4
⫺6
⫺8
⫺10
⫺10
⫺5
0
x1
10
5
Figura 10: Un plano de fase del sistema linealizado sin control.
Resolviendo la ecuación de Riccati, se define la matriz Hamiltoniana asociada como


0
1
0
0
 9,8 −1 0
−1 
A −BR−1 B T
,
=
H=
 −1 0
0 −9,8 
−Q
−AT
0
0 −1
1
y calculando los autovalores y autovectores de H tenemos que

−0,3443 −0,0485 0,2604
 −0,9298 −0,1770 −0,9499
H
 −0,1124 −0,9196 0,1691
0,0661
0,3473
0,0364


2,7003
−0,3443 −0,0485 0,2604
0,0496
 −0,9298 −0,1770 −0,9499 −0,1339  
0

=
 −0,1124 −0,9196 0,1691
0
0,9555  
0
0,0661
0,3473
0,0364
0,2582
0,0496
−0,1339
0,9555
0,2582
0
3,6481
0
0




0
0
−3,6481
0

0

0
.

0
−2,7003
Identificando los autovectores correspondientes a los autovalores con parte real negativa se puede definir
0,2604
0,0496
0,1691 0,9555
W =
y Z=
,
−0,9499 −0,1339
0,0364 0,2582
luego sabiendo que P = ZW −1 se obtiene
P =
72,3371
19,6509
19,6509
5,3484
5,3484
.
(35)
Entonces
k=
19,6509
Clase10-02, pág. 30
(36)
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
y
Ac =
0
−9,8509
1
−6,3484
∆x.
Las gráficas de x1 y x2 versus tiempo del sistema en lazo cerrado
ẋ = (A − bk)x = Ac x
y = x1 ,
cuando las condiciones iniciales son x1 (0) = 1 y x2 (0) = 0, son mostradas en la Fig. 11. Un plano de fase
del sistema linealizado en lazo cerrado es mostrado en la Fig. 12. Aplicando el controlador óptimo al modelo
no lineal, las gráficas de x1 y x2 versus tiempo para el sistema no lineal en lazo cerrado son mostradas en
la Fig. 13. Un plano de fase del sistema no lineal en lazo cerrado es mostrado en la Fig. 14. Los polos del
sistema linealizado en lazo cerrado -esto es, los autovalores de Ac - son λ1 = −2,7003 y λ2 = −3,6481.
1
0.5
x1
x1, x2
0
x2
⫺0.5
⫺1
⫺1.5
0
1
3
2
5
4
Time (sec)
Figura 11: Gráficas de x1 y x2 versus tiempo para el sistema linealizado en lazo cerrado.
10
8
6
4
2
x2
0
⫺2
⫺4
⫺6
⫺8
⫺10
⫺10
5
0
x1
⫺5
10
A phase portrait of the linear closed-loop system of Example 5.13.
Figura 12: Un plano de fase del sistema linealizado en lazo cerrado.
1
0.5
x1
x1, x2
0
⫺0.5
x2
⫺1
⫺1.5
0
1
2
3
4
5
Time (sec)
Figura 13: Gráficas de x1 y x2 versus tiempo para el sistema no lineal en lazo cerrado.
Clase10-02, pág. 31
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
10
8
6
4
2
x2
0
⫺2
⫺4
⫺6
⫺8
⫺10
⫺10
⫺5
0
x1
5
10
Figura 14: Un plano de fase del sistema no lineal en lazo cerrado.
6.2.3.
Ejemplo Aeronave de Impulsión
Considere la dinámica original de la aeronave de impulsión presentada en clases anteriores, escrita en la
forma espacio de estados como:
 


0
z4
 


0
z5
 





dz 
0
z6

.

=
+
1
c
1



cos θF1 − m sin θF2 
dt
 −g sin θ − mc z4   m

 −g cos θ − z5   1 sin θF1 + 1 cos θF2 
m
m
m
r
0
J F1
Los parámetros del sistema son m = 4kg, J = 0,0475kgm2 , r = 0,25m, g = 9,8m/s2 , c = 0,05Ns/m, que
corresponde a un modelo escalado del sistema. El punto de equilibrio para el sistema está dado por F1 = 0,
F2 = mg y ze = (xe , ye , 0, 0, 0, 0). Para derivar el sistema linealizado cerca del punto de equilibrio, calculamos
el sistema linealizado:




0 0
0 0 0
1
0
0
 0 0 0
 0 0 
0
1
0 




 0 0 0

 0 0 
0
0
1
.



A=
,
B= 1

0
0 
 0 0 −g −c/m

 m 01 

 0 0 0
 0
0
−c/m 0 
m
r
0 0 0
0
0
0
0
J
1 0 0 0 0 0
0 0
C=
,
D=
.
0 1 0 0 0 0
0 0
Haciendo z = z − ze y v = u − ue , el sistema linealizado está dado por:
dz
dt
y
= Az + Bv,
= Cz.
Se puede verificar que el sistema es alcanzable.
Para calcular el regulador cuadrático lineal para el sistema, escribimos la función costo como:
Z ∞
(z T Qz + v T Rv)dt,
J=
0
donde z = z − ze y v = u − ue representan las coordenadas locales en torno al punto de equilibrio (ze , ue ).
Comenzamos con matrices diagonales para los costos del estado y la entrada:


1 0 0 0 0 0
 0 1 0 0 0 0 


 0 0 1 0 0 0 
1 0


R=
.
Q=
,
0 1
 0 0 0 1 0 0 
 0 0 0 0 1 0 
0 0 0 0 0 1
Clase10-02, pág. 32
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
Luego la ley de control de la forma v = −Kz será usada para derivar la ley de control en términos de las
variables originales:
u = v + ue = −K(z − ze ) + ue .
Position x [m]
Position x , y [m]
Como especificado en clases anteriores, los puntos de equilibrio corresponden a ue = (0, mg) y ze =
(xe , ye , 0, 0, 0, 0). La respuesta del controlador a un cambio de la función escalón para la posición deseada es mostrada en la Fig. 6a. La respuesta puede ser afinada cambiando los pesos en la función de costo. La
Fig. 15b muestra6.3.
la STATE
respuesta
en laDESIGN
dirección x para diferentes selecciones del peso ρ, siendo
FEEDBACK
193que R = ρI2 .
1
0.5
0
0
x
y
2
4
6
Time t [s]
8
1
0.5
ρ
0
0
10
(a) Step response in x and y
2
4
6
Time t [s]
8
10
(b) Effect of control weight ρ
Figure 6.12: Step response for a vectored thrust aircraft. The plot in (a) shows the x and y
Figura 15: Respuesta
al escalón
de una
aeronave
de impulsión.
muestraIn las
posiciones
“x” e “y”
positions
of the aircraft
when
it is commanded
to move 1La
m inFig.
eachadirection.
(b) the
x
2 , 104dirección.
motion
for control
weights1m en
1, 10
. A higher weight
of thebinput
term in el movimiento
de la aeronave cuando
seisleshown
comanda
moverse
cada
En Fig.
se muestra
2 sluggish
functionρcauses
more
x variando los pesosthedecostcontrol
= 1,a10
, 104 . Un response.
peso más grande en el término de control de la función
costo causa una respuesa más lenta.
level. Since other processes may be running on the server, the web server must
adjust its parameters in response to changes in the load.
6.3. Propiedades
dediagram
robustez
diseño
A block
for thedel
control
systemLQR
is shown in Figure 6.13. We focus on
the special case where we wish to control only the processor load using both the
We alsopresenta
include las
a “disturbance”
on
Un sistema de control queand
usa el regulador parameters.
cuadrático lineal
siguientes caracterı́sticas
de
thelos
measured
loadde
thatestabilidad
represents the
of the processing
cyclesdebytransferencia
other processes
robustez. Esto es,
margenes
de use
la matriz
de funciones
en lazo L(s) =
running on the server.lasThe
system haspara
the same
structure
generic
control
K(sI − A)−1 B (equivalentemente,
condiciones
que basic
|1 + L(iω)|
> as
1) the
están
dados
por:
system in Figure 6.5, with the variation that the disturbance enters after the process
dynamics.
1
< 1. are given by a set of difference equations of the
Margen de ganancia
(GM): of
The dynamics
theGM
system
2 <
Margen deform
fase (PM): PM > 60o .
x [k 1] Ax [k ] Bu [k ]
ycpu [k ] Ccpu x [k ] dcpu [k ]
the state,deu la función
the input, dcpude
is the
processing
where x xcpu xmemde isNyquist
u ka u mcdeistransferencia
La Fig. 16 presenta el diagrama
lazo, L(s), para un modelo
is
the
total
processor
load.
y
load
from
other
processes
on
the
computer
and
cpu
simplificado de un satélite.
We choose our controller to be a state feedback controller of the form
A=
0 1
0 0
,u B = K
Precompensation
rcpu
kr
e
0 ycpu
, C = kr r1cpu 0 , D = 0.
1 xmem
Feedback
Controller
C
u
Server
P
d
y
1
Feedback control of a web server. The controller sets the values of the web
server parameters based on the difference between the nominal parameters (determined by
kr r ) and the current load ycpu . The disturbance d represents the load due to other processes
running on the server. Note that the measurement is taken after the disturbance so that we
measure the total load on the server.
Figure 6.13:
Figura 16: Diagram de Nyquist mostrando margenes de estabilidad del LQR.
Clase10-02, pág. 33
CONTROL ÓPTIMO - REGULADOR CUADRÁTICO LINEAL
6.4.
Regla de Bryson para selección de matrices Q y R
Si se conocen los valores máximos de los estados finales, estados contı́nuos y entradas contı́nuas, luego se
puede aplicar la siguiente regla para la selección de matrices de ponderación F , Q y R:
Fii =
1
máx([xi (tf )]2 )
Qii =
1
(tf − to ) máx([xi (t)]2 )
Rjj =
1
(tf − to ) máx([ui (t)]2 )
donde i = 1, 2, ..., n y j = 1, 2, ..., m. Si el tiempo no es importante en la aplicación evaluada luego el intervalo
de tiempo entre paréntesis, (tf −to ), puede elegirse igual a 1. Los términos fuera de la diagonal de las matrices
de ponderación pueden ser usados si existe interacción entre los componentes de las entradas o estados.
Fuente: Capı́tulo 5 del libro Systems and Control de Stanislaw H. Zak, Oxford University Press, 2003.
Fuente: Capı́tulo 5 del libro Linear Systems Control - Deterministic and Stochastic Methods de Elbert
Hendricks, Ole Jannerup y Paul Sorensen, Springer, 2008.
Fuente: Capı́tulo 6 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J.
Åström y Richard M. Murray.
Clase10-02, pág. 34
Descargar