integración de celdas robotizadas de soldadura con ... · inferior al costo de los sistemas...

19
Integración de celdas robotizadas de soldadura con compensación automática de trayectorias Integration of robotic welding cells with automatic path compensation Ignacio Dávila-Ríos e Ismael López-Juárez* Corporación Mexicana de Investigación en Materiales S.A. de C.V. Ciencia y Tecnología No 790 Col. Saltillo 400, C.P. 25290 Saltillo, Coahuila. México. Tel: +52 844 411-3200 [email protected] *Centro de Investigación y Estudios Avanzados del IPN, Unidad Saltillo Carretera Saltillo-Monterrey Km 13, CP 25900. Ramos Arizpe, Coahuila. México. Tel +52 844 4389600 [email protected] RESUMEN Dentro de la industria de manufactura, en particular en procesos de soldadura de arco con robots industriales, es común la necesidad de modificar la trayectoria de soldadura debido al desajuste de posición de los componentes a soldar. Estos errores de posicionamiento en las partes es debida al envejecimiento de los componentes en el tren de alimentación, utillajes, perturbaciones, etc. Esta situación deriva en una práctica común de reprogramación de los robots; sin embargo esto conlleva un consecuente paro de la línea e incremento en los costos de producción. En este artículo presentamos una alternativa práctica de solución a este problema que incluye el uso de iluminación estructurada utilizando un haz laser de bajo costo, una cámara CCD y un controlador difuso de posición. La metodología fue probada en el diseño de una celda de soldadura de placas metálicas, cuyo controlador es capaz de corregir en línea los parámetros del proceso como son: errores de trayectoria, arranque/paro de la fuente de alimentación, velocidad y posición del recorrido de la antorcha, distancia de la punta de la antorcha a la placa de soldadura, voltaje y corriente del arco de soldadura. El método fue evaluado experimentalmente empleando un robot industrial KUKA KR16 mediante pruebas de corrección de error lateral y vertical en un rango de +/- 10mm. En el artículo se presenta la descripción de la metodología incluyendo el diseño, simulación de la celda, descripción de los algoritmos de procesamiento de imagen, control Difuso de posición y análisis estadístico de los resultados experimentales lo que demuestra la efectividad del método. Palabras Claves: Lógica Difusa, Soldadura GMAW, Robótica Industrial, Iluminación Estructurada, Visión Artificial, Control de trayectoria de robots.

Upload: truonghanh

Post on 20-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Integración de celdas robotizadas de soldadura con compensación automática de trayectorias

Integration of robotic welding cells with automatic path compensation

Ignacio Dávila-Ríos e Ismael López-Juárez*

Corporación Mexicana de Investigación en Materiales S.A. de C.V.

Ciencia y Tecnología No 790 Col. Saltillo 400, C.P. 25290 Saltillo, Coahuila. México. Tel: +52 844 411-3200

[email protected]

*Centro de Investigación y Estudios Avanzados del IPN, Unidad Saltillo

Carretera Saltillo-Monterrey Km 13, CP 25900. Ramos Arizpe, Coahuila. México. Tel +52 844 4389600

[email protected]

RESUMEN

Dentro de la industria de manufactura, en particular en procesos de soldadura de

arco con robots industriales, es común la necesidad de modificar la trayectoria de

soldadura debido al desajuste de posición de los componentes a soldar. Estos errores

de posicionamiento en las partes es debida al envejecimiento de los componentes en

el tren de alimentación, utillajes, perturbaciones, etc. Esta situación deriva en una

práctica común de reprogramación de los robots; sin embargo esto conlleva un

consecuente paro de la línea e incremento en los costos de producción. En este

artículo presentamos una alternativa práctica de solución a este problema que

incluye el uso de iluminación estructurada utilizando un haz laser de bajo costo, una

cámara CCD y un controlador difuso de posición. La metodología fue probada en el

diseño de una celda de soldadura de placas metálicas, cuyo controlador es capaz de

corregir en línea los parámetros del proceso como son: errores de trayectoria,

arranque/paro de la fuente de alimentación, velocidad y posición del recorrido de la

antorcha, distancia de la punta de la antorcha a la placa de soldadura, voltaje y

corriente del arco de soldadura. El método fue evaluado experimentalmente

empleando un robot industrial KUKA KR16 mediante pruebas de corrección de error

lateral y vertical en un rango de +/- 10mm. En el artículo se presenta la descripción

de la metodología incluyendo el diseño, simulación de la celda, descripción de los

algoritmos de procesamiento de imagen, control Difuso de posición y análisis

estadístico de los resultados experimentales lo que demuestra la efectividad del

método.

Palabras Claves: Lógica Difusa, Soldadura GMAW, Robótica Industrial, Iluminación Estructurada,

Visión Artificial, Control de trayectoria de robots.

ABSTRACT

During robotic welding operations in the manufacturing industry there is a need to

modify the welding path due to a mismatch in the position of the components to be

welded. These positioning errors are due to the ageing of the components in the part

conveyor system, clamp fixtures, disturbances, etc. This situation results in a

common practice of robot reprogramming that requires the stop of the production

line with an increment in production costs. In this article we present an alternative

solution to this problem that involves the use of structured lighting through the use

of a low-cost laser beam, a CCD camera and a Fuzzy Controller. The methodology was

tested in the design of a welding cell of metal plates whose cell controller is capable

of correcting online the process parameters such as: path error, start/stop of the

power source, position and speed of the welding torch, distance from the torch tip to

the plate, voltage and current of welding arc. The method was evaluated

experimentally using an industrial KUKA KR16 robot tested under lateral and vertical

position errors within +/- 10mm range. The article presents the description of the

methodology including design, cell simulation, image processing algorithms, Fuzzy

Control and statistical analysis of experimental results which demonstrates the

method’s effectiveness.

Keywords: Fuzzy Logic, GMAW, Industrial Robotics, Structured lighting, Artificial Vision, Robot

Path Control.

1. Introducción

Los procesos de soldadura robotizados son cada vez más utilizados por la industria; especialmente

es el caso de la industria de manufactura dado que esta aplicación implica riesgo y trabajo hostil

