Está en la página 1de 46

Operacin del Robot 6GL

INSTITUTO TECNOLGICO DE QUERTARO LABORATORIO DE INGENIERA INDUSTRIAL

MANUAL DE OPERACIN DEL ROBOT 6GL

Revisin Octubre 2008

Operacin del Robot 6GL

NDICE

CAPITULO 1. INTRODUCCIN........................................................................................ 3 1.1 PARTES QUE INTEGRAN EL ROBOT ................................................................... 3 1.2 CARACTERSTICAS DE LOS ROBOTS ARTICULADOS ...................................... 3 1.3 INSTALACIN DE LOS COMPONENTES Y EL SOFTWARE................................ 4 CAPITULO 2. AJUSTES / INSTALACIN / SEGURIDAD ................................................ 4 CONSIDERACIONES DE SEGURIDAD........................................................................ 4 FUNCIONES DE LAS TECLAS DEL TEACH PENDANT. ................................................ 6 SISTEMAS DE COORDENADAS QUE MANEJA EL ROBOT......................................... 9 MANEJO DE ROBOT........................................................................................................ 9 CAPITULO 3. LENGUAJE DE PROGRAMACIN Y OPERACIN DEL ROBOT .......... 14 CAPITULO 4. PROGRAMACION.................................................................................... 28 CAPITULO 5. ENTRADAS Y SALIDAS .......................................................................... 43

Operacin del Robot 6GL

CAPITULO 1. INTRODUCCIN

1.1 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 )

1.2 CARACTERSTICAS DE LOS ROBOTS ARTICULADOS


De los robots de la marca se tienen tres modelos, los cuales son:

ROBOT A255

Grados libertad Alcance

de 5 559 mm 1.0 kg.

Carga nominal

ROBOT A465

Gradosde libertad Alcance Carga nominal

6 710 m 2.0 kg.

ROBOT F3

Grados de libertad Alcance Carga nominal

6 710 m m 3.0 kg. 3

Operacin del Robot 6GL

1.3 INSTALACIN DE LOS COMPONENTES Y EL SOFTWARE


Para el correcto funcionamiento del robot es necesario realizar una buena instalacin fsica de todos sus componentes as como tambin de un correcta instalacin del software. Primero se recomienda, realizar la instalacin del software en la terminal que sea asignada para el robot. Todos los robots traen su software en CD, en donde la instalacin es sencilla. Los pasos para la instalacin son los siguientes: 1. Se lee el CD de instalacin y se encuentra el comando INSTALAR( este comando instala el sistema operativo del robot.). 2. A continuacin se procede a instalar el ROBCOMM3 el cual es el lenguaje de programacin del robot. Para conectar la PC al robot es necesario configurar el puerto serial COM1 a 57600 bps. Para ello es necesario desde el programa Robcomm3 configurar la velocidad de la siguiente manera: Se escoge el tipo de controlador del robot a utilizar, para este caso el C500, despus, en la ventana comsettings se selecciona COM1 y la velocidad de 57600. Si el robot viene en la posicin de empaque ser necesario desbloquear el robot, para lo cual es necesario 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.

CAPITULO 2. AJUSTES / INSTALACIN / SEGURIDAD

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 del brazo robot. 4

Operacin del Robot 6GL

Los paros de emergencia se encuentran conectados en circuitos serie, para que de esta manera al ser activado cualesquiera de ellos, rompe el circuito y se interrumpe la 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 aplica 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 motores del brazo, pero no de forma inmediata, es decir , ser necesario pulsar el botn ARM POWER 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. 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 fabrica. Poner el robot en HOME se puede hacer desde el teach pendant o bien desde la PC. Antes de inicializar el robot debemos liberarlo para ponerlo entre las marcas que trae cada eje y despus aplicar el comando HOME.

Operacin del Robot 6GL

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

F1 , F2 , F3 , F4 A estas teclas se les puede 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 contienes los smbolos de "+ " y " - ". Se utilizan para mover el robot de una manera manual, 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.

Operacin del Robot 6GL

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 cero, 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 programada previamente. LIMP/NO LIMP ALL Estas teclas se utilizan para seleccionar el tipo de movimiento limp. LIMP ALL libera todas las posiciones del robot para que se puedan mover libremente con la mano. NO LIMP ALL retoma el control de todos los ejes del robot para que mantengan su posicin. MOVE Se utiliza para realizar movimientos en el robot de manera manual y puede ser en dos formas. La forma 005 se pueden realizar movimientos simples, y la forma 006 se pueden realizar movimientos de arreglos. 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. INS/DEL/Pack Array Estas teclas se utilizan para insertar dentro, borrar desde y compactar un arreglo. SPEED DOWN/SPEED UP Estas teclas son usadas para incrementar o reducir la velocidad de movimiento de los ejes del robot. 7

