PRÁCTICAS DE ROBÓTICA Centro de Mecanizado
Transcripción
PRÁCTICAS DE ROBÓTICA Centro de Mecanizado
PRÁCTICAS DE ROBÓTICA Curso 2000-01 Centro de Mecanizado Robot SCARA Acceso a las Instalaciones CIM Acceso a las instalaciones CIM en CETEMA El acceso se realizará por una puerta "pequeña" en un lateral del edificio de CETEMA. Los alumnos deben reunirse allí, antes de entrar, hasta que lleguen el monitor y el profesor encargados de la práctica. Para realizar las prácticas es necesario apuntarse en uno de los turnos disponibles que se muestran en una lista situada en frente del despacho 4212. El plazo disponible para apuntarse termina el viernes 4 de mayo a las 15:00. CETEMA Entrada para las prácticas Bloque IV E.U.I. 2 Práctica de Robótica Centro de Mecanizado ROBÓTICA Prácticas CIM. Centro de Mecanizado Objetivo Familiarizarse con el tipo de programación y lenguaje utilizado para programar Máquinas-Herramienta de Control Numérico. En concreto, se iniciará al alumno en el uso de un Centro de Mecanizado (CM) con Control Numérico. Demostrando los conceptos adquiridos sobre los movimientos en tres dimensiones, se acabará realizando un programa CNC para el mecanizado de una pieza. Conceptos Previos Sistema de coordenadas de la Máquina-Herramienta El CM está provisto de varios motores que funcionan utilizando tanto energía eléctrica como presión neumática y son capaces de posicionar una herramienta en unas determinadas coordenadas físicas. Está formado por una base móvil que se desplaza en el plano XY y un husillo que se mueve verticalmente a lo largo del eje Z. Esta configuración otorga a la máquina tres grados de libertad. La base es una plataforma en la que se encuentra una mordaza cuya función consiste en inmovilizar las piezas con las que se va a trabajar. Es importante observar que la pieza no se mueve respecto a la base. El husillo es el aparato en el que se colocan las herramientas y que gira a modo de taladradora. Las herramientas se encuentran ubicadas en un almacén junto al husillo y se cargan de manera automática. En la figura se puede observar la orientación de cada uno de los ejes que componen este referencial: X positivo a la derecha, Y positivo hacia dentro del papel y Z positivo hacia arriba. Como ya se ha comentado, los movimientos en el plano XY desplazan toda la base, de manera que al hacer un movimiento positivo en la X, el cajón se moverá hacia la izquierda de la hoja y al hacerlo positivo en la Y, se moverá hacia fuera del papel. Por otro lado, hacer un movimiento positivo en la Z, moverá el husillo hacia arriba. 3 Práctica de Robótica Centro de Mecanizado A efectos de programación deberemos de considerar que lo que se mueve es el husillo y no la base, con lo cual los movimientos positivos en X y en Y quedarían en el sentido que indican las flechas del referencial de la figura. Por lo tanto, estos ejes están referidos al movimiento de la punta del husillo. Z Y X HUSILLO PIEZA MORDAZA Los motores del CM están controlados por un procesador, el Control Numérico, que nos permitirá mover el husillo en diversas direcciones, de forma manual o automática (previamente programada). Cuando programemos una máquina de este tipo, estaremos ordenando una serie de movimientos de la herramienta con respecto a los ejes de la máquina. Los motores poseen unas muescas o marcas que indican un cero absoluto físico, origen de coordenadas, que se utilizará como punto de partida para cualquier programa. Como programadores, podremos colocar sistemas de referencia locales cuyas coordenadas serán relativas a dicho origen absoluto. Una vez fijado un sistema de referencia local, todos los movimientos que realicemos se harán con respecto a dicho sistema. 4 Práctica de Robótica Centro de Mecanizado Lenguaje de Programación El lenguaje de programación que se utilizará para la realización de la práctica es el STANDARD ISO particularizado para el Control Numérico CNC FAGOR 8030-MS. La ejecución de los programas es secuencial y cada línea comienza por la letra N y un número de línea que representa el número de orden, comenzando por cero. En líneas generales, el formato de una línea de este lenguaje de programación es como sigue: Nnn Ggg Xxx Yxx Zxx donde Nnn es el número de línea, Ggg es la función o movimiento que se va a realizar y X,Y,Z la posición destino del movimiento en milímetros (xx representa un número de hasta 4 cifras enteras más 3 cifras decimales). Se pueden poner comentarios al final de cada línea para aclarar el funcionamiento del programa. Los comentarios deben ir colocados entre paréntesis. Los comandos necesarios que se utilizarán en la práctica son los siguientes: − FUNCIÓN F: Velocidad de avance Se debe utilizar siempre para esta práctica la velocidad de avance F1000. − FUNCIONES M M26: Abrir Puertas. M27: Cerrar Puertas. M30: Fin del Programa. − FUNCIONES G: Movimiento G00: Posicionamiento rápido. Mueve la base y el husillo desde la posición inicial hasta la posición indicada. Nnn G00 Xxx Yxx Zxx EJ: N30 G00 X100 Y20 Z-100 N50 G00 Y-30 (en este caso X y Z permanecen constantes) 5 Práctica de Robótica Centro de Mecanizado G01: Interpolación lineal. Traza una línea recta entre la posición inicial y el punto indicado. Nnn G01 Xxx Yxx Zxx EJ: N27 G01 X100 Y40 G02: Interpolación circular. Movimiento helicoidal a derechas, sentido horario. Traza un arco entre el punto actual y el punto indicado con un radio R. Si el Radio es menor que la mitad de la distancia entre los dos puntos esta función dará error. Es necesario seleccionar antes el plano en el que va a trabajar. G17: Plano principal XY G18: Plano principal XZ G19: Plano principal YZ Para el desarrollo de la práctica siempre se tomará el plano XY (G17). Nnn G17 G02 Xxx Yxx Rxx EJ: N10 G17 G02 X20 Y100 R20 G03: Interpolación circular. Movimiento helicoidal a izquierdas, sentido antihorario. Traza un arco entre el punto actual y el punto indicado con un radio R. G17: Plano principal XY G18: Plano principal XZ 6 Práctica de Robótica Centro de Mecanizado G19: Plano principal YZ Nxx G17 G03 Xxx Yxx Rxx EJ: N10 G17 G03 X20 Y100 R20 G53/G59: Traslados de origen. Fijan sistemas de referencia locales con origen en las coordenadas indicadas. Para la práctica se utilizará el G53, que sitúa un sistema de referencia local con centro justo encima de una de las esquinas de la pieza. La definición del punto de origen se realizará en un lugar distinto del programa y debe hacerse antes de empezar a programar. 7 Práctica de Robótica Centro de Mecanizado Uso del CNC FAGOR 8030 Inicio del sistema 1. Colocar la llave de bloqueo de movimiento de ejes en la posición 1. 2. Poner a 1 el conmutador principal de la puerta (llave roja). 3. Pulsar el botón DRIVES del panel de control (botón verde). En este momento aparece en el monitor el mensaje “TEST PASADO”. Ahora es el momento de activar el sistema de menús de la interfaz gráfica de usuario. 4. Pulsar el botón OP MODE del panel de control. Ahora se han activado los menús. Calibrado de la máquina Antes de ejecutar ningún programa, es preciso que los ejes de la máquina tomen la referencia del cero absoluto. Para ello se procede de la siguiente forma desde la pantalla del menú principal de operación: 1. Pulsar 5 para seleccionar el Modo de operación manual. 2. Hacer un reset del CN pulsando la tecla RESET. 8 Práctica de Robótica Centro de Mecanizado 3. Pulsar la tecla Z del teclado alfanumérico y a continuación F1 (BÚSQUEDA DE CERO) y luego la tecla verde de MARCHA DE CICLO (I). Cuando desaparece el mensaje “Z BÚSQUEDA DE CERO” en el monitor de la máquina, esta ha alcanzado el punto de referencia de ese eje. 4. Repetir el paso anterior con el eje X y con el Y. Es importante empezar el calibrado con el eje Z. Edición de programas Desde la pantalla del menú principal de operación: 1. Activar el programa de edición: 6 – EDITOR 2. Seleccionar el programa. F2 – SELECCIÓN DE PROGRAMA En la parte superior de la pantalla aparecerá una P seguida de 5 ceros (P00000). Escribir el número que queremos asignar al nuevo programa o el del programa a editar. Este se escribirá a continuación de la P. 3. Editar el programa. F1 – CONTIUAR Manejo del editor Entre dos líneas azules se verá el programa que vayamos escribiendo o editando. Para mover arriba o abajo el programa, pulsamos las flechas de arriba o abajo del teclado alfanumérico. Debajo de la segunda línea azul se encuentra el número de línea actual y un cursor. A partir de la posición del cursor podremos escribir una línea de código. Una vez escrito ésta, pulsamos ENTER. Para corregir líneas con errores nos situamos mediante las teclas de dirección en la línea que deseamos codificar y pulsamos el botón RECALL. La línea competa se copiará a la línea del cursor y la podremos modificar. Una vez terminada esta operación pulsamos ENTER y la línea se cambiará en el código. Para cancelar o terminar la operación en cualquier momento pulsamos OP MODE y volvemos al menú principal de operación. 9 Práctica de Robótica Centro de Mecanizado Ejecución de programas Para ejecutar un programa debemos situarnos en el menú principal de operación. Dentro de este menú existen dos posibilidades de ejecución: Ejecución automática Para iniciar este modo debemos seleccionar la opción 0 del menú de modos de operación. 0 – AUTOMÁTICO. Aparecerá una pantalla con el código y los valores actuales de las coordenadas X, Y y Z del CNC, la velocidad de avance F, el porcentaje de la velocidad de funcionamiento %, que coincide con la rueda de la consola, la velocidad de rotación S, el estatus y el número de la herramienta utilizada T (18.00 por defecto). Todos estos datos se irán modificando durante la ejecución del programa según se desplace el cabezal de la fresadora. Una vez que nos hemos introducido en el modo automático, aparecerá automáticamente el programa que hemos seleccionado o editado anteriormente. Para arrancarlo pulsamos la tecla verde de marcha (I). En caso de que ocurra algún error, pulsamos OP MODE para salir de la ejecución y editamos el programa para corregirlo. Modo de ejecución manual Para activar este modo debemos seleccionar desde el menú de opciones la opción: 1 – BLOQUE A BLOQUE. En este modo de ejecución va a funcionar todo igual que en el modo automático, con la diferencia de que al pulsar el botón verde de marcha (I) solo se ejecuta la primera instrucción. Por lo tanto debemos pulsar el botón verde de marcha (I) por cada instrucción que deseemos ejecutar. En cualquier modo de ejecución (automático o manual), si salimos del programa mientras se ejecuta, al ejecutarlo de nuevo, volveremos al mismo punto donde lo hemos dejado. Para ejecutarlo desde el principio debemos dejarlo correr hasta el final. 10 Práctica de Robótica Centro de Mecanizado Cambio del centro de coordenadas Cuando queremos trabajar con una pieza, para mayor facilidad debemos cambiar el centro de coordenadas a una posición cercana a esta. Para ello seleccionamos dentro del menú de operaciones: 8 – TABLA DE HERAMIENTAS/G53-59. Nos aparecerá una interfaz gráfica parecida a la de edición. Si pulsamos la G, nos aparecen todos los centros de coordenadas definidos, numerados de la G53 a la G59. Si queremos modificar alguno, nos situamos encima de la G a modificar, pulsamos RECALL y seguimos el mismo método que para editar programas. Apagado del equipo 1. Pulsar el interruptor de PARADA DE EMERGENCIA si no lo está y a continuación dos veces la tecla RESET. 2. Poner el interruptor rojo de la caja a la posición 0. PRECAUCIONES • Tanto las personas como los objetos (incluido el armario del CNC) deben estar fuera del área de trabajo de la mesa, cuando se realizan operaciones en modo manual o cuando se está ejecutando algún programa. • Las puertas del centro de mecanizado deben estar cerradas cuando se esté ejecutando algún programa. • No apoyarse ni sentarse sobre el filtro de la taladrina. • Ante cualquier situación que implique daño o riesgo, sobre personas o equipos, se debe pulsar el botón de emergencia situado sobre el armario del CNC. 11 Práctica de Robótica Centro de Mecanizado Práctica Ejemplo En esta práctica vamos a utilizar una pieza de aluminio rectangular que situaremos en la mordaza de la base. En esta pieza colocaremos un folio y en dicho folio deberemos escribir las letras "CIM". Para esto utilizaremos un rotulador a modo de herramienta. Por lo tanto en el desarrollo de la práctica se prohibe el giro del husillo. Las dimensiones de la pieza son las de la figura y G53 sitúa el origen de nuestro refencial local sobre una esquina a una distancia en Z de la pieza de 20 mm. Z Y X 20mm Y 0 10 70 20 30 X -10 -20 -30 -40 -50 -60 -70 -80 -90 -100 12 40 50 60 Práctica de Robótica Centro de Mecanizado El código que implementa el trazado de estas letras es el siguiente. N0 N10 N20 N30 N40 N50 N60 N70 N80 N90 N100 N110 N120 N130 N140 N150 N160 N170 N180 N190 F1000 M27 G53 G00 X10 Y-30 Z0 G00 Z-20 G17 G02 X50 R20 G00 Z0 G00 X50 Y-50 G00 Z-20 G01 X10 G00 Z0 G00 Y-70 G00 Z-20 G01 X50 G01 X30 Y-85 G01 X50 Y-100 G01 X10 G00 Z0 G00 X0 Y0 M26 M30 (VELOCIDAD AVANCE, CERRAR PUERTAS) (REFERENCIAL LOCAL) (POSICIÓN INICIAL "C") (CONTACTO ROTULADOR PAPEL) (DIBUJA "C") (LEVANTA ROTULADOR) (POSICIÓN SIGUIENTE LETRA) (CONTACTO ROTULADOR PAPEL) (DIBUJA "I") (LEVANTA ROTULADOR) (POSICIÓN SIGUIENTE LETRA) (CONTACTO ROTULADOR PAPEL) (DIBUJA "M") (LEVANTA ROTULADOR) (ORIGEN DEL REFERENCIAL) (ABRIR PUERTAS) (FIN DEL PROGRAMA) El código en negrita debe encabezar y finalizar cualquier programa CNC. 13 Práctica de Robótica Centro de Mecanizado Enunciado En esta práctica vamos a utilizar una pieza de aluminio rectangular que situaremos en la mordaza de la base. En esta pieza colocaremos un folio y en dicho folio deberemos escribir las letras "BRASO". Para esto utilizaremos un rotulador a modo de herramienta. Por lo tanto en el desarrollo de la práctica se prohibe el giro del husillo. Y 0 10 70 20 30 40 50 60 X -10 -20 -30 -40 -50 -52.5 -60 -70 -72.5 -80 -90 -92.5 -100 17.5 42.5 14 Práctica de Robótica Robot SCARA ROBÓTICA Prácticas CIM. Robot SCARA Objetivo Familiarizarse con el tipo de programación y lenguaje utilizado para programar manipuladores del tipo SCARA. El alumno demostrará los conceptos adquiridos sobre los movimientos en tres dimensiones realizando varios programas V/V+ para la realización de los ejercicios propuestos y la manipulación de piezas. Conceptos Previos Descripción del entorno de trabajo del robot La siguiente figura muestra una vista superior del manipulador y el área de trabajo en el que se desenvuelve. Articulación del hombro Y Base del brazo Cubeta vibratoria X Centro de coordenadas Tornillos Canaleta de tornillos Brazo robótico Articulación del codo Plataforma de recogida de tornillos Plataformas Mordaza Cubo Garra 3 (destornillador) Garra 2 Garra 1 15 Base del manipulador Práctica de Robótica Robot SCARA Sistema de coordenadas del robot El centro de coordenadas está situado en el centro de la articulación del hombro a la altura del área de trabajo. La orientación de los ejes X e Y se puede observar en la figura anterior, mientras que el eje Z está orientado a lo largo del eje de la articulación del hombro, con signo positivo hacia arriba (como se muestra en la figura siguiente). Z Y Uso del entorno de programación V/V+ El robot SCARA Adept One de Inser Robótica, S.A. posee un lenguaje propio, el lenguaje V/V+, basado en posiciones del espacio tridimensional. Inicio del sistema La sesión se inicia poniendo en marcha el controlador. Para ello, se debe situar la palanca de encendido de la derecha en la posición ON y a continuación el interruptor verde, SYSTEM POWER, que suministra energía al sistema, en la posición 1. Una vez iniciado el sistema, en el terminal se visualizará el prompt que consiste en un punto. El primer comando a introducir debe ser: .ENABLE POWER para activar los circuitos del brazo robótico. Este comando también se utiliza para volver a reactivar el robot cuando pulsamos la seta de emergencia o se detiene debido a algún tipo de problema, como por ejemplo una colisión. 16 Práctica de Robótica Robot SCARA Una vez activado el robot, se debe calibrar el mismo utilizando para ello el comando: .CALIBRATE El sistema pide confirmación de la operación de calibrado, ya que ésta tarda un tiempo en llevarse a cabo. La pregunta que hace es: "ARE YOU SURE (Y/N)?", a la que se debe responder con Y. Es obligatorio realizar esta operación sólo una vez al encender la máquina. Estos dos comandos también se pueden sustituir por sus abreviaturas: .EN POW .CAL Comandos para ficheros Cada uno de los ficheros almacenados en el disco duro contiene un conjunto de datos y de programas. Cada vez que se carga un fichero del disco, se produce un volcado de su contenido a la memoria activa del sistema, de tal manera que se pueden ejecutar los programas que contiene. Los siguientes comandos permiten manejar ficheros: .FDIRECTORY C: Este comando muestra el contenido del disco C: .LOAD C:<FICHERO>.V2 Carga en memoria el contenido del fichero especificado siempre y cuando se encuentre en C: .FLIST C:<FICHERO> Lista el contenido del fichero especificado. En el caso de que queramos interrumpir el listado, lo podremos hacer pulsando Ctrl+C. .STORE C:<FICHERO>.V2 Almacena en el fichero especificado todos los programas y datos activos que se encuentren en memoria. .FRENAME C:<NONBRE_ANTIGUO>.V2=<NONBRE_NUEVO>.v2 Permite cambiar el nombre a un fichero almacenado en disco. 17 Práctica de Robótica Robot SCARA Actualización de ficheros en disco No se puede actualizar un fichero ya existente en disco. Para ello es necesario realizar tres pasos: grabar la memoria actual en otro fichero, borrar el anterior y cambiar el nombre del nuevo. Por ejemplo, si queremos guardar nuestro trabajo en un fichero que se llama ANTIGUO.V2 que ya existe en el disco, deberemos hacer lo siguiente: .STORE C:NUEVO.V2 .FDELETE C:ANTIGUO.V2 .FRENAME C:ANTIGUO.V2=NUEVO.V2 Comandos para programas .DIRECTORY Muestra todos los programas que hay en la memoria activa. .SEE <PROGRAMA> Es el editor de textos. Con él podremos editar y crear programas. En el caso de que <PROGRAMA> no exista, nos preguntará si queremos crearlo. Teclas importantes del SEE: − I: Permite insertar líneas. Es el INSERT MODE. − F4: Sale del editor. El editor SEE, además de permitir la edición de programas, realiza una labor de interprete del código a la vez que éste se va escribiendo. Cualquier error en una línea del programa se indica con una interrogación, ?. Una vez creado un programa con SEE, si no contiene errores, no es necesario compilarlo. El programa que se haya creado nuevo se mantiene en la memoria del sistema. .EXECUTE <PROGRAMA> Ejecuta el programa que le pasemos como <PROGRAMA>. Otros comandos .HERE <NOMBRE_DE_VARIABLE> Guarda en la variable las coordenadas de la posición actual del robot. 18 Práctica de Robótica Robot SCARA .WHERE Muestra las coordenadas de la posición actual de robot. .DISABLE POWER Desactiva el robot (DIS POW). .STATUS 0 Muestra en pantalla el estado actual del manipulador. Formato de las posiciones. Sentencia SET-TRANS Una posición en V/V+ consta de una tupla de seis parámetros (X, Y, Z, y, p, r), donde X, Y, Z representan las coordenadas cartesianas absolutas en milímetros; y (yaw) representa un deslizamiento o rotación de la garra en el eje X (siempre vale 0º); p (pitch) representa el cabeceo o rotación de la garra en el eje Y (siempre vale 180º); y r (roll) representa el balanceo o rotación de la garra, en grados, en el eje Z. Este último parámetro puede tomar cualquier valor, ya que se corresponde con uno de los grados de libertad del robot. La sentencia SET-TRANS se utiliza para definir una variable, dentro de la memoria activa del sistema, en la que se almacenará las coordenadas absolutas del espacio de operaciones del brazo robótico. Por ejemplo, una posición a la que llamaremos garra1 se define en un programa de la siguiente manera: SET garra1 = TRANS (123.789, -488.511, 755, 0, 180, -61.87) Sentencias e instrucciones de V/V+ A continuación se comenta el conjunto de sentencias básicas del lenguaje de programación V/V+. Cada una de estas instrucciones debe ir en una línea del programa. Si se quiere incluir comentarios, se deben poner detrás del carácter punto y coma, ";". SPEED <VALOR> [ALWAYS] Establece la velocidad a la que queremos que se mueva el robot. <VALOR> indica un porcentaje de la velocidad máxima. Si se especifica el término ALWAYS, entonces mantendrá la velocidad hasta el final del programa o hasta que encuentre otra sentencia SPEED. Para el desarrollo de la práctica se debe establecer la velocidad siempre al 25%: SPEED 25 ALWAYS. 19 Práctica de Robótica Robot SCARA RIGHTY Hace que el robot se comporte como un brazo derecho. LEFTY Hace que el robot se comporte como un brazo izquierdo. En la práctica se utilizará siempre esta disposición del brazo para evitar colisiones. MOVE <VARIABLE_DE_POSICIÓN> Desplaza la garra del robot hasta la posición indicada por la variable de posición. Para realizar este movimiento utiliza una interpolación que implique el menor movimiento de ejes, es decir, que para llegar al punto de destino no se mueve en línea recta, sino que se desplaza de forma que las rotaciones de las articulaciones del brazo se muevan lo mínimo. MOVES <VARIABLE_DE_POSICIÓN> Desplaza la garra del robot hasta la posición indicada por la variable de posición. Para realizar este movimiento utiliza una interpolación lineal, es decir, que para llegar al punto de destino va a obligar a la garra a desplazarse en línea recta. Esto es muy útil para sacar las garras de su plataforma. APPRO <VARIABLE_DE_POSICIÓN>, <VALOR> Mueve el robot a la posición indicada por la variable de posición, pero aumentando o disminuyendo la coordenada Z con el valor especificado. El movimiento se realiza mediante interpolación lineal. DEPARTS <VALOR> Incrementa o decrementa la coordenada Z con el valor especificado. OPENI Abre los enganches para coger o dejar la garra. CLOSEI Cierra los enganches para coger la garra, si no la tiene cogida, o cierra la garra, si la tiene cogida. RELAXI Abre la garra que debe tener cogida. DELAY(<VALOR) Establece un retardo de tiempo medio en segundos. 20 Práctica de Robótica Robot SCARA CALL <NOMBRE_DE_PROGRAMA> Permite desde un programa llamar a otro, <NOMBRE_DE_PROGRAMA>, de modo que se desvía el flujo de ejecución al programa indicado, retornando cuando haya finalizado. Comando DO Éste es un comando especial que nos permite utilizar las instrucciones del lenguaje de programación anteriores desde fuera de un programa, como si fuesen comandos. Por ejemplo, si queremos desde el prompt definir una posición llamada SAFE y mover el brazo del terminal hasta ella, se escribiría .DO SET SAFE=TRANS(560, -560, 855, 0, 180, -124) .DO MOVE SAFE Señales especiales Existen algunas señales que permiten activar los elementos relacionados con los tornillos. Se manejan con la instrucción SIGNAL(<VALOR>) desde dentro de un programa. Dependiendo del valor dado, activa o desactiva ciertos elementos del entorno de trabajo: − Signal (1): Activa la cubeta para la subida de los tornillos. − Signal (-1): Desactiva la cubeta para la subida de los tornillos. − Signal (2): Activa la plataforma de recogida de los tornillos. − Signal (-2): Desactiva la plataforma de recogida de los tornillos. − Signal (3): Activa el cierre de la mordaza. − Signal (-3): Desactiva el cierre de la mordaza. − Signal (4): Sube la plataforma para la inserción de tornillos en el destornillador − Signal (-4): Baja la plataforma para la inserción de tornillos en el destornillador. Apagado del sistema Una vez terminada la sesión, se debe proceder a apagar el controlador en el orden inverso al encendido, es decir, primero el interruptor verde, SYSTEM POWER debe ponerse en la posición 0 y después se debe situar la palanca de encendido en la posición OFF. 21 Práctica de Robótica Robot SCARA Posiciones de los elementos Posición de seguridad: SET SAFE = TRANS (560, -560, 855, 0, 180, -124) Posición justo encima de la garra 1: SET MM1 = TRANS (123.789, -488.511, 830, 0, 180, -61.87) Posición de la garra 1: SET GARRA1 = TRANS (123.789, -488.511, 755, 0, 180, -61.87) Diferencia de altura entre mm1 y garra1: -75 Posición de salida de la garra 1: SET SALIR1 = TRANS (123.789, -629.947, 755, 0, 180, -61.87) Posición justo encima de la garra 2: SET MM2 = TRANS (-16.867, -488.511, 830, 0, 180, -61.87) Posición de la garra 2: SET GARRA2 = TRANS (-16.867, -488.511, 755, 0, 180, -61.87) Diferencia de altura entre mm2 y garra2: -75 Posición de salida de la garra 2: SET SALIR2 = TRANS (-16.867, -629.947, 755, 0, 180, -61.87) Posición del cubo en la practica 2: SET CUBO = TRANS (314.880, -685.921, 851.294, 0, 180, -62.071) Altura desde esta posición a la posición adecuada para coger el cubo: -140 Posición final del cubo en la práctica 2: SET POSFINAL = TRANS (581.330, -471.566, 716.413, 0, 180, -61.848) 22 Práctica de Robótica Robot SCARA Altura desde esta posición a la posición adecuada para dejar el cubo: -5 Posición del destornillador: SET MM3 = TRANS (-156.304, -488.511, 830, 0, 180, -61.87) Posición del destornillador: SET GARRA3 = TRANS (-156.304, -488.511, 755, 0, 180, -61.87) Diferencia de altura entre mm3 y garra3: -75 Posición de salida del destornillador: SET SALIR3 = TRANS (-156.304, -629.947, 755, 0, 180, -61.87) Posición sobre el tornillo para ser cogido por el destornillador: SET TORNILLO = TRANS (715.240, -286.026, 842.133, 0, 180, -147.883) Altura desde esta posición a la posición adecuada para recoger el tornillo: -10 Altura a la que tiene que subir el destornillador una vez cogido el tornillo: 36 Posición del primer agujero del cubilete: SET AGUJERO1 = TRANS (581.164, -248.053, 867.959, 0, 180, -147.872) Altura desde esta posición a la necesaria para atornillar: -65.408 Posición del segundo agujero del cubilete: SET AGUJERO2 = TRANS (527.615, -289.625, 867.959, 0, 180, -56.016). 23 Práctica de Robótica Robot SCARA Procedimientos para coger y dejar garras Procedimiento para coger garras 1. Se debe situar la base del manipulador justo encima de la garra que se va a coger. 2. Se baja la base del manipulador a la posición en la que los enganches se introduzcan dentro de los agujeros de la garra. 3. Se cierran los enganches de la base del manipulador (CLOSEI). 4. Se saca la garra de la plataforma. Para ello, se debe salir en horizontal con un movimiento rectilíneo variando solamente la coordenada Y. 5. Ya se puede operar libremente con la garra cogida. Algoritmo: PROGRAM cogergarra(garra, salir) LEFTY ; comportamiento de brazo iquierdo APPRO garra, 100 ; mueve la base a 100mm encima de la garra DELAY(0.5) ; retardo de 0.5 segundos OPENI ; abre los enganches de la base DELAY(0.5) MOVES garra ; mueve la base hasta entrar en la garra DELAY(0.5) CLOSEI ; cierra los enganches de la garra DELAY(0.5) MOVES salir ; saca la garra de su plataforma DELAY(0.5) DEPARTS 100 ; sube la garra 100mm Procedimiento para dejar garras 1. Se debe situar la base del manipulador justo encima de la posición de salida de la garra que se va a dejar. 2. Se baja la base del manipulador a la posición de salida de la garra. 3. Se introduce la garra en la plataforma en horizontal con un movimiento rectilíneo variando solamente la coordenada Y. 4. Se abren los enganches de la base del manipulador (OPENI) para liberar la garra. 5. Se levanta la base del manipulador. 24 Práctica de Robótica Robot SCARA Algoritmo: PROGRAM dejargarra(garra, salir) LEFTY ; comportamiento de brazo iquierdo APPRO salir, 100 ; mueve la garra a 100mm encima de salir DELAY(0.5) MOVES salir ; mueve la garra a la posición salir DELAY(0.5) MOVES garra ; introduce la garra en la plataforma DELAY(0.5) OPENI ; abre los enganches de la base DELAY(0.5) DEPARTS 100 ; levanta la base a 100mm 25 Práctica de Robótica Robot SCARA Enunciado Ejercicio 1 Coger la garra 1, mover el brazo hasta un punto determinado y volver a dejar la garra en su sitio. Construir los programas para coger y dejar las garras según los algoritmos dados. Ejercicio 2 Dado un cubilete situado en un punto de la mesa, construir un programa que lo coja y lo lleve a una posición determinada dentro de la mesa. 2.1.Hacerlo con la garra ya cogida. 2.2.Hacerlo sin la garra cogida. Ejercicio 3 Manejo de las señales. Construir un programa que encienda y apague cada una de las señales. Dada la cubeta de los tornillos, en la que todos los tornillos están en el fondo, hacer que los tornillos lleguen a la plataforma de recogida. Ejercicio 4 Coger el destornillador, moverlo hasta un punto determinado y volver a dejarlo. Ejercicio 5 Coger el destornillador, localizar la posición de la rampa de salida de los tornillos y coger un tornillo. Volver a dejar el destornillador en su sitio. 26