Uploaded by jorgeba18

KST RoboTeam 30 es

advertisement
KUKA System Technology
KUKA.RoboTeam 3.0
Para KUKA System Software 8.5
KUKA.RoboTeam 3.0
Edición: 12.04.2018
Versión: KST RoboTeam 3.0 V2
KUKA Deutschland GmbH
KUKA.RoboTeam 3.0
© Copyright 2018
KUKA Deutschland GmbH
Zugspitzstraße 140
D-86165 Augsburg
Alemania
La reproducción de esta documentación – o parte de ella – o su facilitación a terceros solamente está
permitida con expresa autorización del KUKA Deutschland GmbH.
Además del volumen descrito en esta documentación, pueden existir funciones en condiciones de
funcionamiento. El usuario no adquiere el derecho sobre estas funciones en la entrega de un aparato
nuevo, ni en casos de servicio.
Hemos controlado el contenido del presente escrito en cuanto a la concordancia con la descripción
del hardware y el software. Aún así, no pueden excluirse totalmente todas las divergencias, de modo
tal, que no aceptamos responsabilidades respecto a la concordancia total. Pero el contenido de estos escritos es controlado periodicamente, y en casos de divergencia, éstas son enmendadas y presentadas correctamente en la edición siguiente.
Reservados los derechos a modificaciones técnicas que no tengan influencia en el funcionamiento.
KIM-PS5-DOC
Traducción de la documentación original
2 / 81
Publicación:
Pub KST RoboTeam 3.0 (PDF) es
Estructura de libro:
KST RoboTeam 3.0 V2.1
Versión:
KST RoboTeam 3.0 V2
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
Índice
Índice
1
Introducción .................................................................................................
7
1.1
Grupo destinatario .....................................................................................................
7
1.2
Documentación del robot industrial ............................................................................
7
1.3
Representación de indicaciones ................................................................................
7
1.4
Terminología utilizada ................................................................................................
8
1.5
Licencias ....................................................................................................................
8
2
Descripción del producto ...........................................................................
9
2.1
Resumen de RoboTeam ............................................................................................
9
2.2
Acoplamiento temporal ..............................................................................................
9
2.2.1
Sincronización de programa .................................................................................
9
2.2.2
Sincronización de movimiento ..............................................................................
10
2.3
Acoplamiento geométrico (master-slave) ..................................................................
11
2.3.1
Desplazamiento del reparto de cargas (acoplamiento geométrico) .....................
12
2.3.2
Desplazamiento dependiente de proceso (acoplamiento geométrico indirecto) ..
13
2.3.3
Procedimiento combinado ....................................................................................
14
2.3.4
Principio master-slave ampliado ...........................................................................
14
2.4
Zonas de trabajo comunes ........................................................................................
15
3
Seguridad .....................................................................................................
17
4
Instalación ....................................................................................................
19
4.1
Requisitos previos del sistema ..................................................................................
19
4.2
Instalar o actualizar RoboTeam .................................................................................
19
4.3
Desinstalar RoboTeam ..............................................................................................
20
5
Puesta en servicio y configuración ...........................................................
21
5.1
Vista general ..............................................................................................................
21
5.2
Conectividad del bus de sistema ...............................................................................
21
5.3
Conectividad de KLI ...................................................................................................
22
5.4
Crear y configurar un proyecto de RoboTeam con WorkVisual .................................
24
5.4.1
Crear RoboTeam ..................................................................................................
24
Crear nuevo proyecto RoboTeam ...................................................................
Introducir el RoboTeam en el proyecto existente ............................................
24
26
Configurar RoboTeam ..........................................................................................
26
Configuración de smartPAD común ................................................................
Fijar el master de tiempo .................................................................................
Fijar el master de movimiento ..........................................................................
Borrar la conexión master-slave ......................................................................
Crear y configurar zonas de trabajo ................................................................
26
27
28
30
30
5.5
Medir entre sí los participantes del RoboTeam .........................................................
31
5.6
Comprobación de medición y acoplamiento geométrico ...........................................
32
5.7
Comprobación de la conectividad ..............................................................................
32
6
Operación .....................................................................................................
35
6.1
Menús ........................................................................................................................
35
5.4.1.1
5.4.1.2
5.4.2
5.4.2.1
5.4.2.2
5.4.2.3
5.4.2.4
5.4.2.5
6.2
Gestor de conexiones ................................................................................................
35
6.3
Plugin RoboTeam ......................................................................................................
36
6.4
Cambiar la unidad de control del robot ......................................................................
38
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
3 / 81
KUKA.RoboTeam 3.0
6.4.1
Cambio de unidad de control con el gestor de conexiones ..................................
38
6.4.2
Cambio de unidad de control con el plugin RoboTeam ........................................
38
Sincronización de operaciones ..................................................................................
39
6.5
6.6
Simulación de instrucciones de sincronización .........................................................
39
6.7
Visualización del estado de una zona de trabajo ......................................................
40
6.8
Restauración del estado de una zona de trabajo ......................................................
41
7
Programación con formularios inline ........................................................
43
7.1
Nombres en formularios inline ...................................................................................
43
7.2
Sincronización temporal del avance del programa ....................................................
43
Formulario inline PROGSYNC .............................................................................
43
7.2.1
7.3
Sincronizar movimientos de forma temporal .............................................................
44
Sincronizar conjuntos de movimientos individuales de forma temporal ...............
44
Formulario inline LIN/CIRC/SLIN/SCIRC con SYNC ......................................
45
Sincronización temporal de bloques Spline ..........................................................
45
Formulario inline de bloque Spline con SYNC ................................................
Formulario inline SPL/SLIN/SCIRC en el bloque Spline con SYNC ...............
47
47
Acoplamiento geométrico de robots ..........................................................................
48
7.3.1
7.3.1.1
7.3.2
7.3.2.1
7.3.2.2
7.4
7.4.1
Formulario inline GEOLINK ..................................................................................
48
7.5
Ventana de opciones Sincronización ......................................................................
49
7.6
Programación del acceso remoto a programas de otras unidades de control ..........
50
Formulario inline REMOTE START ......................................................................
50
7.6.1
7.6.2
Formulario inline REMOTE WAIT .........................................................................
51
Programación del acceso a la zona de trabajo .........................................................
51
Formulario inline ENTERSPACE ..........................................................................
52
Programación del abandono de la zona de trabajo ...................................................
52
Formulario inline EXITSPACE ..............................................................................
53
8
Programación KRL ......................................................................................
55
8.1
SyncCmd() .................................................................................................................
55
7.7
7.7.1
7.8
7.8.1
8.2
RemoteCmd() ............................................................................................................
55
8.3
CancelProgSync() .....................................................................................................
56
8.4
RemoteRead() ...........................................................................................................
57
9
Variables del sistema ..................................................................................
59
9.1
$COOP_KRC[ ] .........................................................................................................
59
9.2
$PINGCOOPKRC ......................................................................................................
59
9.3
$LOCAL_NETWORK_OK .........................................................................................
60
9.4
$COMPLETE_NETWORK_OK .................................................................................
60
9.5
$WORKSPACERESTOREACTIVE ...........................................................................
60
9.6
$LK_MASTER[ ] ........................................................................................................
61
9.7
$LK_SLAVES[ ] .........................................................................................................
61
9.8
$SYNC_ID[] ...............................................................................................................
61
9.9
$SYNC_LIST .............................................................................................................
62
9.10 $CR_LK_MASTER ....................................................................................................
62
9.11 $CR_LK_SLAVES .....................................................................................................
63
Programas de ejemplo ................................................................................
65
10.1 Programa de ejemplo con 2 zonas de trabajo definidas ...........................................
65
10.2 Programa de ejemplo con instrucciones REMOTE ...................................................
65
10
4 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
Índice
10.3 Programa de ejemplo para el desplazamiento del reparto de cargas con 2 robots ...
66
10.4 Programa de ejemplo de procedimiento dependiente del proceso ............................
67
Eliminación de fallos ...................................................................................
69
11.1 Bloqueo mutuo de robots cooperativos .....................................................................
69
11.1.1
Determinación de bloqueo mutuo .........................................................................
69
Servicio técnico de KUKA ..........................................................................
71
12.1 Requerimiento de asistencia técnica .........................................................................
71
12.2 KUKA Customer Support ...........................................................................................
71
Índice ............................................................................................................
79
11
12
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 / 81
KUKA.RoboTeam 3.0
6 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
1 Introducción
1
Introducción
t
1.1
Grupo destinatario
Esta documentación está destinada al usuario con los siguientes conocimientos:

Conocimientos avanzados en programación KRL

Conocimientos avanzados en el sistema de la unidad de control del robot

Conocimientos básicos sobre conexiones de red.
Para una utilización óptima de nuestros productos, recomendamos a
nuestros clientes que asistan a un curso de formación en el KUKA
College. Puede encontrar más información sobre nuestro programa
de formación en www.kuka.com o directamente en nuestras sucursales.
1.2
Documentación del robot industrial
La documentación del robot industrial consta de las siguientes partes:

Documentación para la mecánica del robot

Documentación para la unidad de control del robot

Instrucciones de servicio y programación para los software de sistema

Instrucciones para opciones y accesorios

Catálogo de piezas en el soporte de datos
Cada manual de instrucciones es un documento por sí mismo.
1.3
Representación de indicaciones
Seguridad
Estas indicaciones son de seguridad y se deben tener en cuenta.
Estas observaciones indican que, si no se toman las
medidas de precaución, es probable o completamente seguro que se produzcan lesiones graves o incluso la muerte.
Estas observaciones indican que, si no se toman las
medidas de precaución, pueden producirse lesiones graves o incluso la muerte.
Estas observaciones indican que, si no se toman las
medidas de precaución, pueden producirse lesiones leves.
Estas observaciones indican que, si no se toman las
medidas de precaución, pueden producirse daños
materiales.
Estas observaciones remiten a información relevante para la seguridad o a medidas de seguridad generales.
Estas indicaciones no hacen referencia a peligros o medidas de precaución concretos.
Esta indicación llama la atención acerca de procedimientos que sirven para
evitar o eliminar casos de emergencia o avería:
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 / 81
KUKA.RoboTeam 3.0
Es imprescindible respetar el procedimiento siguiente!
Los procedimientos señalados con esta observación tienen que respetarse
rigurosamente.
Indicaciones
Estas indicaciones sirven para facilitar el trabajo o contienen remisiones a información que aparece más adelante.
Indicación que sirve para facilitar el trabajo o remite a información
que aparece más adelante
1.4
Terminología utilizada
Término
Descripción
Zona de trabajo
Zona de acción condicionada por el programa de todos
los ejes de un robot
KLI
KUKA Line Interface:
Conexión a la red Ethernet
1.5
Maestro
El maestro es el participante dentro del RoboTeam que
fija los movimientos de trayectoria y las instrucciones.
RoboTeam
Movimientos de trayectoria sincronizados temporal y/o
geométricamente de los participantes RoboTeam.
Participante
RoboTeam
Participante en RoboTeam. Un participante puede ser
un robot, una mesa basculante giratoria o un eje de
giro.
Esclavo
El esclavo es un participante que sigue los movimientos de trayectoria o las instrucciones del maestro.
USB
Universal Serial Bus. Sistema de bus para comunicación entre ordenadores y dispositivos adicionales.
Licencias
Las condiciones de licencia de KUKA y las condiciones de licencia del software de Open Source utilizado se encuentran en las siguientes carpetas:

En el soporte de datos con los archivos de instalación del software KUKA
en .\LICENSE

Después de la instalación, en la unidad de control del robot, en
D:\KUKA_OPT\Nombre del paquete de opciones\LICENSE

Tras la instalación de WorkVisual, en el catálogo Opciones, en la carpeta
de licencias que tiene el nombre del paquete de opciones
Obtenga más información acerca de las licencias Open Source en el
correo electrónico opensource@kuka.com
8 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
2 Descripción del producto
2
2
Descripción del producto
s
2.1
Resumen de RoboTeam
RoboTeam es un paquete de opciones para instalación posterior. Permite el
trabajo colaborativo de varios robots en equipo o de robots con cinemática del
eje adicional. En el caso de los robots colaborativos, los movimientos de trayectoria están coordinados de forma temporal y geométrica (acoplamiento
temporal y/o geométrico).
Funciones

Acoplamiento temporal de robots

Sincronización del programa
inicio del movimiento sincronizado de dos o más robots

Sincronización del movimiento
tiempo del movimiento sincronizado de dos o más robots

Acoplamiento geométrico de robots o de robots y una cinemática de eje
adicional

Procedimiento de división de la carga
trabajo sincronizado de dos o más robots

Procedimiento dependiente del proceso
trabajo conjunto de dos o más robots en un proceso

Procedimiento combinado
combinación del procedimiento de división de carga y del procedimiento dependiente del proceso

Principio master-slave ampliado
trabajo sincronizado de dos o más robots con una cinemática del eje
adicional
Restricción
KUKA.RoboTeam 3.0 está limitado a 6 alumnos.
Ámbitos de
aplicación

Tecnologías de soldadura

Tecnologías de pegado

Movimientos simultáneos de un componente con dos robots
Software de
configuración
RoboTeam se configura en un portátil o en un PC. Para la configuración se
necesita el siguiente software:

Comunicación
2.2
WorkVisual 5.0
El intercambio de datos entre las unidades de control se realiza mediante el
bus de sistema. La comunicación con WorkVisual se realiza a través de KLI.
Acoplamiento temporal
Existen 2 posibilidades para acoplar robots temporalmente:

Sincronización de programa (sincronización del inicio del movimiento)
(>>> 2.2.1 "Sincronización de programa" Página 9)

