Você está na página 1de 47

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Apuntes para Operacin y Programacin de Robot CRS


INDICE
PARTES QUE INTEGRAN EL ROBOT _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2
1. 2. 3. 4. Elementos que integran el equipo Caractersticas de los robots articulados Instalacin de los componentes y del software Consideraciones de seguridad.

FUNCIONES DE LAS TECLAS DEL TEACH PENDANT _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 5


1. 2. 3. 4. 5. 6. Teclas del Teach Pendant Sistemas de coordenadas que maneja el Robot Movimiento del Robot Grabado de posiciones con el teach pendant Aplicacin ASH Grabado de locaciones desde ASH en la PC

LENGUAJE DE PROGRAMACIN Y OPERACIN DEL ROBOT_ _ _ _ _ _ _ _ _ _ 14


1. 2. 3. 4. 5. 6. 7. Introduccin al Robcomm3 Sistemas de coordenadas Aplicaciones Comandos relacionados con el gripper Comandos de velocidad Declaracin de variables Tipos de movimiento

PROGRAMACION _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 25 1. Estructura de los programas 2. Creacin de programas 3. Definicin de variables tipo arreglo (arrays) 4. Programacin usando mensajes, cambios de velocidad, retardos y operacin del gripper 5. Ciclos repetitivos 6. Ciclos condicionales 7. Subrutinas 8. Ejecucin de segmento con condicin (case)

ENTRADAS Y SALIDAS _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 39
1. Distribucin fsica de puertos de entradas y salidas digitales y conectores 2. Programacin utilizando puertos

BIBLIOGRAFIA _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 43

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

PARTES QUE INTEGRAN EL ROBOT 1. Las partes que integran el robot son las siguientes: Brazo Robot Controlador ( para este caso el C500C) Teach pendant serial Terminal( PC) Cables umbilicales ( control y potencia )

2. CARACTERSTICAS DE LOS ROBOTS ARTICULADOS De los robots de la marca CRS se tienen tres modelos, los cuales son: Grados de 5 libertad Alcance 559 mm Carga nominal 1.0 kg.

ROBOT A255

ROBOT A465

Grados libertad Alcance

de 6 710 mm 2.0 kg.

Carga nominal

ROBOT F3

Grados de 6 libertad Alcance 710 mm Carga nominal 3.0 kg.

3. INSTALACIN DE LOS COMPONENTES Y EL SOFTWARE

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Para el correcto funcionamiento del robot es necesario realizar una buena instalacin fsica de todos sus componentes as como tambin de una correcta instalacin del software. Primero se recomienda, realizar la instalacin del software en la terminal que sea asignada para el robot. Todos los robots CRS traen su software en CDs, en donde la instalacin es sencilla. Los pasos para la instalacin son los siguientes: 1. Se lee el CD de instalacin (denominado Active robot) y seleccionar la instalacin del CROS (Sistema operativo). Este comando instala el sistema operativo del robot en la PC para compilacin de programas.). 2. A continuacin se procede a instalar el ROBCOMM3 el cual es el ambiente para manipular y programar el robot desde la PC. Para comunicar la PC al robot es necesario configurar el puerto serial a 57600 bps. Para ello es necesario conectar el cable serial en cualquiera de los puertos seriales disponibles y correr el programa Robcomm3, para configurar el puerto serie de la siguiente manera: Se escoge del men C500 la opcin COM SETTINGS, y se selecciona el puerto a utilizar (COM1 o COM2, etc.) y la velocidad de 57600. Si el robot viene en la posicin de empaque ser necesario desbloquear el robot, para lo cual es necesario pulsar la tecla arm power, que habilita los manejadores de los motores del robot (este paso es bsico siempre que se encienda el controlador para manipular el robot): despus, aplicar el comando LIMP, el cual lo libera del bloqueo y se puede manipular manualmente. Se debe tener cuidado no aplicar este comando sin tener debidamente sujetado el Robot ya que puede sufrir algn dao debido al impacto que este puede tener. 1. CONSIDERACIONES DE SEGURIDAD. El controlador y sus componentes cuentan con paros de emergencia que se distinguen fcilmente. Es importante verificar antes de encender el robot por primera vez que estos paros de emergencia no se encuentren activados, ya que al activarse un paro de emergencia se corta la energa a los manejadores de los motores del brazo robot. Los paros de emergencia se encuentran conectados en serie, para que de esta manera, al ser activado cualesquiera de ellos, rompe el circuito y se interrumpe la

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

energa del brazo y en este se activan al instante los frenos o bloqueos de los ejes, lo cual evita que el robot se mueva por alguna inercia o por la gravedad. Tambin el software de aplicacin se activa y como medida de seguridad disminuye la velocidad de los ejes a CERO en un perodo muy rpido de tiempo, lo cual contribuye a no tener movimientos bruscos del brazo robot. Una vez que se restablece un paro de emergencia, la energa se restablece a los manejadores de los motores del brazo, pero no de forma inmediata, es decir, ser necesario pulsar el botn ARM POWER armar del controlador del robot. El controlador C500B esta provisto de una entrada para paros de emergencia, de tal forma que en un sistema se pueden instalar el nmero de paros de emergencia externos que sean necesarios y con ello garantizar la seguridad, ya que el controlador es el cerebro del robot. Se debe considerar que los paros de emergencia que se conecten al controlador nicamente detendrn al robot. El controlador no tiene salida de paro de emergencia lo cual implica que al ser activado un paro de emergencia del robot, este no podr parar el sistema en el cual este interactuando. El teach pendant posee un botn de paro de emergencia tambin. El teach pendant cuenta tambin con un switch de seguridad en la parte lateral y el cual debe de estar presionado cuando se este trabajando con el robot usando este control. Este switch o palanca de seguridad tiene tres posiciones 1) abierta, 2) cerrada y 3) sobrepresionada. Los movimientos que hagamos con el robot solo sern posibles manteniendo la palanca en la posicin 2 (cerrada). Si la palanca se encuentra en cualquiera de las otras 2 posiciones se emitir un sonido de error. El brazo robot slo puede ser movido por uno de los dos puntos de control que tiene, es decir, si esta activado el teach pendant solo este tendr el control del robot. Para poder usar la PC como controlador, es necesario pasar el control a la terminal y deshabilitar el teach pendant. El mismo procedimiento ser necesario realizar para ceder el control desde la PC hacia el teach pendant. Cuando el robot se enciende es necesario ponerlo en la posicin de HOME, esto con la finalidad de que el robot este colocado en sus referencias de ubicacin conocida. Poner el robot en HOME se puede hacer desde el teach pendant o bien desde la PC. Antes de inicializar el robot es recomendable (mas no indispensable), liberarlo con el comando LIMP para ponerlo entre las marcas que trae cada eje y despus aplicar el comando HOME.

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