para los soldadores. Existen diversas fuentes de error que afectan la precisión del proceso y que

son mayormente debidos al posicionamiento de las piezas a soldar. Estos errores son debidos al

envejecimiento de los mecanismos del sistema de transporte en la línea de producción, en los

utillajes de fijación de las piezas, etc. Esta situación resulta en una incertidumbre de operación en

los robots soldadores y genera un entorno no estructurados de movimiento. El propósito central

de este artículo es el desarrollar una metodología de compensación de errores de posicionamiento

generados durante el proceso y que el sistema de control de la celda de soldadura debe superar

para satisfacer la especificación de calidad requerida del producto.

Se presenta una propuesta de solución al problema mencionado que incluye la simulación del

proceso con lo que se pretende mostrar algunas directrices para la conformación de celdas de

soldadura robotizadas. Seguido de ello se propone una herramienta de control difuso para ajustar

las trayectorias del robot en respuesta a un desajuste en la posición de las piezas a soldar.

Trabajo Relacionado y Contribución

Existe una variedad de investigaciones que tratan de resolver este problema, basándose la

mayoría en el uso de herramientas tales como sensores láser y visión computacional. Algunos

autores emplean también algoritmos basados en herramientas de Inteligencia Artificial, como se

muestra por Tian y Collins quienes emplean un método eficaz de ruta de planificación mediante

algoritmos genéticos en la que el robot guarda posiciones de obstáculos encontrados [1]. La

aplicación de PID y Control Difuso en el proceso de soldadura de MIG ha sido demostrado por Shi

Yu et al., quienes mejoran la calidad de la soldadura con el uso de sensores de visión y filtros

múltiples [2]. Por otro lado el enfoque neuro-fuzzy para la variable de velocidad de alimentación

del alambre ha sido explorado por l. Carrino et al. [3] y en general, existen esfuerzos importantes

en el área de planificación de trayectoria automatizada, lo que es vital para el desarrollo de robots

autónomos en soldadura [4,5] especialmente cuando se busca sistemas de control en tiempo real

[6].

Por otro lado existen sistemas comerciales de seguimiento de trayectoria [7, 8], los cuales tienen

la característica de incluir montado el sistema de visión y el sistema laser en una misma unidad, lo

que facilita el procesamiento de la información porque las no-linealidades que se encuentran en el

procesamiento de la imagen debidas al error de perspectiva no se presentan. En nuestra

propuesta se considera la cámara y sensor laser colocados en sentidos opuestos, no en línea con la

antorcha, lo que genera un error de perspectiva que es compensado por el sistema difuso, además

se emplea en nuestro método elementos de bajo costo y cuya solución es del orden de 30 veces

inferior al costo de los sistemas comerciales mencionados.

La organización del artículo es como sigue. En la Sección de Introducción se revisa el trabajo

relacionado y el proceso de soldadura GMAW. En la Sección 2 correspondiente a Materiales, se

describen los componentes de la celda de soldadura robotizada. En la Sección 3, se presentan los

Métodos empleados en el trabajo en términos de simulación para el diseño de la celda,

procesamiento de imagen empleado iluminación estructurada así como la descripción del sistema

difuso empleado para el control de la trayectoria. En la Sección 4 se presentan los resultados

obtenidos durante pruebas experimentales con el manipulador bajo diversas condiciones de error

experimental y finalmente en la Sección 5 se indican las conclusiones y trabajo futuro.

1.1 Proceso de Soldadura de Metal por Arco y Gas

En el proceso de soldadura de metal por arco y gas (GMAW, por sus siglas en inglés), se establece

un arco eléctrico entre un electrodo consumible (alambre) y la pieza de trabajo. Cuando se inicia el

proceso, el alambre es alimentado continuamente en el charco de soldadura y el arco generado es

protegido por un gas inerte, dando al proceso también la denominación popular de Soldadura de

metal por gas inerte (MIG, por sus siglas en inglés). Este proceso se utiliza ampliamente en la

aplicación industrial debido a sus numerosos beneficios. Pueden soldar casi todos los materiales

metálicos, en una amplia gama de espesores (por encima de 1 mm hasta 30 mm o más) y es eficaz

en todas las posiciones.

El proceso de soldadura GMAW es un proceso muy económico también porque tiene tasas más

altas de deposición que por ejemplo el proceso manual de arco con electrodo recubierto ya que

no se requieren frecuentes paradas para cambiar los electrodos. Se requiere menos habilidad del

operador comparado con otros procesos convencionales ya que el alambre del electrodo se

alimenta automáticamente (proceso semiautomático) y un mecanismo de auto-ajuste mantiene la

longitud de arco aproximadamente constante incluso cuando la distancia de la antorcha a la pieza

de trabajo varía dentro de ciertos límites. Lo anterior establece una ventaja al proceso, ya que se

puede automatizar de forma particular en aplicaciones de soldadura robotizada.

2. MATERIALES

Este apartado describe los Materiales utilizados en el desarrollo

de la celda robotizada en términos de software de simulación durante la etapa de diseño,

en la construcción e integración de la misma.

2.1. Simulación de Celda de Soldadura Robotizada.

Para el diseño del sistema automatizado

construcción física de la celda, por lo que se

paso fue la ubicación física de la c

la nave industrial. Algunos elementos

mesa de soldadura, la banda transportadora, el control del robot KRC2, la estructura fí

celda (paredes, ventanas), etc. Estos componentes fueron diseñados

los archivos fueron exportados a la herramienta de simulación.

todos los accesorios y equipos necesarios en la celda de soldadura, el diseño final fue completado

y construido tal como se muestra en la figura

Figura 1. (a)

2.2. Sistema de Soldadura Robotizada

El equipo básico de una celda robotizada comprende los siguientes equipos:

• Robot

• Estación de soldadura

• Alimentador de alambre

• Antorcha, que alimenta el alambre y gas

• Tanque de gas

A estos elementos básicos se agregaron dispositivos auxiliares como son cámara de visión, laser,

tarjeta de adquisición de datos y PC que conformaron nuestro caso de estudio

experimental de soldadura robotizada

Materiales utilizados en el desarrollo, tanto en la parte de integración

