practica 1 robocell

7
PR ´ ACTICA 1: ROBOT DID ´ ACTICO SCORBOT-ER 4u 1. Esquema de SCORBOT-ER 4u El esquema del sistema rob ´ otico SCORBOTER 4u del que se dispone en el laboratorio tiene el siguiente diagrama de bloques mostrado en la figura 1. Figura 1: Diagrama de bloques de SCORBOTER 4u 2. Brazo articulado El brazo articulado tiene una pinza como elemento terminal para la manipulaci ´ on de objetos. Es un robot vertical con 5 articulaciones de revoluci ´ on (5 grados de libertad). Esto le permite posicionarse en un amplio espacio de trabajo con una orientaci ´ on cuasi-arbitraria. La figura 2 identifica las articulaciones y enlaces del robot. El brazo articulado incluye encoders ´ opticos de realimentaci ´ on.Al ser ´ opticos producen una salida directamente digital, es decir, no es necesario el uso de conversores A/D para que el controlador pueda manejar la se ˜ nal de realimentaci ´ on. Tambi´ en incluye microinterruptores que 1

Upload: july-carranza

Post on 08-Feb-2016

215 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: Practica 1 Robocell

PRACTICA 1: ROBOT DIDACTICO SCORBOT-ER 4u

1. Esquema de SCORBOT-ER 4u

El esquema del sistema robotico SCORBOTER 4u del que se dispone en el laboratorio tieneel siguiente diagrama de bloques mostrado en la figura 1.

Figura 1: Diagrama de bloques de SCORBOTER 4u

2. Brazo articulado

El brazo articulado tiene una pinza como elemento terminal para la manipulacion de objetos.Es un robot vertical con 5 articulaciones de revolucion (5 grados de libertad). Esto le permiteposicionarse en un amplio espacio de trabajo con una orientacion cuasi-arbitraria. La figura 2identifica las articulaciones y enlaces del robot.

El brazo articulado incluye encoders opticos de realimentacion.Al ser opticos producen unasalida directamente digital, es decir, no es necesario el uso de conversores A/D para que elcontrolador pueda manejar la senal de realimentacion. Tambien incluye microinterruptores que

1

Page 2: Practica 1 Robocell

Figura 2: Articulaciones y Enlaces del brazo articulado

detectan cuando una articulacion ha llegado al final de carrera. Gracias a ello, el robot es capazde establecer su sistema de referencia.

3. El controlador

El controlador es un microcomputador de proposito especıfico, especialmente disenado paralas tareas de control de brazo articulado. Las funciones del controlador son:

1. Recepcion de ordenes del computador principal a traves del canal USB. Comprobacion delcanal.

2. Transmision de respuestas al computador principal a traves de dicho canal.

3. Actuacion sobre los motores mediante la conmutacion de transistores de potencia a ±12Volt (segun la direccion del movimiento) (ver figura 4).

4. Seguimiento (control) del movimiento de cada motor, contando los impulsos que llegan delos encoders, llevando cada uno hasta una posicion final (aquı se aplica un algoritmo decontrol).

5. Controla 8 lıneas de entrada (mas otras 2 en forma de interruptores manuales con finesdidacticos) mediante los cuales recibe senales de su entorno. A peticion del computadorprincipal (PC) puede comprobar el estado de alguna(s) de estas lıneas, para que el progra-ma que corre en el PC actue en consecuencia.

6. Controla 8 lıneas de salida para la activacion de equipos externos.

7. El controlador dispone de una rutina que puede llevar al brazo articulado hasta una posicionpredefinida (conocida como HOME) que marca el sistema de referencia en que se va amover el Robot. La forma de alcanzar la posicion de HOME es mover cada articulacionhasta que llega al final de carrera, donde se conmuta un microinterruptor. Al detectar esta

2

Page 3: Practica 1 Robocell

Figura 3: Actuacion sobre los motores.

conmutacion, el controlador ya sabe donde se encuentra la articulacion y puede llevarla(contando un cierto numero de impulsos) hasta la posicion de HOME.

8. El controlador puede parar todos los motores guardando informacion del estado de cadauno para luego poder continuar el movimiento.

9. El controlador puede obtener informacion del progreso en el movimiento de un motor apeticion del PC, y responder de acuerdo con ella.

En el frontal del controlador pueden encontrarse los siguientes elementos (identifıquelos en elrobot):

1. Indicador de encendido/apagado. Indica si el controlador esta encendido. Si se torna verdeademas hay conexion con el PC.

2. Indicador de motores encendidos. Indica si los motores estan encendidos (orden con) oapagados (orden coff).

3. LEDs y conectores de entrada/salida. Permiten la comunicacion entre robots.

4. Conectores de ejes perifericos. Permiten conectar accesorios al robot (por ejemplo, la cintatransportadora).

5. Boton de Emergencia. En situaciones de riesgo para el robot o sus operarios debe serinmediatamente pulsado.

4. El computador principal

Proporciona un interface adecuado con el usuario o con los programas de usuario. Desdeel PC se pueden usar las distintas rutinas del controlador para actuar sobre el brazo mecanico.SCORBOT 4 provee un lenguaje de alto nivel para programacion del robot denominado scorbase.

3

Page 4: Practica 1 Robocell

5. Lenguaje de programacion: SCORBASE (nivel 3)

5.1. Introduccion

SCORBASE (nivel 1,2 y 3 o “Pro”) es un lenguaje de programacion de robots de alto nivel,interactivo y con control de trayectoria punto a punto. Esta pensado para trabajar en dos etapas:

1. ”Ensenar” al robot un conjunto de distintas posiciones con las que operara posteriormente.Se trata de definir de antemano una serie de puntos en el espacio (x,y,z).

