ES2647269T3 - Método y sistema de control para la sincronización de un robot y un transportador - Google Patents
Método y sistema de control para la sincronización de un robot y un transportador Download PDFInfo
- Publication number
- ES2647269T3 ES2647269T3 ES08162897.6T ES08162897T ES2647269T3 ES 2647269 T3 ES2647269 T3 ES 2647269T3 ES 08162897 T ES08162897 T ES 08162897T ES 2647269 T3 ES2647269 T3 ES 2647269T3
- Authority
- ES
- Spain
- Prior art keywords
- robot
- conveyor
- control program
- speed
- waiting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000003213 activating effect Effects 0.000 claims abstract description 16
- 230000001360 synchronised effect Effects 0.000 claims abstract description 7
- 239000003973 paint Substances 0.000 claims description 36
- 239000007921 spray Substances 0.000 claims description 16
- 238000005507 spraying Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 239000000725 suspension Substances 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000007592 spray painting technique Methods 0.000 claims description 3
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000007704 transition Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 238000010422 painting Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009931 harmful effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
- G05B19/4182—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell manipulators and conveyor only
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0093—Programme-controlled manipulators co-operating with conveyor means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B05—SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
- B05B—SPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
- B05B13/00—Machines or plants for applying liquids or other fluent materials to surfaces of objects or other work by spraying, not covered by groups B05B1/00 - B05B11/00
- B05B13/02—Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work
- B05B13/04—Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation
- B05B13/0431—Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation with spray heads moved by robots or articulated arms, e.g. for applying liquid or other fluent material to 3D-surfaces
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39102—Manipulator cooperating with conveyor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45013—Spraying, coating, painting
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45065—Sealing, painting robot
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Método para controlar un robot que realiza movimientos de acuerdo con un programa de control, comprendiendo dicho método las etapas de: activar acciones programadas del robot (1), sincronizadas con un transportador (3) para mover un objeto de trabajo (2) para dicho robot; cada vez que el controlador lee una instrucción de movimiento de posición en el programa de control, determinar si una velocidad del transportador (3) se ha desviado de una velocidad nominal; si se determina que dicha velocidad de dicho transportador (3) se ha desviado, realizar las etapas adicionales de: crear una nueva posición de espera (14) en dicho programa de control, en donde cada posición en el programa de control es una posición de espera potencial; activar dicha posición de espera (14) para dicho robot (1); y reanudar dicho programa de control de manera que dicho programa de control continúe cuando dicho objeto de trabajo (2) esté en dicha nueva posición de espera (14).
Description
5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Método y sistema de control para la sincronización de un robot y un transportador Campo de la invención
La presente invención se refiere en general a robots industriales, y más en concreto a la sincronización de robots industriales y transportadores, en particular cuando se producen paradas.
Antecedentes
Los robots industriales se utilizan a menudo en procesos de producción cuando se realizan movimientos repetitivos de manera rápida y/o precisa. Por ejemplo, se pueden utilizar robots para operaciones de pintura pulverizada, soldadura, ensamblaje, recogida y colocación, etc. Además, los robots industriales se usan a menudo en combinación con transportadores. El transportador mueve después el objeto de trabajo por una trayectoria, mientras que, al mismo tiempo, el robot industrial realiza tareas relacionadas con el objeto de trabajo.
A veces el transportador se detiene. Esto puede deberse, por ejemplo, a problemas en otro punto de la línea de producción o a algún otro motivo. Aunque el robot normalmente mantiene un sistema de coordenadas sincronizado con la posición del objeto de trabajo, la parada puede hacer que el robot no pueda alcanzar una parte deseada del objeto de trabajo, que habría estado a su alcance si el transportador se hubiera mantenido en movimiento. Este tipo de problema se conoce como limitación cinemática. En consecuencia, las tareas programadas no se pueden realizar según lo planeado.
Una forma conocida para tratar las limitaciones cinemáticas en las paradas del transportador es incluir posiciones de espera explícitas en el programa de movimiento para el robot. La colocación de estas líneas es a discreción del programador y la cantidad de trabajo y el tiempo invertido en esta tarea pueden ser considerables.
Otra forma de aliviar el problema de limitación cinemática es detener el programa en el siguiente punto si el transportador se detiene y apagar un aplicador de pintura. Si el aplicador de pintura está encendido, el programa se detendrá en el siguiente punto donde la pintura está desactivada. Por tanto, el resultado de la pintura se conservará, incluso aunque el transportador se detenga. Cuando el transportador arranca de nuevo, el programa de robot continuará. Esta característica tiene la limitación de que pondrá a prueba la condición mencionada anteriormente solo en puntos del programa en los que la pintura está desactivada. En consecuencia, si el aplicador de pintura está encendido en cada uno de estos puntos a lo largo de la trayectoria, el robot seguirá pulverizando sin detener el programa, lo que derivaría en un riesgo significativo de limitación cinemática durante largos periodos de aplicación de pintura.
El documento US 4170751 presenta un robot industrial para pintar mediante pulverización piezas de trabajo portadas por un transportador que está provisto de un control para permitir que la secuencia de robot programada continúe de manera sincrónica con el movimiento del transportador siempre que el transportador mantenga una velocidad normal. Sin embargo, cuando el transportador se detiene, el control mantiene la operación del robot hasta que la pistola de pulverización se mueva a un lugar de parada seguro para evitar una aplicación excesiva de pintura en una parte de una pieza de trabajo. Cuando el transportador se pone en marcha, el robot permanece inmóvil hasta que la pieza de trabajo se aproxima a la velocidad normal y se mueve a una posición sincronizada con la posición del robot
El documento WO 2005/063454 describe un método para controlar un robot que se usa conjuntamente con al menos otro robot para realizar una operación en uno o más objetos de trabajo. Si se produce una parada antes de una tarea que está realizando un robot, el robot completa la tarea presente pero no pasa a la próxima tarea. Como el robot solo puede esperar al final de una tarea, es posible que el robot tenga que continuar durante un período de tiempo significativo antes de que llegue a ese punto. Esto puede ocasionar discrepancias entre la posición esperada del objeto de trabajo y la posición real del objeto de trabajo en el transportador parado. De ese modo, con el método descrito en el documento WO 2005/063454, pueden ocurrir los mismos problemas que con las limitaciones cinemáticas analizadas anteriormente relacionadas con paradas.
Breve descripción de la invención
Un objeto de la presente invención es mejorar el control de robots cuando se produzcan paradas de transportador.
De acuerdo con un primer aspecto de la invención, se presenta un método de acuerdo con la reivindicación independiente 1.
Al crearse dinámicamente la posición de espera, esta se puede crear en una posición que puede ser anterior a una posición de espera preprogramada, lo que reduce cualquiera de las desventajas de la parada. Además, no es necesario preprogramar posiciones de espera, lo que reduce el riesgo de errores y también reduce el tiempo de preparación para la producción. La generación dinámica de posiciones de espera también permite cambios más rápidos entre diferentes objetos de trabajo, ya que no hay que mostrar las posiciones de espera en una programación.
5
10
15
20
25
30
35
40
45
50
La etapa de activación de la posición de espera puede implicar hacer que el robot esté inmóvil.
La etapa de creación de una nueva posición de espera puede implicar crear una pluralidad de posiciones de espera, y la etapa de activación de la posición de espera implica activar el movimiento del robot entre las posiciones de espera.
La determinación de que la velocidad del transportador se ha desviado de una velocidad nominal puede implicar determinar que el transportador se ha detenido.
La etapa de activación de la posición de espera puede incluir activar movimientos del robot de manera que una parte predeterminada del robot esté en una posición correspondiente a la posición de espera, y la etapa de reanudación del programa de control puede incluir activar movimientos del robot de manera que la parte predeterminada del robot esté en la misma posición que antes de la etapa de activación de la posición de espera.
La etapa de suspensión de movimiento puede incluir activar movimientos del robot de manera que una parte predeterminada del robot esté en una posición correspondiente a la posición de espera, y la etapa de reanudación del programa de control puede incluir activar movimientos del robot de manera que la parte predeterminada del robot esté en la misma posición que antes de la etapa de suspensión.
El método puede comprender, además, después de la etapa de determinación y antes de la etapa de reanudación, la etapa de: suspender la pulverización de pintura realizada por el robot sobre el objeto de trabajo. La reanudación del programa de control puede implicar reanudar la pulverización de pintura.
La suspensión y reanudación de la pulverización de pintura se puede realizar cuando un aplicador de pintura del robot ha alcanzado una determinada distancia desde el objeto de trabajo. Esto permite una transición suave desde la pulverización de pintura hasta la parada de la pulverización, y de manera similar, una transición suave cuando se reanuda la pulverización de pintura. Esto resuelve el problema que puede surgir si la pulverización de pintura se detiene o se reanuda de manera brusca, dando como resultado artefactos no deseados y visibles y/o táctiles procedentes de la pintura suspendida.
El método puede comprender además las etapas de: en respuesta a la determinación de que la velocidad del transportador se ha desviado de la velocidad nominal, crear una superficie virtual; en respuesta al hecho de que una parte predeterminada del robot pasa por la superficie virtual en una primera dirección, suspender la pulverización de pintura; y en respuesta al hecho de que la parte predeterminada del robot pasa por la superficie virtual en una segunda dirección, siendo la segunda dirección opuesta a la primera dirección, reanudar la pulverización de pintura.
La determinación de que la velocidad del transportador se ha desviado implica determinar que un tiempo de retraso acumulado del transportador sobrepasa un tiempo de retraso umbral.
Un segundo aspecto de la invención es un sistema de control de acuerdo con la reivindicación independiente 10.
Un tercer aspecto de la invención es un robot que comprende un sistema de control de acuerdo con el segundo aspecto.
El robot puede ser un robot de pintura.
Un cuarto aspecto de la invención es un producto de programa informático que incluye un código de software, que, cuando se ejecuta en un controlador de un robot, realiza el método de acuerdo con el primer aspecto.
Debe apreciarse que siempre que se use el término superficie en este documento, se debe interpretar como una parte de espacio que tiene longitud y anchura, pero no grosor. En concreto, superficie no tiene que referirse a una superficie material física.
Debe apreciarse que cualquier característica de los aspectos primero, segundo, tercero y cuarto puede aplicarse, cuando sea adecuado, a cualquier otro aspecto.
En general, todos los términos utilizados en las reivindicaciones deben interpretarse de acuerdo con su significado ordinario en el campo técnico, a menos que explícitamente se defina lo contrario en este documento. Todas las referencias a «un/uno/el elemento, aparato, componente, medio, etapa, etc.» deben interpretarse abiertamente refiriéndose a al menos un ejemplo del elemento, aparato, componente, medio, etapa, etc., a menos que se indique explícitamente lo contrario. Las etapas de cualquier método descrito aquí no tienen que realizarse en el orden exacto descrito, a menos que se indique explícitamente.
Breve descripción de los dibujos
La invención se describe a continuación, a modo de ejemplo, con referencia a los dibujos adjuntos, en los que:
La figura 1 es un diagrama esquemático que ilustra una vista superior de un robot industrial de acuerdo con una realización de la presente invención,
5
10
15
20
25
30
35
40
45
50
55
La figura 2 es un diagrama esquemático que ilustra la ejecución del programa de control del robot de la figura 1, sin interrupciones,
La figura 3 es un diagrama esquemático que ilustra la ejecución del programa del robot de la figura 1, en el que hay una parada de transportador no controlada,
La figura 4 es un diagrama esquemático que ilustra la ejecución del programa del robot de la figura 1, en el que hay una parada de transportador controlada,
La figura 5 es un diagrama esquemático que ilustra la trayectoria de una ejecución de programa del robot de la figura
1, y
La figura 6 es un diagrama esquemático que ilustra la trayectoria de una ejecución de programa del robot de la figura 1, en la que hay una interrupción.
Descripción detallada de realizaciones preferidas
La presente invención se describirá a continuación más detalladamente con referencia a partir de ahora a los dibujos adjuntos, en los que se muestran algunas realizaciones de la invención. Sin embargo, esta invención puede incorporarse de muchas formas diferentes y no debe interpretarse como limitada a las realizaciones expuestas aquí; más bien, estas realizaciones se proporcionan a modo de ejemplo, de modo que esta descripción será exhaustiva y completa, y transmitirá completamente el ámbito de aplicación de la invención a los expertos en la materia. Los números iguales se refieren a elementos similares en toda la descripción.
La figura 1 es un diagrama esquemático que ilustra una vista superior de un robot industrial en una realización de la presente invención. El robot industrial 1 se coloca cerca de un transportador 3. En el transportador 3 hay un objeto de trabajo 2. Debe observarse que el objeto de trabajo 2 puede consistir en una o más piezas distintas. El robot industrial 1 puede ser, por ejemplo, un robot industrial de ejes múltiples (por ejemplo, de seis ejes) 1. El robot industrial 1 puede usarse siempre que se desee para realizar acciones en el objeto de trabajo 2 en un transportador. Típicamente, el robot 1 se usa siempre que se vayan a realizar tareas repetitivas de manera rápida y precisa, programadas previamente, por ejemplo, para operaciones de pintura pulverizada, soldadura, ensamblaje, recogida y colocación, etc. A continuación, se pueden conectar herramientas adecuadas 9 a un brazo 4 del robot 1. El objeto de trabajo 2 puede ser, por ejemplo, una carrocería de automóvil. El brazo 4 del robot se controla activando el movimiento giratorio de uno o más de los ejes del robot. De esta manera, el robot 1 puede realizar tareas en el objeto de trabajo 2 a medida que el objeto de trabajo es movido por el transportador 3, como se indica con una flecha 5. El robot tiene un área de trabajo potencial 9 a la cual puede llegar. El robot puede contener varias unidades de procesamiento central, CPUs. Una CPU es una CPU principal, que es la responsable de ejecutar programas de movimiento, también conocidos como programas de control. Tal programa de movimiento contiene varias instrucciones de movimiento de posición, cada una indicando cómo se debe mover el robot. Otras CPU se utilizan normalmente para tareas específicas, tales como entrada/salida, movimiento, etc.
La figura 2 es un diagrama esquemático que ilustra la ejecución de programa de control del robot de la figura 1, sin interrupciones. El eje horizontal representa el tiempo y el eje vertical representa la posición del objeto de trabajo 2, real o estimada.
Un movimiento lineal del objeto de trabajo 2 da como resultado una línea recta 7 para el transportador 3. Una línea discontinua 6 representa la ejecución de programa del programa de control, con respecto al movimiento estimado del objeto de trabajo 2. Es decir, hasta donde conoce el programa de control, el objeto de trabajo 2 está en la posición (coordenada vertical) indicada con la línea discontinua 6. El programa de control contiene instrucciones para realizar tareas deseadas en el objeto de trabajo. Para realizar estas tareas deseadas en el objeto de trabajo 2 en movimiento sobre el transportador 3, el programa de control activa movimientos y acciones deseados del robot 1, mientras que al mismo tiempo se sincroniza con el transportador 3. El controlador recibe la entrada para indicar el movimiento del transportador, permitiendo que el robot se mantenga sincronizado con el movimiento del objeto de trabajo 2. La entrada puede ser, por ejemplo, impulsos que representan puntos equidistantes de longitudes conocidas del transportador. Esta entrada también se puede usar para otros fines, tales como para determinar la posición o la velocidad del transportador 3, tal como las situaciones que se describen a continuación. En la ejecución de programa 6, se indican varios puntos 10, 11, 12.
En el ejemplo que se ilustrada en la figura 2, no hay interrupciones. Esto se indica mediante un aumento continuo en la posición de la línea de transportador continua 7 a lo largo del tiempo. La línea de ejecución de programa discontinua 6 sigue la línea de transportador 7, por lo que el robot 1 realiza las acciones en el objeto de trabajo móvil 2 según se haya programado.
La figura 3 es un diagrama esquemático que ilustra la ejecución de programa del robot de la figura 1, donde hay una parada de transportador no controlada. En un tiempo 20, el transportador 3 se detiene, y el transportador 3 comienza a moverse nuevamente en un tiempo 21. La parada entre los tiempos 20 y 21 se indica por el hecho de que la línea de transportador continua 7 es horizontal entre estos dos tiempos 20, 21. Es decir, el tiempo pasa sin movimiento del objeto de trabajo 2 en el transportador. Al mismo tiempo, la ejecución de programa, indicada con la línea discontinua
5
10
15
20
25
30
35
40
45
50
55
6, continúa como si el objeto de trabajo 2 continuara moviéndose. Esto puede generar limitaciones cinemáticas como resultado del área de trabajo limitada 9.
La figura 4 es un diagrama esquemático que ilustra la ejecución del programa del robot de la figura 1, donde hay una parada de transportador controlada. Al igual que en la figura 3, hay una parada de transportador entre los tiempos 20 y 22. Aquí, sin embargo, un controlador del robot 1 reconoce la parada en algún punto después de la parada en el tiempo 20 y suspende el programa en el tiempo 21.
La desviación del transportador con respecto a una velocidad nominal se puede detectar, por ejemplo, en cualquiera o en cualquier combinación de cualquiera de las siguientes tres formas:
En la primera alternativa, hay una señal digital que indica que la velocidad del transportador está por debajo de una velocidad umbral. En una realización, las velocidades por debajo de esta velocidad umbral se consideran cero.
En la segunda alternativa, la posición real del transportador se compara con una posición de transportador de referencia basada en una medición de tiempo desde el comienzo del programa multiplicada por la velocidad nominal (esperada) del transportador.
En la tercera alternativa, la posición real del transportador se registra en cada posición programada ejecutando el programa con el transportador moviéndose a la velocidad nominal correcta, en un «modo de aprendizaje» especial. Las posiciones del transportador se incluirán y guardarán después junto con el programa. Cuando el programa se ejecuta posteriormente en una producción normal, la posición registrada y real se puede comparar para determinar si el transportador está en su posición correcta.
La velocidad nominal puede ser una velocidad configurada, o puede variar de un programa a otro. Alternativamente, la velocidad nominal es una velocidad del transportador que se mide en un momento en el que el robot y el transportador están funcionando normalmente. Además, la velocidad nominal puede ser una velocidad que sea la misma para toda una línea de producción de toda la planta, o podría ser una velocidad que pertenezca solo a un subconjunto de la planta, tal como solo la etapa de producción en cuestión.
Debe apreciarse que el transportador puede no detenerse por completo. El transportador también puede disminuir la velocidad, por lo que el controlador reconoce la reducción de velocidad y actúa de la misma manera. El robot tiene una velocidad nominal normal, por lo que se puede detectar cualquier desviación con respecto a la misma. Se puede considerar que la desviación se produce si la velocidad del transportador 3 se desvía de la velocidad nominal más de un porcentaje predeterminado. Alternativamente, se considera que el transportador 3 se desvía de la velocidad nominal si un tiempo de retraso acumulado del transportador sobrepasa un tiempo de retraso umbral.
Cuando el programa se suspende, se puede ejecutar una rutina de espera. En un caso, la rutina de espera es tan simple como mantener el robot inmóvil, opcionalmente precedida por el alejamiento del robot del objeto de trabajo 2. Debe observarse que la posición 14 en la ejecución de programa, correspondiente al punto 11, donde la ejecución de programa se suspende, no es una posición de espera preprogramada. Por el contrario, el punto 14 es una posición de espera generada dinámicamente.
Cada vez que el controlador lee una instrucción de movimiento de posición en el programa de movimiento, comprueba si tiene que esperar al transportador. Si esto es así, el controlador crea una posición de espera basada en la posición incluida en las instrucciones de movimiento. En consecuencia, cada posición programada es una posición de espera potencial. Además, puede haber situaciones en las que se creen posiciones de espera entre posiciones ya programadas. La función puede activarse y desactivarse en cualquier parte del programa mediante una instrucción de programa tal como la insertada por un programador. Esto permite que el programador, por ejemplo, excluya la posibilidad de crear posiciones de espera en partes sensibles del programa de movimiento donde una posición de espera sería perjudicial para el resultado del programa.
En el estado de la técnica, las posiciones de espera en el programa de control para el robot tenían que preprogramarse, por ejemplo, introduciendo manualmente posiciones de espera en el programa o ejecutando una o más ejecuciones de aprendizaje de un programa de control de un robot para establecer la posición de espera en determinados puntos del programa de control.
Además, por ejemplo, con robots de pintura, estos ahora a menudo mantienen el aplicador de pintura, tal como un aplicador de pulverización, en uso de manera continua durante largos periodos de tiempo, conocido en la técnica como el principio de Permanencia. Con la presente realización, se pueden crear posiciones de espera incluso en una posición del programa donde el aplicador estaría en uso, reduciendo cualquier efecto nocivo de las paradas. A continuación, se proporcionan más detalles en combinación con las figuras 5 y 6.
En el tiempo 22, el transportador 3 arranca de nuevo. En algún punto después del inicio, esto es detectado por el controlador del robot 1. En el tiempo 23, el transportador 3 ha alcanzado la posición 14 del programa de control, por lo que la ejecución de programa se reanuda en el punto 11'. El controlador sabe cuándo reanudar la ejecución de programa midiendo el tiempo entre 20 y 21, multiplicando este tiempo por la velocidad del transportador y agregando la distancia resultante a la posición 15 cuando el transportador se detuvo. Es decir, el controlador calcula la posición
5
10
15
20
25
30
35
40
45
50
14 y se reanuda cuando el transportador está en, o se aproxima a, esta posición 14. Después del tiempo 23, el transportador 3 y la ejecución de programa se sincronizan nuevamente.
Se debe tener en cuenta que si la parada, indicada por los tiempos 20 y 22 es muy corta, la parada se puede ignorar opcionalmente. Sin embargo, si no se compensa con una suspensión del programa de control, la parada breve dará lugar a una discrepancia entre la ejecución de programa 6 y el transportador 7. Una acumulación de varias paradas relativamente cortas puede dar como resultado el mismo problema que una parada larga. Por tanto, en una realización, la parada se determina como un detonante para crear una posición de espera si una acumulación de paradas sobrepasa un tiempo umbral. La acumulación se calcula después a partir de la corrección de posición de espera anterior más reciente, o desde el inicio de la producción, si aún no se ha creado una posición de espera.
La figura 5 ilustra la trayectoria de una ejecución de programa del robot de la figura 1. En esta ejecución de programa no hay interrupciones. El programa se ejecuta sin interrupciones desde el punto 10 hasta el punto 11 y finalmente hasta el punto 12, que corresponden a los puntos 10, 11 y 12 de la figura 2.
La figura 6 ilustra la trayectoria de una ejecución de programa del robot de la figura 1, donde hay una interrupción. En algún punto antes del punto 11, el controlador del robot detecta que el transportador se ha parado. El controlador crea entonces una posición de espera en el punto 11.
Además, se crea una superficie virtual 16. Esta superficie virtual 16 es una construcción geométrica en el espacio (es decir, no es una superficie física), que se utiliza para controlar una herramienta del robot 1. Por ejemplo, si la herramienta es un aplicador de pintura pulverizada, el aplicador se desactiva cuando una parte del robot 1, por ejemplo, el aplicador, pasa por la superficie virtual 16. El paso por la superficie virtual puede determinarse, por ejemplo, cuando cualquier parte del aplicador (o cualquier otra parte predeterminada del robot industrial 1) pasa por la superficie virtual 16, o cuando un punto específico del aplicador (o cualquier otra parte predeterminada del robot industrial 1) pasa por la superficie 16. El robot espera después en la posición 11 hasta que el controlador determina que es el momento de reanudar el programa. Cuando la misma parte del robot que antes, por ejemplo, el aplicador, pasa por la superficie virtual (ahora en la dirección opuesta a la anterior), el aplicador se activa. La superficie virtual 16 se crea a cierta distancia del objeto de trabajo 2. Esto permite una transición suave desde la pulverización de pintura hasta la detención de la pulverización y, de manera similar, una transición suave cuando se reanuda la pulverización de pintura. Esto resuelve el problema que puede surgir si la pulverización de pintura se detiene o se reanuda de manera brusca, dando como resultado artefactos no deseados y visibles y/o táctiles a partir de la pintura suspendida. La superficie virtual 16 puede tener cualquier geometría adecuada, que incluye, aunque no se limita a, un plano, una superficie esférica parcial, cualquier otra superficie curvada o una superficie virtual con cualquier otra forma adecuada.
Cabe señalar que no es necesario crear una superficie virtual para lograr este efecto. Siempre que la pulverización se detenga o se reanude a una distancia del objeto de trabajo 2, se reduce significativamente el riesgo de artefactos visibles procedentes de la pulverización en suspensión. Por ejemplo, el aplicador de pulverización se puede desactivar cuando alcanza una determinada distancia desde el objeto de trabajo, o el aplicador de pulverización se puede desactivar una vez que el robot descansa en su posición de espera.
En otra realización, se crea una posición replegada en función de la posición programada, alejando así el aplicador del objeto. Esto creará una trayectoria fuera de la trayectoria ya programada.
Alternativamente o de manera adicional, la pintura puede suspenderse/iniciarse después de un tiempo de retraso desde la posición programada.
Si no se desea una nueva trayectoria fuera de la trayectoria ya programada, el controlador puede crear una superficie virtual para suspender la pintura a lo largo de la trayectoria antes de que el robot se detenga. En este caso, el robot invertirá su marcha a lo largo de la trayectoria hasta que alcance una posición antes de la superficie virtual donde espera el transportador y después usa la misma superficie virtual para comenzar a pintar nuevamente.
La pintura también puede suspenderse/iniciarse después de un tiempo de retraso desde la posición programada
Para todos los casos, la pintura/flujo de aire también puede disminuirse gradualmente al suspenderse la pintura y volver a aumentarse gradualmente al comenzar. El período de disminución y aumento gradual se puede ajustar.
Cabe señalar que el método descrito anteriormente puede almacenarse como un programa informático para su ejecución en un controlador de un robot.
Claims (12)
- 51015202530354045REIVINDICACIONES1. Método para controlar un robot que realiza movimientos de acuerdo con un programa de control, comprendiendo dicho método las etapas de:activar acciones programadas del robot (1), sincronizadas con un transportador (3) para mover un objeto de trabajo (2) para dicho robot;cada vez que el controlador lee una instrucción de movimiento de posición en el programa de control, determinar si una velocidad del transportador (3) se ha desviado de una velocidad nominal;si se determina que dicha velocidad de dicho transportador (3) se ha desviado, realizar las etapas adicionales de: crear una nueva posición de espera (14) en dicho programa de control, en donde cada posición en el programa de control es una posición de espera potencial; activar dicha posición de espera (14) para dicho robot (1); y reanudar dicho programa de control de manera que dicho programa de control continúe cuando dicho objeto de trabajo (2) esté en dicha nueva posición de espera (14).
- 2. Método de acuerdo con la reivindicación 1, en el que dicha etapa de activación de dicha posición de espera (14) implica hacer que dicho robot esté inmóvil.
- 3. Método de acuerdo con la reivindicación 1, en el que dicha etapa de creación de una nueva posición de espera (14) implica crear una pluralidad de posiciones de espera, ydicha etapa de activación de dicha posición de espera implica activar el movimiento de dicho robot entre dichas posiciones de espera.
- 4. Método de acuerdo con cualquiera de las reivindicaciones 1 a 3, en el que dicha determinación de que dicha velocidad de dicho transportador (3) se ha desviado de una velocidad nominal implica determinar que dicho transportador se ha detenido.
- 5. Método de acuerdo con cualquiera de las reivindicaciones anteriores, en el quedicha etapa de activación de dicha posición de espera (14) incluye activar movimientos de dicho robot (1) de manera que una parte predeterminada de dicho robot (1) esté en una posición correspondiente a dicha posición de espera (14), ydicha etapa de reanudación de dicho programa de control incluye activar movimientos de dicho robot (1) de manera que dicha parte predeterminada de dicho robot (1) esté en la misma posición que antes de dicha etapa de activación de dicha posición de espera (14).
- 6. Método de acuerdo con cualquiera de las reivindicaciones anteriores, que comprende, además, después de dicha etapa de determinación y antes de dicha etapa de reanudación, la etapa de:suspender la pulverización de pintura realizada por el robot (1) sobre dicho objeto de trabajo (2), yen el que dicha etapa de reanudación de dicho programa de control implica reanudar dicha pulverización de pintura.
- 7. Método de acuerdo con la reivindicación 6, en el que dicha etapa de suspensión de pulverización de pintura se realiza cuando un aplicador de pintura de dicho robot ha alcanzado una cierta distancia desde dicho objeto de trabajo.
- 8. Método de acuerdo con la reivindicación 6 o 7, que comprende además las etapas de:en respuesta a dicha determinación de que la velocidad de dicho transportador se ha desviado de dicha velocidad nominal, crear una superficie virtual;en respuesta al hecho de que una parte predeterminada de dicho robot pasa por dicha superficie virtual en una primera dirección, suspender la pulverización de pintura; yen respuesta al hecho de que dicha parte predeterminada de dicho robot pasa por dicha superficie virtual en una segunda dirección, siendo dicha segunda dirección opuesta a dicha primera dirección, reanudar dicha pulverización de pintura.
- 9. Método de acuerdo con cualquiera de las reivindicaciones anteriores, en el que dicha determinación de que la velocidad de dicho transportador se ha desviado de dicha velocidad nominal implica determinar que un tiempo de retraso acumulado de dicho transportador sobrepasa un tiempo de retraso umbral.
- 10. Sistema de control para un robot (1), comprendiendo dicho sistema de control un controlador, en el que:dicho controlador está configurado para activar acciones programadas del robot (1), sincronizadas con un transportador (3) para mover un objeto de trabajo (2) para dicho robot;7dicho controlador está configurado para determinar, cada vez que el controlador lee una instrucción de movimiento de posición en un programa de control, si una velocidad del transportador (3) se ha desviado de una velocidad nominal;dicho controlador está configurado para, si se determina que dicha velocidad de dicho transportador (3) se ha 5 desviado, crear una nueva posición de espera (14) en dicho programa de control, en donde cada posición en el programa de control es una posición de espera potencial; para activar dicha posición de espera (14) para dicho robot; y para reanudar dicho programa de control de manera que dicho programa de control continúe cuando dicho objeto de trabajo (2) esté en dicha nueva posición de espera (14).
- 11. Robot que comprende un sistema de control de acuerdo con la reivindicación 10.10 12. Robot de acuerdo con la reivindicación 11, en el que dicho robot es un robot de pintura.
- 13. Producto de programa informático que incluye un código de software, que, cuando se ejecuta en un controlador de un robot, realiza el método de acuerdo con cualquiera de las reivindicaciones 1 a 9.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP08162897.6A EP2159657B1 (en) | 2008-08-25 | 2008-08-25 | Method and control system for synchronisation of robot and conveyor |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2647269T3 true ES2647269T3 (es) | 2017-12-20 |
Family
ID=40210477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES08162897.6T Active ES2647269T3 (es) | 2008-08-25 | 2008-08-25 | Método y sistema de control para la sincronización de un robot y un transportador |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP2159657B1 (es) |
ES (1) | ES2647269T3 (es) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9227322B2 (en) * | 2012-11-30 | 2016-01-05 | Fanuc Robotics America Corporation | Multi-arm robotic painting process synchronization |
CN106598110B (zh) * | 2015-10-19 | 2018-09-04 | 沈阳新松机器人自动化股份有限公司 | 新型喷涂机器人正压防爆*** |
JP7000363B2 (ja) * | 2019-01-25 | 2022-01-19 | ファナック株式会社 | ロボット制御装置および管理システム |
JP7363098B2 (ja) * | 2019-05-24 | 2023-10-18 | セイコーエプソン株式会社 | ロボットの制御方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4170751A (en) | 1978-02-02 | 1979-10-09 | General Motors Corporation | Electronic control for a mechanized spray painting system |
GB2045463B (en) * | 1979-04-03 | 1983-04-20 | Hall Automation Ltd | Arrangement for controlling an operation performed on a workpiece |
DE3711020A1 (de) * | 1987-04-02 | 1988-10-20 | Behr Industrieanlagen | Verfahren zum selbsttaetigen beschichten von werkstuecken |
SE527525C2 (sv) | 2003-12-22 | 2006-04-04 | Abb As | Styranordning, metod och styrsystem för start eller stop av en nästkommande arbetsuppgift hos en robot |
-
2008
- 2008-08-25 EP EP08162897.6A patent/EP2159657B1/en active Active
- 2008-08-25 ES ES08162897.6T patent/ES2647269T3/es active Active
Also Published As
Publication number | Publication date |
---|---|
EP2159657A1 (en) | 2010-03-03 |
EP2159657B1 (en) | 2017-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2647269T3 (es) | Método y sistema de control para la sincronización de un robot y un transportador | |
CN105583822B (zh) | 用于关节臂机器人的、基于事件的冗余角度配置 | |
JP2018003388A5 (es) | ||
EP2835228A3 (en) | Robot apparatus and robot controlling method | |
ES2893291T3 (es) | Procedimiento para la compensación de una desviación de un punto de trabajo | |
JP6236388B2 (ja) | ロボット制御方法 | |
WO2018019111A1 (zh) | 机器人及其关节运动控制方法和装置 | |
JP2018192568A5 (es) | ||
EP3380902B1 (en) | Robot trajectory learning by demonstration with probe sensor | |
JP2008188699A (ja) | 双腕ロボットの肩幅空間制限装置及びその装置を具えた双腕ロボット | |
EP1676679A3 (en) | Robot controller for correcting a target position of a robot hand by means of a visual sensor | |
WO2007057390A3 (en) | Method and device for controlling motion of an industrial robot with a position switch | |
JP2018111155A5 (es) | ||
JP5255643B2 (ja) | 液圧作動ブームの調整方法、装置およびコンピュータプログラム | |
JP2015085427A (ja) | 6軸ロボットの各軸角度決定方法及び6軸ロボットの制御装置 | |
EP3620273A3 (en) | Methods and apparatus for robot control | |
JP2017111683A5 (es) | ||
US20180154520A1 (en) | Control device, robot, and robot system | |
Gauthier et al. | Optimization of a test trajectory for SCARA systems | |
JP2018176341A5 (es) | ||
Haddadin et al. | Exploiting potential energy storage for cyclic manipulation: An analysis for elastic dribbling with an anthropomorphic robot | |
CN107199562B (zh) | 机器人控制装置和机器人控制方法 | |
CN110262291A (zh) | 控制装置、控制方法以及存储介质 | |
US11144043B2 (en) | Method and system for aligning a tool during programming of an industrial robot | |
JP2008185543A (ja) | 非接触3次元座標測定装置の測定ヘッド保持機構 |