de la celda robotizada en términos de software de simulación durante la etapa de diseño,

integración de la misma.

Celda de Soldadura Robotizada.

Para el diseño del sistema automatizado se trató de considerar todos los aspectos antes de la

, por lo que se utilizó el software Delmia Robotics V5.

sica de la celda de soldadura, así como sus dimensiones de área

Algunos elementos tuvieron que ser diseñados por separado. Por ejemplo, la

mesa de soldadura, la banda transportadora, el control del robot KRC2, la estructura fí

celda (paredes, ventanas), etc. Estos componentes fueron diseñados en el software

a la herramienta de simulación. Finalmente, después de considerar

todos los accesorios y equipos necesarios en la celda de soldadura, el diseño final fue completado

y construido tal como se muestra en la figura 1a y 1b, respectivamente [9].

(a) Simulación. (b) Construcción Final

2.2. Sistema de Soldadura Robotizada

El equipo básico de una celda robotizada comprende los siguientes equipos:

lambre, que controla el abastecimiento de alambre a la antorcha.

limenta el alambre y gas.

A estos elementos básicos se agregaron dispositivos auxiliares como son cámara de visión, laser,

tarjeta de adquisición de datos y PC que conformaron nuestro caso de estudio

robotizada integrado por los elementos que se muestran

, tanto en la parte de integración

de la celda robotizada en términos de software de simulación durante la etapa de diseño, así como

considerar todos los aspectos antes de la

utilizó el software Delmia Robotics V5. Cuyo primer

de soldadura, así como sus dimensiones de área dentro de

tuvieron que ser diseñados por separado. Por ejemplo, la

mesa de soldadura, la banda transportadora, el control del robot KRC2, la estructura física de la

en el software SolidWorks® y

Finalmente, después de considerar

todos los accesorios y equipos necesarios en la celda de soldadura, el diseño final fue completado

controla el abastecimiento de alambre a la antorcha.

A estos elementos básicos se agregaron dispositivos auxiliares como son cámara de visión, laser,

tarjeta de adquisición de datos y PC que conformaron nuestro caso de estudio en el sistema

n en la figura 2.

Figura 2. Celda de soldadura

El elemento central de control reside en el Controlador Maestro de la celda, mismo que fue

integrado en un PC Intel Xeon @1,86 GHz con 3GB de RAM y que tiene las siguientes funciones:

1. Comunicación serial de modificación de trayectoria de soldadura en bajo nivel con el

controlador KRC2 del robot KUKA KR16 mediante el protocolo de 3964a.

2. Procesamiento de imagen para modificación de trayectoria empleando una cámara CMOS

Basler A602fc de 656 x 490 pixeles de resolución.

3. Modificación de Corriente y Voltaje de Arco a través de la tarjeta de adquisición de datos

Sensoray 626, misma que a través de señales I/O controla el encendido/apagado de la antorcha,

alimentación de alambre (incluye apertura/cierre de válvula del tanque de gas) y encendido del

haz laser.

El robot se utiliza en modo esclavo. Durante operaciones un programa esclavo de movimiento

corre en lenguaje KPL y se ejecuta en el controlador KRC2. Este programa de movimiento está a

cargo, entre otras opciones, de los movimientos incrementales del robot, selección de

coordenadas de herramienta/mundo, distancia de movimiento y velocidad. El otro programa de

comunicación reside en el Controlador Maestro y forma parte del controlador Difuso de

corrección de trayectoria durante las operaciones de soldadura. Las operaciones de

procesamiento de imagen: filtrado, segmentación y binarización son ejecutadas también en el

Controlador Maestro de forma tal, que permiten cuantificar y corregir en línea el desajuste

encontrado.

3. MÉTODOS

3.1. Simulación de soldadura robotizada

Esta parte importante de la integración de la celda implicó la simulación del robot de soldadura

con el fin de analizar el espacio de trabajo para evitar cualquier accidente o colisión en el espacio

de trabajo. Se trata de una etapa importante fuera de línea ya que el usuario aprende como mover

el robot durante operaciones y más tarde, si es necesario, el programa mismo puede traducirse al

lenguaje de otro fabricante. A pesar de la adecuación en la distribución de los componentes en la

celda todavía es posible hacer contactos o colisiones con otros componentes. El simulador

proporciona una matriz de contactos y colisiones de tal forma de reprogramar las trayectorias si es

necesario. La figura 3 muestra un ejemplo de los resultados de las colisiones relevantes entre la

antorcha y la mesa de trabajo. En la misma figura aparece en el lado izquierdo un gráfico de la

zona afectada por la colisión entre el robot y la antorcha con un producto llamado "pieza a

soldar". En el lado derecho, se muestra la matriz de la relación de colisiones y contactos entre

todos los dispositivos. En nuestro caso de estudio, la simulación resultó en un total de 19

interferencias, de las cuales 9 fueron colisiones y 10 contactos, mismos que fueron corregidos para

establecer la configuración final de la celda con lo que se evitan colisiones y daños eventuales a

dispositivos y al robot.

All Types No filter on value All Statuses

Number of interferences: 19 (Clash:9, Contact:10, Clearance:0)

Interference, 3

Contact + Clash

Between all components

Results

All Types No filter on value All Statuses

Number of interferences: 19 (Clash:9, Contact:10, Clearance:0)

Interference, 3

Contact + Clash

Between all components

Results

10166934 (10166904.1)

10166924pp (10166934pp.1)Máquina de soldar (maqui)Ensamble_final (ensamble)Tanque3 (tanque3.1)Area1 (Area-0022)KR16:kr16.0 (kr16.0.1)KR16:kr16.1 (kr16.1.1)

KR

16

:kr1

6.6

(kr1

6.6

.1)

Se

ve

nth

_a

xis

_to

p(s

ev

en

)K

R1

6:k

r16

.1(k

r16

.1.1

)K

R1

6:k

r16

.0(k

r16

.0.1

)A

rea

1(A

rea

-C0

22

)T

an

qu

e3

(tan

qu

e3

.1)E

ns

am

ble

_fin

al

(en

sa

mb

le)

Ma

qu

ina

_d

e_

