Está en la página 1de 24

1

Linealización por realimentación

Objetivo específico
Presentar las posibilidades que ofrece la
realimentación para la linealización exacta de
algunos sistemas no lineales y posterior
aplicación de métodos de control lineal

© Carlos Mario Vélez S. Universidad EAFIT

Linealización por realimentación

Temas
1. Diseño de sistemas de control no lineal
2. Realimentación lineal del estado
3. Ejemplo introductorio a la linealización por
realimentación
4. Generalización del método
5. Ejemplos

© Carlos Mario Vélez S. Universidad EAFIT

1
3

Diseño de sistemas de control no lineal


Problemas de control no lineal
† Problema de estabilización asintótica: encontrar una
acción de control tal que iniciando desde un estado
inicial en una región dada, el estado tiende a 0
cuando t → ∞. Tipos de control:
„ Control estático
„ Control dinámico
† Problema de seguimiento: encontrar una acción de
control tal que dada una trayectoria deseada yd e
iniciando desde un estado inicial en una región dada,
los errores y(t) – yd(t) tienden a cero mientras que el
estado x permanece acotado

© Carlos Mario Vélez S. Universidad EAFIT

Diseño de sistemas de control no lineal


Características deseadas
† Estabilidad: especificar la región de estabilidad para el
modelo nominal
† Exactitud y velocidad de respuesta
† Robustez
† Costo: número y tipo del equipo utilizado

Métodos de diseño de controladores no lineales


† Tanteo
† Linealización por realimentación
† Control adaptativo
† Ganancia planificable
† Control robusto

© Carlos Mario Vélez S. Universidad EAFIT

2
5

Diseño de sistemas de control no lineal


Linealización por realimentación
† Algunos sistemas no lineales se pueden transformar
en lineales por medio de una realimentación y un
cambio de variables
† La acción de control comprende dos términos:
„ Compensación de alinealidades
„ Ley de control lineal
† Es un método exacto
† Debido a que es imposible la compensación perfecta,
es importante analizar la robustez del sistema
† Al linealizar son más claros los objetivos de control
† No siempre la linealización por realimentación es
adecuada, ya que se pueden cancelar términos que
proporcionan, por ejemplo, amortiguamiento

© Carlos Mario Vélez S. Universidad EAFIT

Realimentación lineal del estado


Generalidades
† Un sistema no lineal puede linealizarse alrededor de
un p.e. y controlarlo por realimentación lineal del
estado. Es un método aproximado y local
† A más información mejor control
† Máxima información: variables de estado
† Si se miden todas las variables de estado el sistema
no tendrá ceros
† Requerimiento: controlabilidad del sistema
† Generalmente la medición de todos los estados es
costoso o impracticable. En este caso se deben
estimar algunas variables de estado. Requerimiento:
observabilidad del sistema

© Carlos Mario Vélez S. Universidad EAFIT

3
7

Realimentación lineal del estado


Generalidades
† El esfuerzo de control aumenta con un movimiento
más drástico de los polos
† El diseño por realimentación del estado puede
dividirse en dos etapas ("principio de separación"):
1. Diseño con todas las variables de estado disponibles
2. Estimación de las variables de estado no medidas
† Formas del controlador de realimentación del estado:
„ Regulador estático: u(kT) = − Kx(kT), K ∈\1×n
„ Regulador dinámico
† Métodos para la estimación de las variables de estado
no medibles:
„ Observadores de estado (Luenberguer, 1966)
„ Filtro de Kalman (Kalman, 1960)
© Carlos Mario Vélez S. Universidad EAFIT

Realimentación lineal del estado


Ejemplo 1 - Método de sustitución (caso SISO)
† Modelo discreto de la planta

⎡ −0.3 0.2 ⎤ ⎡1 ⎤
x ( k + 1) = ⎢
0.5 0 ⎥ x( k ) + ⎢ 0⎥ u ( k ), y ( k ) = [1 −0.4] x ( k ), T = 1seg
⎣ ⎦ ⎣ ⎦

† Regulador de ubicación de polos por realimentación


del estado
⎡ x (k ) ⎤
u ( k ) = − Kx ( k ) = − [k1 k2 ] ⎢ 1 ⎥
⎣ x2 ( k ) ⎦

† Polos de la planta: 0.2, -0.5


† Polos deseados: 0.1, 0.1

© Carlos Mario Vélez S. Universidad EAFIT

4
9

Realimentación lineal del estado


