Está en la página 1de 28

CONTROL DE ROBOTS

Índice

„ ¿Qué es el control de robots?


„ Reductores:
„ Control monoarticular:

„ Control PID
„ Control PID con compensación de la gravedad

„ Control PID con compensación por adelanto

„ Planificación de ganancias

„ Control multiarticular
„ Control por modelo inverso

„ Control multivariable desacoplado: control por par calculado

„ Aspectos prácticos de la implementación del controlador.


Sistema de control

Generador qd e u τ q
de
trayecto- Controlador Actuador Robot
+
rias -

Sensor

„ Actuador: motor de corriente continua


„ q: posición de la articulación
„ qd: posición deseada de la articulación (generador de trayectorias)
„ e: error = qd - q
Control de Robots (I)

„ Objetivo: Que la trayectoria seguida por el robot [q(t)]


sea lo más parecida a la propuesta por la planificación
de trayectorias [qd(t)]
„ Solución inicial: Utilizar los modelos dinámicos del robot
(Lagrange-Euler, Newton-Euler...)
„ Inconveniente de los modelos dinámicos:
„ No-lineales

„ Multivariables

„ Acoplados

„ Parámetros variantes en el tiempo

„ El control basado en los modelos dinámicos es complejo:


mucho coste computacional.
Control de Robots (II)

„ Solución práctica: Trabajar con un modelo para cada


articulación por separado (aprovechando el factor de reducción
para desacoplar las articulaciones) => Control monoarticular.
„ Reductores: si la articulación presenta reductores (o
engranajes) se reduce la velocidad del movimiento y se
disminuye el acoplamiento entre ejes.
„ Con reductores, la posición de las articulaciones [q(t)] está
relacionada con la posición del actuador: [qa(t)]:

qa = K q
„ y K es una matriz diagonal con los factores de reducción
kii >>1
Reductores (I)

„ Consecuentemente se cumple que:


q& a = Kq& &q& a = K&q& τ a = K −1τ
„ El modelo dinámico del robot (Langrange-Euler) en presencia de
reductores:
τ = D(q)&q& + h(q, q& ) + c (q)

τ a = K −1DK −1q
&&a + K −1h + K −1c

„ Si se separa en D1 los términos constantes de D en la diagonal y en


D2 el resto de los términos:

τ a = K −1D1K −1q
&&a + K −1D 2K −1&q&a + K −1h + K −1c
144444244444 3
τp

„ Con τp es el par perturbador (el generado por el movimiento del resto


de las articulaciones).
Reductores (II)

„ Si los factores de reducción son suficientemente grandes:


τp << τa, con lo que puede considerarse el movimiento de cada
articulación desacoplado del movimiento del resto de las
articulaciones
Reductores (III)
„ ¿ Cuándo puede plantearse el control separado de las
articulaciones?:
„ Sólo para robots de accionamiento indirecto con reductores (o
engranajes de elevada relación).
„ Inconvenientes de los engranajes: Introducción de holguras en la
transmisión, Aumento del rozamiento
„ Ventajas: desacoplan al sistema, reducen la velocidad de las
articulaciones, simplifican el modelo dinámico del robot.

„ Ejemplo:
„ K11 = k22 = 100
„ m1=10, m2=1
„ L1=0.1
„ g=10
Reductores (IV)
Actuador

„ Diseño del controlador: utilizando el modelo dinámico del


actuador: motor eléctrico de corriente continua

„ Modelo simplificado del actuador: el accionamiento eléctrico se


supone suficientemente rápido como para aproximarlo por una
ganancia constante: τ = Ku.
Control PID (I)

„ Se realimenta la diferencia entre la posición de la coordenada


generalizada deseada y la real

„ Control más frecuente: PID


de ( t )
u ( t ) = k p e ( t ) + k i ∫ e ( t ) dt + k d
d( t )
⎛ k ⎞
u = k −1R(s)e(s) = k −1 ⎜ k p + i + k d s ⎟e(s)
⎝ s ⎠
Control PID (I)

„ τ = (J s + B)s q + τp τp + (Js + B)sqd


e(s) =
„ τ = k k-1 R(s) e R(s) + (Js + B)s

„ Si no hay cambio en la referencia: qd = 0


τp
e(s) = ≠0
R(s) + (Js + B)s

„ Si no hay perturbaciones: τ p= 0

(Js + B)sqd
e(s) = ≠0
R(s) + (Js + B)s

„ El controlador PID tiene que actuar en ambos casos para hacer


el error = 0
Control PID con compensación de la gravedad (I)

„ De los términos que generan el par perturbador el más


importante suele ser el de la gravedad (el único en el
estacionario)
„ Con el modelo dinámico puede eliminarse su efecto: G(q)

„ u = K-1 [R(s) e(s) + G(q)]


Control PID con compensación de la gravedad (II)

„ τ = K u = R(s) e(s) + G(q) (Js + B)sqd + τp − G(q)


e(s) =
„ τ = (Js + B) s q + τp R(s) + (Js + B)s

„ Si no hay cambio en la referencia: qd = 0


τp − G(q)
e(s) = =0 G(q) = τp = C(q)
R(s) + (Js + B)s

„ Si no hay perturbaciones: τ p= 0

(Js + B)sq d − G(q)


e(s) = ≠0
R(s) + (Js + B)s
Control PID con compensación por adelanto (I)

„ Si el modelo de la articulación fuera perfecto se podría


diseñar por inversión del modelo un “compensador
ideal”, con error de seguimiento nulo:
qd τ q
1
(Js+ B)s
(Js+ B)s

„ Sin embargo:
„ el modelo nunca es perfecto

„ es necesario compensar el par perturbador

