SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
1
Fundamentos de Robótica. Guía 2
Tema: Programación del Robot Mitsubishi. Parte I.
Tiempo de ejecución: 2 horas.
Programar de forma básica un robot industrial del laboratorio.
• Definir las posiciones en el software CIROS Robotics para los movimientos que realizará el robot
Mitsubishi.
• Crear programas en el lenguaje Melfa Basic IV para realizar tareas de desplazamiento de piezas de
un robot Mitsubishi.
• Simular la ejecución de programas en el ambiente 3D del software CIROS Robotics.
1. Estructura de la programación en CIROS Robotics.
Estructura del proyecto
Todo proyecto generado con el software de programación CIROS Robotics consta de diferentes
archivos que conforman el proyecto.
• El archivo *.PRJ es el archivo que guarda nuestra configuración del proyecto y asocia a este el
listado de posiciones, así como el programa. (Este archivo no se deberá cargar en el robot).
• El archivo *.POS es el listado de posiciones del proyecto estas posiciones podrán ser modificadas
más tarde con la consola si se desea. (Es recomendable que el listado de posiciones como el
programa se carguen en el robot con el mismo nombre de archivo).
• El archivo *.MB4 es el archivo que contiene la programación de la secuencia que se desea que
ejecute el robot que en este caso se ha generado en el lenguaje MELFA BASIC 4. (Este archivo
junto con el listado de posiciones son los que se tienen que descargar al robot para ejecutar la
secuencia).
NOTA: Este mismo formato de archivos y procedimiento de relación de los diferentes archivos de
proyecto es el mismo en el software de modelado, carga/descarga y depuración en línea CIROS Studio.
Objetivo General
Introducción Teórica
Objetivos específicos
Facultad: Ingeniería.
Escuela: Electrónica
Asignatura: Fundamentos de Robótica
Lugar de ejecución: iCIM Lab.
Edificio 3. Primera planta.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
2
Fundamentos de Robótica. Guía 2
Estructura del programa
Como cualquier tipo de programa, el programa de la secuencia de un brazo robot mantiene una
estructura determinada que ayuda a la comprensión de este.
El programa debe de tener una estructura determinada. Lo primero que habrá en el programa es una
zona de declaración de las diferentes variables. Seguido se colocará el programa principal que acaba
con la instrucción END después del programa principal se colocan las diferentes subrutina a las que se
hayan llamado que finalizan con la instrucción RETURN.
Comentarios
Definición de posiciones
Definición de I/O
Definición de variables
Número de línea de instrucción
TOMAR
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
3
Fundamentos de Robótica. Guía 2
Figura 1. Estructura de los programa en el lenguaje Melfa Basic IV.
Líneas de instrucción
El programa se construye en base a líneas de instrucción que se ejecutarán de manera secuencial,
excepto que haya instrucciones de salto, bucles o llamadas a subrutina. Los elementos que las forman se
muestran a continuación.
Ejemplo de declaración de un comando:
10 MOV P1 WTHM_OUT (17) = 1
• Número de línea  Es el número usado para determinar el orden de ejecución del programa. El
programa se ejecutará en orden ascendente.
• Nemotécnico de la instrucción  Es un comando que designa la operación a realizar por el robot.
• Dato  El dato puede ser un valor o una variable del tipo requerido por la instrucción.
• Declaración añadida  Solo se usa si es necesario.
Programa principal
Etiqueta
Llamada a Subrutina
Salto a línea
Inicio
Final
Subrutina
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
4
Fundamentos de Robótica. Guía 2
Tipos de variables
Figura 2. Jerarquía de las variables en los programa en el lenguaje Melfa Basic IV.
• POSICIÓN: Coordenadas ortogonales de la posición. El nombre de la variable empieza por P.
• ANGULOS DE EJE: Ángulos de las articulaciones. El nombre de la variable empieza con J.
• ARITMÉTICA: Valor numérico (entero, real,..). El nombre empieza por M.
• CARÁCTER: Cadenas de letras. El nombre de la variable termina en $.
2. Instrucciones básicas
En la programación de brazos robot, siempre persiste un tipo de instrucciones básicas para todos los
tipos software que son aquellas que definen los movimientos más simples del brazo y que por sí solas
son las base de la mayoría de las secuencias de una aplicación.
Movimiento No Interpolado
El Robot genera una trayectoria cualquiera entre el punto origen y el punto de destino, obteniendo para
cada una de las articulaciones del robot, las coordenadas, velocidad y aceleración que a lo largo del
tiempo se han de imprimir para lograr el movimiento especificado.
Pese a su complejidad es la forma más rápida para el robot.
Figura 3. Tipo de movimiento no interpolado (MOV) en el lenguaje Melfa Basic IV.
• MOV
El robot se mueve a la posición indicada con una interpolación angular de cada eje.
El camino recorrido no se puede prever. Se pueden introducir las declaraciones añadidas WTH o
WTHIF.
Ejemplos de llamadas de instrucción:
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
5
Fundamentos de Robótica. Guía 2
MOV P1............. Se mueve a P1.
MOV P1+P2....... Se mueve a la posición resultante de sumar las coordenadas de P1 y P2.
MOV P1*P2....... Se mueve a la posición relativa convertida de P1 a P2.
MOV P1, -50...... Se mueve desde P1 hasta una posición a 50mm en la dirección de la pinza.
MOV P1 WTHM_OUT(7)=1… Empieza el movimiento hacia P1, y simultáneamente enciende la
salida 7.
MOV P1 WTHIFM_IN(9)=1, SKIP. . Si durante el movimiento hacia P1 el bit 9 de entrada se activa, se
para el movimiento y el programa sigue.
Programa ejemplo:
10 MOV P1
20 MOV P2, -50
30 MOV P2
40 END
Figura 4. Ejemplo del tipo de movimiento no interpolado (MOV) en el lenguaje Melfa Basic IV.
Movimiento lineal Interpolado
El Robot describe una línea recta entre los puntos origen y destino.
Es un movimiento lento para el robot y solo se emplea en movimientos críticos cuando el robot se
encuentra cerca de completar su trabajo (agarrar pieza, dejar pieza, soldar un punto, aplicar adhesivo).
Figura 5. Tipo de movimiento lineal interpolado (MVS) en el lenguaje Melfa Basic IV.
• MVS
El robot se mueve en línea recta hacia la posición indicada. Se pueden introducir las declaraciones
añadidas WTH o WTHIF.
Ejemplos de llamadas de instrucción:
MVS P1............. Se mueve hasta P1.
MVS P1+P2....... Se mueve a la posición resultante de sumar P1 y P2.
MVS P1*P2........Se mueve a la posición relativa convertida de P1 a P2.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
6
Fundamentos de Robótica. Guía 2
MVS P1, -50......Se mueve desde P1 hasta una posición a 50mm en la dirección de la pinza.
MVS , -50.......... Se mueve 50mm desde la posición actual en la dirección de la pinza.
MVS P1 WTH M_OUT(7)=1.......... Empieza el movimiento hacia P1, y simultáneamente enciende la
salida 7.
MVS P1 WTHIF M_IN(9)=1, SKIP.............. Si durante el movimiento hacia P1 el bit 9 de entrada se
activa, se para el movimiento y el programa sigue.
MVS P1, TYPE 0, 2......... Se mueve hasta P1 con una interpolación ABC.
MVS P1, TYPE 0, 1......... Se mueve a P1 con una interpolación ortogonal de 3 ejes.
• HOPEN / HCLOSE
Abre/cierra la pinza designada.
Ejemplo de llamada de instrucción:
HOPEN 1........... Abre la pinza 1
HCLOSE 1......... Cierra la pinza 1
• OVDR
Designa la velocidad de movimiento según un porcentaje relativo a la velocidad máxima. Afecta a
todos los movimientos posteriores, si es que no se vuelve a modificar el valor.
Ejemplo de llamada de instrucción:
OVRD 60............Fija la velocidad de todos los movimientos al 60% de la velocidad máxima.
• SPD
Define la velocidad de interpolación linear y circular(para instrucciones MVS, MVR y MVC) de la
pinza en mm/s.
Ejemplo de llamada de instrucción:
SPD 30.............. Configura la velocidad de los movimientos lineales y circulares en 30mm/s.
• DLY
Espera los segundos indicados (el mínimo es 0.05), y luego sigue con el programa.
Ejemplo de llamada de instrucción:
DLY 3.................Espera 3 segundos antes de seguir.
3. Instrucciones de movimiento
• MVR
El robot se mueve por una circunferencia definida por tres puntos. Si al empezar el movimiento no se
encuentra en el punto de inicio, se moverá linealmente hasta él antes de empezar. Se pueden introducir
las declaraciones añadidas WTH o WTHIF.
MVR: Se define el punto de inicio, uno de tránsito, y el punto final.
MVR2: Se define la posición inicial, la final, y un punto de referencia por el que no pasará.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
7
Fundamentos de Robótica. Guía 2
MVR3: Se define el punto inicial, el final y el centro del círculo. El movimiento va del inicial al final
por el camino más corto del círculo.
MVC: Se define la posición de inicio (y final), punto de tránsito 1, y punto de tránsito 2. El movimiento
sigue el recorrido:
inicio  tránsito1  tránsito2  final.
Ejemplos de llamadas de instrucción:
MVR P1, P2, P3...............Se mueve con una interpolación circular entre P1P2P3.
MVR P1, P2, P3 WTH M_OUT(7)=1.........Interpolación circular entre P1P2P3, y el bit 7 se activa.
MVR P1, P2, P3 WTHIF M_IN(9)=1, SKIP................Si el bit 9 se activa durante el movimiento, se
para y sigue en el siguiente paso.
MVR P1, P2, P3 TYPE 0, 1.............Se mueve con una interpolación circular entre P1P2P3.
MVR2 P1, P2, P3............. Interpolación circular de P1 a P2, sin pasar por P3.
MVR3 P1, P3, P4.............Se mueve con una interpolación circular de P1 a P3 por el camino más corto.
El punto P4 es el centro.
MVC P6, P8, P9............... Movimiento circular P6P8P9P6.
Programa ejemplo:
10 MVR P1, P2, P3
20 MVR2 P3, P4, P5
30 MVR3 P4, P6, P7
40 MVC P6, P8, P9
50 END
Figura 6. Ejemplo del tipo de movimiento circular en el lenguaje Melfa Basic IV.
• CNT
Define el principio y el final de un movimiento continuo.
Ejemplos de llamadas de instrucción:
CNT 1.................Define el inicio del movimiento continuo.
CNT 1, 100, 200...............Define el inicio del movimiento continuo, la distancia de separación con el
punto inicial, y la distancia de separación con el punto final.
CNT 0.................Define el final del movimiento continuo.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
8
Fundamentos de Robótica. Guía 2
Programa ejemplo:
10 MOV P1
20 CNT 1
30 MVS P2
40 CNT 1, 50, 100
50 MVS P3
60 MVS P4
70 CNT 0
80 END
Figura 7. Ejemplo de aplicación del movimiento continuo (CNT) en el lenguaje Melfa Basic IV.
• ACCEL
Define la aceleración y desaceleración durante el movimiento como un porcentaje del máximo.
Ejemplos de llamadas de instrucción:
ACCEL.................Configura la aceleración y la desaceleración al 100%.
ACCEL 60, 80.......Configura la aceleración al 60% y la desaceleración al 80%.
• JOVDR
Define la velocidad de movimiento angular axial (para instrucciones MOV), como un porcentaje de la
máxima.
Ejemplo de llamada de instrucción:
JOVRD 70...........Configura la velocidad del movimiento angular de cada eje al 70% de la máxima.
• HLT
Para la ejecución del programa y entra en el estado de paro.
Ejemplos de llamadas de instrucción:
HLT.....................Para la ejecución del programa.
IF M_IN(8)=1 THEN HLT................Para la ejecución del programa cuando se activa la señal de
entrada M_IN(8).
MOV P3 WTHIF M_IN(9)=1, HLT................Para la ejecución del programa si la señal de entrada
M_IN(9) se activa durante el movimiento a P3.
• FINE
Define las condiciones de posicionamiento final con un número de pulsos.
Ejemplo de llamada de instrucción:
FINE 100............Configura las condiciones de posicionamiento final a 100 pulsos.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
9
Fundamentos de Robótica. Guía 2
• TOOL
Configura la forma de la herramienta que usamos, y configura el punto de control.
Ejemplo de llamada de instrucción:
TOOL P60.......... Define la forma guardada en P60.
4. Programación de trayectorias (Metodología Ford)
Cuando se programan trayectorias generalmente ubicamos las siguientes posiciones:
• Posición de HOME: Generalmente es la posición de privilegio en donde el efector final (Pinza en
este caso) tiene acceso a las demás posiciones asegurándonos de que no existan colisiones en el
entorno.
• Posición de Acercamiento: Se ubica a poca distancia del objeto y a partir de esa posición se
programan movimientos suaves y finos para llegar a la posición de agarre.
• Posición de Agarre: es la coordenada en donde se ubica el objeto para su sujeción o agarre para
manipularlo, trasladarlo, etc.
1 Computadora personal o portátil con Windows.
1 Software CIROS Robotics
Parte I. Definición de posiciones en CIROS Robotics.
1. Ejecute el programa de simulación CIROS Robotics, de clic en la línea sombreada en la siguiente
figura.
Procedimiento
Materiales y equipos
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
10
Fundamentos de Robótica. Guía 2
Figura 8. Búsqueda del programa CIROS Robotics dentro de Todos los Programas de Windows 7.
2. Una vez abierta la aplicación, el primer paso es crear un proyecto en File→New→Project Wizard
Figura 9. Menú File del programa CIROS Robotics.
Un proyecto en este software significa todo el conjunto de situaciones particulares acerca de la
simulación que se va a correr.
Se abrirá una serie de ventanas que recopilará esta información.
3. La primera ventana recopila información acerca del nombre del proyecto. Proporcione el nombre
que considere conveniente, en Program Name escriba una secuencia corta de letras mayúsculas y
números. 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 ubicación que ha dado en esta etapa de la definición del proyecto.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
11
Fundamentos de Robótica. Guía 2
Figura 10. Ventana del Asistente del proyecto de CIROS Robotics.
4. La ventana siguiente pedirá información acerca del robot.
Si desea trabajar con los modelos del iCIM escoja cualquiera de los siguientes, con las
especificaciones que se muestran.
Figura 11. Ventana del Parámetros del Robot del Asistente del proyecto de CIROS Robotics.
5. 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á después.
6. Presione finish para iniciar con el proyecto de simulación.
7. Le aparecerán en la pantalla de la aplicación cuatro ventanas con información acerca de su proyecto.
La ventana superior izquierda muestra al robot que usted escogió, otra ventana muestra el listado de
posiciones, otra muestra las líneas de comando del programa principal del robot y una tercera
ventana muestra los mensajes de alarma del sistema.
8. A continuación se muestra la pantalla principal de un proyecto recién abierto. Tanto el nombre del
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
12
Fundamentos de Robótica. Guía 2
archivo del programa como el nombre del archivo de las posiciones llevan el nombre que se digitó
en el campo Program Name en la inicialización del proyecto.
Figura 12. Ventanas del modelo 3D, mensajes, programa y posiciones de CIROS Robotics.
9. Haga clic en la ventana del robot para que la atención de la aplicación se centre en ella. Vaya a
View → Standard Views y pruebe cada una de las opciones para que pueda visualizar el robot que
ha escogido.
10. Puede hacer la ventana del robot más grande o más pequeña según su percepción personal lo
requiera.
11. También puede escoger en el menú View las opciones Zoom In y Zoom Out para aumentar o
disminuir el tamaño de la visualización del objeto.
12. Puede moverse dentro de la ventana escogiendo Move en el menú View o presionando el botón
e inmediatamente yendo a la ventana, haciendo clic y moviéndose al punto de vista deseado.
13. Puede rotar la vista escogiendo Rotate en el menú View o presionando el botón e
inmediatamente yendo a la ventana, haciendo clic y rotando al punto de vista deseado.
14. Explore el menú View para que se sienta cómodo al trabajar en la programación del robot que ha
escogido.
15. Para tomar control del robot vaya a Programming → Teach-In para que se le abra la ventana de
modo Jog Operation:
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
13
Fundamentos de Robótica. Guía 2
Figura 13. Menú de programación (derecha) y ventana de la operación manual (izquierda) de
CIROS Robotics.
16. 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 gráfica intente todos los movimientos y
compruebe los alcances de cada una de las articulaciones. También puede variar la velocidad de los
movimientos del robot utilizando el control
Figura 14. Ajuste de la velocidad de movimiento de las articulaciones del robot simulado.
A mayor porcentaje, más velocidad. 100% es la velocidad máxima.
17. Puede abrir y cerrar las mordazas del robot presionando el botón Close Hand (al cerrar la pinza el
botón cambiará a Open Hand)
18. 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 posición hasta otra
llevando algo en ella. Hacer este desplazamiento moviendo una articulación a la vez le resultará
muy difícil y tedioso. Afortunadamente hay otra manera de mover al robot todo a la vez cuidando la
inclinación de la pinza constante durante todo el trayecto. Este es el modo XYZ
19. 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 línea recta en X, en
Y y en Z.
20. Mueva el robot trazando un cuadrado alrededor de él, esto lo logrará fácilmente utilizando los
controles X e Y. Note que existen límites para el movimiento rectilíneo, ya que el robot no puede
alcanzar todos los puntos de la línea recta, algunos le resultarán muy lejanos (las esquinas del
cuadrado) y algunos le resultarán tan cercanos que sus articulaciones no podrán proporcionar el
punto sin antes cambiar la posición de las articulaciones.
21. Al usar el modo Joint se abre la posibilidad de mover individualmente cada articulación 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 articulación en cada sentido.
22. Utilice este tipo de control cuando necesite desarrollar movimientos de alta complejidad que
incluyen inclinación o direccionamiento específico del elemento terminal del robot.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
14
Fundamentos de Robótica. Guía 2
Figura 15. Ventana de operación manual del robot, por medio de cada articulación.
23. Se aprendió en el modo XYZ que en ese tipo de control de movimiento el elemento terminador del
robot (pinza) conservaría su inclinación y sentido y que se movería siguiendo en forma paralela los
ejes cartesianos absolutos. El modo Tool también 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
inclinación 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á seguirán paralelamente los ejes inclinados
que definen la extremidad final del robot.
En la siguiente figura se muestran los ejes a lo largo de los cuales se movería el elemento
terminador del robot al escoger este tipo de control de movimiento.
Figura 16. Operación manual del robot, por medio del marco de referencia trasladado al elemento
terminal.
Observe que los ejes no son paralelos a X, Y, Z sino que tienen su propia dirección y sentido
particular y están alineados con el elemento terminal.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
15
Fundamentos de Robótica. Guía 2
24. El robot se moverá desde una posición inicial a una posición final en cada uno de sus movimientos.
Algunas posiciones están definidas para realizar una labor específica en esa posición, 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 posición, y otras son simplemente el punto neutral entre muchas
posiciones.
Se ubicará la pinza del robot en la posición inicial en el plano de referencia horizontal (lo que la
visualización representa como el piso) cualquier ubicación que sea en z=0. Se guardará esta
posición como POSICION1.
25. Ubique la pinza del robot en el lugar indicado, y presione en la ventana de control de movimiento
del robot (JOG Operation) el botón .
26. Si usted recién acaba de iniciar un proyecto usted tendrá en la pantalla principal la ventana del
listado de posiciones, y en ella aparecerá la información de la posición que acaba de dar. Las
posiciones en la tabla de posiciones quedan definidas como una serie de 6 coordenadas:
(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 ya se han explicado en el apartado de
manipulación del robot de la práctica anterior.
Si ha seleccionado el robot RV-2A sobre el eje lineal, le aparecerá una ventana con la información
de la posición. Dé doble clic en la línea que tiene la posición que acaba de guardar. Aparecerá una
ventana como la que se muestra:
Figura 17. Propiedades de la posición absoluta P1.
27. En Position Name puede 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
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
16
Fundamentos de Robótica. Guía 2
desarrollar.
28. Coloque la pinza del robot en una posición bastante alta y asígnele un nombre que tenga significado
para el proceso que está por desarrollar, puede ser P1.
29. Posiciónese en la ventana que muestra las posiciones, y presione el botón guardar en la barra de
herramientas superior. Si usted recién 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
recién 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 definición 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 ÚNICA DIFERENCIA DEBE SER LA EXTENSIÓN (.POS, .MB4).
DE LO CONTRARIO AL MOMENTO DE COMPILAR EL PROYECTO NO SE TOMARÁN
COMO INFORMACIÓN COMPLEMENTARIA.
30. Con las posiciones guardadas, podemos proceder ahora a desarrollar el primer programa de
secuencias de movimiento del robot.
Para iniciar cualquier programa es necesario antes que nada estar en el CIROS Robotics dentro de
un Proyecto.
31. Para abrir un listado de posiciones es necesario ir a: File → Open y en el cuadro de diálogo poner el
tipo de archivo y escoger el listado de posiciones que ya se ha
configurado.
32. Para iniciar un programa es necesario ir a: File → New → File y escoger en el tipo de ventana a
abrir la opción que se muestra:
Figura 18. Apertura de una nueva ventana del tipo programa Melfa Basic IV.
Con lo anterior se abrirá la ventana para la edición de programas.
33. El primer programa consistirá en realizar un programa para que el brazo industrial recoja una pieza
en un punto de recogida y la deposite en otro punto. Las aproximaciones a estos dos puntos debe
hacerse suavemente (más despacio).
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
17
Fundamentos de Robótica. Guía 2
Figura 19. Espacio de trabajo y posiciones del primer programa de ejemplo.
34. Primero hay que definir las posiciones clave del movimiento, que en este caso serán cinco:
-P1 : posición inicial o de reposo
-P2 : posición de aproximación a la zona de carga
-P3 : posición para coger la pieza
-P4 : posición de aproximación a la zona de descarga
-P5 : posición donde dejamos la pieza
35. Para definir las posiciones se utilizará la opción 'Jog Operation' que se mencionó en el paso 15.
36. Para insertar las posiciones se sitúa el brazo en la posición deseada y se guarda con el botón
'Current Position  Pos. List'. El programa crea una nueva posición en el listado de posiciones y le
pone el nombre Px, donde x es el número de posición que aparece en la ventana anterior. Desde el
listado de posiciones podemos cambiar las propiedades de las posiciones. Si ha colocado el eje
líneal puede usar una posición de 300 mm constante para todas. En el caso del RV-3SB la
orientación C será de 0 en todas las posiciones.
Figura 20. Listado de las posiciones del primer programa de ejemplo.
37. Una vez se tienen las posiciones definidas, empezar a programar; para este ejercicio se utilizarán las
siguientes instrucciones:
- MOV  Realiza un movimiento suave, moviendo los ejes punto a punto.
- OVRD  Porcentaje de la velocidad máxima.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
18
Fundamentos de Robótica. Guía 2
- HOPEN  Abre la pinza.
- HCLOSE  Cierra la pinza.
- DLY  Espera los segundos indicados.
10 '*****************UNIVERSIDAD DON BOSCO******************
20 '* FUNDAMENTOS DE ROBÓTICA *
30 '* *
40 '* PRÁCTICA - 3 *
50 '* INSTRUCCIONES BÁSICAS *
60 '* PARTE 1 *
70 '* Fecha: *
80 '* Comentarios: *
90 '* *
100 '*********************************************************
110 HOPEN 1 ' Abrir Pinza
120 MOV P1 ' Movimiento no interpolado a la posición 1
130 OVRD 90 ' Velocidad al 90%
140 MOV P2 ' Movimiento no interpolado a la posición 2
150 OVRD 30 ' Velocidad al 30%
160 MOV P3 ' Movimiento no interpolado a la posición 3
170 HCLOSE 1 ' Cierra pinza
180 DLY 0.5 ' Espera de 0.5 segundos
190 MOV P2 ' Movimiento no interpolado a la posición 2
200 OVRD 90 ' Velocidad 90%
210 MOV P4 ' Movimiento no interpolado a la posición 4
220 OVRD 30 ' Velocidad al 30%
230 MOV P5 ' Movimiento no interpolado a la posición 5
240 HOPEN 1 ' Abre pinza
250 MOV P4 ' Movimiento no interpolado a la posición 4
260 OVRD 90 ' Velocidad 90%
270 MOV P1 ' Movimiento no interpolado a la posición 1
280 DLY 3 ' Espera de 3 segundos
290 END ' Fin del programa
Figura 21. Código del programa en el lenguaje Melfa Basic IV.
38. Después de introducir el programa, se deben numerar las filas con la opción 'Renumber'.
39. Guardar el programa e incorporarlo al proyecto que se está desarrollando.
Ubique el cursor en la ventana de programa y de clic en save:
Figura 22. Opción Save del Menú File de CIROS Robotics.
Se le abrirá un cuadro de diálogo que preguntará la ubicación del archivo con extensión .MB4
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
19
Fundamentos de Robótica. Guía 2
LOS NOMBRES DEL ARCHIVO DE POSICIONES Y DEL ARCHIVO DEL PROGRAMA
DEBEN SER IGUALES, SU ÚNICA DIFERENCIA DEBE SER LA EXTENSIÓN (.POS, .MB4).
DE LO CONTRARIO AL MOMENTO DE COMPILAR EL PROYECTO NO SE TOMARÁN
COMO INFORMACIÓN COMPLEMENTARIA.
40. Para compilarlo escoja la secuencia:
Figura 23. Opción Compile+Link del Menú Programming de CIROS Robotics.
41. Y luego si emerge la ventana, escoja Add:
Figura 24. Menú de gestión del proyecto para CIROS Robotics.
42. Una vez que el programa está guardado puede correrse antes que nada escogiendo el proyecto actual
como el proyecto activo.
En el menú Programming se escoge la opción Project Management.
Figura 25. Opción Project Management... del menú Programming.
43. Con lo anterior se abre la una ventana llamada Project Management, y dentro de la ventana, en la
pestaña Project se presiona el botón que se indica en el dibujo, el cual genera el texto de ayuda “Set
as Active Project”
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
20
Fundamentos de Robótica. Guía 2
Figura 26. Activación del botón para colocar el proyecto activo en la ventana de gestión del
proyecto.
44. 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.
Figura 27. Arranque de la ejecución del programa por medio del botón Start (F5).
Parte II. Ampliación del programa.
45. Eliminar las posiciones de aproximación P2 y P4.
A) Utilizar la instrucción ampliada de MOV que permite mover hasta una distancia determinada,
por encima de una posición (en la dirección del eje Z de la herramienta).
MOV P9, -50...... Movimiento no interpolado hasta una posición 50mm encima de la posición P9.
B) Utilizar una posición de offset, definiéndola al inicio del programa y utilizándola sumada a P3 y
P5:
DEF POS OFFSET
OFFSET = (0, 0, +50, 0, 0, 0)
…
MOV P9 + OFFSET
46. Realice los cambios en el programa por los dos métodos y ejecute la simulación.
Parte III. Movimientos circulares
47. Realizar un programa para que el brazo industrial recoja un objeto de un soporte elevado y luego
realice dos círculos antes de volver a dejarlo.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
21
Fundamentos de Robótica. Guía 2
Figura 28. Espacio de trabajo y posiciones del segundo programa de ejemplo.
Las posiciones necesarias serán:
-P1 : posición inicial o de reposo
-P2 : posición de recogida
-P3 : posición de inicio del circulo
-P4 : posición de tránsito 1
-P5 : posición de tránsito 2
Figura 29. Listado de las posiciones del segundo programa de ejemplo.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
22
Fundamentos de Robótica. Guía 2
10 '*****************UNIVERSIDAD DON BOSCO******************
20 '* FUNDAMENTOS DE ROBÓTICA *
30 '* *
40 '* PRÁCTICA - 3 *
50 '* MOVIMIENTOS CIRCULARES *
60 '* PARTE 3 *
70 '* Fecha: *
80 '* Comentarios: *
90 '* *
100 '*********************************************************
110 HOPEN 1 ' Abrir Pinza
120 OVRD 70 ' Velocidad al 70%
130 MOV P1 ' Movimiento no interpolado a la posición P1
140 DLY 3 ' Espera de 3 segundos
150 MOV P2, -80 ' Movimiento no interpolado a una posición alejada 80mm de la posición P2
160 OVRD 30 ' Velocidad al 30%
170 MVS P2 ' Movimiento recto interpolado a la posición P2
180 HCLOSE 1 ' Cierra pinza
190 DLY 0.5 ' Espera de 0,5 segundos
200 MVS P2, -50 ' Movimiento recto interpolado a una posición alejada 50mm de la posición P2
210 OVRD 70 ' Velocidad al 70%
220 SPD 100 ' Velocidad de movimientos interpolados 100 mm/s
230 MOV P3, -150 ' Movimiento no interpolado a una posición alejada 150mm de la posición P3
240 MOV P3 ' Movimiento no interpolado a la posición P3
250 MVC P3, P4, P5 ' Movimiento circular
260 MVC P3, P4, P5 ' Movimiento circular
270 MOV P3, -150 ' Movimiento no interpolado a una posición alejada 150mm de la posición P3
280 MVS P2, -80 ' Movimiento recto interpolado a una posición alejada 80mm de la posición P2
290 OVRD 30 ' Velocidad al 30%
300 MVS P2 ' Movimiento recto interpolado a la posición P2
310 HOPEN 1 ' Abrir Pinza
320 DLY 0.5 ' Espera de 0,5 segundos
330 MVS P2, -50 ' Movimiento recto interpolado a una posición alejada 50mm de la posición P2
340 OVRD 70 ' Velocidad al 70%
350 MOV P1 ' Movimiento no interpolado a la posición P1
360 END ' Fin del programa
Figura 30. Código del programa en el lenguaje Melfa Basic IV.
48. Modificar el programa para que realice 3 vueltas seguidas en vez de dos. Utilizar la instrucción
CNT para que haga un movimiento continuo y no se pare entre vuelta y vuelta (en realidad no para
del todo pero el sonido en el robot real cambia).
CNT 1, 100, 100
...
CNT 0
49. Realizar un arco y/o circunferencia con centro definido, utilizando la instrucción MVR3.
La posición del centro será como la posición de recogida, pero 100mm más baja.
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
23
Fundamentos de Robótica. Guía 2
MVR3 P_inicial, P_final, P_centro
50. Realice el cambio en el programa para añadir el movimiento circular MVR3 y ejecute la
simulación.
51. Salga del programa y apague la computadora.
1. Presente el programa modificado que realizó en la parte II del procedimiento.
2. Presente el programa modificado que realizó para el numeral 48 y el 49 en la parte III del
procedimiento.
3. Realice un programa que apile dos objetos, el programa tendrá una posición de Home, dos
posiciones en donde se encuentran originalmente cada objeto y una tercera posición para colocar los
objetos apilados, una vez apilados, cada objeto debe regresar a su posición original.
4. Realice un programa que intercambie de posición dos objetos, el programa tendrá una posición de
Home, una posición intermedia para colocar temporalmente al primer objeto que se mueve y dos
posiciones para cada uno de los objetos a mover.
1. Investigue las instrucciones del lenguaje Melfa Basic IV para el control de las entradas y salidas
digitales del robot Mitsubishi.
 Manual de Instrucciones de COSIROP para el lenguaje MELFA BASIC IV.