so

lda

r(m

aq

u)

10

16

69

34

pp

()

KR

16

:kr1

6.5

.6(k

r16

.6.5

.1)

KR

16

:kr1

6.4

.6(k

r16

.6.4

.1)

KR

16

:kr1

6.3

.6(k

r16

.3.6

.1)

KR

16

:kr1

6.2

.6(k

r16

.6.2

.1)

10

16

693

4p

p.1

10

16

69

34

(10

16

69

34

.1)

All Types No filter on value All Statuses

Number of interferences: 19 (Clash:9, Contact:10, Clearance:0)

Interference, 3

Contact + Clash

Between all components

Results

All Types No filter on value All Statuses

Number of interferences: 19 (Clash:9, Contact:10, Clearance:0)

Interference, 3

Contact + Clash

Between all components

Results

10166934 (10166904.1)

10166924pp (10166934pp.1)Máquina de soldar (maqui)Ensamble_final (ensamble)Tanque3 (tanque3.1)Area1 (Area-0022)KR16:kr16.0 (kr16.0.1)KR16:kr16.1 (kr16.1.1)

KR

16

:kr1

6.6

(kr1

6.6

.1)

Se

ve

nth

_a

xis

_to

p(s

ev

en

)K

R1

6:k

r16

.1(k

r16

.1.1

)K

R1

6:k

r16

.0(k

r16

.0.1

)A

rea

1(A

rea

-C0

22

)T

an

qu

e3

(tan

qu

e3

.1)E

ns

am

ble

_fin

al

(en

sa

mb

le)

Ma

qu

ina

_d

e_

so

lda

r(m

aq

u)

10

16

69

34

pp

()

KR

16

:kr1

6.5

.6(k

r16

.6.5

.1)

KR

16

:kr1

6.4

.6(k

r16

.6.4

.1)

KR

16

:kr1

6.3

.6(k

r16

.3.6

.1)

KR

16

:kr1

6.2

.6(k

r16

.6.2

.1)

10

16

693

4p

p.1

10

16

69

34

(10

16

69

34

.1)

Figura 3. Matriz de resultados de colisión

En la figura 4a se muestra una imagen de la configuración final producto de la simulación y en la

figura 4b la celda final de trabajo.

Figura 4. (a) simulación

Se verificaron también los aspectos de seguridad y programación de acuerdo al estándar

(Certified Robotic Arc Welding, Operator and Technician)

para asegurar una operación confiable antes de proceder a la operación de la estación de

soldadura. Algunos aspectos del estándar

comparación con una unidad de trabajo real se muestran en la tabla 1.

Aspectos

Puesta en marcha

Proceso de soldadura

Verificación de soldadura

Definiciones y terminología

Seguridad

Pruebas destructivas

Conversión y cálculos

Programación del robot

Procedimientos de soldadura

Programación lógica

Conceptos de cinemática

Componentes de soldadura de Arco

Tabla 1. Comparación entre la unidad de trabajo

De la tabla 1 puede resaltarse el hecho de que

simulador como es el caso de la puesta en marcha, verificación de soldadura y pruebas

destructivas mismas que solo con la operación real pueden ser verificadas. Con el proceso de

simulación se produjo un programa

robot para realizar un ciclo verdadero

Durante el ciclo de operaciones de soldadura en esta investigación se decidió efectuar la soldadura

de unión entre dos placas metálicas,

(a) simulación (b) unidad de trabajo real.

los aspectos de seguridad y programación de acuerdo al estándar

