Vous êtes sur la page 1sur 91

Programacin de Robots Industriales

PROGRAMACIN DE ROBOTS
Gua del estudiante

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

Gua Para la Programacin de Robots

Contenido

INTRODUCCIN A LOS ROBOTS INDUSTRIALES


COORDINACIN DE UNA APLICACIN CON ROBOTS (POSICIONES)
MANEJO DE OBJETOS VIRTUALES.
MANEJO DE UN SISTEMA PALLETIZADO
SISTEMAS DE MANIPULACIN CON VECTORES
MANEJO DE ENTRADAS Y SALIDAS
COMUNICACIN DEL ROBOT, MANEJO DE I/O, Y OTRAS APLICACIONES.
APENDICE

Objetivos Especficos
Que al finalizar la prctica el alumno conozca las generalidades de la programacin
de robots industriales.
Que al finalizar la prctica el alumno sea capaz de hacer programas eficientes para
robots industriales.

Objetivo General
Al finalizar la capacitacin, el participante ser capaz de programar un robot
industrial Mitsubishi, configurar las posiciones de trabajo, simularlo y ponerlo en
marcha.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

INTRODUCCIN A LOS ROBOTS INDUSTRIALES

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

1.

INTRODUCCIN A LOS ROBOTS INDUSTRIALES

El trmino ROBOT procede de la palabra checa robota, que significa 'trabajo


obligatorio'; fue empleado por primera vez en la obra teatral de 1921 R.U.R. (Robots
Universales de Rossum) por el novelista y dramaturgo checo Karel Rapek. Desde
entonces se ha empleado la palabra robot para referirse a una mquina que realiza
trabajos para ayudar a las personas o efecta tareas difciles o desagradables para
los humanos.
Se define a un robot industrial como un mecanismo manipulador con ms de tres
ejes de movimiento el cual es multipropsito, automticamente controlado y
reprogramable. Existen otros tipos de robots experimentales tales como los que
buscan imitar la anatoma o el procedimiento de aprendizaje humano, pero con
mnimas aplicaciones industriales en la actualidad. Esta categora no ser cubierta
en este material.
Las aplicaciones tpicas del uso de los robots industriales incluyen la soldadura, la
pintura, el ensamblado, la colocacin de piezas, la inspeccin de productos y la
prueba de productos. Todo lo anterior acompaado de velocidad, precisin y larga
durabilidad del robot.

Como un dispositivo mecnico, todo robot tiene determinadas partes claves:


Articulaciones o ejes de movimiento: son los
puntos que proporcionan movimiento a las partes del
robot
Actuadores: son la fuente de movimiento controlado
para las partes mviles del robot. Puede tratarse de
actuadores por servomotores, actuadores hidrulicos o
actuadores neumticos.
Herramientas de punto terminal: dispositivo
colocado en el punto terminal del robot en el cual se
coloca la herramienta que el robot utilizar para
realizar su trabajo. Pueden ser elementos para asir o
agarrar o elementos para aplicacin de procesos
(pintura, atornillado, calor, soldadura)
Sistemas de Control: generalmente se usa un
sistema basado en PLC para controlar el movimiento
del robot.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

Herramientas de punto terminal: dispositivo colocado en el punto terminal del robot


en el cual se coloca la herramienta que el robot utilizar para realizar su trabajo.
Dentro de estas herramientas se pueden citar:
Herramientas para asir objetos:

Pinzas o dispositivos electromecnicos, hidrulicos o neumticos.


Asidores por vaco.

Herramientas para aplicacin de materiales o procesos:

Aplicacin de pegamentos.
Aplicacin de pinturas.
Aplicacin de Calor.
Aplicacin de soldaruras.
Colocacin y apretado de tornillos.
Colocacin de remaches.
Colocacin de piezas por presin.

Sistemas de Control:
Siempre es necesario un sistema controlador por microprocesador para controlar el
robot, generalmente se usa un sistema basado en PLC, y generalmente acta como
servoamplificador de los distintos servoactuadores, como programador de tareas y
secuencias de movimientos, y como memoria de almacenamiento de las mismas
secuencias programadas.
TIPOS DE ROBOTS INDUSTRIALES
Las configuraciones ms conocidas de robots son los robots articulados, robots
SCARA (Selective Compliance Assembly Robot Arm) y los robots cartesianos.
Robots Articulados.
Son artefactos inspirados en el brazo
humano, usan articulaciones rotativas para
moverse dentro de su espacio de trabajo,
aunque
pueden
combinar
tambin
elementos
hidrulicos
o
ejes
de
movimiento lineal que expanden su
libertad de movimiento.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

Robots SCARA
Se trata de robots limitados en su rango de
movimientos a los ejes X e Y (no hay
movimiento en el eje Z) su nombre proviene
de Selective Compliant Assembly Robot Arm
or Selective Compliant Articulated Robot
Arm. Generalmente son ms fciles de
instalar, y programar (dependiendo del
nmero de articulaciones)
Robots Cartesianos:
Son aquellos en los cuales sus ejes principales de
movimiento son lineales y estn en ngulo de 90
grados respecto a sus otros ejes. En ocasiones
son llamados Gantry Robots. Su uso ms
extendido es como actuador principal en las
mquinas asistidas por control numrico por
computadora CNC. Aunque tambin se trata del
sistema de automatizacin ms sencillo utilizado
en la industria.

Parmetros Importantes en la valoracin de Robots Industriales.

Nmero de ejes: ejes de movimiento que tiene el robot para desempearse en


su campo de trabajo.
Grados de Libertad: Nmero de ejes que posee el robot.
Campo o rea de trabajo: es el volumen espacial dentro del cual el robot
puede situar el extremo de su mueca.
Cinemtica: arreglo de los miembros rgidos y las articulaciones en el robot, que
determinan los posibles movimientos del robot.
Capacidad de Carga: Mximo peso que el robot puede manipular.
Velocidad: qu tan rpido se puede mover el punto terminal del robot. Cuando
se mueven todas las articulaciones.
Aceleracin: la mxima aceleracin que puede alcanzar una articulacin
cuando se est moviendo.
Resolucin: Movimiento mnimo que puede producir el robot (condicionado por
la mecnica y el tipo de control).

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

Exactitud: Qu tan cerca o con qu precisin puede el robot alcanzar una


determinada posicin. Capacidad de un robot para situar el extremo de su
mueca en un punto sealado dentro del volumen de trabajo. La exactitud es
mayor cuando su brazo trabaja cerca de la base (inexactitudes mecnicas) . Este
parmetro puede variar dependiendo de la velocidad, el peso manipulado, y la
posicin dentro del espacio o campo de trabajo.
Repetibilidad: Con qu precisin puede el robot retornar a una posicin
previamente programada. No es lo mismo que exactitud, la repetibilidad mide las
variaciones de la exactitud a travs del tiempo. Un ejemplo, si un robot se le pide
retornar a una posicin previamente programada, la repetitividad ser la
desviacin estndar de las diferencias de posicin en las tres dimensiones.
Control de Movimiento: Control no slo en cuanto a las posiciones, sino
tambin en cuanto a la velocidad del movimiento.
Fuente de Poder: naturaleza de los actuadores principales del robot:
hidrulicos o elctricos.
Cumplimiento: Medida de la cantidad de ngulo o distancia que el eje de un
robot se mover cuando una fuerza es aplicada a l. Por ejemplo, cuando un
robot manipula su carga mxima, su punto terminal puede tener una variacin
en su exactitud, producida por la fuerza vertical que le produce el peso
manipulado.

Historia de los Robots:


A lo largo de la historia ha habido varios dispositivos que imitan la naturaleza o las
habilidades humanas, pero slo los robots industriales han conseguido aumentar
niveles de produccin dejando verdadera ganancia a sus dueos. Se citarn
nicamente las referencias industriales de esta historia.
Las primeras patentes en robots industriales datan de 1954, de la compaa
Unimation. Las mquinas de la compaa Unimation fueron originalmente llamadas
mquinas de transferencia programables, ya que su principal funcin era mover
objetos desde una posicin a otra. La mayora de los actuadores eran hidrulicos.
1981 - De los 4 700 robot en uso en Estados Unidos en 1981, por ejemplo, se
utilizaban. 1 500 para soldar, 850 en fundiciones, 840 para cargar y 540 para pintar.
Slo 100 se utilizaban en tareas de ensamblado
1982 - GMF Robotics fue creada en 1982 por GM y Fanuc con el propsito de
desarrollar robots para la industria del automvil. Poco a poco, la operacin se fue
ampliando y, en la actualidad, vende robots para clientes que no guardan ninguna
relacin con la automocin ...GMF Robotics fue creada en 1982 por GM y Fanuc con
el propsito de desarrollar robots para la industria del automvil. Poco a poco, la
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

operacin se fue ampliando y, en la actualidad, vende robots para clientes que no


guardan ninguna relacin con la automocin, en sectores tales como la preparacin
de alimentos y la fabricacin de ordenadores.
En adelante ha habido pocos adelantos en robots industriales, el nmero de las
compaas se ha incrementado, pero casi todas mantienen los tres esquemas
bsicos para los robots industriales: articulados, SCARA, y Cartesianos.
Se han dado avances en robots humanoides, Honda lanz Asimo en 2000, otros
robots en forma de juguetes han sido vendidos en el mercado, pero sus aplicaciones
industriales todava no alcanzan niveles rentables.

Mercado: Marcas Reconocidas de Robots:


KUKA Roboter GmbH:
Compaa fundada en 1973 con el lanzamiento del primer robot: Famulus Robot, se
trataba del primer robot del mundo con seis ejes de accionamiento electromecnico.
El nombre de la compaa KUKA es una abreviatura de Keller und Knappich
Augsburg, tiene su origen en las iniciales de sus fundadores, Keller and Knappich. Es
uno de los principales fabricantes mundiales de robots industriales y sistemas de
automatizacin para sectores que abarcan industrias tan diferentes como las del
automvil, metales, alimentos y plsticos.
FANUC:
Compaa dedicada a la automatizacin, originalmente fundada en Japn en 1972
dedicada a la manufactura especializada en robtica. Es uno de los ms grandes
productores de robots industriales. Tuvo sus inicios siendo parte de fujitsu
desarrollando servosistemas y sistemas de control numrico, tiene subsidiarias en
Amrica y Europa. Su nombre proviene de Factory Automatic Numerical Control.
MOTOMAN ROBOTS:
Subsidiaria en Estados Unidos de la compaa Japonesa Yaskawa Electric
Corporation. Fundada en 1989 en West Carrolton Ohio USA, se ha especializado en
diversos tipos de robots industriales contando entre sus modelos varios robots
SCARA, varios modelos de robots articulados, y uno de los pocos fabricantes que
vende robots con dos brazos en un diseo muy parecido a las extremidades
superiores humanas.

Mitsubishi:
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

Divisin relativamente nueva de la gran compaa Mitsubishi. Los robots Mitsubishi


son comercializados bajo la marca Melfa. La divisin se dedica a la produccin de
Robots articulados y robots SCARA. Su alianza con FESTO le ha abierto nuevas
oportunidades.

COORDINACIN DE UNA APLICACIN CON


ROBOTS

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

10

Programacin de Robots Industriales

2.

COORDINACIN DE UNA APLICACIN CON


ROBOTS (POSICIONES)
Para la ambientacin en la programacin de robots
se iniciar con el paquete de simulacin CIRUS
Robotics. Para abrir el paquete de clic en la lnea
sombreada en la figura de al lado.
Esta accin dar inicio al paquete CIROS Robotics, el
cual permitir conocer todas las funciones de un
robot como los del laboratorio iCIM
Una vez abierta la aplicacin, el primer paso es crear
un proyecto en file-new Project Wizard

Un proyecto en este software significa todo el


conjunto de situaciones particulares acerca de la
simulacin que se va a correr.
Se abrir una serie de ventanas que recopilar esta
informacin.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

11

Programacin de Robots Industriales

La primera ventana recopila