FESTO Didactic.
Autor: Juan Olea Pastor.
Designación: Manual de Prácticas para el brazo robot RV-2AJ.
Marzo de 2005.
 PROGRAMACIÓN DE ROBOTS. Guía del estudiante.
Universidad Don Bosco
Versión 4. 16 de septiembre de 2011.
Investigación Complementaria
Bibliografía
Análisis de resultado
Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019
24
Fundamentos de Robótica. Guía 2
Hoja de cotejo: 2
Guía 2: Programación del Robot Mitsubishi. Parte I.
Estudiante: Estación No:
Docente: GL: Fecha:
EVALUACION
% 1-4 5-7 8-10 Nota
CONOCIMIENTO 25% Conocimiento
deficiente de los
fundamentos
teóricos de la
programación de
robots Mitsubishi
usando el lenguaje
Melfa Basic IV.
Conocimiento y
explicación
incompleta de
los fundamentos
teóricos.
Conocimiento
completo y
explicación clara
de los
fundamentos
teóricos de la
programación de
robots Mitsubishi.
APLICACIÓN DEL
CONOCIMIENTO
10%
30%
30%
No ejecutó los
programas del
procedimiento de la
guía de laboratorio.
No realizó el
numeral 3 del
Análisis de
Resultados.
No realizó el
numeral 4 del
Análisis de
Resultados.
Necesitó la ayuda
del docente de
laboratorio
Necesitó la ayuda
del docente de
laboratorio
Necesitó la ayuda
del docente de
laboratorio.
Ejecutó los
programas del
procedimiento de la
guía de laboratorio.
Realizó por sí
mismo el numeral 3
del Análisis de
Resultados.
Realizó por sí
mismo el numeral 4
del Análisis de
Resultados.
ACTITUD 3% No tiene
actitud
proactiva.
Participa
ocasionalmente o lo
hace constantemente
pero sin coordinarse
con su compañero.
Tiene actitud
proactiva y
sus propuestas
son concretas y
factibles.
2% No es ordenado ni
responsable en el uso del
equipo
Solo es ordenado o
solo responsable con
el uso del equipo
Es ordenado y
responsable en el uso
del equipo
TOTAL 100%