(Certified Robotic Arc Welding, Operator and Technician) de la AWS (American Welding

una operación confiable antes de proceder a la operación de la estación de

soldadura. Algunos aspectos del estándar CRAW-OT que pueden evaluarse en el simulador en

con una unidad de trabajo real se muestran en la tabla 1.

Aspectos Celda Real Celda Simulada

Proceso de soldadura � �

Verificación de soldadura �

Definiciones y terminología � �

� �

Conversión y cálculos � �

obot � �

soldadura � �

� �

Conceptos de cinemática � �

oldadura de Arco � �

Tabla 1. Comparación entre la unidad de trabajo real y el simulador virtual

De la tabla 1 puede resaltarse el hecho de que algunos aspectos no pueden ser verificados con el

simulador como es el caso de la puesta en marcha, verificación de soldadura y pruebas

destructivas mismas que solo con la operación real pueden ser verificadas. Con el proceso de

ograma de robot mismo que fue cargado en el controlador

verdadero de soldadura.

Durante el ciclo de operaciones de soldadura en esta investigación se decidió efectuar la soldadura

placas metálicas, por lo que para efectos de corrección de trayectoria se

los aspectos de seguridad y programación de acuerdo al estándar CRAW-OT

(American Welding Society)

una operación confiable antes de proceder a la operación de la estación de

OT que pueden evaluarse en el simulador en

Celda Simulada

algunos aspectos no pueden ser verificados con el

simulador como es el caso de la puesta en marcha, verificación de soldadura y pruebas

destructivas mismas que solo con la operación real pueden ser verificadas. Con el proceso de

controlador KRC2 del

Durante el ciclo de operaciones de soldadura en esta investigación se decidió efectuar la soldadura

por lo que para efectos de corrección de trayectoria se

produjeron desajustes aleatorios

resultados.

3.2. Procesamiento de Imagen

El objetivo de la etapa de procesamiento

desajuste espacial de las placas a soldar. Una vez determinada esta magnitud se envía

hacia el controlador para efectuar la corrección.

El sistema de visión que se emplea consiste en la utilización

y longitud de onda de 656nm que se hace incidir en

Figura 5. Reconocimiento de desajuste de trayectoria de soldadura

Al hacer incidir el haz laser sobre ambas placas como se observa en la figura resulta en una

discontinuidad en la línea que es capturada por la cámara misma que es tomada como referencia.

En el caso de ocurrir un desajuste lateral y/o en altura este desajuste se verá reflejad

imagen. Para efectuar una medición confiable del desajuste es necesario efectuar algunas

operaciones de pre-procesamiento de imagen como se indica

Preprocesamiento

A la imagen original se le aplica

medición de trayectoria. Se efectuó

promedio, con el objeto de reducir la presencia de ruido

operaciones de filtrado de máximos y filtrado d

considerablemente.

aleatorios de posición como se describirá más adelante en la sección de

procesamiento de imagen es la determinación de la magnitud de

desajuste espacial de las placas a soldar. Una vez determinada esta magnitud se envía

hacia el controlador para efectuar la corrección.

El sistema de visión que se emplea consiste en la utilización de un haz laser con potencia de

que se hace incidir en ambas placas como se muestra en la figura 5

. Reconocimiento de desajuste de trayectoria de soldadura

haz laser sobre ambas placas como se observa en la figura resulta en una

que es capturada por la cámara misma que es tomada como referencia.

En el caso de ocurrir un desajuste lateral y/o en altura este desajuste se verá reflejad

. Para efectuar una medición confiable del desajuste es necesario efectuar algunas

procesamiento de imagen como se indica a continuación.

a una serie de filtros de tal forma de mejorar la imagen para la

medición de trayectoria. Se efectuó primeramente un suavizamiento a través de un filtro

reducir la presencia de ruido. Posteriormente se efectu

operaciones de filtrado de máximos y filtrado de mínimos, con lo que mejor

más adelante en la sección de

de imagen es la determinación de la magnitud de

desajuste espacial de las placas a soldar. Una vez determinada esta magnitud se envía el dato

de un haz laser con potencia de 50mw

ambas placas como se muestra en la figura 5.

haz laser sobre ambas placas como se observa en la figura resulta en una

que es capturada por la cámara misma que es tomada como referencia.

En el caso de ocurrir un desajuste lateral y/o en altura este desajuste se verá reflejado en la

. Para efectuar una medición confiable del desajuste es necesario efectuar algunas

de mejorar la imagen para la

a través de un filtro

. Posteriormente se efectuaron las

mejora la imagen

Segmentación

Posteriormente y para efectuar las mediciones en la

segmentación para operar únicamente

encuentra la información necesaria. De esta forma se incrementa

procesamiento ya que la imagen a trabajar es de un

es tomar una imagen de dimensión

I (KxL) < I (IxJ).

i

Origen de

la imagen

En la Figura 7 se muestra la Región de Interés (ROI) de imagen

líneas discontinuas en donde se puede observar las placas A y B, así como la separación entre

ellas. Esta imagen fue obtenida después de efectuar un suavizamiento (

máximo, filtro mínimo y binarización.

Posteriormente, se determina la

la Placa A y en la Placa B, respectivamente como se muestra en la figura 8.

Posteriormente y para efectuar las mediciones en la imagen, se realiza una

nicamente en el área de interés (pixel Ii,j en la Figura

necesaria. De esta forma se incrementa también la velocidad

ya que la imagen a trabajar es de un tamaño menor a la original. La idea

dimensión KxL de la imagen original I de dimensión IxJ, donde

j

Imagen I(i,j)

Pixel Iij

kini , lini kini , lfin

kfin , lini kfin , lfin

Origen de

la imagen

Figura 6. Segmentación de la imagen

la Región de Interés (ROI) de imagen segmentada como se indica por

líneas discontinuas en donde se puede observar las placas A y B, así como la separación entre

ellas. Esta imagen fue obtenida después de efectuar un suavizamiento (filtro promedio

binarización.

Figura 7. ROI con imagen segmentada

se determina la Discontinuidad1 y Discontinuidad2 del patrón laser capturado

la Placa A y en la Placa B, respectivamente como se muestra en la figura 8.

realiza una operación de

Figura 6), donde se

la velocidad de

menor a la original. La idea principal

, donde la imagen

como se indica por

líneas discontinuas en donde se puede observar las placas A y B, así como la separación entre

ltro promedio), filtro

laser capturado en

En condiciones de producción normal y sin error de posicionamiento, la antorcha del robot deberá

situarse en el punto intermedio de las placas como se indica en la figura 9a. En caso de existir un

desajuste lateral o en altura dicho patrón (punto de unión

consecuentemente. En esta situación, la posición del robot siempre es conocida y existirá una

nueva posición unión en la cual

situación se ilustra en la figura 9b.

utilizó un algoritmo de lógica difusa tipo 1 como se describirá en la siguiente sección.

Figura 9. (a) Punto si

3.3 Sistemas Difusos

Los sistemas de control difuso se

cerebro razona empleando variables lingüísticas

como, estatura media, temperatura baja

difusos ó imprecisos. Los conjuntos

tanto, los sistemas de control basados

en términos de conjuntos difusos)

de salida [10,11].

En términos de la celda de soldadura

posicionamiento en las piezas debido a la variación que se presente entre un par de piezas

y las siguientes. En esta situación de desajuste

el proceso de soldadura de forma tal

Figura 8. Discontinuidad entre placas

En condiciones de producción normal y sin error de posicionamiento, la antorcha del robot deberá

situarse en el punto intermedio de las placas como se indica en la figura 9a. En caso de existir un

desajuste lateral o en altura dicho patrón (punto de unión entre placas) será desplazado

consecuentemente. En esta situación, la posición del robot siempre es conocida y existirá una

en la cual el robot deberá posicionarse para corregir dicho

situación se ilustra en la figura 9b. Para la corrección de desplazamiento horizontal y vertical se

utilizó un algoritmo de lógica difusa tipo 1 como se describirá en la siguiente sección.

9. (a) Punto sin desajuste (b) Desajuste de posición de antorcha

se basan en el control de procesos de la misma manera

variables lingüísticas que permiten tratar información

temperatura baja o mucha fuerza, todo esto en términos de

conjuntos difusos se combinan en reglas para definir acciones

basados en lógica difusa combinan variables de entrada

difusos) a través de grupos de reglas que producen uno o

celda de soldadura robotizada, es posible que exista un error de

debido a la variación que se presente entre un par de piezas

En esta situación de desajuste de posición es deseable que el usuario implement

de forma tal, que sea posible calcular si el robot tiene que

En condiciones de producción normal y sin error de posicionamiento, la antorcha del robot deberá

situarse en el punto intermedio de las placas como se indica en la figura 9a. En caso de existir un

entre placas) será desplazado

