Control y programación del robot
Contenidos Generación y control de trayectoria. Control
visual. Arquitectura del sistema de visión Control basado
en posición Control basado en imagen. Lenguajes de
programación de robots. Lenguaje de Control Avanzado
(Advanced Control Language – ACL). Aplicaciones.
Análisis de casos prácticos. Ejemplos
prácticos.
Objetivos Modelar la trayectoria de un robot y el movimiento de
sus partes así como programar el control del
funcionamiento de éste teniendo en cuente los sensores que
posee. 2
Niveles superiores de un Robot 3 Manipulador Scorbot
Modelo cinemático Sus objetivos son: Establecer cuales son
las trayectorias que debe seguir cada articulación del
robot a lo largo del tiempo para conseguir los objetivos fijados
por el usuario: Punto de destino Tipo de trayectoria del extremo
Tiempo invertido etc.. Es necesario atender a las restricciones
físicas de los accionamientos y criterios de calidad
(suavidad, precisión…) 4
Funciones de control cinemático 5
Funciones de control cinemático (2) Convertir la
especificación del movimiento dada en el programa en una
trayectoria analítica en espacio cartesiano
(evolución de cada coordenada cartesiana en función
del tiempo). Muestrear la trayectoria cartesiana obteniendo un
número finito de puntos de dicha trayectoria (x, y, z, a,
b, g). Utilizando la transformación inversa, convertir
cada uno de estos puntos en sus correspondientes coordenadas
articulares (q1,q2,q3,q4,q5,q6). Debe tenerse en cuenta la
posible solución múltiple, así como la
posibilidad de ausencia de solución y puntos singulares.
6
Funciones de control cinemático (3) Interpolación
de los puntos articulares obtenidos, generando para cada variable
articular una expresión qi(t) que pase por ó se
aproxime a ellos, siendo una trayectoria realizable, cartesiana
lo más próxima a la especificada por el usuario
(precisión, velocidad, etc.). Muestreo de la trayectoria
articular para generar referencias al control dinámico.
7
Concepto de punto PUNTO: En el espacio de las juntas es el vector
compuesto por valores definidos de las variables de junta. En el
espacio cartesiano está dado por la posición (x, y,
z) y la orientación (a, ß, ?), también
representado por T. Un punto definido en el espacio de las juntas
tiene una sola proyección en el espacio cartesiano. Un
punto definido en el espacio cartesiano puede tener una, muchas o
ninguna proyección en el espacio de las juntas. 8
Puntos vías (o intermedios) Punto intermedio, usualmente
especificado en el espacio cartesiano, por el cual se desea que
pase el manipulador. Generalmente incluye especificaciones de
posición y velocidad. Se debe adoptar algún
criterio en el caso de intentar obtener velocidades sobre estos
puntos en forma automática. 9
Generación de trayectorias TRAYECTORIA: Es la historia en
el tiempo (sucesión) de los valores (puntos) de la
posición, velocidad y aceleración para cada grado
de libertad del manipulador. El problema básico consiste
en ir de la posición actual (Tinicial) a una
posición deseada (Tfinal) 10
Interfaz Hombre – Máquina (HMI) Esta
problemática involucra HMI: Humano: Mantener
especificaciones simples. Descripciones intuitivas. Minimizar
número de parámetros. Máquina: Deseable,
capacidad de planear trayectorias. Funciones de trayectoria
“suaves”: continuas con derivadas continuas. Bajo
costo computacional. 11
Características Definir un punto inicial, un punto final e
interpolar puntos intermedios. Una trayectoria (o consigna)
determinada va a influir sobre las partes mecánicas del
robot. Se trata de tener aceleraciones suaves para evitar
movimientos bruscos que hagan vibrar el sistema, debido a que las
grandes aceleraciones instantáneas desgastan mucho las
piezas y fuerzan los actuadores. 12
Tipos de trayectorias Trayectorias en espacio de las juntas:
Punto a Punto (PTP): Sencilla. Habituales en robots comerciales
simples. Movimiento eje a eje. Movimiento simultáneo de
ejes. Trayectorias coordinadas o isócronas. Trayectorias
interpoladas entre varios puntos de paso. Trayectorias aprendidas
(robot guiado). Trayectorias en espacio cartesiano: (Trayectorias
continuas): Interpoladas. Habituales en robots comerciales caros.
Analíticas. 13
Tipos de trayectorias Trayectorias punto a punto: Movimiento eje
a eje. Movimiento simultáneo de ejes. Trayectorias
coordinadas o isócronas. Trayectorias continuas. 14
Tipos de trayectorias 15
Trayectorias punto a punto Cada articulación evoluciona
desde la posición inicial a la final sin considerar el
estado o evolución de las demás articulaciones.
Tipos: Movimiento eje a eje: sólo se mueve un eje cada vez
(aumento del tiempo de ciclo). Movimiento simultáneo de
ejes: los ejes se mueven a la vez acabando el movimiento cuando
acabe el eje que más demore (altos requerimientos
inútiles). Sólo en robots muy simples o con unidad
de control limitada. 16
Trayectorias Coordinadas o isócronas Los ejes se mueven
simultáneamente ralentizando las articulaciones más
rápidas de forma que todos los ejes acaben a la vez. El
tiempo total será el menor posible. Se evitan exigencias
inútiles de velocidad y aceleración. Continuas La
trayectoria del extremo es conocida (cartesiana). Trayectorias
típicas: Línea recta, Arco de círculo.
17
Interpolación de trayectorias Unión de una
sucesión de puntos en el espacio articular por los que han
de pasar las articulaciones del robot en un instante determinado.
Surge la necesidad de respetar las restricciones físicas.
Se utilizan funciones polinómicas cuyos coeficientes se
ajustan según las restricciones. Los principales tipos de
interpoladores utilizados son: Interpoladores lineales.
Interpoladores cúbicos (splines). Interpoladores a tramos.
Otros interpoladores. 18
Interpoladores lineales 19 Sencillos. Se obtiene sólo
continuidad en posición. Velocidad discreta y
aceleración infinita. Válida sólo si el
controlador “suaviza” en cada paso discreto.
Interpoladores cúbicos Se utilizan polinomios de tercer
grado para unir cada pareja de puntos. Brindan la posibilidad de
imponer cuatro condiciones de contorno al usar cuatro
parámetros: dos de posición y otros dos de
velocidad. La trayectoria se describe como una serie de
polinomios cúbicos concatenados, escogidos de forma que
exista continuidad en posición y velocidad, denominados
splines. 20
Interpoladores a tramos Interpolador con 3 tramos Interpolador
con ajuste parabólico 21
Interpolación Cúbica: Espacio de las juntas Caso de
interpolación, para una junta, entre dos puntos: Suavidad
en posición y velocidad. Se deben cumplir cuatro
requisitos mínimos: 22
Solución única para las cuatro restricciones
23
Caso de velocidades distintas de cero 24
Función lineal con finales parabólicos 25
Interpolación en el espacio de las juntas en el espacio
cartesiano 26
Interpolación: Ventajas y Desventajas en el espacio de las
juntas Simple observación de los valores permitidos.
Sólo dos cálculos de MCI. Se puede garantizar que
para cada junta la variación será suave. Se
desconoce totalmente lo que ocurre en el espacio cartesiano,
entre Ti y Tf. Menor cantidad de cálculos que en la
interpolación en el espacio cartesiano. en el espacio
cartesiano Se conoce la trayectoria en el espacio cartesiano.
Gran cantidad de cálculos. Sólo luego de los
cálculos se sabrá si el proceso es posible y suave.
Si cae en una singularidad se pierde la trayectoria. 27
Ejemplos con dos puntos vías (una junta) trayectoria
“Pick-and-Place” 28
Interpolación en la orientación Si se define
orientación en puntos origen/destino: se hace un PTP de
orientación origen a destino. Notas: No vale interpolar
matrices de rotación, ya que no serían
ortonormales. Interpolar ángulos Euler, RPY similar a lo
explicado. Pero la trayectoria no es intuitiva. Interpolar
representación Vector-ángulo: sí es
intuitivo. Hay que hacer la transformada inversa, lo cual no es
fácil. 29
Modelo dinámico Su objetivo es procurar que las
trayectorias realmente seguidas por el robot q(t) sean lo
más parecidas posibles a las propuestas por el control
cinemático qc(t): Obtener una solución
simbólica que represente los movimientos de los elementos
del robot, y especialmente la garra, en función de los
torques / esfuerzos aplicados. Recíprocamente, el modelo
de control dinámico permitirá también
obtener los esfuerzos/torques necesarios para que los elementos
del robot se muevan con las velocidades y aceleraciones
especificadas siguiendo las trayectorias también
especificadas. 30
ROBOT Constituido por: • manipulador • fuente de
alimentación • electrónica de control •
software (ley de control) MODELO DINÁMICO Se usa para:
CONTROL SIMULACIÓN DISEÑO del movimiento del brazo.
31
Aspectos dinámicos ESTRUCTURALES • Fuerza
centrífuga. • Fuerza de Coriolis: esfuerzo rotacional
que surge de la combinación de dos movimientos. •
Acoplamiento de inercia. • Acción de la gravedad.
ACCIONAMIENTO • Rozamiento seco y viscoso. • Inercia
variable debida a la carga. • No linealidad en los
engranajes (juego). • Flexibilidad en la transmisión
de torque. 32
Métodos comúnmente utilizados MÉTODO
NEWTON-EULER: Es un método iterativo. Se propagan
aceleraciones y torques por los distintos elementos del robot:
balance de fuerzas y/o torques. MÉTODO de LAGRANGE: Es un
método cerrado. Resulta de la diferencia de las
energías cinéticas y potenciales de todas las
juntas: balance de energía. 33
Aceleración de un cuerpo rígido Lineal Angular
34
Distribución de masas El momento de inercia de un cuerpo
sólido con densidad ?(r), con respecto a un eje dado se
define como: donde r es la distancia perpendicular a dicho eje de
rotación. El Tensor de inercia es la generalización
del “momento de inercia” escalar de un objeto.
35
Momento de inercia Si se puede elegir la orientación del
marco de referencia, es posible hacer cero los “productos
de inercia”. Ejes principales: Momentos principales de
inercia. 36
Método de Newton – Euler Realiza iteraciones sobre los
links en dos sentidos: 37
Iteraciones de Newton – Euler Cálculos hacia delante:
Primero, calcular la velocidad y aceleración angular y la
velocidad y aceleración lineal, de cada link (i) en
función del link anterior (i-1). Estos valores pueden
calcularse recursivamente, comenzando desde la base (v, a = 0) y
terminando por el link o efector final. Cálculos hacia
atrás: Medir, calcular o definir las fuerzas/torques
actuantes sobre el efector final. Con las velocidades y
aceleraciones previamente encontradas, calcular las
fuerzas/torques en las juntas de cada link partiendo desde el
efector final y terminando en la base. 38
Ecuaciones Ecuación de Newton: Fuerzas causantes de
traslación. Ecuación de Euler: Momentos causantes
de rotación. 39
ESTA PRESENTACIÓN CONTIENE MAS DIAPOSITIVAS DISPONIBLES EN
LA VERSIÓN DE DESCARGA