Sincronización de movimiento (sincronización del tiempo del movimiento)
(>>> 2.2.2 "Sincronización de movimiento" Página 10)
2.2.1
Sincronización de programa
En todos los robots se fuerza una ejecución simultánea de una línea de programa independientemente de la trayectoria recorrida antes hasta el momen-
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
9 / 81
KUKA.RoboTeam 3.0
to de la sincronización t1. Después, las unidades de control continúan su
ejecución del programa de forma independiente. El acoplamiento ha finalizado.
Fig. 2-1: Inicio de movimiento sincronizado
1
Momento de sincronización
2
Instrucción de sincronización
3
Punto de la trayectoria
4
Mantenimiento
El momento de sincronización se programa en los programas individuales con
la instrucción PROGSYNC. Esta instrucción puede ponerse tantas veces
como se desee en cualquier punto del programa.
En el ejemplo, la unidad de control R2 alcanza primero la instrucción de sincronización y, por tanto, debe esperar más tiempo. La unidad de control R1
alcanza la instrucción de sincronización al final y, por tanto, fija de forma simultánea el momento de sincronización t1.
Con la instrucción PROGSYNC se sincronizan los programas de unidades de control cooperantes. El propósito de esta instrucción es que
ninguna unidad de control continúe con el resto del procesamiento
hasta que todas las unidades de control implicadas hayan alcanzado el momento de sincronización (t1) programado. La instrucción no garantiza que las
unidades de control implicadas continúen con el procesamiento al mismo
tiempo. La instrucción no asegura una sincronización del desarrollo del movimiento después del momento de sincronización. Esto solo se puede garantizar mediante el uso posterior de las instrucciones de sincronización
adecuadas (p. ej. SYNC).
2.2.2
Sincronización de movimiento
En todos los robots se fuerza el mismo tiempo de movimiento independientemente de la trayectoria recorrida antes hasta el momento de la sincronización
t1. Después, las unidades de control continúan su ejecución del programa de
forma independiente. El acoplamiento ha finalizado.
10 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
2 Descripción del producto
Fig. 2-2: Tiempo de los movimientos sincronizado
1
Momento de sincronización
2
Instrucción de sincronización
3
Punto de la trayectoria
4
Mantenimiento
El periodo de sincronización ∆t1 se programa en los programas individuales
con la instrucción SYNC. Este es un componente adicional de las instrucciones de movimiento LIN, CIRC, SLIN, SCIRC, SPL o bloque SPLINE. La posición y la cantidad de momentos de sincronización es de libre elección.
El tiempo de planificación total para la siguiente sincronización se permuta ya
en el avance entre las unidades de control. Cada robot adapta su comportamiento de la velocidad al robot con la velocidad de trayectoria más baja.
En el ejemplo, la unidad de control R2 alcanza primero la instrucción de sincronización y, por tanto, debe esperar más tiempo. La unidad de control R1
alcanza la instrucción de sincronización al final y, por tanto, fija de forma simultánea el inicio del periodo de sincronización. No se necesita ninguna instrucción SYNC nueva para terminar la sincronización.
2.3
Acoplamiento geométrico (master-slave)
Mediante el acoplamiento geométrico, el robot esclavo sigue los movimientos
de brida del robot maestro o los movimientos de la brida de una cinemática de
eje adicional conectada a la unidad de control maestra. Para ello, la unidad de
control maestra lleva a cabo una transformación cíclica de la cinemática requerida a partir de los ángulos de eje actuales y envía el frame cartesiano resultante (la brida en el sistema raíz de la cinemática) al slave. La unidad de
control esclava combina este análisis de cinemática con los datos locales
(root frames y offset frames constantes) en el valor $BASE_C actual.
Root frame, offset
frame
«Diferencia entre el master $ROBROOT y el slave $WORLD».
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
11 / 81
KUKA.RoboTeam 3.0
Fig. 2-3: Acoplamiento geométrico
2.3.1
1
Sistema de coordenadas de la brida
2
LK_OFFSET (diferencia entre $BASE y el sistema de coordenadas
de la brida)
3
LK_ROOT (diferencia entre el master $ROBROOT y el slave
$WORLD)
Desplazamiento del reparto de cargas (acoplamiento geométrico)
El procedimiento de división de la carga (Load Sharing) consta de robots acoplados de forma geométrica que mueven un componente juntos pero cuyos
TCP relacionados con dichos componentes permanecen quietos. De esa manera, los movimientos de los componentes se producen a través de los movimientos programados de un robot (master). Los otros robots (slaves) siguen
la posición de la brida del master.
Fig. 2-4: Procedimiento de división de la carga
12 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
2 Descripción del producto
2.3.2
Desplazamiento dependiente de proceso (acoplamiento geométrico indirecto)
La siguiente imagen muestra un ejemplo de procedimiento dependiente del
proceso. Mientras que el master transporta el componente de A a B, el slave
procesa el componente. De esa manera el master trabaja como robot de
transporte y de posicionamiento, mientras que el slave se utiliza como robot
de proceso. El master lleva el componente a una posición de procesado óptima durante el transporte continuo.
Fig. 2-5: Procedimiento dependiente del proceso
Las posiciones del robot slave programado se refieren al sistema de coordenadas de la brida del master. Con ello, en los movimientos de la pieza de trabajo también se mantiene la relación relativa entre la herramienta y la pieza
de trabajo.
La siguiente imagen muestra cómo se pueden acoplar varios slaves de forma
geométrica al master. Aquí, los movimientos de la herramienta del slave también son relativos a los de la pieza de trabajo.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
13 / 81
KUKA.RoboTeam 3.0
Fig. 2-6: Procedimiento ampliado dependiente del proceso
2.3.3
Procedimiento combinado
Si el procedimiento de división de carga se combina con las variantes dependientes del proceso, entonces es posible llevar a cabo, por ejemplo, la forma
de cooperación que se ve en la siguiente imagen.
Fig. 2-7: Procedimiento combinado
Dos robots guían una pieza de trabajo en el procedimiento de división de la
carga y dejan que un tercer robot la procese. Los dos slaves están acoplados
de forma geométrica al master, con lo que el slave 1 trabaja con el master en
el procedimiento de división de la carga y el slave 2 trabaja en el procedimiento dependiente del proceso.
2.3.4
Principio master-slave ampliado
El principio master-slave ampliado se refiere a la colaboración de dos o más
robots con una cinemática de eje adicional (por ejemplo, unidad lineal, mesa
14 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
2 Descripción del producto
giratoria). El master está conectado con una cinemática de eje adicional móvil
y realiza trabajos con un robot adicional acoplado de forma geométrica a la
cinemática de eje adicional. El acoplamiento puede referirse a cada base externa que está configurada en el master.
Fig. 2-8: Principio master-slave ampliado
2.4
Zonas de trabajo comunes
Las zonas de trabajo comunes son zonas en las que se superponen movimientos programados de varios robots. Estas zonas de trabajo son específicas para RoboTeam y no tienen nada que ver con las zonas de trabajo que
resultan de las distintas zonas de trabajo del robot.
Cuando solo un robot obtiene acceso a la zona de trabajo común de cada vez,
se reduce el riesgo de colisión. Por ello debe programarse el acceso. Uno de
los robots involucrados gestiona el acceso.
La siguiente figura muestra una zona de trabajo común en la que se produce
una colisión si no se programa el acceso.
Fig. 2-9: Uso incontrolado de una zona de trabajo común
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
15 / 81
KUKA.RoboTeam 3.0
El acceso a la zona de trabajo común puede programarse mediante las siguientes instrucciones:

Acceder a zona de trabajo: ENTERSPACE

Abandonar la zona de trabajo: EXITSPACE
La figura siguiente muestra el comportamiento de 2 robots una vez que se ha
programado el acceso a la zona de trabajo común.
Fig. 2-10: Uso controlado de una zona de trabajo común
1
ENTERSPACE
2
Parada
3
EXITSPACE
Puesto que el robot R1 es más rápido, accede primero a la zona de trabajo
común y ejecuta su movimiento. Una vez que R1 ha abandonado la zona de
trabajo común, la libera.
El robot R2 se detiene antes de alcanzar el punto P1. Puede proseguir con su
movimiento cuando R1 haya liberado la zona de trabajo común.
16 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
3 Seguridad
3
Seguridad
La presente documentación contiene las indicaciones de seguridad que hacen referencia específica al paquete de opciones aquí descrito.
La información de seguridad básica relativa al robot industrial se encuentra en
el capítulo "Seguridad" de las instrucciones de servicio y programación destinadas a los integradores de sistemas o en las instrucciones de servicio y programación para los usuarios finales.
Se deben cumplir todas las indicaciones del capítulo "Seguridad" incluido en las instrucciones de manejo y programación de KUKA System Software (KSS). En caso contrario, pueden producirse lesiones
graves o daños materiales irreparables.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
17 / 81
KUKA.RoboTeam 3.0
18 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
4 Instalación
4
4
Instalación
s
t
4.1
Requisitos previos del sistema

Unidad de control del robot KR C4 con opción RoboTeam

Robots que se puedan utilizar con KR C4

Un switch (Manageable Switch) totalmente configurable para la conexión
KLI con WorkVisual

Cable de unión de RoboTeam

KUKA smartPAD-1, Revisión 8
Software

KUKA System Software 8.5
Portátil/PC
Software:
Hardware

WorkVisual 5.0
Los requisitos para la instalación de WorkVisual se encuentran en la documentación para WorkVisual.
4.2
Instalar o actualizar RoboTeam
Descripción
El paquete de opciones se instala en WorkVisual y se agrega al proyecto. Durante la transmisión del proyecto, el paquete de opciones se instala automáticamente en la unidad de control del robot.
Se recomienda archivar todos los datos correspondientes antes de
actualizar un software.
Requisito
Procedimiento

Grupo de usuario Técnico de puesta en servicio con seguridad

Modo de servicio T1 o T2

No hay ningún programa seleccionado.

Conexión de red entre el PC y la unidad de control del robot

El paquete de opciones se encuentra disponible como fichero KOP.
1. Instalar el paquete de opciones RoboTeam en WorkVisual.
2. Cargar el proyecto desde la unidad de control del robot.
3. Agregar el paquete de opciones RoboTeam al proyecto.
4. Transferir el proyecto de WorkVisual a la unidad de control del robot y activar.
5. En la smartHMI se muestra la pregunta de seguridad ¿Quiere permitir la activación del proyecto […]?. Durante la activación, se sobrescribe el proyecto
activo. Si no se ha sobrescrito ningún proyecto relevante: Confirmar la
consulta con Sí.
6. En la smartHMI se muestra una vista general con las modificaciones y una
pregunta de seguridad. Responderla con Sí. Se instala el paquete de opciones y la unidad de control del robot vuelve a reiniciarse.
La información acerca de los procesos de WorkVisual se encuentra
en la documentación de WorkVisual.
Fichero LOG
Se crea un fichero LOG en C:\KRC\ROBOTER\LOG.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
19 / 81
KUKA.RoboTeam 3.0
4.3
Desinstalar RoboTeam
Se recomienda archivar todos los datos antes de desinstalar un software.
Requisito
Procedimiento

Grupo de usuario Técnico de puesta en servicio con seguridad

Modo de servicio T1 o T2

No hay ningún programa seleccionado.

Conexión de red entre el PC y la unidad de control del robot
1. Cargar el proyecto desde la unidad de control del robot.
2. Eliminar el paquete de opciones RoboTeam del proyecto. Se visualiza
una ventana con modificaciones.
3. Transferir el proyecto de WorkVisual a la unidad de control del robot y activar.
4. Confirmar la pregunta de seguridad en smartHMI ¿Quiere permitir la activación del proyecto […]? con Sí.
5. En la smartHMI se muestra un resumen con las modificaciones y una pregunta de seguridad. Responderla con Sí. Se desinstala el paquete de opciones y la unidad de control del robot vuelve a reiniciarse.
La información acerca de los procesos de WorkVisual se encuentra
en la documentación de WorkVisual.
Fichero LOG
20 / 81
Se crea un fichero LOG en C:\KRC\ROBOTER\LOG.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
5
Puesta en servicio y configuración
s
t
5.1
Vista general
s
Requisito

Todas las unidades de control que se van a conectar se han puesto en
marcha por separado y funcionan sin errores.