Más contenido relacionado

Similar a guia-2.pdf

38912287 practica1
38912287 practica138912287 practica1
38912287 practica1rexmersxa7
 
Práctica de laboratorio de robótica4to
Práctica de laboratorio de robótica4toPráctica de laboratorio de robótica4to
Práctica de laboratorio de robótica4toUnitronik Robotica
 
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVR
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVRMicrocontroladores: Programación en lenguaje ensamblador de Atmel Studio AVR
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVRSANTIAGO PABLO ALBERTO
 
como usar MPLAB
como usar MPLABcomo usar MPLAB
como usar MPLABMicroPart
 
Presentación de celda virtual Robotcell / virtual cell using robotcell
Presentación de celda virtual Robotcell / virtual cell using robotcellPresentación de celda virtual Robotcell / virtual cell using robotcell
Presentación de celda virtual Robotcell / virtual cell using robotcellEmmanuel Ros
 
Práctica de laboratorio de robótica5to
Práctica de laboratorio de robótica5toPráctica de laboratorio de robótica5to
Práctica de laboratorio de robótica5toUnitronik Robotica
 
Lenguajes de programación en robótica
Lenguajes de programación en robótica �Lenguajes de programación en robótica �
Lenguajes de programación en robótica Laureano Zantedeschi
 
