ROBOTICA

La Robótica es la ciencia que estudia la tecnología de los robots.

 

La palabra robot es de origén checo inventada por el escritor Karel Capek, donde los robots eran máquinas androides que servía a sus jefes humanos desarrollando todos los trabajos físicos.

 

 

EVOLUCION DE LA ROBOTICA
Capítulo 1.3 correspondiente del curso de Robótica General, realizado dentro del módulo de tecnologías de automatización correspondiente al plan de formación 2011 de la Escuela de formación de SEAT
Roboticageneral_capitulo1.3.pdf
Documento Adobe Acrobat 2.6 MB

Si bien el término de Robot como máquina compleja pensada para poder hacer que el ser humano participe lo mínimo posible en procesos productivos donde las condiciones de trabajo eran especialmente duras y difíciles se ha ido familiarizando mediante estas novelas o peliculas de ciencia ficción , es verdad que esta mitologia que rodea al concepto de robot tienen un nulo parecido con el robot industrial.

 

La idea común que se tiene de un robot industrial es la de un manipulador o un brazo mecánico articulado como una máquina que puede efectuar un número diverso de trabajos automáticamente mediante la programación previa,pero esta definición no es válida porque existen bastantes máquinas que cumplen esos requisitos.

INTRODUCCION A LA PROGRAMACION DE ROBOTS

Según la definición de “ROBOT”, acordada en el European Standard EN775, 1992:

  • “Robot manipulador industrial: Maquina manipuladora con varios grados de libertad, controlada automáticamente, reprogramable en posición, velocidad y aceleración, la cual puede ser ubicada en un lugar fijo o móvil y destinada para uso de automatización industrial.”

   

"Un poco de Historia”

  

A finales de los años 60 y comienzos de los años 70 surgieron los primeros prototipos de brazos poli-articulados, electromecánicamente impulsados”el Famulus” de Kuka y el PUMA (Programmable Universal Manipulation Arm) de Unimation (actual STAÜBLI) que realizaban la manipulación o traslados de objetos.

Con el avance tecnológico de los años 90 los robots se han ido convirtiendo en una herramienta imprescindible para el sector industrial, siendo las grandes marcas de fabricación Volkswagen ,General Electric y General motors y un conglomerado de empresas japonesas como Kawasaki, Fujitsu, Yamaha, Mitshubisi que fabricaban productos para el mundo de la automatización, como controles númericos, autómatas programables, controladoras de ejes, las que incorporan y desarrollan sus propios robots industriales o también llamados robots de producción ya que son empleados para trabajos de automatización .en diversa industrias como automoción, metalurgicas, alimentarias..

Asea BcBovery

ABB es la fusión de dos multinacionales en el campo de la energia ASEA AB de suecia y BBC Brown Bovery de Suiza.

Factory Automation NUmerical Control

FANUC es una empresa japonesa desvinculada de Fujitsu desde 1979 fabricantes de servomotores, controles númericos

Keller Und knappich Augsburg

Kuka es una empresa alemana fundada en 1898 cuyas siglas se debe al nombre de sus fundadores que fabricaban máquinas de soldadura.

¿Cómo se programa un robot?

 

 El lenguaje de programación de los robots sirve como interfaz entre el usuario y el robot industrial.

Un programa consiste en una serie de instrucciones que describen el

trabajo del robot. Cada instrucción tiene asociada una serie de parámetros que describen de forma completa la aplicación a realizar.

Dentro la diversidad de lenguajes de programación de los principales fabricantes de robots industriales el más usado es el textual + guiado, mediante una botonera de aprendizaje (teach pendand o joystick), el operador mueve el efector del robot y almacena las configuraciones alcanzadas bien en modo articular o cartesiano  realizando así las trayectorias punto a punto o registro continuo.

Además se dispone un editor de programas con estructuras condicionales e iterativas de control de programa mediante texto estructurado .

 

¿Cómo se mueve un robot?

 

Mediante las consolas de programación podemos programar el robot para que realice  tres tipos de trayectorias de movimiento:

 

Eje a eje: Se mueve el robot hacia un punto usando coordenadas articulares. cuando no tiene que seguir ninguna trayectoria determinada.

Lineal: Se mueve el robot hacia un punto usando la línea recta.

Circular: Se mueve el robot hacia un punto de destino pasando por un punto intermedio que determina un arco de circunferencia.

Consolas de programación
Consolas de programación

CONCEPTOS BASICOS DE LA PROGRAMACION DE ROBOTS

TIPOS DE  MOVIMIENTOS

INFORMACION POSICIONAL DE UNA INSTRUCCION DE MOVIMIENTO

 