FUNCIONES DE LAS TECLAS DEL TEACH PENDANT. 1. TECLAS DEL TEACH PENDANT

F1,F2,F3,F4 A estas teclas se les asignar una funcin, la cual se indicar en la lnea del men de la pantalla actual, numeradas del 1 al 4 respectivamente. ESC Esta tecla sirve como una salida, paro, o para cancelar alguna funcin seleccionada, tambin nos lleva al men anterior. La teclas ESC nos permite parar un programa que se este ejecutando, parando el robot y terminando el programa. Cuando tenemos algn error de una lnea que se esta editando, con ESC podemos cancelar la edicin y empezar de nuevo. TECLAS DE EJES Son teclas que se encuentran grabadas por flechas y letras y adems contiene los smbolos de + y . Se utilizan para mover el robot de una manera manual,

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

cada par de teclas opera un eje del robot. Para el movimiento LIMP, la tecla que contiene el signo +, libera el eje que corresponde a la tecla y la tecla con el signo retoma el control de la unin liberada. TECLAS DEL GRIPPER Estas teclas se utilizan para abrir y cerrar el gripper de manera manual HOME Y READY La tecla HOME alinea el robot a su posicin de referencia, es necesario mantenerla presionada hasta que el robot termine de ejecutar la instruccin. La tecla READY mueve al robot a una posicin de seguridad o inicio definida siempre en la misma posicin por el fabricante, y pudindose utilizar esta posicin cuando se realice un programa. LIMP ALL / NO LIMP Estas teclas se utilizan para seleccionar la liberacin de los frenos y mover las articulaciones manualmente. LIMP ALL libera todas las posiciones del robot. NO LIMP ALL retoma el control de todos los ejes del robot para que mantengan su posicin. MOVE Se utiliza para mover el robot a una posicin previamente definida, debiendo de seleccionar la variable a la cual se desee mover y, manteniendo la tecla presionada, el robot se mover a dicha posicin. UP/DOWN INDEX Estas teclas aumentan o disminuyen de uno en uno el nmero del ndice mostrado en un arreglo. TYPE INDEX Con esta tecla se puede mostrar o rescribir un ndice de un arreglo. FIRST/LAST Permite recibir el primero o el ltimo ndice de un arreglo.

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

INS/DEL/Pack Array Estas teclas se utilizan para insertar dentro, borrar desde y compactar un arreglo.

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

SPEED DOWN / SPEED UP Estas teclas son usadas para incrementar o reducir la velocidad de movimiento de los ejes del robot. SHIFT Se utiliza para escribir el carcter denotado en la parte superior de una tecla alfabtica. ENTER Esta tecla da entrada a toda la informacin que se este manejando en el teach pendant.

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

2. SISTEMAS DE COORDENADAS QUE MANEJA EL ROBOT Existen cuatro tipo de coordenadas que maneja el robot. Si el robot no ha sido puesto en home solo podr utilizar la coordenada JOINT. TIPODE COORDENADA JOINT WORLD EJES 1,2,3,4,5,6,( 7,8) X,Y,Z, YAW, ROLL Q, R, Z MOVIMIENTO ARTICULACIONES PITCH, MOVIMIENTOS RELATIVOS A LA BASE DEL ROBOT MOVIMIENTO CILNDRICO DONDE Q ES EL GIRO, R MANTIENE LA HORIZONTAL Y Z LA VERTICAL. PITCH, MOVIMIENTOS RELATIVOS A LA BASE DEL GRIPPER

CYL

TOOL

X,Y,Z, ROLL

YAW,

MODO JOINT. Este comando mueve cada uno de los ejes con las teclas correspondientes, es el nico modo que se puede utilizar antes de poner en HOME al robot. MODO WORLD. El origen de este modo es el centro de la base del robot, la coordenada Z se extiende verticalmente hacia arriba de la base del robot, la coordenada Y se extiende hacia el lado derecho, y la coordenada X se extiende hacia el frente del robot. MODO CYL. El origen de este modo es el centro de la base del robot, y se puede variar el giro definido Q, el radio R y la coordenada Z o altura se extiende verticalmente hacia arriba de la base del robot. MODO TOOL. El origen de este modo es el centro de la base del gripper, la coordenada Z se extiende verticalmente hacia arriba de la base del gripper, la coordenada Y se extiende hacia el lado derecho, y la coordenada X se extiende hacia el frente del gripper.

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

En cada tipo de movimiento se puede incrementar o disminuir la velocidad del robot, con las teclas del teach pendant. Tambin cuando se mueve el robot manualmente se debe de seleccionar un tipo de movimiento, que puede ser, de velocidad constante (VEL) o incremental (JOG) en el cual se pueden variar estos incrementos, de alineacin (ALIGN), en el cual se alinea con alguno de los ejes X, Y, o Z. 3. MOVIMIENTO DEL ROBOT Por medio del teach pendant y nicamente realizando movimientos individuales en cada uno de los ejes, se pueden realizar de la siguiente manera: 1. 2. 3. 4. Seleccionar F1 que son las aplicaciones del robot. Dentro de las aplicaciones podemos revisar hasta encontrar test. Presionar F1 para seleccionar test (sel) Presionar F3 para seleccionar el tipo de movimiento, comenzando con la velocidad de movimiento de los ejes. 5. Con F4 podemos seleccionar el tipo de movimiento en donde tenemos las opciones vistas anteriormente 6. Con las teclas de movimiento que contienen las flechas podemos empezar a dar movimiento al robot. Podemos estar probando los tipos de movimiento del robot as como las diferentes velocidades, para obtener dominio del brazo robot. Es importante que el robot tenga locaciones especificas, por lo que es necesario grabar cada una de las locaciones que nosotros creamos pertinentes, o bien que algn proceso determinado no lo exija. Como grabar posiciones del robot desde el teach pendant 1. Como primer paso se fija el robot en la posicin que queremos grabar y se acepta en el comando del teach pendant. 2. En el teach pendant se presiona la tecla F1 y aparece (var), lo cual nos indica que debemos insertar una variable a esa posicin. 3. Debemos de insertar la variable que nosotros asignemos a la posicin en donde podemos asignar una letra.