Tema intro a la programación (robomind) (informática 4ºeso)
Tema intro a la programación (robomind) (informática 4ºeso)Tema intro a la programación (robomind) (informática 4ºeso)
Tema intro a la programación (robomind) (informática 4ºeso)jribalt1
 
Robot Programable Moway
Robot Programable MowayRobot Programable Moway
Robot Programable Mowayminirobots
 
PROGRAMACION EN LENGUAJE EMSAMBLADOR
PROGRAMACION EN LENGUAJE EMSAMBLADORPROGRAMACION EN LENGUAJE EMSAMBLADOR
PROGRAMACION EN LENGUAJE EMSAMBLADORSistemadeEstudiosMed
 
Técnicas de programación estructurada
Técnicas de programación estructuradaTécnicas de programación estructurada
Técnicas de programación estructuradaGabriel Mondragón
 

Similar a guia-2.pdf (20)

38912287 practica1
38912287 practica138912287 practica1
38912287 practica1
 
Practica1
Practica1Practica1
Practica1
 
Práctica de laboratorio de robótica4to
Práctica de laboratorio de robótica4toPráctica de laboratorio de robótica4to
Práctica de laboratorio de robótica4to
 
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVR
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVRMicrocontroladores: Programación en lenguaje ensamblador de Atmel Studio AVR
Microcontroladores: Programación en lenguaje ensamblador de Atmel Studio AVR
 