informacin
acerca
del
nombre del proyecto. De el
nombre
que
considere
conveniente,
en
Program
Name escriba una secuencia
corta de letras maysculas y
nmeros. Recuerde bien el
nombre del programa, es el
nombre
que
llevar
el
programa
principal
del
proyecto
que
usted
desarrollar, y en el momento
de
crear
su
programa
principal deber
tomar el
nombre y ubicacin que ha
dado en esta etapa de la
definicin del proyecto.

La ventana siguiente pedir informacin acerca del robot.


Si desea trabajar con los modelos del iCIM escoja cualquiera de los siguientes, con
las especificaciones que se muestran.
La tercera ventana preguntar por los cambios realizados a manera de comentario.
No es un campo requerido pero puede escribir lo que usted considere le servir
despus.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

12

Presione finish para iniciar con el proyecto de simulacin.

Le aparecern en la pantalla de la aplicacin cuatro ventanas con informacin


acerca de su proyecto. La ventana superior izquierda muestra al robot que usted
escogi, otra ventana muestra el listado de posiciones, otra muestra las lneas de
comando del programa principal del robot y una tercera ventana muestra los
mensajes de alarma del sistema.

A continuacin se muestra la pantalla principal de un proyecto recin abierto. Tanto


el nombre del archivo del programa como el nombre del archivo de las posiciones
llevan el nombre que se digit en el campo Program Name en la inicializacin del
proyecto.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

13

VISUALIZACIN DEL ROBOT


Haga clic en la ventana del robot
para que la atencin de la aplicacin
se centre en ella. Valla a View
Standard Views y pruebe cada una
de las opciones para que pueda
visualizar el robot que ha escogido.
Puede hacer la ventana del robot
ms grande o mas pequea segn
su percepcin personal lo requiera.
Tambin puede escoger en el men
View las opciones Zoom In y Zoom
Out para aumentar o disminuir el
tamao del objeto.
Puede moverse dentro de la ventana
escogiendo Move en el men View o
presionando
el
botn
e
inmediatamente yendo a la ventana,
haciendo clic y movindose al punto
de vista deseado.

Puede rotar la vista escogiendo Rotate en el men View o pesionando el botn


e
inmediatamente yendo a la ventana, haciendo clic y rotndo al punto de vista
deseado.
Explore el men View para que se sienta cmodo al trabajar en la programacin del
robot que ha escogido.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

14

MOVIMIENTO DEL ROBOT


Para tomar control del robot valla a
Programing Teach-In para que se le abra
la ventana de modo Jog Operation:

En este momento usted tiene el control del robot. Con los botones al lado de los
nombres de las articulaciones puede mover el robot dentro de la ventana grfica
intente todos los movimientos y compruebe los alcances de cada una de las
articulaciones. Tambin puede variar la velocidad de los movimientos del robot
utilizando el control

A mayor porcentaje, ms velocidad. 100% es la velocidad mxima. Puede abrir y


cerrar las mordazas del robot presionando el botn Close Hand (al cerrar la pinza el
botn cambiar a Open Hand)
Modo XYZ
Hasta este momento usted ha controlado el robot moviendo cada una de sus
articulaciones. En procesos cotidianos usted requerir que la pinza del robot se
mueva desde una posicin hasta otra llevando algo en ella. Hacer este
desplazamiento moviendo una articulacin a la vez le resultar muy difcil y tedioso.
Afortunadamente hay otra manera de mover al robot todo a la vez cuidando la
inclinacin de la pinza constante durante todo el trayecto. Este es el modo XYZ
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

15

Programacin de Robots Industriales

Para ingresar a este modo de control del


robot
Escoja XYZ Jog en la ventana Jog Operation.
La apariencia de la ventana cambiar, y
podr ver controles para mover el robot en
lnea recta en X, en Y y en Z.
Cules son los ejes x, y, z?
La mano derecha brinda un recurso
mnemotcnico fcil de comprender. Al poner
el dedo ndice, el medio y el pulgar de la
mano derecha perpendiculares entre si,
podemos ver la representacin del lado
positivo de los ejes x, y z:

Expliquemos esto con ms detalle:

El ndice apunta en la direccin y sentido positivo


del eje X.
El dedo medio apunta en la direccin y sentido
positivo del eje Y.
El pulgar apunta en la direccin y sentido positivo
del eje Z.

El dedo ndice apunta hacia afuera desde el frente del


robot. El frente del robot depende de cada modelo, puede
obtenerse una idea del frente poniendo la vista frontal del
robot en la ventana de visualizacin.
Mueva el robot trazando un cuadrado alrededor de l, esto lo lograr fcilmente
utilizando los controles X , Y. Note que existen lmites para el movimiento rectilneo,
ya que el robot no puede alcanzar todos los puntos de la lnea recta, algunos le
resultarn muy lejanos (las esquinas del cuadrado) y algunos le resultarn tan
cercanos que sus articulaciones no podrn proporcionar el punto sin antes cambiar
la posicin de las articulaciones.

Modo JOINT

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

16

Al usar el modo joint se abre la posibilidad de


mover individualmente cada articulacin del
robot.
Al momento de elegir el modo JOINT podr
observar que los controles de movimiento
cambian y se despliega un control para
mover cada articulacin en cada sentido.
Utilice este tipo de control cuando necesite
desarrollar movimientos de alta complejidad
que incluyen inclinacin o direccionamiento
especfico del elemento terminal del robot.

Modo TOOL

Se aprendi en el modo XYZ que en ese tipo de control de movimiento el elemento


terminador del robot (pinza) conservara su inclinacin y sentido y que se movera
siguiendo en forma paralela los ejes cartesianos absolutos. El modo Tool tambin
permite el control de movimiento en forma paralela a los ejes, pero con la
particularidad que los ejes que sigue el movimiento del modo Tool no son paralelos a
los ejes absolutos.

Al trabajar en el modo Tool el control de movimiento seguir paralelamente los ejes


que definen la inclinacin y sentido del elemento terminador. De esta manera si la
extremidad final del robot est inclinada en un sentido, los ejes en los cuales se
mover seguirn paralelamente los ejes inclinados que definen la extremidad final
del robot.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

17

Programacin de Robots Industriales

La figura de al lado
muestra los ejes a
lo largo de los
cuales se movera
el
elemento
terminador
del
robot al escoger
este tipo de control
de movimiento.
Observe que los
ejes
no
son
paralelos a X, Y, Z
sino que tienen su
propia direccin y
sentido particular.

DEFINICIN DE POSICIONES EN UN ROBOT INDUSTRIAL


La programacin de rutinas de un robot se basa en posiciones. El robot se mover
desde una posicin inicial a una posicin final en cada uno de sus movimientos.
Algunas posiciones estn definidas para realizar una labor especfica en la posicin,
tal como asir un objeto, si se trata de un robot con pinza o mordaza, u otra labor de
ensamble, como apretar un tornillo o aplicar una sustancia adhesiva. Otras
posiciones son simplemente el punto de origen para iniciar el movimiento hacia otra
posicin, y otras son simplemente el punto neutral entre muchas posiciones.
Ejemplo de seteo de posiciones:
Se ubicar la pinza del robot en la posicin inicial en el plano de referencia
horizontal (lo que la visualizacin representa como el piso) cualquier ubicacin que
sea en z=0. Se guardar esta posicin como POSICION1
Para hacer esto ubique la pinza del robot en el lugar indicado, y presione en la
ventana de control de movimiento del robot (JOG Operation) el botn
.
Si usted recin acaba de iniciar un proyecto usted tendr en la pantalla principal la
ventana del listado de posiciones, y en ella aparecer la informacin de la posicin
que acaba de dar. Las posiciones en la tabla de posiciones quedan definidas como
una serie de 6 coordenadas:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

18

(X,Y,Z,Roll,Pitch,Yaw) las coordenadas X, Y,Z definen las posiciones cartesianas del


elemento terminal respecto al origen del robot. Las coordenadas que ya se han
explicado en el apartado de manipulacin del robot.
Las coordenadas Roll,Pitch,Yaw definen la
orientacin del elemento terminal en cuanto a
la rotacin del elemento en el eje X, Y y Z, y
sus unidades son grados.
La primera componente define la rotacin del
elemento terminal alrededor del eje X, la
segunda componente define la rotacin del
eje.
En el caso del robot auxiliar del CNC la ltima
orientacin C indica el desplazamiento lineal.

Si es ese su caso, le aparecer una ventana con la informacin de la posicin. D


doble Clic en la lnea que tiene la posicin que acaba de guardar. Aparecer una
ventana como la que se muestra:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

19

En Position Name puede usted poner el nombre que desea dar a la ventana (puede
colocar aqu la palabra piso si lo desea, o cualquier otra palabra que le indique
algo para el procedimiento que se propone desarrollar.
Coloque la pinza del robot en una posicin bastante alto y asgnele un nombre que
tenga significado para el proceso que est por desarrollar.
Posicinese en la ventana que muestra las posiciones, y presione el botn guardar
en la barra de herramientas superior. Si usted recin acaba de crear el proyecto,
usted guardar el archivo que ya existe y que lo cre el sistema al inicializar el
proyecto. Si usted no est trabajando con un proyecto recin creado se le pedir un
nombre para el listado de posiciones que ha generado y un tipo de archivo, asigne el
mismo nombre que usted dio en para el programa en el inicio de la definicin del
proyecto, y escoja como tipo de archivo un tipo POS.
LOS NOMBRES DEL ARCHIVO DE POSICIONES Y DEL ARCHIVO DEL PROGRAMA
DEBEN SER IGUALES, SU UNICA DIFERENCIA DEBE SER LA EXTENSIN (.POS , .MB4) .
DE LO CONTRARIO AL MOMENTO DE COMPILAR EL PROYECTO NO SE TOMARN
COMO INFORMACIN COMPLEMENTARIA.
Con las posiciones guardadas, podemos proceder ahora a desarrollar el primer
programa de secuencias de movimiento del robot.

PROGRAMACIN BSICA DE UN ROBOT INDUSTRIAL


La programacin del robot Mitsubishi usado en los laboratorios de Mecatrnica de la
Universidad Don Bosco usan el lenguaje Melfa Basic IV. Como casi cualquier otro
lenguaje de programacin, se trata de una secuencia ordenada de instrucciones
donde cada lnea contiene una sentencia y cada sentencia est compuesta
principalmente por un comando y uno o ms parmetro que complementan la
accin del comando.

a) Para iniciar cualquier programa es necesario antes que nada


estar en el CIROS Robotics dentro de un Proyecto.
b) Para abrir un listado de posiciones es necesario ir a > file >
open y en el cuadro de dilogo poner el tipo de archivo
, y escoger el listado de posiciones que ya se ha seteado.
c) Para iniciar un programa es necesario ir a > file > New > file y
escoger en el tipo de ventana a abrir la opcin que se muestra:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

20

Con lo anterior se abrir la ventana para la edicin de programas.


El primer programa consistir en mover al robot desde la posicin 1 a la posicin 2 y
regresar nuevamente a la posicin 1, repetir el procedimiento y finalizar en la
posicin 3.
El programa se muestra a continuacin y consta de dos comandos:
Comando DEF y el modificador POS seguido del nombre asignado a la una posicin
cuando su nombre no comienza con P. Ambos comandos definen en el programa
que la secuencia de caracteres que le sigue es en efecto una posicin (el sistema lo
buscar dentro del archivo de las posiciones). La secuencia de caracteres debe
tener una secuencia mxima de 4 caracteres alfabticos y los siguientes caracteres
numricos.
Comando MOV define un movimiento necesariamente lineal desde la posicin actual
hasta la posicin definida por el nombre de la posicin a continuacin del comando.
El primer programa quedara de la siguiente manera:
10
20
30
40
50
60
70
80
90

DEF POS LOC1


DEF POS LOC2
DEF POS LOC3
MOV LOC1
MOV LOC2
MOV LOC1
MOV LOC2
MOV LOC2
END

Existe la opcin de moverse a un sitio cercano al punto de destino esto es muy til
cuando se quiere alcanzar el punto de destino en una forma verticalmente
perpendicular. La mayora de colocaciones de piezas deben ser manipuladas de esta
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

21

Programacin de Robots Industriales