2. ”Programar” el robot: se escribe un programa utilizando los comandos que provee el len-guaje SCORBASE.

Figura 4: Scorbase en ejecucion.

5.2. Ensenar posiciones

Las posicion se ensenan empleando dos ventanas. La primera (Movimiento Manual) nos per-mite mover el robot hasta la posicion deseada. Esto puede hacerse en el dominio de las articula-ciones (poco recomendado) o en el dominio cartesiano (XYZ). Junto a esta ventana se encuentrauna segunda (Ense~nar Posiciones) que nos permite almacenar la posicion, ya sea de forma ab-soluta o relativa. Para ello se debe asignar una etiqueta a la posicion. Se recomienda al alumnoque explore los elementos de esta ventana (puede recibir “tips” dejando el puntero del raton sobreellos).

5.3. Lenguaje SCORBASE

La programacion se realiza en la ventana Programa. En esta ventana no se puede escribirdirectamente sino que las ordenes se seleccionan de la ventana contigua (Zona de Trabajo).

4

Page 5: Practica 1 Robocell

El numero de ordenes que se muestran en esta ventana dependera del nivel al que estemostrabajando. Ası, para el nivel 1 (boton L1 bajo el menu), se muestran las ordenes mas basicas,mientras que para el nivel 3 (boton Pro) se muestran todas las ordenes disponibles.

Para insertar una orden se pincha dos veces en la Zona de Trabajo. Si la orden tiene op-ciones, emergera una nueva ventana para que las rellenemos. Por ejemplo, si pulsamos sobrela orden IP (ir a posicion) aparecera una ventana preguntando la posicion a la que queremos ir(la etiqueta de la posicion ensenada), si queremos que los ejes se muevan libremente o se sigauna trayectoria rectilınea o circular, ası como la velocidad. Como puede observarse, el programaresulta extraordinariamente intuitivo pero engorrosamente “user-friendly”.

A continuacion se describen algunos comandos:

Comandos basicos:

1. Abrir/Cerrar pinza: Open/Close Gripper

2. Ir a la posicion #: Go to position #(linea) #(velocidad)

3. Esperar : Wait #(seconds)

4. Deteccion de estado activo o inactivo de una linea externa de entrada, y salto condicio-nal : if input #(no.) jump to #(lınea)

5. Activar/desactivar una salida : turn output #(no.) on/off

6. Salto incondicional: jump to line #(lınea)

Bucles:

1. Asignacion de un contador (cont ⇐ #): set counter #(cont.) to #(valor)

2. Decremento de un contador (cont ⇐ cont - 1): decrement counter #(cont.)

3. Salto condicionado al valor del contador respecto a 0: if counter #(cont.) <=> 0 jumpto #(lınea)

Comandos de subrutinas:

1. Declaracion de una subrutina: set subroutine #(no. subrut.)

2. Retorno de subrutina: return from subroutine.

3. Llamada a subrutina: call subroutine #(no. subrut.)

Comandos del sensor de medida de la pinza. Se pueden memorizar hasta 64 valores detamanos en mm de objetos medidos con la pinza en 64 posiciones de memoria. Este me-moria no solo se usa en relacion con el sensor de medicion de la pinza, sino que ademaspuede usarse para albergar “variables” no necesariamente relacionadas con el sensor:

1. Asignacion de un valor a una memoria: set memory #(mem) to #(valor).

2. Cargar la memoria con la medida del sensor: set memory #(mem) to sensor.

3. Comparacion de los valores de las memorias para salto condicionado:if memory #(mem) <=> memory #(mem) jump to #(lınea)

Otros comandos:

5

Page 6: Practica 1 Robocell

1. Presentar por pantalla un texto dado: print.

2. Saltar condicionalmente cuando se produce un error en un motor:on motor #(motor) error jump to #(lugar) * (tipo)

Esta instruccion se puede situar en cualquier punto del programa. El salto seproducecon el error del motor, no con la instruccion.

• ”motor” puede ser el numero de uno de ellos o ”ALL” (todos).• ”lugar” puede ser un numero de lınea o ”next”, con lo que el programa seguira en

la lınea siguiente.• ”tipo” puede ser ”continuously” (se ejecutara el salto siempre que haya error), ”sin-

gle” (solo se realizara el salto la primera vez que se produzca el error), ”off” (inva-lida el efecto de la instruccion).

3. Almacenar la posicion actual como HOME: set preent position as HOME.

4. Comprobar el estado (ON/OFF) de los finales de carrera de los microinterruptores delas articulaciones:

if limit switch # jump to #

5. Reponer a la posicion inicial un motor dado. Esta orden es util para movimientos cıcli-cos.

Set axis #. to zero

6

Page 7: Practica 1 Robocell

6. Practica con el robot SCORBOTER 4

Proponer una aplicacion y disenar un programa en SCORBASE para resolverla.

6.1. Recomendaciones

Antes de arrancar el programa es necesario cerciorarse de que todos los dispositivos estanencendidos.

1. Hacer HOME. Esto hace que el robot “busque” su sistema de referencia cartesiano.

2. Ir al menu de “ensenar posiciones”. Ensenar y grabar las posiciones requeridas para imple-mentar la aplicacion.

3. Hacer un nuevo HOME.

4. Escribir y ejecutar el programa.

Observaciones Generales:

NO es lo mismo ”hacer HOME” que ”ir a HOME”. Lo primero recalcula el sistema dereferencia, mientras que lo segundo es ir a una posicion prefijada.

Realizar siempre una trayectoria ”punto a punto” (definiendo varios puntos intermedios)para evitar choques debidos a trayectorias inesperadas. Los puntos de las trayectoriasse ensenan previamente en el menu de ”teach positions”.

La cinta transportadora se usa como una articulacion mas.

7