como usar MPLAB
como usar MPLABcomo usar MPLAB
como usar MPLAB
 
Thermof3
Thermof3Thermof3
Thermof3
 
Presentación de celda virtual Robotcell / virtual cell using robotcell
Presentación de celda virtual Robotcell / virtual cell using robotcellPresentación de celda virtual Robotcell / virtual cell using robotcell
Presentación de celda virtual Robotcell / virtual cell using robotcell
 
Práctica de laboratorio de robótica5to
Práctica de laboratorio de robótica5toPráctica de laboratorio de robótica5to
Práctica de laboratorio de robótica5to
 
Lenguajes de programación en robótica
Lenguajes de programación en robótica �Lenguajes de programación en robótica �
Lenguajes de programación en robótica
 
Tema intro a la programación (robomind) (informática 4ºeso)
Tema intro a la programación (robomind) (informática 4ºeso)Tema intro a la programación (robomind) (informática 4ºeso)
Tema intro a la programación (robomind) (informática 4ºeso)
 
2do encuentro - Mayo.pptx
2do encuentro - Mayo.pptx2do encuentro - Mayo.pptx
2do encuentro - Mayo.pptx
 
Robot Programable Moway
Robot Programable MowayRobot Programable Moway
Robot Programable Moway
 
Introduccion a la Programación
Introduccion a la ProgramaciónIntroduccion a la Programación
Introduccion a la Programación
 
04a 150206074952-conversion-gate02
04a 150206074952-conversion-gate0204a 150206074952-conversion-gate02
04a 150206074952-conversion-gate02
 
Unidad II
Unidad IIUnidad II
Unidad II
 
PROGRAMACION EN LENGUAJE EMSAMBLADOR
PROGRAMACION EN LENGUAJE EMSAMBLADORPROGRAMACION EN LENGUAJE EMSAMBLADOR
PROGRAMACION EN LENGUAJE EMSAMBLADOR
 
Sesion 02 NXT
Sesion 02 NXTSesion 02 NXT
Sesion 02 NXT
 
Técnicas de programación estructurada
Técnicas de programación estructuradaTécnicas de programación estructurada
Técnicas de programación estructurada
 
Lenguajes y programación de robots IPN 2
Lenguajes y programación de robots IPN 2Lenguajes y programación de robots IPN 2
Lenguajes y programación de robots IPN 2
 
Sesion 04 NXT
Sesion 04 NXTSesion 04 NXT
Sesion 04 NXT
 