Operacin del Robot 6GL

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 p e n d a n t.

Operacin del Robot 6GL

SISTEMAS DE COORDENADAS QUE MANEJA EL ROBOT Existen cuatro tipos 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 , R, Z MOVIMIENTO ARTICULACIONES PITCH, MOVIMIENTOS RELATIVOS A LA BASE DEL ROBOT MOVIMIENTO CILNDRICO DONDE ES EL GIRO, R MANTIENE LA HORIZONTAL Y Z LA VERTICAL.

CYL

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. 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 o de JOG. MANEJO DE ROBOT 1. 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. 9

Operacin del Robot 6GL 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 a ce p t a e n e l co m a n d o d e l t e a ch p e ndant. 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. 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.

10

Operacin del Robot 6GL

2. MOVIENDO EL ROBOT DESDE LA PC Aplicacin Ash La aplicacin ASH nos permite enviarle comandos al robot para que este los ejecute, para poder trabajar con la aplicacin ASH debemos de entrar primeramente al ROBCOMM3, luego pulsar el icono TERMINAL.( se debe de verificar que el control sea pasado a la PC ). Una vez que estemos en la PC y abierto el programa del robot, debemos de abrir una aplicacin de la siguiente forma: $ a s h pr ue ba 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: pr ue ba > 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 # ngulo, mueve una unin a la vez, en donde # indica el nmero de la unin y el ngulo es en grados. wx distancia, mueve el robot sobre la direccin del eje X por la distancia especificada. 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. Las distancias pueden ser en milmetros o pulgadas. Otros comandos de operacin en el modo ash son los siguientes:

11

Operacin del Robot 6GL

COMANDOS DE OPERACIN DEL MODO ash joint articulacin, grados speed valor 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 worlden 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 Coordenadas cartesianas Localizacin en funcin de pulsos Muestra el valor de la variable Muestra los puntos guardados Crea una variable de nombre y tipo indicado. Asigna un valor a la variable que se indique Borra la variable que se le indique. Establece una salida al valor Mueve a una distancia del punto indicado con respecto al gripper. Se aleja del punto actual respecto al gripper. Establece la posicin del centro de gravedad .

w0 w1 wx,wy,wz xrot, yrot, zrot ready cready tx,ty,tz yaw,pitch,roll go gc here name cloc ploc # print nombre list new tipo name set name=valor erase output salida, valor appro nombre,distancia depart distancia tool x,y,z,jaw,pitch,roll

12

Operacin del Robot 6GL 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 d e sa d a 3. En el prompt escribir el comando here variable ( here a) 4. repetir los pasos para cuantas posiciones se necesiten

13

Operacin del Robot 6GL

CAPITULO 3. 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. se usa esta interfase para tener una comunicacin entre la computadora y el controlador. Abriendo el ROBCOMM3

Desde el men inicio seleccionar programas Encontrar ROBOTICS Seleccionar Robcomm3

Con lo anterior ya se esta dentro del programa y con ello podemos utilizar los iconos que nos muestra el software, podemos abrir la ventana del editor y abriendo un nuevo documento.

14

Operacin del Robot 6GL

Nombrar y salvar un programa

Dentro del men file seleccionar save as Escribir el nombre que se desee Hacer clic en ok

15

Operacin del Robot 6GL Creando una nueva aplicacin

Una vez salvado el archivo, ir a la ventana del men aplicacin Seleccionar new app El nombre de la aplicacin ser el mismo que el nombre del archivo fuente Regresar al men de la aplicacin y seleccionar setup Todas las lneas deben de ser llenadas y aplicar ok.

16

Operacin del Robot 6GL

E s c r i bi e ndo una a pl i c a c i n Cada programa en RAPL3 debe de tener una construccin de bloque "main.....end main"como 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 y un guin bajo en frente del nombre de la locacin. ready(): este comando mueve el brazo a la posicin ready. El programa puede quedar de la siguiente forma: main teachable cloc a,b move (-a) move (_b) ready() end main

17

Operacin del Robot 6GL 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.

18

Operacin del Robot 6GL

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.

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.

19

Operacin del Robot 6GL 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:

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 mousese despliega un men de trabajo donde se selecciona send.

