Sunteți pe pagina 1din 7

Arduino en la industria

Enviado por pabloxid en Artculos tcnicos, etc. el da 12 18th, 2012 | no hay respuestas

En ms de una ocasin me han preguntado, con mayor o menor delicadeza, si, adems de para jugar y hacerse el artista, el Arduino poda servir para algo serio, como ser una aplicacin industrial, algo profesional, etc., algo de verd. Naturalmente, la respuesta es afirmativa, pero antes que entrar en la justificacin terica de tal aserto, me gustara mostrarles un hermoso proyecto que me toc desarrollar, con una aplicacin concreta en la industria lanera. Mi socio trabaja en una lanera en la ciudad de Florida, en la que venan teniendo problemas con unregularmetro. El regularmetro me enter oportunamente es un instrumento de laboratorio usado en la industria textil, dentro de lo que son los controles de calidad de hilos y fibras, ms concretamente, para analizar las variaciones de masa de stos, de acuerdo a unos ndices de regularidad estndar. Es un aparato bastante vital, y obviamente muy caro. El equipo que tenan all les estaba dando algunos dolores de cabeza, y entonces los tcnicos del establecimiento tuvieron una interesante idea: hackear el aparato, aprovechar el sistema de transporte y el sensor, y sustituir nicamente la computadora que procesa los datos. Vemoslo ms claramente en el siguiente esquema: -

Esquema bsico de la aplicacin, en su forma ms simple. Como vemos, hay un sistema de transporte movido por un motor, que se encarga de hacer pasar el hilo en nuestro caso, una mecha de lana por adentro de un sensor capacitivo, y una computadora que recoge los datos, los procesa y muestra los resultados en una pantalla. Algo conceptualmente sencillo, pero que, tratndose de un equipo aplicado a la industria, debe cumplir ciertas exigencias y garantizar un funcionamiento a prueba de balas. Tiene que ser slido, no puede fallar, no puede mentir.

Primera versin En la primera versin, el sistema de captura y procesamiento era independiente del sistema de transporte, exactamente como aparece en la figura. Dentro del Arduino se ejecuta un programa muy simple, que muestrea la entrada analgica a una frecuencia de 83,3Hz y enva cada lectura de 10 bits a travs de Serial/USB hacia una PC. En la PC, una aplicacin hecha en Java toma esos valores y los guarda en la memoria, para luego calcular con ellos el promedio, el coeficiente de variacin(C.V.) y el valor Uster (U). Este ltimo no es ms que otra manera de medir la irregularidad, muy usada en la industria textil. -

Fragmento del instructivo que recib para calcular el C.V. Dentro de la aplicacin Java, una sub-ventana de Processing muestra la grfica de masa en funcin de distancia, y permite interactuar con ella (achicarla, agrandarla, inspeccionar el valor de cada muestra, cambiar el rango de muestras, etc.). Finalmente, gracias a las bibliotecas de Processing, es posible tambin exportar la ventana en formato grfico, o exportar los valores en un archivo binarioo de texto. El programa implementa, adems, dos rutinas de calibracin que este sistema necesita: ajuste del 0 que se efecta midiendo la entrada con la pinza vaca (la pinza es el sensor capacitivo) e ingresar peso real que permite ajustar los valores mostrados en la grfica a la realidad (elcoeficiente de variacin y el valor U son, de cualquier manera, independientes del peso absoluto de la mecha). -

Captura de la ventana principal de la aplicacin Java Algunos detalles tcnicos

El sistema de transporte y el sensor capacitivo son los originales, de la mquina Uster Tester 3. Gracias a esto nos ahorramos buena parte del trabajo, justamente la parte delicada del mismo.

La frecuencia de muestreo de 83,3Hz est en sincrona con la velocidad del motor, de modo que el sistema efecta, en teora, exactamente 1 muestra por centmetro de mecha. El total de muestras que se procesan es 12.500, o sea 125 metros de mecha.

Entre la pinza Uster y el Arduino, existe un preamplificador hecho con amplificadores operacionales, que acondiciona la seal del sensor a la escala de 0-5V. Su diseo estuvo ntegramente a cargo de los tcnicos de la lanera.

Asimismo, es de suma importancia el filtro pasa-bajo que acta en el dominio analgico, cortando ms o menos a 40Hz, para evitar que se produzca aliasing en el muestreo. Su diseo tambin estuvo a cargo de la gente de la lanera, concretamente su tcnico, Gabriel.

Para desarrollar la aplicacin, us una tcnica que ya haba empleado en otros casos: cre un interfaz grfico con NetBeans y luego export el cdigo y segu programando en Eclipse. La parte de la grfica la hice con Processing, usndolo como una clase ms de Java,

aprovechando la enorme facilidad que brinda este entorno (originalmente pensado para artistas). -

Aspecto del regularmetro Uster Tester 3

Diagrama de masa del UT3 -