Una instrucción de movimiento debe contener la siguiente información sobre:

 

  • Control de Trayectoria: Tipo de interpolación Articulada, Cartesiana Lineal o Circular.
  • Control de Velocidad: Se puede expresar en % vel.máx., mm/s, deg/s... según el tipo de desplazamiento escogido.
  • Control de Posición o zona: Define como termina el robot su movimiento.

SISTEMAS DE COORDENADAS. POSICION Y ORIENTACION DE UN PUNTO.

 

Las coordenadas de un punto de una instrucción de movimiento deben representarse en el espacio describiendo su posición y orientación con respecto a un sistema de coordenadas de referencia.

Considerando como sistema de referencia los formados por tres ejes rectílineos (X,Y,Z) perpendiculares 2 a 2 , siendo el 3º eje el producto vectorial de los otros dos, podemos tener 3 sistemas de coordenadas para representar la posición de un punto:

  • Cartesiano: Las coordenadas X, Y, Z son las proyecciones de dicho punto perpendicula a cada eje.
  • Cilindrico: Las coordenadas del vector P vienen dadas por la distancia desde el origen O del sistema hasta  la proyección de P sobre OXY (r), el ángulo formado entre la proyección del vector P sobre OXY y el eje OX , y la proyección sobre el eje OZ del vector P.
  • Esferico: Las coordenadas del vector P vienen dadas por la distancia desde O hasta el extremo del vector P, el ángulo entre Ox y la proyección de P sobre OXY, y el ángulo formado por P y OZ.
  • 

 

¿Cómo se representa un punto a nivel de usuario?

 

La mayoria de robots industriales del tipo articulado describen la posición del extremo del robot (localización)en referencia a un sistema de coordenadas cartesiano basado en la regla de la mano derecha mediante un vector de posicón y su orientación basandose en las matrices de rotación de los angulos de EULER, QUATERNIOS, o Angulos ROLL, PITCH y YAW.

Ejemplo de rotación
Ejemplo de rotación

CINEMATICA DEL ROBOT

 

La cinemática se basa en el estudio del movimiento del robot dentro de un sistema de referencia, planteandose 2 problemas:

 

  • Problema cinemático directo: Determinar la posición y orientación del extremo del robot, con respecto a un sistema de coordenadas de referencia, conocidos los valores de las articulaciones y sus parametros geométricos.
  • Problema cinemático inverso: Determinar la configuración que debe adoptar el robot para alcanzar una posición y orientación conocida.

La resolución del problema de cinemática directa en un robot o manipulador con 2 grados de libertad para determinar sólo la posición cartesiana de su extremo final se resuelve mediante relaciones geometricas y trigonométricas.

La resolución del problema de cinemática inversa para que el extremo del robot se posicione según una determinada localización espacial, depende de la congifuración del robot.

CINEMATICA INVERSA 2 GDL
Resolución del problema cinemático inverso por métodos geométricos
SOLUCION+AL+PROBLEMA+DE+CINEMATICA+INVER
Documento Adobe Acrobat 116.1 KB

RESOLUCION SISTEMATICA DEL PROBLEMA CINEMATICO DIRECTO PARA N GRADOS DE LIBERTAD.PARAMETROS DENAVIT-HARTEMBERG

Para obtener la localización del elemento terminal de un manipulador o robot articulado de n grados de libertad con respecto a un sistema de referencia ligado a la base del robot, se usan matrices de transformación homogenea obtenidas mediante la representación Denavit-Hartemberg.

Esta representación parte de la base que un robot es una combinación de elementos y articulaciones , con el primer elemento conectado a la base y el último conteniendo "la mano".

Las articulaciones pueden ser de revolución, permiten la rotación respecto de un eje, o prismáticas , permiten el deslizamiento a lo largo de un eje.

D_H es un método matricial de establecer de forma sistemática un sistema de coordenadas para cada elemento de una cadena articulada.

Una vez establecido el método D-H de asignación de sistemas de referencia para cada elemento se procede a encontrar la transformación homogénea que representa la relación existente entre 2 articulaciones consecutivas del robot, dando como resultado las matrices que determinan la posición y orientación del elemento terminal.

 

CONFIGURACION DEL ROBOT

 

Según la problematica de la cinemática inversa de un robot , la posición de la herramienta del manipulador no  puede sólo definirse por el valor de las coordenadas del punto que representa en el espacio de un sistema de referencia cartesiano, ya que varias posiones pueden ser adoptadas de  acuerdo con la estructura del manipulador o robot.

 

 

CONTROL DE LA CINEMATICA DEL ROBOT

TRAYECTORIAS-VELOCIDAD-ACELERACION-POSICIONAMIENTO

CONTROL DE TRAYECTORIAS

 

La manera de como realiza el desplazamiento entres dos posiciones el robot lo hace mediante interpolación.

