28
CONTROL DE ROBOTS

CONTROL DE ROBOTSmaria/control1.pdf · 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

  • Upload
    lehuong

  • View
    224

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CONTROL DE ROBOTSmaria/control1.pdf · 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

CONTROL DE ROBOTS

Page 2: CONTROL DE ROBOTSmaria/control1.pdf · 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

Índice

¿Qué es el control de robots?Reductores:

Control monoarticular:

Control PIDControl PID con compensación de la gravedadControl PID con compensación por adelantoPlanificación de ganancias

Control multiarticularControl por modelo inversoControl multivariable desacoplado: control por par calculado

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

Page 3: CONTROL DE ROBOTSmaria/control1.pdf · 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

Sistema de control

qd eGenerador de

trayecto-rias

Controlador Actuador Robot

u τ q

Sensor

-+

Actuador: motor de corriente continuaq: posición de la articulaciónqd: posición deseada de la articulación (generador de trayectorias)e: error = qd - q

Page 4: CONTROL DE ROBOTSmaria/control1.pdf · 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

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-linealesMultivariablesAcopladosParámetros variantes en el tiempo

El control basado en los modelos dinámicos es complejo: mucho coste computacional.

Page 5: CONTROL DE ROBOTSmaria/control1.pdf · 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

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

Page 6: CONTROL DE ROBOTSmaria/control1.pdf · 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

Reductores (I)

Consecuentemente se cumple que:

El modelo dinámico del robot (Langrange-Euler) en presencia de reductores:

Si se separa en D1 los términos constantes de D en la diagonal y en D2 el resto de los términos:

Con τp es el par perturbador (el generado por el movimiento del resto de las articulaciones).

qKqa && = qKqa &&&& = τ=τ −1Ka

( ) ( ) ( )qcqq,hqqD ++= &&&τ

cKhKqKDK 11a

11a

−−−− ++= &&τ

44444 344444 21&&&&

p

cKhKqKDKqKDK 11a

12

1a

11

1a

τ

−−−−−− +++=τ

Page 7: CONTROL DE ROBOTSmaria/control1.pdf · 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

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

Page 8: CONTROL DE ROBOTSmaria/control1.pdf · 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

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 latransmisión, Aumento del rozamiento

Ventajas: desacoplan al sistema, reducen la velocidad de las articulaciones, simplifican el modelo dinámico del robot.

Ejemplo:K11 = k22 = 100m1=10, m2=1L1=0.1g=10

Page 9: CONTROL DE ROBOTSmaria/control1.pdf · 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

Reductores (IV)

Page 10: CONTROL DE ROBOTSmaria/control1.pdf · 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

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.

Page 11: CONTROL DE ROBOTSmaria/control1.pdf · 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

Control PID (I)

Se realimenta la diferencia entre la posición de la coordenada generalizada deseada y la real

Control más frecuente: PID

)t(d)t(dekdt)t(ek)t(ek)t(u dip ++= ∫

)s(eskskkk)s(e)s(Rku d

ip ⎟

⎞⎜⎝

⎛ ++== −− 11

Page 12: CONTROL DE ROBOTSmaria/control1.pdf · 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

Control PID (I)

τ = (J s + B)s q + τpτ = k k-1 R(s) e

Si no hay cambio en la referencia: qd = 0

Si no hay perturbaciones: τ p= 0

El controlador PID tiene que actuar en ambos casos para hacer el error = 0

s)BJs()s(Rsq)BJs(

)s(e dp++

++τ=

0≠++

τ=

s)BJs()s(R)s(e p

0≠++

+=

s)BJs()s(Rsq)BJs()s(e d

Page 13: CONTROL DE ROBOTSmaria/control1.pdf · 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

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)]

Page 14: CONTROL DE ROBOTSmaria/control1.pdf · 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

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

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

Si no hay cambio en la referencia: qd = 0

Si no hay perturbaciones: τ p= 0

