lenguajes de programación en robótica

22
Seminario AADECA Dr.Ing Bauer Jorge 1 Sistemas Roboticos y Manipuladores Industriales Lenguajes de programación en robótica

Upload: laureano-zantedeschi

Post on 12-Apr-2017

82 views

Category:

Engineering


3 download

TRANSCRIPT

Page 1: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

1

Sistemas Roboticos

y Manipuladores Industriales

Lenguajes de programación en robótica

Page 2: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

2

Robots IndustrialesLenguajes de programación

El lenguaje de programación tiene la función generar la comunicación entre el manipulador automático (equipo) y el operador – programador para transferir al sistema las ordenes y tareas que debera desarrollar el equipo

Vía el programa el operador es el responsable de las acciones de control, de las instrucciones adecuadas que están basada en la modelación del mundo exterior, la descripción formal de la tarea y del entorno

Page 3: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

3

Entre las formas que existen de comunicación con los robots se encuentran:

•Enseñanza y repetición

• Lenguajes de programación

Robots IndustrialesLenguajes de programación

Page 4: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

4

Enseñanza y repetición

Robots IndustrialesLenguajes de programación

Implica el enseñar al robot todos los movimientos que necesita realizar. Normalmente la enseñanza se lleva atendiendo a los siguientes pasos:

• Dirigiendo al robot con un movimiento lento utilizando el control manual (joystick, conjunto de botones, uno para cada movimiento, o un sistema de manipulación maestro esclavo) para realizar la tarea completa y grabando los ángulos del movimiento del robot en los lugares adecuados para que vuelva a repetir el movimiento.

• Reproduciendo y repitiendo el movimiento enseñado.

• Si el movimiento enseñado es correcto, entonces se hace funcionar al robot a la velocidad correcta en el modo repetitivo

Page 5: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

5

Lenguajes - Codificados

Robots IndustrialesLenguajes de programación

Suministran una solución más general en la comunicación hombre-robot.

• Los lenguajes clásicos (FORTRAN, BASIC, PASCAL) no disponen de los comandos e instrucciones específicas que se necesitan para la programación en la robótica.

• Hasta ahora los lenguajes utilizados han sido diseñados para un modelo específico de manipulador, una tarea concreta, por lo que en estos momentos no existe ningún lenguaje universal

Page 6: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

6

Lenguajes de programación

La programación explícita es la más utilizada en las aplicaciones industriales y consta de dos técnicas fundamentales:

Programación Gestual. Este tipo de programación, exige el empleo del manipulador en la fase de enseñanza, o sea, trabaja "on-line".

Programación Textual. En esta labor no participa el brazo robótica (off-line). Las trayectorias del manipulador se calculan matemáticamente con gran precisión (y se evita el posicionamiento a ojo)

Robots Industriales

Page 7: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

7

Lenguajes de programaciónAlgunos nombres, tomados de la literatura:

• ANORAD• EMILY• RCL• RPL• SIGLA• VAL

Todos ellos mantienen el énfasis en los movimientos primitivos, ya sea en coordenadas articulares, o cartesianas. En comparación, tienen, como ventajas destacables, los saltos condicionales y a subrutina, además de un aumento de las operaciones con sensores, aunque siguen manteniendo pocas posibilidades de programación "off-line".

Robots Industriales

Page 8: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

8

Lenguajes de programaciónRobots Industriales

KUKA.Sim Pro

Desarrollado para la programacion Offline de equipamiento KUKA-Robotern entworfen.

El producto admite un acoplamiento en tiempo real con Robots-KUKA y con el simulador Robotico para el analisis de tiempos, ciclos etc.

Page 9: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

9

Lenguajes de programaciónRobots Industriales

ACL

Advanced Control Language(Eshed Robotec)

Page 10: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

10

Lenguajes de programaciónRobots Industriales

ACL

Robot ER IX Robot MK

Page 11: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

11

Lenguajes de programaciónRobots Industriales

ACL Algunos comando >>>>

a modo de ejemplo

ControladorPC

Teach

Page 12: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

12

Lenguajes de programaciónRobots Industriales

Inicio (encoder relativos)

RUN HOMES Este programa mueve uno por uno los motores del brazo robótico hasta que encuentre en cada uno una posición inicial de referencia. De este modo, independientemente de la posición que se encuentre el brazo robótico al energizarlo, reencontrara su posiciones de referencia para los encoders relativos

Page 13: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

13

Lenguajes de programaciónRobots Industriales

Organizar la memoria y Guardar puntos definidos en la memoria del controlador

Antes de guardar un punto del espacio en la memoria del controlador, debemos indicarle al mismo donde guardarlo y cuantos puntos aproximadamente guardaré (para la aplicación).