Las interpolaciones pueden ser del tipo Articulado, lineal, circular y parabólicas (splines cubicos).

 

  • Interpolación lineal: Conociendo el punto inicial y final , se cálcula la ecuación de la recta que los une, y a continuación se obtiene un vector de posiciones muestreando la ecuación de la recta obtenida.La trayectoria que se debe seguir entre los puntos muestreados será un polinomio de tercer orden cuyo resultado final será una trayectoria lineal cuya orientación de la herramienta que está en movimiento se controla distinguiendo la orientación en el punto de arranque de la orientación en le punto objetivo. 
  • Interpolación circular: El mismo procedimiento se usa para la trayectoria circular, sólo que la curva a calcular necesita un punto intermedio entre el inicila y el final.
  • Interpolación spline: La trayectoria del movimiento es una parábola pasando a través de tres puntos.
  • Interpolación Articulada: Se utiliza cuando no se requiere de una trayectoria exacta entre dos puntos programados. Representa el tipo de desplazamiento más rápido y por ello el óptimo en cuanto tiempo se refiere, y que resulta de la sincronización de fase de cada eje en particular. La trayectoria generada es isócrona, es decir, todas las articulaciones se inician y llegan  a la posición final al mismo instante. La ventaja de este movimiento frente a los anteriores es que se evitan siempre los puntos singulares y la desventaja es que no secontrola la orientación d ela herramienta durante el movimiento.
  • 

Por tanto el tipo de interpolación determina el recorrido sobre el que se mueve el robot entre el origen de un punto y su destino generando una trayectoria. Estas trayectorias pueden ser punto a punto o continuas.

 

Para asegurar que la trayectoria que une los puntos por los que tiene que pasar cada articulación "q" presente continuidad en la velocidad se generan las trayectorias mediante funciones polinomiales del siguiente tipo:

 

q (t) = a0 + a1 t + a2 t 2 + a3 t3

 

donde los parametros a0 + a + a2  + a3 definirán la función que describe la trayectoria que debe seguir la articulación a lo largo del tiempo.

INTERPOLACION DE TRAYECTORIAS PARA N ARTICULACIONES
Queremos llevar N articulaciónes de un robot desde un valor inicial, hasta un valor final , pero pasando por una serie de puntos intermedios, sin que la articulación se detenga en cada uno de estos puntos intermedios
INTERPOLACION+DE+TRAYECTORIAS.pdf
Documento Adobe Acrobat 135.3 KB

CONTROL DE VELOCIDAD Y ACELERACION

 

Velocidad:

 

La velocidad con la que el robot se desplaza en un tiempo determinado determina la distancia recorrida de un punto a otro, por tanto la rapidez del movimiento del robot.

El camino entre la posición i y la i+1 según una trayectoria cartesiana se realiza a velocidad constante, que podemos representarla en las gráfica "perfiles de velocidad". Está viene dada por el intervalo de tiempo empleado en el movimiento , pudiendo ser el perfil de velocidad 1/3+1/3+1/3 o de 1/2+1/2.

 

  • 1/3+1/3+1/3: Un primer tramo de aceleración hasta alcanzar la velocidad requerida; un segundo a velocidad constante y un tercero de deceleración hasta llegar a la posición final.
  • 1/2 + 1/2: La mitad de tiempo de este perfil es para la aceleración y la otra mitad para el frenado
  •    
PERFIL VELOCIDAD 1/3 Y 1/2
Cálculo de la velocidad y aceleración máxima según el perfil de velocidad a 1/3 o 1/2
PERFILES+VELOCIDAD.pdf
Documento Adobe Acrobat 86.3 KB
  • Relación entre trayectoria y velocidad:

Para un movimiento dado para dos puntos en el espacio (punto de partida y punto de destino) la unidad de control del robot cálcula la trayectoria geométrica entre los puntos (segun tipo de interpolación elegido) en función de su parámetro de velocidad.

Para movimientos punto a punto o PTP se  indica un porcentaje de la velocidad máxima, donde todos los ejes inician y finalizan simultaneamente el movimiento, de forma que este movimiento es la posibildad más rápida de mover la punta de la herramienta (Tool Center Point:TCP), lo que significa que solo el eje con el recorrdio más largo se desplaza con el valor límite de velocidad programado, y todos los demás ejes se mueven solo con velocidades necesarias para alcanzar el punto de destino del movimiento en el mismo instante.

El valor máximo de velocidad lo define el fabricante de modo tal, que para la mecánica particular del robot, aún en posiciones extremas del robot (por ejemplo con el brazo extendidio), no puedan aparecer sobrecargas en los motores, reductores u otros componentes del robot.

Para movimientos lineales o circulares la  característica de velocidad se cálcula para el recorrido y orientación del TCP.