manera (colocar un tornillo, un eje vertical en un orificio, poner una pieza en su


soporte,) para lograr esto se usa un modificador en el comando MOV, que consiste
en
Dos pasos son necesarios para que el programa pueda ser desarrollado por el Robot,
Guardar el programa e incorporarlo al proyecto que se est desarrollando.

Para Guardar el programa:

Para compilarlo:

Ubique el cursor en la ventana de


programa y de clic en save:

Escoja la secuencia:

Y luego en la ventana que emerge


escoja Add:
Se le abrir un cuadro de dilogo que
preguntar la ubicacin del archivo
con extensin .MB4
LOS NOMBRES DEL ARCHIVO DE
POSICIONES Y DEL ARCHIVO DEL
PROGRAMA DEBEN SER IGUALES, SU
UNICA DIFERENCIA DEBE SER LA
EXTENSIN (.POS , .MB4) . DE LO
CONTRARIO
AL
MOMENTO
DE
COMPILAR EL PROYECTO NO SE
TOMARN
COMO
INFORMACIN
COMPLEMENTARIA.

Una vez que el programa est guardado puede correrse antes que nada escogiendo
el proyecto actual como el proyecto activo.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

22

Programacin de Robots Industriales

En el men Programing se escoge la opcin Project


Management.
Con lo anterior se abre la una ventana llamada
Project Management, y dentro de la ventana, en la
pestaa Project se presiona el botn que se indica en
el dibujo, el cual genera el texto de ayuda Set as
Active Project

En este momento el programa puede ser ya corrido


presionando el icono que se muestra en la figura al
lado, dicho icono se encuentra en las barras superiores
en la pantalla.

PROGRAMACIN AVANZADA DE ROBOTS INDUSTRIALES.


La programacin de robots atiende a procesos que muchas veces son repetitivos y
montonos. Un programa ordinario de movimientos a travs de distintas posiciones
resultara muy largo si no se contara con otros comandos para dirigir el curso del
programa por lneas repetitivas.
A continuacin se presenta una serie de comandos que hacen ms fcil la
programacin de labores repetitivas o de movimientos complicados.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

23

Comando GOTO
La sentencia GOTO indica al robot que el control de la secuencia de instrucciones se
traslada a la lnea en la cual indica el nmero a continuacin de la sentencia. Como
un ejemplo, se puede hacer que el programa anterior se desarrolle una y otra vez
indefinidamente hasta que alguien presione el botn de STOP en la barra de tareas.
10
20
30
40
50
60
70

MOV POCISION1
MOV POSICION2
MOV POSICION1
MOV POSICION2
MOV POSICION3
GOTO 10
END

Instruccin FOR-NEXT
Existe la posibilidad de mantener un lazo repetitivo de instrucciones que se repite
un nmero determinado de veces y que luego termine el programa. El Set de
instrucciones FOR TO STEP NEXT brindan los controles necesarios para que
esto sea posible.
Se trata de repetir un conjunto ordenado de sentencias un nmero determinado de
veces. Se define la sentencia de inicio- reinicio de la secuencia, y la secuencia de
retorno.
Sentencia Inicio:
Sentencias a
Desarrollar:
Sentencia de
Retorno:

FOR VariableControl = ValorInicio TO ValorFinal STEP


Intervalo
Cualquier set de instrucciones numeradas entre la Sentencia
de Inicio y la Sentencia de Retorno.
NEXT VariableControl

El lazo de comandos se desarrollar desde la sentencia de inicio hasta la sentencia


de Retorno, y Regresar de nuevo a la Sentencia de Inicio.
Qu valor tomar la VariableControl?

Al iniciar tomar El valor ValorInicio.


Mantendr el valor ValorInicio hasta llegar a la sentencia NEXT.
Al ejecutar la sentencia NEXT el valor de VariableControl se incrementar en
el valor de la variable Intervalo, es decir tendr el valor = ValorInicio +

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

24

Intervalo e inmediatamente la secuencia de instrucciones se mover a la


lnea que contiene las sentencias FOR TO STEP
Al regresar de nuevo a la lnea NEXT incrementar de nuevo el valor de
VariableControl.

Cuntas veces repetir el lazo?


Hasta que la VariableControl iguale o supere el valor ValorFinal.
Como ejemplo se puede desarrollar el programa anterior 10 veces consecutivas:
10
20
30
40
50
60
70
80

FOR X = 1 TO 10
MOV POCISION1
MOV POSICION2
MOV POSICION1
MOV POSICION2
MOV POSICION3
NEXT X
END

Como no se ha especificado el comando STEP, la variable X se ir incrementando de


uno en uno. Cuando X valga 9 y llegue al valor de 10, regresar al inicio y ejecutar
por ltima vez las instrucciones de la secuencia, al llegar a la lnea NEXT y pasar a
11 ya no regresar sino que pasar a la instruccin siguiente, que en este caso es
END
PAUSAS EN EL PROGRAMA
Se puede detener momentneamente la ejecucin de la secuencia de instrucciones
con ayuda de otra instruccin que ordene pausar la ejecucin durante un perodo de
tiempo especfico. El comando DLY seguido de un espacio y un nmero entero
ordena la cantidad de segundos que durar la pausa. A continuacin se muestra el
programa inicial de esta gua, pero esta vez mantiene una pausa de 2 segundos
despus de cada movimiento.
10
20
30
40
50
60
70
80

MOV POCISION1
DLY 2
MOV POSICION2
DLY 2
MOV POSICION1
DLY 2
MOV POSICION2
DLY 2
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

25

90 MOV POSICION3
100 END
MOVIMIENTO RECTILNEO A VELOCIDAD CONTROLADA
Al utilizar el comando MOV, se garantiza la llegada al punto final que se seala a
continuacin del comando, pero no se garantiza que la trayectoria sea una lnea
recta. La trayectoria desde la ltima posicin hasta el punto sealado puede ser la
que la unidad de control considere ms cmoda para sus ejes, ya sea en cantidad
de movimiento de los mismos o en los necesarios cambios de sentido que sean
necesarios para conseguir el objetivo final.
El comando MVS es el mismo comando MOV pero ste hace el movimiento en lnea
recta, que no es necesariamente la ruta de menor movimiento de articulaciones del
robot (lo que hace el comando MOV)
La sintaxis de MVS es muy parecida a la del comando MOV:
MVS Posicin
Donde Posicin indica el identificador de la posicin a la cual se quiere que el
robot llegue.
Ejemplo:
30 MVS PPAL
VELOCIDAD CONTROLADA EN MOVIMIENTO RECTILNEO
SPD <Velocidad designada en [mm/s]>
Es posible controlar la velocidad en un movimiento rectilneo con ayuda de comando
SPD declarado con anticipacin a la lnea que contiene el comando MVS. El valor
fijado con el comando permanece constante durante todo el programa mientras no
exista otra declaracin distinta de velocidad.
Ejemplos:
10 SPD 100
20 MVS P2
30 SPD M_NSPD

Coloca el valor por defecto

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

26

OTRAS INTRUCCIONES DEL LENGUAJE:


Comentarios:
Los comentarios los puede escribir, despus del nmero de lnea, como REM o con la
comilla .
Ejemplo:

10 Este programa no ejecuta ningn comando o funcin.


20 Este apstrofe inicial o la palabra REM invalidan estas lneas.
30 REM Si digita este programa y lo corre, no obtendr absolutamente ningn
resultado.

Condicionales:
IF (__) THEN (__) ELSE (__)
Realiza las instrucciones siguientes a la palabra THEN solo si se cumple la condicin
planteada a continuacin de la palabra IF. Si no se cumpliera la condicin es posible
aadir una nueva opcin de instrucciones seguida de la palabra ELSE. Este set de
condicionales puede ser utilizado en una sola lnea (para ejecutar un solo comando)
o puede ser declarada para ejecutar varias lneas hasta que el programa encuentre
la palabra ENDIF.
A continuacin se da un ejemplo de la declaracin del condicional en una sola lnea.
En este caso, si la variable MDATA es mayor que 15, el programa asigna el valor a
a la variable CDATA, y si no es mayor a 15 (ELSE), le asigna el valor b.
50 IF MDATA > 15 THEN CDATA = a ELSE CDATA = b

100 IF MDATA = 17 THEN 400