20

Operacin del Robot 6GL

Sobrescribiendo posiciones con el teach pendant 1. 2. 3. 4. 5. 6. 7. 8. 9. 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" 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:

21

Operacin del Robot 6GL Desde el teach pendant, se selecciona app, luego se selecciona la aplicacin run y se confirma la ejecucin. Desde la PC. Dentro del Robcomm3 y una vez que aparece el prompt se selecciona la aplicacin que fue grabada, cuando aparece la aplicacin se teclea run y se le da enter ejecutndose asi el programa.

2. SISTEMAS DE COORDENADAS Modo cilndrico Para mover el robot en modo cilndrico solo se puede hacer desde el teach pendant. El sistema de coordenadas cilndrico esta definido por: 1. Una rotacin alrededor del eje Z 2. Una distancia alejada del eje Z 3. Una distancia ( altura) a lo largo del eje Z

Sistema coordenado tool Este sistema coordenado esta directamente relacionado a el flanco del plato de la herramienta en el final del brazo del robot. Para la serie A de los robots, el eje que apunta hacia fuera del centro del plato de herramienta es el eje X de la herramienta. Para la serie F el eje Z apunta hacia fuera del centro del plato de la herramienta. Para que el robot se mueva en este modo, es necesario utilizar el teach pendant. Si se quiere mover el robot sin el uso del teach pendant, el robot se va a mover en el ambiente ash, los comandos en ash para mover el robot en modo tool son similares a los comandos en modo world y se escriben de la siguiente forma: tx distancia ty distancia tz distancia estos comandos mueven al robot a una posicin relativa a la herramienta

22

Operacin del Robot 6GL 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 co m a n d o s. 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. grip_finish(). Mantiene la ejecucin del programa, cuando encuentra el comando grip_finish() hasta que el movimiento del gripper ha terminado. 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 3. En la locacin b abrir gripper

Comandos aproach y depart (acercarce y retirarce) 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,40) el robot se va a aproximar a la locacin "a" 4 centmetros. Desde ash la sintaxis cambia ya que los valores no se ponen entre los parntesis a s h a ,4 0

23

Operacin del Robot 6GL 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(20) retira el robot de la posicin en que se encuentra 2 cm. Desde ash de pa r t 2 0 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(%) La velocidad en el movimiento de una trayectoria puede ser variable de acuerdo a la longitud de la trayectoria, 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.

24

Operacin del Robot 6GL V a r i a bl e s

S m bol o Ninguno % $ Guin bajo (_) #

Ti po 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 locacin Poner un nombre igual a una Constante Usar contadores Definir arreglos e t c.

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. Nmeros y guin bajo pueden ser utilizados como primer carcter en un nombre. 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. 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 variables 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 A_VALOR=5 Rapl3 soporta la asignacin de valores en codigo ASCII para caracteres, usando el carcter actual encerado entre comillas simples, ejemplo: 25

Operacin del Robot 6GL

Char="A" Variables del tipo teachable Las variables de este tipo son aquellas que son declaradas en el programa Rapl3 y que an no les ha sido asignado valor. Para crear este tipo de variables, se debe de usar la palabra teachable antes de la variable que se esta declarando. La asignacin de la variable va a ser suministrada por el usuario antes de correr el programa. Las variables teachable son declaradas al comienzo del programa principal o bien en un subprograma. Si la variables es declarada como variable global, todos los subprogramas y el programa principal de cualquier archivo van a compartir el valor de esas variables, lo cual no es muy recomendable. Este tipo de variables no pueden ser declaradas y a la vez asignarles un valor o inicializarlas. Las variables teachables pueden ser de cualquier tipo, si no se declara el tipo por default se declara cloc(cartesiana) y ploc ( presicin ). Movimiento en lnea recta Este tipo de movimiento mantiene el centro de la herramienta con movimiento en lnea recta. 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.

26

Operacin del Robot 6GL Imprimiendo en pantalla 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, etc. El comando mas 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

27

Operacin del Robot 6GL CAPITULO 4. 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...... pl oc

i nt i , a 1 . . . . a x x , 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: ma in ;; 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() e nd m a in

;; 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

28

Operacin del Robot 6GL