guia-2.pdf

  • 1. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 1 Fundamentos de Robótica. Guía 2 Tema: Programación del Robot Mitsubishi. Parte I. Tiempo de ejecución: 2 horas. Programar de forma básica un robot industrial del laboratorio. • Definir las posiciones en el software CIROS Robotics para los movimientos que realizará el robot Mitsubishi. • Crear programas en el lenguaje Melfa Basic IV para realizar tareas de desplazamiento de piezas de un robot Mitsubishi. • Simular la ejecución de programas en el ambiente 3D del software CIROS Robotics. 1. Estructura de la programación en CIROS Robotics. Estructura del proyecto Todo proyecto generado con el software de programación CIROS Robotics consta de diferentes archivos que conforman el proyecto. • El archivo *.PRJ es el archivo que guarda nuestra configuración del proyecto y asocia a este el listado de posiciones, así como el programa. (Este archivo no se deberá cargar en el robot). • El archivo *.POS es el listado de posiciones del proyecto estas posiciones podrán ser modificadas más tarde con la consola si se desea. (Es recomendable que el listado de posiciones como el programa se carguen en el robot con el mismo nombre de archivo). • El archivo *.MB4 es el archivo que contiene la programación de la secuencia que se desea que ejecute el robot que en este caso se ha generado en el lenguaje MELFA BASIC 4. (Este archivo junto con el listado de posiciones son los que se tienen que descargar al robot para ejecutar la secuencia). NOTA: Este mismo formato de archivos y procedimiento de relación de los diferentes archivos de proyecto es el mismo en el software de modelado, carga/descarga y depuración en línea CIROS Studio. Objetivo General Introducción Teórica Objetivos específicos Facultad: Ingeniería. Escuela: Electrónica Asignatura: Fundamentos de Robótica Lugar de ejecución: iCIM Lab. Edificio 3. Primera planta.
  • 2. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 2 Fundamentos de Robótica. Guía 2 Estructura del programa Como cualquier tipo de programa, el programa de la secuencia de un brazo robot mantiene una estructura determinada que ayuda a la comprensión de este. El programa debe de tener una estructura determinada. Lo primero que habrá en el programa es una zona de declaración de las diferentes variables. Seguido se colocará el programa principal que acaba con la instrucción END después del programa principal se colocan las diferentes subrutina a las que se hayan llamado que finalizan con la instrucción RETURN. Comentarios Definición de posiciones Definición de I/O Definición de variables Número de línea de instrucción TOMAR
  • 3. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 3 Fundamentos de Robótica. Guía 2 Figura 1. Estructura de los programa en el lenguaje Melfa Basic IV. Líneas de instrucción El programa se construye en base a líneas de instrucción que se ejecutarán de manera secuencial, excepto que haya instrucciones de salto, bucles o llamadas a subrutina. Los elementos que las forman se muestran a continuación. Ejemplo de declaración de un comando: 10 MOV P1 WTHM_OUT (17) = 1 • Número de línea Es el número usado para determinar el orden de ejecución del programa. El programa se ejecutará en orden ascendente. • Nemotécnico de la instrucción Es un comando que designa la operación a realizar por el robot. • Dato El dato puede ser un valor o una variable del tipo requerido por la instrucción. • Declaración añadida Solo se usa si es necesario. Programa principal Etiqueta Llamada a Subrutina Salto a línea Inicio Final Subrutina
  • 4. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 4 Fundamentos de Robótica. Guía 2 Tipos de variables Figura 2. Jerarquía de las variables en los programa en el lenguaje Melfa Basic IV. • POSICIÓN: Coordenadas ortogonales de la posición. El nombre de la variable empieza por P. • ANGULOS DE EJE: Ángulos de las articulaciones. El nombre de la variable empieza con J. • ARITMÉTICA: Valor numérico (entero, real,..). El nombre empieza por M. • CARÁCTER: Cadenas de letras. El nombre de la variable termina en $. 2. Instrucciones básicas En la programación de brazos robot, siempre persiste un tipo de instrucciones básicas para todos los tipos software que son aquellas que definen los movimientos más simples del brazo y que por sí solas son las base de la mayoría de las secuencias de una aplicación. Movimiento No Interpolado El Robot genera una trayectoria cualquiera entre el punto origen y el punto de destino, obteniendo para cada una de las articulaciones del robot, las coordenadas, velocidad y aceleración que a lo largo del tiempo se han de imprimir para lograr el movimiento especificado. Pese a su complejidad es la forma más rápida para el robot. Figura 3. Tipo de movimiento no interpolado (MOV) en el lenguaje Melfa Basic IV. • MOV El robot se mueve a la posición indicada con una interpolación angular de cada eje. El camino recorrido no se puede prever. Se pueden introducir las declaraciones añadidas WTH o WTHIF. Ejemplos de llamadas de instrucción:
  • 5. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 5 Fundamentos de Robótica. Guía 2 MOV P1............. Se mueve a P1. MOV P1+P2....... Se mueve a la posición resultante de sumar las coordenadas de P1 y P2. MOV P1*P2....... Se mueve a la posición relativa convertida de P1 a P2. MOV P1, -50...... Se mueve desde P1 hasta una posición a 50mm en la dirección de la pinza. MOV P1 WTHM_OUT(7)=1… Empieza el movimiento hacia P1, y simultáneamente enciende la salida 7. MOV P1 WTHIFM_IN(9)=1, SKIP. . Si durante el movimiento hacia P1 el bit 9 de entrada se activa, se para el movimiento y el programa sigue. Programa ejemplo: 10 MOV P1 20 MOV P2, -50 30 MOV P2 40 END Figura 4. Ejemplo del tipo de movimiento no interpolado (MOV) en el lenguaje Melfa Basic IV. Movimiento lineal Interpolado El Robot describe una línea recta entre los puntos origen y destino. Es un movimiento lento para el robot y solo se emplea en movimientos críticos cuando el robot se encuentra cerca de completar su trabajo (agarrar pieza, dejar pieza, soldar un punto, aplicar adhesivo). Figura 5. Tipo de movimiento lineal interpolado (MVS) en el lenguaje Melfa Basic IV. • MVS El robot se mueve en línea recta hacia la posición indicada. Se pueden introducir las declaraciones añadidas WTH o WTHIF. Ejemplos de llamadas de instrucción: MVS P1............. Se mueve hasta P1. MVS P1+P2....... Se mueve a la posición resultante de sumar P1 y P2. MVS P1*P2........Se mueve a la posición relativa convertida de P1 a P2.
  • 6. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 6 Fundamentos de Robótica. Guía 2 MVS P1, -50......Se mueve desde P1 hasta una posición a 50mm en la dirección de la pinza. MVS , -50.......... Se mueve 50mm desde la posición actual en la dirección de la pinza. MVS P1 WTH M_OUT(7)=1.......... Empieza el movimiento hacia P1, y simultáneamente enciende la salida 7. MVS P1 WTHIF M_IN(9)=1, SKIP.............. Si durante el movimiento hacia P1 el bit 9 de entrada se activa, se para el movimiento y el programa sigue. MVS P1, TYPE 0, 2......... Se mueve hasta P1 con una interpolación ABC. MVS P1, TYPE 0, 1......... Se mueve a P1 con una interpolación ortogonal de 3 ejes. • HOPEN / HCLOSE Abre/cierra la pinza designada. Ejemplo de llamada de instrucción: HOPEN 1........... Abre la pinza 1 HCLOSE 1......... Cierra la pinza 1 • OVDR Designa la velocidad de movimiento según un porcentaje relativo a la velocidad máxima. Afecta a todos los movimientos posteriores, si es que no se vuelve a modificar el valor. Ejemplo de llamada de instrucción: OVRD 60............Fija la velocidad de todos los movimientos al 60% de la velocidad máxima. • SPD Define la velocidad de interpolación linear y circular(para instrucciones MVS, MVR y MVC) de la pinza en mm/s. Ejemplo de llamada de instrucción: SPD 30.............. Configura la velocidad de los movimientos lineales y circulares en 30mm/s. • DLY Espera los segundos indicados (el mínimo es 0.05), y luego sigue con el programa. Ejemplo de llamada de instrucción: DLY 3.................Espera 3 segundos antes de seguir. 3. Instrucciones de movimiento • MVR El robot se mueve por una circunferencia definida por tres puntos. Si al empezar el movimiento no se encuentra en el punto de inicio, se moverá linealmente hasta él antes de empezar. Se pueden introducir las declaraciones añadidas WTH o WTHIF. MVR: Se define el punto de inicio, uno de tránsito, y el punto final. MVR2: Se define la posición inicial, la final, y un punto de referencia por el que no pasará.
  • 7. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 7 Fundamentos de Robótica. Guía 2 MVR3: Se define el punto inicial, el final y el centro del círculo. El movimiento va del inicial al final por el camino más corto del círculo. MVC: Se define la posición de inicio (y final), punto de tránsito 1, y punto de tránsito 2. El movimiento sigue el recorrido: inicio tránsito1 tránsito2 final. Ejemplos de llamadas de instrucción: MVR P1, P2, P3...............Se mueve con una interpolación circular entre P1P2P3. MVR P1, P2, P3 WTH M_OUT(7)=1.........Interpolación circular entre P1P2P3, y el bit 7 se activa. MVR P1, P2, P3 WTHIF M_IN(9)=1, SKIP................Si el bit 9 se activa durante el movimiento, se para y sigue en el siguiente paso. MVR P1, P2, P3 TYPE 0, 1.............Se mueve con una interpolación circular entre P1P2P3. MVR2 P1, P2, P3............. Interpolación circular de P1 a P2, sin pasar por P3. MVR3 P1, P3, P4.............Se mueve con una interpolación circular de P1 a P3 por el camino más corto. El punto P4 es el centro. MVC P6, P8, P9............... Movimiento circular P6P8P9P6. Programa ejemplo: 10 MVR P1, P2, P3 20 MVR2 P3, P4, P5 30 MVR3 P4, P6, P7 40 MVC P6, P8, P9 50 END Figura 6. Ejemplo del tipo de movimiento circular en el lenguaje Melfa Basic IV. • CNT Define el principio y el final de un movimiento continuo. Ejemplos de llamadas de instrucción: CNT 1.................Define el inicio del movimiento continuo. CNT 1, 100, 200...............Define el inicio del movimiento continuo, la distancia de separación con el punto inicial, y la distancia de separación con el punto final. CNT 0.................Define el final del movimiento continuo.
  • 8. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 8 Fundamentos de Robótica. Guía 2 Programa ejemplo: 10 MOV P1 20 CNT 1 30 MVS P2 40 CNT 1, 50, 100 50 MVS P3 60 MVS P4 70 CNT 0 80 END Figura 7. Ejemplo de aplicación del movimiento continuo (CNT) en el lenguaje Melfa Basic IV. • ACCEL Define la aceleración y desaceleración durante el movimiento como un porcentaje del máximo. Ejemplos de llamadas de instrucción: ACCEL.................Configura la aceleración y la desaceleración al 100%. ACCEL 60, 80.......Configura la aceleración al 60% y la desaceleración al 80%. • JOVDR Define la velocidad de movimiento angular axial (para instrucciones MOV), como un porcentaje de la máxima. Ejemplo de llamada de instrucción: JOVRD 70...........Configura la velocidad del movimiento angular de cada eje al 70% de la máxima. • HLT Para la ejecución del programa y entra en el estado de paro. Ejemplos de llamadas de instrucción: HLT.....................Para la ejecución del programa. IF M_IN(8)=1 THEN HLT................Para la ejecución del programa cuando se activa la señal de entrada M_IN(8). MOV P3 WTHIF M_IN(9)=1, HLT................Para la ejecución del programa si la señal de entrada M_IN(9) se activa durante el movimiento a P3. • FINE Define las condiciones de posicionamiento final con un número de pulsos. Ejemplo de llamada de instrucción: FINE 100............Configura las condiciones de posicionamiento final a 100 pulsos.
  • 9. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 9 Fundamentos de Robótica. Guía 2 • TOOL Configura la forma de la herramienta que usamos, y configura el punto de control. Ejemplo de llamada de instrucción: TOOL P60.......... Define la forma guardada en P60. 4. Programación de trayectorias (Metodología Ford) Cuando se programan trayectorias generalmente ubicamos las siguientes posiciones: • Posición de HOME: Generalmente es la posición de privilegio en donde el efector final (Pinza en este caso) tiene acceso a las demás posiciones asegurándonos de que no existan colisiones en el entorno. • Posición de Acercamiento: Se ubica a poca distancia del objeto y a partir de esa posición se programan movimientos suaves y finos para llegar a la posición de agarre. • Posición de Agarre: es la coordenada en donde se ubica el objeto para su sujeción o agarre para manipularlo, trasladarlo, etc. 1 Computadora personal o portátil con Windows. 1 Software CIROS Robotics Parte I. Definición de posiciones en CIROS Robotics. 1. Ejecute el programa de simulación CIROS Robotics, de clic en la línea sombreada en la siguiente figura. Procedimiento Materiales y equipos
  • 10. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 10 Fundamentos de Robótica. Guía 2 Figura 8. Búsqueda del programa CIROS Robotics dentro de Todos los Programas de Windows 7. 2. Una vez abierta la aplicación, el primer paso es crear un proyecto en File→New→Project Wizard Figura 9. Menú File del programa CIROS Robotics. Un proyecto en este software significa todo el conjunto de situaciones particulares acerca de la simulación que se va a correr. Se abrirá una serie de ventanas que recopilará esta información. 3. La primera ventana recopila información acerca del nombre del proyecto. Proporcione el nombre que considere conveniente, en Program Name escriba una secuencia corta de letras mayúsculas y números. 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 ubicación que ha dado en esta etapa de la definición del proyecto.
  • 11. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 11 Fundamentos de Robótica. Guía 2 Figura 10. Ventana del Asistente del proyecto de CIROS Robotics. 4. La ventana siguiente pedirá información acerca del robot. Si desea trabajar con los modelos del iCIM escoja cualquiera de los siguientes, con las especificaciones que se muestran. Figura 11. Ventana del Parámetros del Robot del Asistente del proyecto de CIROS Robotics. 5. 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á después. 6. Presione finish para iniciar con el proyecto de simulación. 7. Le aparecerán en la pantalla de la aplicación cuatro ventanas con información acerca de su proyecto. La ventana superior izquierda muestra al robot que usted escogió, otra ventana muestra el listado de posiciones, otra muestra las líneas de comando del programa principal del robot y una tercera ventana muestra los mensajes de alarma del sistema. 8. A continuación se muestra la pantalla principal de un proyecto recién abierto. Tanto el nombre del
  • 12. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 12 Fundamentos de Robótica. Guía 2 archivo del programa como el nombre del archivo de las posiciones llevan el nombre que se digitó en el campo Program Name en la inicialización del proyecto. Figura 12. Ventanas del modelo 3D, mensajes, programa y posiciones de CIROS Robotics. 9. Haga clic en la ventana del robot para que la atención de la aplicación se centre en ella. Vaya a View → Standard Views y pruebe cada una de las opciones para que pueda visualizar el robot que ha escogido. 10. Puede hacer la ventana del robot más grande o más pequeña según su percepción personal lo requiera. 11. También puede escoger en el menú View las opciones Zoom In y Zoom Out para aumentar o disminuir el tamaño de la visualización del objeto. 12. Puede moverse dentro de la ventana escogiendo Move en el menú View o presionando el botón e inmediatamente yendo a la ventana, haciendo clic y moviéndose al punto de vista deseado. 13. Puede rotar la vista escogiendo Rotate en el menú View o presionando el botón e inmediatamente yendo a la ventana, haciendo clic y rotando al punto de vista deseado. 14. Explore el menú View para que se sienta cómodo al trabajar en la programación del robot que ha escogido. 15. Para tomar control del robot vaya a Programming → Teach-In para que se le abra la ventana de modo Jog Operation:
  • 13. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 13 Fundamentos de Robótica. Guía 2 Figura 13. Menú de programación (derecha) y ventana de la operación manual (izquierda) de CIROS Robotics. 16. 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 gráfica intente todos los movimientos y compruebe los alcances de cada una de las articulaciones. También puede variar la velocidad de los movimientos del robot utilizando el control Figura 14. Ajuste de la velocidad de movimiento de las articulaciones del robot simulado. A mayor porcentaje, más velocidad. 100% es la velocidad máxima. 17. Puede abrir y cerrar las mordazas del robot presionando el botón Close Hand (al cerrar la pinza el botón cambiará a Open Hand) 18. 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 posición hasta otra llevando algo en ella. Hacer este desplazamiento moviendo una articulación a la vez le resultará muy difícil y tedioso. Afortunadamente hay otra manera de mover al robot todo a la vez cuidando la inclinación de la pinza constante durante todo el trayecto. Este es el modo XYZ 19. 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 línea recta en X, en Y y en Z. 20. Mueva el robot trazando un cuadrado alrededor de él, esto lo logrará fácilmente utilizando los controles X e Y. Note que existen límites para el movimiento rectilíneo, ya que el robot no puede alcanzar todos los puntos de la línea recta, algunos le resultarán muy lejanos (las esquinas del cuadrado) y algunos le resultarán tan cercanos que sus articulaciones no podrán proporcionar el punto sin antes cambiar la posición de las articulaciones. 21. Al usar el modo Joint se abre la posibilidad de mover individualmente cada articulación 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 articulación en cada sentido. 22. Utilice este tipo de control cuando necesite desarrollar movimientos de alta complejidad que incluyen inclinación o direccionamiento específico del elemento terminal del robot.
  • 14. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 14 Fundamentos de Robótica. Guía 2 Figura 15. Ventana de operación manual del robot, por medio de cada articulación. 23. Se aprendió en el modo XYZ que en ese tipo de control de movimiento el elemento terminador del robot (pinza) conservaría su inclinación y sentido y que se movería siguiendo en forma paralela los ejes cartesianos absolutos. El modo Tool también 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 inclinación 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á seguirán paralelamente los ejes inclinados que definen la extremidad final del robot. En la siguiente figura se muestran los ejes a lo largo de los cuales se movería el elemento terminador del robot al escoger este tipo de control de movimiento. Figura 16. Operación manual del robot, por medio del marco de referencia trasladado al elemento terminal. Observe que los ejes no son paralelos a X, Y, Z sino que tienen su propia dirección y sentido particular y están alineados con el elemento terminal.
  • 15. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 15 Fundamentos de Robótica. Guía 2 24. El robot se moverá desde una posición inicial a una posición final en cada uno de sus movimientos. Algunas posiciones están definidas para realizar una labor específica en esa posición, 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 posición, y otras son simplemente el punto neutral entre muchas posiciones. Se ubicará la pinza del robot en la posición inicial en el plano de referencia horizontal (lo que la visualización representa como el piso) cualquier ubicación que sea en z=0. Se guardará esta posición como POSICION1. 25. Ubique la pinza del robot en el lugar indicado, y presione en la ventana de control de movimiento del robot (JOG Operation) el botón . 26. Si usted recién acaba de iniciar un proyecto usted tendrá en la pantalla principal la ventana del listado de posiciones, y en ella aparecerá la información de la posición que acaba de dar. Las posiciones en la tabla de posiciones quedan definidas como una serie de 6 coordenadas: (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 ya se han explicado en el apartado de manipulación del robot de la práctica anterior. Si ha seleccionado el robot RV-2A sobre el eje lineal, le aparecerá una ventana con la información de la posición. Dé doble clic en la línea que tiene la posición que acaba de guardar. Aparecerá una ventana como la que se muestra: Figura 17. Propiedades de la posición absoluta P1. 27. En Position Name puede 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
  • 16. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 16 Fundamentos de Robótica. Guía 2 desarrollar. 28. Coloque la pinza del robot en una posición bastante alta y asígnele un nombre que tenga significado para el proceso que está por desarrollar, puede ser P1. 29. Posiciónese en la ventana que muestra las posiciones, y presione el botón guardar en la barra de herramientas superior. Si usted recién 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 recién 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 definición 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 ÚNICA DIFERENCIA DEBE SER LA EXTENSIÓN (.POS, .MB4). DE LO CONTRARIO AL MOMENTO DE COMPILAR EL PROYECTO NO SE TOMARÁN COMO INFORMACIÓN COMPLEMENTARIA. 30. Con las posiciones guardadas, podemos proceder ahora a desarrollar el primer programa de secuencias de movimiento del robot. Para iniciar cualquier programa es necesario antes que nada estar en el CIROS Robotics dentro de un Proyecto. 31. Para abrir un listado de posiciones es necesario ir a: File → Open y en el cuadro de diálogo poner el tipo de archivo y escoger el listado de posiciones que ya se ha configurado. 32. Para iniciar un programa es necesario ir a: File → New → File y escoger en el tipo de ventana a abrir la opción que se muestra: Figura 18. Apertura de una nueva ventana del tipo programa Melfa Basic IV. Con lo anterior se abrirá la ventana para la edición de programas. 33. El primer programa consistirá en realizar un programa para que el brazo industrial recoja una pieza en un punto de recogida y la deposite en otro punto. Las aproximaciones a estos dos puntos debe hacerse suavemente (más despacio).
  • 17. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 17 Fundamentos de Robótica. Guía 2 Figura 19. Espacio de trabajo y posiciones del primer programa de ejemplo. 34. Primero hay que definir las posiciones clave del movimiento, que en este caso serán cinco: -P1 : posición inicial o de reposo -P2 : posición de aproximación a la zona de carga -P3 : posición para coger la pieza -P4 : posición de aproximación a la zona de descarga -P5 : posición donde dejamos la pieza 35. Para definir las posiciones se utilizará la opción 'Jog Operation' que se mencionó en el paso 15. 36. Para insertar las posiciones se sitúa el brazo en la posición deseada y se guarda con el botón 'Current Position Pos. List'. El programa crea una nueva posición en el listado de posiciones y le pone el nombre Px, donde x es el número de posición que aparece en la ventana anterior. Desde el listado de posiciones podemos cambiar las propiedades de las posiciones. Si ha colocado el eje líneal puede usar una posición de 300 mm constante para todas. En el caso del RV-3SB la orientación C será de 0 en todas las posiciones. Figura 20. Listado de las posiciones del primer programa de ejemplo. 37. Una vez se tienen las posiciones definidas, empezar a programar; para este ejercicio se utilizarán las siguientes instrucciones: - MOV Realiza un movimiento suave, moviendo los ejes punto a punto. - OVRD Porcentaje de la velocidad máxima.
  • 18. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 18 Fundamentos de Robótica. Guía 2 - HOPEN Abre la pinza. - HCLOSE Cierra la pinza. - DLY Espera los segundos indicados. 10 '*****************UNIVERSIDAD DON BOSCO****************** 20 '* FUNDAMENTOS DE ROBÓTICA * 30 '* * 40 '* PRÁCTICA - 3 * 50 '* INSTRUCCIONES BÁSICAS * 60 '* PARTE 1 * 70 '* Fecha: * 80 '* Comentarios: * 90 '* * 100 '********************************************************* 110 HOPEN 1 ' Abrir Pinza 120 MOV P1 ' Movimiento no interpolado a la posición 1 130 OVRD 90 ' Velocidad al 90% 140 MOV P2 ' Movimiento no interpolado a la posición 2 150 OVRD 30 ' Velocidad al 30% 160 MOV P3 ' Movimiento no interpolado a la posición 3 170 HCLOSE 1 ' Cierra pinza 180 DLY 0.5 ' Espera de 0.5 segundos 190 MOV P2 ' Movimiento no interpolado a la posición 2 200 OVRD 90 ' Velocidad 90% 210 MOV P4 ' Movimiento no interpolado a la posición 4 220 OVRD 30 ' Velocidad al 30% 230 MOV P5 ' Movimiento no interpolado a la posición 5 240 HOPEN 1 ' Abre pinza 250 MOV P4 ' Movimiento no interpolado a la posición 4 260 OVRD 90 ' Velocidad 90% 270 MOV P1 ' Movimiento no interpolado a la posición 1 280 DLY 3 ' Espera de 3 segundos 290 END ' Fin del programa Figura 21. Código del programa en el lenguaje Melfa Basic IV. 38. Después de introducir el programa, se deben numerar las filas con la opción 'Renumber'. 39. Guardar el programa e incorporarlo al proyecto que se está desarrollando. Ubique el cursor en la ventana de programa y de clic en save: Figura 22. Opción Save del Menú File de CIROS Robotics. Se le abrirá un cuadro de diálogo que preguntará la ubicación del archivo con extensión .MB4
  • 19. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 19 Fundamentos de Robótica. Guía 2 LOS NOMBRES DEL ARCHIVO DE POSICIONES Y DEL ARCHIVO DEL PROGRAMA DEBEN SER IGUALES, SU ÚNICA DIFERENCIA DEBE SER LA EXTENSIÓN (.POS, .MB4). DE LO CONTRARIO AL MOMENTO DE COMPILAR EL PROYECTO NO SE TOMARÁN COMO INFORMACIÓN COMPLEMENTARIA. 40. Para compilarlo escoja la secuencia: Figura 23. Opción Compile+Link del Menú Programming de CIROS Robotics. 41. Y luego si emerge la ventana, escoja Add: Figura 24. Menú de gestión del proyecto para CIROS Robotics. 42. Una vez que el programa está guardado puede correrse antes que nada escogiendo el proyecto actual como el proyecto activo. En el menú Programming se escoge la opción Project Management. Figura 25. Opción Project Management... del menú Programming. 43. Con lo anterior se abre la una ventana llamada Project Management, y dentro de la ventana, en la pestaña Project se presiona el botón que se indica en el dibujo, el cual genera el texto de ayuda “Set as Active Project”
  • 20. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 20 Fundamentos de Robótica. Guía 2 Figura 26. Activación del botón para colocar el proyecto activo en la ventana de gestión del proyecto. 44. 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. Figura 27. Arranque de la ejecución del programa por medio del botón Start (F5). Parte II. Ampliación del programa. 45. Eliminar las posiciones de aproximación P2 y P4. A) Utilizar la instrucción ampliada de MOV que permite mover hasta una distancia determinada, por encima de una posición (en la dirección del eje Z de la herramienta). MOV P9, -50...... Movimiento no interpolado hasta una posición 50mm encima de la posición P9. B) Utilizar una posición de offset, definiéndola al inicio del programa y utilizándola sumada a P3 y P5: DEF POS OFFSET OFFSET = (0, 0, +50, 0, 0, 0) … MOV P9 + OFFSET 46. Realice los cambios en el programa por los dos métodos y ejecute la simulación. Parte III. Movimientos circulares 47. Realizar un programa para que el brazo industrial recoja un objeto de un soporte elevado y luego realice dos círculos antes de volver a dejarlo.
  • 21. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 21 Fundamentos de Robótica. Guía 2 Figura 28. Espacio de trabajo y posiciones del segundo programa de ejemplo. Las posiciones necesarias serán: -P1 : posición inicial o de reposo -P2 : posición de recogida -P3 : posición de inicio del circulo -P4 : posición de tránsito 1 -P5 : posición de tránsito 2 Figura 29. Listado de las posiciones del segundo programa de ejemplo.
  • 22. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 22 Fundamentos de Robótica. Guía 2 10 '*****************UNIVERSIDAD DON BOSCO****************** 20 '* FUNDAMENTOS DE ROBÓTICA * 30 '* * 40 '* PRÁCTICA - 3 * 50 '* MOVIMIENTOS CIRCULARES * 60 '* PARTE 3 * 70 '* Fecha: * 80 '* Comentarios: * 90 '* * 100 '********************************************************* 110 HOPEN 1 ' Abrir Pinza 120 OVRD 70 ' Velocidad al 70% 130 MOV P1 ' Movimiento no interpolado a la posición P1 140 DLY 3 ' Espera de 3 segundos 150 MOV P2, -80 ' Movimiento no interpolado a una posición alejada 80mm de la posición P2 160 OVRD 30 ' Velocidad al 30% 170 MVS P2 ' Movimiento recto interpolado a la posición P2 180 HCLOSE 1 ' Cierra pinza 190 DLY 0.5 ' Espera de 0,5 segundos 200 MVS P2, -50 ' Movimiento recto interpolado a una posición alejada 50mm de la posición P2 210 OVRD 70 ' Velocidad al 70% 220 SPD 100 ' Velocidad de movimientos interpolados 100 mm/s 230 MOV P3, -150 ' Movimiento no interpolado a una posición alejada 150mm de la posición P3 240 MOV P3 ' Movimiento no interpolado a la posición P3 250 MVC P3, P4, P5 ' Movimiento circular 260 MVC P3, P4, P5 ' Movimiento circular 270 MOV P3, -150 ' Movimiento no interpolado a una posición alejada 150mm de la posición P3 280 MVS P2, -80 ' Movimiento recto interpolado a una posición alejada 80mm de la posición P2 290 OVRD 30 ' Velocidad al 30% 300 MVS P2 ' Movimiento recto interpolado a la posición P2 310 HOPEN 1 ' Abrir Pinza 320 DLY 0.5 ' Espera de 0,5 segundos 330 MVS P2, -50 ' Movimiento recto interpolado a una posición alejada 50mm de la posición P2 340 OVRD 70 ' Velocidad al 70% 350 MOV P1 ' Movimiento no interpolado a la posición P1 360 END ' Fin del programa Figura 30. Código del programa en el lenguaje Melfa Basic IV. 48. Modificar el programa para que realice 3 vueltas seguidas en vez de dos. Utilizar la instrucción CNT para que haga un movimiento continuo y no se pare entre vuelta y vuelta (en realidad no para del todo pero el sonido en el robot real cambia). CNT 1, 100, 100 ... CNT 0 49. Realizar un arco y/o circunferencia con centro definido, utilizando la instrucción MVR3. La posición del centro será como la posición de recogida, pero 100mm más baja.
  • 23. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 23 Fundamentos de Robótica. Guía 2 MVR3 P_inicial, P_final, P_centro 50. Realice el cambio en el programa para añadir el movimiento circular MVR3 y ejecute la simulación. 51. Salga del programa y apague la computadora. 1. Presente el programa modificado que realizó en la parte II del procedimiento. 2. Presente el programa modificado que realizó para el numeral 48 y el 49 en la parte III del procedimiento. 3. Realice un programa que apile dos objetos, el programa tendrá una posición de Home, dos posiciones en donde se encuentran originalmente cada objeto y una tercera posición para colocar los objetos apilados, una vez apilados, cada objeto debe regresar a su posición original. 4. Realice un programa que intercambie de posición dos objetos, el programa tendrá una posición de Home, una posición intermedia para colocar temporalmente al primer objeto que se mueve y dos posiciones para cada uno de los objetos a mover. 1. Investigue las instrucciones del lenguaje Melfa Basic IV para el control de las entradas y salidas digitales del robot Mitsubishi. Manual de Instrucciones de COSIROP para el lenguaje MELFA BASIC IV. FESTO Didactic. Autor: Juan Olea Pastor. Designación: Manual de Prácticas para el brazo robot RV-2AJ. Marzo de 2005. PROGRAMACIÓN DE ROBOTS. Guía del estudiante. Universidad Don Bosco Versión 4. 16 de septiembre de 2011. Investigación Complementaria Bibliografía Análisis de resultado
  • 24. Propiedad de la Universidad Don Bosco Prohibida su reproducción total o parcial para otros fines 2019 24 Fundamentos de Robótica. Guía 2 Hoja de cotejo: 2 Guía 2: Programación del Robot Mitsubishi. Parte I. Estudiante: Estación No: Docente: GL: Fecha: EVALUACION % 1-4 5-7 8-10 Nota CONOCIMIENTO 25% Conocimiento deficiente de los fundamentos teóricos de la programación de robots Mitsubishi usando el lenguaje Melfa Basic IV. Conocimiento y explicación incompleta de los fundamentos teóricos. Conocimiento completo y explicación clara de los fundamentos teóricos de la programación de robots Mitsubishi. APLICACIÓN DEL CONOCIMIENTO 10% 30% 30% No ejecutó los programas del procedimiento de la guía de laboratorio. No realizó el numeral 3 del Análisis de Resultados. No realizó el numeral 4 del Análisis de Resultados. Necesitó la ayuda del docente de laboratorio Necesitó la ayuda del docente de laboratorio Necesitó la ayuda del docente de laboratorio. Ejecutó los programas del procedimiento de la guía de laboratorio. Realizó por sí mismo el numeral 3 del Análisis de Resultados. Realizó por sí mismo el numeral 4 del Análisis de Resultados. ACTITUD 3% No tiene actitud proactiva. Participa ocasionalmente o lo hace constantemente pero sin coordinarse con su compañero. Tiene actitud proactiva y sus propuestas son concretas y factibles. 2% No es ordenado ni responsable en el uso del equipo Solo es ordenado o solo responsable con el uso del equipo Es ordenado y responsable en el uso del equipo TOTAL 100%