(cuando la instruccin siguiente es un nmero se asume un GOTO #)
Para utilizar este condicional en varias lneas, la lnea de comando que tiene el IF
THEN debe de terminar con la palabra THEN sin ningn otro comando que le siga, de
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

27

esta manera el programa asumir que si y slo si la condicin se cumple, debe de


ejecutar las lneas siguientes hasta encontrar la palabra ENDIF que identifica el fin
de las instrucciones del condicional. Para una mejor comprensin se brinda el
siguiente ejemplo.
100
110
120
130
140
150
160

IF M1 > 10 THEN
M1 = 10
MOV P1
ELSE
M1 = -10
MOV P2
ENDIF

SELECT CASE BREAK


Ejecuta una o varias sentencias cuando la variable seleccionada toma el valor que
se define a continuacin de la palabra CASE.
La primera instruccin (SELECT) define la variable a evaluar. Se escribe: SELECT
{variable}
La instruccin CASE puede ser utilizada cuantas veces sea necesario en el
programa. Cada instruccin CASE definir un valor que la variable seleccionada
puede tomar.
El conjunto de instrucciones CASE BREAK ejecuta las sentencias que estn entre
ambos comandos si y solo si se cumple que la variable definida en CASE toma los
valores a continuacin de la palabra CASE (el nombre de la variable no se nombra
en la sentencia del CASE, se usa CASE IS cuando se quieren poner comparadores).
El conjunto de instrucciones DEFAULT BREAK ejecuta las sentencias que estn
entre ambos comandos si ninguna de las condiciones que definieron los CASE se
cumple.
Al final de las mltiples evaluaciones es necesario terminar con una sentencia END
SELECT para indicar al programa que ya no se evaluar ms la variable escogida
con el SELECT
SELECT <Expresin>
CASE <Expresin>
[<Proceso>]
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

28

Programacin de Robots Industriales

BREAK
DEFAULT
[<Proceso>]
BREAK
END SELECT
Ejemplo:
10 SELECT MCNT
20 M1 = 10
30 CASE IS <= 10
40 MOV P1
50 BREAK
60 CASE 11
70 MOV P2
80 BREAK
90 CASE 12
100 MOV P3
110 BREAK
120 CASE 13 TO 18
130 MOV P4
140 BREAK
150 DEFAULT
160 M_OUT(10) = 1
170 BREAK
180 END SELECT

'MCNT <= 10
'MCNT = 11
'MCNT = 12
'13 <= MCNT <= 18
'Other than the above

LAZOS WHILE-WEND
Adems del lazo FOR-NEXT visto anteriormente se tiene el lazo WHILE-WEND que
repite las instrucciones contenidas entre las lneas que contienen a ambas
sentencias mientras se cumpla la condicin descrita a continuacin de la sentencia
WHILE.
En este caso el lazo comienza en la lnea donde se encuentra el comando WHILE
(seguido de la condicin que debe cumplirsepara que el ciclo se cumpla), y termina
en la lnea donde se encuentra slo la palabra WEND (que es donde la ejecucin del
programa regresa a la primera lnea del lazo, la sentencia con el comando WHILE).

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

29

Para que el lazo no sea infinito, la condicin a evaluar debe ser una que cambie a lo
largo de la ejecucin iterativa del lazo, para que en algn momento la condicin no
se cumpla, y la ejecucin del programa pase a la lnea siguiente a la del paso WEND.
A continuacin se muestra un programa que mueve el robot hacia una posicin
determinada, y luego hace avances de 5 mm cada vez que el lazo WHILE WEND
desarrolla un ciclo. El lazo termina cuando CONTADOR toma el valor de 20, que al
evaluarse es mayor que 15 y salta la ejecucin a la lnea siguiente a WEND que es la
sentencia END.
Ejemplo:
10
20
30
40
50
60
70
80
90

DEF INTE CONTADOR


CONTADOR = 5
MOV P1
WHILE CONTADOR < 20
CONTADOR = CONTADOR + 5
MOV P1, CONTADOR
DLY 1
WEND
END

Espera por un valor de variable


Espera el cambio de una variable para ejecutar una instruccin.
WAIT(<Valor numrico>) = <Constante numrica>
Ejemplo:
10 WAIT M_IN(1) = 1
20 WAIT MDATA = 200
Subrrutinas
Dirige la ejecucin del programa hacia una determinada lnea o etiqueta. Cuando el
programa encuentra la sentencia RETURN retorna la ejecucin del programa a la
lnea siguiente a la cual se le hizo el llamado.
GOSUB # de linea de programa
RETURN

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

30

Programacin de Robots Industriales

Ejemplo:
40 GOSUB 500
50

500 INICIO DEL PROCESO

580 RETURN

Si se quiere colocar una etiqueta en lugar de la lnea del programa se debe usar un
asterisco antes de la primera letra de la etiqueta.
Ejemplo:
40 GOSUB *PROCESO
50

100 *PROCESO

180 RETURN
Apertura y cierre del elemento terminal.
Abre o cierra el elemento terminador (generalmente una pinza) El nmero del
manipulador generalmente es 1 (cuando no existe otro elemento manipulador)
Puede consultar Modeling-Model Explorer para verificar el nmero de manipulador
que se tiene en el proyecto actual.
HOPEN/HCLOSE <#del manipulador>
10 HOPEN 1
20 CLOSE 1

TCNICAS DE
PROGRAMA

PROGRAMACIN

PARA

INCORPORAR

DESTREZA

AL

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

31

Programacin de Robots Industriales

Puede que un programa guiado slo por posiciones finales genere movimientos
torpes que no cumplan el objetivo del proceso con la destreza requerida. A
continuacin se presentas algunas tcnicas que ayudan a que los procesos se
desarrollen con un grado de precisin y maestra que evitan pequeos errores y
torpezas.
MOVIMIENTO EN INTERPOLACIN CIRCULAR (DESCRIBIENDO ARCOS DE
CRCULO)
En algunas ocasiones debido al reducido espacio de trabajo es necesario sortear
elementos del entorno para evitar colisiones, esto puede ser realizado con varios
movimientos arbitrarios o rectilneos o bien describiendo una trayectoria circular.
En la aplicacin de sustancias, pinturas, o el trazado de trayectorias en superficies,
en ocasiones es necesario el trazo de trayectorias circulares. Es estas ocasiones
cuando es til contar con comandos que puedan mover el robot en lneas no rectas.
El comando para realizar esta operacin es el comando MVR, y su sintaxis es de la
siguiente manera:

MVR
<Punto
de
Inicio>,
Intermedio>, <Punto final>

<Punto

Donde:

Punto de inicio es el punto donde


comienza el trazo del arco de
circulo.
Punto Intermedio es cualquier
punto a medio camino del arco del
crculo.
Punto Final es el punto donde
termina el arco de crculo.

Al momento de trazar la trayectoria circular el sistema de control del robot dibuja el


arco de crculo que intercepta a los tres puntos, el cual slo puede ser parte de un
crculo especfico. Hay que tener el cuidado que la circunferencia est dentro del
campo de trabajo del robot.
Ejemplo:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

32

El siguiente programa hace que el robot trace un arco de circulo uniendo los puntos
P1, P2, P3. Dichos puntos han sido definidos previamente como posiciones dentro
del campo de trabajo del robot y todos son posiciones que puede alcanzar el robot.
10 MOV P1
20 MVS P1,P2,P3
30 END

POSICIN INICIAL, FINAL Y DE ACERCAMIENTO.


Cuando interesa mover al robot desde una posicin inicial a una posicin final el
trayecto rectilneo puede no ser la mejor opcin. Puede haber otros elementos que
impidan el avance en lnea recta, o puede ser necesario llegar a la posicin final
describiendo una trayectoria perfectamente horizontal o vertical (el caso del
ensamble de una pieza que encaja con otra a lo largo de un eje).
Para superar estos requerimientos, usualmente se definen en un movimiento desde
un punto a otro, tres o ms posiciones:
1) Una posicin inicial.
2) Una posicin de acercamiento.
3) Una posicin final.
En la figura siguiente se muestra un movimiento desde una posicin superior hasta
una a una altura intermedia, pero con la modalidad especfica que para llegar a la
posicin final se llega en un movimiento horizontal.

La figura marcada con la flecha es la posicin de acercamiento, primero se llega


desde la posicin a la posicin de acercamiento, y luego se desplaza desde la
posicin de acercamiento a la posicin final, haciendo posible que el desplazamiento
a la posicin final sea horizontal.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

33

Una ayuda importante para definir posiciones de acercamiento la brindan los


comandos de movimiento MOV, MVS, MVR y otros propios de la marca de robots
con la que se est trabajando. En aplicaciones de colocacin de piezas sobre
superficies o compartimientos horizontales, el comando MOV puede alterar su
posicin su posicin final en el eje Z de las coordenadas TOOL del elemento
terminador con un solo modificador. Se ilustrar esta potencialidad con el siguiente
ejemplo:
10 MOV POSICION1, -50
20 MOV POSICION1
30 END
El programa anterior posiciona el punto terminal del robot 50 mm antes de
POSICION1 en las coordenadas del elemento terminador (es decir -50 mm en la
direccin Z TOOL, que es el eje cartesiano paralelo al elemento terminador), y luego,
lo posiciona en la POSICION1 propiamente dicha.
La sintaxis del modificador puede deducirse intuitivamente: el nmero despus de la
coma indica cuantos milmetros debern restarse a la posicin final. Como se quiere
posicionar antes de la posicin POSICION1, se da un nmero negativo (un nmero
positivo indicara que es despus de la posicin en cuanto al eje Z TOOL se refiere)

POSICIN DE REFENCIA (HOME)


Es saludable que exista una posicin de HOME para la operacin del robot. Porqu?
Dado que los robots realizan trabajos rutinarios, es bueno que exista una referencia
para iniciar o terminar cualquier operacin.
Si se define una posicin de HOME, para que cualquier operacin comience y
termine con ella, ser ms fcil concatenar operaciones, ya que aunque las
operaciones sean completamente distintas, la posicin de HOME brinda un eslabn
para amarrar todas las operaciones sin que existan movimientos bruscos entre las
operaciones.
Qu posicin es deseable para HOME?
No hay ninguna regla especfica, puede tratarse de una posicin que quede como
punto intermedio a todos los posibles movimientos en todas las posiciones. Puede
ser tambin una posicin en la cual el robot interfiere menos con otros elementos
mviles o fijos del entorno industrial dnde se encuentra. Puede ser una posicin de
seguridad en la cual no ocasiona peligro para nadie.
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

34

Cundo se ubica el robot en la posicin HOME?


Despus de cada operacin.
Recordemos que cada operacin puede ser definida con un programa. Lo ideal es
que toda operacin tenga como punto de partida la posicin HOME y que termine en
ella. Esto evitar los problemas que puede ocasionar un cambio en el orden de las
operaciones, al mismo tiempo que ayudar a hacer ms fcil la incorporacin de
nuevas rutinas o programas sin necesidad de alterar los ya existentes.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

35

MANEJO DE OBJETOS VIRTUALES

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

36

Programacin de Robots Industriales

3.

MANEJO DE OBJETOS VIRTUALES.

Como bien suponemos, El objetivo de la operacin del robot no slo es el


movimiento de si mismo por si mismo. Se pretende manipular objetos. CIROS
Robotics en efecto puede hacer algo ms que simular un robot, puede tambin
simular objetos fsicos.
Para simular un objeto es necesario antes que nada crearlo dentro del proyecto.
Para esto es necesario seguir los siguientes pasos:
En la barra de herramientas escoja Modeling
Model Explorer
Esto le abrir en el rea de trabajo una ventana
llamada Model Explorer. Dentro de la ventana
busque la divisin Objects.
D clic derecho en Objects y valla a New From
Model Library . Se abrir una nueva ventana en la
cual podr escoger distintos objetos a insertar en su
proyecto.
Escoja Micellaneous
Primitive.
Y Dentro de esta categora
escoja BOX
Presione el Boton Add
Presione el botn Close.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

37

Programacin de Robots Industriales

Regrese a la ventana de
Model Explorer
En el Explorador del modelo
ubquese en Objects
Dentro de los objetos de clic
derecho a BOX y en el men
que se despliega escoja
properties.

En la ventana que se abrir podr cambiar las propiedades del objeto que ha
creado.

En la Seccin General puede cambiar


nombre al objeto.

En la seccin Pose puede mover el objeto


en el espacio visible avanzando por por
pasos. Defina el tamao en el campo
increments.

En la seccin Visualizalization puede cambiar el color del objeto creado, y aun definir
caractersticas especiales de su apariencia tales como el color en general del objeto,
sus aristas, su transparencia u opacidad, ect.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

38

Una vez definido el objeto, si se quiere que el objeto sea manipulable, ser
necesario aadir un grip-point al mismo, de lo contrario el objeto virtual ser
simplemente una imagen que no podr ser ni tocada ni movida en el espacio.
Para definir un grip-point, abra el ModelExplorer y expanda Objects, Box (o el
nombre que asign al objeto recin
creado), y dentro del objeto escoja Base.
De clic derecho sobre Base y en el men
que se despliega escoja New, en new
escoja Grip Point.
Aparecer inmediatamente en el lado
derecho del model Explorer un nuevo
elemento llamado Grippoint_1
Haga clic derecho sobre l para
desplegar el men de opciones del Grip
Point. Escoja Properties para cambiar los
atributos del grip Point.
Podr usted apreciar una ventana titulada Properties for grip point. En ella podr
modificar las propiedades del objeto a su gusto, tales como el nombre. Tambin
puede alinear el grip point con el objeto mismo en el apartado Pose.
El Grip Point como espacio donde acta el agarre del objeto est representado en el
objeto como un cubo de distinto color al del objeto. Si ueted considera que no est
bien colocado como para poder tomar la pieza con la pinza del robot, muvalo con
respecto al centro del objeto mismo utilizando los controles X , Y ,Z en el apartado
Pose de la ventana de Properties for grip point.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

39

Ahora puede acercar la pinza del robot a el objeto que acaba de crear y ver usted
que al cerrar la pinza (botn Close Hand) en la ventana que se abre con Teach In. El
objeto se queda pegado a la pinza de robot y que no se despegar hasta que la
pinza se abra nuevamente.
Si ha hecho la prueba de agarrar y soltar el objeto, notar usted que en ambiente de
CIROS Robotics no existe la gravedad. Y que el objeto permanece en el lugar en el
espacio dnde lo han dejado. Tome en cuenta este hecho en el momento de hacer
movimientos de objetos virtuales.
Coloque otro objeto, puede ser de forma cilndrica o un cubo de otro color, en una
posicin no muy cercana al anterior y determine la posicin donde sujetarlo.
Coloque un punto intermedio donde pueda dejar temporalmente y luego volver a
tomar uno de los objetos mientras manipula el otro.
EJERCICIO:
Haga un programa que continuamente intercambie de posicin los dos
objetos creados anteriormente, utilizando para ello una posicin
intermedia.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

40

MANEJO DE UN SISTEMA PALLETIZADO

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

4.

41

MANEJO DE UN SISTEMA PALLETIZADO

Cuando se trabaja en procesos industriales la colocacin de los productos en un


arreglo ordenado es parte de los pasos finales de produccin. Definir una matriz
horizontal de puntos para la colocacin de los productos terminados precisando
posiciones individuales puede ser un proceso largo y tedioso.
El lenguaje Melfa Basic 4 puede ayudar a simplificar la construccin de una matriz
de posiciones utilizando una sola lnea de comando para su definicin y un solo
identificador acompaado de un nmero para llamar a cada una de las posiciones
de la matriz.
Para
hacer
uso
de
esta
funcionalidad
es
necesario
entender las dimensiones de la
matriz y la manera en que Melfa
Basic 4 la comprende.
Se definen cuatro posiciones en la
matriz en forma de puntos
cartesianos:

El
El
El
El

punto
punto
punto
punto

de Inicio
final en B
final en A
Diagonal

Y adems se definen el nmero de