Para la indicación de la velocidad tanto si el movimiento es lineal o circular  viene especificada en mm/sec, Si el movimiento es de giro sobre el punto central de la herramienta desde la posición de inicio hasta la posición final mediante movimiento lineal se especifica el desplazamiento angular como deg/sec .

También se puede especificar ambos recorridos en segundos como el tiempo que dura el recorrido.

En la gráfica velocidad-tiempo la pendiente representa a la aceleración y el area bajo la gráfica v-t y los ejes representa la distancia recorrida

Por tanto para realizar el posicionamiento a una distancia dada en un tiempo determinado t, podemos elegir tantos perfiles de velocidad como deseemos siempres que el área comprendida sea la misma , sino el robot reduciría su velocidad y la distancia recorrida en ese tiempo sería menor.

Aceleración:

 

Los conceptos de velocidad y aceleración están relacionados, pero muchas veces se hace una interpretación incorrecta de esta relación.

Muchas personas piensan que cuando un cuerpo se mueve con una gran velocidad, su aceleración también es grande; que si se mueve con velocidad pequeña es porque su aceleración es pequeña; y si su velocidad es cero, entonces su aceleración también debe valer cero. ¡Esto es un error!

La aceleración es una magnitud que relaciona los cambios en la velocidad con el tiempo que tardan en producirse, es decir que mide cómo de rápidos son los cambios de velocidad:

  • Una aceleración grande significa que la velocidad cambia rápidamente.
  • Una aceleración pequeña significa que la velocidad cambia lentamente.
  • Una aceleración cero significa que la velocidad no cambia.
  • 
  • Relación entre trayectoria y aceleración:

   

En movimientos rectilíneos en los que la trayectoria no cambia de dirección , los cambios que se producen en la velocidad será debido a variaciones en la rápidez , y el parametro cinemático que lo relaciona es la aceleración, también llamada aceleración tangencial o lineal.

En movimientos curvilíneos , en los que el robot cambia de dirección y aunque su rápidez permanezca constante también acelera , a esta aceleración se conoce como aceleración centrípeta. 

 

En las gráficas de perfiles de velocidad que usamos para describir el movimiento de un robot, se llama fase de aceleración a la pendiente que determina que el robot aumenta su  rápidez (se dice que la aceleración va en el mismo sentido que la velocidad o es positiva), y fase de deceleración cuando se esta disminuyendo su rápidez (se dice que la aceleración va en sentido contrario al movimiento o es negativa).

Si se reduce el valor ,  la aceleración y deceleración se producen lentamente, y si se aumenta el valor la aceleración y deceleración se producen rápidamente. 

El tiempo empleado en el desplazamiento desde un punto de partida hasta un punto de destino depende de la aceleración y deceleración. La aceleración y deceleración de los ejes del robot presenta la misma característica (pendientes simetricas positivas o negativas iguales) y se representa en valor porcentual para movimientos PTP y para movimientos lineales o curvilineos.

 

Si mantenemos la misma velocidad pero disminuimos el valor de la aceleración se tardará más tiempo en llegar a la posición de destino.

 

ACELERACION CENTRIPETA
CALCULO ACELERACION PARA REALIZAR UN MOVIMIENTO CIRCULAR DE RADIO R
aceleración centrípeta.pdf
Documento Adobe Acrobat 123.6 KB

Relación graficas velocidad y aceleración

 

Los cálculos que representa el cambio de posición en las gráfica velocidad-tiempo  y aceleración -tiempo obedecen a las ecuaciones:

                                        vf = vo + a·t 

                                        a= constante

 

donde:

 

t es el intervalo de tiempo que estamos considerando
vo es la velocidad inicial o de trayecto (al principio de nuestro intervalo de tiempo)
vf es la velocidad final o de posicionamiento (al final de nuestro intervalo de tiempo)
a es la aceleración-deceleración

Las gráficas a-t son rectas horizontales, es decir de pendiente cero, esto significa que la aceleración no cambia. Mantendrá su valor contsante cuando la velocidad cambie y será cero cuando la velocidad sea constante.



 

CONTROL DE POSICIONAMIENTO

 

La trayectoria de posicionamiento define el método de finalizar la operación del robot en una  instrucción de movimiento. En general todos los robots disponen de tres modos de trayectoria de posicionamiento:

  • Trayectoria de posicionamiento exacta:  El robot se para en el punto objetivo antes de moverse al próximo punto objetivo.
  • Trayectoria de posicionamiento continuo: El robot se aproxima al punto objetivo pero no se detiene en el punto y se mueve al próximo punto. Está aproximación es dependiente del cambio de velocidad que sufra la trayectoria.

 

  • Trayectoria de posicionamiento de alta precisión: Para movimientos lineales y circulares (pero no en movimientos joint),de trayectoria constante, el robot mantiene la misma trayectoria sin importar los cambios de velocidad alrededor de un ángulo, siempre que el movimiento esté dentro de la capacidad mecánica del robot y cumpla la regla de la media distancia. Con este tipo de terminación las trayectorias que han sido grabadas y   probadas a baja velocidad serán mantenidas cuando el programa es ejecutado al 100% usando líneas rectas y movimientos circulares.