10

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

4. En el paso anterior aparecer en la pantalla Var Create indicndonos el nombre que le asignamos a la variable. Es necesario presionar F1 (make) para crear o grabar la nueva posicin. 5. Con F1 ( sel )podemos seleccionar una nueva variable 6. Mover el robot a otra locacin que se desee guardar 7. Presionar F1 para grabar la posicin en la tabla de variables. Para determinar ms locaciones se deben de repetir los pasos anteriores.

Saliendo del teach pendant hacia la computadora Para salir del teach pendant se empieza a presionar la tecla ESC hasta llegar a la pantalla donde aparezca la pregunta, que nos informa si queremos salir del pendant donde tenemos que definir el SI o el NO, si es SI el control pasar a la computadora, si es NO se queda el control en el Teach. Saliendo de la computadora hacia el teach En la terminal del ROBCOMM3 aparecer un prompt de signo de pesos, enseguida del prompt debemos escribir pendant y el control pasara al teach pendant. Debemos recordar que el control del robot solo puede estar en una de las dos partes anteriores, pero no en las dos a la vez. 4. MOVIENDO EL ROBOT DESDE LA PC Abriendo el ROBCOMM3 Desde el men inicio seleccionar programas Encontrar CRS ROBOTICS Seleccionar Robcomm3

11

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Con lo anterior ya se esta dentro del programa y con ello podemos utilizar los iconos que nos muestra el software.

Aplicacin Ash

12

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

La aplicacin ASH nos permite comunicarnos con el controlador y enviarle comandos al robot para que este los ejecute, para poder trabajar con la aplicacin ASH debemos de entrar primeramente al ROBCOMM3, para entablar comunicacin con el robot. (se debe de verificar que el control sea pasado a la PC), abrimos la ventana de terminal, por medio del icono con el grafico de la PC, o por medio del men C500, opcin terminal Una vez que estemos en la PC y abierto la pantalla de terminal, debemos de abrir una aplicacin de la siguiente forma: $ ash prueba Si esta aplicacin no esta grabada o creada nos preguntar si deseamos crearla, para lo cual debemos de pulsar la tecla Y de si, con esto se crear una nueva aplicacin y aparecer: prueba> Despus de creada la aplicacin podemos insertar los comandos que se quieran utilizar para trabajar con el robot desde la PC sin necesidad del teach pendant. Para realizar movimientos con esta aplicacin los procedimientos son los siguientes: NOTA: todos los comandos se deben de escribir con minsculas. joint eje a mover (1-6),# de grados (ngulo), mueve una unin a la vez. wx distancia, mueve el robot sobre la direccin del eje X por la distancia especificada. La distancias son por lo regular en sistema ingles (se puede cambiar a sistema internacional en mms.). wy distancia, mueve el robot sobre la direccin del eje Y por la distancia especificada. wz distancia, mueve el robot sobre la direccin del eje Z por la distancia especificada. move (nombre de locacin) mueve el robot a la variable de la locacin grabada. Otros comandos de operacin en el modo ash son los siguientes:

13

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