Ejemplo 1 (cont.)
† Modelo en lazo cerrado
x ( k + 1) = Ax( k ) + Bu( k ), u ( k ) = − Kx( k ), x( k + 1) = ( A - BK )x ( k )
⎡ −0.3 − k1 0.2 − k2 ⎤
x ( k + 1) = ⎢ x( k )
⎣ 0.5 0 ⎥⎦
† Ecuación característica en lazo cerrado
zI − A = 0, z 2 + ( k1 + 0.3) z + 0.5k2 − 0.1 = 0

† Ecuación característica deseada:


( z − 0.1)( z − 0.1) = z 2 − 0.2 z + 0.01
† Solución al problema de ubicación de polos:
k1 = −0.5, k2 = 0.22

© Carlos Mario Vélez S. Universidad EAFIT

10

Realimentación lineal del estado


Ejemplo 1 (cont.)

y(n)=Cx(n)+Du(n)
Diagrama de
x(n+1)=Ax(n)+Bu(n) simulación
(A, B) Scope

K
0.9

-K 0.8

0.7

0.6
x (t)

0.5

Resultados de la 0.4

simulación 0.3

0.2

0.1

0
0 1 2 3 4 5 6 7 8 9 10

t (seg)

© Carlos Mario Vélez S. Universidad EAFIT

5
11

Realimentación lineal del estado


Método de Ackermann (sistemas SISO)
† Modelo del sistema: x(k + 1) = Ax(k) + Bu(k)
† Forma canónica controlable del modelo del sistema

x* (k + 1) = A* x* ( k ) + B*u (k )
x* (t ) = Tx(t ), T = M*c M c−1

⎡ 0 1 0 " 0 ⎤ ⎡0⎤
⎢ 0 0 1 " 0 ⎥⎥ ⎢0⎥
⎢ ⎢ ⎥
A* = TAT −1 = ⎢ # # # ⎥ B* = TB = ⎢ # ⎥
⎢ ⎥ ⎢ ⎥
⎢ 0 0 0 " 1 ⎥ ⎢0⎥
⎢⎣ − an −an −1 − an − 2 " − a1 ⎥⎦ ⎢⎣1 ⎥⎦

© Carlos Mario Vélez S. Universidad EAFIT

12

Realimentación lineal del estado


Método de Ackermann (sistemas SISO)
† Polinomio característico deseado

P ( z ) = z n + p1 z n −1 + " + pn −1 z + pn

† Modelo en lazo cerrado


x* (k + 1) = A* x* (k ) + B*u (k ), u (k ) = −K * x* (k )
x* (k + 1) = ( A* − B* K * )x* (k )

⎡ 0 1 " 0 ⎤ ⎡0⎤ ⎡ 0 1 " 0 ⎤


⎢ 0 0 " 0 ⎥ ⎢0⎥ ⎢ 0 0 " 0 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ # ⎥ − ⎢ # ⎥ ⎣⎡ k1* k2* " kn* ⎦⎤ = ⎢ # ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ 0 0 1 ⎥ ⎢0⎥ ⎢ 0 0 1 ⎥
⎢⎣ − an − an −1 " − a1 ⎥⎦ ⎢⎣1 ⎥⎦ ⎢⎣ − pn − pn −1 " − p1 ⎥⎦

© Carlos Mario Vélez S. Universidad EAFIT

6
13

Realimentación lineal del estado


