Capítulo 6 Backstepping: 6.1. Introducción
Capítulo 6 Backstepping: 6.1. Introducción
Capítulo 6 Backstepping: 6.1. Introducción
Backstepping
6.1. Introducción
6.1.1. Orígenes
La técnica de backstepping surge a principios de los años noventas como una sucesión
al mejoramiento del diseño de controladores no lineales realimentados. Todo empieza en
los años setentas, cuando por medio de los métodos geométricos se establece la técnica de
“linealización por realimentación” (feedback linealization) de un sistema, con la cual, un
sistema no lineal es completamente o parcialmente transformado en un sistema lineal a
través del difeomorfismo de las variables de estado y una transformación de la realimen-
tación. La idea principal de esta técnica, fue la de extender la teoría de sistemas lineales
(controlabilidad, observabilidad) a sistemas no lineales.
257
U6: Control por Backstepping 1S - 2020
pasivo, el grado relativo del sistema no debe de ser mayor a la unidad y la dinámica de
ceros no debe de ser inestable, es decir, a fase no mínima (nonminimum phase).
con una ż = f (z) asintóticamente estable de forma global, es difícil realizarle una reali-
mentación por pasividad. Además, si se juega con cada salida, de tal forma que y = ξi ,
no se puede satisfacer al menos una de los dos requisitos de pasividad. Por ejemplo, si
y = ξ1 , el sistema es de fase mínima, pero tiene un grado relativo de orden n. Por otro
lado, si y = ξn , el grado relativo es uno, pero el sistema no cumple con la fase mínima,
ya que el subsistema que contiene la dinámica de ceros, posee una cadena de integradores
inestable. Para los otros casos de y, ninguno de los dos requisitos se cumplen.
Para eliminar el obstáculo del grado relativo, se utiliza la técnica llamada “backs-
tepping”, la cual descompone el sistema original en subsistemas y emplea expresiones
analíticas de la derivada de la ley de control del subsistema anterior, así el backstepping
se utiliza cuando la salida y = ξ1 . Por otro lado, el obstáculo de la dinámica de ceros, es
eliminado a través de la técnica llamada “forwarding”, aquí, esta técnica utiliza también
expresiones analíticas de la ley de control anterior, pero ahora usando integrales. Ambas
técnicas se complementan, dado que el requisito para utilizar una de ellas, es el requisito
opuesto de la otra.
6.1.2. Requisito
El diseño de un controlador por medio de la técnica de backstepping, tiene como
restricción, que el sistema tenga una estructura triangular inferior, es decir, si el sistema
está dado por ẋ = f (x) + g(x)u, donde x ∈ Rn , u es la entrada y además:
Por ejemplo :
ẋ1 = x1 + x2
ẋ2 = x1 + x2 + x3
..
.
ẋk = x1 + x2 + , ..., + xk + u
6.1.3. Construcción
El proceso de backstepping consiste en una transformación, paso a paso, de un sistema
(en forma triangular inferior) por medio de un cambio de variables. Volviendo al sistema
definido en (6.1) con i = 1, esto es y = ξ1 . Con esta salida, el grado relativo del sistema
no es igual a uno, por lo que no cumple una de las condiciones necesarias. Para eliminar
dicho obstáculo, primero el proceso de backstepping aísla el subsistema
Con u1 como entrada, este sistema posee un grado relativo uno y tiene una débil fase
mínima. Por lo tanto, se puede construir una función de Lyapunov V1 (z, ξ1 ) y también,
u1 = α1 (z, ξ1 )
∂α1 h i ∂α
1
ẏ2 = u2 − f (z) + ψ̃(z, ξ1 )ξ1 − ξ2 (6.4)
∂z ∂ξ1
Considérese el sistema :
ẋ = f (x) + g(x)u (6.6)
donde x ∈ Rn representa el estado y u ∈ R es la entrada de control. Supóngase que el
sistema (6.6) puede, después de una transformación, ser puesto bajo la siguiente forma
triangular:
ẋ1 = g1 (x1 ) + x2
ẋ2 = g2 (x1 , x2 ) + x3
..
.
ẋk = gk (x1 , x2 , ..., xk ) + u
Una vez acomodado el sistema de esta forma, el método de backstepping puede ser
aplicado al considerar cada xi (i = 1, 2, ..., k) como una entrada virtual, y donde a cada
entrada virtual le corresponde una función de Lyapunov intermedia Vi hasta llegar a di-
señar una ley de control “u” utilizando el concepto del método directo de Lyapunov.
Hipótesis 6.1. Supóngase que existe para el sistema (6.6), una ley de control u = α(x)
y una función radialmente desacotada definida positiva V1 : Rn → R tal que:
∂V1
(x) [f (x) + g(x)α(x)] ≤ −W (x) ≤ 0, ∀x ∈ Rn
∂x
donde W (x) es semi-definida positiva.
♦
Teorema 6.2. [8] Aumentando el sistema (6.6) con una cadena de integradores:
ẋ = f (x) + g(x)ζ1
ζ̇1 = ζ2
..
.
ζ̇k−1 = ζk
ζ̇k = u
u = αk (x, ζ1 , . . . , ζk ) (6.16)
Además, si W (x) es definida positiva, entonces el control (6.16) garantiza que le equi-
librio (x = 0, ζ1 = . . . = ζk = 0) es asintóticamente estable.
M
6.2.2. Un ejemplo
En el siguiente ejemplo, se desea mostrar que la técnica del backstepping es más flexible
y con menos restricciones que otros métodos como la linealización exacta por realimenta-
ción de estados.
ẋ = x − x3 + u (6.17)
u = x3 − 2x (6.18)
que cancela el término “−x3 ”, y el sistema que resulta es: ẋ = −x. Tómese
1 2
V (x) = x, (6.19)
2
como la función de Lyapunov candidata para el sistema (6.17), se puede ver que el control
(6.18) satisface la condición dada en la hipótesis 6.1 con : W (x) = x2 , es decir, V̇ ≤ −x2 .
Sin embargo, para la estabilización en “x = 0” el término negativo “−x3 ” es útil, en
particular para grandes valores de x. Además, la presencia de “−x3 ” dentro del control
(6.18) resulta no deseada ya que ello conduce a tener grandes valores de u, lo que puede
introducir inestabilidad al sistema. Es por ello pues, que es razonable diseñar un control
que no cancele “−x3 ”.
ẋ = x − x3 + ζ (6.20)
ζ̇ = u (6.21)
α1 (x) = −x (6.22)
y el error “z” queda definido por: z = ζ − α1 (x), entonces el nuevo sistema de ecuaciones
puede ser escrito como sigue
ẋ = x − x3 + z + α1 (x)
= −x3 + z (6.23)
ż = u + x − x3 + z + α1 (x)
= u − x3 + z (6.24)
u = x3 − x − 2z (6.26)
V̇ (x, ζ) = xẋ + z ż
= −x4 + xz + zu − zx3 + z 2
= −x4 − z 2
Aquí también, el control (6.26) genera el término “−x3 ” por lo que se está otra vez
ante el mismo problema visto en la linealización exacta por realimentación de estados.
La flexibilidad del backstepping viene del hecho que se puede reconsiderar la forma de la
función de Lyapunov como sigue:
1 2 1 2
V (x, ζ) = x + z + F (V1 ) (6.27)
2 2
donde V1 (x) = 21 x2 . Calculando la derivada de V
dF (V1 )
V̇ = xẋ + z ż + V̇1 (6.28)
dV1
Reemplazando ẋ y ż por sus valores correspondientes dentro de la ecuación (6.28), se
obtiene
4 dF (V1 ) 3 dF (V1 )
V̇ = −x 1 + +z x+u−x +z+x (6.29)
dV1 dV1
d
Si consideramos : dV1
F (V1 ) = x2 = 2V1 ⇒ F (V1 ) = V12 = 41 x4 , entonces
V̇ = −x4 − x6 + z (x + z + u) (6.30)
V̇ = −x4 − x6 − z 2 ≤ 0 (6.31)
y el sistema (6.17) queda así estabilizado. Además, se puede remarcar que el término no
lineal “−x3 ” no es realmente sacrificado y que el problema de tener grandes valores en el
control es eliminado. Nótese además que la elección de F (V1 ) es seleccionada para que la
función V (x, ζ) sea definida positiva.
ẋ = u + θφ(x) (6.32)
donde θ es el parámetro desconocido, del cual sólo se sabe que tiene un valor constante.
Dado que no se conoce el valor de θ, se propone una ley de control dada por :
θ̃ = θ − θ̂ (6.35)
V̇0 = xẋ
= −c1 x2 − θ̃xφ(x) (6.37)
Dado que el segundo término de la ecuación anterior no está definido por tener un
error paramétrico desconocido θ̃, entonces no se puede deducir nada sobre la estabilidad.
Así se pasa ahora a un control dinámico, al agregar una ley de actualización paramétrica
para θ̂. Para diseñar dicha ley, se agrega primero a la función candidata de Lyapunov V0
un término cuadrático del error paramétrico:
1 2 1
V1 = x + θ̃2 (6.38)
2 2γ
1
V̇1 = xẋ + θ̃θ̃˙
γ
1
= −c1 x2 − θ̃xφ(x) + θ̃θ̃˙
γ
2 1˙
= −c1 x + θ̃ xφ(x) + θ̃ (6.39)
γ
se obtiene
Se puede pensar que el diseño anterior del controlador adaptable es demasiado fácil,
de hecho, esta facilidad es dada por la “condición de apareamiento” (matching condition)
del sistema, es decir, que el parámetro desconocido aparece en los mismos puntos donde
lo hace la entrada de control.
Para los casos que no satisfacen dicha condición, el diseño no resulta ser tan evidente.
ẋ1 = x2 + θx21
ẋ2 = x3
ẋ3 = u
donde θ es un parámetro desconocido pero constante. Para este sistema, el proceso consta
de tres etapas.
Etapa 1
ż1 = ẋ1
= x2 + θx21
= z2 + α1 + θz12 (6.42)
˙
V̇1 = z1 ż1 + (θ̂ − θ)θ̂
˙
= z1 z2 + z1 α1 + θz13 + (θ̂ − θ)θ̂ (6.43)
˙
V̇1 = z1 z2 + z1 α1 + θz13 + (θ̂ − θ)θ̂ + (θ̂ − θ)z1 λ(z1 ) − (θ̂ − θ)z1 λ(z1 )
Retomando la ecuación de V̇1 , se puede ver que no existe ningún término cuadrático,
por lo que es momento de asignarle un valor a α1 , de tal forma que proporcione dicho
término y de paso elimine algún término no deseado:
Nótese que ya se tiene un término cuadrático en V̇1 , los demás términos serán remo-
vidos en las siguientes etapas.
Etapa 2
En esta segunda etapa, lo que se trata de obtener es otro término cuadrático. Para
ello, defínase la segunda ley de actualización paramétrica dada por
˙ ∂α1
θ̂ = τ2 = τ1 − z2 λ(z1 ) (6.51)
∂z1
además, también se le asignará un valor a α2 de
∂α1 ∂α1
α2 = −z1 − z2 − (z1 − z2 ) + (6.52)
∂z1 ∂ θ̂
de tal forma que la función de almacenamiento queda como
˙ ∂α1 ˙
V̇2 = −z12 − z22 + z2 z3 + (θ̂ − θ)(θ̂ − τ2 ) − z2 (θ̂ − τ2 ) (6.53)
∂ θ̂
Hasta este momento, los primeros dos términos ya se encuentran con signo negativo
y de forma cuadrática, por lo que en la última etapa, deberán desaparecer los demás
términos y además se definirá el control u y z3 .
Etapa 3
donde
∂α2 ∂α2 ∂α1
ω(z1 , z2 , θ̂) = λ(z1 ) − · λ(z1 ) (6.57)
∂z1 ∂z2 ∂z1
V̇1 = x1 ẋ1
= θx31 + νx1 (6.65)
Dado que este sistema de primer orden satisface las condiciones de apareamiento,
entonces, diferentes tipos de diseño de controladores pueden ser utilizados. Entre estos
posibles controladores, se pueden sugerir los siguientes
θ̄ 1 3
C : ν = αc (x1 ) = −c1 x1 − ax1 + x1 (6.66)
2 a
S : ν = αs (x1 ) = −c1 x1 − x21 θ̄s1 (x1 ) (6.67)
por lo que se puede hacer cualquier elección de la función s1 (x1 ) que logre
c1 2
V̇1 ≤ − x (6.70)
2 1
Así, αc y αs son leyes de control globalmente estables para el primer subsistema. Ahora
se empleará la técnica de backstepping para diseñar controladores u para el sistema de
segundo orden, ello, con respecto a la función de Lyapunov
1
V2 = V1 + (x2 − ν)2 (6.71)
2
Nótese, que otra vez existen varias posibilidades para lograr que V̇2 sea negativa,
incluyendo (6.66) y (6.67). La combinación de los controladores C-C, C-S, S-C y S-S
proporcionan estabilidad global. Por ejemplo, para las combinaciones C-S y S-S, u tendrá
la forma
∂ν
u = −x1 − c2 (x2 − ν) + (s2 (x1 , x2 )x21 + x2 ) (6.72)
∂x1
Con este ejemplo, se quiere dejar en claro que no se debe y no se deberá ser dogmático
con una misma técnica de control robusto no lineal.
6.5. Ejemplos
A continuación, se muestran algunos ejemplos donde la técnica de backstepping ha
sido aplicada, de forma exacta, adaptable y robusta.
6.5.1. Helicóptero
La técnica de backstepping ha sido utilizada para este sistema subaccionado, gracias
a la robustez que esta técnica presenta para los dos tipos de modelos dinámicos obtenidos
bajo el formalismo de Newton-Euler (en marco inercial y en marco móvil). También se
eligió dicha técnica ya que las ecuaciones de los dos modelos dinámicos están en cascada
y en forma triangular inferior, siempre y cuando se elimine el término cruzado dado por
las pequeñas fuerzas de traslación (mejor conocidas como Small-Body-Forces) [3]. Así, el
modelo dinámico, en el marco inercial, queda de la forma:
ξ˙ = υ (6.73)
mυ̇ = −uRE3 + mgEz (6.74)
Ṙ = RΩ̂ (6.75)
IΩ̇ = −Ω × IΩ + |QP |E3 − |QQ |E2 + Γ (6.76)
El objetivo del control, es el de proponer una ley de control dada por las entradas (u,γ 1 ,
γ 2 , γ 3 ), con el fin de resolver el problema de seguimiento de trayectorias o simplemente
de estabilización. El control que salga, deberá ser sólo dependiente de los estados (ξ, ξ, ˙ η
y η̇ que son considerados como medibles) y de las derivadas con respecto al tiempo de la
trayectoria deseada (ξ d , φd ), de tal forma que el error
E := (ξ(t) − ξ d (t), φ(t) − φd (t)) ∈ R4 (6.77)
tienda a cero.
Se empieza el proceso de backstepping con la definición del error de posición que está
dado por la expresión siguiente
δ1 = ξ − ξ d (6.78)
Sea δ2 un nuevo error que define la diferencia entre el vector real de velocidad υ y el
vector virtual de velocidad υ v
δ2 = mυ − mυ v (6.83)
ü = ũ (6.88)
Así, la variable actual de control u y su primera derivada con respecto al tiempo u̇,
se vuelven las variables internas del controlador. Además, este hecho ofrece la ventaja de
tener un grado relativo de 4 en lugar de 2 para la nueva variable de control ũ, con respecto
a la variable de posición ξ. El alineamiento de los grados relativos entre las entradas y las
salidas del sistema, permitirá una definición combinada de la dinámica completa de un
nuevo vector de error generado por el proceso de backstepping. Dicho vector, depende de
los errores de las coordenadas de posición y de los términos cruzados del sistema. Defínase
al conjunto (uRE3 )v , como el control del vector virtual ligado al vector de orientación η
y a la señal de control u:
1
(uRE3 )v = mgEz − mυ̇ v + δ1 + δ2 (6.89)
m
Esta definición, especifica una dirección y una amplitud de la fuerza deseada del rotor
principal. Dado que los términos del control virtual (uRE3 )v forman un solo control,
X v = (uRE3 )v (6.90)
Además, se necesitarán las derivadas de X v en las siguientes etapas del proceso. Estas
derivadas serán calculadas, de forma analítica, por la simple derivada de la parte derecha
de la expresión (6.89). De (6.87), (6.89) y (6.90), la derivada de la segunda función de
almacenamiento queda como
1 T
Ṡ2 = −|δ2 |2 − δ2 δ1 + δ2T (X v − uRE3 ) (6.91)
m
El proceso de backstepping continua al considerar la tercera función de error, definida
por
δ3 = X v − uRE3 (6.92)
3 = φ − φd (6.94)
Se introduce este nuevo error, con el fin de completar el control de orientación del
helicóptero. Considérese ahora, la tercera función de almacenamiento dada por la ecuación:
1 2 1 2
S3 = |δ3 | + |3 | (6.95)
2 2
Derivando la expresión precedente, se obtiene
que describe el control virtual para los valores de Ω y u̇ deseadas. Agrúpese, como en
(6.90), todos los términos en una sola variable llamada Y v . Se entiende que la matriz
Está claro que la matriz cinemática Wη depende siempre de los elementos del vector
η y no de los valores deseados de η. Multiplicando la ecuación (6.103) por E1T , se obtiene
sin ψ 2 cos ψ 3
φ̇v = Ω + Ω (6.104)
cos θ v cos θ v
Dado que φ̇v depende de la variable Ω3v , es necesario que 0 < cos ψ
cos θ
< ∞, o de una
manera equivalente, que los valores de esos ángulos estén siempre en el intervalo siguiente
−π π
θ, ψ ∈ , (6.105)
2 2
Debido a que el modelo establecido sólo concierne el modo de vuelo estacionario, se
supondrá que la condición (6.105) será siempre valida. Usando las ecuaciones (6.97) y
(6.100), se puede reescribir Ṡ3 como sigue
Para la última etapa del proceso, se considerarán los nuevos términos del error definido
por las ecuaciones
Dado que I es una matriz de rango completo, existe una transformación entre la
entrada de control γ y la variable auxiliar γ̃. Por otro lado, η̈ está dado por la ecuación
Ṡ4 = δ4T (Ẏ v − 2u̇RΩ̂E3 − (ũRE3 − uRÊ3 γ̃)) + 4 (φ̈ − φ̈v ) (6.115)
Para demostrar que las ecuaciones (6.116) y (6.117) son satisfechas simultáneamente,
se reescribe la ecuación (6.116) utilizando el mismo principio que el usado en la ecuación
(6.99):
1
0 u 0 γ̃
−u 0 0 γ̃ 2 = RT (Ẏ v − 2u̇RΩ̂E3 + δ3 + δ4 ) (6.119)
0 0 1 ũ
L = S1 + S2 + S3 + S4
1 2 1 2 1 2 1 2 1 2 1 2
= |δ1 | + |δ2 | + |δ3 | + |δ4 | + |3 | + |4 | (6.121)
2 2 2 2 2 2
De hecho, se puede verificar fácilmente que la derivada de esta función es definida
negativa:
Figura 6.2: Diagrama usado para el modelado del sistema masa - resorte
La relación existente entre los momentos de inercia del motor y de la carga, es asumida
como
JM
θ =
JL
Con el fin de facilitar la manipulación matemática del proceso de backstepping, se
hará el siguiente cambio de variables de estado:
x1 = ωL
k
x2 = ẏ = θs
JM
k
x3 = ÿ = (ωM − ωL )
JM
las cuales convierten al sistema original en :
ẋ1 = θx2
ẋ2 = x3
ẋ3 = −a(1 + θ)x2 + bu
y = x1
donde
k
a =
JM
k
b = 2
JM
Un punto clave en el diseño, es que se conoce al menos el signo del parámetro desco-
nocido θ, que es θ > 0. Defínase el error de seguimiento como
e1 = y − yd = x1 − yd
Para dejar la función V˙1 definida sólo con las nuevas variables e, defínase
e2 = x2 − x∗2
donde
x∗2 = −c1 e1 ∀ c1 ∈ R+
θ̃ = θ − θ̂ (6.123)
donde θ̃ define al error paramétrico dado por el parámetro desconocido θ y su valor del
estimado θ̂. Defínase además, la nueva variable
e3 = x3 − x∗3 (6.124)
donde
x∗3 = −c2 e2 − e1 − c1 θ̂x2 ∀ c2 ∈ R+ (6.125)
Utilizando las ecuaciones (6.123)-(6.125) dentro de (6.122), se obtiene
V̇2 = −c1 e21 + e1 e2 + e2 (e3 − c2 e2 − e1 − c1 θ̂x2 + c1 θx2 )
= −c1 e21 − c2 e22 + e2 e3 + c1 θ̃x2
Finalmente, defínase la tercera función de Lyapunov, que estabilizará a todo el sistema,
1 1
V3 = V2 + e23 + θ̃2
2 2γ
donde γ es una constante positiva, ligada a la velocidad de adaptación. La derivada con
respecto al tiempo de V3 es
1
V̇3 = V̇2 + e3 ė3 + θ̃θ̃˙
γ
2 2
= −c1 e1 − c2 e2 + e2 e3 + c1 θ̃x2 + e3 [−ax2
˙ 1 ˙
+bu + (c1 θ̂ + c2 )x3 + (1 + c1 c2 − a)θx2 + c1 θ̂] + θ̃θ̂
γ
Si se define a
α = −ax2 + bu + (c1 θ̂ + c2 )x3 (6.126)
β = 1 + c1 c2 − a (6.127)
entonces, la ecuación de V̇3 puede ser reescrita como
˙ 1˙
V̇3 = −c1 e21 − c2 e22 + e3 (α + c2 β θ̂x2 + c1 θ̂x2 ) + θ̃ c1 e2 x2 + βx2 e3 − θ̂
γ
Dado lo anterior, la ley de adaptación se determina por
˙
θ̂ = γ(c1 e2 + βe3 )x2
y la señal dada por α se iguala a
˙
α = −e2 − c3 e3 − β θ̂x2 − c1 θ̂x2
= −e2 − c3 e3 − β θ̂x2 − γc1 (c1 e2 + βe3 )x2
(6.128)
donde
x∗2 = −c1 e1 ∀ c1 ∈ R +
Recuérdese ahora, que se debe de dejar la expresión anterior sólo en términos de las
nuevas variables, por lo que es necesario buscar una nueva variable que nos cambie x3 .
Para ello, se propone que
e3 = x3 − x∗3 (6.129)
con
Dado que en la ecuación anterior aparece ya un término ligado a uno de los parámetros
desconocidos, entonces, no se trata de cambiar el término de x2 ya que éste estará en la
ley de adaptación para dicho parámetro.
1 ˙ 1
V̇3 = V̇2 + e3 ė3 + θ̃1 θ̃1 + θ̃2 θ̃˙2
γ1 γ2
2 2
= −c1 e1 − c2 e2 + e2 e3 + c1 θ̃2 e2 x2 + e3 (au − θ1 x2 + c2 x3
˙ 1 ˙ 1 ˙
+c1 c2 θ2 x2 + c1 θ̂2 x2 + c1 θ̂2 x3 ) + θ̃1 (−θ̂1 ) + θ̃2 (−θ̂2 )
γ1 γ2
Con el fin de eliminar términos y que a su vez esto permitirá adaptar los valores de
los parámetros desconocidos, se eligen las siguientes leyes de adaptación:
˙
θ̂1 = −γ1 e3 x2 (6.132)
˙
θ̂2 = −γ2 c1 x2 (e2 + c2 e3 ) (6.133)
1
u = [−e2 − (c1 c2 θ̂2 − θ̂1 )x2 − (c2 + c1 θ̂2 )x3
a
−c21 γ2 (e2 + c2 e3 )x22 − c3 e3 ] ∀ c3 ∈ R + (6.134)
con lo cual, se puede asegurar que el sistema es estable, aunque se tengan dos parámetros
desconocidos : JL y k.
De los ejemplos vistos hasta este momento, el presente es el que tiene un poco más de
complejidad, la cual está dada por dos motivos: el primero, es debido a la transformación-
linealización del sistema (6.135)-(6.136) con el fin de analizar una variación paramétrica
total ; la segunda, es por sí sencilla de definir, se necesita agregar en el controlador un
método de robustez. El objetivo del controlador, deberá ser el de estabilizar la esfera de
acero a una cierta distancia.
Ahora, consideremos que los valores nominales de los parámetros físicos son g0 , M0 ,
R0 , L∞0 , Q0 y X∞0 . Se asume, para efectos del controlador, que los valores exactos de los
parámetros son conocidos a priori. Con la consideración anterior, el modelo del sistema
está dado por
ẋ1
ẋ2 = f0 (x) + ∆f (x) + g0 (x)u + ∆g (x)u (6.140)
ẋ3
x2 0
= α0 (x) + ∆α (x) + 0 u
β0 (x) + ∆β (x) γ0 (x) + ∆γ (x)
φ(x) = x1 (6.144)
son
dξ1
= ẋ1
dt
dξ2
= ẋ2
dt
= α0 (x) + ∆α (x)
= ξ3 + ∆α (x)
dξ3 dα0 (x)
=
dt dt
∂α0 dx1 ∂α0 dx3
= +
dx1 dt dx3 dt
con lo que el sistema transformado quedaría de la forma siguiente
ξ˙1 = ξ2 (6.146)
ξ˙2 = ξ3 + ∆α (x) (6.147)
Q0 x23
ξ˙3 = x2
M0 (X∞0 + x1 )3
Q0 x23 {Q0 x2 − R0 (X∞0 + x1 )2 }
−
M0 (X∞0 + x1 )3 {Q0 + L∞0 (X∞0 + x1 )}
Q0 x3
−
M0 (X∞0 + x1 ){Q0 + L∞0 (X∞0 + x1 )}
∂α0 ∂α0
+ ∆β (x) + ∆γ (x) + ∆α (x) (6.148)
dx3 dx3
Una rápida inspección de la ecuación anterior, indica que si no existen las incertidum-
bres paramétricas, entonces no existen tampoco las perturbaciones de ellas mismas en la
transformación de coordenadas, por lo cual, el sistema transformado puede ser linealizado
de manera exacta por un controlador en realimentación de estados. Sin embargo, si dichas
perturbaciones existen, la robustez de la linealización es algo importante a considerar, ya
que los errores en el modelado podrían eliminar los términos no lineales. Es por ello, que
a continuación, se utilizará la técnica de backstepping, que en este caso, puede incorporar
una flexibilidad en los términos no lineales de amortiguamiento con el fin de suprimir los
efectos de los errores en el modelado.
Etapa 1
z1 = ξ1 − yr (6.149)
z2 = ξ2 − α1 (6.150)
donde c1p > 0, c1i > 0. Introduciendo (6.151) en (6.152) y a su vez, utilizando el operador
de Laplace s, entonces el subsistema z1 puede expresarse como
sz2
z1 = (6.153)
s2 + c1p s + c1i
k z1 k∞ ≤k h k1 k z2 k∞ (6.154)
Etapa 2
donde
Ψ0 = (1 − κ2 z2 )(F1 + F0 ) + (c2 + κ2 αd )2 z2
+c2 z3 + κ2 αd z3 + c1i ξ2 + c1p ξ3 − c1i ẏr − c1p ÿr − yr(3)
∆Ψ = (1 − κ2 z2 )∆F + (c2 + κ2 αd + c1p )∆α
Q0 x3
G0 = −
M0 (X∞0 + x1 ){Q0 + L∞0 (X∞0 + x1 )}
U = (1 − κ2 z2 )u
∂α0
∆G = ∆γ (x)
dx3
así como
Q0 x23 {Q0 x2 − R0 (X∞0 + x1 )2 }
F0 = −
M0 (X∞0 + x1 )3 {Q0 + L∞0 (X∞0 + x1 )}
Q0 x23
F1 = x2
M0 (X∞0 + x1 )3
∆α = ∆α (x)
∂α0
∆F = ∆β (x)
dx3
Si la entrada de control aumentada U puede ser determinada, entonces la entrada real
de voltaje u puede ser generada como u = U/(1 − κ2 z2 ), siempre y cuando (1 − κ2 z2 ) > 0.
Dado que ésta es la última etapa, se deben de eliminar todos lo términos no deseados
de la función de Lyapunov V3 , así como asegurar que la derivada de dicha función sea
definida negativa. Para ello, se selecciona
α30 − α31 − α32 − α33
U = (6.163)
G0
donde
α30 = −c3 z3 − Ψ0
α31 = κ31 1 − 0.5 exp−λ1 |z3 | |1 − κ2 z2 |Fd z3
Se puede notar también que el término (1 − 0.5 exp−λi |z3 | ), i = 1, 2, 3 fue agregado para
reducir los efectos del control dados por los términos no lineales de amortiguamiento
cuando |z3 | es relativamente pequeña. Cuando U es introducida al último subsistema, la
dinámica resultante es
∆G
ż3 = −c3 z3 + ∆Ψ − α31 − α32 − α33 + (α30 − α31 − α32 − α33 )
G0
Al sustituir todos los términos en la última función de Lyapunov V3 y considerando
también que las incertidumbres paramétricas han sido eliminadas, se tiene que
Con lo cual se puede decir que el sistema es estable y que la posición deseada es
alcanzada.
6.6. Problemas
Problema 6.1. Considérese el sistema
donde h es la aceleración horizontal, T es la entrada del torque, y las demás variables son
aquellas vistas en los ejemplos anteriores del péndulo, es decir, m representa la masa, g
denota la aceleración de la gravedad, l es la longitud de la barra, k representa un coeficiente
de fricción y θ es el ángulo generado entre la vertical y la posición del péndulo (ver figura
2.6). Asúmase que 0.9 ≤ l ≤ 1.1, 0.5 ≤ m ≤ 1.5, 0 ≤ k ≤ 0.2, |h(t)| ≤ 1 y g = 9.81.
Se desea estabilizar el péndulo en θ = 0 para cualquier condición inicial de θ(0) y θ̇(0).
Diseñar un controlador utilizando Backstepping.
Problema 6.3. Considérese el siguiente sistema
ẋ1 = x1 x2 (6.168)
ẋ2 = x1 + u (6.169)
6.7. Referencias
Este capítulo está basado en [3], [4], [7], [8], [10], [13] y [15].