COMANDOS DE OPERACIN DEL MODO ash joint articulacin, grados speed valor (0-100) Movimiento relativo a la posicin deseada, puede ser positivo o negativo. Proporciona la velocidad a la que queremos trabajar, sin valor nos indica la velocidad a la que estamos trabajando. Muestra valores de las articulaciones, valor de la posicin y del encoder. Muestra en tiempo real el valor del encoder, para salir se presiona ctrl. +E. Mueve el robot en el modo world en funcin del sistema mtrico seleccionado. Rota en relacin al eje indicado en sentido positivo o relativo. Coloca al robot en una posicin determinada. Coloca el brazo en posicin vertical. Mueve las articulaciones en modo tool. Rota en modo tool, segun el eje indicado. Abre gripper. Cierra gripper. Ensea la posicin en que se encuentra con el nombre deseado (variables de posicin), si no existe la variable con ese nombre, el sistema pregunta si se desea crearla Coordenadas cartesianas Localizacin en funcin de pulsos (mayor precisin) Muestra el valor de la variable Muestra las variables guardadas, muestra un smbolo * cuando no tienen una posicin definida o enseada Crea una variable de tipo (_) cloc (#) ploc y nombre de la variable Asigna un valor a una variable general que se indique Borra la variable que se le indique. Establece una salida al valor logico 0 1 Mueve a una distancia del punto indicado con

w0 w1 wx, wy, wz xrot, yrot, zrot ready calrdy tx, ty, tz yaw, pitch, roll go gc here nombre

cloc ploc print nombre list

new tiponombre set name=valor erase nombre output salida, valor appro nombre,distancia

14

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

depart distancia

respecto al gripper. Se aleja del punto actual respecto al gripper.

Como grabar posiciones del robot desde la PC

1. Se debe de estar en la aplicacin que va a ser modificada 2. Usando los comandos de movimiento de ash, mover el robot a la posicin deseada 3. Escribir el comando here variable ( here a) 4. repetir los pasos para cuantas posiciones se necesiten

15

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

LENGUAJE DE PROGRAMACIN Y OPERACIN DEL ROBOT 1. INTRODUCCIN AL ROBCOMM3 El ROBCOMM3 es un software que esta basado en Windows y diseado para utilizarse con el RAPL3, el cual es un lenguaje de programacin muy similar en su estructura al lenguaje C. Se usa esta interfase para realizar los programas deseados. Con lo anterior ya se esta dentro del programa y en comunicacin con el robot, de aqu, para crear un programa nuevo, podemos abrir la ventana del editor y abrir un nuevo documento con el icono del grafico de nuevo documento, o desde el men File, con la opcin New, y aparecer dicha ventana de edicin.

Nombrar y salvar un programa Dentro del men file seleccionar save as

16

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Escribir el nombre que se desee, el cual, debe tener forzosamente la extensin r3 (nombre.r3) para definir los listados o programa fuente. Hacer clic en ok

Creando una nueva aplicacin Para poder completar el proceso de programacin, se debe establecer un nexo o enlace entre la computadora y el controlador del robot, a este enlace se le denomina aplicacin, y para realizarlo: Una vez salvado el archivo, ir a la ventana del men aplicacin Seleccionar new app El nombre de la aplicacin deber ser el mismo que el nombre del archivo fuente, pero forzosamente agregar la extensin .app (nombre.app)

NOTA: El no atender las recomendaciones puede ocasionar resultados inesperados, tales como que el robot no realiza los cambios efectuados a un programa, o pierde puntos, o se comporta de manera inesperada. Una manera de asegurarnos de que se esta procediendo correctamente con el proceso para realizar o corregir programas, es el seguir las recomendaciones anteriores y verificar lo siguiente: Regresar al men de la aplicacin y seleccionar setup Las 3 lneas, automticamente deben aparecer llenas con los nombres anteriormente introducidos, (nombre.r3, directorio de la aplicacin nombre, y programa objeto nombre. En caso de que no aparezcan estas tres condiciones automticamente, o aparezcan con nombres o ubicaciones distintas, es preferible volver a empezar con el proceso anterior (crear programa.r3 abrir aplicacin programa.app), hasta que lo realice automticamente el programa.

17

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Escribiendo una aplicacin Primeramente hay que definir variables de posicin o que van a contener referencias de coordenadas. Esto se logra con el comando teachable que le indicaran al compilador que sern variables de posicin con las cuales se van a definir ubicacines de puntos para el robot. Indicar el tipo de variable que se desea definir, cloc cartesianas, ploc por puntos de los encoders de posicin del robot (mayor precisin). Despus agregar el nombre de las variables separados por comas (a,b..,z: a1, a2..,a100; etc.) Cada programa en RAPL3 debe de tener una construccin de bloque main.....end maincomo esta en la entrada y salida de cada programa. Crear un programa que mueva el robot de una posicin grabada y despus se mueva a otra posicin y por ltimo se ponga en posicin ready. El comando move(): este comando mueve el centro de la punta de la herramienta la posicin especificada en modo de unin interpolada, es decir las uniones del robot se mueven y paran al mismo tiempo. Para usar el comando se debe de escribir de la siguiente forma move (location name) se debe asegurar de incluir los parntesis ready (): este comando mueve el brazo a la posicin ready. El programa puede quedar de la siguiente forma: teachable cloc a,b main

18

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

move (a) move (b) ready() end main

Compilando un programa Cuando se compila un programa, se esta creando un programa objeto del archivo fuente y existen tres maneras de compilar un archivo. Desde la barra de herramientas, seleccionando el botn compile. Desde el men de aplicacin, seleccionando compile Desde la ventana del editor, con el botn derecho del mouse haga clic, de esta formas se despliega un men de trabajo, seleccionar compile.

19

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Si la compilacin fue exitosa, Ralp-3 despliega un mensaje en la pantalla indicndonos que la compilacin fue buena, para lo que es necesario aceptar.

20

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Si existen errores tambin no lo indica, para lo cual es necesario corregir el programa fuente y volver a compilar hasta que este se pueda compilar. Cargando el programa en el controlador El programa una vez compilado se queda en la PC por lo que es necesario mandar el archivo objeto al controlador, para ello es necesario realizar el procedimiento siguiente para mandar el archivo Desde el men herramientas, seleccionar send app Desde el men application, seleccionar send Desde la ventana del editor, haciendo clic en el botn derecho del mouse y se despliega un men de trabajo donde se selecciona send.

21

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Sobrescribiendo posiciones con el teach pendant 1. 2. 3. 4. 5. 6. 7. 8. Seleccionar F1 ( edit) Seleccionar F1 ( var ) Usando F3 y F4 par mostrar todas las variables Seleccionar la variable a, presionar F1 (SEL) Mover el robot a la nueva posicin Presionar F1 (TCH) para ensear esa nueva locacin Presionar F1 (YES) cuando muestre la pregunta TEACH VARIABLE Presionar ESC para regresar a la pantalla de VAR FIND

22

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

9. Repetir los pasos del 4 a 8 para la posicin B Para ejecutar un programa, es necesario tener grabadas las posiciones a las cuales le indicamos que se mueva en programa, como lo indicamos en el captulo anterior. Una vez que se tiene el programa, que este ha sido compilado y enviado al controlador y que las posiciones han sido verificadas o grabadas, se procede a ejecutar el programa de la siguiente forma: Desde el teach pendant, se selecciona app, luego se selecciona la opcin run y se confirma la ejecucin. Desde la PC. Dentro del Robcomm3 y una vez que estemos en el ash correspondiente del programa creado, aparece el prompt con el mismo nombre (>nombre), cuando aparece, se teclea run y se le da enter ejecutndose as el programa. Comandos relacionados con el Gripper Al final del brazo del robot regularmente se instala una pinza con dedos, los cuales pueden tener diferentes formas dependiendo de la tarea que se tenga que realizar. Para manipular los dedos de cualquier tipo de gripper se utilizan los mismos comandos. grip_open(). Abre el gripper. Si se esta usando un servogripper, dentro de los parntesis se puede escribir la fuerza de trabajo que se desee, siendo el parmetro de 0 a 100%. Si no se usa servogripper no se debe de incluir ningn valor. grip_close(). Cierra el gripper y se aplican los mismos parmetros que el grip_open(). finish(). Obliga al programa a esperar este comando hasta que los movimientos del robot han terminado. EJERCICIO: 1. En la locacin a cerrar gripper 2. Mover el robot a la locacin b

23

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

3. En la locacin b abrir gripper Comandos aproach y depart (acercarse y retirarse) En ocasiones resulta necesario que el robot no llegue directamente a un punto, sino solo que se aproxime o retire, para ello se utilizan estos comandos. appro() mueve el centro de la punta de la herramienta a una posicin aproximada. La posicin de aproximacin es definida por una locacin y una distancia a lo largo del eje de la herramienta. Ejemplo: appro(a,2) el robot se va a aproximar a la locacin a 2 pulgadas. Desde ash la sintaxis cambia ya que los valores no se ponen entre los parntesis approach a,40 depart() mueve el centro de la punta de la herramienta fuera de la posicin actual a lo largo del eje de la herramienta. Ejemplo: depart(2) retira el robot de la posicin en que se encuentra 2 pulgadas. Desde ash depart 2

Comandos de Velocidad La velocidad de trabajo del robot se puede establecer desde el comando ash o bien en el programa Rapl3 ash escribir el porcentaje de velocidad a la cual se quiere trabajar de 0 a 100% Rapl3: speed_set(%) o speed(%)

24

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

La velocidad en el movimiento de una trayectoria puede ser variable de acuerdo a la longitud de la trayectoria, ya que se toman en cuenta aceleraciones y desaceleraciones; tambin de acuerdo a las locaciones y a el acercamiento, etc. EJERCICIO: 1. Grabar 2 nuevas locaciones al programa 2. adicionar un comando appro y depart para las dos primeras locaciones a y b 3. antes del comando depart establecer una velocidad del 20% 4. despus del comando appro establecer una velocidad del 50% 5. ensear las 2 nuevas locaciones usando ash 6. ejecutar el programa. Tipos de variables generales Smbolo Ninguno % $ Guin bajo (_) # Tipo Entero Flotante Cadena Cloc(cartesiano) Ploc(punto de presicin)

Dentro de un programa las variables se usan para: 1. 2. 3. 4. 5. Nombrar una condicin Poner un nombre igual a una Constante Usar contadores Definir ciclos etc.

Convencin para nombrar las variables En el Rapl3 los nombres de las variables pueden ser de cualquier longitud, sin embrago los primeros 32 caracteres son los importantes. Tipos de datos Todas las variables pueden ser definidas como un tipo de dato de la tabla que se mostr al momento de declarar estas en el programa. Las variables son declaradas usando el tipo de dato de la variable con el nombre de la variable.

25

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Asignacin de variables Las variables que son asignadas dentro del programa Rapl3, pueden ser asignadas ya sea en la declaracin de lnea, o en cualquier parte del programa. La asignacin de una variable ocurre cuando la variable es cargada con un valor actual. Las variables del tipo teachable, le pueden ser asignados valores en el prompt de ash, usando el comando set. Para asignar los valores a las variables se usa el operador=, ejemplo: Prueba> set i=5 Rapl3 soporta la asignacin de valores en cdigo ASCII para caracteres, usando el carcter actual encerrado entre comillas simples, ejemplo: Char=A Movimiento en lnea recta Este tipo de movimiento mantiene el centro de la herramienta con movimiento en lnea recta entre la posicin actual y un punto definido. Los comandos de movimiento pueden ser generados para mover el robot en lnea recta, adicionando una s al final del comando, ejemplo move (a) se mueve a la posicin a pero no en lnea recta moves (a) se mueve a la posicin a en lnea recta En ocasiones resulta imposible para el robot llegar de una posicin a otra en lnea recta por lo que ser necesario grabar algunas locaciones intermedias y que el movimiento se pueda dar. EJERCICIO: En el programa que se tiene convertir todos los movimientos a lnea recta y observar la diferencia. Imprimiendo en pantalla

26

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

Imprimir mensajes en la pantalla de la PC, es til para depurar programas. Si se usa correctamente, se puede saber donde el programa ha fallado, que error ha ocurrido, ubicacin de la lnea ejecutndose, etc. El comando ms favorable para realizar esto es printf La expresin que se quiere que salga en pantalla se debe de encerrar entre comillas Printf(el robot esta trabajando) Se puede utilizar un salto de lnea aadiendo un \n, ejemplo int a=12 printf( el valor de a es {}\n,a);;esta lnea se imprimir en la pantalla como: ;; el valor de a es 12

PROGRAMACION ESTRUCTURA DE LOS PROGRAMAS El formato general para un programa en RAPL3 es similar a los programas en lenguaje C, en donde hay que respetar ciertas estructuras ya definidas para poder interactuar con la interface de usuario y realizar programas. El formato es el siguiente: definicin de variables: principal) teachable (puede ser antes o despus de definir el segmento

cloc a,b.....z,a1.... a xx, [10] puntos, etc......

27

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

ploc int i, a1....axx, float b.... etc. para el caso en que las variables se refieran a ubicacin de puntos grabados en el controlados del robot, se especifica el tipo de exactitud de las variables (cloc, ploc) en dnde cloc (cartesian location) se refiere a que se va a referenciar para la exactitud en sistema de coordenadas cartesiano, y ploc (points location) lo har directamente de los puntos provenientes de los decoders del robot; se obtiene mas presicin con el tipo ploc definicin del segmento principal: main ;; definir el segmento principal, comienzo de todo programa ;; es conveniente poner comentarios cuando se realiza y ;; estructura un programa para una mejor comprensin ;; aqu comienza la programacin deseada

ready() move (a) move (b) ..... ..... ..... ready() end main

;; termina la programacin

;; fin del programa con el cierre del segmento principal

Esta es la estructura bsica de los programas, con la cual debe contar todo programa para interactuar con la interface del robot CREACION DE PROGRAMAS OTRO METODO POSIBLE DE PROGRAMAR Y ASIGNAR VARIABLES Otra manera viable de realizar el proceso de programacin, es interactuando directamente con el robot e ir asignando las variables aun sin haber realizado el listado del programa; esto permite el ir moviendo el robot con los comandos de

28

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

terminal o con el teach pendant e ir asignando la secuencia de variables que se utilizara en el programa; a su vez y puede ser de forma paralela, el ir creando el listado del programa conforme a los movimientos que se van realizando y a las variables que se van asignando. Para ejemplificar mejor este aspecto, realice el siguiente ejercicio: 1. Salga de la aplicacin actual que este presente en el controlador, por medio del comando exit en la pantalla de terminal, y cierre la aplicacion de nexo presente de la pantalla del programa robcomm3 por medio de seleccionar close app del menu application 2. Desde la pantalla de terminal, cree una nueva aplicacin que se llame curso por medio del comando ash curso y acepte la nueva creacin 3. mueva el robot a la posicin de ready 4. asigne una nueva variable directamente al controlador, por medio del comando new a (para asignar variables tipo cartesiano se agrega el simbolo de guion bajo _ , y para variables del tipo de presicin, el smbolo de numero # ) 5. asigne la variable b con el comando new _b 6. en la pantalla de terminal, teclee el comando list, para observar las variables existentes (observara que las variables aparecen precedidas del simbolo * , lo que indica que no han sido asignadas posiciones a estas variables) 7. mueva el robot a una posicin distinta con el comando joint 1,100 8. indique que esa posicion se le asignara a la variable a, por medio del comando here a 9. teclee de nuevo el comando list y observe 10. mueva el brazo a otra posicin, digamos joint 2,50 11. teclee de nuevo el comando list y observe 12. ahora abra una nueva pantalla de editor y nmbrela curso.r3 y teclee el siguiente programa: teachable cloc a,b main ready() move (a) move (b) ready() end main

29

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

13. cree una nueva aplicacin de nexo llamada curso.app 14. observe la pantalla de setup (setup del menu application) (tiene que estar los tres elementos basicos, fuente, aplicacion y nexo; de lo contrario repita los pasos anteriores) 15. corra el programa y observe DECLARACION DE VARIABLES TIPO ARREGLO (ARRAY) Un arreglo de variables es til por ejemplo cuando se van a realizar movimientos a posiciones secuenciales diferentes, o cuando se realizan operaciones complejas, o cuando se necesita guardar resultados en diferentes variables de manera secuencial, etc (depende del programador). y para definir estas variables, solo se define en la declaracin el nmero de localidades o diferentes valores va a contar dicha variable: teachable cloc [5] a, [5] b, c..... Etc REALICE LA SIGUIENTE PRCTICA: 1. del mismo ejercicio anterior, corrija la declaracin de variables por lo siguiente: teachable cloc [5] a teachable cloc b 2. corrija el listado del programa por lo siguiente: main ready() move (a[0]) move (a[1]) move (a[2]) move (a[3]) move (a[4]) move (b) ready()

30

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

end main 3. agregue esas 6 nuevas posiciones y salve el programa con otro nombre2.r3 4. cree la aplicacin en la terminal (primero salga de la aplicacin actual con el comando exit en terminal) 5. cree el nuevo nexo con una nueva aplicacin (primero salga de la aplicacin actual con close app del menu application) 6. defina nuevas posiciones para las variables 7. ejecute el programa y observe. PROGRAMACION DE MENSAJES, VELOCIDAD, RETARDOS Y OPERACION DEL GRIPPER Algunos comandos tiles que se utilizan comnmente son los siguientes: REFRESH el cual limpia y resetea o inicializa la memoria del controlador para evitar degradacin de los cdigos con basura. (en la pantalla de terminal), con esto nos aseguramos que los cambios realizados en el proceso de debugear o corregir un programa se actualicen segn lo deseado. LIST muestra todas las variables existentes en uso por la aplicacin actual y marca con * las que no se hayan asignado Delay(#milisegundos) til cuando se programan esperas definidas (en edicin de programas) finish() espera a que la instruccin anterior se realice completamente antes de proceder a ejecutar la siguiente

grip_open() abre el gripper grip_close() cierra gripper speed(0-99) cambia la razn de velocidad del robot y se expresa en porcentaje REALICE LA SIGUIENTE PRACTICA:

31

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

1. Realice el siguiente programa y slvelo con un nuevo nombre (recuerde salir y cerrar las aplicaciones actuales) teachable cloc a,b,c main ready() printf (moviendose a punto a\n) move (a) printf (espera de 5 segundos\n\n\n) delay(5000) grip_open() printf (moviendose a punto b\n) move (b) finish() speed(30) printf (aumentando la velocidad de operacin \n) move (c) finish() printf (se move a punto c y espera a que termine \n) printf (espera de 3 segundos \n) delay (3000) grip_close() printf (fin del programa y se va a posicin de ready \n) ready() end main 2. salve, compile, cree aplicacin, nexo, ejecute el programa y observe 3. haga modificaciones a su gusto y observe. CICLOS REPETITIVOS CICLO

for variable=xx to xx ....... end for

repeticin de secuencias del programa con numero finito de veces

32

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

REALICE LA SIGUIENTE PRACTICA: 1. Realice el siguiente programa: teachable cloc [5] a teachable cloc b int c main ready() for c=1 to 5 printf(realizando el ciclo: [{}]\n,c) move (a[0]) move (a[1]) move (a[2]) move (a[3]) move (a[4]) move (b) end for ready() end main 2. realice todo el proceso de enviar el programa y observe, no olvide el comando refresh

CICLO

goto etiqueta

REALICE LA SIGUIENTE PRACTICA: 1. sobre el mismo programa anterior, realice los siguientes cambios:

33

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

teachable cloc [5] a teachable cloc b main ready() regreso1:: move (a[0]) move (a[1]) move (a[2]) move (a[3]) move (a[4]) move (b) goto regreso1 end main 2. Ejecute el programa y observe Este modo de ejecutar programas aunque es posible no es recomendable bajo ciertas circunstancias, debido a que como se observ, la nica manera en este caso de salir del programa es utilizando los paros de emergencia o forzando el apagado del programa desde la pantalla de terminal utilizando la secuencia <CTRL+Z>. CICLO

loop

...... end loop

Otra herramienta til para realizar ciclos, es esta funcin, que aunque bsicamente es un ciclo incondicional, fcilmente puede utilizarse como un ciclo dependiente de cierta condicin, lo cual, se ver posteriormente. Otra manera de asignar valores a variables que no cambiarn su valor, y para una mejor comprensin al utilizarlas, es darle valores predeterminados a estas variables con nombres complejos definindolas desde el comienzo de los programas con la herramienta (.include) REALICE LA SIGUIENTE PRACTICA: 1. Cierre todas las aplicaciones y cree este nuevo programa: teachable cloc a,b,c,d .define alta 100 .define media 40 .define baja 10

34

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

main ready() loop speed(baja) move (a) speed(media) move (b) speed(alta) move (c) delay(5000) move(d) end loop end main 2. Salve, compile cree aplicacin y nexo y ensee al robot las nuevas posiciones 3. Ejecute el programa y observe 4. Realice modificaciones a su gusto y observe los cambios.

CICLOS CONDICIONALES
CICLO

if .........

end if

Una de las herramientas ms tiles en cualquier lenguaje de programacin, es el poder verificar el estado de cierta variable, condicin o estado de alguno de los parmetros asociados de que es capaz de manejar el ambiente o dispositivo a programar; para la creacin de ciclos condicionales con el ciclo loop, se puede verificar cierta condicin con la funcin if y si se cumple, agregar la funcin break, con la cual se podr salir del ciclo a la siguiente instruccin posterior al end loop. REALICE LA SIGUIENTE PRACTICA: 1. Modifique el programa anterior de la siguiente manera: teachable cloc a,b,c,d .define alta 100

35

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

.define media 40 .define baja 10 main ready() int e=0 loop speed(baja) move (a) speed(media) move (b) speed(alta) move (c) delay(5000) e=e+1 if e>5 break end if end loop move(d) delay(5000) ready() end main 2. aplique un refresh al controlador y compile y mande este nuevo programa; observe que el ciclo loop se ha convertido en un ciclo condicional 3. realice modificaciones y observe CICLO

while

..........

end while

Para este caso, la secuencia del programa se ejecuta repetitivamente hasta alcanzar cierta condicin, que puede ser un valor en especial de una variable o una seal digital de entrada REALICE LA SIGUIENTE PRACTICA:

36

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

1. Cierre aplicacin nexo y programa y cree un conjunto nuevo con este listado teachable a,b main int c=1 while c<5 ready() move (a) move (b) c=c+1 end while ready() end main 2. Ejecute el programa y observe 3. Realice algunos cambios y observe

CICLO

do

..........

until

REALICE LA SIGUIENTE PRACTICA: 4. Cierre aplicacin nexo y programa y cree un conjunto nuevo con este listado teachable a,b main int c=1 do ready() move (a) move (b) c=c+1 until c>5 ready() end main

37

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

5. Ejecute el programa y observe 6. Realice algunos cambios y observe

SUBRUTINAS
Otra caracterstica especial de este tipo de lenguajes, es la compilacin por mdulos o separada, lo que permite que se puedan definir subrutinas separadas del programa principal y utilizarse llamndolas cuando sea necesario; estas subrutinas por lo general contienen partes de un programa o secuencia fijos, es decir, que no varan aunque la secuencia de su utilizacin as como otras acciones se puedan controlar desde el programa principal. Para la utilizacin de subrutinas en un programa, es necesario incluirlas en las declaraciones que va a usar el programa principal por medio de la funcin .include tal como se muestra a continuacin; y el formato de los archivos que contengan las subrutinas, no deberan contener la funcin main, y en vez de esto, tener como encabezado y fin de las subrutinas, las sentencias sub nombre() y end sub respectivamente. REALICE LA SIGUIENTE PRACTICA: 1. Cierre aplicacin nexo y programa y cree un conjunto nuevo con este listado, que se llame sub1.r3 .include sub2.r3 .include sub3.r3 teachable cloc a,b main ready () move(a) finish() printf("movio a punto a y espera de 3 seg\n") delay(3000) finish() printf("ejecutando subrutina 2 y espera de 5 seg\n")

38

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

sub2() ;; ejecucion de subrutina 2 printf("termina la subrutina 2, mueve a b y espera de 3 seg\n") move(b) finish() delay(3000) finish() printf("ejecutando subrutina 3 y espera de 5 seg\n") sub3() printf("termina la subrutina 3, mueve a b y espera de 3 seg\n") move(b) finish() delay(3000) finish() ready() finish() printf("termina el programa\n") end main 2. Abra un nuevo editor y escriba la siguiente subrutina y slvela con el nombre de sub2.r3 sub sub2() teachable cloc c delay(5000) move(c) finish() printf("movio a c en subrutina 2 y espera de 3 seg\n") delay(3000) finish() end sub 3. De nuevo abra un nuevo editor y escriba la siguiente subrutina y slvela con el nombre de sub3.r3

39

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

sub sub3() teachable cloc d delay(5000) finish() move(d) finish() printf("movio a d en subrutina 3 y espera de 3 seg\n") delay(3000) finish() end sub 4. Ahora abra la pantalla de terminal, del men window, seleccione la opcin Tile; asegrese de haber encendido el robot y cree la aplicacin sub1 por medio del comando ash sub1 5. Del men Application seleccione New app y cree el nexo sub1.app 6. Asegrese de que en el setup aparezcan los tres elementos y compile el programa principal (sub1.r3) hasta que no aparezcan errores 7. mande al controlador el programa (send) 8. Ejecute el programa para que reconozca las variables a usar 9. Mueva el robot y grabe 4 diferentes puntos 10. ejecute el programa, realice algunas modificaciones y observe.

EJECUCIN DE SEGMENTO CON CONDICIN (CASE)


Algunas veces se hace necesario redirigir el flujo del programa para realizar alguna terea especfica dependiente de un valor de una variable, condicion o entrada digital, esto puede ser realizado con la funcin case. FUNCION

case

..........

of xx

REALICE LA SIGUIENTE PRACTICA 1. Cierre todas las aplicaciones y programas, y cree este programa nuevo. teachable cloc a,b,c,d main

40

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

int e=1 string[64] mensaje ready() loop printf("el contador es: {}\n",e) delay(6000) finish() case e of 1: mensaje = "caso de 1 paso a posicion a\n" printf(mensaje) move(a) finish() of 2,3,5: mensaje = "caso de 2,3 o 5 y paso a posicion b\n" printf(mensaje) move(b) finish() of 6 to 8: mensaje = "paso a posicion c, en los casos del 6 al 8\n" printf(mensaje) move(c) finish() of 9 to 10, 12 to 14, 16: mensaje = "posicion d cuando e es de 9 a 10, de 12 a 14, o 16\n" printf(mensaje) move(d) finish()

41

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

else mensaje = "caso indefinido, no hago nada\n" printf(mensaje) end case e=e+1 if e>17 break end if end loop ready() finish() printf("fin del programa.....adios\n") end main 2. salve con un nombre nuevo y abra las aplicaciones correspondientes, compile y asegrese de que en el setup aparezcan los tres elementos y compile el programa principal hasta que no aparezcan errores 3. mande al controlador el programa (send) 4. Ejecute el programa para que reconozca las variables a usar 5. Mueva el robot y grabe 4 diferentes puntos 6. ejecute el programa, realice algunas modificaciones y observe.

ENTRADAS Y SALIDAS
DISTRIBUCIN FSICA DE PUERTOS DE ENTRADAS Y SALIDAS DIGITALES Y CONECTORES PUERTO DE ENTRADAS / SALIDAS DIGITALES GPIO

42

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

El controlador C500C del robot cuenta con un juego de entradas y salidas digitales, con las cuales poder interactuar en tiempo real con el medio externo y poder monitorear o controlar dispositivos externos; este controlador cuenta con 16 entradas digitales opto aisladas, 4 salidas con contactos de relevador y 12 salidas opto aisladas. CONSIDERACIONES EN EL DIESO DE CIRCUITOS Si se va a usar el puerto GPIO, se deben tener en cuenta las siguientes consideraciones. Para los robots A255 y A465, se puede usar tanto la fuente interna de 24 VDC que provee el equipo o una externa que conecte al sistema La capacidad de corriente que puede manejar la fuente interna es de mximo 1 Ampere, por lo que si la aplicacion que se va a manejar es de mayor capacidad, use una fuente externa. Las salidas opto aisladas son de baja capacidad en corriente, manejan hasta 50 mA cada una de ellas. Las salidas relevadas masnejan hasta 3 A cada una. Todas las salidas de relevador, estn conectadas a un punto en comn, y estn protegidas por un relevador que se encuentra en el panel frontal. PRECAUCION.- Apague el interruptor principal del controlador antes de conectar cualquier alambre al controlador.

Los diagramas del patillaje correspondientes se muestran en las pginas siguientes:

REALICE LA SIGUIENTE PRACTICA

43

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

1. Aplique el comando shutdown now a la pantalla de terminal para apagar el robot, Cierre todas las aplicaciones y el programa robcomm3 y apague el controlador. 2. Del conector DD-50, conecte las terminales 1 y 3, o bien la 2 y 4, para utilizar la fuente interna de 24 volts de DC; tambin conecte las terminales 47 a la 49, o bien la 48 a la 50, para cerrar el lazo a tierra de los circuitos internos del GPIO 3. Conecte el cable tipo listn al conector DD-50 y por el otro extremo al controlador del robot 4. Encienda el controlador y abra la pantalla de terminal del robcomm3 5. abra cualquier aplicacin existente (ash xxxxx) de la pantalla terminal 6. Introduzca el comando input 1, haga lo mismo con las 16 entradas y observe. 7. Con mucho cuidado, conecte un alambre largo a la terminal 49 50 del conector DD-50 y a la terminal 5 del mismo; aplique el comando input 1 y oberve, retirelo de la terminal 5 y vuelva a verificar el estado de la entrada 1 y haga lo mismo con algunas otras entradas.
NOTA: TAL COMO SE OBSERVO, LA SALIDA SE HACE VALIDA (VALOR DE 1) CUANDO SE CONECTA A TIERRA LA ENTRADA CORRESPONDIENTE

8. Ahora, con la ayuda de un multmetro ajustado para medir voltaje de DC, en la escala que soporte al menos 24 VDC, conecte la terminal positiva del multmetro a la terminal 1 2 del conector DD-50, y la negativa a la terminal 21, observe la lectura del multmetro; ahora, aplique a la pantalla de terminal el comando output 1,1 (formato: output #salida, valor lgico) y observe; ahora el comando output 1,0 y note el cambio de estados de aprox. cero Volts a aprox. 24 VDC que es el voltaje de la fuente interna del controlador. Haga lo mismo con algunas salidas de la 2 a la 12.
NOTA: CUANDO SE USEN LAS SALIDAS DIGITALES, DE PREFERENCIA UTILICE YA SEA LA FUENTE INTERNA O UNA EXTERNA, DE MAXIMO 24 VDC Y LAS CARGAS O DISPOSITIVOS A ENCENDER (TAL COMO UN RELEVADOR) DEL MISMO VALOR DE VOLTAJE.

9. Para el caso de las salidas de la 13 a la 16, existe la diferencia de que estas son contactos de relevador, con un punto en comun. Para verificar, ajuste el multmetro para medir resistencia (si tiene la capacidad de tono audible cuando se detecta resistencia cercana a cero, actvela); con mucho cuidado, conecte una de las terminales del multmetro a la terminal 43 44 del conector DD-50, y la otra a la terminal 36 del DD-50; introduzca el comando output 13,1 y observe la lectura del medidor; despus de el comando output 13,0 y observe;

44

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

conecte ahora de la terminal 43 44 a la 35 y repita los dos comandos anteriores. Con estas herramientas, se pueden realizar programas mas complejos que involucren el uso de entradas y salidas digitales, para poder controlar dispositivos externos, o coordinar acciones determinadas dependientes de esos dispositivos, a ambas cuestiones. REALICE LA SIGUIENTE PRACTICA 1. Abra una pantalla de edicin de programas nuevos y teclee el siguiente programa: teachable cloc a,b,c main loop while input(16)==1 printf("activada la entrada 16 y espero seleccion de entrada\n") delay(5000) finish() if input(1)==1 move(a) finish() printf("entrada uno conectada, muevo posicion a\n") printf("y activo salida 13 por 5 segundos a\n") output (13,1) delay(5000) output_set (13,0) end if if input(2)==1 move(b) finish() printf("entrada dos conectada, muevo posicion b\n") printf("y espero a que active la entrada 3\n")

45

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

while input(3)==0 end while printf("entrada 3 pulsada, continuo con el programa\n") end if if input(4)==1 move(c) finish() printf("entrada cuatro conectada, muevo posicion c\n") end if if input(15)==1 printf("entrada 15 conectada, termino programa en 5 seg\n") delay(5000) finish() goto final end if end while printf("no esta activada la entrada 16 y espero 5 seg\n") delay(5000) end loop final:: printf("fin del curso...... felicidades y buen viaje\n") end main 2. Salve el programa, cree la aplicacin y el nexo, asigne las tres posiciones y ejecute el programa, siguiendo cuidadosamente el diagrama de conexiones y las instrucciones del instructor, si tiene cualquier duda, no proceda con el paso siguiente hasta estar seguro de lo que va a hacer. 3. Realice modificaciones y observe

46

CIM-ITL

APUNTES PARA OPERACIN Y PROGRAMACION DE ROBOT CRS A465

BIBLIOGRAFIA
MANUAL DE ROBOT CRS A465 (EN INGLES) INTERNET

47

CIM-ITL