Control posicionamiento aproximado en interpolaciones PTP, lineales y circulares con movimiento continuo:

 

En  interpolaciones PTP ,  lineales o circulares se alcanza el movimiento continuo mediante el solapado de dos segmentos de trayectorias consecutivos. 

Este solapado determina el grado de aproximación del manipulador a una posición programada. El solapado puede ser parcial o completo y lo determina un valor de 0 a 100 que permite al robot decelerar mientras se aproxima a la posición de destino pero no para en él antes de acelerar a la siguiente posición.

 

En movimientos continuos PTP o lineales con posicionamiento aproximado la zona de aproximación depende del valor del nivel de posición (0 a 100) y de la velocidad de trayecto.

Es decir la posición programada corresponde al nivel de posición 0 (parada exacta) y el entorno de aproximacióm máximo corresponde al nivel de posición 100 y velocidad de trayecto al 100%.

En el ejemplo vemos que con un nivel de posición (VE=100) y una velocidad de trayecto (VB=100%) el entorno de aproximación comenzariá en la mitad  del trayecto entre P1 y P2. con valores de VE=100 y VB=50% la aproximación comenzaria más tarde.

Si se han de unir dos movimientos de trayectorias con interpolación circular por posicionamiento aproximado el resultado son dos segmentos de parabola en el entorno de aproximación.

Control posicionamiento en trayectorias esquina:

 

En trayectorias formadas por segmentos que hacen esquina cuando la velocidad es aumentada el redondeo de la esquina es incrementado y la trayectoria es cambiada a la deseada.

 

Sino se está satisfecho con la esquina generada por los movimientos con terminación aproximada standard, y queremos que la trayectoria se ejecutada como se grabó,sin importar los cambios de velocidad, podemos usar posicionamientos de alta precisión que permiten el ajuste directo de la distancia alrededor de la esquina para cada instrucción del movimiento  lineal  o movimiento circular.

  • Regla de media distancia

EL ajuste de la distancia alrededor de la esquina lo podemos realizar  siempre que el inicio y el final de la trayectoria de la esquina debería ser más corta que la mitad de la distancia del más corto de los dos segmentos de línea. Esto es llamado la regla de media distancia.

La distancia de desviación expresada en milimetros se refiere a la distancia desde el punto de la esquina grabada a donde la trayectoria de la esquina  se desvia de la trayectoria grabada.

Cuanto más pequeño es, más pequeño será el redondeo de la esquina y lo más cercano llegará a la posición.

Con una distancia más grande, el robot no llegará tan cerca de la posición y el redondeo de la esquina será mayor

Cuando se use este tipo de terminación se mantendrá constante la velocidad programada alrededor de la esquina mientrás que el movimiento esté dentro de la capacidad mecánica del robot (hecho durante el ajuste del robot en fábrica).

Si no es posible mantenerla, automaticamente se ajustará y para que la velocidad de la esquina ajustada operará correctamente el control tiene en cuenta la información del payload actual.

SISTEMAS DE REFERENCIA PARA EL DESPLAZAMIENTO DEL ROBOT

SISTEMAS DE COORDENADAS, CONFIGURACION DEL TCP,ORIENTACION DE LA HERRAMIENTA, MOVIMIENTO TCP REMOTO Y COORDINADO

SISTEMAS DE COORDENADAS DE ROBOT

Para las instrucciones de movimiento en las que la herramienta o efector final del robot se situa realizando un desplazamiento punto a punto o describiendo una trayectoria geometrica exactamente definida en el espacio, se debe definir una posición actual e indicar una posición destino, pudiendose indicar las coordenadas de estas posiciones a diferentes sistemas de coordenadas (sistemas de coordenadas esfericas, cilindricas o cartesianas).

Por tanto la descripción unívoca de la situación de la herramienta en el espacio requiere  de la determinación de su posición y orientación partiendo de un sistema de referencia, tomandose el sistemas de coordenadas cartesiano con giro a la derecha (regla de la mano derecha) el referente para todos los robots articulados industriales por su facilidad de comprender ya que el ser humano como programador piensa en coordenadas cartesianas.

Los robots disponen de varios sistemas de coordenadas cartesianos y un sistema de coordenadas específico del eje.

Sistemas de coordenadas específico del eje

 

En el sistema específico del eje, cada uno de los ejes del robot puede desplazarse de forma individual en dirección positiva o negativa detranslación o rotación según el tipo de eje de forma independiente.