CREACION DE PROGRAMAS Los pasos para la creacin de algn programa son los siguientes: 1. 2. 3. 4. 5. 6. 7. 8. abrir el editor de texto (icono de hoja nueva o desde el men File --Open Se recomienda tener las pantallas de editor y terminal abiertas crear el listado salvar el programa con un nombre definido con extensin .r3 en un directorio deseado (nombre.r3, el programa no lo hace automticamente) compilar el programa (icono, men Application, o botn derecho del ratn) crear una aplicacin con el mismo nombre del programa fuente en la pantalla de terminal (ash) (nombre) Crear un nexo entre el programa fuente y la aplicacin por medio de New app del men application, la cual debe tener el mismo nombre y proceder del mismo directorio que el programa fuente, (nombre.app) Para verificar, en el men apliccation, seleccionar setup, el cual en este punto debe contener los 3 tipos de archivos creados: nombre.r3 nombre.app nombre "programa fuente" "archivo de enlace" "aplicacin de terminal"

REALICE LA SIGUIENTE PRACTICA: 1. 2. 3. encienda el controlador del robot y inicialcelo (home, ready, y pase el control a la PC) abra la interface robcomm3 y abra las pantallas de terminal y de nueva edicin (new del men file) en la pantalla del editor, escriba lo siguiente: teachable cloc a,b main ready() move (a) move (b) ready() end main 4. 5. salve el programa (save as del men file) en el directorio de ejemplos con un nombre cualquiera y extension r3 pase a la pantalla de terminal y cree la aplicacin correspondiente en el controlador (ash nombre) 29

Operacin del Robot 6GL 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. el controlador al no encontrar una aplicacin con ese nombre, pregunta si desea crearla, para aceptar teclee "y" (yes) del menu application, seleccione new app, y asgnele el mismo nombre con extensin app y en el mismo directorio (nombre.app) verifique que esten presentes los tres elementosa bsicos del programa (men application, opcin setup); en caso contrario realice los pasos del 4 en adelante hasta lograr que aparezcan) compile el archivo (application -- compile) o botn derecho mande la aplicacin al controlador (application -- send) o botn derecho en la pantalla de terminal, ejecute el programa (run) al no haber grabado posiciones, el controlador avisa para que las variables de posicin sean definidas. con los comandos de terminal mueva al robot a una posicin cualquiera, y asigne esa posicin a la variable "a "(here a) haga lo mismo para la variable "b" corra de nuevo el programa y observe Haga algunos agregados (mas posiciones, comandos del gripper, etc), compile y mande la aplicacin corregida y observe

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 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 Desde la pantalla de terminal, cree una nueva aplicacin que se llame curso por medio del comando "ash curso" y acepte la nueva creacin mueva el robot a la posicin de ready 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 "#" ) asigne la variable b con el comando "new _b" 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) mueva el robot a una posicin distinta con el comando "joint 1,100" 30

2. 3. 4.

5. 6.

7.

Operacin del Robot 6GL 8. 9. 10. 11. 12. indique que esa posicion se le asignara a la variable a, por medio del comando "here a" teclee de nuevo el comando "list" y observe mueva el brazo a otra posicin, digamos "joint 2,50" teclee de nuevo el comando "list" y observe 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 13. 14. 15. cree una nueva aplicacin de nexo llamada curso.app 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) 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 PRACTICA: 1. del mismo ejercicio anterior, corrija la declaracin de variables por lo siguiente:

teachable cloc [5] a teachable cloc b 31

Operacin del Robot 6GL 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 (a[5]) move (b) ready() end main 3. 4. 5. 6. 7. agregue esas 6 nuevas posiciones y salve el programa con otro nombre2.r3 cree la aplicacin en la terminal (primero salga de la aplicacin actual con el comando exit en terminal) cree el nuevo nexo con una nueva aplicacin (primero salga de la aplicacin actual con close app del menu application) defina nuevas posiciones para las variables ejecute el programa y observe.

COMENTARIO: Es recomendable cambiar y realizar todo el proceso de creacin de un programa cada vez que se realicen cambios a este, ya que el controlador no acepta los cambios realizados, sobre todo cuando se cambian o agregan variables de diferente tipo a los programas. Se debe tener especial cuidado cuando se realicen cambios a los programas y verificar efectivamente que las correcciones realizadas se lleven a cabo. Una manera de seguir con los mismos programas fuente y aplicaciones cuando se hacen correcciones en las variables, es el eliminarlas del controlador completamente y reasignar las posiciones de todas las variables, o las que se hayan corregido al menos con el comando "erase <nombre de variable>" 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) LI S T muestra todas las variables existentes en uso por la aplicacin actual y marca con * las que no se hayan asignado

32

