Fundamentos de Robótica: 2017-I
Control de Robots
- parte I -
Prof. Oscar E. Ramos, Ph.D.
Temas
1. Conceptos Generales
2. Control en el Espacio Articular
- Control PD
- Control PD + Compensación de gravedad
- Control por dinámica inversa
2
Modelo Dinámico en Espacio de Estados
• Dinámica de un Robot:
C (q, q )q g(q) u
M (q)q u τ tot
Señal de control
- Variables de estados:
x1 q x 1 q
x x
x 2 q x 2 q
- Ecuaciones en el espacio de estados
x 1 x2 0
x M 1 (x ) C (x , x )x g(x ) M 1 (x ) u
2 1 1 2 2 1 1
f ( x) G(x1 )
x f (x) G(x1 )u Sistema afin con
respecto al control
Ecuación en espacio de estados
3
Estabilidad de Sistemas Dinámicos
Tipos de Estabilidad (para x=0)
• Estabilidad (en el sentido de Lyapunov)
- Idea: el sistema siempre se mantiene en una
región R si se comienza cerca del punto de
r equilibrio x = 0
R x0
- Más formalmente:
R 0, r 0,‖x(0)‖ r ‖x(t )‖ R, t 0
• Estabilidad asintótica
- Si se inicia suficientemente cerca del punto de
equilibrio, se regresará al punto de equilibrio
ro
x0 - Más formalmente:
1. Es estable en el sentido de Lyapunov
2. r0 0,‖x (0)‖ r0 x(t ) 0 cuando t
Nota: se considera que x = 0 es un punto de equilibrio 4
Formas de Control
• Según la variable de control
- Control de posición
- Control de velocidad
- Control de torque
• Según el grado de acoplamiento
- Control descentralizado (monoarticular)
• Se trata cada articulación por separado
• Puede implementar control de posición, velocidad o torque
- Control centralizado (multiarticular)
• Considera todo el modelo del robot
• Implementa típicamente control de torque
• Según el resultado del control
- Control de movimiento
- Control de fuerza
- Control híbrido (movimiento+fuerza)
5
Formas de Control
• Control Descentralizado (monoarticular)
- Considera n sistemas (articulaciones) independientes: control SISO
- Usa el modelo dinámico de cada articulación (motor+transmisión) por separado
q1d q1
Control Artic. 1
q2d q2
Control Artic. 2
Cinemática
qd
inversa
xd q
qnd qn
Control Artic. n
- Efectos de acoplamiento: considerados como disturbios (ruido).
6
Formas de Control
• Control Descentralizado (monoarticular)
- Control cinemático: usando: “resolved motion rate control”
Δq1 q1
Control Artic. 1
Δq2 q2
Control Artic. 2
xd Δx Δq
J# q
x
Δqn qn
Control Artic. n
Cinemática
Directa
- Existen otras formas de control cinemático
• Integrando ̇ para obtener q e ingresarlo como referencia a cada controlador
7
Formas de Control
• Control Centralizado (multiarticular)
- Considera todas las articulaciones a la vez (considera los acoplamientos
entre articulaciones)
- Utiliza el modelo completo del robot:
C (q, q )q g(q) u
M (q)q
- Puede especificarse en:
a) El espacio Articular
– El lazo de control utiliza las variables articulares
– Entrada al controlador se basa en q
b) El espacio Operacional
– El lazo de control utiliza la variables operacionales (posición, orientación, etc.)
– Entrada al controlador se basa en x
8
Temas
1. Conceptos Generales
2. Control en el Espacio Articular
- Control PD
- Control PD + Compensación de gravedad
- Control por dinámica inversa
9
Control en el Espacio Articular
Introducción
• Es una forma de control centralizada (multiarticular)
- Considera todas las articulaciones simultáneamente
• Según el objetivo de control:
- Control de set point (punto de referencia): qd(t) = qd
- Control para seguimiento de trayectoria: qd(t) variante en el tiempo
• Métodos usuales:
- PD (Proporcional Derivativo)
- PD + Compensación de gravedad
- Dinámica Inversa (torque calculado)
10
Control en el Espacio Articular
Control de set-point
• Objetivo:
- Encontrar torques tales que lim q(t ) q d
t
• Notación:
- Errores articulares: e(t ) q d q(t )
• Problema de regulación: lim e(t ) 0
t
• Ley de control genérica:
u f (q, q , q d , q d , q
d , M (q), C (q, q ), g (q))
Controlador u
Robot
11
Control en el Espacio Articular
Control PD
• Modelo dinámico de un robot:
C (q, q )q g(q) u
M (q)q n grados de libertad
- Variables de estado:
e error de posiciones articular: e = qd - q
x
q velocidades articulares
• Objetivo: alcanzar qd con q d 0
• Ley de control (PD):
u K p (q d q) K d (q d q ) K p , K d n n
definidas positivas
u K p (q d q) K d q
- Nota: Kp, Kd son usualmente matrices diagonales
12
Control en el Espacio Articular
Control PD
• Ejemplo: robot RR planar (2 gdl)
C (q, q )q g (q) u
- Modelo dinámico: M (q)q
ŷ
m m12 hq h(q1 q2 )
M (q) 11 C (q, q ) 2
m21 m22 hq1 0 lc2
l1 q2
g(q)
1
m1lc m2l1 c1 m2lc c12
2
g
lc1
q1
m2lc2 c12 x̂
m11 m1lc21 m2 l12 2l1lc2 c2 lc22 I zz1 I zz2 m22 m2lc22 I zz2
m12 m21 m l l
2 1 c2 2
c lc22 I zz2 h m2l1lc2 s2
- Control PD:
k p1 0 q1d q1 kd 1 0 q1
u Abrir: controldin.m
0 k p 2 q2 d q2 0 kd 2 q2
13
Control en el Espacio Articular
Control PD
• Ejemplo: robot RR planar (2 gdl)
- Valor deseado: qd = [0.5, 0.5]
- Usar control PD con: kp1 = kp2 y kd1 = kd2
- Encontrar valores de ganancia adecuados
- ¿Hay error en estado estacionario?
- ¿Cuál es el valor de estado estable?
• ¿Qué expresión define el valor de convergencia? (Ayuda: analizar el modelo en
lazo cerrado en espacio de estados)
14
(Puntos de Equilibrio)
• Punto de equilibrio:
- Dado un sistema x h(x, u)
- Los puntos de equilibrio hacen que: x h( x, u) 0
• Para un robot:
- Modelo dinámico:
x f (x) G(x)u
q q 0 x1 q
q
M 1 Cq g M 1 u x
x 2 q
- Puntos de equilibrio (forzado) cumplen:
q 0
x f (x) G(x)u 0
u(q, q ) g (q)
- Todos los puntos de equilibrio tienen velocidad nula
- En el equilibrio los torques articulares deben balancear la gravedad
15
Control en el Espacio Articular
Control PD
• Ejemplo: robot RR planar (2 gdl)
- Valor deseado: qd = [0.5, 0.5]
- Usar control PD con: kp1 = kp2 y kd1 = kd2
- Encontrar valores de ganancia adecuados
- ¿Hay error en estado estacionario?
- ¿Cuál es el valor de estado estable?
• ¿Qué expresión define el valor de convergencia? (Ayuda: analizar el modelo en
lazo cerrado en espacio de estados)
q q d K p1g(q)
- Quitarle la gravedad al modelo, ¿cuál es el error en estado estacionario?
• En general, el control PD se puede usar para modelos donde no se
considera la gravedad
16
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Modelo dinámico de un robot:
C (q, q )q g(q) u
M (q)q n grados de libertad
- Variables de estado:
e error de posiciones articular: e = qd - q
x
q velocidades articulares
• Objetivo: alcanzar qd con q d 0
• Ley de control (PD+gravedad):
u g (q) K p (q d q) K d q K p , K d n n
definidas positivas*
- Probar con el modelo del robot RR
e 0
- Con esta ley se alcanza estabilidad asintótica para: x q qd
q 0
- ¿Cómo verificar la estabilidad asintótica?
• Criterio de Lyapunov
*típicamente diagonales 17
(Teorema de Lyapunov)
• Estabilidad en el sentido de Lyapunov
- Sea el sistema x f ( x) con f (0) 0
- El punto x = 0 es estable (en el sentido de Lyapunov) si se puede encontrar una
función escalar V tal que:
1. V es suave: V es de clase 1 (tiene derivada continua)
2. V es definida positiva: V ( x) 0 x 0 y V (0) 0
3. ̇ es semidefinida negativa: V (0) 0, x
• Estabilidad asintótica
- El punto x = 0 es asintóticamente estable si:
Se cumple (1) y (2)
̇ es definida negativa: V ( x) 0, x 0 y V (0) 0
x = 0 es un punto de equilibrio
V: función candidata de Lyapunov 18
(Teorema de LaSalle)
• ¿Por qué?
- Brinda una condición para la estabilidad asintótica cuando ̇ ≤ 0
(semidefinida negativa)
• Conjunto invariante SI :
x(0) S I x(t ) S I , t 0
- Si se empieza en un conjunto invariante, se permanece en el conjunto
• LaSalle:
- Si existe V tal que V ( x) 0 a lo largo de las trayectorias de x f ( x )
- Entonces las trayectorias del sistema convergen asintóticamente al más
grande conjunto invariante
Sl S {x : V ( x) 0}
y SI = {0} es asintóticamente estable
19
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Análisis usando Lyapunov
- Función candidata de Lyapunov:
1 1
V (e, q ) q T Mq eT K p e Depende de e, ̇
2 2
1. Probar que V es definida positiva:
1 T
q Mq 0 con q 0 ( M 0)
2
1 T Kp debe ser
e K pe 0 con e 0 solo si K p 0
2 definida positiva
V = 0 solo si q 0, e 0
V (e, q ) 0, e 0, q 0
V es definida positiva
V (0, 0) 0
20
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Análisis usando Lyapunov
- Función candidata de Lyapunov:
1 1
V (e, q ) q T Mq eT K p e Depende de e, ̇
2 2
2. Determinar si ̇ es semidefinida positiva:
1 T 1 1 1 1
V q Mq q T M q q T Mq e T K p e eT K p e
2 2 2 2 2
1
V q T Mq q T M q e T K p e
2
1
V q T u Cq g q T M q q T K p e Mq u Cq g
2
1
V q T M 2C q q T u g K p e Propiedad: M 2C 0
2
V q T u g K e
p
V q T g K e K q g K e q K q
p d p
T
d u g K p e K d q
21
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Análisis usando Lyapunov
- Función candidata de Lyapunov:
1 1
V (e, q ) q T Mq eT K p e Depende de e, ̇
2 2
2. Determinar si ̇ es semidefinida positiva:
V q T K d q
q T K d q 0 con q 0 solo si Kd 0 Kd debe ser definida positiva
V 0 solo si q 0 (para cualquier e)
V (e, q ) 0 ̇ es semidefinida negativa
Resumen:
• V es definida positiva
• ̇ es semidefinida negativa
• El punto q q d , q 0 es estable en el sentido de Lyapunov
¿Es asintóticamente estable?
(¿el error tiende a cero?)
22
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Análisis usando el teorema de La Salle
- Trayectorias del sistema convergen al mayor conjunto invariante de estados
SI donde V 0
V q T K d q V 0 q 0 0
q
0 :
- Condición para q
q 0
Cq g g K p e K d q
Mq K p e
Mq M 1 K pe 0
q
invertible: la única solución es e = 0
V 0 q 0, q
0 e 0 Único estado invariante cuando e = 0
- El punto de equilibrio es asintóticamente estable (e → 0)
• Conclusión:
- Con control PD+compensación de gravedad el error tiende a cero
u g (q) K p (q d q) K d q
23
Control en el Espacio Articular
Control PD + Compensación de Gravedad
• Interpretación Mecánica: u g K p e K d q
Para matrices diagonales Kp, Kd (con elementos positivos):
- Los elementos de Kp representan la rigidez de resortes virtuales
- Los elementos de Kd representan la viscosidad de amortiguadores virtuales
Rigidez kpi > 0 qd (cada componente definido
Viscosidad kdi > 0 con respecto al anterior)
Configuración
actual q
Configuración
deseada qd
24
Control en el Espacio Articular
Control por Dinámica Inversa
• Formulación del Problema:
q
u* arg min‖q *‖2
u
sujeto a
C (q, q )q g(q) u
M (q)q
• Solución:
M 1 (q) u C (q, q )q g(q)
q
u* arg min‖M 1 u Cq g q
*‖2
u
u* arg min‖M 1u M 1 Cq g q
*‖2
u
M 1u M 1 Cq g q
*
u* Cq g Mq
*
Ley de control
* : referencia
q
25
Control en el Espacio Articular
Control por Dinámica Inversa
• Modelo dinámico del Robot:
C (q, q )q g(q) u
M (q)q
• Control por Dinámica Inversa:
- Compensa la dinámica del robot → “linealiza” el sistema
u M (q)y C (q, q )q g(q) Ley de Control
- Desacopla los elementos
y
q yi solo influye en qi
- Calcula la dinámica inversa del robot
- Problema:
• Especificar y para obtener el movimiento deseado
• Estabilizar la ley de control y
C (q, q )q g(q) M (q)y C (q, q )q g(q)
M (q)q M (q)y
M (q)q
26
Control en el Espacio Articular
Control por Dinámica Inversa
y
q
• Alternativa para y:
- PD + feedforward (a veces llamado “torque calculado”)
d K d (q d q ) K p (q d q)
y q
- Reemplazando:
error
d q
q K d (q d q ) K p (q d q) 0 e qd q
e K d e K p e 0
Dinámica del error de posición al seguir una trayectoria:
Sistema de segundo orden
12 0 0 21 0
0
Críticamente
Kp Kd amortiguado
0 0 n2 0 0 2n
ωi: frecuencia natural (determina velocidad de respuesta)
27
Control en el Espacio Articular
Control por Dinámica Inversa
y
q
• Alternativa para y:
- PID + feedforward
d K d (q d q ) K p (q d q) K I (q d q)dt
y q
• Más robusto a incertidumbres
• Más complejo de implementar en tiempo real
• Resumen: leyes de control
- Linealización + PD + feedforward
u M (q) q
d K d (q d q ) K p (q d q) C (q, q )q g (q)
- Linealización + PID + feedforward
d K d (q d q ) K p (q d q) K I (q d q)dt C (q, q )q g(q)
u M (q) q
28
Control en el Espacio Articular
Otros Métodos de Control
• Control Robusto
- Cuando el modelo real difiere del teórico
- Se conoce las máximas variaciones
- Basado en incertidumbre y diseño usando el “segundo” método de
Lyapunov
• Control Adaptativo
- Adapta la ley de control según la incertidumbre
- Usa parametrización lineal del robot
- Control no lineal dinámico
29
Referencias
• B. Siciliano, L. Sciavicco, L. Villani, y G. Oriolo. Robotics: modelling,
planning and control. Springer Science & Business Media, 2010
(Capítulo 8)
• M.W. Spong, S. Hutchinson, y M. Vidyasagar. Robot Modeling and
Control. John Wiley & Sons, 2006 (Capítulo 8)
• de Wit, Carlos Canudas, Bruno Siciliano, and Georges Bastin,
eds. Theory of robot control. Springer Science & Business Media,
1996 (Capítulo 2)
30