s)BJs()s(R)q(Gsq)BJs(

)s(e pd++

−τ++=

0=++

−τ=

s)BJs()s(R)q(G

)s(e p )q(C)q(G p =τ=

0B)s(JsR(s)G(q)B)sq(Jse(s) d ≠

++−+

=

Page 15: CONTROL DE ROBOTSmaria/control1.pdf · 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

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:

Sin embargo:el modelo nunca es perfectoes necesario compensar el par perturbador

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

qd τ q

s)BJs( +s)BJs(

1+

Page 16: CONTROL DE ROBOTSmaria/control1.pdf · 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

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]τ = (Js + B) s q + τp

q(t) = qd (t) => para toda la trayectoriae(s) solo depende de las perturbaciones

s)BJs()s(R)s(e p

++

τ=

Page 17: CONTROL DE ROBOTSmaria/control1.pdf · 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

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 generalizadasCarga del robot

Page 18: CONTROL DE ROBOTSmaria/control1.pdf · 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

Planificación de ganancias (II)

Problema: gran numero de combinaciones posiblesSolución: no utilizar como parámetros aquellas articulaciones que influyen poco en otras:

La muñecaLa cintura si es perpendicular al resto

Page 19: CONTROL DE ROBOTSmaria/control1.pdf · 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

Control multiarticular (múltiples articulaciones)

Desacoplamiento por Inversión de Modelo

Si se considera el modelo de Lagrange-Euler:

Para desacoplar el modelo se utiliza un controlador:

τ = k u =[D(q) + N(q, )]τ = D(q) + N(q, )

( ) ( ) )q,q(Nq)q(Dqcqqhq)q(D &&&&&& +=++=τ ,

τ̂ q&q&& q&

dqˆ &&=τ

dq&&

Page 20: CONTROL DE ROBOTSmaria/control1.pdf · 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

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.

( ) ( ) ee )q,q(Nq)q(Dqcqqhq)q(D τ++=τ+++=τ &&&&&& ,

)qN(q,τ̂D(q)τ &+=

e1τDqτ̂ −−= &&

e1

d τDqq −−= &&&&

Page 21: CONTROL DE ROBOTSmaria/control1.pdf · 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

Control multiarticular (múltiples articulaciones)

Para compensar la diferencia entre y se realimenta su diferencia en cada lazo con cualquier técnica de control monoarticular.Ej: Inversión de modelo + PID + compensación por adelanto

q&& dq&&

)qN(q,KR(s)e(s)]IqD(q)[sKu 1d

2-1 &−++=Control por cal calculado:

Page 22: CONTROL DE ROBOTSmaria/control1.pdf · 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

Control multiarticular (múltiples articulaciones)

R(s)e(s)Iqsτ̂ d2 +=1.-

2.-

El modelo dinámico del robot es:

Igualando ambas expresiones:

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

)qN(q,τ̂D(q)τ &+=)qN(q,R(s)e(s)]Iqs)[(τ d

2 &++= qD

e2 )qN(q,Iqs)(τ τ++= &qD

e-12 R(s))]Is)(([e τ+= qD

Page 23: CONTROL DE ROBOTSmaria/control1.pdf · 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

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

Page 24: CONTROL DE ROBOTSmaria/control1.pdf · 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

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:

La estructura del robot no es rígida => tiene una frecuencia de resonancia wr que se debe evitar =>

El sistema tiene que ser críticamente amortiguado, porque si tiene oscilaciones puede chocar => ξ =1 =>

Jk

sJkBsp(s) pd2 +

++= 0wξs2wsp(s) 2

nn2 =++=

Jk

w pn = Jk2

kBξp

d+=

1Jk2kB

p

d =+

rp wJk

2 <2ww r

n <

Page 25: CONTROL DE ROBOTSmaria/control1.pdf · 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

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 mantenidos junto con la acción integral, puede hacer saturarse al controlador =>la señal de control es constante independientemente del error. => acción wind-up genera oscilaciones y se tarda más tiempo en estabilizarse.

Entrada

u

Salida

mínimo

máximo

k

τ

Page 26: CONTROL DE ROBOTSmaria/control1.pdf · 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

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.

Page 27: CONTROL DE ROBOTSmaria/control1.pdf · 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

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.

Page 28: CONTROL DE ROBOTSmaria/control1.pdf · 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

Bibliografía.

Barrientos: viene todo muy bien explicado.