Operacin del Robot 6GL Delay(#milisegundos) til cuando se programan esperas definidas (en edicin de programas) finish() grip_open() grip_close() speed(0-99) espera a que la instruccin anterior se realice completamente antes de proceder a ejecutar la siguiente abre el gripper cierra gripper cambia la razn de velocidad del robot y se expresa en porcentaje

REALICE LA SIGUIENTE PRACTICA: 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. 3. salve, compile, cree aplicacin, nexo, ejecute el programa y observe haga modificaciones a su gusto y observe. 33

Operacin del Robot 6GL CICLOS REPETITIVOS CICLO

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

repeticin de secuencias del programa con numero finito de veces 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 f or ready() end main 2. realice todo el proceso de enviar el programa y observe

CICLO

goto etiqueta

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

34

Operacin del Robot 6GL

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 main

35

Operacin del Robot 6GL ready() loop speed(baja) move (a) speed(media) move (b) speed(alta) move (c) delay(5000) move(d) end loop end main 2. 3. 4. Salve, compile cree aplicacion y nexo y ensee al robot las nuevas posiciones Ejecute el programa y observe 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 .define media 40 .define baja 10 main ready() int e=0

36

Operacin del Robot 6GL 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. 3. aplique un refresh al controlador y compile y mande este nuevo programa; observe que el ciclo loop se ha convertido en un ciclo condicional 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: 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

37

Operacin del Robot 6GL end while ready() end main 2. 3. Ejecute el programa y observe Realice algunos cambios y observe do

CICLO

..........

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 5. 6. Ejecute el programa y observe 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,

38

Operacin del Robot 6GL 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") 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 39

Operacin del Robot 6GL

delay(5000) move(c) finish() printf("movio a c en subrutina 2 y espera de 3 seg\n") delay(3000) finish() e n d su b 3. De nuevo abra un nuevo editor y escriba la siguiente subrutina y slvela con el nombre de sub3.r3 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() 4. 5. 6. 7. 8. 9. 10. e n d su b 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 Del men Application seleccione New app y cree el nexo sub1.app Asegrese de que en el setup aparezcan los tres elementos y compile el programa principal (sub1.r3) hasta que no aparezcan errores mande al controlador el programa (send) Ejecute el programa para que reconozca las variables a usar Mueva el robot y grabe 4 diferentes puntos 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 40

Operacin del Robot 6GL 1. Cierre todas las aplicaciones y programas, y cree este programa nuevo. teachable cloc a,b,c,d main int e=1 string[64] mensaje ready() loop printf("el contador es: {}\n",e) delay(6000) finish() ca se e of 1: mensaje = "caso de 1 paso a posicion a\n" printf(mensaje) move(a) finish() o f 2 ,3 ,5 : mensaje = "caso de 2,3 o 5 y paso a posicion b\n" printf(mensaje) move(b) finish() o f 6 to 8 : mensaje = "paso a posicion c, en los casos del 6 al 8\n" printf(mensaje) move(c) finish() o f 9 to 1 0 , 1 2 to 1 4 , 1 6 : mensaje = "posicion d cuando e es de 9 a 10, de 12 a 14, o 16\n" printf(mensaje) move(d) finish() else mensaje = "caso indefinido, no hago nada\n" 41

Operacin del Robot 6GL printf(mensaje) e n d ca se 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 mande al controlador el programa (send) Ejecute el programa para que reconozca las variables a usar Mueva el robot y grabe 4 diferentes puntos ejecute el programa, realice algunas modificaciones y observe.

3. 4. 5. 6.

42

Operacin del Robot 6GL CAPITULO 5. ENTRADAS Y SALIDAS DISTRIBUCIN FSICA DE PUERTOS DE ENTRADAS Y SALIDAS DIGITALES Y CONECTORES PUERTO DE ENTRADAS / SALIDAS DIGITALES GPIO 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:

43

Operacin del Robot 6GL REALICE LA SIGUIENTE PRCTICA 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. 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 Conecte el cable tipo listn al conector DD-50 y por el otro extremo al controlador del robot Encienda el controlador y abra la pantalla de terminal del robcomm3 abra cualquier aplicacin existente (ash xxxxx) de la pantalla terminal Introduzca el comando input 1, haga lo mismo con las 16 entradas y observe. 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.

2.

3. 4. 5. 6. 7.

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; conecte ahora de la terminal 43 44 a la 35 y repita los dos comandos anteriores.

44

Operacin del Robot 6GL 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") 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 45

Operacin del Robot 6GL 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. Realice modificaciones y observe

3.

46