DIMP nombre del vector[n]

“n” es la cantidad de puntos y el nombre del vector debe tener como máximo 4 letras.

Page 14: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

14

Teóricamente, podríamos guardar un punto en la memoria del controlador ingresando los 5 valores de los encoders o los 3 valores cartesianos.

En la practica, se lleva manualmente el brazo robótico a la posición de trabajo deseada y se guarda la posición directamente. El controlador será el encargado de registrar - calcular los valores antes descriptos.

Tipeamos en el ATS:

HERE nombre del vector[m] m= número de punto

Lenguajes de programaciónRobots Industriales

Page 15: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

15

Otra manera de almacenar puntos en la memoria del controlador, es con los llamados puntos relativos.. Tipeamos en el ATS:

TEACHR punto 1 punto 2

Donde punto1 es el nuevo punto que quiero definir y punto 2 es el definido o de referencia.

Ejemplo:TEACHR curs[24] curs[23] Incremento en x=0 , Incremento en y=0, Incremento en z=10

Lenguajes de programaciónRobots Industriales

Page 16: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

16

EJEMPLOS de >> Comandos de visualización

Los comandos de visualización, son aquellos que permiten ver los puntos, programas, vectores, etc que estén guardados en la memoria del controlador.

LIST Me permite visualizar todos los programas que estén guardados en la memoria del controlador.LIST nombre del programa Me permite visualizar las sentencias del programa seleccionado.LISTP Me permite visualizar una lista con todos los vectores cargados.LISTPV nombre del vector Me permite visualizar todos los puntos cargados, así como las posiciones relativas de cada eje y las coordenadas cartesianas de cada punto.SHOW SPEED Me permite visualizar las diferentes velocidades de trabajo, tanto en manual como en automático, en mm/seg y en % de la velocidad máxima.

Lenguajes de programaciónRobots Industriales

Page 17: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

17

Comandos de acción

Los comandos de acción son los utilizados para realizar las sentencias del programa y son los que me permiten relacionar puntos entre sí o mover simplemente de un punto a otro el brazo robótica.

Cabe aclarar que estas sentencias son usadas de la misma manera en el ATS, para realizar acciones individuales como en la edición de un programa, para automatizar los movimientos.

Lenguajes de programaciónRobots Industriales

Page 18: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

18

EJEMPLOS de >> Comandos de acción

MOVE punto Mueve el brazo robótico al punto seleccionado, independientemente de la posición original que se encuentre. Cuando se lo utilice como sentencia de un programa, realizará la acción de moverse y como el controlador es multitarea al mismo tiempo inicia la sentencia inmediata inferior del codigo programado.MOVED punto Idem Move pero a diferencia del anterior al utilizar el comando MOVED en un programa, realizará la acción de moverse pero no pasará a la sentencia inferior hasta que el brazo no haya llegado al punto determinado.MOVEL punto Realiza la acción de moverse al punto seleccionado, pero lo hace en interpolando todo los ejes Puede traer problemas si utilizamos este comando entre 2 puntos cuya línea recta de unión sea imposible de describir por el brazo robótico.MOVELD Cumplirá la misma función que el MOVED pero se moverá en línea recta.

Lenguajes de programaciónRobots Industriales

Page 19: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

19

EJEMPLOS de >> Comandos de acción

OPEN Realiza la acción de abrir el gripper.

CLOSE Realiza la acción de cerrar el gripper.

SPEED n Fija la velocidad, como porcentaje de la velocidad máxima de trabajoDonde “n” es un número de 0 a 100, que representa el porcentaje.. SPEEDL n “n” es el valor de velocidad .

Lenguajes de programaciónRobots Industriales

Page 20: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

20

EJEMPLOS de >>Comandos de programación

Los comandos de programación, son los que se utilizan solo como sentencia de programa en el marco del codigo

PROGRAM nombre del programaDEFINE a b c d ... SET i = número / variable FOR i=1 to número >>>>>ENDFOR.

PROGRAM CURSO-aDEFINE iFOR i=1 to 10 OPEN CLOSEENDFOR

PROGRAM CURSO-bDEFINE iFOR i=1 to 10 GOUSUB CURSO 2 ENDFOR

Lenguajes de programaciónRobots Industriales

Page 21: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

21

Lenguajes de programaciónRobots Industriales

Visita y practica al Lab CIM-UNLZ

Page 22: Lenguajes de programación en robótica

Seminario AADECA Dr.Ing Bauer Jorge

22

Programación en robótica

Estudio Analítico de la tarea

IDEM que en el estudio clásico de métodos y tiempos