Segunda versin La primera versin estuvo pronta en marzo de 2012. Me llev poco tiempo desarrollar mi parte, que era, por dems, muy sencilla. Durante los siguientes 8 meses, el personal de la lanera lo fue probando, fueron perfeccionando la electrnica analgica y armando una prolija carcasa para albergar el sistema, a la vez que seguan intentando, sin mucho xito, arreglar la mquina original. Poco a poco, este regularmetro hackeado fue sustituyendo al original en los ensayos de laboratorio, hasta finalmente reemplazarlo por completo. Una vez alcanzado este punto, la empresa decidi continuar con la segunda etapa del desarrollo. -

Esquema de la segunda versin, donde el Arduino cumple un rol ms activo. Para esta nueva versin, los cambios fueron los siguientes:

El

arranque

detencin

del

motor

se

controlan

desde

el

software,

mediante

unos relsconectados al Arduino.

El muestreo est gobernado por un encoder acoplado al sistema de transporte; de esta manera se logra obtener exactamente 1 muestra por centmetro, con independencia de la velocidad concreta del motor, la cual ahora puede fluctuar libremente sin afectar al muestreo.

Se

puede

configurar

la

parada

automtica

del

motor

al

cabo

de

cierta

cantidad

de muestras(12.500 por defecto).

Diversas mejoras en el programa, ms opciones a nivel del interfaz usuario, mejor gestin de la comunicacin serial con la biblioteca serialcomm.jar, etc.

Y lo ms interesante de todo: el espectrograma.

Primeras pruebas con la versin 2. El espectrograma El espectrograma fue la parte ms interesante de todo el proyecto, ya que me permiti poner en prctica algunas nociones elementales de DSP, un tema que me apasiona, no obstante las grandes lagunas tericas que me limitan en su abordaje. El espectrograma es otra de las funciones del Uster Tester; se trata de un grfico que muestra las variaciones de masa distribuidas segn su periodicidad, lo que permite diagnosticar fallas mecnicas en el proceso de la lana. Por ejemplo, un cilindro gastado en la maquinaria, puede hacer que aparezca en la mecha una irregularidad peridica, cuyo perodo sea justamente la circunferencia de ese cilindro, etc. Debido a esta relacin entre el perodo de la variacin y su posible causa mecnica, es que en elespectrograma del regularmetro Uster, el eje de las abscisas est en unidades de distancia, y no defrecuencia. Vale decir que se trata de una escala de perodos, o sea de 1/f. De hecho, para complicar un poquito ms las cosas, es una escala logartmica de perodos. Como ya veremos, esto vino a generar una pequea dificultad, debido a que la resolucin en frecuencia que brinda la herramienta matemtica elegida la FFT, resulta ser distinta para distintas zonas de esta escala. -

Espectrograma del UT3 Para resolver el espectrograma acudimos, primero que nada, a la Transformada de Fourier Discreta, calculada con el algoritmo FFT, de lo cual se encarga la excelente biblioteca libre JTransforms. Antes de hacer la FFT directa, aplicamos una ventana Hamming al conjunto de muestras, para reducir losartificios inherentes al enventanado. Luego de hacer la FFT, escalamos y convertimos los valores a su representacin polar (de la cual nos interesa nicamente la magnitud). Utilizamos la FFT real, lo ms simple en materia de FFT. La parte complicada del proceso, como dije antes, fue convertir la escala lineal de frecuencias que devuelve la FFT, en una escala logartmica de perodos igual a la del espectrograma Uster, con 17 barras por dcada. La clave es, ante todo, interpretar correctamente lo que la FFT nos est

entregando. Ntese, por ejemplo, que en nuestra aplicacin el llamado dominio del tiempo es, en realidad, la distancia. Los perodos son distancias, y las frecuencias se miden en ciclos/cm en lugar de ciclos/segundo (Hz). A la izquierda de la grfica se encuentran las distancias cortas, es decir las frecuencias altas, cuyo extremo es la mitad de la frecuencia de muestreo (frecuencia Nyquist), o sea 0,5 ciclos/cm o 2 cm de perodo. En el extremo derecho, sin contar el componente DC, cuyo perodo es infinito, la frecuencia ms baja que nos devuelve la FFT es Fs/N, o sea, la frecuencia de muestreodividida por la cantidad de muestras procesadas. El perodo correspondiente, en nuestra escala, es N cm, es decir, la distancia de mecha total introducida en el algoritmo. Una vez resuelta la matemtica que permite mapear cada barra del espectrograma (o chimenea, como se las conoce en la jerga especializada) a las correspondientes bandas de la FFT lo que a m me llev varios das aunque en realidad se trataba de algo sencillo tuve que enfrentarme al problema de que cada una de estas barras recibe informacin de un nmero distinto de bandas de la FFT. En la zona izquierda (altas frecuencias, perodos cortos) la resolucin de la FFT es mayor que la de la grfica, mientras que en la parte derecha ocurre exactamente lo contrario. -

Espectrograma de nuestra aplicacin. El anlisis corresponde a una seal de prueba generada con el Arduino, formada por ruido blanco, ruido 1/f y cuatro sinusoides conocidas. Be Sociable, Share!

S-ar putea să vă placă și