Cada participante del RoboTeam puede desplazarse individualmente.
Vista general
Paso
Descripción
Asistente de la puesta en servicio.
1
2
3
Indicación: Para información sobre los asistentes de la puesta
en servicio, consultar las instrucciones de operación y programación del KUKA System Software (KSS).
Interconectar el bus del sistema.
(>>> 5.2 "Conectividad del bus de sistema" Página 21)
Interconectar la KLI.
(>>> 5.3 "Conectividad de KLI" Página 22)
Configurar el RoboTeam con WorkVisual.
4
(>>> 5.4 "Crear y configurar un proyecto de RoboTeam con
WorkVisual" Página 24)
Medir entre sí los participantes del RoboTeam.
5
(>>> 5.5 "Medir entre sí los participantes del RoboTeam"
Página 31)
Comprobar la medición y el acoplamiento geométrico.
6
7
(>>> 5.6 "Comprobación de medición y acoplamiento geométrico" Página 32)
Comprobar la interconexión.
(>>> 5.7 "Comprobación de la conectividad" Página 32)
Durante la puesta en servicio, el robot no es vigilado
de forma segura, y puede causar daños a personas
u objetos. Desplazar el robot durante la puesta en servicio solamente en
modo de servicio T1.
Si los nombres de los participantes en un RoboTeam
son muy parecidos, puede haber confusiones. Pueden provocar lesiones personales o daños materiales. Seleccionar nombres
fáciles de diferenciar durante la configuración en WorkVisual. Colocar asimismo estos nombres en los participantes del RoboTeam de forma que queden bien visibles.
5.2
Conectividad del bus de sistema
Requisito

Todas las unidades de control del robot están desconectadas.
Procedimiento

Interconectar el bus de sistema según el esquema DaisyChain
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
21 / 81
KUKA.RoboTeam 3.0
Fig. 5-1: Conectar en red el bus de sistema (ejemplo con 3 unidades de
control)
1
Inicio de la conexión
2
Final de la conexión
3
Conexión X19 smartPAD
4
Cable de unión
El smartPAD puede conectarse a cualquier unidad de control. Dentro
de un RoboTeam solo se permite un smartPAD.
5.3
Conectividad de KLI
Descripción
En el estado de suministro todos tienen la misma dirección IP. La conexión
KLI se lleva a cabo a través de Ethernet, se necesita un conmutador estándar.
Si se usa un servidor DHCP, hay que ajustar en la configuración de red que
la dirección IP se debe asignar a través de DHCP. Si se usan direcciones IP
fijas, deben ajustarse estas en la configuración de red.
Para información sobre la configuración de la red, consultar las instrucciones de operación y programación del KUKA System Software
(KSS).
Procedimiento
22 / 81

Cuando se utiliza un servidor DHCP, la conexión KLI se realiza del siguiente modo:
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
Fig. 5-2: Conexión KLI con DHCP

1
Servidor DHCP
3
Ordenador portátil con WorkVisual
2
Conmutador estándar
4
Unidad de control del robot
Cuando se utiliza una dirección IP fija, la conexión KLI se realiza del siguiente modo:
Fig. 5-3: Conexión KLI con dirección IP fija
1
Conmutador estándar
2
Ordenador portátil con WorkVisual
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
3
Unidad de control del robot
23 / 81
KUKA.RoboTeam 3.0
5.4
Crear y configurar un proyecto de RoboTeam con WorkVisual
La configuración de red se genera de forma automática en WorkVisual. Cuando deba modificarse la configuración de red de una unidad
de control que se encuentre en un RoboTeam, tener en consideración lo siguiente:

La modificación debe realizarse en todas las unidades de control que se
encuentren en el RoboTeam.

De forma alternativa, puede cargarse el proyecto en WorkVisual y posteriormente transmitirse a las otras unidades de control.
5.4.1
Crear RoboTeam
5.4.1.1
Crear nuevo proyecto RoboTeam
Descripción
En WorkVisual están a disposición modelos, con los que se pueden crear un
nuevo proyecto que contenga uno o varios RoboTeams. Un asistente, que
Asistente de configuración de celdas, guía al usuario por el proceso de
creación.
Modelos
Modelos para proyectos, que contienen RoboTeams:
Modelo
Descripción
Proyecto RoboTeam
genérico
Crea un proyecto cuya cantidad de RoboTeams
y de los robots independientes la determina el
usuario. El usuario decide además la cantidad
de los robots y de los ejes adicionales en cada
RoboTeam.
Proyecto RoboTeam
simple
Crea un proyecto con 1 RoboTeam. El RoboTeam contiene 2 robots y 1 eje adicional.
Proyecto con dos
RoboTeams
Crea un proyecto con 2 RoboTeams. Cada
RoboTeam contiene 2 robots y 1 eje adicional.
Además, el proyecto contiene un robot de manipulación.
Fig. 5-4: Página de ejemplo: RoboTeamWizard
24 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
Procedimiento
1. Hacer clic en el botón Nuevo.... Se abre el Explorador de proyecto. A la
izquierda está seleccionada la pestaña Crear
proyecto.
2. Marcar en la zona Modelos disponibles uno de los modelos para un proyecto RoboTeam.
3. En el campo Nombre de fichero asignar un nombre al proyecto.
4. En el campo Lugar de almacenamiento está determinado por defecto el
directorio de proyectos. En caso necesario, seleccionar otro directorio.
5. Hacer clic en el botón Nuevo. Se abre el asistente de configuración de
celdas.
6. Realizar en el asistente los ajustes necesarios, p. ej., seleccionar tipo de
robot. Mediante Continuar se accede a la próxima página correspondiente.
7. Cuando se hayan realizado todos los ajustes, hacer clic sobre Finalizar y
a continuación sobre la próxima página Cerrar.
8. Ahora se visualiza la red del robot en la ventana Estructura del proyecto
en la pestaña Dispositivosy en la ventana Configuración de celda. En
la pestaña Dispositivos se representa la red del robot en una estructura
de árbol y en la pestaña Configuración de celda se representa gráficamente.
Fig. 5-5: Ejemplo: RoboTeam en pestaña Dispositivos
Fig. 5-6: Ejemplo: RoboTeams en la ventana Configuración de celda
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
25 / 81
KUKA.RoboTeam 3.0
5.4.1.2
Introducir el RoboTeam en el proyecto existente
Descripción
Es posible introducir un RoboTeam en un proyecto ya existente. Esto es posible a través de la ventanaEstructura del proyecto o de la ventana Configuración de celda.
Para introducir el RoboTeam en un proyecto nuevo están a disposición modelos especiales para la creación de proyecto. Esto es más
fácil y rápido que crear primero un proyecto regular e introducir luego
el RoboTeam.
Condición previa
Procedimiento
Estructura del
proyecto

Deben estar disponibles los catálogos KukaControllers y KUKARobots[…].

Si el RoboTeam debe incluir ejes adicionales: El catálogo KukaExternalKinematics[…] está disponible.
1. Hacer clic con el botón derecho en la ventana Estructura del proyecto
en la pestaña Dispositivos sobre el nodo de la celda y seleccionar en el
menú contextual la opción Añadir RoboTeam.
Se introducen el nodo Red robot y el subnodo RoboTeam. Los nodos están numerados por defecto. Es posible renombrarlos.
2. Añadir al nodo RoboTeam el número de unidades de control del robot deseadas.
3. Asignar a los robots las unidades de control del robot.
4. En caso necesario, asignar ejes adicionales a las unidades de control del
robot.
5. Si es preciso, se puede añadir otro RoboTeam a la red.
Para ello, hacer clic con el botón derecho sobre el nodo Red robot y seleccionar en el menú contextual la opción Añadir RoboTeam. A continuación, repetir los pasos 2 hasta 5.
Procedimiento
Configuración de
celda
1. Hacer clic con el botón derecho sobre la zona vacía en la ventana Configuración de celda y seleccionar en el menú contextual RoboTeam >
Añadir RoboTeam.
Se añade un RoboTeam nuevo. El nombre se puede modificar.
2. Añadir al nuevo RoboTeam el número de unidades de control del robot
deseadas.
3. Asignar a los robots las unidades de control del robot.
4. En caso necesario, asignar ejes adicionales a las unidades de control del
robot.
5. Si es preciso, se puede añadir otro RoboTeam a la red.
Para ello hacer clic con el botón derecho sobre la zona vacía y seleccionar
en el menú contextual RoboTeam > Añadir RoboTeam. A continuación,
repetir los pasos 2 hasta 5.
26 / 81
5.4.2
Configurar RoboTeam
5.4.2.1
Configuración de smartPAD común
Descripción
Para la plena funcionalidad del RoboTeam es imprescindible utilizar un smartPAD común en el RoboTeam. Esto es así especialmente durante el acoplamiento geométrico y la sincronización del tiempo de movimiento.
Condición previa

La ventana Configuración de celda está abierta.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
Procedimiento
1. Hacer clic con el botón derecho del ratón en la red de robots que vaya a
utilizar un smartPAD común.
2. Seleccionar RoboTeam > Shared Pendant en el menú contextual.
Ahora el RoboTeam utiliza un smartPAD común.
3. Si hay un smartPAD común configurado pero deben usarse smartPADs
individuales: Realizar otra vez los pasos 1 y 2.
Fig. 5-7: Visualización de el smartPAD común
Pos.
5.4.2.2
Descripción
1
Todas las unidades de control del robot del RoboTeam usan un
smartPAD común.
2
Cada unidad de control del robot del RoboTeam usa su propio
smartPAD.
Fijar el master de tiempo
Descripción
Después de la creación de la red del robot, se determina por defecto la 1ª unidad de control del robot en la estructura de árbol de WorkVisual como master
de tiempo. Esta fijación se puede modificar.
En la ventana Configuración de celda se identifica al master de tiempo mediante un pequeño reloj analógico. Solamente puede haber 1 master de tiempo por red.
En la unidad de control del robot real, el master de tiempo no es visible y no
se puede modificar.
La ventana Configuración de celda está abierta.
Condición previa

Procedimiento
1. Hacer clic con el botón derecho del ratón sobre la unidad de control del
robot que se ha seleccionado como nuevo master de tiempo.
2. Seleccionar RoboTeam > Ajustar como Clock master en el menú contextual.
El nuevo master de tiempo está identificado mediante el reloj analógico.
El reloj ha desaparecido en el master de tiempo anterior.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
27 / 81
KUKA.RoboTeam 3.0
Fig. 5-8: Indicación del master de tiempo
Pos.
1
5.4.2.3
Descripción
El reloj identifica el master de tiempo.
Fijar el master de movimiento
Descripción
Con este procedimiento se establece si una cinemática (slave de movimiento)
debe seguir los movimientos de otra cinemática (master de movimiento). Por
lo tanto, no se fija cuáles de las cinemáticas realmente se proceden, sino qué
posibilidades debe haber. Solamente las cinemáticas que fueron fijadas en
WorkVisual como master y/o slave pueden usarse en el programa como tales.
Las conexiones múltiples y las conexiones en ambas direcciones son posibles, ya que las cinemáticas pueden ser master y/o slave de movimiento durante el flujo de programa.
Al crear una conexión, se crea automáticamente el sistema de coordenadas
BASE necesario. Este está identificado con el nombre LK_BASE y con un
símbolo. Para un robot que debe seguir a otro, se crea una referencia al sistema de coordenadas BASE del otro robot. El sistema de coordenadas está
marcado en rojo en el editor Administración Tool/Base, porque aún no está
asignado a ningún número.
Durante la transmisión del proyecto se distribuyen los sistemas de coordenadas BASE creados a sus respectivas unidades de control del RoboTeam.
Se recomienda crear solamente las conexiones que sean realmente
necesarias para el programa. No conectar cada cinemática con cada
una en las dos direcciones ya que de esa forma se ocuparían en vano
los sistemas de coordenadas de base. Estas no se encontrarían disponibles
para otras finalidades.
La ventana Configuración de celda está abierta.
Condición previa

Procedimiento
1. Hacer clic en un robot y mantener pulsado el botón del ratón.
2. Arrastrar el cursor del ratón sobre un robot o una cinemática externa y soltar el botón del ratón. Se abre la ventana emergente A {0} debe seguirle
{1}.
3. Hacer clic en la ventana emergente.
La primera cinemática puede suceder ahora a la otra cinemática. Esto se
representa mediante una flecha discontinua. La flecha es de color rojo si
28 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
los puntos de zócalo aún no se han medido. Una flecha verde indica que
los puntos del zócalo ya se han medido.
4. Repetir los pasos del 1 al 3 hasta que se hayan establecido todas las conexiones deseadas.
5. Abrir el editor Administración Tool/Base y ordenar como se desee los
sistemas de coordenadas BASE que aún no están asignados a ningún número.
Fig. 5-9: Visualización de los master de movimiento
Pos.
Descripción
1
La cinemática externa es el master de movimiento del robot 1. La
flecha es de color azul en vez de roja porque el cursor del ratón
está posicionado sobre él.
2
La cinemática externa es el master de movimiento del robot 2.
3
Al posicionar el cursor del ratón sobre una flecha se abre una visualización de información.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
29 / 81
KUKA.RoboTeam 3.0
Fig. 5-10: Sistemas de coordenadas BASE en el RoboTeam
Pos.
5.4.2.4
Descripción
1
Sistema de coordenadas BASE que no está asignado a ningún número
2
Indica que el sistema de coordenadas pertenece a una conexión
de 2 cinemáticas
Borrar la conexión master-slave
Descripción
Las conexiones que determinan el master de movimiento pueden borrarse en
caso de que ya no se deseen.
Procedimiento
1. Hacer clic sobre la flecha a borrar. La flecha se pone azul.
2. Hacer clic con el botón derecho del ratón y seleccionar Borrar en el menú
contextual. Se borra la flecha.
5.4.2.5
Crear y configurar zonas de trabajo
Estas zonas de trabajo son específicas para RoboTeam y no tienen
nada que ver con las zonas de trabajo que resultan de las distintas
zonas de trabajo del robot.
Si KUKA.RoboTeam está instalado en la unidad de control del robot, se pueden mostrar las zonas de trabajo en KUKA smartHMI a través de Visualización > Zona de trabajo.
Condición previa
Procedimiento

Se ha creado el RoboTeam.

La ventana Configuración de celda está abierta.
1. Hacer clic con el botón derecho del ratón sobre una unidad de control del
robot y seleccionar RoboTeam > Crear zona de trabajo en el menú contextual.
2. Se añade una zona de trabajo. El nombre por defecto es Zona de trabajo[número continuo]. El nombre asignado por defecto se puede modificar:
3. Seleccionar en el campo Maestro qué unidad de control del robot administra el acceso a la zona de trabajo común.
30 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración
4. En el campo Número de secuencia, asignar un número a la zona de trabajo.
Fig. 5-11: Configurar zonas de trabajo
Pos.
Descripción
1
Indica qué unidad de control del robot administra el acceso a la
zona de trabajo común
2
Zona de trabajo común
3
Establece qué unidad de control del robot administra el acceso a
la zona de trabajo común
4
Numeración de la zona de trabajo
Se debe asignar un número a cada zona de trabajo. La numeración sirve para evitar autobloqueos.
5.5
Medir entre sí los participantes del RoboTeam
Descripción
En un RoboTeam es necesario medir entre sí sus participantes, para que puedan desplazarse con un acoplamiento geométrico. Para que un participante
del RoboTeam pueda seguir a otro, debe conocer el punto del zócalo del otro
participante.
Con el TCP de una herramienta ya medida (p. ej. una punta de medición), un
punto de referencia se desplaza cuatro veces. La posición del punto de referencia tiene que ser distinta en cada ocasión.
Los puntos de medición deben abarcar aproximadamente el campo
de trabajo en el que se vaya a desplazar LK().
Ejemplo
En el ejemplo se miden 2 robots entre sí. La punta de medición del slave se
lleva a 4 posiciones diferentes y en cada ocasión se guía por la punta de medición del master.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
31 / 81
KUKA.RoboTeam 3.0
Fig. 5-12: Ejemplo: Medición de robots entre sí
Requisito
Procedimiento
1
1. Posición
3
3. Posición
2
2. Posición
4
4. Posición

Las herramientas de medición se han medido localmente en la unidad de
control correspondiente.

Una herramienta ya medida se encuentra montada sobre la brida de acople del master y el slave.

Modo de servicio T1
1. Seleccionar como herramienta la herramienta de medición de la unidad de
control maestra.
2. En el menú principal de la unidad de control esclava, seleccionar Puesta
en servicio > Administración Tool/Base > Herramienta Cinemáticas.
3. Seleccionar la unidad de control maestra y pulsar en Editar.
4. Pulsar en Medir y medir la unidad de control esclava con el método de 4
puntos XYZ.
Para más información sobre la medición con el método de 4 puntos
XYZ, consulte las instrucciones de operación y programación del
KUKA System Software (KSS).
5. pulsar en Guardar.
5.6
Comprobación de medición y acoplamiento geométrico
Modo de servicio T1
Condición previa

Procedimiento
1. Tocar la indicación de estado Herramienta/base en la unidad de control
esclava. Se abre la ventana Act. Base/ herram..
2. Seleccionar la herramienta medida del slave como herramienta. Seleccionar la base del master como base. La ventana se cierra y se aplica la selección.
3. Desplazar manualmente el master. Ahora el slave debería seguir los movimientos del master.
5.7
Comprobación de la conectividad
Requisito
32 / 81

Ninguno de los participantes del RoboTeam tiene fijada una parada de
emergencia externa.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
5 Puesta en servicio y configuración

Procedimiento
Se ha garantizado que la unidad de control superior no active la parada
de emergencia externa.
1. Activar el dispositivo local de parada de emergencia en uno de los participantes del RoboTeam.
2. Comprobar si hay una parada de emergencia externa fijada a los otros
participantes del RoboTeam.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
33 / 81
KUKA.RoboTeam 3.0
34 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
6 Operación
6
Operación
6.1
Menús
Los siguientes menús y comandos son específicos de este paquete de opciones:
Secuencia de menú:

6.2
Instrucciones > RoboTeam

ENTERSPACE

EXITSPACE

PROGSYNC

GEOLINK

REMOTE START

REMOTE WAIT
Gestor de conexiones
El gestor de conexiones permite cambiar a otras unidades de control del robot.
Fig. 6-1: Administrador de conexiones
Pos.
Descripción
1
Estado de la comunicación con el control de seguridad
2
Estado de la asignación de direcciones IP
3
Estado de la unidad de control del robot
4
Modos de servicio
5
Indicaciones de estado, interpretador Submit, accionamientos, interpretador del robot (ver las instrucciones de servicio y programación del KUKA System Software [KSS], capitulo "Manejo")
6
Estado de la sesión de RDP en las respectivas unidades de control
del robot
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
35 / 81
KUKA.RoboTeam 3.0
Pos.
Descripción
7
Número unívoco de la unidad de control del robot en el RoboTeam
8
La unidad de control del robot mostrada puede detenerse con seguridad en los modos de servicio de prueba T1 y T2 del control de
seguridad.

Con símbolo de confirmación: El robot puede desplazarse
en los modos de servicio T1 o T2

Sin símbolo de confirmación: El robot se ha detenido con
seguridad, es decir, el robot no puede desplazarse en el modo
de servicio T1 ni en el T2.
Indicación: Esta configuración no surte efecto en el servicio automático.
6.3
Plugin RoboTeam
Con el plugin RoboTeam se puede cambiar a otras unidades de control, y
además se pueden sincronizar las acciones del operador de las unidades de
control vinculadas y simular las instrucciones de sincronización. Así es posible un trabajo más sencillo con unidades de control acopladas.
Fig. 6-2: Plugin RoboTeam (ejemplo con 6 robots)
Pos.
Descripción
1
Unidad de control del robot mostrada en este momento en el smartPAD
2
Símbolo de apertura o cierre del plugin
3
Número unívoco de la unidad de control del robot en el RoboTeam
Indicación: La numeración es idéntica en todas las unidades de
control del RoboTeam.
4
Estado del robot desde la perspectiva del control de seguridad

Gris: El robot está detenido con seguridad

Verde: El robot no está detenido con seguridad, por lo que
puede desplazarse
Indicación: Las unidades de control del robot que no sean accesibles a través de la red se mostrarán por lo general con un LED
verde, ya que su estado no se puede determinar de forma local.
36 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
6 Operación
Pos.
5
Descripción
Nombre del robot
Si no se ha asignado ningún nombre, se mostrará la dirección IP
del robot.
6
Sincronizar operaciones
Si se pulsa la tecla de arranque en el robot local, se inician también
los demás robots del RoboTeam. Además se sincronizan el override del programa y el tipo de flujo del programa. De esta forma
se pueden manejar varios robots de un RoboTeam en el modo de
prueba.

Con símbolo de confirmación: Sincronizar operaciones con
esta unidad de control

Sin símbolo de confirmación: No sincronizar operaciones
con esta unidad de control
Indicación: Las operaciones se llevarán a cabo en todos los robots en los que esté marcado el símbolo de confirmación. Por lo
tanto, debe haber al menos dos robots activados para que se sincronicen las operaciones.
7
Simulación de instrucciones de sincronización
Cuando se activa esta simulación se pueden probar programas
que ya contengan instrucciones de sincronización. La simulación
funciona con la instrucción PROGSYNC (sincronización de programa) y con la instrucción SYNC (sincronización de movimiento).
Comandos Sync Sim (SKS) corresponde a la variable
$SYNCCMD_SIM.
8

Con símbolo de confirmación: Se simularán todas las instrucciones de sincronización.

Sin símbolo de confirmación: No se simularán las instrucciones de sincronización.
Simulación de ejes del robot
Cuando se activa esta simulación se pueden probar programas sin
mover realmente otras cinemáticas. La simulación solo funciona
con ejes de robot y cinemáticas ROBROOT; no funciona con ejes
adicionales. Robot Sim corresponde a la variable
$SIMULATED_COOP_ROBOTS.

Con símbolo de confirmación: Se simularán los ejes del robot.

Sin símbolo de confirmación: No se simularán los ejes del
robot.
Cuando se pulsa el pulsador de validación, el plugin se muestra como una barra lateral:
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
37 / 81
KUKA.RoboTeam 3.0
Fig. 6-3: Plugin RoboTeam (barra lateral)
Pos.
6.4
Descripción
1
El robot tiene autorización de desplazamiento
2
Unidad de control del robot mostrada en este momento en el smartPAD
3
El control de seguridad detiene el robot con seguridad
Cambiar la unidad de control del robot
Con el smartPAD común se puede cambiar a otras unidades de control que
se encuentren en el RoboTeam. Para ello existen dos posibilidades:

Cambio mediante el gestor de conexiones

Cambio mediante el plugin RoboTeam
Cada unidad de control del robot tiene asignado un número unívoco en una
serie continua. Por medio de este número, la unidad de control del robot puede identificarse en todo momento ante cada una de las demás unidades de
control del robot. Este número identificador se muestra en los siguientes lugares:

Administrador de conexiones

Plugin RoboTeam

Formularios inline con los socios de sincronización
(>>> 7.5 "Ventana de opciones Sincronización" Página 49)
6.4.1
Cambio de unidad de control con el gestor de conexiones
Clave del selector de modos de servicio para activar el gestor de conexiones
Requisito

Procedimiento
1. Cambiar de posición el selector de modos de servicio en el smartPAD. Se
visualiza el gestor de conexiones.
(>>> 6.2 "Gestor de conexiones" Página 35)
2. Seleccionar la unidad de control del robot deseada.
3. Colocar el selector de modos de servicio de nuevo en la posición original.
La pantalla cambia a la unidad de control del robot seleccionada.
6.4.2
Cambio de unidad de control con el plugin RoboTeam
Procedimiento
1. Tocar el símbolo para abrir el plugin RoboTeam.
(>>> 6.3 "Plugin RoboTeam" Página 36)
38 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
6 Operación
2. Pulsar sobre el campo con el nombre de la unidad de control del robot deseada.
6.5
Sincronización de operaciones
Descripción
Procedimiento
Con el plugin RoboTeam se pueden sincronizar las operaciones de las unidades de control vinculadas. Para ello, se deben tener en cuenta las siguientes
peculiaridades:

Cada modificación llevada a cabo localmente en el override del programa,
así como en el tipo de flujo del programa, se llevará a cabo también en
todas las unidades de control en las que esté activado el símbolo de confirmación en la casilla Acciones de la unidad de control Sync (SAS).

Cuando se pulse la tecla de arranque en la unidad de control local, también se iniciarán todas las unidades de control en las que esté activado el
símbolo de confirmación en la casilla Acciones de la unidad de control
Sync (SAS).

Si se pulsa la tecla de inicio de la marcha atrás en la unidad de control local, solamente se inicia la unidad de control local. Excepción: Cuando se
deba dirigir hacia atrás un movimiento sincronizado en el RoboTeam, en
este se realizará ese mismo movimiento.
1. Tocar el símbolo para acceder al plugin RoboTeam.
(>>> 6.3 "Plugin RoboTeam" Página 36)
2. Activar el símbolo de confirmación en la casilla de la columna Acciones
de la unidad de control Sync (SAS) para la unidad de control cuyas operaciones vayan a sincronizarse.
6.6
Simulación de instrucciones de sincronización
Descripción
Con el plugin RoboTeam se pueden simular instrucciones de sincronización
o de movimiento de unidades de control acopladas. Así pueden crearse o revisarse programas de robot sin tener que desplazar el conjunto del RoboTeam.
Procedimiento
1. Tocar el símbolo para acceder al plugin RoboTeam.
(>>> 6.3 "Plugin RoboTeam" Página 36)
2. Para instrucciones de sincronización: Activar el símbolo de confirmación
en la casilla de la columna Comandos Sync Sim (SKS) para la unidad de
control cuyas instrucciones de sincronización vayan a simularse.
Para instrucciones de movimiento: Activar el símbolo de confirmación en
la casilla de la columna Robot Sim para la unidad de control cuyas instrucciones de movimiento vayan a simularse.
Ejemplo
Varios robots presentan un acoplamiento geométrico con una cinemática externa (p. ej. un eje adicional con un componente sobre el que se va a soldar).
Los movimientos se sincronizan con las instrucciones PROGSYNC o SYNC.
El robot maestro está acoplado al eje adicional mediante un sistema de coordenadas BASE en el eje adicional. El otro robot está acoplado al eje adicional
mediante LK(), y por tanto será el slave de movimiento.
Caso 1: Programación posterior de puntos en el slave sin desplazar el master
Con los siguientes ajustes pueden iniciarse los programas con instrucciones
SYNC y acoplamiento geométrico sin que el master se mueva. El eje adicional, sin embargo, acompaña el movimiento, para encontrarse en la posición
correcta para el slave.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
39 / 81
KUKA.RoboTeam 3.0
Casilla
Maestro
Slave
Comandos Sync Sim (SKS)
Sin símbolo de
confirmación
Sin símbolo de
confirmación
Acciones de la unidad de control
Sync (SAS)
Con símbolo de
confirmación
Con símbolo de
confirmación
Robot Sim
Con símbolo de
confirmación
Sin símbolo de
confirmación
Aplicando este ejemplo, desplazar el robot maestro
a la posición segura con anterioridad y manualmente. En caso contrario puede colisionar con la cinemática.
Caso 2: Creación de un programa con instrucciones SYNC en el master
El programa del master debe contener instrucciones PROGSYNC o SYNC
para el slave. En el modo de prueba, estas instrucciones se pueden simular
con Robot Sim. Como alternativa, esto también es posible con los siguientes
ajustes. Con estos ajustes se simula cada una de las instrucciones SYNC en
el programa del master sin esperar al slave.
6.7
Casilla
Maestro
Slave
Comandos Sync Sim (SKS)
Sin símbolo de
confirmación
Con símbolo de
confirmación
Acciones de la unidad de control
Sync (SAS)
Sin símbolo de
confirmación
Sin símbolo de
confirmación
Robot Sim
Sin símbolo de
confirmación
Sin símbolo de
confirmación
Visualización del estado de una zona de trabajo
Ver en (>>> 5.4.2.5 "Crear y configurar zonas de trabajo" Página 30)
la información relativa a la configuración de las zonas de trabajo.
En el menú principal, seleccionar Visualización > Zona de trabajo.
Procedimiento

Descripción
En la ventana Estado zona de trabajo se muestra qué estado tiene cada unidad de control del robot.
Fig. 6-4: Estado de la zona de trabajo.
40 / 81
1
Indicador de la unidad de control que se encuentra actualmente en el
campo de trabajo
2
Indicador de las unidades de control en cola
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
6 Operación
Símbolo
Descripción
El robot se encuentra en la zona de trabajo.
El robot espera a la liberación de la zona de trabajo.
Autobloqueo ("Deadlock") de la zona de trabajo.
Estado desconocido, posible problema de conexión.
Están disponibles los siguientes botones:
Botón
Descripción
Anterior
Muestra la zona de trabajo anterior.
Próximo
Muestra la zona de trabajo siguiente.
Replegar
Se desplaza a la zona de trabajo.
Indicación: El botón se encuentra disponible a partir
del grupo de usuario Experto y solamente en los modos
de servicio T1 y T2.
Depuración
con.
Activa la comprobación automática de autobloqueos.
(>>> 11.1.1 "Determinación de bloqueo mutuo" Página 69)
Indicación: El botón solo está disponible a partir del
grupo usuario Experto.
Determinar
Determina autobloqueos.
Forzar
Libera la zona de trabajo bloqueada.
El siguiente robot de la cola avanza a la zona de trabajo
liberada. En caso de que otro robot se encuentre en
esta zona de trabajo, en primer lugar deberá sacarse
este manualmente.
Indicación: El botón se encuentra disponible solo a
partir del grupo de usuario Experto y solamente en los
modos de servicio T1 y T2.
Al restablecerse las zonas de trabajo están disponibles los siguientes botones:
Botón
Descripción
Anterior
Muestra la zona de trabajo anterior.
Próximo
Muestra la zona de trabajo siguiente.
Tener local
Asigna el campo de trabajo seleccionado a la unidad de
control local (ENTERSPACE).
Aceptar
Acepta los ajustes mostrados.
Rechazar
Rechaza los ajustes mostrados.
En la unidad de control local deben confirmarse las zonas de trabajo
asignadas a ella (Aceptar o Tener local). Las zonas de trabajo no
asignadas permanecen bloqueadas.
6.8
Restauración del estado de una zona de trabajo
Procedimiento
1. Seleccionar la secuencia de menú Visualización > Variable > Únicos.
2. Visualizar la variable $WORKSPACERESTOREACTIVE.
3. Establecer el valor de las variables como TRUE.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
41 / 81
KUKA.RoboTeam 3.0
Descripción
Al reiniciarse la unidad de control tras una pérdida de conexión con la restauración activada, se mostrará un mensaje para preguntar si se debe continuar
con la restauración. Están disponibles los siguientes botones:
Botón
Descripción
No
Acepta los ajustes actuales de la unidad de control. No se restaura el estado de la zona de trabajo.
Reintentar
Repite la solicitud a las unidades de control.
Sí
Abre la ventana Estado zona de trabajo.
(>>> 6.7 "Visualización del estado de una zona
de trabajo" Página 40)
42 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
7
Programación con formularios inline
7.1
Nombres en formularios inline
En los formularios inline pueden indicarse nombres para los conjuntos de datos. Se trata, entre otros, de nombres para los puntos, nombres para conjuntos de datos de movimientos, etc.
Los nombres tienen las restricciones siguientes:

Longitud máxima de 24 caracteres
Los campos individuales pueden estar limitados a menos de 24 caracteres.

7.2
No se permiten signos especiales excepto _.
Sincronización temporal del avance del programa
Descripción
La instrucción PROGSYNC permite iniciar al mismo tiempo los movimientos
de trayectoria de los robots colaborativos.
Esta instrucción no puede usarse dentro de un bloque Spline.
Requisito
Procedimiento

Se ha seleccionado o abierto un programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
2. Seleccionar la secuencia de menú Instrucciones > RoboTeam >
PROGSYNC.
3. Ajustar los parámetros en el formulario inline.
(>>> 7.2.1 "Formulario inline PROGSYNC" Página 43)
4. Guardar la instrucción con Instrucción OK.
7.2.1
Formulario inline PROGSYNC
Fig. 7-1: Formulario inline PROGSYNC (2 unidades de control)
Fig. 7-2: Formulario inline PROGSYNC (a partir de 3 unidades de control)
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
43 / 81
KUKA.RoboTeam 3.0
Pos.
1
Descripción
Marca de sincronización
La marca de sincronización debe usarse en los programas de los
participantes del RoboTeam que deben esperar para pasar la
marca juntos, incluida la parada del avance.
(>>> 7.1 "Nombres en formularios inline" Página 43)
2
Socio de sincronización
Los números unívocos de las unidades de control que se vayan a
sincronizar se muestran separados por un guión bajo. El RoboTeam puede configurarse a partir de 3 unidades de control
mediante la ventana de opciones correspondiente.
(>>> 7.5 "Ventana de opciones Sincronización" Página 49)
3
7.3

WAIT: Al alcanzar la instrucción PROGSYNC, el robot espera
hasta que todos los socios de sincronización hayan llegado a
esta instrucción. Se detiene el avance del intérprete del programa. Cuando se alcanza este momento, la sincronización
del programa se considerará como cumplida. Todos los intérpretes de programa continuarán su procesamiento como hasta entonces.

NO WAIT: Al alcanzar la instrucción PROGSYNC, el robot no
espera, sino que simplemente informa a los otros robots de su
llegada. El robot continúa con su movimiento de trayectoria sin
interrupción. No se detiene el avance del intérprete del programa.
Sincronizar movimientos de forma temporal
Con la instrucción SYNC se pueden sincronizar algunos conjuntos de movimientos de las unidades de control colaborativas. Además, con esta instrucción se pueden sincronizar bloques Spline completos.
7.3.1
Sincronizar conjuntos de movimientos individuales de forma temporal
Descripción
Varios robots pueden sincronizarse tanto en sus movimientos que requieran
las mismas unidades de tiempo para estos movimientos. La instrucción SYNC
es un componente complementario del conjunto de movimientos LIN, CIRC,
SLIN o SCIRC, y puede llamarse adicionalmente.
No se han podido aproximar los movimientos SLIN o SCIRC sincronizados. Se recomienda utilizar un bloque Spline para ello.
Condición previa
Procedimiento

Se ha seleccionado el programa.

Modo de servicio T1
1. Mover el TCP a la posición que se programará por aprendizaje como punto de destino.
2. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
3. Seleccionar la secuencia de menú Instrucciones > Movimiento > LIN o
CIRC o SLIN o SCIRC.
4. Pulsar Sync Unsync.
5. Ajustar los parámetros en el formulario inline.
(>>> 7.3.1.1 "Formulario inline LIN/CIRC/SLIN/SCIRC con SYNC" Página 45)
44 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
6. Guardar la instrucción con Instrucción OK.
7.3.1.1
Formulario inline LIN/CIRC/SLIN/SCIRC con SYNC
Fig. 7-3: Formulario inline LIN/CIRC/SLIN/SCIRC con SYNC
Pos.
1
Descripción
Marca de sincronización
La marca de sincronización se establece con el botón Sync Unsync.
2
Nombre de la marca de sincronización
(>>> 7.1 "Nombres en formularios inline" Página 43)
Indicación: Un nombre unívoco garantiza que en los programas
correspondientes solo se sincronicen conjuntos de movimientos
con este nombre. Si se accede a conjuntos de movimientos con
un nombre diferente, aparecerá el mensaje de advertencia pertinente.
3
Socio de sincronización
Los números unívocos de las unidades de control que se vayan a
sincronizar se muestran separados por un guión bajo. El RoboTeam puede configurarse a partir de 3 unidades de control
mediante la ventana de opciones correspondiente.
(>>> 7.5 "Ventana de opciones Sincronización" Página 49)
7.3.2
Sincronización temporal de bloques Spline
Descripción
Con la instrucción SYNC se pueden sincronizar entre sí bloques Spline y segmentos Spline de las unidades de control colaborativas. La instrucción SYNC
es un componente complementario de la instrucción de bloque Spline, así
como de los segmentos SPL, SLIN o SCIRC dentro de un bloque Spline, y
puede activarse adicionalmente.
Los puntos de sincronización en el bloque Spline pueden diferir entre las unidades de control implicadas. Los bloques Spline pueden contener una cantidad distinta de puntos. También se pueden sincronizar entre sí diferentes
segmentos Spline.
La instrucción de sincronización en el bloque Spline garantiza que todos los
movimientos Spline involucrados comiencen y acaben de forma sincronizada.
Con esto se sincroniza el último segmento Spline, por ello no debe llevar su
propia marca de sincronización.
Los socios de sincronización deben fijar un bloque Spline en la instrucción y
no pueden diferir en el bloque Spline.
Ejemplo
Los bloques Spline de los robots 1 a 3 están sincronizados entre sí, dado que
los puntos de inicio y fin están sincronizados. Dentro de los bloques Spline,
los segmentos P3R1, P5R2 y P2R3 están sincronizados entre sí.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
45 / 81
KUKA.RoboTeam 3.0
Fig. 7-4: Ejemplo: 3 movimientos de robot sincronizados
1
Movimiento Spline del robot 1
2
Movimiento Spline del robot 2
3
Movimiento Spline del robot 3
Para obtener perfiles de velocidad lo más regulares posible en RoboTeam, se recomienda sincronizar la menor cantidad posible de segmentos dentro de bloques Spline. Lo ideal es sincronizar solo el
bloque Spline de modo que los participantes del RoboTeam puedan realizar
un acoplamiento óptimo entre sí a través de la programación síncrona.
Condición previa
Procedimiento

Se ha seleccionado el programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará el bloque spline.
2. Seleccionar la secuencia de menú Instrucciones > Movimiento > Bloque SPLINE.
3. Pulsar Sync Unsync.
4. Ajustar los parámetros en el formulario inline.
(>>> 7.3.2.1 "Formulario inline de bloque Spline con SYNC" Página 47)
5. Pulsar Instrucción OK.
6. Pulsar Abrir/cerrar Fold. Ahora se pueden añadir segmentos Spline en
el bloque Spline.
7. Seleccionar la secuencia de menú Instrucciones > Movimiento > SPL o
SLIN o SCIRC.
8. Pulsar Sync Unsync.
9. Ajustar los parámetros en el formulario inline.
(>>> 7.3.2.2 "Formulario inline SPL/SLIN/SCIRC en el bloque Spline con
SYNC" Página 47)
10. Pulsar Instrucción OK.
11. Repetir los pasos 7 a 9 según sea necesario para los demás segmentos
Spline.
46 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
7.3.2.1
Formulario inline de bloque Spline con SYNC
Fig. 7-5: Formulario inline de bloque Spline con SYNC
Pos.
1
Descripción
Marca de sincronización
La marca de sincronización se establece con el botón Sync Unsync.
2
Nombre de la marca de sincronización
(>>> 7.1 "Nombres en formularios inline" Página 43)
Indicación: Un nombre unívoco garantiza que en los programas
correspondientes solo se sincronicen conjuntos de movimientos
con este nombre. Si se accede a conjuntos de movimientos con
un nombre diferente, aparecerá el mensaje de advertencia pertinente.
3
Socio de sincronización
Los números unívocos de las unidades de control que se vayan a
sincronizar se muestran separados por un guión bajo. El RoboTeam puede configurarse a partir de 3 unidades de control
mediante la ventana de opciones correspondiente.
(>>> 7.5 "Ventana de opciones Sincronización" Página 49)
7.3.2.2
Formulario inline SPL/SLIN/SCIRC en el bloque Spline con SYNC
Fig. 7-6: Formulario inline SPL/SLIN/SCIRC con SYNC
Pos.
1
Descripción
Marca de sincronización
La marca de sincronización se establece con el botón Sync Unsync.
2
Nombre de la marca de sincronización
(>>> 7.1 "Nombres en formularios inline" Página 43)
Indicación: Un nombre unívoco garantiza que en los programas
correspondientes solo se sincronicen puntos de destino de los
segmentos Spline con este nombre. Si dentro de los bloques
Spline fallan las marcas de sincronización o su orden es inconsistente, se mostrará un mensaje de error correspondiente.
En los segmentos dentro de un bloque Spline no se pueden modificar
los socios de sincronización; esto debe realizarse en el bloque Spline.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
47 / 81
KUKA.RoboTeam 3.0
7.4
Acoplamiento geométrico de robots
Descripción
Con la instrucción GEOLINK se puede acoplar un robot (slave) al sistema de
coordenadas de la brida de otro robot (master) (o una cinemática de eje adicional). Si el master se desplaza, el slave lo sigue.
(>>> 10.3 "Programa de ejemplo para el desplazamiento del reparto de cargas con 2 robots" Página 66)
La instrucción GEOLINK tiene las siguientes aplicaciones:

Procedimiento de división de la carga
El slave sigue al master, sin realizar movimientos propios. Para ello se
programan 2 instrucciones GEOLINK. En la primera instrucción se establece el acoplamiento mediante el slave (a través de la selección del sistema de coordenadas BASE vinculado en la instrucción GEOLINK). En la
segunda instrucción se vuelve a anular el acoplamiento mediante el slave
(a través de la selección de un sistema de coordenadas BASE no vinculado en la instrucción GEOLINK). En el slave no se programan más instrucciones entre las instrucciones GEOLINK. En el master se programa
entre las instrucciones GEOLINK el movimiento que los robots deben realizar unidos. Dado que la instrucción GEOLINK contiene instrucciones de
sincronización, el slave espera para acoplarse y desacoplarse hasta que
el master se encuentra en la posición necesaria para ello.

Acoplamiento con movimientos Spline
En caso de que un robot deba desplazarse con movimientos de tipo Spline respecto a la posición de otro robot, ambos deben estar parados durante el cambio del sistema de coordenadas BASE. Para garantizarlo, la
instrucción GEOLINK puede usarse con los tipos de movimiento
SLIN/SCIRC. En cuanto se ha producido el acoplamiento, el slave puede
realizar movimientos Spline propios respecto al sistema de coordenadas
de la brida del master. Lo mismo se aplica cuando se anula el acoplamiento.
Requisito
Procedimiento

Se ha seleccionado o abierto un programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
2. Seleccionar la secuencia de menú Instrucciones > RoboTeam > GEOLINK.
3. Ajustar los parámetros en el formulario inline.
(>>> 7.4.1 "Formulario inline GEOLINK" Página 48)
4. Guardar la instrucción con Instrucción OK.
7.4.1
Formulario inline GEOLINK
Fig. 7-7: Formulario inline GEOLINK (master)
48 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
Fig. 7-8: Formulario inline GEOLINK (slave)
Pos.
Descripción
1
Tipo de robot
2
3

MASTER

SLAVE
Solo para el tipo de robot SLAVE: Seleccionar el tipo de movimiento en el que se debe ejecutar el movimiento acoplado.

LIN/CIRC

SLIN/SCIRC/SPL
Marca de sincronización
La marca de sincronización debe usarse en los programas de los
participantes del RoboTeam, los cuales reaccionarán a esta
marca.
(>>> 7.1 "Nombres en formularios inline" Página 43)
Indicación: El nombre de la marca de sincronización debe ser
idéntico en todos los participantes del RoboTeam que deban
reaccionar a ella.
4
Socio de sincronización
El orden de las unidades de control es idéntico en cada unidad de
control del RoboTeam. Pueden seleccionarse configuraciones
determinadas.
Para seleccionar, colocar el cursor en el campo. Se abre la ventana de opciones correspondiente.
(>>> 7.5 "Ventana de opciones Sincronización" Página 49)
5
7.5
Solo para el tipo de robot SLAVE: Seleccionar la base del robot
maestro. Los movimientos del robot esclavo se refieren a este
sistema de coordenadas.
Ventana de opciones Sincronización
Cuando el RoboTeam incluya más de 2 participantes, se puede acceder a
esta ventana de opciones mediante las instrucciones PROGSYNC, GEOLINK
y SYNC.
Fig. 7-9: Ventana de opciones Sincronización (ejemplo)
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
49 / 81
KUKA.RoboTeam 3.0
Pos.
7.6
Descripción
1
Unidad de control del robot en la que se encuentra en ese
momento
2
Número unívoco de la unidad de control del robot en el RoboTeam
3
Nombre de la unidad de control del robot en el RoboTeam
4
Socio de sincronización

Con símbolo de confirmación: Se requiere la unidad de control del robot como socio de sincronización

Sin símbolo de confirmación: No se requiere la unidad de
control del robot como socio de sincronización
Programación del acceso remoto a programas de otras unidades de control
Descripción
Con las instrucciones REMOTE START y REMOTE WAIT se pueden emplear
programas de otras unidades de control que se encuentren dentro del grupo
de robots cooperantes.
La instrucción REMOTE START se transmite por medio de una variable a la
unidad de control seleccionada, y allí provoca específicamente el procesamiento de un programa.
La instrucción REMOTE WAIT se coloca justo después de REMOTE START
en la unidad de control a la que se accede. Solamente será posible continuar
con la ejecución del programa al terminar la ejecución del programa de la unidad de control a la que se ha accedido.
Para que funcione el acceso remoto, el programa de la unidad de control a la
que se accede debe estar configurado con la plantilla Coop If o Coop Wait.
De este modo, los programas incluyen una consulta de instrucciones REMOTE en otras unidades de control.
(>>> 10.2 "Programa de ejemplo con instrucciones REMOTE" Página 65)
La plantilla Coop If comprueba a intervalos regulares si existe una instrucción
REMOTE de otra unidad de control. La plantilla Coop Wait espera a una instrucción REMOTE de otra unidad de control.
Requisito
Procedimiento

Se ha seleccionado o abierto un programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
2. Seleccionar la secuencia de menú Instrucciones > RoboTeam > REMOTE START o REMOTE WAIT.
3. Ajustar los parámetros en el formulario inline.
(>>> 7.6.1 "Formulario inline REMOTE START" Página 50)
(>>> 7.6.2 "Formulario inline REMOTE WAIT" Página 51)
4. Guardar la instrucción con Instrucción OK.
7.6.1
Formulario inline REMOTE START
Fig. 7-10: Formulario inline REMOTE START
50 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
Pos.
7.6.2
Descripción
1
Seleccionar la unidad de control que debe procesar el programa.
Los nombres de unidades de control se ajustan a la configuración.
2
Mediante esta cadena se decide a qué programa acceder en la
plantilla correspondiente Coop If o Coop Wait de la unidad de
control a la que se ha accedido.
Formulario inline REMOTE WAIT
Fig. 7-11: Formulario inline REMOTE WAIT
Pos.
1
7.7
Descripción
Seleccionar la unidad de control que debe procesar el programa.
Los nombres de unidades de control se ajustan a la configuración.
Programación del acceso a la zona de trabajo
Descripción
La instrucción ENTERSPACE permite al robot acceder a la zona de trabajo
solicitada primero mediante la consulta correspondiente. Los siguientes robots permanecen parados hasta que la zona de trabajo vuelva a quedar libre.
Antes de la entrada en la zona de trabajo debe darse siempre la instrucción ENTERSPACE.
Esta instrucción no puede usarse dentro de un bloque Spline.
Requisito
Procedimiento

Las zonas de trabajo empleadas se han configurado con WorkVisual en
todas las unidades de control cooperantes.

Se ha seleccionado o abierto un programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
2. Seleccionar la secuencia de menú Instrucciones > RoboTeam > ENTERSPACE.
3. Ajustar los parámetros en el formulario inline.
(>>> 7.7.1 "Formulario inline ENTERSPACE" Página 52)
4. Guardar la instrucción con Instrucción OK.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
51 / 81
KUKA.RoboTeam 3.0
7.7.1
Formulario inline ENTERSPACE
Fig. 7-12: Formulario inline ENTERSPACE
Pos.
1
Descripción
Seleccionar la zona de trabajo a la que se va a acceder.
Indicación: Antes de seleccionar la zona de trabajo hay que indicar en qué orden puede acceder el robot a la zona de trabajo. Si
un programa necesita, por ejemplo, 2 zonas de trabajo, primero
se debe seleccionar la zona de trabajo con el orden más bajo (por
ejemplo, «2»). Solo entonces se podrá solicitar la siguiente zona
de trabajo (por ejemplo, «5»). Respetando esta norma básica se
evitarán los autobloqueos en una posterior ejecución del programa.
2


7.8
CONT:

Zona de trabajo libre: Se aproxima el punto anterior.

Zona de trabajo ocupada: Al principio de la trayectoria de
aproximación, el robot comienza a frenar y después se detiene en medio de la trayectoria de aproximación.
[vacío]: Se activa la parada del avance.
Programación del abandono de la zona de trabajo
Descripción
Con la instrucción EXITSPACE, el robot que ha atravesado la zona de trabajo
indica a las otras unidades de control que la zona de trabajo vuelve a estar
libre. El robot que lleva más tiempo esperando obtiene el acceso.
Esta instrucción no puede usarse dentro de un bloque Spline.
Requisito
Procedimiento

Las zonas de trabajo empleadas se han configurado con WorkVisual en
todas las unidades de control cooperantes.

Se ha seleccionado o abierto un programa.

Modo de servicio T1
1. Colocar el cursor en la línea detrás de la cual se insertará la instrucción.
2. Seleccionar la secuencia de menú Instrucciones > RoboTeam > EXITSPACE.
3. Ajustar los parámetros en el formulario inline.
(>>> 7.8.1 "Formulario inline EXITSPACE" Página 53)
4. Guardar la instrucción con Instrucción OK.
52 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
7 Programación con formularios inline
7.8.1
Formulario inline EXITSPACE
Fig. 7-13: Formulario inline EXITSPACE
Pos.
1
Descripción
Seleccionar la zona de trabajo que se va a liberar.
Indicación: Al seleccionar Release All se liberan todas las zonas
de trabajo que haya utilizado el robot local hasta entonces. Esta
opción sirve para la inicialización al comienzo de un programa.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
53 / 81
KUKA.RoboTeam 3.0
54 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
8 Programación KRL
8
Programación KRL
8.1
SyncCmd()
Descripción
SyncCmd() permite la sincronización de programa y de movimiento.
La instrucción SyncCmd() no puede emplearse para la sincronización
de movimiento de movimientos Spline. Para ello deben usarse las variables $SYNC_ID y $SYNC_LIST.
Declaración
ENUM SYNCTYPE #PROGSYNC, #MOTIONSYNC
EXTP SYNCCMD (SYNCTYPE SYNC_T:IN, CHAR ID_NAME[64]:IN, INT
COOP_MASK:IN)
Elemento
Descripción
SYNC_T
Tipo: SYNCTYPE-ENUM
Tipo de sincronización:
ID_NAME[]

#ProgSync: Sincronización del programa

#MotionSync: Sincronización del movimiento
Tipo: CHAR-ARRAY
El identificador de versión puede contener un máximo
de 64 caracteres.
Cadena de caracteres para la asignación de programa
del punto de sincronización.
COOP_MASK
Tipo: INT
Describe todas las unidades de control participantes
en la sincronización.
COOP_MASK existe como un campo de bits relacionado con $COOP_KRC[]. El bit con el valor más reducido es siempre el índice 1 de $COOP_KRC[].
(>>> 9.1 "$COOP_KRC[ ]" Página 59)
Ejemplo: "COOP_MASK=3" => '#B0011'. Se sincronizan las unidades de control $COOP_KRC[1] y
$COOP_KRC[2].
8.2
RemoteCmd()
Descripción
Declaración
RemoteCmd permite el envío de comandos a otras unidades de control. El
procesamiento de comandos en la unidad de control local se interrumpe durante el tiempo de ejecución de la unidad de control externa. Se permiten los
siguientes comandos:

Cancelar

Reset

Stop

Run

Asignación de variables globales

Wait for
EXTFCTP BOOL REMOTECMD (CHAR IP_ADDR[24]:IN, CHAR
CMD[128]:IN)
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
55 / 81
KUKA.RoboTeam 3.0
Elemento
Descripción
RemoteCmd()
Ejecuta un comando en una unidad de control externa.
Suministra un valor de retorno sobre el éxito:
TRUE: El comando se ha ejecutado con éxito.
FALSE: El comando no se ha ejecutado con éxito.
IP_ADDR[]
Dirección IP de la unidad de control externa (p. ej.
192.0.10.2).
CMD[]
Descripción de los comandos que se van a ejecutar, p.
ej.:
"RUN/R1/Cell ( )"
"$Flag[44]=TRUE"
"Wait for $ON_PATH"
8.3
CancelProgSync()
Descripción
CancelProgSync anula las instrucciones PROGSYNC inminentes que utilizan
la opción NO WAIT. La instrucción solo es válida para la unidad de control actual. De este modo puede interrumpirse el procesamiento del programa actual
y desplazar el robot, por ejemplo, a la posición inicial.
CancelProgSync activa una parada del procesamiento en avance en el programa del robot. Cuando el puntero de ejecución principal alcanza la línea del
programa, esta se ejecuta.
Cuando se activa CancelProgSync a través del
avance, las siguientes instrucciones de movimiento
pueden provocar una colisión del robot.
Declaración
EXTFCTP RET_C_PSYNC_E CANCELPROGSYNC (CANCEL_PSYNC_E
CMD:IN, CHAR ID_NAME[64]:IN)
Elemento
Descripción
CancelProgSync()
Anula las instrucciones PROGSYNC inminentes y
suministra un valor de retorno sobre el éxito:
RET_C_PSYNC_E
56 / 81

CANCEL_OK: Se ha ejecutado con éxito el comando.

ID_INVALID: El nombre de PROGSYNC indicado no es válido.

CANCEL_ERROR: La instrucción PROGSYNC
no se ha anulado porque se ha producido un
error (p. ej. un problema de red).

NOT_NO_WAIT: El nombre no pertenece a una
instrucción PROGSYNC con la opción NO WAIT.

NO_SYNCS: Se ha seleccionado
#CANCEL_ALL como tipo de anulación.

UNKNOWN: La anulación está en marcha.
Variable del tipo ENUM con los valores de retorno
permitidos. La variable se emplea para su consulta.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
8 Programación KRL
Elemento
Descripción
CMD
Tipo de anulación
ID_NAME[ ]
Ejemplo

#CANCEL_ID: Anula la instrucción PROGSYNC
con el nombre indicado.

#CANCEL_ALL: Anula todas las instrucciones
PROGSYNC.
Nombre de la instrucción PROGSYNC
DEF MAIN( )
DECL RET_C_PSYNC_E retVal
...
;Anular solo la instrucción PROGSYNC indicada
retVal=CancelProgSync(#CANCEL_ID,"Sync001")
...
;Anular todas las instrucciones PROGSYNC
retVal=CancelProgSync(#CANCEL_ALL," ")
...
8.4
RemoteRead()
Descripción
Con RemoteRead() pueden consultarse los valores de variables que se encuentren en otra unidad de control del RoboTeam.
RemoteRead() tiene las restricciones siguientes:
Declaración

Solo se pueden leer variables globales.

La instrucción no puede utilizarse con la unidad de control local.

La instrucción solo es posible para las unidades de control registradas en
la variable $COOP_KRC[ ].
EXTFCTP CHAR[256] REMOTEREAD(CHAR IP_Addr[24]:IN, CHAR VARIABLE[128]:IN, INT ERROR:OUT)
Elemento
Descripción
RemoteRead()
Lee el valor de una variable en otra unidad de control
IP_ADDR[]
Dirección IP de la unidad de control en la que se debe realizar la consulta (p. ej. 192.0.10.2)
Variable[]
Variable cuyo valor se debe consultar
El valor de retorno es un CHAR-Array y contiene el valor
de la variable leída.
Indicación: La variable no debe contener más de 256
caracteres.
ERROR
Indica si la consulta ha tenido éxito

0: La consulta ha tenido éxito.

>0: Se ha producido un error con el número de mensaje
indicado.

-1: Durante el tiempo de timeout no se ha enviado ningún valor de retorno.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
57 / 81
KUKA.RoboTeam 3.0
58 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
9 Variables del sistema
9
V
Variables del sistema
9.1
$COOP_KRC[ ]
s
Descripción
La variable estructural del sistema $COOP_KRC[ ] abarca en cada unidad de
control todos los robots cooperantes de un RoboTeam. Durante la planificación de proyecto con WorkVisual se definen y registran automáticamente los
datos de gestión (nombre de la unidad de control del robot, dirección IP del
sistema base) de los robots cooperantes para la red del sistema base.
Todas las máscaras de bits del RoboTeam se refieren a la lista local de la variable estructural $COOP_KRC[ ].
Declaración
STRUC COOP_KRC CHAR IP_ADDR[15], NAME[24]
DECL COOP_KRC $COOP_KRC[16]
Explicación
Elemento
Descripción
$COOP_KRC[ ]
Tipo: COOP_KRC
IP_ADDR[ ]

1: Participante local

2 … 16: Participantes externos
Tipo: CHAR
Dirección IP de la unidad de control del robot en la red
del sistema base (VxWorks): 15 caracteres como
máximo
NAME[ ]
Tipo: CHAR
Nombre descriptivo de la unidad de control del robot:
24 caracteres como máximo
9.2
$PINGCOOPKRC
Descripción
La variable $PINGCOOPKRC indica las unidades de control actualmente accesibles. Durante la ejecución del programa se reciben por la red del sistema
principal señales de estado de las unidades de control participantes a intervalos regulares. Si estas señales permanecen desconectadas, la unidad de control correspondiente ya no es accesible por la red.
El valor mostrado es un número íntegro, convertido a binario. La unidad de
control local (aquí: R1) no se tiene en cuenta en la visualización de la variable.
Declaración
DECL INT $PINGCOOPKRC
Ejemplo
$PINGCOOPKRC = 30 (binario: B11110)
Con 5 robots cooperantes, la variable $PINGCOOPKRC tiene en el robot R1
el valor 30, si la conexión de red al sistema principal está intacta. Este valor
se compone de lo siguiente:
R1
R2
R3
R4
R5
0
1
2
3
4
2
Codificado en binario
Valor decimal
2
1
2
2
2
2
4
8
16
2+
4+
8+
16
Robot
=
30
Indicación de variables
El bit más pequeño es siempre la unidad de control local (aquí: R1).
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
59 / 81
KUKA.RoboTeam 3.0
9.3
$LOCAL_NETWORK_OK
Descripción
La variable $LOCAL_NETWORK_OK muestra el estado de la configuración
de red local (sistema principal).
Se envía la señal cuando la variable $PINGCOOPKRC ≠ 0, es decir, cuando
existe conexión con al menos otra unidad de control del robot. Cuando la configuración de red tiene fallos o no hay ninguna conexión con otra unidad de
control del robot, se restablece la señal.
Declaración
Explicación
SIGNAL $LOCAL_NETWORK_OK $OUT[ ]
Elemento
Descripción
$LOCAL_N
ETWORK_
OK
Tipo: BOOL
Señal de salida
Indicación: La señal no se asigna por regla general a ninguna salida: SIGNAL $LOCAL_NETWORK_OK FALSE
9.4
$COMPLETE_NETWORK_OK
Descripción
La variable $COMPLETE_NETWORK_OK muestra el estado de la configuración de red del sistema principal. Las unidades de control del robot implicadas
están en la variable del sistema $COOP_KRC[ ].
La señal se usa cuando la configuración de red es correcta y hay una conexión con todas las unidades de control del robot interconectadas. Cuando
la configuración de red tiene fallos y no hay ninguna conexión con todas las
unidades de control del robot implicadas, la señal se restablece.
Declaración
Explicación
SIGNAL $COMPLETE_NETWORK_OK $OUT[ ]
Elemento
Descripción
$COMPLET
E_NETWO
RK_OK
Tipo: BOOL
Señal de salida
Indicación: La señal no se asigna por regla general a ninguna salida: SIGNAL $COMPLETE_NETWORK_OK
FALSE
9.5
$WORKSPACERESTOREACTIVE
Descripción
Con la variable $WORKSPACERESTOREACTIVE puede restablecerse el estado de la zona de trabajo.
Cuando la variable está definida en TRUE, el estado de la zona de trabajo en
la unidad de control del robot se restablece tras un arranque en frío.
En primer lugar, la unidad de control comprueba si el archivo C:\KRC\ROBOTER\Config\User\WSRestore.INI existe. Este archivo se crea automáticamente al descargar la unidad de control. Con este archivo, la unidad de control
restablece el estado de las zonas de trabajo.
Si el archivo WSRestore.INI no existe, se consultan las zonas de trabajo de
las unidades de control implicadas. A partir de estos datos se puede reconstruir las zonas de trabajo en la unidad de control actual.
La variable está definida por defecto en FALSE.
60 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
9 Variables del sistema
No se puede garantizar una reconstrucción completa consultando las
unidades de control implicadas. Por lo tanto, debe comprobarse el
estado de cada zona de control y, dado el caso, corregirse.
Declaración
9.6
DECL BOOL $WORKSPACERESTOREACTIVE
$LK_MASTER[ ]
Descripción
La variable $LK_MASTER[] indica el master de movimiento actual. El master
de movimiento (un robot o su cinemática adicional) controla el sistema de coordenadas BASE activado en ese momento del slave de movimiento. Cuando
el master de movimiento se mueve, el slave de movimiento lo sigue como corresponde.
Declaración
DECL CHAR $LK_MASTER[50]
Explicación
Elemento
Descripción
$LK_MASTER[ ]
Tipo: CHAR
Nombre del master de movimiento. El slave de
movimiento puede consultar el nombre.
Longitud máxima: 50 caracteres
9.7
$LK_SLAVES[ ]
Descripción
La variable $LK_SLAVES[] indica los slaves de movimiento actuales cuando
hay al menos otra unidad de control del robot acoplada a la unidad de control
del robot local. Eso significa que, potencialmente, todos los slaves de movimiento indicados podrían acompañar el movimiento cuando se mueva el robot
local o una cinemática externa local.
Declaración
DECL CHAR $LK_SLAVES[100]
Explicación
Elemento
Descripción
$LK_SLAVES[ ]
Tipo: CHAR
Lista de los slaves de movimiento
Longitud máxima: 100 caracteres
Indicación: Si a un slave se acopla otro slave, este no
se incorporará a la lista.
9.8
$SYNC_ID[]
Descripción
La variable $SYNC_ID[] se utiliza para la sincronización de movimiento de los
movimientos Spline. Debe definirse en todas las unidades de control del robot
participantes. Todos los robots ejecutarán de modo sincronizado los puntos
con la misma marca de sincronización.
La variable puede utilizarse únicamente en el WITH-Statement del
movimiento Spline.
En la sincronización de bloques Spline se aplican las siguientes reglas a las
marcas de sincronización:

En cada unidad de control del robot implicada debe colocarse siempre el
mismo número de marcas de sincronización por bloque Spline.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
61 / 81
KUKA.RoboTeam 3.0

Las marcas de sincronización deben disponerse en el mismo orden en
cada una de las unidades de control del robot participantes.

En el último segmento Spline de un bloque Spline no deben colocarse
marcas de sincronización. En caso de que se coloque aquí una marca de
sincronización en una unidad de control del robot, todas las demás unidades de control del robot implicadas deben asimismo ejecutarla.
Se recomienda utilizar la marca de sincronización en segmentos Spline de un bloque Spline únicamente cuando sea absolutamente imprescindible. Cuantas menos marcas de sincronización se
programen en los segmentos Spline, más uniforme será el inicio del bloque
Spline sincronizado por parte de los robots participantes.
Declaración
Ejemplo
DECL CHAR $SYNC_ID[64]
...
SLIN P2 WITH $SYNC_ID[]="M1"
...
9.9
$SYNC_LIST
Descripción
$SYNC_LIST describe todas las unidades de control participantes en la sincronización para los movimientos Spline. La variable existe como un campo
de bits relacionado con $COOP_KRC[]. El bit con el valor más reducido es
siempre el índice 1 de $COOP_KRC[].
$SYNC_LIST tiene por defecto el valor 3 (binario: B011). Si la variable no se
establece en la instrucción de sincronización, las unidades de control
$COOP_KRC[1] y $COOP_KRC[2] se sincronizarán entre sí.
La variable puede utilizarse únicamente en el WITH-Statement del
movimiento Spline.
$SYNC_LIST no puede usarse dentro de un bloque Spline.
Declaración
Ejemplo
DECL INT $SYNC_LIST
...
SLIN P3 WITH $SYNC_ID[]="M1",$SYNC_LIST='B011'
...
9.10
$CR_LK_MASTER
Descripción
La variable $CR_LK_MASTER sirve para identificar el master de movimiento
actual, con el fin de mostrar dicha información en el plugin RoboTeam. La variable es un campo de bits que describe las unidades de control del robot respecto a la variable $COOP_KRC[].
Declaración
DECL INT $CR_LK_MASTER
Explicación
Elemento
Descripción
$CR_LK_MASTER
Tipo: INT
Máscara de bits que contiene el master de movimiento actual
62 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
9 Variables del sistema
9.11
$CR_LK_SLAVES
Descripción
La variable $CR_LK_SLAVES sirve para identificar los slaves de movimiento
actuales, con el fin de mostrar dicha información en el plugin RoboTeam. La
variable es un campo de bits que describe las unidades de control del robot
respecto a la variable $COOP_KRC[].
Declaración
DECL INT $CR_LK_SLAVES
Explicación
Elemento
Descripción
$LK_SLAVES
Tipo: INT
Máscara de bits de todos los slaves de movimiento directos o indirectos de la unidad de control del robot local (= master de movimiento)
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
63 / 81
KUKA.RoboTeam 3.0
64 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
10 Programas de ejemplo
10
Programas de ejemplo
10.1
Programa de ejemplo con 2 zonas de trabajo definidas
s
Programa
1
INI
2
3
PTP HOME Vel=100 % DEFAULT
4
EXITSPACE Release All
5
LIN P1 CONT Vel=2 m/s CPDAT1 Tool[1] Base [0]
6
ENTERSPACE WORKSPACE_1 CONT
7
LIN P2 CONT Vel=2 m/s CPDAT2 Tool[1] Base [0]
8
ENTERSPACE WORKSPACE_2 CONT
9
LIN P3 CONT Vel=2 m/s CPDAT3 Tool[1] Base [0]
10
EXITSPACE WORKSPACE_1
11
LIN P4 CONT Vel=2 m/s CPDAT4 Tool[1] Base [0]
12
LIN P5 CONT Vel=2 m/s CPDAT5 Tool[1] Base [0]
13
LIN P6 CONT Vel=2 m/s CPDAT6 Tool[1] Base [0]
14
EXITSPACE WORKSPACE_2
15
LIN P7 CONT Vel=2 m/s CPDAT7 Tool[1] Base [0]
16
17
Descripción
PTP HOME Vel=100 % DEFAULT
Línea
Descripción
4
Liberación de todas las zonas de trabajo previas
Esta instrucción debería encontrarse siempre al comienzo del
programa.
6
10.2
Entrar a la zona de trabajo 1
8
Entrar a la zona de trabajo 2
10
Abandonar y liberar la zona de trabajo 1
14
Abandonar y liberar la zona de trabajo 2
Programa de ejemplo con instrucciones REMOTE
Programa
1
INI
2
3
PTP HOME Vel=100 % DEFAULT
4
5
REMOTE START Rob_2 Loadsharing
6
REMOTE START Rob_3 Loadsharing
7
REMOTEWAIT Rob_2
8
REMOTE WAIT Rob_3
9
10
REMOTE START Rob_2 Zusatzachse
11
REMOTE START Rob_3 Zusatzachse
12
REMOTE WAIT Rob_2
13
REMOTE WAIT Rob_3
14
15
Descripción
PTP HOME Vel=100 % DEFAULT
Línea
Descripción
5
Acceso al programa Loadsharing en la unidad de control R2.
La plantilla Coop Wait allí instalada registra esta solicitud de
arranque e inicia el programa Loadsharing.
7
La unidad de control R1 detiene su ejecución del programa y
espera a la finalización del programa al que se ha accedido.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
65 / 81
KUKA.RoboTeam 3.0
La rutina de consulta Coop Wait:
LOOP
;FOLD Wait for COOP_TASK[]<>"#IDLE" ;%{PE}
IF StrComp(MyToDo[],"Loadsharing",#NOT_CASE_SENS)==TRUE THEN
bWrongTask=FALSE
serviceprog ()
ENDIF
IF StrComp(MyToDo[],"Zusatzachse",#NOT_CASE_SENS)==TRUE THEN
bWrongTask=FALSE
service2ms()
ENDIF
IF bWrongTask==TRUE THEN
BAS_MSG (WrongTaskValue)
ENDIF
;FOLD ENDLOOP ;%{PE}
Los nombres de programa (Loadsharing, Eje adicional) deben declararse en el propio programa o en el archivo $config.dat.
10.3
Programa de ejemplo para el desplazamiento del reparto de cargas con 2 robots
En el siguiente ejemplo se controlan puntos de elevación de carga opuestos
para una garra cada vez. Mediante varias instrucciones GEOLINK con su correspondiente referencia a la base se acoplan los robots maestro (Master) y
esclavo (Slave) de forma temporal y geométrica. El slave sigue los movimientos del master sin conjunto de movimientos propio.
Programa del
master
Descripción
Programa del
slave
Descripción
66 / 81
1
INI
2
PTP HOME Vel=100 % DEFAULT
3
GEOLINK MASTER link1 -> R1_R2
4
PTP P1 Vel=100 % PDAT6 Tool[3]:GRIPPER(Roboter 1) Base[0]
5
PTP P2 Vel=100 % PDAT5 Tool[3]:GRIPPER_PIN(Roboter 1) Base[0]
6
GEOLINK MASTER end -> R1_R2
7
PTP HOME
8
END
Vel= 100 % DEFAULT
Línea
Descripción
3
El robot esclavo R2 se acopla al robot maestro R1.
4 ... 5
Movimientos en los que el robot esclavo sigue directamente al
robot maestro.
6
Se deshace el acoplamiento.
1
INI
2
PTP HOME Vel=100 % DEFAULT
3
GEOLINK SLAVE LIN/CIRC link1 -> R1_R2 Base[2]:LK_BASE(Roboter 1)
4
GEOLINK SLAVE LIN/CIRC end -> R1_R2 Base[0]
5
PTP HOME Vel=100 % DEFAULT
6
END
Línea
Descripción
3
El robot esclavo R1 se acopla al robot maestro R2 por medio
de la BASE de este.
4
Se deshace el acoplamiento.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
10 Programas de ejemplo
10.4
Programa de ejemplo de procedimiento dependiente del proceso
En el siguiente ejemplo, 2 slaves cooperan con un master que sujeta un componente para procesar. Las herramientas de ambos slaves se orientan por los
movimientos del componente del master. Con las instrucciones PROGSYNC
y SYNC y la correspondiente referencia a la base se acoplan ambos robots.
No existe un acoplamiento geométrico entre los slaves.
Programa del
master
1
INI
2
Start ROB_2
3
Start ROB_3
4
5
PTP HOME Vel=100% DEFAULT
6
7
PTP P1 CONT Vel=100 % PDAT1 Tool[1]:Greifer Base[0]
8
PTP P1_1 CONT Vel=100 % PDAT5 Tool[1]:Greifer Base[0]
9
;Startposition MASTER
10
11
PTP P2 Vel=100 % PDAT2 Tool[1]:Greifer Base[0]
12
;Warte auf Synchronisation von von R2 und R3
13
PROGSYNC A1 -> R1_R2_R3 WAIT
14
PROGSYNC A2 -> R1_R2_R3 WAIT
15
LIN P3 CONT Vel=2 m/s CPDAT1 Sync= ms1 -> R1_R2_R3
Tool[1]:Greifer Base[0]
16
LIN P4 CONT Vel=2 m/s CPDAT2 Sync= ms2 -> R1_R2_R3
Tool[1]:Greifer Base[0]
17
LIN P5 CONT Vel=2 m/s CPDAT3 Tool[1]:Greifer Base[0]
18
PROGSYNC A3 -> R1_R2_R3 WAIT
19
PROGSYNC A4 -> R1_R2_R3 WAIT
20
21
PTP P6 CONT Vel=100 % PDAT3 Tool[1]:Greifer Base[0]
22
PTP P7 CONT Vel=100 % PDAT4 Tool[1]:Greifer Base[0]
23
24
Descripción
Programa de
slave para el
slave 1
PTP HOME Vel=100% DEFAULT
Línea
Descripción
14
Se espera hasta que los slaves dispongan de un acoplamiento
geométrico al master.
15 … 16
Con 2 instrucciones SYNC se acopla el conjunto de los slaves
temporalmente al master.
17
El acoplamiento temporal finaliza. El acoplamiento geométrico
todavía existe.
18
El acoplamiento geométrico finaliza.
1
INI
2
3
PTP HOME_NEU Vel=100% PDAT1 Tool[1]:Brenner22_R2 Base[0]
4
5
PTP STARTPOS Vel=100 % PDAT2 Tool[1]:Brenner22_R2 Base[0]
6
PROGSYNC A1 -> R1_R2_R3 WAIT
7
LIN LINK1 Vel=2 m/s CPDAT1 Tool[1]:Brenner22_R2
Base[1]:LK_Base (Roboter 1)
8
PROGSYNC A2 -> R1_R2_R3 WAIT
9
LIN LINK2 CONT P3 Vel=2 m/s CPDAT2 Sync= ms1 --> R1_R2_R3
Tool[1]:Brenner22_R2 Base[1]:LK_Base (Roboter 1)
10
LIN LINK3 CONT P3 Vel=2 m/s CPDAT3 Sync= ms2 --> R1_R2_R3
Tool[1]:Brenner22_R2 Base[1]:LK_Base (Roboter 1)
11
PROGSYNC A3 -> R1_R2_R3 WAIT
12
LIN LINK4 Vel=2 m/s CPDAT4 Tool[1]:Brenner22_R2 Base[0]
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
67 / 81
KUKA.RoboTeam 3.0
Programa de
slave para el
slave 2
13
PROGSYNC A4 -> R1_R2_R3 WAIT
14
PTP HOME_NEU Vel=100 % PDAT3 Tool[1]:Brenner22_R2 Base[0]
1
INI
2
3
PTP HOMEPOS Vel=100% PDAT2 Tool[1]:Brenner22_R3 Base[0]
4
5
PTP STARTPOS Vel=100 % PDAT2 Tool[1]:Brenner22_R3 Base[0]
6
PROGSYNC A1 --> R1_R2_R3 WAIT
7
LIN LINK1 Vel=2 m/s CPDAT1 Tool[1]:Brenner22_R2
Base[1]:LK_Base (Roboter 1)
8
PROGSYNC A2 --> R1_R2_R3 WAIT
9
LIN LINK2 CONT P3 Vel=2 m/s CPDAT2 Sync= ms1 --> R1_R2_R3
Tool[1]:Brenner22_R3 Base[1]:LK_Base (Roboter 1)
10
LIN LINK3 CONT P3 Vel=2 m/s CPDAT3 Sync= ms2 --> R1_R2_R3
Tool[1]:Brenner22_R3 Base[1]:LK_Base (Roboter 1)
Descripción
68 / 81
11
PROGSYNC A3 --> R1_R2_R3 WAIT
12
LIN LINK4 Vel=2 m/s CPDAT4 Tool[1]:Brenner22_R3 Base[0]
13
PROGSYNC A4 --> R1_R2_R3 WAIT
14
PTP HOMEPOS Vel=100 % PDAT3 Tool[1]:Brenner22_R3 Base[0]
Línea
Descripción
7
Slave 1 / Slave 2 se acoplan al master, sus herramientas de
antorcha hacen referencia ahora al sistema de coordenadas de
la brida del master.
8
Se notifica al master el acoplamiento.
9
Acoplamiento temporal en conjunto mediante el uso de la instrucción SYNC.
12
El slave anula el acoplamiento mediante una frase nula.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
11 Eliminación de fallos
11
Eliminación de fallos
11.1
Bloqueo mutuo de robots cooperativos
Descripción
En caso de utilización conjunta de zonas de trabajo, puede producirse un bloqueo mutuo de los robots cooperativos ("Deadlock"). Un bloqueo mutuo de robots cooperativos puede producirse por los siguientes motivos:

Al inicio del programa, las zonas de trabajo utilizadas no se han liberado
con Release All.

No se ha tenido en cuenta la instrucción EXITSPACE.

El orden de acceso de las zonas de trabajo se ha establecido sin precisión.
La siguiente figura muestra en el ejemplo de los robots R1 y R2 cómo puede
producirse un bloqueo mutuo:
Ejemplo
Fig. 11-1: Bloqueo mutuo
1
Zona de trabajo bloqueada
Para el robot R1 hay 2 zonas de trabajo reservadas en el orden A1, A2. Para
R2 existe una reserva en orden inverso: A2, A1. Tras la estancia en A1, el robot R1 no puede cambiar a la zona de trabajo A2, ya que esta sigue estando
ocupada por R2. Los dos robots se bloquean mutuamente. Razón: Al programar el movimiento de trayectoria del robot R1 no se ha liberado A1. El robot
R2 no puede entrar en A1 y permanece en A2. Este bloqueo mutuo solo puede eliminarse con la intervención del operario.
11.1.1
Determinación de bloqueo mutuo
Descripción
En la ventana Estado de zona de trabajo hay una función de búsqueda para
determinar autobloqueos.
En caso de que esta función esté activada, se comprobará si el orden de las
zonas de trabajo es ascendente. Si no es así, se mostrará un mensaje de confirmación para avisar de que es posible que se produzca un autobloqueo. El
master semáforo distribuye la secuencia entre los demás participantes.
Procedimiento
manual
1. Seleccionar en el menú principal la secuencia Indicación > Zona de trabajo.
2. Pulsar Determinar.
Comienza la búsqueda de bloqueos mutuos. Si se detectan bloqueos mutuos, aparece un mensaje.
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
69 / 81
KUKA.RoboTeam 3.0
Procedimiento
automático
1. Seleccionar en el menú principal la secuencia Indicación > Zona de trabajo.
2. Pulsar Debug Con..
La comprobación automática de bloqueos mutuos está activa. Se visualiza un mensaje.
70 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
12 Servicio técnico de KUKA
12
2
Servicio técnico de KUKA
v
12.1
Requerimiento de asistencia técnica
Introducción
Esta documentación ofrece información para el servicio y el manejo y también
constituye una ayuda en caso de reparación de averías. Para más preguntas
dirigirse a la sucursal local.
Información
Para poder atender la solicitud necesitamos la siguiente información:
t

Descripción del problema, incluyendo datos acerca de la duración y la frecuencia de la avería

Información lo más detallada posible acerca de los componentes de hardware y software del sistema completo
La siguiente lista proporciona puntos de referencia acerca de qué información es a menudo relevante:

Tipo y número de serie de la cinemática, p. ej. del manipulador

Tipo y número de serie de la unidad de control

Tipo y número de serie de la alimentación de energía

Denominación y versión del System Software

Denominaciones y versiones de otros componentes de software o modificaciones

Paquete de diagnóstico KRCDiag
Adicionalmente, para KUKA Sunrise: Proyectos existentes, aplicaciones incluidas
Para versiones del KUKA System Software anteriores a V8: Archivo
del software (KRCDiag aún no está disponible aquí.)
12.2

Aplicación existente

Ejes adicionales existentes
KUKA Customer Support
Disponibilidad
El servicio de atención al cliente de KUKA se encuentra disponible en muchos
países. Estamos a su entera disposición para resolver cualquiera de sus preguntas.
Argentina
Ruben Costantini S.A. (agencia)
Luis Angel Huergo 13 20
Parque Industrial
2400 San Francisco (CBA)
Argentina
Tel. +54 3564 421033
Fax +54 3564 428877
ventas@costantini-sa.com
Australia
KUKA Robotics Australia Pty Ltd
45 Fennell Street
Port Melbourne VIC 3207
Australia
Tel. +61 3 9939 9656
info@kuka-robotics.com.au
www.kuka-robotics.com.au
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
71 / 81
KUKA.RoboTeam 3.0
72 / 81
Bélgica
Automatización KUKA + Robots N.V.
Centrum Zuid 1031
3530 Houthalen
Bélgica
Tel. +32 11 516160
Fax +32 11 526794
info@kuka.be
www.kuka.be
Brasil
KUKA Roboter do Brasil Ltda.
Travessa Claudio Armando, nº 171
Bloco 5 - Galpões 51/52
Bairro Assunção
CEP 09861-7630 São Bernardo do Campo - SP
Brasil
Tel. +55 11 4942-8299
Fax +55 11 2201-7883
info@kuka-roboter.com.br
www.kuka-roboter.com.br
Chile
Robotec S.A. (agencia)
Santiago de Chile
Chile
Tel. +56 2 331-5951
Fax +56 2 331-5952
robotec@robotec.cl
www.robotec.cl
China
KUKA Robotics China Co., Ltd.
No. 889 Kungang Road
Xiaokunshan Town
Songjiang District
201614 Shanghai
P. R. China
Tel. +86 21 5707 2688
Fax +86 21 5707 2603
info@kuka-robotics.cn
www.kuka-robotics.com
Alemania
KUKA Deutschland GmbH
Zugspitzstr. 140
86165 Augsburg
Alemania
Tel. +49 821 797-1926
Fax +49 821 797-41 1926
Hotline.robotics.de@kuka.com
www.kuka.com
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
12 Servicio técnico de KUKA
Francia
KUKA Automatisme + Robotique SAS
Techvallée
6, Avenue du Parc
91140 Villebon S/Yvette
Francia
Tel. +33 1 6931660-0
Fax +33 1 6931660-1
commercial@kuka.fr
www.kuka.fr
India
KUKA Robotics India Pvt. Ltd.
Office Number-7, German Centre,
Level 12, Building No. - 9B
DLF Cyber City Phase III
122 002 Gurgaon
Haryana
India
Tel. +91 124 4635774
Fax +91 124 4635773
info@kuka.in
www.kuka.in
Italia
KUKA Roboter Italia S.p.A.
Via Pavia 9/a - int.6
10098 Rivoli (TO)
Italia
Tel. +39 011 959-5013
Fax +39 011 959-5141
kuka@kuka.it
www.kuka.it
Japón
KUKA Japón K.K.
YBP Technical Center
134 Godo-cho, Hodogaya-ku
Yokohama, Kanagawa
240 0005
Japón
Tel. +81 45 744 7531
Fax +81 45 744 7541
info@kuka.co.jp
Canadá
KUKA Robotics Canada Ltd.
6710 Maritz Drive - Unit 4
Mississauga
L5W 0A1
Ontario
Canadá
Tel. +1 905 670-8600
Fax +1 905 670-8604
info@kukarobotics.com
www.kuka-robotics.com/canada
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
73 / 81
KUKA.RoboTeam 3.0
74 / 81
Corea
KUKA Robotics Korea Co. Ltd.
RIT Center 306, Gyeonggi Technopark
1271-11 Sa 3-dong, Sangnok-gu
Ansan City, Gyeonggi Do
426-901
Corea
Tel. +82 31 501-1451
Fax +82 31 501-1461
info@kukakorea.com
Malasia
KUKA Robot Automation (M) Sdn Bhd
South East Asia Regional Office
No. 7, Jalan TPP 6/6
Taman Perindustrian Puchong
47100 Puchong
Selangor
Malasia
Tel. +60 (03) 8063-1792
Fax +60 (03) 8060-7386
info@kuka.com.my
México
KUKA de México S. de R.L. de C.V.
Progreso #8
Col. Centro Industrial Puente de Vigas
Tlalnepantla de Baz
54020 Estado de México
México
Tel. +52 55 5203-8407
Fax +52 55 5203-8148
info@kuka.com.mx
www.kuka-robotics.com/mexico
Noruega
KUKA Sveiseanlegg + Roboter
Sentrumsvegen 5
2867 Hov
Noruega
Tel. +47 61 18 91 30
Fax +47 61 18 62 00
info@kuka.no
Austria
KUKA Roboter CEE GmbH
Gruberstraße 2-4
4020 Linz
Austria
Tel. +43 7 32 78 47 52
Fax +43 7 32 79 38 80
office@kuka-roboter.at
www.kuka.at
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
12 Servicio técnico de KUKA
Polonia
KUKA Roboter CEE GmbH Poland
Spółka z ograniczoną odpowiedzialnością
Oddział w Polsce
Ul. Porcelanowa 10
40-246 Katowice
Polonia
Tel. +48 327 30 32 13 or -14
Fax +48 327 30 32 26
ServicePL@kuka-roboter.de
Portugal
KUKA Robots IBÉRICA, S.A.
Rua do Alto da Guerra n° 50
Armazém 04
2910 011 Setúbal
Portugal
Tel. +351 265 729 780
Fax +351 265 729 782
info.portugal@kukapt.com
www.kuka.com
Rusia
KUKA Rusia OOO
1-y Nagatinskiy pr-d, 2
117105 Moskau
Rusia
Tel. +7 495 665-6241
support.robotics.ru@kuka.com
Suecia
KUKA Svetsanläggningar + Robotar AB
A. Odhners gata 15
421 30 Västra Frölunda
Suecia
Tel. +46 31 7266-200
Fax +46 31 7266-201
info@kuka.se
Suiza
KUKA Roboter Schweiz AG
Industriestr. 9
5432 Neuenhof
Suiza
Tel. +41 44 74490-90
Fax +41 44 74490-91
info@kuka-roboter.ch
www.kuka-roboter.ch
Eslovaquia
KUKA Roboter CEE GmbH
organizačná zložka
Bojnická 3
831 04 Bratislava
Eslovaquia
Tel. +420 226 212 273
support.robotics.cz@kuka.com
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
75 / 81
KUKA.RoboTeam 3.0
76 / 81
España
KUKA Robots Ibérica, S.A.
Pol. Industrial
Torrent de la Pastera
Carrer del Bages s/n
08800 Vilanova i la Geltrú (Barcelona)
España
Tel. +34 93 8142-353
comercial@kukarob.es
Sudáfrica
Jendamark Automation LTD (Agentur)
76a York Road
North End
6000 Port Elizabeth
Sudáfrica
Tel. +27 41 391 4700
Fax +27 41 373 3869
www.jendamark.co.za
Taiwán
KUKA Automation Taiwán Co. Ltd.
1F, No. 298 Yangguang ST.,
Nei Hu Dist., Taipei City, Taiwan 114
Taiwán
Tel. +886 2 8978 1188
Fax +886 2 8797 5118
info@kuka.com.tw
Tailandia
KUKA (Tailandia) Co. Ltd.
No 22/11-12 H-Cape Biz Sector Onnut
Sukhaphiban 2 road, Prawet
Bangkok 10250
Tailandia
Tel. +66 (0) 90-940-8950
HelpdeskTH@kuka.com
República Checa
KUKA Roboter CEE GmbH
organizační složka
Pražská 239
25066 Zdiby
República Checa
Tel. +420 226 212 273
support.robotics.cz@kuka.com
Hungría
KUKA Robotics Hungaria Kft.
Fö út 140
2335 Taksony
Hungría
Tel. +36 24 501609
Fax +36 24 477031
info@kuka-robotics.hu
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
12 Servicio técnico de KUKA
EE. UU.
KUKA Robotics Corporation
51870 Shelby Parkway
Shelby Township
48315-1787
Michigan
EE. UU.
Tel. +1 866 873-5852
Fax +1 866 329-5852
info@kukarobotics.com
www.kukarobotics.com
Reino Unido
KUKA Robotics UK Ltd
Great Western Street
Wednesbury West Midlands
WS10 7LL
Reino Unido
Tel. +44 121 505 9970
Fax +44 121 505 6589
service@kuka-robotics.co.uk
www.kuka-robotics.co.uk
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
77 / 81
KUKA.RoboTeam 3.0
78 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
Índice
Índice
Símbolos
$COMPLETE_NETWORK_OK, variable del sistema 60
$COOP_KRC , variable del sistema 59
$CR_LK_MASTER, variable del sistema 62
$CR_LK_SLAVES, variable del sistema 63
$LK_MASTER , variable del sistema 61
$LK_SLAVES , variable del sistema 61
$LOCAL_NETWORK_OK, variable del sistema
60
$PINGCOOPKRC, variable del sistema 59
$SYNC_ID\, variable del sistema 61
$SYNC_LIST, variable del sistema 62
$WORKSPACERESTOREACTIVE, variable del
sistema 60
H
Hardware 19
A
Acceso remoto 50
Acoplamiento geométrico 11, 48
Acoplamiento, geométrico 48
Actualizar, RoboTeam 19
L
Licencias 8
LIN/CIRC/SLIN/SCIRC con SYNC, formulario
inline 45
B
Bloque Spline con SYNC, formulario inline 47
Bloqueo mutuo de robots cooperativos 69
Bloqueo mutuo, determinación 69
C
Cambio de unidad de control, gestor de
conexiones 38
Cambio de unidad de control, plugin RoboTeam
38
CancelProgSync() 56
Conectividad del bus de sistema 21
Conectividad, comprobación 32
Configuración 21
Conocimientos, necesarios 7
Cursos de formación 7
D
Descripción del producto 9
Desinstalar, RoboTeam 20
Desplazamiento del reparto de cargas 12
Desplazamiento dependiente de proceso 13
Documentación, robot industrial 7
E
Eliminación de fallos 69
Esclavo 8
Estado de una zona de trabajo, restauración 41
Estado de una zona de trabajo, visualización 40
EXITSPACE, formulario inline 53
G
GEOLINK, formulario inline 48
Gestor de conexiones 35
Grupo destinatario 7
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
I
Indicaciones 7
Indicaciones de seguridad 7
Instalación 19
Instalar, RoboTeam 19
Instrucciones de sincronización, simulación 39
Introducción 7
K
KLI 8
KLI, conectividad 22
KUKA Customer Support 71
M
Maestro 8
Master de movimiento 28
Master de tiempo 27
Medición 31
Medición acoplamiento geométrico, comprobación 32
Menús 35
Modelo para el RoboTeam 24
O
Open-Source 8
Operaciones, sincronización 39
Operación 35
P
Participante RoboTeam 8
Plantilla para RoboTeam 24
Plugin RoboTeam 36
Principio master-slave ampliado 14
Programas de ejemplo 65
PROGSYNC, formulario inline 43
Proyecto de RoboTeam, configurar (WorkVisual) 24
Proyecto de RoboTeam, crear (WorkVisual) 24
Puesta en servicio 21
R
REMOTE START, formulario inline 50
REMOTE WAIT, formulario inline 51
RemoteCmd() 55
RemoteRead() 57
Requerimiento de asistencia técnica 71
Requisitos previos del sistema 19
RoboTeam 8
79 / 81
KUKA.RoboTeam 3.0
S
SCIRC en el bloque Spline con SYNC, formulario inline 47
Seguridad 17
Servicio técnico de KUKA 71
Signos especiales 43
Sincronización de forma temporal, movimientos
44
Sincronización de movimiento 10
Sincronización de programa 9
Sincronización temporal, avance del programa
43
Sincronización temporal, bloques Spline 45
Sincronización temporal, conjuntos de movimientos 44
SLIN en el bloque Spline con SYNC, formulario
inline 47
smartPAD común 26
Software 19
SPL en el bloque Spline con SYNC, formulario
inline 47
SyncCmd() 55
T
Terminología utilizada 8
Terminología, utilizada 8
U
Unidad de control del robot, cambiar 38
USB 8
V
Variables del sistema 59
Z
Zona de trabajo 8, 15
Zona de trabajo, abandono 52
Zona de trabajo, acceso 51
Zonas de trabajo, RoboTeam 30
80 / 81
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
KUKA.RoboTeam 3.0
Edición: 12.04.2018 Versión: KST RoboTeam 3.0 V2
81 / 81
Download