„ Solución: se añade al modelo inverso una realimentación por


PID:
Control PID con compensación por adelanto (II)

„ u = k-1 [R(s) e + (Js+B) s qd]


„ τ = k u = [R(s) e + (Js+B) s qd] e(s) =
τp
„ τ = (Js + B) s q + τp R(s) + (Js + B)s

„ q(t) = qd (t) => para toda la trayectoria


„ e(s) solo depende de las perturbaciones
Planificación de ganancias (I)

„ Problema: los parámetros del modelo y la magnitud de los


pares perturbadores a compensar cambian con el punto de
trabajo del robot.
„ Soluciones:
„ Ajustar un único controlador para que funcione

adecuadamente en todas las circunstancias (robusto)


„ Cambiar los parámetros del controlador (de forma suave) al

cambiar el punto de trabajo => planificación de ganancias.


„ Planificación de ganancias: tabla precalculada de valores de
ganancias con los parámetros:
„ Coordenadas generalizadas

„ Carga del robot


Planificación de ganancias (II)

„ Problema: gran numero de combinaciones posibles


„ Solución: no utilizar como parámetros aquellas articulaciones
que influyen poco en otras:
„ La muñeca

„ La cintura si es perpendicular al resto


Control multiarticular (múltiples articulaciones)

Desacoplamiento por Inversión de Modelo


„ Si se considera el modelo de Lagrange-Euler:
τ = D ( q ) &q& + h (q , q& ) + c (q ) = D ( q ) &q& + N ( q , q& )

„ Para desacoplar el modelo se utiliza un controlador:


„ τ = k u =[D(q) τ̂
+ N(q, q& )] τˆ = &q& d
„ τ = D(q) &q& + N(q, q& )

&q& d
Control multiarticular (múltiples articulaciones)

Control PID con prealimentación y desacoplado

„ En presencia de variaciones en el modelo y pares exteriores el


desacoplamiento no es perfecto.

τ = D ( q ) &q& + h (q , q& ) + c (q ) + τ e = D ( q ) &q& + N ( q, q& ) + τ e τ̂ = &q& − D−1τe

τ = D(q) τ̂ + N(q, q& ) &q&d = &q& − D−1τe


Control multiarticular (múltiples articulaciones)

„ Para compensar la diferencia entre &q& y &q&d se realimenta su


diferencia en cada lazo con cualquier técnica de control
monoarticular.
„ Ej: Inversión de modelo + PID + compensación por adelanto

„ Control por cal calculado: u = K -1D(q)[s 2 Iq d + R(s)e(s)] + K −1N(q, q& )


Control multiarticular (múltiples articulaciones)

1.- τ̂ = s Iq d + R(s)e(s)
2
„
τ = D ( q)[s2 Iq d + R(s)e(s)] + N(q, q& )
„ 2.- τ = D(q) τ̂ + N(q, q& )

„ El modelo dinámico del robot es: τ = D ( q)s2 Iq + N(q, q& ) + τ e

„ Igualando ambas expresiones:

e = [ D ( q)(s2 I + R(s))]-1τ e

„ En ausencia de perturbaciones (τe=0), e(s)=0 => q=qd


Aspectos prácticos de la implementación (I)

„ Controladores discretos: Si bien el diseño suele plantearse


en continuo, la implementación del sistema de control se
realiza en un microprocesador, con lo que el diseño
continuo hay que convertirlo a discreto (con posible
presencia de ZOH).

„ Flexión y oscilaciones estructurales: se coloca un filtro notch


a la salida del regulador que elimine de la señal de
control las frecuencias cercanas a la de resonancia del
sistema
Aspectos prácticos de la implementación (II)

„ Cálculo de los parámetros del PID (kp, ki, kd): si sólo se tiene
un PD, la ecuación característica del sistema es:
B + kd k p(s) = s 2 + 2w n ξs + w 2n = 0
p(s) = s 2 + s+ p
J J

kp B + kd
wn = ξ=
J 2 k pJ

„ La estructura del robot no es rígida => tiene una frecuencia de


resonancia wr que se debe evitar => w < w n 2
k
r
< w p
2 J
r

„ El sistema tiene que ser críticamente amortiguado, porque si


tiene oscilaciones puede chocar => ξ =1 => B + k d
=1
2 k pJ
Aspectos prácticos de la implementación (III)

„ Saturación de los actuadores: windup. Los dispositivos


electrónicos destinados a suministrar las potencia a los
actuadores del robot tienen un margen de actuación limitado.

„ La presencia de errores
Salida τ mantenidos junto con la acción
máximo integral, puede hacer saturarse
al controlador =>la señal de
k
u control es constante
Entrada independientemente del error.
mínimo => acción wind-up genera
oscilaciones y se tarda más
tiempo en estabilizarse.
Aspectos prácticos de la implementación (IV)

„ Soluciones:
„ Cuando se llegue a la saturación de los actuadores, anular la

acción integral hasta que el error e= qd-q no entre dentro de los


límites establecidos.
„ Regulador PI con anti-windup:

„ Otras formas de colocar el PID: I-PD, etc.


Resumen

„ ¿Qué es un sistema de control?. Saber dibujar un lazo de


control y que elementos que lo constituyen
„ ¿Qué es el control de robots?
„ ¿Qué son los reductores y para que sirven?
„ Tipos de controladores:
„ Monoarticulares. PID, PID con compensación de la

gravedad, PID con compensación por adelanto,


planificación de ganancias.
„ Multiarticulares: control por inversión de modelo,

PID+inversión de modelo + compensación por adelanto


„ Aspectos prácticos de la implementación de los controladores
en un robot.
Bibliografía.

„ Barrientos: viene todo muy bien explicado.

También podría gustarte