En un robot de brazo articulado de 6 ejes, deben indicarse los 6 ángulos de articulación del robot para especificar unívocamente la posición y orientación.

Las unidades de control de  los robots transforman automaticamente las coordenadas específicas del eje a los valores del sistema de coordenadas cartesiano (problema cinemático directo).

Al movimiento manual de los ejes del robot mediante las teclas o space-mouse de las consolas de programación se le llama Jogging. Los valores de los desplazamientos angulares de los ejes se representan por A1,A2,A3,A4,A5,A6 o J1,J2,J3,J4,J5,,J6 siendo los nombres para los ejes del robot.

Los controladores de robot más allá del número estandard de los ejes del robot disponen de ejes auxiliares  (A7/J7, A8,J8...) llamados eje de la base si mueven al robot por completo (ejemplo carros de translación o rotación), o ejes externos (mesas de giro, dispositivo  de apertura...)

Además de los ejes estandard del robot

Sistemas de coordenadas cartesianos del robot

 

El sistema de coordenadas cartesianos definirá como se moverá el robot paralelo a los ejes X,Y,Z. El sistema de coordenadas cartesiano se define para el robot o para un lugar de trabajo. Existen 5 sistemas de coordenadas cartesianos del robot:

 

  • Sistemas de Coordenadas Mundo o Universal (World)
  • Sistemas de Coordenadas de la base del Robot
  • Sistemas de Coordenadas Objeto o usuario (Base)
  • Sistemas de Coordenadas de la brida (Muñeca)
  • Sistemas de Coordenadas Herramienta (TOOL)

 

SISTEMA DE COORDENADAS MUNDO ( WORLD )

 

El sistema de coordenadas World o Universales, es un sistema de coordenadas cartesiano  situado en un punto fijo de la célula del robot (no se mueve cuando lo hace el robot). Sirve como sistema de coordenadas de origen para los sistemas de coordenadas robot y base , asi como para otros perifericos de la célula de trabajo.

 

SISTEMA DE COORDENADAS DE LA BASE DEL ROBOT

 

El origen de este sistema de coordenadas cartesiano esta en la base del robot y está referido al sistema de coordenadas World (el eje x señala hacia el centro , el eje Y en dirección del transporte y el eje z hacia arriba). Sirve como sistema de coordenadas de referencia de la estructura mecánica del robot.  En el estado de suministro el origen del sistema de coordenadas de la base del robot coincide exactamente con el sistema de coordenadas World. De este modo el robot puede desplazarse dentro de la célula sin que deban modificarse las coordenadas del programa del robot.

 

 

SISTEMA DE COORDENADAS DE USUARIO (BASE)

  

El sistema de coordenadas base se utiliza como sistema de referencia en cada lugar de trabajo para la descripción de la pieza a trabajar. Se mueve en paralelo a  X, Y, Z del sistema de coordenadas definido por el usuario. Sino se define el sistema de coordenadas de usuario, en el suministro del robot , el sistema de coordenadas de ususario es igual a de base del robot.

La programación del robot se efectúa en el sistema de coordenadas base, y por ejemplo se puede usar para procesar varias piezas  a trabajar iguales en  diferentes lugares con el mismo programa.

 

En las coordenadas de usuario las rotaciones del eje de la muñeca se basan en los ejes X,Y ó Z de las coordenadas de usuario.

 

SISTEMA DE COORDENADAS DE LA BRIDA (MUÑECA)

  

El sistema de coordenadas de muñeca tiene su origen al fin del encadenamiento cinemático de las articulaciones del robot.

En el estado de suministro del robot si no se define las coordenadas de herramienta, el sistema de coordenadas de muñeca es el sistema de coordenadas TOOL.

 

 

SISTEMA DE COORDENADAS DE LA HERRAMIENTA (TOOL)

 

El sistema de coordenadas de de la herramienta es un sistemas de coordenadas cartesianas que define la posición del punto central de la herramienta (TCP) y su orientación. Tiene su origen en la punta de la herramienta. por lo general la orientación del sistema de coordenadas de herramienta se selecciona de modo que su eje Z coincida exactamente con la dirección de trabajo de la herramienta (dirección de avance), asumiendo que la dirección efectiva de la herramienta montada en la brida de la muñeca del robot es el eje Z, por lo tanto la dirección del eje de coordenadas  de la herramienta se mueve junto con la muñeca.

En el movimiento de las coordenadas de la herramienta (TCP), el robot se puede mover usando la dirección efectiva de la herramienta como referencia sin importar la posición ni orientación del robot. Este sistema es el más adecuado cuando se precisa que el robot se mueva en paralelo mientras se  mantiene la orientación de la herramienta con respecto a las piezas de trabajo.

