Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1
Presentación General
Unidades
1 Introducción y conceptualización del manipulador robótico
5 Generación de trayectorias
RAPID ➔ ABB
V+ ➔ Adept Technologies
Programación de Robots
3
Ejemplo de programación de un robot industrial
RAPID ➔ ABB
4
Lenguaje de programación V+
5
VAL
6
VAL
7
VAL II
8
VAL II
9
VAL II
10
VAL II
6. ….
7. OPENI
8. SET B = DEPOSIT
9. SETI COUNT = 0
10. APPROS PICKUP, 200.00
Programación de Robots
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT
9. SETI COUNT = 0
10. APPROS PICKUP, 200.00
Programación de Robots
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0
10. APPROS PICKUP, 200.00
Programación de Robots
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00
Programación de Robots
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI ➔ cierra la pinza
13. DEPARTS 200.00
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI ➔ cierra la pinza
13. DEPARTS 200.00 ➔ se aleja de la posición anterior 200 mm en línea recta sobre el eje Z
de la herramienta
14. APPRO B, 200.00
15. MOVES B
16. OPENI
18
VAL II
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI ➔ cierra la pinza
13. DEPARTS 200.00 ➔ se aleja de la posición anterior 200 mm en línea recta sobre el eje Z
de la herramienta
14. APPRO B, 200.00 ➔ realiza un movimiento de aproximación hasta 200 mm del punto B
15. MOVES B
16. OPENI
19
VAL II
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI ➔ cierra la pinza
13. DEPARTS 200.00 ➔ se aleja de la posición anterior 200 mm en línea recta sobre el eje Z
de la herramienta
14. APPRO B, 200.00 ➔ realiza un movimiento de aproximación hasta 200 mm del punto B
15. MOVES B ➔ mueve el elemento terminal en línea recta hasta B
16. OPENI
20
VAL II
6. ….
7. OPENI ➔ da la orden de abrir la pinza del elemento terminal
8. SET B = DEPOSIT ➔ asigna a la variable B el valor de la localización donde se desean depositar
los objetos.
9. SETI COUNT = 0 ➔ inicializa la variable entera COUNT
10. APPROS PICKUP, 200.00 ➔ mueve el elemento terminal en línea recta desde la posición actual
hasta una que dista 200 mm sobre el eje Z de la herramienta en el
punto donde se desea recoger el objeto
Programación de Robots
11. MOVES PICKUP ➔ realiza un movimiento en línea recta que sitúa el elemento terminal en
el punto PICKUP
12. CLOSEI ➔ cierra la pinza
13. DEPARTS 200.00 ➔ se aleja de la posición anterior 200 mm en línea recta sobre el eje Z
de la herramienta
14. APPRO B, 200.00 ➔ realiza un movimiento de aproximación hasta 200 mm del punto B
15. MOVES B ➔ mueve el elemento terminal en línea recta hasta B
16. OPENI ➔ abre la pinza
21
VAL II
16. ….
17. DEPARTS 200.00 ➔ se aleja en línea recta de B
18. SETI COUNT = COUNT + 1 ➔ aumenta una unidad el valor del contador COUNT
19. TYPEI COUNT ➔ muestra el valor actual del contador COUNT
20. REMARK COUNT indica el nº tot de apilamientos ➔ expresión condicional para comprobar
si ha terminado el traslado de los cuatro
objetos
21. REMARK mover a B incrementando z en 75.00 mm
Programación de Robots
22
Lenguaje de programación V+
hombre y el robot
23
Lenguaje de programación V+
Características
25
Lenguaje de programación V+
Prestaciones
Prestaciones
precisión
• Manipulación de cadenas de caracteres. Herramientas de
detección de errores
• Los programas pueden ser escritos off-line en otros
ordenadores y transferidos en formato PC
• Subrutinas recursivas y reentrantes con paso de parámetros
27
Lenguaje de programación V+
Sintaxis
Sintaxis
29
Lenguaje de programación V+
Variables
30
Lenguaje de programación V+
Variables
Locales:
• Las variables pueden ser locales con el uso de la
instrucción LOCAL
• Mantiene su valor entre llamadas de programas
(mantiene su valor aunque salgamos fuera del
programa, hasta la siguiente vez que entramos en el
programa)
Programación de Robots
31
Lenguaje de programación V+
Variables
Automáticas:
• Estas variables se crean dentro de los programas con
la instrucción AUTO
• Se parecen a las variables locales porque solo se
puede acceder a ellas dentro del programa donde
residen. Cuando se entra dentro del programa la
variable automática, se crea una copia separada de
Programación de Robots
Programas
33
Lenguaje de programación V+
Programas
34
Lenguaje de programación V+
Programas
software
• No pueden ejecutar instrucciones que afecten al
movimiento del robot, directamente. Aunque, estos
programas pueden cambiar de clasificación durante su
ejecución, pasando de ser un programa de propósito
general a un programa de control, o viceversa
35
Lenguaje de programación V+
Programas
36
Lenguaje de programación V+
Programas
37
Lenguaje de programación V+
Programas
38
Lenguaje de programación V+
Programas
39
Lenguaje de programación V+
40
Lenguaje de programación V+
RIGHTY
Hace que el robot se comporte como un brazo derecho
LEFTY
Hace que el robot se comporte como un brazo izquierdo.
Generalmente se utiliza siempre esta disposición del
Programación de Robots
41
Lenguaje de programación V+
MOVE <VARIABLE_DE_POSICIÓN>
42
Lenguaje de programación V+
MOVES <VARIABLE_DE_POSICIÓN>
43
Lenguaje de programación V+
DEPARTS <VALOR>
44
Lenguaje de programación V+
CALL <NOMBRE_DE_PROGRAMA>
Permite desde un programa llamar a otro,
<NOMBRE_DE_PROGRAMA>, de modo que se desvía
el flujo de ejecución al programa indicado, retornando
cuando haya finalizado
Programación de Robots
45
Lenguaje de programación V+ (Instrucciones)
Programación de Robots
46
Lenguaje de programación V+ (Instrucciones)
Programación de Robots
47
Lenguaje de programación V+ (Instrucciones)
Programación de Robots
48
Lenguaje de programación V+ (Instrucciones)
Programación de Robots
49
Lenguaje de programación V+ (Funciones)
Programación de Robots
50
Lenguaje de programación V+ (Funciones)
Programación de Robots
51
Lenguaje de programación V+ (Funciones)
Programación de Robots
52
Lenguaje de programación V+ (Ejemplo)
Programación de Robots
53
Lenguaje de programación V+ (Ejemplo)
Programación de Robots
54
Ejemplo de programación de un robot industrial
✓ RAPID ➔ ABB
✓ V+ ➔ Adept Technologies
Programación de Robots
55
Lenguaje de programación RAPID
Ejemplo de programación con ARTE
Matlab
> robot=load_robot ➔ cargar robot ABB / IRB140
> Teach
> Teach control
Cargar Gripper ➔ equipment / end_tools / parallel_gripper_0
Refresh
Programación de Robots
56
Lenguaje de programación RAPID
Ejemplo de programación con ARTE
57
Lenguaje de programación RAPID
Ejemplo de programación con ARTE
Logramos un punto de aproximación ➔ MoveL
Almacenar posiciónes
RT_tp _ aproximación1 (taget point)
Programación de Robots
Fichero obtenido:
RT_approach1=[[-0.1000, -0.5000, 0.3500],[0.0000, -0.0000, 1.0000, 0.0000], [-2, -1, -2, 0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
RT_pick_place=[[-0.1000, -0.5000, 0.3000],[0.0000, 0.0000, 1.0000, 0.0000], [-2, -1, -2, 0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
Programación de Robots
RT_approach2=[[0.5000, -0.5000, 0.3500],[0.0000, 0.0000, -1.0000, -0.0000], [-1, -1, -1, 0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
RT_liberacion=[[0.5000, -0.5000, 0.2800],[0.0000, -0.0000, 1.0000, 0.0000], [-1, -1, -1, 0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
60