posiciones que la matriz va a tener
en el eje A y en el eje B (este
nmero incluye al punto de inicio y
al punto final)
La lnea de comando que define la matriz se muestra a continuacin:
DEF PLT

{No pallet}, {punto inicio}, {punto final A}, {punto final b},
{punto diagonal}, {posiciones en A}, {posiciones en B},
{asignacin de direccin}

A continuacin se explica el significado de los parmetros del comando:

{No. Pallet} es un nmero que identifica a la matriz puede ser desde 0 a 8.


{punto inicio} son las coordenadas del punto inicial de la matriz.
{punto final A} son las coordenadas del punto final en la direccin A
{punto final B} son las coordenadas del punto final en la direccin B
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

42

{punto diagonal} son las coordenadas del punto final diagonalmente opuesto
al punto inicio.
{posiciones en A} es el nmero de posiciones que la matriz tiene en la
direccin A (melfa Basic 4 entiende que todas las posiciones son
equidistantes y que stas incluyen la inicial y la final)
{posiciones en B} es el nmero de posiciones que la matriz tiene en la
direccin B (melfa Basic 4 entiende que todas las posiciones son
equidistantes y que stas incluyen la inicial y la final)
{asignacin de direccin} es la forma en la cual se van a leer las posiciones
de la matriz, teniendo como posicin 1 el punto inicio. El significado de este
parmetro se muestra a continuacin:
o 1 = Zigzag. (camino sinuoso, una lnea comenzando a la iquierda, la
siguiente a la derecha, la siguiente a la izquierda ...)
o 2 = la misma direccin en cada lnea. (la primera lnea comienza en la
posicin inicial, la segunda en la posicin justo encima de la posicin
inicial)
Una vez definida la matriz de posiciones del pallet se llama a cada posicin
igualando una variable de posicin (la cual ha sido definida como tal al principio del
programa) a una colocacin especifica del pallet. Dicha posicin se llama de la
siguiente manera:
PLT {No.Pallet}, {No. De Posicin}
Esta notacin para las posiciones puede ser llamada desde cualquiera de los
comandos de movimiento, tales como el comando MOV, MVS o MVR ponindola
entre parntesis. Por ejemplo, si quiere mover el robot desde su posicin actual
hasta la posicin 15 del pallet que usted ha definido lo puede hacer de la siguiente
manera:
60 MOV (PLT 1,12)
El siguiente ejemplo define un pallet de 2 x 3 posiciones y hace una rutina
movindose a cada una de las posiciones abriendo la pinza del robot en cada punto.
10
20
30
40
50
60
70

DEF POS PLTPOS


MOV PHOME
HCLOSE 1
DEF PLT 1,PINIC,PFINA,PFINB,PDIAG,2,3,1
DEF INTE X
SPD 100
FOR X = 1 TO 6
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

43

80 PLTPOS = PLT 1, X
90 MOV PLTPOS, -50
100 MOV PLTPOS
110 HOPEN 1
120 MOV PHOME
130 HCLOSE 1
140 NEXT X
150 MOV PHOME, -50
160 HOPEN 1
170 END
Para lo anterior se ha definido una serie de posiciones al ras del suelo, es decir con
Z = 0 Las posiciones se muestran a continuacin:

OTRO EJEMPLO:
El paletizado se usa cuando se tiene un almacn fsicamente simtrico con muchas
posiciones donde se quieren almacenar objetos y no se quieren guardar las n
posiciones una por una.
Para ello primero se debe definir el lugar (mximo 8 lugares) desde donde se
tomarn los objetos o a donde se dejarn, es decir, la matriz.
40 DEF PLT 1, <Pinicial 1. fila>, <Pfinal 1. fila>, <Pinicial ltima fila>, <Pfinal
ltima fila>, <# de columnas>, <# de filas>, <orden en el que se hace el
paletizado, puede ser 1 2>
Luego se define la variable entera que debe llevar el nmero de localidad:
50 DEF INTE <nombre>
A continuacin se define una variable que almacena la posicin:
60 DEF POS <nombre>
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

44

Luego creamos un ciclo FOR desde la localidad 1 hasta la N que tenga la matriz
durante l se toma la variable de posicin = PLT 1, <variable de posicin> y se
guarda el objeto en esa variable y luego se ejecuta NEXT

Ejemplo:
5 REM Programa de ejemplo del paletizado
10 DEF POS INICIO
20 DEF POS P4
30 DEF POS P5
40 DEF POS P6
50 DEF POS P7
60 DEF INTE NUMPOS
70 DEF POS PPALLET
80 SPD 500 Velocidad limitada a 500 mm/s.
90 INICIO = (380,90,645,0,90,0)
100 P4 = INICIO (0,0,15,0,0,0)
110 P5 = INICIO + (0,0,15,0,0,0)
120 P6 = INICIO + (0,-60,-15,0,0,0)
130 P7 = INICIO + (0,-60,+15,0,0,0)
140 DEF PLT 1, P4, P5, P6, P7, 2,4,1
150 FOR NUMPOS = 1 TO 8
160 REM TOMA EL OBJETO
170 REM AJUSTA POSICIN
180 PPALLET = PLT 1, NUMPOS
190 MOV PPALLET, -50 Acercamiento a posicin
200 MVS PPALLET Movimiento lineal a la posicin final
210 MVS PPALLET, -50
220 NEXT NUMPOS
230 END
EJERCICIO:
Realice un programa que haga el paletizado sobre el plano XY de 3x3
posiciones moviendo cajas (boxes) virtuales desde 9 posiciones fijas
diferentes hacia un paletizado.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

45

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

46

SISTEMAS DE MANIPULACIN CON


VECTORES

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

47

Programacin de Robots Industriales

5.

SISTEMAS DE MANIPULACIN CON VECTORES

Antes de comenzar con la seccin de programacin en esta gua, se mostr la


manera de definir posiciones estticas para mover el robot a cualquiera de esas
posiciones. Existe una manera de definir posiciones durante la ejecucin del
programa, de manera que stas puedan cambiar a lo largo del programa.
La costura tradicional es un ejemplo de posiciones dinmicas, ya que tiene una
misma posicin inicial, una misma posicin intermedia y una misma posicin final,
pero cada una de las posiciones va variando a lo largo de la lnea de la costura, es
decir que la posicin cartesiana vara slo en una coordenada a lo largo de cada
puntada.
Para definir una posicin dinmica se necesitan dos instrucciones bsicas:
Una Sentencia de DEF POS PosicionDinamica1
Declaracin:
Una Sentencia de
Asignacin de valores
que puede ser
cualquiera de las
siguientes:

PosicionDinamica1= (X,Y,Z, ,Roll,Pitch,Yaw)


PosicionDinamica1 = PosicionEsttica
PosicinDinamica1 = PosicionDinamica2 +
PosicionDinamica3

Aclaraciones:

La posicin Dinmica o vector puede ser definido cuantas veces sea


necesario, cada vez tendr el valor de la ltima asignacin y su nmero de
elementos depender del nmero de articulaciones que tenga el robot.
La posicin tambin puede ser definida por sus coordenadas separadas por
comas y dispuestas entre parntesis.
Tambin puede ser definida como simplemente igual a una posicin esttica.
Se puede definir tambin como la sumatoria de varias posiciones, en este
caso las coordenadas de la posicin sern iguales a la suma de las
coordenadas de cada una de las posiciones que la definen.

EJEMPLO EN PROGRAMA
A continuacin se muestra un programa ejemplo que pone al robot a definir una ruta
en Zigzag. A lo largo de una lnea imaginaria en X , Z = valores constantes.
Para iniciar el programa es necesario definir una posicin inicial esttica desde la
cual va a iniciar todo el proceso, sta se define como INICIO dentro del modo Teach
de programacin del robot.
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

48

Cada punto del Zigzag tiene las posiciones:


Posicin inferior: PINF = (ValorX, ValorY, ValorZ, 0, 0, 0)
Posicin Superior : PSUP = (valorX, ValorY, ValorZ, 0, 0, 0)
Los valores de ValorX, ValorY y ValorZ se toman de las coordenadas que muestra la
posicin INICIO.
Se define la declara ANCHO para definir el ancho de la puntada. Para esto se declara
ANCHO como una variable que almacena un nmero entero y luego se le asigna un
valor de 5
Declaracin de
Variable:
Asignacin de
valor:

DEF INTE INICIO


INICIO = 5

Tambin vamos a declarar una variable que se sumar a las otras para definir el
avance de la puntada
Una vez definida la posicin inicial se digita el programa:
10 DEF POS INI
20 MOV INICIO
30 DEF POS PINF
40 DEF POS PSUP
50 DEF POS AVAN
60 DEF INTE ANCH
70 ANCH = 5
80 PINF = (VALORX,VALORY,VALORZ-ANCH,0,0,0)
90 PSUP =(VALORX,VALORY,VALORZ+ANCH,0,0,0)
100 AVAN = (0,5,0,0,0,0)
110 FOR N = 1 TO 15
120 PINF = PINF + AVAN
130 MOV PINF
140 PSUP = PSUP + AVAN
150 MOV PSUP
160 NEXT N
170 END
Para la mejor comprensin del programa:
El programa inicia con la posicin INICIO. Desde ah se mover al primer punto de la
costura y luego al siguiente.
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

49

El programa hace 15 puntadas, por este motivo hay un set FOR TO NEXT con 15
vueltas en total.
El programa va cambiando dinmicamente las posiciones PINFERI Y PSUPERI
cambiando su valor en Y en incrementos de 5, para esto se le suma la posicin
AVANCE.
Ejemplo usando vectores para definir la posicin inicial:
10 DEF POS INICIO
20 DEF POS PINFERI
30 DEF POS PSUPERI
40 DEF POS AVANCE
50 DEF POS ANCHO
60 DEF INTE N
70 INICIO = (380,90,645,0,90,0)
80 ANCHO = (0,0,5,0,0,0)
90 MOV INICIO
100 PINFERI =INICIO-ANCHO
110 PSUPERI =INICIO+ANCHO
120 AVANCE = (0,15,0,0,0,0)
130 FOR N = 1 TO 15
140 PINFERI = PINFERI - AVANCE
150 MOV PINFERI
160 PSUPERI = PSUPERI - AVANCE
170 MOV PSUPERI
180 NEXT N
190 END

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

50

MANEJO DE ENTRADAS Y SALIDAS

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

6.

51

MANEJO DE ENTRADAS Y SALIDAS

Dispositivos de Entrada para la programacin de Robots


En toda aplicacin robtica no se trabaja haciendo caso omiso al entorno. Es
necesario mantener un contacto con el entorno para estar seguro que las tareas que
se estn desempeando tienen una repercusin adecuada en el ambiente de
trabajo.
Es posible incluir en los programas de operacin de los robots industriales el estado
de dispositivos de entrada para controlar el comportamiento del robot.
Generalmente el estado de los dispositivos de entrada pueden ser:
La deteccin de un cuerpo cercano por medio de sensores de proximidad.
La deteccin del estado de un sensor digital o analgico, tal como un sensor
analgico para detectar niveles de fluidos, presin, temperatura, etc.
La primera accin a realizar es incorporar el sensor al modelo que est armando.
Para ingresar dentro de su sistema
un sensor, valla a modeling-Model
Libraries

Se desplegar la ventana mostrada


al lado. En esta ventana escoja el
sensor a aadir a su proyecto con
Add.
Existen variedad de sensores que pueden ser incorporados, algunos de ellos, los
ms usados son los siguientes:

Capacitive Sensor.
Color Sensor.
Distance Sensor.
Inductive Sensor.
Light Barrier.
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

52

Programacin de Robots Industriales

Mechanical Switch
Reflex Light Barrier.

Una vez realizado lo anterior es necesario configurar el sensor que se ha ingresado


al modelo. Para configurar el sensor es necesario abrir el model explorer, ah
encontrar el sensor que acaba de ingresar al sistema.
En la barra de herramientas escoja
Modeling Model Explorer
Esto le abrir en el rea de trabajo una
ventana llamada Model Explorer. Busque
dentro de ella el sensor que usted acaba
de agregar a su proyecto.
D clic derecho sobre el para desplegar el men de Opciones, y en las opciones
escoja la opcin Properties. Se desplegar la ventana que se muestra a
continuacin:

Configure en General, el nombre del sensor, en Pose, la posicin del sensor, y en


dimensin el tamao del dispositivo.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

53

El objeto del sensor es producir una


salida cuando el sensor detecta un
cambio en las magnitudes que l leer.
Para configurar el nombre de la salida y
las condiciones que tendr debe ir,
dentro del men de opciones del Sensor,
a la opcin Outputs, de clic derecho
sobre ella y escoja New y dentro de new
escoja Digital (system).

Se desplegar la ventana que se


muestra al lado. Es importante que le d
un nombre a su salida, es el nombre con
que la llamar desde el programa de clic
en aceptar y contine con su proyecto.

Una vez que se ha definido una salida para el sensor, es necesario que dicha salida
sea enlazada a una entrada del robot. Las entradas del robot pueden ser ledas por
las instrucciones de un programa y servir como variables de control para controlar el
desarrollo del programa.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

54

Programacin de Robots Industriales

Para enlazar la salida del sensor a la


entrada del robot es necesario ir al Model
Explorer y abrir la carpeta del robot, y
dentro de la carpeta de elementos del robot
abrir la carpeta de INPUTS.
Una vez abiertas tanto la carpeta de
Outputs del sensor, como la de inputs del
robot, se arrastra el Output que usted recin
ha creado a uno de los inputs que an no
tienen uso en el robot (que estn marcados
como inactive).
Si se ubica en el model Explorer en el input
que recin ha asociado va a observar que el
output que tiene asociado es el que usted
acaba de crear.

Puede renombrar el input que acaba de modificar haciendo clic derecho en l y


escogiendo rename en el men que se despliega. Puede darle el nombre que usted
considere conveniente.
El robot Mitsubishi tiene en si mismo varias entradas y salidas predeterminadas, a
las cuales se les puede asignar un valor, o bien pueden ser ledas invocando la
manera cmo el compilador Melfa Basic 4 las tiene identificadas.
Variables de entradas del robot

Variables de salida del Robot

M_IN(0)

M_OUT(0)

M_IN(1)

M_IN(1)

M_IN(N)

M_OUT(N)

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

55

Programacin de Robots Industriales

Existen algunas variables de Entrada y Salida que ya estn asignadas y no pueden


ser alteradas, estas se muestran a continuacin:
Variable
de
Entrada:

Estado reservado
a ella.

Variable
de Salida:

Estado reservado
a ella.

M_IN(0)

Stop

M_OUT(0)

Running

M_IN(1)

Servo Of

M_OUT(1)

Servo On

M_IN(2)

Error Reset

M_OUT(4)

Abrir Pinza

M_IN(3)

Start

M_OUT(5)

Cerrar Pinza

M_IN(4)

Servo On

Puede verificar lo anterior en el Model Explorer, en los elementos que llenan los
Inputs y los Outputs del Robot. Cada uno de estos elementos tiene un parmetro
llamado Index asociado a l, este valor Index es el que se usar entre parntesis
para poder leer o asignar valores a las entradas/salidas.
En el caso ejemplo, si a lo largo del programa usted quiere saber el estado del
sensor que acaba de ingresar, como lo ha asociado al INPUT del Robot con INDEX =
6 , usted lo llamar con la siguiente variable: M_IN(6). El valor ser 0 si el sensor no
detecta nada, y 1 si el sensor detecta algo.
Es posible asignar una variable para las entradas/salidas. Con ello no tendr que
escribir M_IN(x) o M_OUT(x) en cada ocasin, sino que leer solamente el valor que
tiene la variable. Este tipo de variable se llama variable de entrada/salida y se
asigna de la siguiente manera: en las primeras lneas de su programa use el
comando DEF y el modificador IO para definir el identificador de su entrada/salida.
La sintaxis de esta sentencia es:
DEF IO {Nombre de la variable} = {tipo de designacin},{Numero de Input/output}
El nombre de la variable puede contener hasta 8 caracteres.
El tipo de designacin puede ser BIT, BYTE, WORD o INTEGER. Ello depender del
tipo de sensor que se tenga.
El Nmero de Input/Output es el INDEX number de la entrada o salida (el valor de x
en M_IN(x) o M_OUT(x))

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

56

Ejemplo:
10 DEF IO SENSOR = BIT, 5
En otra parte del programa usted podr llamar a la variable de entrada/salida que
defini para leer su valor. Suponemos que la llamar para tomar alguna decisin
sobre la ejecucin del programa. El siguiente ejemplo de sentencia de lectura y
decisin aclarar sus dudas:
100 IF SENSOR = 1 THEN GOTO 250
La mejor manera de entender esto es desarrollando un ejemplo para seguir el
procedimiento.
El siguiente ejemplo hace un paletizado de 6 posiciones, pero incorpora un objeto
virtual (una caja ubicada en 300,0,0 con un grip point en 50,50,60) que puede ser
tomada por el robot en la posicin P1 y la pasea por todo el pallet.
Hay un sensor inductivo incorporado en la posicin (500,40,-1) con su Measuring
range entre 0 mm (Lower Limit) y 5 mm (Upper Limit). La salida normal del sensor,
llamada Detect, est conectada al INPUT del Robot con INDEX 006. El programa
evala el estado de la salida del sensor cada vez que posiciona la caja y el elemento
terminal en cada posicin del pallet. Cuando el robot ponga la caja sobre el sensor,
el sensor cambiar de estado y detendr el lazo de seguimiento de posiciones del
paletizado.
El listado de posiciones del proyecto es el siguiente:

Las instrucciones del programa se listan a continuacin:


Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

57

Programacin de Robots Industriales

10 DEF POS PLTPOS


20 DEF IO SENSOR1 = BIT,6
30 MOV PHOME
40 MOV P1
50 HCLOSE 1
60 DEF PLT 1,PINIC,PFINA,PFINB,PDIAG,2,3,2
70 DEF INTE X
80 SPD 100
90 FOR X = 1 TO 6
100 PLTPOS = PLT 1, X
110 MOV PLTPOS, -60
120 MOV PLTPOS
130 IF SENSOR1 = 1 THEN GOTO 190
140 MOV PHOME
150 NEXT X
160 MOV PHOME, -50
170 MOV P1
180 HOPEN 1
190 ' AQUI SE INTERRUMPE LA EJECUCIN DEL PROGRAMA
200 END
Es necesario hacer una aclaracin:
Dependiendo de la versin del programa simulador (COSIMIR Factory, CIROS Studio,
o CIROS Robotics) La caja que usted acaba de crear podr o no ser detectada por el
sensor inductivo, pues el objeto virtual no est hecho de un material
ferromagntico. Para que la simulacin sea completa es necesario agregarle una
cara de material ferromagntico para que el sensor detecte la presencia de la caja.
Para hacer esto siga los siguientes pasos:
De clic derecho en el
apartado Base de La caja que
va a utilizar, valla a New
Geometric
primitives
Surface.
En la parte derecha del model
explorer le aparecer un
nuevo
elemento
llamado
surface. Haga click derecho
sobre l y escoja properties
para hacer modificaciones en
esta superficie.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

58

En
el
apartado
General,
asegrese que las dimensiones
de la superficie sean las de la
caja (100 x 100) y en el apartado
Material, asegrese que el
material sea Robot Steel para
que sensor detecte la presencia
de la lmina.
La posicin de la lmina debe
ser 0,0,0 para que quede en la
parte de debajo de la caja.

Salidas del programa a un archivo texto.


Es posible tambin mandar los valores de variables u utros parmetros en el
programa a un archivo texto. Esto permite crear un registro del desarrollo del
programa al tiempo que se va escribiendo en el documento con extensin .txt.
Tres pasos son necesarios para realizar este procedimiento:
1. Definir el archivo en el cual se va a escribir. Esto se realiza con una sola lnea
de comando de la siguiente manera:
OPEN nombrearchivo.txt FOR OUTPUT/APPEND AS #{No. de Salida}
Si se va a abrir el archivo para crear uno nuevo, se usa OUTPUT, pero si se
quiere continuar escribiendo en un archivo ya existente, sin borrar su
contenido actual, se utiliza APPEND.
Por ejemplo 20 OPEN "CONTROL.TXT" FOR OUTPUT AS #1

2. Mandar a impresin en el archivo una determinada frase, palabra o valor de


una variable. Como ejemplo se puede dar la impresin de una frase seguido
de la impresin de una variable, la sintaxis es PRINT #{No. de Archivo},
{variable o frase a imprimir}:
30 PRINT #1, A continuacin va el valor de la entrada del robot conectada al
sensor
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

59

40 PRINT #1, M_IN(6)


3. Cerrar el archivo en el cual se est escribiendo con la palabra CLOSE seguida
del nmero del archivo que se le ha asignado. Por ejemplo:
90 CLOSE #1
El archivo de registro de desarrollo de programa puede ser muy til cuando se desea
llevar un registro del desempeo del robot a lo largo de una jornada de trabajo, o
cuando se desea depurar un programa registrando el estado de las variables segn
va desarrollndose el programa.

Lectura de datos desde un Archivo Texto.


Tambin es posible leer datos de un archivo texto a la vez que dichos datos se van
asignando como valores a una variable.
El comando INPUT puede ser usado para leer un archivo texto en forma secuencial,
esto es, el archivo es ledo desde el principio hasta el final leyendo una lnea a la
vez. Es decir, cada vez que el comando INPUT lee una variable, asigna a la variable
el contenido de lo que lee hasta encontrar el cdigo ASCI de fin de lnea.
El comando INPUT tiene la siguiente sintaxis:
INPUT #{No. de Archivo}, {variable1},{variable2},
Para leer un archivo texto es necesario seguir tres pasos:

1. Definir el archivo en el cual se va a escribir. Esto se realiza con una sola lnea
de comando de la siguiente manera:
OPEN nombrearchivo.txt FOR INPUT AS #{No. de Archivo}
Por ejemplo 20 OPEN "PARAMETROS.TXT" FOR INPUT AS #1
2. Usar el comando INPUT para leer la lnea actual. ejemplo:
30 INPUT #1, ASMD$
40 INPUT #1, PARAMETRO1, AVANCE, PINIT
3. Cerrar el archivo en el cual se est escribiendo con la palabra CLOSE seguida
del nmero del archivo que se le ha asignado. Por ejemplo:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

60

90 CLOSE #1

Entrada/salida en un puerto COM RS-232


Es posible tambin transferir datos desde/hacia el programa usando un puerto RS232 usando los mismos comandos PRINT e INPUT. La nica diferencia la hace el
modo en que se abre el medio. Para leer o escribir en o desde una interface RS-232
el comando OPEN debe especificar los siguientes parmetros:
OPEN "COM1:" AS #{No. de Archivo}
En cuanto a la sintaxis de los comandos PRINT O INPUT se utiliza el mismo formato
que para los archivos de tipo texto.

EJERCICIO:
Desarrolle un proyecto en CIROS Robotics que tome un objeto lo manipule
con vectores de manera que se acerque progresivamente a una barrera de
luz. Cuando cruce la barrera, el programa deber interrumpirse.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

61

COMUNICACIN DEL ROBOT, MANEJO DE


I/O, Y OTRAS APLICACIONES

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

7.

62

COMUNICACIN DEL ROBOT, MANEJO DE I/O, Y


OTRAS APLICACIONES.

APLICACIN DEL ENTRENAMIENTO VIRTUAL EN LA


PROGRAMACIN DE ROBOTS REALES
Todo el material que se ha visto en sistemas robticos virtuales puede ser llevado a
la prctica en robots reales. Los principios de operacin son prcticamente
idnticos, pero la manera de introduccin de parmetros puede cambiar un poco. A
continuacin se muestran las secuencias necesarias para aplicar el conocimiento de
operacin y programacin de robots en los modelos actualmente en uso en el iCIM.

El sistema industrial de Manufactura Integrada por Computadora iCIM3000