Método de Ackermann (sistemas SISO)
† Solución de la ecuación anterior
K * = [ pn − an pn −1 − an −1 " p1 − a1 ]
u = −K x = −K Tx = −Kx
* * *

K = K * T = [ pn − an pn −1 − an −1 " p1 − a1 ] M*c M

† La expresión anterior puede llevarse a una forma


más simple:
K = [0 0 " 1] M c−1P( A )
P( A ) = A n + p1A n −1 + " + pn −1A + pn I

† Se observa que el sistema debe ser controlable


† MATLAB: acker ó place

© Carlos Mario Vélez S. Universidad EAFIT

14

Realimentación lineal del estado


Ejemplo 2 - Método de Ackermann

⎡ −0.3 0.2 ⎤ ⎡1 ⎤
x ( k + 1) = ⎢
0.5 0 ⎥ x( k ) + ⎢ 0⎥ u ( k ), y ( k ) = [1 −0.4] x ( k ), T = 1seg
⎣ ⎦ ⎣ ⎦

⎡1 −0.3⎤
Mc = ⎢ ⎥ , P ( z ) = ( z − 0.1)( z − 0.1) = z − 0.2 z + 0.01
2

⎣ 0 0.5 ⎦
⎡ 0.26 −0.1⎤
P( A ) = A 2 − 0.2A + 0.01I = ⎢ ⎥
⎣ −0.25 0.11⎦
−1
⎡1 −0.3⎤ ⎡ 0.26 −0.1⎤
K = [0 1] M c−1P( A ) = [0 1] ⎢ ⎥ ⎢ ⎥ = [ −0.5 0.22]
⎣0 0.5 ⎦ ⎣ −0.25 0.11⎦

© Carlos Mario Vélez S. Universidad EAFIT

7
15

Realimentación lineal del estado


Ubicación de polos con señal de referencia
† Los resultados anteriores pueden adaptarse a un
sistema con referencia. En este caso se tiene
x(k + 1) = Ax(k ) + Bu (k ), u (k ) = hr (k ) − Kx(k )
x(k + 1) = ( A − BK )x(k ) + Bhr (k ), G( z ) = C( zI − A + BK )−1 Bh

† Cálculo de los ceros


⎡ zI − A −B ⎤ ⎡ X ⎤ ⎡ 0 ⎤
⎢ =
⎣ −C 0 ⎦⎥ ⎣⎢ hR − KX⎦⎥ ⎣⎢ −Y ⎦⎥
† La referencia no afecta la ubicación de los polos
† El parámetro h afecta la amplitud de la respuesta
† Los ceros no varían (son los mismos del proceso)
† El control multifrecuencia permite ubicar los ceros
© Carlos Mario Vélez S. Universidad EAFIT

16

Realimentación lineal del estado


Ejemplo 3 – Ubicación de polos con referencia

⎡ −0.3 0.2 ⎤ ⎡1⎤


x ( k + 1) = ⎢ ⎥ x( k ) + ⎢ ⎥ u ( k ), y ( k ) = [1 −0.4] x ( k ), T = 1seg
⎣ 0.5 0 ⎦ ⎣ 0⎦

K = [ −0.5 0.22]
( z − 0.2)h
Gcl ( z ) =
z 2 − 0.2 z + 0.01
Rz
y ss = lim( z − 1)G ( z ) = 0.9877 Rh = R, h = 1.0125
z →1 z −1

© Carlos Mario Vélez S. Universidad EAFIT

8
17

Realimentación lineal del estado


Eliminación del error en estado estacionario con
una acción integral
† Se adiciona un integrador a la planta y se realiza el
diseño sobre el nuevo modelo
† El integrador se incluye luego en el regulador
† El modelo de la planta con el integrador es:

V ( z) 1
= , zV ( z ) = V ( z ) + E ( z ), e(k ) = r (k ) − y (k )
E( z) z − 1
v(k + 1) = v(k ) + r (k ) − y (k ) = v(k ) + r (k ) − Cx(k )
⎡ x(k + 1) ⎤ ⎡ A 0 ⎤ ⎡ x( k ) ⎤ ⎡ B ⎤ ⎡ 0⎤
⎢ v(k + 1) ⎥ = ⎢ −C 1 ⎥ ⎢ v( k ) ⎥ + ⎢ 0 ⎥ u (k ) + ⎢1 ⎥ r (k )
⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦

© Carlos Mario Vélez S. Universidad EAFIT

18

Realimentación lineal del estado


Eliminación del error en estado estacionario con
una acción integral
† Ley de control
⎡K ⎤
K ′ = ⎢ ⎥ , u ( k ) = hr ( k ) − Kx ( k ) + lv ( k )
⎣ −l ⎦
† Estructura de control
h

r(k) e(k) v(k) u(k) x(k) y(k)


1
l Planta Planta
z -1
Integrador (A,B) C

Regulador

© Carlos Mario Vélez S. Universidad EAFIT

9
19

Realimentación lineal del estado


Ejemplo 4 - Eliminación del error en estado
estacionario con una acción integral
⎡ −0.3 0.2 ⎤ ⎡1 ⎤
x ( k + 1) = ⎢ ⎥ x ( k ) + ⎢ ⎥ u( k ), y ( k ) = [1 −0.4] x( k ), T = 1seg
⎣ 0.5 0 ⎦ ⎣ 0⎦

P ( z ) = ( z − 0.1)( z − 0.1) = z 2 − 0.2 z + 0.01


Adicionando un integrador
⎡ x1 ( k + 1) ⎤ ⎡ −0.3 0.2 0⎤ ⎡ x1 ( k ) ⎤ ⎡1 ⎤ ⎡ 0⎤
⎢ x ( k + 1) ⎥ = ⎢ 0.5 0 0 ⎥ ⎢ x2 ( k ) ⎥ + ⎢ 0 ⎥ u ( k ) + ⎢ 0 ⎥ r ( k )
⎢ 2 ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢⎣ v ( k + 1) ⎥⎦ ⎢⎣ −1 0.4 1 ⎥⎦ ⎢⎣ v ( k ) ⎥⎦ ⎢⎣ 0⎥⎦ ⎢⎣1⎥⎦
P ( z ) = ( z − 0.1)3 = z 3 − 0.3z 2 + 0.03z − 0.001
⎡ 0.4 ⎤
» S=ss([-0.3 0.2;0.5 0],[1;0],[1 -0.4],0,'Ts',1); ⎡K ⎤
K ′ = ⎢ ⎥ = ⎢ −0.1625⎥
⎣ −l ⎦ ⎢ ⎥
» Sa=ss([S.A [0;0];-S.C 1],[S.B;0],[1 0 0],0,'Ts',1);
» K=acker(Sa.A,Sa.B,[0.1,0.1,0.1]) ⎣⎢ −0.9112 ⎦⎥
© Carlos Mario Vélez S. Universidad EAFIT

20

Realimentación lineal del estado


Ejemplo 4 (cont.)
1 y(n)=Cx(n)+Du(n)
1 0.911 K
z-1 x(n+1)=Ax(n)+Bu(n)
Referencia Integrador l (A,B) C Scope

Respuesta temporal Acción de control


1.4 1.6

1.4
1.2
1.2
1
1
y (t)

u (t)

0.8
0.8
0.6
0.6
0.4 0.4
0.2 0.2

0 0 1 2 3 4 5 6 00 1 2 3 4 5 6
t (seg) t (seg)

© Carlos Mario Vélez S. Universidad EAFIT

10
21

Realimentación lineal del estado


Caso de múltiples entradas
† Cálculos más complejos y solución no única
† Existen varios métodos de solución que se enfrentan
a problemas de confiabilidad y sensibilidad numérica
† Condición necesaria y suficiente: sistema controlable
† Ya que existen más grados de libertad en la selección
de la matriz de realimentación, es posible satisfacer
otros requerimientos de diseño: asignación de
vectores propios y minimización de la sensibilidad
† La respuesta mejora, ya que hay más libertad para
seleccionar las acciones de control
† Formulación del problema. Encontrar la matriz K de
manera que Acl = A – BK tenga los valores propios
deseados

© Carlos Mario Vélez S. Universidad EAFIT

22

Realimentación lineal del estado


Caso de múltiples entradas
† Caso más general: Ubicación de polos por
realimentación de la salida. Los algoritmos son aún
más complejos. Formulación: Acl = A – BKC
† MATLAB
„ Ubicación de polos por realimentación del estado: place.
Restricción: la multiplicidad de un polo no debe ser
mayor que el número de entradas
„ Ubicación de polos por realimentación de la salida:
mevao del POLEPACK TOOLBOX. Se ubican min{n, m+p-1}
polos
† Tópico de considerable interés en control
† El control multifrecuencia permite (con el método del
"lifting") ampliar el número de entradas, con lo que
se alcanza la condición antes mencionada

© Carlos Mario Vélez S. Universidad EAFIT

11
23

Realimentación lineal del estado


Ejemplo 5 – Caso de múltiples entradas
⎡ 0 1 0⎤ ⎡0 1⎤
x ( k + 1) = ⎢ 0 0 1 ⎥ x ( k ) + ⎢ 0 0⎥ u( k ), T = 1 seg
⎢ ⎥ ⎢ ⎥
⎣⎢ −0.25 0 0.5⎥⎦ ⎣⎢1 0⎦⎥
Polos deseados : [0, 0, 0]

MATLAB:
S=ss([0 1 0;0 0 1;-0.25 0 0.5],[0 1;0 0;1 0],[1 0 0;0 1 0;0 0 1],[0 0;0 0;0 0]);
K=place(S.A,S.B,[0,0,0.000001])

⎡ −0.25 0 0.5⎤
K=⎢
⎣ 0 1 0 ⎥⎦

© Carlos Mario Vélez S. Universidad EAFIT

24

Realimentación lineal del estado


Ejemplo 5 (cont.)
y(n)=Cx(n)+Du(n)
x(n+1)=Ax(n)+Bu(n)
(A,B) Scope

-K
Variables de estado 0
Acciones de control
3.5

3
-0.5
2.5
-1
2
u (t)
x (t)

1.5 -1.5

1 -2
0.5
-2.5
0

-0.5 -3
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
t (seg) t (seg)

© Carlos Mario Vélez S. Universidad EAFIT

12
25

Realimentación lineal del estado


Caso de múltiples entradas. Reducción a un
sistema con una entrada
† Un sistema controlable con múltiples entradas
siempre puede ser transformado, por medio de una
realimentación del estado, a un sistema controlable
con una sola entrada
† Lema 1. Dado el sistema (A,B) controlable, para toda
matriz Γ ∈ \ m×1y≠casi
0 toda matriz κ ∈,\el
m× n

sistema en lazo abierto resultante con entrada


escalar ν: x = ( A + Bκ ) x + BΓν , es controlable y tiene
valores propios distintos

© Carlos Mario Vélez S. Universidad EAFIT

26

Realimentación lineal del estado


Caso de múltiples entradas. Reducción a un
sistema con una entrada
† Al sistema con una entrada se le puede aplicar la
fórmula de Ackermann para obtener la matriz de
realimentación F. Luego, la matriz de realimentación
del sistema de varias entradas es: K = ΓF - κ

Acl = A + Bκ − BΓF = A − B(ΓF − κ)

Por tanto, para el sistema MIMO se tiene


K = ΓF - κ

© Carlos Mario Vélez S. Universidad EAFIT

13
27

Realimentación lineal del estado


Ejemplo 6
⎡ 0 1 0⎤ ⎡0 1⎤
x( k + 1) = ⎢ 0 0 1 x( k ) + ⎢0 0⎥ u( k ), T = 1 seg

⎢ ⎥ ⎢ ⎥
⎢⎣ −0.25 0 0.5⎥⎦ ⎢⎣1 0⎥⎦
Polos deseados : [0, 0, 0]

Se seleccionan arbitrariamente las siguientes matrices


⎡1 2 3⎤ ⎡1 ⎤
κ =⎢ ⎥ Γ=⎢ ⎥
⎣ −1 −3 2 ⎦ ⎣ 4⎦
⎡ −1 −2 2 ⎤ ⎡ 4⎤
x = ( A + Bκ ) x + BΓν = ⎢⎢ 0 0 1 ⎥⎥ x + ⎢⎢0 ⎥⎥ ν
⎢⎣0.75 2 3.5⎦⎥ ⎣⎢1 ⎦⎥
eig ( A + Bκ ) = [−1.6231, −0.0734, 4.1965]

© Carlos Mario Vélez S. Universidad EAFIT

28

Realimentación lineal del estado


Ejemplo 6 (cont.)
† Se aplica la fórmula de Ackermann para obtener

F = [ 0.1225 0.4314 2.0098]

⎡ −0.8775 −1.5686 −0.9902 ⎤


K = ΓF − κ = ⎢
⎣ 1.4902 4.7255 6.0392 ⎥⎦

eig( A - BK ) = [ 0.49 ± 0.85i, −0.98] × 10−5

© Carlos Mario Vélez S. Universidad EAFIT

14
29

Realimentación lineal del estado


Caso de múltiples entradas. Caso particular
† Planteamiento del problema
x ( k + 1) = Ax ( k ) + Bu( k ), u ∈ \ n×m
u( k ) = − Kx ( k )
x ( k + 1) = ( A − BK )x ( k )

† Si Acl es la matriz deseada en lazo cerrado (se puede


expresar en la forma de Jordan, donde sus valores
propios son los polos deseados) se tiene
A − BK = A cl
Si m = n, K = B −1 ( A − A cl )
† Con un esquema de muestreo multifrecuencia se
pueden obtener matrices cuadradas

© Carlos Mario Vélez S. Universidad EAFIT

30

Ejemplo introductorio
Pasos

Sistema no lineal:
⎧ x1 = −2 x1 + x2 + sen x1
⎨ p.e.=(0,0)
⎩ x2 = − x2 cos x1 + u cos 2 x1

„ Transformación del estado a una forma con las


alinealidades en la última ecuación

⎧ z1 = x1 ⎧ x1 = z1
⎨ ⎨
⎩ z2 = x2 + sen x1 ⎩ x2 = z2 − sen z1

⎧ z1 = −2 z1 + z2
⎨ p.e.=(0,0)
⎩ z2 = −2 z1 cos z1 + cos z1 sen z1 + u cos 2 z1

© Carlos Mario Vélez S. Universidad EAFIT

15
31

Ejemplo introductorio
Pasos
2. Transformación de la entrada que convierte el
sistema no lineal en un sistema lineal
1 ⎛ π 3π 5π ⎞
u= ( v − cos z1 sen z1 + 2 z1 cos z1 ) z1 ≠ ⎜ ± , ± ,± ,... ⎟
cos 2 z1 ⎝ 4 4 4 ⎠

⎧ z1 = −2 z1 + z2

⎩ z2 = v

3. Comprobación de la controlabilidad y diseño del


control lineal
v = − k1 z1 − k2 z2 = −2 z2

© Carlos Mario Vélez S. Universidad EAFIT

32

Ejemplo introductorio
Pasos
4. Implementación de la acción de control en las
variables de estado originales:

1 ⎛ π kπ ⎞
u= ( v − cos x1 sen x1 + 2 x1 cos x1 ) x1 ≠ ⎜ ± ⎟ , k = 0,1, 2,...
cos 2 x1 ⎝4 2 ⎠

© Carlos Mario Vélez S. Universidad EAFIT

16
33

Ejemplo introductorio
Simulación con Matlab/Simulink
† Diagrama completo de control y parámetros
perturbados en un 20%, incluyendo el control y la
transformación de estados

(v,u)
v=-kz
u=u(x,v) x´=f(x,u)
Linear
control Nonlinear Nonlinear x
control system

z=z(x)

x --> z

© Carlos Mario Vélez S. Universidad EAFIT

34

Ejemplo introductorio
Simulación con Matlab/Simulink (cont.)
† Modelo de la planta no lineal

1
-2*u[1]+u[2]+sin(u[1])
s 1
Fcn x1 x

1
-u[2]*cos(u[1])+u[3]*cos(2*u[1])
1 s

u Fcn1 x2

© Carlos Mario Vélez S. Universidad EAFIT

17
35

Ejemplo introductorio
Resultados de la simulación

1.6

1.4

1.2

0.8
x1
0.6

0.4

0.2
x2
0

-0.2
0 1 2 3 4 5 6
t(sec)

© Carlos Mario Vélez S. Universidad EAFIT

36

Ejemplo introductorio
Resultados de la simulación

100 0

0
-1
-100

-200 -2

-300
v (t)
u (t)

-3
-400

-500 -4

-600
-5
-700

-800 -6
0 1 2 3 4 5 6 0 1 2 3 4 5 6
t(sec) t(sec)

© Carlos Mario Vélez S. Universidad EAFIT

18
37

Generalización del método


Introducción
† Un sistema no lineal es linealizable por realimentación
si tiene la siguiente forma estándar:
x = f (x) + g (x)u

† y existe un cambio de variables z = T(x) (llamado


difeomorfismo) que transforma el sistema a la
siguiente forma:
z = Az + Bβ −1 ( z ) [u − α (z ) ]

† Control linealizante: u = α (z ) + β( z ) v
† Condiciones adicionales:
„ (A,B) es controlable
„ β(x) es no singular para todo x en cierto dominio D
© Carlos Mario Vélez S. Universidad EAFIT

38

Generalización del método


Difeomorfismo
† Cambio de variables z = T(x) tal que está definido en
un dominio D, su transformación inversa x = T-1(z) está
definida en Dz = T(D), y ambos T y T−1 son
continuamente diferenciables en D y Dz,
respectivamente
† Ejemplo:

⎡ x1 ⎤ ⎧T1 (x) = x1
T( x ) = ⎢ ⎥ ⎨
⎣ −2 x1 + x2 + sen x1 ⎦ ⎩T2 (x) = −2 x1 + x2 + sen x1

⎧ z1 = T1 (x) = x1 ⎧ x1 = z1
⎨ ⎨
⎩ z2 = T2 (x) = −2 x1 + x2 + sen x1 ⎩ x2 = z2 + 2 z1 − sen z1
© Carlos Mario Vélez S. Universidad EAFIT

19
39

Generalización del método


Obtención de T(x)
† Derivando z = T(x)
∂T ∂T
z = x = [f (x) + g(x)u ]
∂x ∂x
† De otro lado:

z = Az + Bβ −1 (z ) [u − α (z ) ] = AT(x) + Bβ −1 (T(x)) [u − α (T(x)) ]

† Comparando:
⎧ ∂T −1
⎪⎪ ∂x f (x) = AT(x) − Bβ (T(x))α (T(x))

⎪ ∂T g (x) = Bβ −1 (T(x))
⎪⎩ ∂x

© Carlos Mario Vélez S. Universidad EAFIT

40

Generalización del método


Obtención de T(x)
† La existencia de (T, α, β, A, B) que satisfacen la
ecuaciones diferenciales parciales anteriores es una
condición necesaria y suficiente para que el sistema
no lineal x = f (x) + g(x)u sea linealizable por
realimentación
† La obtención de T(x) se reduce a la solución de dichas
ecuaciones
† La solución puede simplificarse, teniendo en cuenta
que T(x) no es única. A continuación se expone un
método para un sistema con una entrada
† Si se aplica la transformación lineal z* = Mz se obtiene:
z * = MAM −1 z* + MBβ −1 (M −1 z * ) ⎡⎣u − α (M −1 z* ) ⎤⎦

© Carlos Mario Vélez S. Universidad EAFIT

20
41

Generalización del método


Obtención de T(x)
† Se conserva la forma de la ecuación, pero con
diferentes (T, α, β, A, B)
† Una combinación de M y T transforma el sistema a
una forma especial
† Se toma (A, B) en la forma canónica controlable

MAM −1 = A c + B c ΛT MB = B c
⎡0 1 0 " 0⎤ ⎡0⎤ ⎡ − an ⎤
⎢0 0 1 " 0⎥ ⎢0⎥ ⎢ −a ⎥
⎢ ⎥ ⎢ ⎥ ⎢ n −1 ⎥
Ac = ⎢ # # # #⎥ Bc = ⎢ # ⎥ Λ=⎢ # ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢0 0 0 " 1⎥ ⎢0⎥ ⎢ − a2 ⎥
⎢⎣ 0 0 0 " 0 ⎥⎦ ⎢⎣1 ⎥⎦ ⎢⎣ −a1 ⎥⎦

© Carlos Mario Vélez S. Universidad EAFIT

42

Generalización del método


Obtención de T(x)
† De esta manera:
z * = Ac z * + B c ΛT z * + B c β −1 (z* )u − B c β −1α (z * )
† El segundo término puede incluirse en el último:

z * = Ac z* + B c β −1 (z * ) ⎡⎣u − α* (z * ) ⎤⎦

† De esta manera, puede asumirse que (A, B)


corresponde a (Ac, Bc)

⎧ ∂T −1
⎪⎪ ∂x f (x) = A c T(x) − B c β (T(x))α (T(x))

⎪ ∂T g (x) = B β −1 (T(x))
⎪⎩ ∂x c

© Carlos Mario Vélez S. Universidad EAFIT

21
43

Generalización del método


Obtención de T(x)
† Sea
T(x) = [T1 ( x) T2 ( x) " Tn ( x )] T( x o ) = 0
T

† Las ecuaciones simplificadas son:


∂T1 ∂T2 ∂Tn −1 ∂Tn 1
g ( x) = 0 g ( x) = 0 " g ( x) = 0 g ( x) = ≠ 0
∂x ∂x ∂x ∂x β
∂T1 ∂T2 ∂Tn −1 ∂Tn α
f (x) = T2 f (x) = T3 " f (x) = Tn f ( x) =
∂x ∂x ∂x ∂x β
1 (∂T / ∂x)f (x)
β= α =− n
(∂Tn / ∂x)g (x) (∂Tn / ∂x)g(x)

† El problema se reduce al cálculo de T1(x). Las


condiciones de existencia de esta función requiere de
conceptos de geometría diferencial
© Carlos Mario Vélez S. Universidad EAFIT

44

Ejemplos
Ejemplo 1
⎧ x1 = −2 x1 + x2 + sen x1
⎨ p.e.=(0,0)
⎩ x2 = − x2 cos x1 + u cos 2 x1
† Forma estándar del modelo no lineal:
x = f (x) + g (x)u
⎡ x1 ⎤ ⎡ −2 x1 + x2 + sen x1 ⎤ ⎡ 0 ⎤
⎢ x ⎥ = ⎢ − x2 cos x1 ⎥ + ⎢cos 2 x ⎥ u
⎣ 2⎦ ⎣ ⎦ ⎣ 1⎦

† Ecuaciones simplificadas:
∂T1 ∂T2 ∂T1
g ( x) = 0 g ( x) ≠ 0 f (x) = T2
∂x ∂x ∂x
1 (∂T / ∂x) f ( x)
β= α =− 2
(∂T2 / ∂x) g ( x) (∂T2 / ∂x) g ( x)

© Carlos Mario Vélez S. Universidad EAFIT

22
45

Ejemplos
Ejemplo 1 (cont.)
∂T1 ⎡ ∂T ∂T1 ⎤ ⎡ 0 ⎤ ∂T1 ∂T1
g ( x) = ⎢ 1 ⎥ = cos 2 x1 = 0, =0
∂x ⎣ ∂x1 ∂x2 ⎦ ⎢⎣ cos 2 x1 ⎥⎦ ∂x2 ∂x2
∂T2 ⎡ ∂T ∂T2 ⎤ ⎡ 0 ⎤ ∂T2 ∂T2
g ( x) = ⎢ 2 ⎥ = cos 2 x1 ≠ 0, ≠0
∂x ⎣ ∂x1 ∂x2 ⎦ ⎢⎣ cos 2 x1 ⎥⎦ ∂x2 ∂x2

∂T1 ⎡ ∂T ∂T1 ⎤ ⎡ −2 x1 + x2 + sen x1 ⎤ ∂T1


T2 = f ( x) = ⎢ 1 ⎥ ⎥= ( −2 x1 + x2 + sen x1 )
∂x ⎣ ∂x1 ∂x2 ⎦ ⎣⎢ − x2 cos x1 ⎦ ∂x1

∂T1
Si = 0, entonces una posibilidad es, considerando T(xo ) = 0 :
∂x2
⎧T1 (x) = x1 ⎡ x1 ⎤
⎨ T( x ) = ⎢ ⎥
⎩T2 (x) = −2 x1 + x2 + sen x1 ⎣ − 2 x1 + x2 + sen x1⎦

© Carlos Mario Vélez S. Universidad EAFIT

46

Ejemplos
Ejemplo 1 (cont.)
† Las nuevas variables de estado z = T(x) son:
⎧ z1 = T1 (x) = x1 ⎧ x1 = z1
⎨ ⎨
⎩ z2 = T2 (x) = −2 x1 + x2 + sen x1 ⎩ x2 = z2 + 2 z1 − sen z1

† La ecuación de estado en las nuevas variables es:


⎧ z1 = z2
⎨ p.e.=(0,0)
⎩ z2 = −2 z2 − 2 z1 cos z1 + cos z1 sen z1 + u cos 2 z1

† El cálculo de la acción de control no lineal puede


hacerse directamente:
1
u= ( 2 z1 cos z1 − sen z1 cos z1 + v )
cos 2 z1
© Carlos Mario Vélez S. Universidad EAFIT

23
47

Ejemplos
Ejemplo 1 (cont.)
† Cálculo de la acción de control por las fórmulas:
∂T2 ⎡ ∂T ∂T2 ⎤ ⎡ 0 ⎤ ⎡ 0 ⎤
g ( x) = ⎢ 2 ⎥ ⎢cos 2 x ⎥ = [ −2 + cos x1 1] ⎢cos 2 x ⎥ = cos 2 x1
∂x ⎣ ∂x1 ∂x2 ⎦ ⎣ 1⎦ ⎣ 1⎦

∂T2 ⎡ ∂T ∂T2 ⎤ ⎡ −2 x1 + x2 + sen x1 ⎤ ⎛ 4 x1 − 2 x2 − 2sen x1 − ⎞


f ( x) = ⎢ 2 ⎥⎢ ⎥ =⎜ ⎟
∂x ⎣ ∂x1 ∂x2 ⎦ ⎣ − x2 cos x1 ⎦ ⎝ −2 x1 cos x1 + sen x1 cos x1 ⎠
1 1
β= =
(∂T2 / ∂x)g(x) cos 2 x1
(∂T2 / ∂x)f (x) 4 x − 2 x2 − 2sen x1 − 2 x1 cos x1 + sen x1 cos x1
α=− =− 1
(∂T2 / ∂x)g(x) cos 2 x1
1
u = α(z ) + β(z )v = [ 2 z2 + 2 z1 cos z1 − sen z1 cos z1 + v]
cos 2 z1
© Carlos Mario Vélez S. Universidad EAFIT

48

Ejemplos
Ejemplo 1 (cont.)
† Modelo lineal:
⎧ z1 = z2
⎨ p.e.=(0,0)
⎩ z2 = −2 z2 + v
† El modelo puede o no contener el término -2z2, pues el
control u puede o no eliminarlo
† El modelo lineal es controlable:

⎡0 1 ⎤ ⎡0⎤
A=⎢ ⎥ B=⎢ ⎥
⎣0 −2 ⎦ ⎣1 ⎦
⎡0 1 ⎤
M c = [ B AB ] = ⎢ ⎥ rango(M c ) = 2
⎣1 −2 ⎦

© Carlos Mario Vélez S. Universidad EAFIT

24

También podría gustarte