El sistema de coordenadas TOOL está referido al sistema de coordenas de la base del robot .

Es necesario saber  ademas de las coordenadas x,y,z de la posición del  TCP los ángulos de rotación  w, p, r para poder ejecutar el control de orientación de la herramienta.

INTERPOLACION DE LOS MOVIMIENTOS RESPECTO A LOS SISTEMAS DE COORDENADAS

 

Para la interpolación de la trayectoria del movimiento , la unidad de control del robot cálcula normalmente la posición actual de la herramienta montada en la brida del robot ( pieza a a trabajar fija) con referencia al sistema de coordenadas de la base del robot , pero en la práctica industrial el movimiento debe efectuarse en referencia a la pieza a trabajar, por lo que la interpolación de la trayectoria del movimiento, debe calcularse ahora en el sistema de coordenadas TOOL.

 

MOVIMIENTOS PTP, LINEAL, CIRCULAR REFERIDOS AL TCP

MOVIMIENTO TCP REMOTO

De forma alternativa puede presentarse que la herramienta no se encuentre montada en el robot sino en un dispositivo inmovil en la célula de trabajo (por ejemplo una antorcha de soldaura) y el robot manipula la pieza a trabajar alrededor de esta herramienta externa.

El sistema de coordenadas de base usado ahora por el robot para moverse es el definido y seleccionado por el usuario en la herramienta externa.A este tipo de movimiento se le llama TCP remoto o interpolación referida a la herramienta fija.

En el ejemplo de TCP remoto, observese que para que el robot realize la tarea realizando un movimiento que desplaza la pieza a lo largo de la herramienta fija pero no realizando una trayectoria lineal del P1  al  P4 (como si fuera el caso de que estuviera la pieza fija y el robot llevara la herramienta) .

MOVIMIENTO COORDINADO

CONFIGURACION  DEL ROBOT

 

Cuando los datos de posición de los ejes del robot se describen en el formato X Y Z (sistema cartesiano) se obtienen una serie de soluciones desde la estructura del robot al moverlo a la posición descrita (problema cinemático inverso).

 

El componente de la configuración describe la condición de los ejes cuando el robot arriba a la posicioón destino. La orientación de los ejes de la muñeca en la posición destino permanecen igulaes, pero laorientaión  de los otros ejes podrian variar.

Por tanto puede haber varias configuraciones que cumplen la condición de las coordenadas cartesianas (x,y,z,w,p,r) y es preciso definir en la  primera  instrucción de movimiento una posición inicial unívoca con la indicación de la postura del robot mediante el número de vueltas y la ubicación articular de cada eje.

  • Ubicación articular: Indica la ubicación de la muñeca y el brazo, según la posición del eje 5, eje 3 y eje 1. Pudiendose ser:

Para el movimiento articular del eje 5:

0º<= A5<180º La muñeca queda posicionada hacia arriba. Posición FLIP

-180 º<= A5< 0º La muñeca queda posicionada hacia abajo. Posición NO FLIP

 

Para el movimiento articular del eje 3:

A3 < 0º Brazo hacia adelante posicionado hacia arriba. Posición UP (Brazo Superior)

A3 >= 0º Brazo hacia adelante posicionado hacia atrás. Posición DOWN (Brazo

inferior)

 

Para el movimiento articular del eje 1:

A1 < 180º Brazo posicionado hacia adelante. Posición FRONTAL  (FRONT)

A1 >= 180º Brazo posicionado hacia atrás. Posición POSTERIOR (BACK)

  • Número de vueltas: Representa el número de revoluciones del eje de la muñeca (J4, J5,J6). Tras una revolución el eje vuelve a su posición original. Por tanto indica cuantas vueltas ha dado cada eje. El número de vueltas es 0 cuando el eje está en posición 0º.

          Siendo  0: si el eje está entre -179º y 179 º

                       1: si el eje está entre 180º y 539 º

                      -1: si el eje está entre -539º y -180º

 

 

En el ejemplo de configuración del robot vemos que el mismo punto se alcanzó para cuatro posiciones diferentes.

En la primera posición el robot se encuentra en la posición frontal (J1 entre 0º y 180º )y superior (J3 < 0º) y la muñeca sobre 45º aproximadamente (posición FLIP). Número de vueltas ejes J4,J5,J6 es 0,0,0

En la segunda configuración apenas puede apreciarse alguna diferencia, mientras que la configuración del brazo no ha variado  el eje 4 ha girado 180º y los ejes 5 y 6 se han corregido correspondientemente quedadno el número de vueltas ejes J4,J5,J6 es 1,0,1

Desde la posición 2 a la 3 se ha modificado la configuración del brazo (ejes 2 y 3), quedando en posición FRONT, DOWN (J3>0º), FLIP. el número de vueltas no cambia. 

