Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA
Contenido del Curso Operacin y Comunicacin de los Robot CRS
CAPITUO I PARTES !UE I"TE#RA" E RO$OT 1. Elementos que integran el equipo 2. Caractersticas de los robots articulados 3. Instalacin de los componentes y del sot!are ". Consideraciones de seguridad. CAPITUO II %U"CIO"ES DE AS TECAS DE TEACH PE"DA"T 1. #eclas del #eac$ %endant 2. Sistemas de coordenadas que mane&a el Robot 3. 'o(imiento del Robot ". )rabado de posiciones con el teac$ pendant *. +plicacin +S, -. )rabado de locaciones desde +S, en la %C CAPITUO III E"#UA&E DE PRO#RA'ACI(" ) OPERACI(" DE RO$OT 1. Introduccin al Robcomm3 2. Sistemas de coordenadas 3. +plicaciones ". Comandos relacionados con el gripper *. Comandos de (elocidad -. .eclaracin de (ariables /. #ipos de mo(imiento CAPITUO I* PRO#RA'ACIO" 1. Estructura de los programas 2. Creacin de programas 3. .einicin de (ariables tipo arreglo 0arrays1 ". %rogramacin usando mensa&es2 cambios de (elocidad2 retardos y operacin del gripper *. Ciclos repetiti(os -. Ciclos condicionales /. Subrutinas 3. E&ecucin de segmento con condicin 0case1 CAPITUO * E"TRADAS ) SAIDAS 1. .istribucin sica de puertos de entradas y salidas digitales y conectores 2. %rogramacin utili4ando puertos '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CAPITUO I PARTES !UE I"TE#RA" E RO$OT +, a- parte- ./e inte0ran el robot -on la- -i0/iente-1 <ra4o Robot Controlador 0 para este caso el C*==C1 #eac$ pendant serial #erminal0 %C1 Cables umbilicales 0 control y potencia 1 2, CARACTER2STICAS DE OS RO$OTS ARTICUADOS .e los robots de la marca CRS se tienen tres modelos2 los cuales son> RO$OT A255 RO$OT A465 RO$OT %3 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo )rados de libertad * +lcance **? mm Carga nominal 1.= @g. )rados de libertad - +lcance /1= mm Carga nominal 2.= @g. )rados de libertad - +lcance /1= mm Carga nominal 3.= @g. 2 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA 3, I"STAACI(" DE OS CO'PO"E"TES ) E SO%T4ARE %ara el correcto uncionamiento del robot es necesario reali4ar una buena instalacin sica de todos sus componentes as como tambi7n de un correcta instalacin del sot!are. %rimero se recomienda2 reali4ar la instalacin del sot!are en la terminal que sea asignada para el robot. #odos los robots CRS traen su sot!are en C.2 en donde la instalacin es sencilla. :os pasos para la instalacin son los siguientes> 1. Se lee el C. de instalacin y se encuentra el comando I8S#+:+R0 este comando instala el sistema operati(o del robot.1. 2. + continuacin se procede a instalar el RO<CO''3 el cual es el lengua&e de programacin del robot. %ara conectar la %C al robot es necesario conigurar el puerto serial CO'1 a */-== bps. %ara ello es necesario desde el programa Robcomm3 conigurar la (elocidad de la siguiente manera> Se escoge el tipo de controlador del robot a utili4ar2 para este caso el C*==2 despu7s2 en la (entana comsettings se selecciona CO'1 y la (elocidad de */-==. Si el robot (iene en la posicin de empaque ser9 necesario desbloquear el robot2 para lo cual es necesario aplicar el comando :I'%2 el cual lo libera del bloqueo y se puede manipular manualmente. Se debe tener cuidado no aplicar este comando sin tener debidamente su&etado el Robot ya que puede surir alg6n daAo debido al impacto que este puede tener. +, CO"SIDERACIO"ES DE SE#URIDAD, El controlador y sus componentes cuentan con paros de emergencia que se distinguen 9cilmente. Es importante (eriicar antes de encender el robot por primera (e4 que estos paros de emergencia no se encuentren acti(ados2 ya que al acti(arse un paro de emergencia se corta la energa del bra4o robot. :os paros de emergencia se encuentran conectados en circuitos serie2 para que de esta manera al ser acti(ado cualesquiera de ellos2 rompe el circuito y se interrumpe la energa del bra4o y en este se acti(an al instante los renos o bloqueos de los e&es2 lo cual e(ita que el robot se mue(a por alguna inercia o por la gra(edad. #ambi7n el sot!are aplica se acti(a y como medida de seguridad disminuye la (elocidad de los e&es a CERO en un perodo muy r9pido de tiempo2 lo cual contribuye a no tener mo(imientos bruscos del bra4o robot. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Bna (e4 que se restablece un paro de emergencia2 la energa se restablece a los motores del bra4o2 pero no de orma inmediata2 es decir 2 ser9 necesario pulsar el botn +R' %OCER del controlador del robot. El controlador C*==< esta pro(isto de una entrada para paros de emergencia2 de tal orma que en un sistema se pueden instalar el n6mero de paros de emergencia eDternos que sean necesarios y con ello garanti4ar la seguridad2 ya que el controlador es el cerebro del robot. Se debe considerar que los paros de emergencia que se conecten al controlador 6nicamente detendr9n al robot. El controlador no tiene salida de paro de emergencia lo cual implica que al ser acti(ado un paro de emergencia del robot2 este no podr9 parar el sistema en el cual este interactuando. El teac$ pendant posee un botn de paro de emergencia tambi7n. El teac$ pendant cuenta tambi7n con un s!itc$ de seguridad en la parte lateral y el cual debe de estar presionado cuando se este traba&ando con el robot usando este control. Este s!itc$ o palanca de seguridad tiene tres posiciones 11 abierta2 21 cerrada y 31 sobrepresionada. :os mo(imientos que $agamos con el robot solo ser9n posibles manteniendo la palanca en la posicin 2 0 cerrada 1. Si la palanca se encuentra en cualquiera de las otras 2 posiciones. El bra4o robot slo puede ser mo(ido por uno de los dos puntos de control que tiene2 es decir 2 si esta acti(ado el teac$ pendant solo este tendr9 el control del robot. %ara poder usar la %C como controlador2 es necesario pasar el control a la terminal y des$abilitar el teac$ pendant. El mismo procedimiento ser9 necesario reali4ar para ceder el control desde la %C $acia el teac$ pendant. Cuando el robot se enciende es necesario ponerlo en la posicin de ,O'E2 esto con la inalidad de que el robot este colocado en sus reerencias de abrica. %oner el robot en ,O'E se puede $acer desde el teac$ pendant o bien desde la %C. +ntes de iniciali4ar el robot debemos liberarlo para ponerlo entre las marcas que trae cada e&e y despu7s aplicar el comando ,O'E. CAPITUO II %U"CIO"ES DE AS TECAS DE TEACH PE"DA"T. +, TECAS DE TEACH PE"DA"T '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo " Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA F1,F2,F3,F4 + estas teclas se les puede asignar una uncin2 la cual se indicar9 en la lnea del men6 de la pantalla actual2 numeradas del 1 al " respecti(amente. ESC Esta tecla sir(e como una salida2 paro o para cancelar alguna uncin seleccionada2 tambi7n nos lle(a al men6 anterior. :a teclas ESC nos permite parar un programa que se este e&ecutando2 parando el robot y terminando el programa. Cuando tenemos alg6n error de una lnea que se esta editando2 con ESC podemos cancelar la edicin y empe4ar de nue(o. TECLAS DE EJES Son teclas que se encuentran grabadas por lec$as y letras y adem9s contienes los smbolos de EF E y E G E. Se utili4an para mo(er el robot de una manera manual2 cada par de teclas opera un e&e del robot. %ara el mo(imiento :I'%2 la tecla que contiene el signo E F E libera el e&e que corresponde a la tecla y la tecla con el signo E G E retoma el control de la unin liberada. TECLAS DEL GRIPPER Estas teclas se utili4an para abrir y cerrar el gripper de manera manual '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo * Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA HOME Y READY :a tecla ,O'E alinea el robot a su posicin de cero2 es necesario mantenerla presionada $asta que el robot termine de e&ecutar la instruccin. :a tecla RE+.H mue(e al robot a una posicin de seguridad o inicio programada pre(iamente. LIMP/NO LIMP ALL Estas teclas se utili4an para seleccionar el tipo de mo(imiento limp. :I'% +:: libera todas las posiciones del robot para que se puedan mo(er libremente con la mano. 8O :I'% +:: retoma el control de todos los e&es del robot para que mantengan su posicin. MOVE Se utili4a para reali4ar mo(imientos en el robot de manera manual y puede ser en dos ormas. :a orma ==* se pueden reali4ar mo(imientos simples2 y la orma ==- se pueden reali4ar mo(imientos de arreglos. UP/DOWN INDEX Estas teclas aumentan o disminuyen de uno en uno el n6mero del ndice mostrado en un arreglo. TYPE INDEX Con esta tecla se puede mostrar o rescribir un ndice de un arreglo. FIRST/LAST %ermite recibir el primero o el 6ltimo ndice de un arreglo. INS/DEL/Pac A!!a" Estas teclas se utili4an para insertar dentro2 borrar desde y compactar un arreglo. SPEED DOWN/SPEED UP Estas teclas son usadas para incrementar o reducir la (elocidad de mo(imiento de los e&es del robot. SHIFT '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo - Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Se utili4a para escribir el car9cter denotado en la parte superior de una tecla alab7tica. ENTER Esta tecla da entrada a toda la inormacin que se este mane&ando en el teac$ pendant. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo / Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA 2, SISTE'AS DE COORDE"ADAS !UE 'A"E&A E RO$OT EDisten cuatro tipo de coordenadas que mane&a el robot. Si el robot no $a sido puesto en $ome solo podr9 utili4ar la coordenada 5OI8#.
TIPODE COORDE"ADA E&ES 'O*I'IE"TO 5OI8# 122232"2*2-20 /231 +R#ICB:+CIO8ES COR:. I2H2J2 H+C2 %I#C,2 RO:: 'OKI'IE8#OS RE:+#IKOS + :+ <+SE .E: RO<O# CH: Q2 R2 J 'OKI'IE8#O CI:L8.RICO .O8.E Q ES E: )IRO2 R '+8#IE8E :+ ,ORIJO8#+: H J :+ KER#IC+:. MODO JOINT. Este comando mue(e cada uno de los e&es con las teclas correspondientes2 es el 6nico modo que se puede utili4ar antes de poner en ,O'E al robot. MODO WORLD. El origen de este modo es el centro de la base del robot2 la coordenada J se eDtiende (erticalmente $acia arriba de la base del robot2 la coordenada H se eDtiende $acia el lado derec$o2 y la coordenada I se eDtiende $acia el rente del robot. En cada tipo de mo(imiento se puede incrementar o disminuir la (elocidad del robot2 con las teclas del teac$ pendant. #ambi7n cuando se mue(e el robot manualmente se debe de seleccionar un tipo de mo(imiento2 que puede ser2 de (elocidad o de 5O). 3, 'O*I'IE"TO DE RO$OT %or medio del teac$ pendant y 6nicamente reali4ando mo(imientos indi(iduales en cada uno de los e&es2 se pueden reali4ar de la siguiente manera> 1. Seleccionar ;1 que son las aplicaciones del robot. 2. .entro de las aplicaciones podemos re(isar $asta encontrar test. 3. %resionar ;1 para seleccionar test 0 sel1 ". %resionar ;3 para seleccionar el tipo de mo(imiento2 comen4ando con la (elocidad de mo(imiento de los e&es. *. Con ;" podemos seleccionar el tipo de mo(imiento en donde tenemos las opciones (istas anteriormente '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA -. Con las teclas de mo(imiento que contienen las lec$as podemos empe4ar a dar mo(imiento al robot. %odemos estar probando los tipos de mo(imiento del robot as como las dierentes (elocidades2 para obtener dominio del bra4o robot. Es importante que el robot tenga locaciones especiicas2 por lo que es necesario grabar cada una de las locaciones que nosotros creamos pertinentes2 o bien que alg6n proceso determinado no lo eDi&a. Co5o 0rabar po-icione- del robot de-de el teac6 pendant 1. Como primer paso se i&a el robot en la posicin que queremos grabar y se acepta en el comando del teac$ pendant. 2. En el teac$ pendant se presiona la tecla ;1 y aparece 0(ar12 lo cual nos indica que debemos insertar una (ariable a esa posicin. 3. .ebemos de insertar la (ariable que nosotros asignemos a la posicin en donde podemos asignar una letra. ". En el paso anterior aparecer9 en la pantalla Kar Create indic9ndonos el nombre que le asignamos a la (ariable. Es necesario presionar ;1 0ma@e1 para crear o grabar la nue(a posicin. *. Con ;1 0 sel 1podemos seleccionar una nue(a (ariable -. 'o(er el robot a otra locacin que se desee guardar /. %resionar ;1 para grabar la posicin en la tabla de (ariables. %ara determinar m9s locaciones se deben de repetir los pasos anteriores. Saliendo del teac6 pendant 6acia la co5p/tadora %ara salir del teac$ pendant se empie4a a presionar la tecla ESC $asta llegar a la pantalla donde apare4ca la pregunta2 que nos inorma si queremos salir del pendant donde tenemos que deinir el SI o el 8O2 si es SI el control pasar9 a la computadora2 si es 8O se queda el control en el #eac$. Saliendo de la co5p/tadora 6acia el teac6 En la terminal del RO<CO''3 aparecer9 un prompt de signo de pesos2 enseguida del prompt debemos escribir pendant y el control pasara al teac$ pendant. .ebemos recordar que el control del robot solo puede estar en una de las dos partes anteriores2 pero no en las dos a la (e4. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo ? Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA 4, 'O*IE"DO E RO$OT DESDE A PC Aplicacin A-6 :a aplicacin +S, nos permite en(iarle comandos al robot para que este los e&ecute2 para poder traba&ar con la aplicacin +S, debemos de entrar primeramente al RO<CO''32 luego pulsar el icono #ER'I8+:.0 se debe de (eriicar que el control sea pasado a la %C 1. Bna (e4 que estemos en la %C y abierto el programa del robot2 debemos de abrir una aplicacin de la siguiente orma> 7 a-6 pr/eba si esta aplicacin no esta grabada o creada nos preguntar9 si deseamos crearla2 para lo cual debemos de pulsar la tecla H de si 2 con esto se crear9 una nue(a aplicacin y aparecer9> pr/eba8 despu7s de creada la aplicacin podemos insertar los comandos que se quieran utili4ar para traba&ar con el robot desde la %C sin necesidad del teac$ pendant. %ara reali4ar mo(imientos con esta aplicacin los procedimientos son los siguientes> "OTA1 todos los comandos se deben de escribir con min6sculas. 9oint M 9ngulo2 mue(e una unin a la (e42 en donde M indica el n6mero de la unin y el 9ngulo es en grados. :; distancia2 mue(e el robot sobre la direccin del e&e I por la distancia especiicada. :y distancia2 mue(e el robot sobre la direccin del e&e H por la distancia especiicada. :< distancia2 mue(e el robot sobre la direccin del e&e J por la distancia especiicada. 5o=e>0nombre de locacin1 mue(e el robot a la (ariable de la locacin grabada. :as distancias pueden ser en milmetros o pulgadas. Otros comandos de operacin en el modo a-6 son los siguientes> '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1= Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CO'+8.OS .E O%ER+CIN8 .E: 'O.O a-6 9oint artic/lacin? 0rado- 'o=i5iento relati=o a la po-icin de-eada? p/ede -er po-iti=o o ne0ati=o, speed (alor %roporciona la (elocidad a la que queremos traba&ar2 sin (alor nos indica la (elocidad a la que estamos traba&ando. != 'uestra (alores de las articulaciones2 (alor de la posicin y del encoder. !1 'uestra en tiempo real el (alor del encoder2 para salir se presiona ctrl. FE. !D2!y2!4 'ue(e el robot en el modo !orlden uncin del sistema m7trico seleccionado. Drot2 yrot2 4rot Rota en relacin al e&e indicado en sentido positi(o o relati(o. ready Coloca al robot en una posicin determinada. cready Coloca el bra4o en posicin (ertical. tD2ty2t4 'ue(e las articulaciones en modo tool. ya!2pitc$2roll Rota en modo tool2 segun el e&e indicado. go +bre gripper. gc Cierra gripper. $ere name EnseAa la posicin en que se encuentra cloc Coordenadas cartesianas ploc M :ocali4acin en uncin de pulsos print nombre 'uestra el (alor de la (ariable list 'uestra los puntos guardados ne! tipo name Crea una (ariable de nombre y tipo indicado. set nameO(alor +signa un (alor a la (ariable que se indique erase <orra la (ariable que se le indique. output salida2 (alor Establece una salida al (alor appro nombre2distancia 'ue(e a una distancia del punto indicado con respecto al gripper. depart distancia Se ale&a del punto actual respecto al gripper. tool D2y242&a!2pitc$2roll Establece la posicin del centro de gra(edad . '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 11 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Co5o 0rabar po-icione- del robot de-de la PC 1. Se debe de estar en la aplicacin que (a a ser modiicada 2. Bsando los comandos de mo(imiento de as$2 mo(er el robot a la posicin desada 3. En el prompt escribir el comando 6ere (ariable 0 $ere a1 ". repetir los pasos para cuantas posiciones se necesiten '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 12 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CAPITUO III E"#UA&E DE PRO#RA'ACI(" ) OPERACI(" DE RO$OT +, I"TRODUCCI(" A RO$CO''3 El RO<CO''3 es un sot!are que esta basado en !indo!s y diseAado para utili4arse con el R+%:3. se usa esta interase para tener una comunicacin entre la computadora y el controlador. Abriendo el RO$CO''3 .esde el men6 inicio seleccionar programas Encontrar CRS RO<O#ICS Seleccionar Robcomm3 Con lo anterior ya se esta dentro del programa y con ello podemos utili4ar los iconos que nos muestra el sot!are2 podemos abrir la (entana del editor y abriendo un nue(o documento. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 13 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA "o5brar y -al=ar /n pro0ra5a .entro del men6 ile seleccionar sa(e as Escribir el nombre que se desee ,acer clic en o@ '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1" Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Creando /na n/e=a aplicacin Bna (e4 sal(ado el arc$i(o2 ir a la (entana del men6 aplicacin Seleccionar ne! app El nombre de la aplicacin ser9 el mismo que el nombre del arc$i(o uente Regresar al men6 de la aplicacin y seleccionar -et/p #odas las lneas deben de ser llenadas y aplicar o@. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1* Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA E-cribiendo /na aplicacin Cada programa en R+%:3 debe de tener una construccin de bloque Emain.....end mainPcomo esta en la entrada y salida de cada programa. Crear un programa que mue(a el robot de una posicin grabada y despu7s se mue(a a otra posicin y por 6ltimo se ponga en posicin ready. El comando 5o=e@A1 este comando mue(e el centro de la punta de la $erramienta la posicin especiicada en modo de unin interpolada2 es decir las uniones del robot se mue(en y paran al mismo tiempo. %ara usar el comando se debe de escribir de la siguiente orma 5o=e@>location na5eA se debe asegurar de incluir los par7ntesis y un guin ba&o en rente del nombre de la locacin. ready@A1 este comando mue(e el bra4o a la posicin ready. El programa puede quedar de la siguiente orma> main teac$able cloc a2b mo(e 0Qa1 mo(e 0Rb1 ready01 end main '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1- Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Co5pilando /n pro0ra5a Cuando se compila un programa2 se esta creando un programa2 ob&eto del arc$i(o uente y eDisten tres maneras de compilar un arc$i(o. .esde la barra de $erramientas2 seleccionando el botn compile. .esde el men6 de aplicacin2 seleccionando compile .esde la (entana del editor2 con el botn derec$o del mouse $aga clic2de esta ormas se despliega un men6 de traba&o2 seleccionar compile. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1/ Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Si la compilacin ue eDitosa2 RalpQ3 despliega un mensa&e en la pantalla indic9ndonos que la compilacin ue buena2 para lo que es necesario aceptar. Si eDisten errores tambi7n no lo indica2 para lo cual es necesario corregir el programa uente y (ol(er a compilar $asta que este se pueda compilar. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 13 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Car0ando el pro0ra5a en el controlador El programa una (e4 compilado se queda en la %C por lo que es necesario mandar el arc$i(o ob&eto al controlador2 para ello es necesario reali4ar el procedimiento siguiente> 'andar el arc$i(o .esde el men6 6erra5ienta-2 seleccionar -end app .esde el men6 application2 seleccionar -end .esde la (entana del editor2 $aciendo clic en el botn derec$o del mousese despliega un men6 de traba&o donde se selecciona -end, '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 1? Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Sobre-cribiendo po-icione- con el teac6 pendant 1. Seleccionar ;1 0 edit1 2. Seleccionar ;1 0 (ar 1 3. Bsando ;3 y ;" par mostrar todas las (ariables ". Seleccionar la (ariable a2 presionar ;1 0SE:1 *. 'o(er el robot a la nue(a posicin -. %resionar ;1 0#C,1 para enseAar esa nue(a locacin /. %resionar ;1 0HES1 cuando muestre la pregunta E #E+C, K+RI+<:EP 3. %resionar ESC para regresar a la pantalla de EK+R ;I8.P ?. Repetir los pasos del " a 3 para la posicin < %ara e&ecutar un programa2 es necesario tener grabadas las posiciones a las cuales le indicamos que se mue(a en programa2 como lo indicamos en el captulo anterior. Bna (e4 que se tiene el programa2 que este $a sido compilado y en(iado al controlador y que las posiciones $an sido (eriicadas o grabadas2 se procede a e&ecutar el programa de la siguiente orma> '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2= Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA .esde el teac$ pendant2 se selecciona app2 luego se selecciona la aplicacin run y se conirma la e&ecucin. .esde la %C. .entro del Robcomm3 y una (e4 que aparece el prompt se selecciona la aplicacin que ue grabada2 cuando aparece la aplicacin se teclea run y se le da enter e&ecut9ndose asi el programa. 2, SISTE'AS DE COORDE"ADAS 'odo cilBndrico %ara mo(er el robot en modo cilndrico solo se puede $acer desde el teac$ pendant. El sistema de coordenadas cilndrico esta deinido por> 1. Bna rotacin alrededor del e&e J 2. Bna distancia ale&ada del e&e J 3. Bna distancia 0 altura1 a lo largo del e&e J Si-te5a coordenado tool Este sistema coordenado esta directamente relacionado a el lanco del plato de la $erramienta en el inal del bra4o del robot. %ara la serie + de los robots2 el e&e que apunta $acia uera del centro del plato de $erramienta es el e&e I de la $erramienta. %ara la serie ; el e&e J apunta $acia uera del centro del plato de la $erramienta. %ara que el robot se mue(a en este modo2 es necesario utili4ar el teac$ pendant. Si se quiere mo(er el robot sin el uso del teac$ pendant2 el robot se (a a mo(er en el ambiente a-62 los comandos en as$ para mo(er el robot en modo tool son similares a los comandos en modo :orld y se escriben de la siguiente orma> t; distancia ty distancia t< distancia estos comandos mue(en al robot a una posicin relati(a a la $erramienta '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 21 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Co5ando- relacionado- con el #ripper +l inal del bra4o del robot regularmente se instala una pin4a con dedos2 los cuales pueden tener dierentes ormas dependiendo de la tarea que se tenga que reali4ar. %ara manipular los dedos de cualquier tipo de gripper se utili4an los mismos comandos. 0rip>open@A. +bre el gripper. Si se esta usando un ser(ogripper2 dentro de los par7ntesis se puede escribir la uer4a de traba&o que se desee2 siendo el par9metro de = a 1==S. Si no se usa ser(ogripper no se debe de incluir ning6n (alor. 0rip>clo-e@A. Cierra el gripper y se aplican los mismos par9metros que el gripRopen. 0rip>Cini-6@A. 'antiene la e&ecucin del programa2 cuando encuentra el comando gripRinis$01 $asta que el mo(imiento del gripper $a terminado. Cini-6@A, Obliga al programa a esperar este comando $asta que los mo(imientos del robot $an terminado. E5ERCICIO> 1. En la locacin a cerrar gripper 2. 'o(er el robot a la locacin b 3. En la locacin b abrir gripper Co5ando- aproac6 y depart @acercarce y retirarceA En ocasiones resulta necesario que el robot no llegue directamente a un punto2 sino solo que se aproDime o retire2 para ello se utili4an estos comandos. appro@A mue(e el centro de la punta de la $erramienta a una posicin aproDimada. :a posicin de aproDimacin es deinida por una locacin y una distancia a lo largo del e&e de la $erramienta. E&emplo> appro@a?4D1 el robot se (a a aproDimar a la locacin EaP " centmetros. .esde as$ la sintaDis cambia ya que los (alores no se ponen entre los par7ntesis a-6 a?4D '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 22 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA depart@A mue(e el centro de la punta de la $erramienta uera de la posicin actual a lo largo del e&e de la $erramienta. E&emplo> depart@2DA retira el robot de la posicin en que se encuentra 2 cm. .esde as$ depart 2D Co5ando- de *elocidad :a (elocidad de traba&o del robot se puede establecer desde el comando as$ o bien en el programa Rapl3 a-6 escribir el porcenta&e de (elocidad a la cual se quiere traba&ar de = a 1==S Rapl31 -peed>-et@EA o -peed@EA :a (elocidad en el mo(imiento de una trayectoria puede ser (ariable de acuerdo a la longitud de la trayectoria2 tambi7n de acuerdo a las locaciones y a el acercamiento2 etc. E5ERCICIO> 1. )rabar 2 nue(as 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 (elocidad del 2=S ". despu7s del comando appro establecer una (elocidad del *=S *. enseAar las 2 nue(as locaciones usando as$ -. e&ecutar el programa. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 23 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA *ariable- SB5bolo Tipo 8inguno Entero S ;lotante T Cadena )uin ba&o 0R1 Cloc0cartesiano1 M %loc0punto de presicin1 .entro de un programa las (ariables se usan para> 1. 8ombrar una locacin 2. %oner un nombre igual a una Constante 3. Bsar contadores ". .einir arreglos *. etc. Con=encin para no5brar la- =ariable-
En el Rapl3 los nombres de las (ariables pueden ser de cualquier longitud2 sin embrago los primeros 32 caracteres son los importantes. 86meros y guin ba&o pueden ser utili4ados como primer car9cter en un nombre. Tipo- de dato- #odas las (ariables pueden ser deinidas como un tipo de dato de la tabla que se mostr al momento de declarar estas en el programa. :as (ariables son declaradas usando el tipo de dato de la (ariable con el nombre de la (ariable. A-i0nacin de =ariable- :as (ariables que son asignadas dentro del programa Rapl32 pueden ser asignadas ya sea en la declaracin de lnea2 o en cualquier parte del programa. :a asignacin de una (ariable ocurre cuando la (ariables es cargada con un (alor actual. :as (ariables del tipo teac$able2 le pueden ser asignados (alores en el prompt de as$2 usando el comando -et. %ara asignar los (alores a las (ariables se usa el operadorPOP2 e&emplo> %ruebaU set +RK+:ORO* Rapl3 soporta la asignacin de (alores en codigo +SCII para caracteres2 usando el car9cter actual encerado entre comillas simples2 e&emplo> '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2" Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA C$arOP+P *ariable- del tipo teac6able :as (ariables de este tipo son aquellas que son declaradas en el programa Rapl3 y que a6n no les $a sido asignado (alor. %ara crear este tipo de (ariables2 se debe de usar la palabra teac$able antes de la (ariable que se esta declarando. :a asignacin de la (ariable (a a ser suministrada por el usuario antes de correr el programa. :as (ariables teac$able son declaradas al comien4o del programa principal o bien en un subprograma. Si la (ariables es declarada como (ariable global2 todos los subprogramas y el programa principal de cualquier arc$i(o (an a compartir el (alor de esas (ariables2 lo cual no es muy recomendable. Este tipo de (ariables no pueden ser declaradas y a la (e4 asignarles un (alor o iniciali4arlas. :as (ariables teac$ables pueden ser de cualquier tipo2 si no se declara el tipo por deault se declara cloc0cartesiana1 y ploc 0 presicin 1. 'o=i5iento en lBnea recta Este tipo de mo(imiento mantiene el centro de la $erramienta con mo(imiento en lnea recta. :os comandos de mo(imiento pueden ser generados para mo(er el robot en lnea recta2 adicionando una EsP al inal del comando2 e&emplo mo(e0a1 se mue(e a la posicin a pero no en lnea recta mo(es0a1 se mue(e 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 ser9 necesario grabar algunas locaciones intermedias y que el mo(imiento se pueda dar. E5ERCICIO> En el programa que se tiene con(ertir todos los mo(imientos a lnea recta y obser(ar la dierencia. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2* Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA I5pri5iendo en pantalla Imprimir mensa&es en la pantalla de la %C2 es 6til para depurar programas. Si se usa correctamente2 se puede saber donde el programa $a allado2 que error $a ocurrido2 etc. El comando mas a(orable para reali4ar esto es printC :a eDpresin que se quiere que salga en pantalla se debe de encerrar entre comillas %rint0Eel robot esta traba&andoP1 Se puede utili4ar un salto de lnea aAadiendo un Vn2 e&emplo Int aO12 %rint0E el (alor de a es WXVnP2a1YYesta lnea se imprimir9 en la pantalla como> YY el (alor de a es 12 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2- Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CAPITUO I* PRO#RA'ACIO" ESTRUCTURA DE OS PRO#RA'AS El ormato general para un programa en R+%:3 es similar a los programas en lengua&e ECP2 en donde $ay que respetar ciertas estructuras ya deinidas para poder interactuar con la interace de usuario y reali4ar programas. El ormato es el siguiente> deinicin de (ariables> 0puede ser antes o despu7s de deinir el segmento principal1 teac6able cloc a?b,,,,,<?a+,,,, a ;;? F+DG p/nto-? etc,,,,,, ploc int i? a+,,,,a;;? Cloat b,,,, etc, para el caso en que las (ariables se reieran a ubicacin de puntos grabados en el controlados del robot2 se especiica el tipo de eDactitud de las (ariables 0cloc2 ploc1 en dnde cloc 0cartesian location1 se reiere a que se (a a reerenciar para la eDactitud en sistema de coordenadas cartesiano2 y ploc 0points location1 lo $ar9 directamente de los puntos pro(enientes de los EdecodersP del robotY se obtiene mas presicin con el tipo ploc deinicin del segmento principal> 5ain YY deinir el segmento principal2 comien4o de todo programa YY es con(eniente poner comentarios cuando se reali4a y YY estructura un programa para una me&or comprensin ready01 YY aqu comien4a la programacin deseada mo(e 0a1 mo(e 0b1 ..... ..... ..... ready01 YY termina la programacin end 5ain YY in del programa con el cierre del segmento principal Esta es la estructura b9sica de los programas2 con la cual debe contar todo programa para interactuar con la interace del robot '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2/ Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CREACIO" DE PRO#RA'AS :os pasos para la creacin de alg6n programa son los siguientes> 1. abrir el editor de teDto 0icono de $o&a nue(a o desde el men6 ;ile QQOpen 2. Se recomienda tener las pantallas de editor y terminal abiertas 3. crear el listado ". sal(ar el programa con un nombre deinido con eDtensin .r3 en un directorio deseado 0no5bre,r3? el programa no lo $ace autom9ticamente1 *. compilar el programa 0icono2 men6 +pplication2 o botn derec$o del ratn1 -. crear una aplicacin con el mismo nombre del programa uente en la pantalla de terminal 0as$1 0nombre1 /. Crear un neDo entre el programa uente y la aplicacin por medio de 8e! app del men6 application2 la cual debe tener el mismo nombre y proceder del mismo directorio que el programa uente2 0no5bre,app1 3. %ara (eriicar2 en el men6 apliccation2 seleccionar setup2 el cual en este punto debe contener los 3 tipos de arc$i(os creados> nombre.r3 Eprograma uenteP nombre.app Earc$i(o de enlaceP nombre Eaplicacin de terminalP REAICE A SI#UIE"TE PRACTICA1 1. encienda el controlador del robot y inicialcelo 0$ome2 ready2 y pase el control a la %C1 2. abra la interace robcomm3 y abra las pantallas de terminal y de nue(a edicin 0ne! del men6 ile1 3. en la pantalla del editor2 escriba lo siguiente> teac$able cloc a2b main ready01 mo(e 0a1 mo(e 0b1 ready01 end main ". sal(e el programa 0sa(e as del men6 ile1 en el directorio de e&emplos con un nombre cualquiera y eDtension r3 *. pase a la pantalla de terminal y cree la aplicacin correspondiente en el controlador 0as$ nombre1 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 23 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA -. el controlador al no encontrar una aplicacin con ese nombre2 pregunta si desea crearla2 para aceptar teclee EyP 0yes1 /. del menu application2 seleccione ne! app2 y asgnele el mismo nombre con eDtensin app y en el mismo directorio 0nombre.app1 3. (eriique que esten presentes los tres elementosa b9sicos del programa 0men6 application2 opcin setup1Y en caso contrario realice los pasos del " en adelante $asta lograr que apare4can1 ?. compile el arc$i(o 0application QQ compile1 o botn derec$o 1=. mande la aplicacin al controlador 0application QQ send1 o botn derec$o 11. en la pantalla de terminal2 e&ecute el programa 0run1 12. al no $aber grabado posiciones2 el controlador a(isa para que las (ariables de posicin sean deinidas. 13. con los comandos de terminal mue(a al robot a una posicin cualquiera2 y asigne esa posicin a la (ariable Ea E0$ere a1 1". $aga lo mismo para la (ariable EbP 1*. corra de nue(o el programa y obser(e 1-. ,aga algunos agregados 0mas posiciones2 comandos del gripper2 etc12 compile y mande la aplicacin corregida y obser(e OTRO 'ETODO POSI$E DE PRO#RA'AR ) ASI#"AR *ARIA$ES Otra manera (iable de reali4ar el proceso de programacin2 es interactuando directamente con el robot e ir asignando las (ariables aun sin $aber reali4ado el listado del programaY esto permite el ir mo(iendo el robot con los comandos de terminal o con el Eteac$ pendantP e ir asignando la secuencia de (ariables que se utili4ara en el programaY a su (e4 y puede ser de orma paralela2 el ir creando el listado del programa conorme a los mo(imientos que se (an reali4ando y a las (ariables que se (an asignando. %ara e&empliicar me&or este aspecto2 realice el siguiente e&ercicio> 1. Salga de la aplicacin actual que este presente en el controlador2 por medio del comando EeDitP en la pantalla de terminal2 y cierre la aplicacion de neDo presente de la pantalla del programa robcomm3 por medio de seleccionar Eclose appP del menu application 2. .esde la pantalla de terminal2 cree una nue(a aplicacin que se llame curso por medio del comando Eas$ cursoP y acepte la nue(a creacin 3. mue(a el robot a la posicin de ready 4. asigne una nue(a (ariable directamente al controlador2 por medio del comando Ene! a (para asignar variables tipo cartesiano se agrega el simbolo de guion bajo RP 2 y para variables del tipo de presicin, el smbolo de numero 1 !. asigne la (ariable b con el comando Ene! RbP ". en la pantalla de terminal2 teclee el comando ElistP2 para obser(ar las (ariables eDistentes (observara #ue las variables aparecen precedidas del simbolo $ , lo #ue indica #ue no %an sido asignadas posiciones a estas variables& '. mue(a el robot a una posicin distinta con el comando E&oint 121==P '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 2? Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA (. indique que esa posicion se le asignara a la (ariable a2 por medio del comando E$ere aP ). teclee de nue(o el comando ElistP y obser(e 1*. mue(a el bra4o a otra posicin2 digamos E&oint 22*=P 11. teclee de nue(o el comando ElistP y obser(e 12. a$ora abra una nue(a pantalla de editor y nmbrela Ecurso.r3P y teclee el siguiente programa> teac$able cloc a2b main ready01 mo(e 0a1 mo(e 0b1 ready01 end main 13. cree una nue(a aplicacin de neDo llamada curso.app 14. obser(e la pantalla de setup 0setup del menu application1 0tiene que estar los tres elementos basicos2 uente2 aplicacion y neDoY de lo contrario repita los pasos anteriores1 1!. corra el programa y obser(e DECARACIO" DE *ARIA$ES TIPO ARRE#O @ARRA)A Bn arreglo de (ariables es 6til por e&emplo cuando se (an a reali4ar mo(imientos a posiciones secuenciales dierentes2 o cuando se reali4an operaciones comple&as2 o cuando se necesita guardar resultados en dierentes (ariables de manera secuencial2 etc 0depende del programador1. y para deinir estas (ariables2 solo se deine en la declaracin el n6mero de localidades o dierentes (alores (a a contar dic$a (ariable> teac$able cloc Z*[ a2 Z*[ b2 c..... etc REAICE A SI#UIE"TE PRACTICA1 1. del mismo e&ercicio anterior2 corri&a la declaracin de (ariables por lo siguiente> teac$able cloc Z*[ a teac$able cloc b '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3= Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA 2. corri&a el listado del programa por lo siguiente> main ready01 mo(e 0aZ=[1 mo(e 0aZ1[1 mo(e 0aZ2[1 mo(e 0aZ3[1 mo(e 0aZ"[1 mo(e 0aZ*[1 mo(e 0b1 ready01 end main 3. agregue esas - nue(as posiciones y sal(e el programa con otro nombre2.r3 ". cree la aplicacin en la terminal 0primero salga de la aplicacin actual con el comando eDit en terminal1 *. cree el nue(o neDo con una nue(a aplicacin 0primero salga de la aplicacin actual con close app del menu application1 -. deina nue(as posiciones para las (ariables /. e&ecute el programa y obser(e. CO'E"TARIO1 Es recomendable cambiar y reali4ar todo el proceso de creacin de un programa cada (e4 que se realicen cambios a este2 ya que el controlador no acepta los cambios reali4ados2 sobre todo cuando se cambian o agregan (ariables de dierente tipo a los programas. Se debe tener especial cuidado cuando se realicen cambios a los programas y (eriicar eecti(amente que las correcciones reali4adas se lle(en a cabo. Bna manera de seguir con los mismos programas uente y aplicaciones cuando se $acen correcciones en las (ariables2 es el eliminarlas del controlador completamente y reasignar las posiciones de todas las (ariables2 o las que se $ayan corregido al menos con el comando Eerase \nombre de (ariableUP PRO#RA'ACIO" DE 'E"SA&ES? *EOCIDAD? RETARDOS ) OPERACIO" DE #RIPPER +lgunos comandos 6tiles que se utili4an com6nmente son los siguientes> RE%RESH el cual limpia y EreseteaP o iniciali4a la memoria del controlador para e(itar degradacin de los cdigos con basura. 0en la pantalla de terminal1 IST muestra todas las (ariables eDistentes en uso por la aplicacin actual y marca con ] las que no se $ayan asignado '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 31 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Delay@H5ili-e0/ndo-A 6til cuando se programan esperas deinidas 0en edicin de programas1 Cini-6@A espera a que la instruccin anterior se realice completamente antes de proceder a e&ecutar la siguiente 0rip>open@A abre el gripper 0rip>clo-e@A cierra gripper -peed@DIJJA cambia la ra4n de (elocidad del robot y se eDpresa en porcenta&e REAICE A SI#UIE"TE PRACTICA1 1. Realice el siguiente programa y s9l(elo con un nue(o nombre 0recuerde salir y cerrar las aplicaciones actuales1 teac$able cloc a2b2c main ready01 print 0Emo(iendose a punto aVnP1 mo(e 0a1 print 0Eespera de * segundosVnVnVnP1 delay0*===1 gripRopen01 print 0Emo(iendose a punto bVnP1 mo(e 0b1 inis$01 speed03=1 print 0Eaumentando la (elocidad de operacin VnP1 mo(e 0c1 inis$01 print 0Ese mo(e a punto c y espera a que termine VnP1 print 0Eespera de 3 segundos VnP1 delay 03===1 gripRclose01 print 0Ein del programa y se (a a posicin de ready VnP1 ready01 end main 2. sal(e2 compile2 cree aplicacin2 neDo2 e&ecute el programa y obser(e 3. $aga modiicaciones a su gusto y obser(e. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 32 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CICOS REPETITI*OS CICO Cor =ariableK;; to ;; ,,,,,,, end Cor repeticin de secuencias del programa con numero inito de (eces REAICE A SI#UIE"TE PRACTICA1 1. Realice el siguiente programa> teac$able cloc Z*[ a teac$able cloc b int c main ready01 or cO1 to * print0Ereali4ando el ciclo> ZWX[VnP2c1 mo(e 0aZ=[1 mo(e 0aZ1[1 mo(e 0aZ2[1 mo(e 0aZ3[1 mo(e 0aZ"[1 mo(e 0b1 end or ready01 end main 2. realice todo el proceso de en(iar el programa y obser(e CICO 0oto eti./eta REAICE A SI#UIE"TE PRACTICA1 1. sobre el mismo programa anterior2 realice los siguientes cambios> '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 33 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA teac$able cloc Z*[ a teac$able cloc b main ready01 regreso1>> mo(e 0aZ=[1 mo(e 0aZ1[1 mo(e 0aZ2[1 mo(e 0aZ3[1 mo(e 0aZ"[1 mo(e 0b1 goto regreso1 end main 2. E&ecute el programa y obser(e Este modo de e&ecutar programas aunque es posible no es recomendable ba&o ciertas circunstancias2 debido a que como se obser(2 la 6nica manera en este caso de salir del programa es utili4ando los paros de emergencia o or4ando el apagado del programa desde la pantalla de terminal utili4ando la secuencia \C#R:FJU. CICO loop ,,,,,, end loop Otra $erramienta 6til para reali4ar ciclos2 es esta uncin2 que aunque b9sicamente es un ciclo incondicional2 9cilmente puede utili4arse como un ciclo dependiente de cierta condicin2 lo cual2 se (er9 posteriormente. Otra manera de asignar (alores a (ariables que no cambiar9n su (alor2 y para una me&or comprensin al utili4arlas2 es darle (alores predeterminados a estas (ariables con nombres comple&os deini7ndolas desde el comien4o de los programas con la $erramienta @,incl/deA REAICE A SI#UIE"TE PRACTICA1 1. Cierre todas las aplicaciones y cree este nue(o programa> teac$able cloc a2b2c2d .deine alta 1== .deine media "= .deine ba&a 1= main '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3" Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA ready01
loop speed0ba&a1 mo(e 0a1 speed0media1 mo(e 0b1 speed0alta1 mo(e 0c1 delay0*===1 mo(e0d1 end loop end main 2. Sal(e2 compile cree aplicacion y neDo y enseAe al robot las nue(as posiciones 3. E&ecute el programa y obser(e ". Realice modiicaciones a su gusto y obser(e los cambios. CICOS CO"DICIO"AES CICO iC ,,,,,,,,, end iC Bna de las $erramientas m9s 6tiles en cualquier lengua&e de programacin2 es el poder (eriicar el estado de cierta (ariable2 condicin o estado de alguno de los par9metros asociados de que es capa4 de mane&ar el ambiente o dispositi(o a programarY para la creacin de ciclos condicionales con el ciclo loop2 se puede (eriicar cierta condicin con la uncin EiP y si se cumple2 agregar la uncin Ebrea@P2 con la cual se podr9 salir del ciclo a la siguiente instruccin posterior al Eend loop.P REAICE A SI#UIE"TE PRACTICA1 1. 'odiique el programa anterior de la siguiente manera> teac$able cloc a2b2c2d .deine alta 1== .deine media "= .deine ba&a 1= main ready01 int eO= '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3* Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA loop speed0ba&a1 mo(e 0a1 speed0media1 mo(e 0b1 speed0alta1 mo(e 0c1 delay0*===1 eOeF1
i eU* brea@ end i end loop mo(e0d1 delay0*===1 ready01 end main 2. aplique un reres$ al controlador y compile y mande este nue(o programaY obser(e que el ciclo loop se $a con(ertido en un ciclo condicional 3. realice modiicaciones y obser(e CICO :6ile ,,,,,,,,,, end :6ile %ara este caso2 la secuencia del programa se e&ecuta repetiti(amente $asta alcan4ar cierta condicin2 que puede ser un (alor en especial de una (ariable o una seAal digital de entrada REAICE A SI#UIE"TE PRACTICA1 1. Cierre aplicacin neDo y programa y cree un con&unto nue(o con este listado teac$able a2b main int cO1 !$ile c\* ready01 mo(e 0a1 mo(e 0b1 cOcF1 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3- Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA end !$ile ready01 end main 2. E&ecute el programa y obser(e 3. Realice algunos cambios y obser(e CICO do ,,,,,,,,,, /ntil REAICE A SI#UIE"TE PRACTICA1 ". Cierre aplicacin neDo y programa y cree un con&unto nue(o con este listado teac$able a2b main int cO1 do ready01 mo(e 0a1 mo(e 0b1 cOcF1 until cU* ready01 end main *. E&ecute el programa y obser(e -. Realice algunos cambios y obser(e SU$RUTI"AS Otra caracterstica especial de este tipo de lengua&es2 es la compilacin por mdulos o separada2 lo que permite que se puedan deinir subrutinas separadas del programa principal y utili4arse llam9ndolas cuando sea necesarioY estas subrutinas por lo general contienen partes de un programa o secuencia i&os2 es decir2 que no (aran aunque la secuencia de su utili4acin as como otras acciones se puedan controlar desde el programa principal. %ara la utili4acin de subrutinas en un programa2 es necesario incluirlas en las declaraciones que (a a usar el programa principal por medio de la uncin ,incl/de tal como se muestra a continuacinY y el ormato de los arc$i(os que contengan las subrutinas2 no deberan contener la uncin main2 y en (e4 de esto2 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3/ Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA tener como encabe4ado y in de las subrutinas2 las sentencias -/b no5bre@A y end -/b respecti(amente. REAICE A SI#UIE"TE PRACTICA1 +, Cierre aplicacin neDo y programa y cree un con&unto nue(o con este listado2 que se llame sub1.r3 .include sub2.r3 .include sub3.r3 teac$able cloc a2b main ready 01 mo(e0a1 inis$01 print0^mo(io a punto a y espera de 3 segVn^1 delay03===1 inis$01 print0^e&ecutando subrutina 2 y espera de * segVn^1 sub201 YY e&ecucion de subrutina 2 print0^termina la subrutina 22 mue(e a b y espera de 3 segVn^1 mo(e0b1 inis$01 delay03===1 inis$01 print0^e&ecutando subrutina 3 y espera de * segVn^1 sub301 print0^termina la subrutina 32 mue(e a b y espera de 3 segVn^1 mo(e0b1 inis$01 delay03===1 inis$01 ready01 inis$01 print0^termina el programaVn^1 end main 2, +bra un nue(o editor y escriba la siguiente subrutina y s9l(ela con el nombre de sub2.r3 sub sub201 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 33 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA teac$able cloc c delay0*===1 mo(e0c1 inis$01 print0^mo(io a c en subrutina 2 y espera de 3 segVn^1 delay03===1 inis$01 end sub 3, .e nue(o abra un nue(o editor y escriba la siguiente subrutina y s9l(ela con el nombre de sub3.r3 sub sub301 teac$able cloc d delay0*===1 inis$01 mo(e0d1 inis$01 print0^mo(io a d en subrutina 3 y espera de 3 segVn^1 delay03===1 inis$01 end sub 4, +$ora abra la pantalla de terminal2 del men6 :indo:2 seleccione la opcin TileY aseg6rese de $aber encendido el robot y cree la aplicacin sub1 por medio del comando a-6 -/b+ 5, .el men6 Application seleccione "e: app y cree el neDo sub1.app 6, +seg6rese de que en el setup apare4can los tres elementos y compile el programa principal 0sub1.r31 $asta que no apare4can errores L, mande al controlador el programa 0send1 M, E&ecute el programa para que recono4ca las (ariables a usar J, 'ue(a el robot y grabe " dierentes puntos +D, e&ecute el programa2 realice algunas modiicaciones y obser(e. E&ECUCI(" DE SE#'E"TO CO" CO"DICI(" @CASEA +lgunas (eces se $ace necesario redirigir el lu&o del programa para reali4ar alguna terea especica dependiente de un (alor de una (ariable2 condicion o entrada digital2 esto puede ser reali4ado con la uncin ca-e. %U"CIO" ca-e ,,,,,,,,,, oC ;; '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo 3? Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA RE+:ICE :+ SI)BIE8#E %R+C#IC+ 1. Cierre todas las aplicaciones y programas2 y cree este programa nue(o. teac$able cloc a2b2c2d main int eO1 stringZ-"[ mensa&e ready01 loop print0^el contador es> WXVn^2e1 delay0-===1 inis$01 case e o 1> mensa&e O ^caso de 1 paso a posicion aVn^ print0mensa&e1 mo(e0a1 inis$01 o 2232*> mensa&e O ^caso de 223 o * y paso a posicion bVn^ print0mensa&e1 mo(e0b1 inis$01 o - to 3> mensa&e O ^paso a posicion c2 en los casos del - al 3Vn^ print0mensa&e1 mo(e0c1 inis$01 o ? to 1=2 12 to 1"2 1-> mensa&e O ^posicion d cuando e es de ? a 1=2 de 12 a 1"2 o 1-Vn^ print0mensa&e1 mo(e0d1 inis$01 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "= Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA else mensa&e O ^caso indeinido2 no $ago nadaVn^ print0mensa&e1 end case eOeF1 i eU1/ brea@ end i end loop ready01 inis$01 print0^in del programa.....adiosVn^1 end main 2. sal(e con un nombre nue(o y abra las aplicaciones correspondientes2 compile y aseg6rese de que en el setup apare4can los tres elementos y compile el programa principal $asta que no apare4can errores 3. mande al controlador el programa 0send1 ". E&ecute el programa para que recono4ca las (ariables a usar *. 'ue(a el robot y grabe " dierentes puntos -. e&ecute el programa2 realice algunas modiicaciones y obser(e. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "1 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA CAPITUO * E"TRADAS ) SAIDAS DISTRI$UCI(" %2SICA DE PUERTOS DE E"TRADAS ) SAIDAS DI#ITAES ) CO"ECTORES PUERTO DE E"TRADAS N SAIDAS DI#ITAES #PIO El controlador C*==C del robot cuenta con un &uego de entradas y salidas digitales2 con las cuales poder interactuar en tiempo real con el medio eDterno y poder monitorear o controlar dispositi(os eDternosY este controlador cuenta con 1- entradas digitales opto aisladas2 " salidas con contactos de rele(ador y 12 salidas opto aisladas. CO"SIDERACIO"ES E" E DIESOO DE CIRCUITOS Si se (a a usar el puerto )%IO2 se deben tener en cuenta las siguientes consideraciones. %ara los robots +2** y +"-*2 se puede usar tanto la uente interna de 2" K.C que pro(ee el equipo o una eDterna que conecte al sistema :a capacidad de corriente que puede mane&ar la uente interna es de m9Dimo 1 +mpere2 por lo que si la aplicacion que se (a a mane&ar es de mayor capacidad2 use una uente eDterna. :as salidas opto aisladas son de ba&a capacidad en corriente2 mane&an $asta *= m+ cada una de ellas. :as salidas rele(adas masne&an $asta 3 + cada una. #odas las salidas de rele(ador2 est9n conectadas a un punto en com6n2 y est9n protegidas por un rele(ador que se encuentra en el panel rontal. PRECAUCIO",I +pague el interruptor principal del controlador antes de conectar cualquier alambre al controlador. :os diagramas del patilla&e correspondientes se muestran en las p9ginas siguientes> '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "2 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA REAICE A SI#UIE"TE PRACTICA 1. +plique el comando s$utdo!n no! a la pantalla de terminal para apagar el robot2 Cierre todas las aplicaciones y el programa robcomm3 y apague el controlador. 2. .el conector ..Q*=2 conecte las terminales 1 y 32 o bien la 2 y "2 para utili4ar la uente interna de 2" (olts de .CY tambi7n conecte las terminales "/ a la "?2 o bien la "3 a la *=2 para cerrar el la4o a tierra de los circuitos internos del )%IO 3. Conecte el cable tipo listn al conector ..Q*= y por el otro eDtremo al controlador del robot ". Encienda el controlador y abra la pantalla de terminal del robcomm3 *. abra cualquier aplicacin eDistente 0as$ DDDDD1 de la pantalla terminal -. Introdu4ca el comando inp/t +2 $aga lo mismo con las 1- entradas y obser(e. /. Con muc$o cuidado2 conecte un alambre largo a la terminal "? *= del conector ..Q*= y a la terminal * del mismoY aplique el comando input 1 y ober(e2 retirelo de la terminal * y (uel(a a (eriicar el estado de la entrada 1 y $aga lo mismo con algunas otras entradas. NOTA# TAL COMO SE O$SERVO, LA SALIDA SE HACE VALIDA %VALOR DE 1& CUANDO SE CONECTA A TIERRA LA ENTRADA CORRESPONDIENTE 3. +$ora2 con la ayuda de un multmetro a&ustado para medir (olta&e de .C2 en la escala que soporte al menos 2" K.C2 conecte la terminal positi(a del multmetro a la terminal 1 2 del conector ..Q*=2 y la negati(a a la terminal 212 obser(e la lectura del multmetroY a$ora2 aplique a la pantalla de terminal el comando o/tp/t +?+ 0ormato> output Msalida2 (alor lgico1 y obser(eY a$ora el comando o/tp/t +?D y note el cambio de estados de aproD. cero Kolts a aproD. 2" K.C que es el (olta&e de la uente interna del controlador. ,aga 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' ?. %ara el caso de las salidas de la 13 a la 1-2 eDiste la dierencia de que estas son contactos de rele(ador2 con un punto en comun. %ara (eriicar2 a&uste el multmetro para medir resistencia 0si tiene la capacidad de tono audible cuando se detecta resistencia cercana a cero2 act(ela1Y con muc$o cuidado2 conecte una de las terminales del multmetro a la terminal "3 "" del conector ..Q*=2 y la otra a la terminal 3- del ..Q*=Y introdu4ca el comando o/tp/t +3?+ y obser(e la lectura del medidorY despu7s de el comando o/tp/t +3?D y obser(eY conecte a$ora de la terminal "3 "" a la 3* y repita los dos comandos anteriores. '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "3 Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA Con estas $erramientas2 se pueden reali4ar programas mas comple&os que in(olucren el uso de entradas y salidas digitales2 para poder controlar dispositi(os eDternos2 o coordinar acciones determinadas dependientes de esos dispositi(os2 a ambas cuestiones. REAICE A SI#UIE"TE PRACTICA 1. +bra una pantalla de edicin de programas nue(os y teclee el siguiente programa> teac$able cloc a2b2c main loop !$ile input01-1OO1 print0^acti(ada la entrada 1- y espero seleccion de entradaVn^1 delay0*===1 inis$01 i input011OO1 mo(e0a1 inis$01 print0^entrada uno conectada2 mue(o posicion aVn^1 print0^y acti(o salida 13 por * segundos aVn^1 output 013211 delay0*===1 outputRset 0132=1 end i i input021OO1 mo(e0b1 inis$01 print0^entrada dos conectada2 mue(o posicion bVn^1 print0^y espero a que acti(e la entrada 3Vn^1 !$ile input031OO= end !$ile print0^entrada 3 pulsada2 continuo con el programaVn^1 end i i input0"1OO1 mo(e0c1 inis$01 print0^entrada cuatro conectada2 mue(o posicion cVn^1 '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "" Operacin del Robot CRS A255 y A465 CRODE CHIHUAHUA end i i input01*1OO1 print0^entrada 1* conectada2 termino programa en * segVn^1 delay0*===1 inis$01 goto inal end i end !$ile print0^no esta acti(ada la entrada 1- y espero * segVn^1 delay0*===1 end loop inal>> print0^in del curso...... elicidades y buen (ia&eVn^1 end main 2. Sal(e el programa2 cree la aplicacin y el neDo2 asigne las tres posiciones y e&ecute el programa2 siguiendo cuidadosamente el diagrama de coneDiones y las instrucciones del instructor2 si tiene cualquier duda2 no proceda con el paso siguiente $asta estar seguro de lo que (a a $acer. 3. Realice modiicaciones y obser(e '.C. 5es6s 5os7 8icol9s :pe4 ,errera '.C. :uis ;ernando )arca +r7(alo "*