posee dos robots industriales, uno en la estacin de ensamble y el otro en la
estacin de acople al CNC.
Para realizar las prcticas con los robots necesitamos los siguientes
elementos:

CIROS ROBOTICS
Controlador CR2B-574
Brazo Robot RV3SB

Componentes necesarios para realizar las prcticas con los robots


industriales.
.
Adems de los lenguajes de programacin:

Melfa Basic IV: Lenguaje de programacin


Ciros Robotics: Ambiente virtual de simulacin
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

63

En esta prctica no se utilizar el software de programacin, solamente el


hardware para el control de las posiciones del robot industrial, adems se
ver el modelo RV3SB por ser ms avanzado e incluir todas las
caractersticas del robot RV-2AJ en el acople del CNC.
El robot RV3SB de Mitsubishi.
Las caractersticas del brazo robot RV3SB son las siguientes:

6 grados de libertad
Repetitividad: 0.02 mm.
Velocidad mxima: 5,500 mm./s. (limitada a 1,000 mm/s por seguridad
para la enseanza)
Peso: 37Kg.
Alcance: 642 mm.(sin pinza)

Descripcin de robot RV3SB de Mitsubishi

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

64

Alcance de los movimiento del robot RV3SB de Mitsubishi.


El robot RV3SB posee dos sistemas de coordenadas desde los cuales se
puede referenciar el movimiento:

Sistema de coordenadas en la base del


robot
Sistema de
coordenadas en el extremo del robot
Sistemas de coordenadas disponibles en el robot RV3SB

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

65

El robot RV3SB permite agregarle un elemento terminal para la manipulacin


de las piezas y pallets en el sistema de manufactura, en la siguiente figura se
muestra la disponibilidad del alambrado y conexionado de mangueras para
esto:

Alambrado y conexin de mangueras neumticas para el elemento terminal.

La unidad de control CR2B-574.


En la siguiente figura se describe lo ms importante de la interfaz del
controlador CR2B-574.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

66

1: Encendido
2/3: Botn de inicio/paro de programa precargado
4: Botn de reinicio (Reset)
5: Paro de emergencia
9/10: Encendido/Apagado de los servos
12: Conexin con la botonera
13: Conexin con la computadora
14: Seleccin del modo (con una llave)

Teach: (por defecto): permite controlar el robot desde la


consola.

Auto (Ext.): permite controlar el robot desde la


computadora.