consecuentemente. En esta situación, la posición del robot siempre es conocida y existirá una

dicho error. Esta

Para la corrección de desplazamiento horizontal y vertical se

utilizó un algoritmo de lógica difusa tipo 1 como se describirá en la siguiente sección.

(b) Desajuste de posición de antorcha

la misma manera como el

información imprecisa, tal

términos de conjuntos

acciones. Por lo

de entrada (definidas

uno o varios valores

s posible que exista un error de

debido a la variación que se presente entre un par de piezas a soldar

usuario implemente

tiene que moverse un

poco hacia la derecha, izquierda, arriba ó abajo, de tal forma de corregir los desajustes de posición

encontrados. En la lógica difusa, estos valores lingüísticos de “poco” o “mucho” se incluyen en

conjuntos difusos cuyo valor de membresía tiene un valor entre 0 y 1. Para crear una aplicación de

lógica difusa se requieren de los siguientes pasos: Normalización, Fuzzificación, formación de

reglas difusas, Defuzzificación y De-normalización que se describirán con mayor detalle en la

siguiente sección.

3.3.1 Sistema de Control Difuso

Como se mencionó anteriormente para la implementación del control difuso se requieren los

pasos de normalización, Fuzzificación, Reglas difusas, Defuzzificación y De-normalización. En el

primer paso, la información es proporcionada por un sensor (en este caso proveniente del patrón

laser detectado por la cámara). Este valor es leído como valor real y debe seguir una entrada

codificada dentro de un rango [0, 1] lo que se conoce como normalización. El siguiente paso

conocido como fuzzificación, toma un dato del sistema y lo transforma en un dato difuso para

calcular el grado de membresía o pertenencia de ese valor contra una serie de conjuntos difusos.

Por ejemplo, supongamos que la variable dependerá de los movimientos de la pieza de trabajo o

la distancia de movimiento entonces debemos encontrar las funciones de membresía o

pertenencia en los conjuntos siguientes: a la izquierda, muy Izquierda, derecha o muy a la derecha,

etc.

Una vez que los datos son normalizados y fuzzificados, estos se utilizan para construir las reglas

difusas, lo que constituyen nuestros antecedentes de control. Estas reglas se construyen de

acuerdo a las necesidades de nuestro sistema. Después de ser evaluadas, sabemos qué grado de

pertenencia le corresponde a cada uno en relación a la salida (consecuente). Por último, es

necesario devolver el conjunto de datos de control a valor real (defuzzificación) para obtener la

nueva coordenada del robot previa De-normalización de los mismos datos para enviarlos al

controlador del robot y corregir finalmente la trayectoria.

Diseño e Implementación del Control

El sistema de seguimiento está diseñado para compensar desajustes en líneas de producción

automáticas en donde las piezas a soldar son transportadas por pallets a las estaciones de

soldadura. Típicamente los errores ocurren en los ejes Y y Z, por lo que los desajustes de posición

se realizaron en estos ejes coordenados, lo que implica desajustes no solo laterales sino en altura.

Nuestro sistema de control de posición compensa el movimiento sobre los ejes Y y Z de las

coordenadas del robot. No se considera la compensación para el eje X, dado que ésta es la

dirección de movimiento de la antorcha de soldadura. De esta forma se tienen dos variables de

entrada por dos variables de salida. El intervalo definido para el rango de operación del sistema es

de [-10, 10] mm en el eje Y y de [-5, 5] mm en el eje Z. Donde el valor de cero se considera como

valor de referencia para la trayectoria a soldar. En la figura 10 se muestra el conjunto de datos de

entrada en los ejes Y y Z durante las operaciones de evaluación de nuestro sistema de corrección.

Figura 10

Estos valores indican los diferentes

presentarse en el proceso de soldadura, el eje horizontal muestra el movimiento sobre el eje

eje vertical muestra el movimiento sobre el eje

5) esto significa que la pieza tuvo un desajus

crear los conjuntos difusos es necesario usar dos tipos de funciones de membresía, la trapezoidal y

la triangular como se indica en la

ura 10. Rango de movimientos de error en las piezas

los diferentes errores en posicionamiento considerados y

presentarse en el proceso de soldadura, el eje horizontal muestra el movimiento sobre el eje