Finalmente en la cuarta posición el eje 1 giro 180 º quedando en posición BACK, DOWN, FLIP

SINGULARIDAD DEL ROBOT

 

Hay una postura peculiar del robot en coordenadas cartesianas en las que el robot no puede moverse y corresponde a cuando el brazo tiende a linearse con la muñeca (0º) , por ejemplo si el  eje5 se mueve a velocidad constante en una dirección cartesiana y coincide que su coordenada articular es 0º como la que tiene la muñeca y entonces observamos tanto como el ángulo como la velocidad de giro del eje 4 aumenta considerablemente obligando al actuador de la articulación  a un movimiento con una velocidad inabordable que pordria dñar al mecanismo entonces el control detecta que es un punto de singularidad emitiendo una alarma y parando el robot.

 

Para solucionar el problema de la singularidad de la muñeca además de detectarlas y evitar pasar por ellas , sería idear interpolaciones híbridas cartesianas-articulares (parámetro WJNT en lenguaje TPE de Fanuc, o switch SingArea/wrist en Rapid de ABB)

CONTROL DE LA ORIENTACION DE LA HERRAMIENTA

 

Cualquier pequeño cambio en la orientación de un punto puede llevar a distintas trayectorias.

En los movimientos lineales si el estado de los ángulos del punto de destino debe ser igual al del punto de partida, se mantiene  la orientación constante.

Si durante el movimiento sobre la trayectoria la orientación es variable entonces cambia en forma contínua desde la orientación de partida a la orientación del destino

En los movimientos circulares puede seleccionarse además de la orientación contstante y variable, entre la orientación referida al espacio y a la trayectoria.

CARACTERISTICAS GENERALES DE LOS LENGUAJES DE PROGRAMACION

En la actualidad no existe una normalizacón o programación común de robots, sino que cada fabricante ha desarrollado su particular lenguaje o método válido unicamente para sus propios robots. Sin embargo si la programación de un robot consiste en el proceso mediante el cual se le indica paso por paso a moverse a puntos predefinidos  y llevar a cabo diferentes acciones durante la realización de su tarea, a igual que en cualquier lenguaje de programación de procesos secuenciales como en el caso de los autómatas programables, podemos establecer una serie de características generales que son comunes a los elementos de programación de los lenguajes de Robots.

Un sistemade programación  indudablemente además del punto de destino, tipo de trayectoria , velocidad y precisión que contiene las instrucciones de movimiento, ha de permitir al programador especificar de alguna manera un flujo de ejecución de las operaciones y del tipo de procesamiento (tareas secuenciales o en paralelo,interupciones..).

Además otra de las caracterícticas es la utilización de variables de datos de posición o datos de tipo convencional (enteros, reales, booleanos) para definir operacioness de interaacción con el robot o con las entradas-salidas del sistema consifguiendose asi la sincronizacion del robot con el resto de máquinas y elementos que componen su entorno. 

CONTROL DE PROGRAMA

 

Para especificar el flujo de ejecución del programa se usan las estrucutras habituales de control basadas en instrucciones del tipo bucles (for, repeat,while), de condicion (if,select, jump), de espera (wait) y de fin porgrama (stop, pause..)

ESTRUCTURAS DE PROGRAMACION

 

Las estructuras más basicas son las de programación punto a punto de los tipos de movimiento del robot (ptp, lineal,circular),que constan de un programa principal y de llamadas a subrutinas.

 

Las estructuras de programación de alto nivel son los programas constituidos por módulos  de procedimientos y funciones (con declaración de variables, paso de parametros...). Utilizan bucles condicionales e incondicionales estructurados y las posiciones y rutinas se definen por nombre propio.

LENGUAJES DE PROGRAMACION

ROBOTS INDUSTRIALES: ABB, KUKA, FANUC

PROGRAMACION PRACTICA DE ROBOTS INDUSTRIALES

EJEMPLO DE PROGRAMACION DE INSTRUCCIONES DE MOVIMIENTO
Ejercicio correspondiente del curso de Programación básica Fanuc-Kuka, realizado dentro del módulo de tecnologías de automatización correspondiente al plan de formación 2011 de la Escuela de formación de SEAT
ejemploprogramaciónfanuc-kuka.pdf
Documento Adobe Acrobat 490.4 KB
PROGRAMACION DE INTERPOLACIONES (FANUC)
Ejemplo aplicativo de la programación de las diferentes interpolaciones del lenguaje FANUC correspondiente al curso de Programación básica Fanuc-Kuka, realizado dentro del módulo de tecnologías de automatización correspondiente al plan de formación 2011 de la Escuela de formación de SEAT
INTERPOLACIONES.pps
Presentación Microsoft Power Point 780.0 KB