Auto (Op.): permite`ejecutar el/los programa/s


cargados en memoria pulsando el botn de inicio (2).
Unidad de control CR2B-574 para el robot Mitsubishi.
La consola para aprendizaje de posiciones
La consola permite el aprendizaje de nuevas posiciones del robot industrial o
la modificacin de las existentes, as como la creacin y ejecucin de
programas en la unidad de control.

Consola para la operacin manual del robot industrial.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

67

Programacin de Robots Industriales

Programas del robot de la estacin de ensamblaje.


La estacin de ensamblaje con robot RV3SB posee los siguientes programas
ya almacenados en la unidad de control:

MAIN.MB4: Programa principal, inicia automticamente si el controlador est encendido.


INIT.MB4: Programa de reinicializacin.
ERR.MB4: Programa para el diagnstico de errores.
TOUT.MB4: Programa para diagnstico de tiempo excedido.
UBP.MB4: Definicin de las variables globales.
COMM.MB4: Programa de comunicacin para CIROS PRODUCTION.

Posiciones/Tareas del programa MP mover pal (Move Palette) del


robot RV3SB.
Este programa sirve, por ejemplo, para mover el pal desde el sistema de
banda transportadora a la base para pals 1 de la estacin.

Posiciones del programa MP.


Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

68

Posiciones del robot para el programa MP


1

PINIT

PPAL(15)

PPAL(1)

PPAL(2)

PPAL(3)

PPAL(4)

Posiciones/Tareas del programa MPH mover porta lapiceros (Move


pen holder)

Posiciones del programa MPH.


Posiciones del robot para el programa MPH
1

PINIT
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

PPH(5)

PPH(1)

PPH(2)

PPH(3)

PPH(4)

69

Posiciones/Tareas del programa MINST mover instrumento (Move


instrument)
Este programa sirve, por ejemplo, para insertar un porta lapiceros en la placa
base.

Posiciones del programa MINST.

Posiciones del robot para el programa MINST


Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

PINIT

PASM(2)

PASM(1)

PTEST

PFD(1)

PFD(2)

70

Posiciones/Tareas del programa ASMP ensamble del lapicero


(Assemble pen)
Este programa sirve para insertar un lapicero en el porta lapicero.

Posiciones del programa ASMP.

Posiciones del robot para el programa ASMP


Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

PINIT

PPASM

PPFD

71

Posiciones/Tareas del programa MP mover pal (Move Palette) del


robot RV-2AJ.
Este programa sirve, por ejemplo, para mover el pal desde el sistema de
banda transportadora a la base para pals 1 de la estacin.

Posiciones del programa MP del robot RV-2AJ.

Posiciones del robot para el programa MP


1

PPAL(4)
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

PPAL(3)

PPAL(2)

PPAL(1)

PPAL(15)

PINIT

72

Posiciones/Tareas del programa LMILL cargar fresadora (Load mill)


del robot RV-2AJ.
Este programa sirve para alimentar la fresadora con una placa base.

Posiciones del programa LMILL del robot RV-2AJ.

Posiciones del robot para el programa LMILL


Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

73

Programacin de Robots Industriales

PBP(4)

PBP(3)

PBP(2)

PBP(1)

PBP(5)

PWAIT 1

PWAIT 2

PCNC

Posiciones/Tareas del programa


(unload mill) del robot RV-2AJ.

ULMILL

descargar

fresadora

Este programa sirve sacar una placa base procesada desde la mquina
fresadora.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

74

Posiciones del programa ULMILL del robot RV-2AJ.

Posiciones del robot para el programa ULMILL


1

PBP(4)

PBP(3)

PBP(2)

PBP(1)

PWAIT 1

PWAIT 2

PCNC

Eje lineal del robot RV-2AJ.


El controlador del robot RV-2AJ tambin controla un eje lineal, ste trabaja
Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora
Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

75

como el eje 7 del robot. No hay interruptores fsicos, todo es controlado


desde el software.

Eje lineal controlado por la unidad CR2B-574 del robot RV-2AJ.

PROGRAMACIN DE POSICIONES EN ROBOTS MITSUBISHI MELFA.


La manipulacin e introduccin de posiciones en un robot industrial se efecta con
ayuda de un dispositivo conocido como TEACHPENTDANT el cual consiste de una
consola de control que se encuentra adosada al robot con un cable largo. En
adelante se referir a este dispositivo como TEACH.
Para operar el robot es necesario inicializarlo. Para realizar esto siga los siguientes
pasos:

Verifique que el aire comprimido est encendido.


Si el robot est apagado, hale hacia afuera el botn rojo de paro
de emergencia del tablero de operacin que seala la flecha
negra.
Encienda el Mdulo del Robot. Ponga el switch principal en | .

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

76

Programacin de Robots Industriales

Si el robot hubiera quedado en un estado de error, se oir una


alarma audible. Tome el Teach y presione el botn ERROR
RESET. Si la alarma no cesa, llame al encargado del iCIM.

En el tablero de la unidad manejadora del robot (caja con


controles bajo la plataforma del robot) ponga la llave en la
posisin TEACH. Seguidamente ponga la llave en la unidad
Teach en la posicin ENABLE.

Tome la unidad Teach con la mano izquierda, ajuste la banda sujetadora al grosor de
su mano. Presione con los dedos de su mano izquierda la barra en la parte de abajo
del Teach. Y luego, sin dejar de presionar la barra, presione el botn STEP MOVE
(SVO ON). Escuchar un clic en el robot, esto quiere decir que el robot est listo para
ser manipulado.
Nota Importante:
Antes de comenzar la manipulacin del robot es primordial que la velocidad
no sea motivo de una colisin accidental. Configure la velocidad del robot a
un nivel que sea fcilmente manipulable. Utilice las teclas + y - que se
encuentran bajo el botn SVO ON para variar la velocidad de operacin del
robot.
+
FORWD

Aumenta la velocidad del robot

BACKW
D

Disminuye la velocidad del robot.

En la esquina superior derecha de la pantalla ver usted una cifra seguida del
smbolo %. Vare la cifra con las teclas antes mencionadas hasta poner la
velocidad en 5% para empezar, y aumente o disminuya segn sea su
necesidad.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

77

Programacin de Robots Industriales

ANTES
DE
INICIAR
CON EL
ROBOT

La manipulacin del robot puede conllevar


colisiones.

Un choque directo con una superficie dura puede


conllevar la descalibracin del robot y daos en el
elemento terminador.
EL ROBOT NO PUEDE SENTIR DOLOR.
Al dirigirse contra una superficie sin detenerse ni
bajar la velocidad se golpear sin ninguna
consideracin a s mismo.
TRABAJE A BAJA VELOCIDAD

MANIPULACIN DEL ROBOT MITSUBISHI


Una vez los servos estn encendidos, mientras
usted mantenga presionado el botn SVO ON y
la barra inferior del control el robot podr ser
manipulado de igual manera que el robot
virtual.
Escoja el modo de manipulacin presionando
las teclas JOIN, XYZ , o Tool. Una vez que haya
presionado
esto
presione
los
botones
correspondientes segn el modo en que desee
controlar el movimiento del robot.
MODO X Y Z
Si desea mover el robot en las coordenadas
X , Y y Z presione el botn etiquetado XYZ, y
presione las teclas etiquetadas con la letra y
un smbolo + o para mover el robot en uno u
otro sentido a lo largo del eje impreso en la
tecla que est presionando.

MODO X Y Z En coordenadas cilndricas.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

78

Programacin de Robots Industriales

El robot real Mitsubishi tambin permite el movimiento


en coordenadas cilndricas. En este tipo de movimiento
es posible moverse sobre la pared de un cilindro de radio
R, altura Z y describiendo un angulo T.
Para entrar en este tipo de modo de control de
movimiento ingrese al modo XYZ y presione nuevamente
el botn XYZ hasta que la lnea superior de la pantalla
del TEACH muestre la palabra CYLNDER. Luego presione
las teclas X , Y y Z para mover al robot en las magnitudes
R , T y Z respectivamente.

MODO JOINT
Si desea mover el robot en cada articulacin presione JOINT. El robot tiene
etiquetada en cada articulacin el nombre de la articulacin con unos simbolos +
y - (que indican el sentido del movimiento en cada articulacin con unas flechas).
Antes de efectuar cualquier movimiento acrquese al robot y observe el nombre de
cada articulacin y el sentido de cada flecha para efectuar el movimiento de una
manera certera.
Si est trabajando en el robot auxiliar del CNC tome en cuenta que este robot tiene
un eje lineal de movimiento extra. Para moverse en dicho eje escoja el modo JOINT y
una vez que le aparezca el listado de las articulaciones con las magnitudes de cada
una, presione nuevamente el botn JOINT y le aparecer en la pantalla la lnea que
dice ADDN. AXIS bajo la cual le aparecer la articulacin J7 y su respectiva
magnitud. Mueva al robot a lo largo de esta lnea usando los botones etiquetados
X (J1) y + X (J1).

MODO TOOL
De manera similar al caso virtual, en el modo TOOL podr mover el robot a lo largo
de los ejes que se definen en la direccin que apunta el elemento terminador del
robot. Par entrar en este modo de movimiento presione el botn TOOL que se
encuentra arriba del botn STEP MOVE.

ALMACENAR POSICIONES EN EL ROBOT MITSUBISHI.

1. Acceda al men: [Menu].

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

79

2. Pulsar 1 (Teach) y seleccionar el nombre del programa (Estos aparecen en


la introduccin terica de esta seccin).

Seleccin del programa existente en la unidad de control del robot.


3. Escriba el nombre del programa existente (o uno nuevo si desea)
presionando la tecla [Pos] junto con el teclado numrico puede escribir
letras, tal como en un telfono mvil, al terminar de escribir el nombre
presione [Inp/Exe].
4. Presione la tecla [Pos] para ver las posiciones dentro del programa y
escriba el nombre de una de las posiciones vlidas ya existentes.
(Refirase a la parte terica de esta seccin para conocer las posiciones.)
5. Escriba las posiciones de cada una las articulaciones y/o posiciones de las
coordenadas para restaurarlas en caso de perderse:

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

80

Programacin de Robots Industriales

Nombre
del
programa:

Nombre
del
programa:

Nombre
del
programa:

Nombre de
la posicin:

Nombre de
la
posicin:

Nombre de
la
posicin:

Coordenad
a

Valor
original

Coordenad
a

Valor
original

Coordenad
a

X=

X=

X=

Y=

Y=

Y=

Z=

Z=

Z=

A=

A=

A=

B=

B=

B=

C=

C=

C=

Valor
original

Tabla de valores originales de los programas y posiciones en el robot.


6. Presione el botn de hombre muerto (en la parte posterior de la consola)
+ el botn [Step |Move] y presione luego [INP/EXE] SIN SOLTARLO HASTA
QUE EL ROBOT SE DETENGA, para hacer que el robot se mueva hacia la
posicin seleccionada y comprobar el correcto ajuste de la misma.
7. Mueva el brazo robot a una posicin cualquiera y a partir de all ajuste la
posicin anterior moviendo las articulaciones individualmente hasta lograr
colocar la pieza en la posicin esperada.
8. Sobrescriba la posicin guardndola de la siguiente manera:
Pulsar [Step] + [Add] y despus presionar [Add] de nuevo.
Pulsar [Add] para confirmar la posicin.

9. Compruebe que la nueva posicin est correcta al repetir el paso 19 para


esta posicin.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

81

Programacin de Robots Industriales

10. Configure tantas posiciones como se le indiquen hasta que sea


competente en ello, puede usar las otras columnas de la Tabla anterior
para guardar las posiciones originales.
11. Si sus posiciones no son iguales a las que escribi en la tabla anterior,
resturelas antes de apagar el equipo.

CONEXIN CON UN ROBOT REAL DESDE UNA APLICACIN


DE ROBOTICA VIRTUAL
Para conectarse con un Robot Real es necesario abrir CIROS STUDIO. Una vez
abierta la aplicacin debe abrirse un proyecto que contenga el mismo robot con el
que se desea conectarse. Valla al men file de la barra de herramientas y escoja
Open, Una vez abierta la ventana de seleccin de la celda que se quiere abrir (un
archivo .MOD), busque alguno de los proyectos virtuales que usted abri con el
CIROS ROBOTICS y que contienen uno de los robots reales que usted sabe que estn
en red.
Si no tiene ningn proyecto creado que contenga uno de los robots que usted tiene
en red, abra un nuevo proyecto. Valla a File-New-Project Wizard. Refirase al
principio de este manual para instruirse en la manera correcta de crear un proyecto
con un modelo de robot al alcance de su red.
Para iniciar la conexin con el robot es
necesario abrir RCI Explorer.
Para hacer esto se va a Extras-Online
Management- RCI Explorer.
Se abrir una ventana
muestra a continuacin.

como

se

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

82

Dentro de esta ventana est tanto el


robot del proyecto como el Work place.
Dentro del robot puede verse el apartado
connection. Dando click derecho en l se
despliega un men. Dentro de ese men
se escoge properties.
Se abrir una ventana que le permitir
configurar todos los parmetros de
coneccin con un robot real.
Para conectarse con uno de los robots del iCIM de la Universidad Don Bosco ponga
las opciones que se muestran a continuacin:

Ponga mucha atencin: Debe seleccionar como medio de comunicacin TCP/IP y en


la pestaa de TCP//IP debe poner la direccin IP de la caja controladora del robot (la
direccin IP del robot ensamblador es 192.168.10.11, y la del robot auxiliar de la
unidad de CNC es 192.168.10.10). No lo olvide, el puerto de comunicacin de ambas
cajas controladoras es el 9002.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

83

Programacin de Robots Industriales

Una vez configurada la conexin con el


robot regrese de nuevo a RCI expolorer y
de nuevamente clic derecho en la
divisin conecction. Esta vez escoja la
opcin connect.
Le aparecer una ventana como la que
se muestra al lado. Eso le indicar que
todo est bien, que se ha logrado la
conexin.
De nuevo en el RCI Explrorer, dentro del
conjunto de elementos relativos al robot,
de clic en programs. Se desplegarn
todos los programas que tiene el robot.

Para cargar uno de los programas que estn en la lista de programas, simplemente
de doble clic en el nombre del programa, se abrir una ventana anunciando que se
cargarn en la PC las instrucciones del programa y sus posiciones. Todos los
programas pueden ser extrados menos el programa MAIN que siempre est
corriendo y por ello es poco lo que se puede hacer con l.
Para extraer el programa de clic en OK
en la ventana de Up and Download.
Inmediatamente se cargarn las listas
de posiciones y el texto del programa en
dos ventanas separadas.

MANIPULACION DEL ROBOT DESDE CIROS STUDIO


Una vez que haya establecido coneccin con un robot fsico con CIROS Studio,
Asegurese que la llave del controlador del robot est puesta en AUTO (ext).

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

84

Programacin de Robots Industriales

Valla a Extras-Onlinemanagement-Jog Operation.


Se abrir una ventana parecida
al teach in, en ella podr
manipular al robot de la misma
manera que lo haca en el CIROS
ROBOTICS.

SEA MUY CAUTELOSO.


El control que proporciona el JOG Operation de CIRUS STUDIO no es tan preciso
como lo es el TEACHPENDANT.
Para que el robot realice un programa hecho por usted, primero debe crear un
programa nuevo usando la consola y colocar las posiciones (el cdigo en Melfa Basic
IV lo crear desde la PC con el software CIROS STUDIO).
Una vez creadas las posiciones debe ir a la ventana RCI EXPLORER y cargar el
programa a la PC, ya que el programa est vaco solo le mostrar las posiciones que
usted ha guardado y estar libre de cualquier cdigo de programa.
Cree un programa que intercambie la posicin de dos objetos (porta lapiceros)
usando una posicin intermedia y una de HOME.
Puede presionar el botn

para generar la numeracin de lneas automtica.

Compile y enlace el programa usando el botn


caso de haberlos consulte con su facilitador.

. Verifique que no hay errores, en

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

85

Luego haga clic sobre la ventana del programa y presione el botn para descargar
el programa al robot y presione OK.
Repita el paso anterior estando en la ventana de posiciones si desea descargar
tambin las posiciones al controlador del robot.
Valla a la ventana RCI EXPLORER y haga clic derecho sobre el nombre del programa
y seleccione DEBUG.

Ah haga clic sobre Online ON.


A continuacin valla a Extras-Online-management-Jog Operation y mueva alguna
articulacin para activar los servomotores.
Ejecute el programa usando el botn Start

o hgalo paso a paso con el botn

.
Est atento al botn de Paro para detener el robot si hace un movimiento
diferente al que usted esperaba.
Para finalizar presione el botn de paro
lo que har que automticamente la
conexin cambie a Online OFF. Busque en Connection la opcin Disconnect para
terminar la comunicacin con el robot.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

86

MANEJO DE ENTRADAS/SALIDAS (I/O)


Para verificar el estado de los sensores puede hacer clic sobre la ventana RCI
EXPLORER, seleccione en Connection la opcin Connect, luego en la ventana RCI
EXPLORER valla a Monitors y haga doble clic en I/O
I/O Monitor nos muestra el estado de las entradas y salidas y el nmero que le
corresponde en el controlador del robot.

EJECUCIN DE UN PROGRAMA DESDE EL CONTROLADOR


DEL ROBOT.
Para este paso recuerde bajar la velocidad de operacin del robot.
Para correr un programa desde el controlador del robot (Driver Unit) debe colocar la
llave en AUTO (OP), luego con Change display ubquese donde dice P.XXX y con las
flechas [Up/Down] busque su programa (en el caso que no se mueva El

indicador presione Reset), cuando ya lo haya seleccionado encienda los


servos con [SVO ON/1] y luego active Start [<1>].

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

87

APENDICE

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

88

Programacin de Robots Industriales

APENDICE 1
SI TIENE PROBLEMAS PARA CONECTAR CON EL SERVIDOR DE LICENCIAS REALICE EL
SIGUIENTE PROCEDIMIENTO:
Es posible que al intentar arrancar el CIROS ROBOTICS aparezca un cuadro
anunciando que no se puede conectar con el servidor de licencias. Esto se puede
deber a dos cosas:
El servidor de licencias no tiene puesta la llave de licencias ni arrancado el servicio.
La PC en que se intenta arrancar el CIROS ROBOTICS no tiene conexin a la red del
servidor o no tiene configurado la direccin IP del servidor para solicitar la licencia.
En el primer caso, es necesario verificar que el servidor de licencias est conectado
a la red, poner la llave de licencia etiquetada CIROS AUTOMATION SUITE en el
servidor e iniciar la aplicacin del servidor de licencias. Para hacer esto se arranca
en el servidor la siguiente aplicacin:

El servidor de licencias es la mquina central del ICIM, la misma que maneja el


CIROS Production.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

89

En el caso que el servidor de licencias


no sea el problema, es necesario
verificar que la PC en que desea
arrancar el CIROS ROBOTICS
pertenezca a la red 192.168.10.x, que
est conectada a la red por cable de
red, y que tenga configurada la
aplicacin CIROS SMARXOS viendo
hacia el servidor.
Arranque la aplicacin en la PC del
CIROS ROBOTICS desde el men inicio
como se muestra en la figura:

Una vez abierta la aplicacin ponga en el campo de Licence server la direccin IP


192.168.10.22 y cambie la seleccin a Licence Server.
En unos segundos el campo llamado Connected to Crypto Boxes se comenzar a
llenar con la informacin de las licencias que tiene el servidor de licencias, esto es
productos licenciados y cantidad de aplicaciones que pueden estar corriendo al
mismo tiempo.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

90

Programacin de Robots Industriales

Cuando el campo Crypto Boxes est


lleno, valla al submen CIROS Robotics,
al
desplegarlo
aparecerer
la
informacin de licencias disponibles.
Ubquese en la candidad de licencias, al
hacerlo toda la lnea se sombrear y se
activarn los botones

Presione
el
botn
Generate
Configuration file. . Pero se habr
generado un archivo que le dice a la
aplicacin de CIROS Robotics que el
servidor de licencias est en el sitio
dnde se ha encontrado la informacin
que usted est percibiendo en la
ventana
de
CIROS
SmarxOS
Management
Intente ahora de nuevo abrir la aplicacin de CIROS Robotics. En esta ocasin no
deber darle ningn problema.

Si llegara a aparecer una ventana anunciando que no se puede encontrar el servidor


de licencias, y la falla no se debe a problemas en la conexin de red, realice las
siguientes pruebas:
Abra una ventana de MS-DOS (digite CMD en el campo de correr programas en el
men inicio) y escriba:
PING 192.168.10.22 t
Debe de haber una respuesta y debe llegar con buenos tiempos de respuesta. (la
direccin IP debe de ser la del servidor de licencias, en el caso de las mquinas del
iCIM la direccin IP es 192.168.10.22)
Si no hay respuesta, verifique las conexiones de red y las direcciones IP tanto del
servidor de licencias como de la mquinas que no se pueden conectar.

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Programacin de Robots Industriales

91

Si hay respuesta de ECO al ping que est tirando la computadora del problema,
entonces el problema puede que sea el Windows firewall en la mquina servidor de
licencias. Verifique que el Firewall se encuentre desactivado, o que en su defecto
est permitiendo la operacin de todos los ejecutables relacionados con el servidor
de licencias, y que adems tenga libres los puertos del servidor de licencias que
son, el UDP 8766 y el TCP 8765.

Bibliografa:
CIRUS AUTOMATION SUITE: Archivos de Ayuda. Festo Didactic GmbH, 2008
Melfa Industrial Robot, Instruction Manual, 2003

Centro de Tecnologas Aplicadas a la Manufactura Integrada por Computadora


Instituto de Investigacin e Innovacin en Electrnica
Universidad Don Bosco

Vous aimerez peut-être aussi