eje vertical muestra el movimiento sobre el eje Z; por ejemplo si el sensor detecta un punto (10,

tuvo un desajuste de 10 mm a la derecha y -5 mm hacía abajo. Para

crear los conjuntos difusos es necesario usar dos tipos de funciones de membresía, la trapezoidal y

como se indica en la Figura 11 que muestra los conjuntos difusos empleados.

Fig. 11 Conjuntos Difusos

considerados y que pueden

presentarse en el proceso de soldadura, el eje horizontal muestra el movimiento sobre el eje Y y el

; por ejemplo si el sensor detecta un punto (10, -

5 mm hacía abajo. Para

crear los conjuntos difusos es necesario usar dos tipos de funciones de membresía, la trapezoidal y

empleados.

Una vez creados los conjuntos difusos y que conocemos el grado de membresía de cada uno de los

valores de entrada del sistema, ahora es necesario crear los antecedentes a través de las reglas

difusas, las cuales son por ejemplo:

Si Yref esta muy a la izquierda Entonces Decrementa mucho Posrobot Si Yref esta a la izquierda Entonces Decrementa Posrobot

Si Yref esta poco a la izquierda Entonces Decrementa poco Posrobot

.

.

.

etc.

Las reglas establecidas resultan en un conjunto de salida difuso donde todas las reglas se han

cumplido en algún grado. Para obtener el valor de salida (no difusa), se requiere convertirlo en un

valor real durante la Defuzzificación. Existen dos técnicas comunes de defuzzificación: (1) el

método de la media de máximos (MOM) y (2) el método de centro de área (COA) o método de

centroide. El método de defuzzificación de la media de máximos, calcula el promedio de todos los

valores de las variables con el máximo grado de membresía mientras que el método de centroide

(ó COA) calcula la media ponderada del conjunto difuso. Se decidió emplear para defuzzificar el

método COA como conclusión difusa "Y es A" que puede ser expresada en el caso discreto por la

ecuación:

∑ ×

=

i

iA

i

iiA

y

yy

y)(

)(

µ

µ (1)

y en el caso continuo:

∫∫ ×

=dyy

dyyyy

iA

iiA

)(

)(

µ

µ

(2)

donde µA(yi) es la función de membresía.

Una vez que los datos fueron Defuzzificados el último paso es De-normalizar los datos para

obtener un número real y ser usado como una nueva coordenada del robot.

3.3.2 Diseño del experimento

La metodología de diseño de experimentos permite de forma consistente la determinación de

parámetros clave de diseño del producto que afectan el desempeño del mismo [12]. En nuestro

caso es deseable caracterizar el proceso de seguimiento de trayectorias en el rango de operación

especificado (+/- 10 mm en eje Y, +/- 5 mm en eje Z) para analizar el comportamiento ante la

variación del cualquiera de estos factores de forma individual o combinada para identificar sus

interacciones.

Dos principios fundamentales del diseño experimental son la realización de replicas y la

aleatorización. En primer instancia es importante la realización de replicas para poder estimar el

error experimental y por otro lado la aleatorización permite que los supuestos estadísticos

referentes a la independencia de las distribuciones de probabilidad en las variables aleatorias sea

válido. Considerando lo anterior, en nuestro caso de estudio se tiene como variables de entrada al

sistema los valores de posición enviados al robot en la dirección Y y Z (DistY, DistZ) y como salida la

distancia real observada en ambos ejes (DistY real, DistZ real).

El diseño experimental comúnmente considera observaciones con variables aleatorias de dos o

tres niveles con k factores referidos como 2k o 3k respectivamente. En este caso en particular se

corrió un diseño de experimentos 32 a dos réplicas. La decisión de tomar 3 niveles fue con el

objetivo también de evaluar el punto medio dentro del rango de desplazamiento del robot tanto

en el eje Y como en el eje Z.

4. Resultados

La implementación de la metodología de seguimiento de trayectoria fue desarrollada en lenguaje

C++ que junto con los algoritmos para procesamiento de imagen y de comunicación con el robot

residen en el Controlador Maestro de la celda. Una vez establecido el orden de las corridas

experimentales, se indujo un valor de desajuste (DistY, DistZ), mismo que el controlador difuso

corrigió y cuya salida se evaluó como la distancia real observada de cambio en los ejes principales

(DistY real, DistZ real). La figura 12 muestra el sistema robótico así como la orientación de los ejes

principales. Es importante señalar que el cordón de soldadura se efectúa a lo largo del eje X.

La tabla 2 contiene los resultados de las

corresponden a la primer réplica y las corridas 10 a 18 a la

DistY (mm)

DistY Real (mm)

-10 -10.2

-10 -10.4

-10 -10.4

0 0.47

0 -0.43

0 -1.3

10 10.6

10 10.6

10 9.6

-10 -9.5

-10 -10.2

-10 -11.6

0 -0.53

0 0

Fig. 12 Sistema Experimental

los resultados de las 18 corridas experimentales realizadas.

réplica y las corridas 10 a 18 a la segunda réplica.

Error Y (mm)

DistZ (mm)

DistZ Real (mm)

Error Z (mm)

Error Y Absoluto

(mm)

Error Z Absoluto

(mm)

0.2 -5 -5 0 0.2 0

0.4 0 -0.4 0.4 0.4 0.4

0.4 5 4.4 0.6 0.4 0.6

-0.47 -5 -5.26 0.26 0.47 0.26

0.43 0 -0.42 0.42 0.43 0.42

1.3 5 5.28 -0.28 1.3 0.28

-0.6 -5 -5.2 0.2 0.6 0.2

-0.6 0 0.6 -0.6 0.6 0.6

0.4 5 5.2 -0.2 0.4 0.2

-0.5 -5 -4.95 -0.05 0.5 0.05

0.2 0 -0.2 0.2 0.2 0.2

1.6 5 4.9 0.1 1.6 0.1

0.53 -5 -5.3 0.3 0.53 0.3

0 0 -0.1 0.1 0 0.1

Las primeras 9

Error Z Absoluto

(mm)

0.4

0.6

0.26

0.42

0.28

0.2

0.6

0.2

0.05

0.2

0.1

0.3

0.1

0 -0.33 0.33 5 5.27 -0.27 0.33 0.27

10 10.5 -0.5 -5 -5 0 0.5 0

10 9.6 0.4 0 -0.4 0.4 0.4 0.4

10 9.6 0.4 5 5 0 0.4 0

Tabla 2. Resultados experimentales y evaluación de error

En la figuras 13 y 14 se muestran gráficamente los resultados obtenidos en la compensación de

desajuste lateral y en altura así como el error medido.

Los valores de error muestran que el controlador difuso efectuó una corrección en todos los casos

teniendo un error máximo de 1.6mm en el eje Y, que se considera adecuada para efectos prácticos

de soldadura industrial considerando además que muy probablemente los errores de

posicionamiento en línea de producción sean inferiores al rango máximo probado (+/- 10 mm en

eje Y, +/- 5 mm en eje Z).

Fig. 13 Relación entre el desajuste y ajuste de la pieza a lo largo del eje “y”

-15

-10

-5

0

5

10

15

1 4 7 10 13 16

Dis

t Y

re

al (

mm

)

No. de prueba

Corrección Lateral

Dist Y

Dist Y real

-15

-10

-5

0

5

10

15

1 4 7 10 13 16

Erro

r la

tera

l

No. prueba

Error Lateral

Error Dist Y real

Fig. 14 Relación entre el desajuste y ajuste de la pieza a lo largo del eje “z”

Desde el punto de vista estadístico los resultados no son concluyentes, por lo que procedió a

realizar pruebas de hipótesis para determinar si el controlador responde a las expectativas

estadísticas requeridas. Los parámetros de prueba fueron la media del error Y y la media del error

Z. Esto significa probar que las medias de los errores de cada uno de los ejes “y” y “z” sean cero en

cada caso. Las hipótesis asociadas a este proceso se muestran en las expresiones (3) y (4)

Hipótesis para el error en Y

Ho: μerror Y = 0

H1: μerror Y ≠ 0 (3)

Hipótesis para el error en Z

Ho: μerror Z = 0

H1: μerror Z ≠ 0 (4)

-15

-10

-5

0

5

10

15

1 4 7 10 13 16D

ist

Z re

al (

mm

)

No. de prueba

Corrección en Altura

Dist Z

Dist Z real

-15

-10

-5

0

5

10

15

1 4 7 10 13 16

Erro

r e

n a

ltu

ra (

mm

)

No. de prueba

Error en Altura

Error Dist Z real

Con el uso de los estadísticos �� = (� − ��) (�/��)⁄ para la prueba de hipótesis en el error en Y,

donde ��=0, y � es la desviación estándar en el error en Y, y �� = (� − ��) (�/��)⁄ para la

prueba de hipótesis en el error en Z, donde se consideran ��=0 y � la desviación estándar en el

error en Z, y en ambas pruebas, un nivel de significancia del 0.01, se tiene que �� = 1.52 y �� =

1.24. Dado que las pruebas de hipótesis son bilaterales se tiene que el valor teórico de tα/2,n-1 para

comparar a �� y �� es 2.898, debiendo ser los valores absolutos de �� y �� mayores a 2.898 para

rechazar las hipótesis nulas de (3) y (4). Como �� = 1.52 y �� = 1.24 son ambos menores a 2.898,

entonces no hay evidencia estadística suficiente para rechazar las hipótesis de que los errores en Y

y en Z no sean 0. Se hace mención que al valor de α = 0.01, las pruebas de hipótesis sobre la

normalidad de los datos del error en Y y en Z conducen a no rechazar la hipótesis de normalidad,

por lo que el sustento estadístico de normalidad de las pruebas de hipótesis (3) y (4) está dado.

Esto se efectuó mediante el estadístico y prueba Anderson-Darling. Los valores p de la prueba

Anderson-Darling son 0.017 y 0.807.

5. Conclusiones y Discusión

En este artículo se presentó una metodología para la corrección de trayectorias de soldadura

debidas a errores de posición empleando iluminación estructurada y lógica difusa tipo 1. Los

resultados en la implementación empleando un robot industrial demuestran la factibilidad del

método. Se validó experimentalmente con errores en el rango +/- 10mm para el eje Y y +/-5mm en

el eje Z. El análisis en los resultados indica que existe evidencia estadística para considerar una

media del error de cero en ambos ejes con α = 0.01.

El trabajo futuro que se vislumbra es en dos áreas: Inspección de cordón y lógica difusa tipo II. En

términos de inspección se pretende expandir el alcance del proyecto incluyendo también la

verificación de ancho y alto del cordón empleando una cámara CMOS con mayor rango dinámico

(aproximadamente 120 dB), y el empleo de algoritmos logarítmicos que disminuyan la alta

luminancia que se tienen durante el proceso de soldadura. Por otro lado se pretenden utilizar

funciones de membresía tipo Gaussiano que incluyan el valor de la media y de la desviación

estándar respectiva, con lo que se estima se podrá modelar el proceso incluyendo las

incertidumbres (ruido) de los sensores empleados en el proceso; por ejemplo, el número de

pixeles detectados durante el procesamiento de la imagen, los cuales varían con los diferentes

niveles de iluminación.

Agradecimientos

Los autores desean agradecer al Consejo Nacional de Ciencia y Tecnología (CONACyT) por la beca

de estudios doctorales del Sr. Ignacio Dávila-Ríos, así como del apoyo al proyecto CONACyT No.

61373 y de la Corporación Mexicana de Investigación en Materiales proyecto No. GDH-IE-2007.

Particularmente se agradece el apoyo de José Luis Navarro-González, por su apoyo en el desarrollo

del sistema de visión y del procesamiento de imágenes.

Referencias

[1] Lianfang Tian, Curtis Collins. "An effective robot trajectory planning method using a

genetic algorithm," Mechatronics, Vol.14, 2004. p. 455-470.

[2] Shi Yu, Zhang Yuyao, Fan Ding, Chen Jianhong. “Development of a visual-based welding

pool width control system for AI-P-MIG welding process”, Robot, Weld., Intelligent &

Automation, LNCIS 362, Springer-Verlag Berlin Heidelberg. 2007. p. 267-273.

[3] L. Carrino, U. Natale, L. Nele, M. et al. “A neuro-fuzzy approach for increasing productivity

in gas metal arc welding processes”, International Journal of Advanced Manufacturing

Technology, Vol. 32. No. 5-6, 2007. p. 459-467

[4] G. F. Marshall, L. Tarassenko. “Robot path planning using resistive grids”, Proceedings of

the 2nd International Conference on Artificial Neural Networks. 1991. p. 149–152.

[5] C. W. Warren. “A vector-based approach to robot path planning”, Proc. of the IEEE

International Conference on Robotics and Automation, 1991. p. 1021–1026.

[6] Hongyunn Shen, Tao Lin, Shanben Chen, et al. “Real-Time seam tracking technology of

welding robot with visual sensing”. Journal of Intelligent and Robotic Systems, Vol.59. No.

3-4. 2010. p. 283-298.

[7] http://www.meta-mvs.com/ (visitado Abril 07, 2011)

[8] http://www.servorobot.com/ (visitado Abril 07, 2011)

[9] I. Davila-Rios, I. Lopez Juarez, et al. “Implementation of an Intelligent Robotized GMAW

Welding Cell, Part 1: Design and Simulation.” In Robot Manipulators, Trends and

Development, In-Tech. 2010. p. 543-562. ISBN 978-953-307-073-5.

[10] Bonifacio Martín del Brío, Alfredo Sanz Molina. Redes Neuronales y Sistemas Difusos, Edit.

Alfaomega, Ra-Ma. 2002. ISBN 958-68-2442-X, pp. 243-244.

[11] John Yen, Reza Langari Fuzzy Logic: Intelligence, Control, and Information, Prentice Hall.

1998. ISBN 0135258170.

[12] Montgomery Douglas C. Diseño y Análisis de Experimentos. 2a edición, 2007.