Figuras Merito Articulo

12
USO DE INTÉRPRETES EN EL PROCESAMIENTO DE VARIABLES DE CONDICIÓN DE OPERACIÓN MEDIANTE FIGURAS DE MÉRITO Olgierd Eysymontt C. Gerente de Desarrollo Tea Ltda. Almirante Riveros 0170, Providencia, Santiago, Chile Teléfono: 56-2-6342392 Fax: 56-2-6657452 Email´: [email protected] WEB: www.tea-tec.cl RESUMEN En este artículo se presenta una metodología para procesar en forma automática variables complejas y de interés para el monitoreo de condición de operación de maquinaria. Tal es el caso de espectros de vibración y señales de corriente eléctrica, entre otros. La metodología permite incorporar criterios similares a los que un analista humano aplicaría, en forma flexible y simple, sin quedar limitado a un conjunto de funciones de análisis reducido. Para esto utilizamos el concepto de Figura de Mérito, implementada a través de intérpretes de lenguaje Python, que mediante scripts o pequeños trozos de código realizan el procesamiento de los datos y generan índices representativos. Se presenta una discusión respecto de la utilidad y necesidad de una plataforma de análisis basada en figuras de mérito. Se analiza el desarrollo de algunas de ellas y los resultados obtenidos mediante la plataforma Sismo.

description

predictive mantenainace paper

Transcript of Figuras Merito Articulo

Page 1: Figuras Merito Articulo

USO DE INTÉRPRETES EN EL PROCESAMIENTO DE VARIABLES DE CONDICIÓN DE OPERACIÓN MEDIANTE FIGURAS DE

MÉRITO

Olgierd Eysymontt C.Gerente de DesarrolloTea Ltda.Almirante Riveros 0170, Providencia, Santiago, ChileTeléfono: 56-2-6342392Fax: 56-2-6657452Email´: [email protected]: www.tea-tec.cl

RESUMEN

En este artículo se presenta una metodología para procesar en forma automática variables complejas y de interés para el monitoreo de condición de operación de maquinaria. Tal es el caso de espectros de vibración y señales de corriente eléctrica, entre otros. La metodología permite incorporar criterios similares a los que un analista humano aplicaría, en forma flexible y simple, sin quedar limitado a un conjunto de funciones de análisis reducido.

Para esto utilizamos el concepto de Figura de Mérito, implementada a través de intérpretes de lenguaje Python, que mediante scripts o pequeños trozos de código realizan el procesamiento de los datos y generan índices representativos.

Se presenta una discusión respecto de la utilidad y necesidad de una plataforma de análisis basada en figuras de mérito. Se analiza el desarrollo de algunas de ellas y los resultados obtenidos mediante la plataforma Sismo.

Page 2: Figuras Merito Articulo

INTRODUCCIÓN

La llegada de sistemas continuos de monitoreo de variables de condición, aplicados a mantenimiento predictivo, ha generado la necesidad de herramientas capaces analizar de forma flexible grandes volúmenes de información.

Si bien los sistemas de monitoreo continuo (SMC) existen desde hace un tiempo en el mercado, habitualmente carecen de la flexibilidad y criterio que un analista especializado puede entregar, dificultando las tareas de análisis y detección oportuna de fallas.

En el mercado se han desarrollado sistemas expertos que correlacionan variables y toman decisiones en función de los datos obtenidos. Sin embargo, su aplicación práctica ha generado problemas en los usuarios debido a la complejidad en la configuración y la cantidad de información requerida, mucha de la cual debe ser ingresada en forma manual.

A continuación, describiremos cómo se realiza el proceso de análisis de variables complejas, como el caso de las señales de vibraciones, y luego discutiremos sobre un nuevo esquema de análisis por medio de las denominadas Figuras de Mérito. Este esquema de análisis se ha implementado en la plataforma Sismo, por lo cual primero explicaremos algunas de las características principales de la plataforma, para luego analizar la implementación de Figuras de Mérito y las ventajas en el análisis de variables.

EL PROCESO DE ANÁLISIS DE VIBRACIONES

El análisis de vibraciones es un proceso particularmente complejo debido a la naturaleza bidimensional de esta variable, la cual tiene una característica temporal y otra en frecuencia. Por esta razón, las herramientas estadísticas que permiten realizar análisis sencillos inmediatos por medio de tendencias, quedan limitadas en su aplicación en este tipo de variables. Por ejemplo: podemos analizar fácilmente la evolución de una variable de temperatura en el tiempo, pero la evolución de un espectro de vibraciones en el tiempo es ya un diagrama tridimensional, también conocido como gráfico de cascada, por lo que su análisis ya no es trivial de realizar en forma automatizada.

Si analizamos la manera en la que un especialista procesa los datos, dependiendo del tipo de máquina a analizar y de la experiencia del especialista, podremos identificar dos procesos básicos para determinar el estado de las máquinas:

• Identificación de parámetros: La identificación de parámetros extraíbles a partir de los datos recolectados, como por ejemplo: presencia de ruido o frecuencias de falla de rodamientos, el espaciamiento armónico o no armónico de los peaks de vibración, su amplitud relativa y absoluta, etc.

• Aplicación de criterios: La aplicación de procesos lógicos de decisión sobre los parámetros extraídos de los datos. Es decir, el analista toma una decisión sobre el estado de la máquina, en función de la información recopilada y pre-procesada (de la que se han extraído parámetros de interés). Esto implica muchas veces el análisis de variables de distinta naturaleza que se correlacionan para determinar la condición de operación de la máquina (como vibraciones, temperaturas, estado de aceites, etc.).

Page 3: Figuras Merito Articulo

Los sistemas expertos habitualmente realizan un procesamiento mecánico de la información en base a un conjunto preprogramado de reglas. Estos son capaces de generar un conjunto finito de índices o parámetros de interés, ya que el algoritmo de generación de estos índices esta codificado al interior del mismo software, dejando poco espacio a la adecuación para situaciones no previstas en la etapa de diseño.

Una solución al problema, sería poder definir el análisis adecuado a cada máquina o tipo de máquina en forma flexible. Esta definición se realiza al momento de la puesta en marcha de los sistemas, instancia en la que se definirían los índices necesarios para esa máquina en particular, transfiriendo parte del criterio del analista a un proceso automatizado, que reporte alarmas cuando se requiera de la atención de éste.

Este problema, si bien relativamente nuevo a los sistemas de monitoreo de condición de operación, es ya bien conocido en el mundo del desarrollo de software de negocios. En este tipo de software, la necesidad de traspasar la lógica del negocio al software, ha generado distintas soluciones. De éstas, las que han tenido mayor éxito, han sido las que permiten ingresar en forma flexible las reglas que definen la operación del negocio y los flujos de información, entre el software de administración y los usuarios.

Siguiendo esta misma idea, se hace necesario entonces una aproximación distinta al problema, en que el análisis de los datos y la toma de decisiones se simplifiquen y se vuelvan triviales. Esto permite a un analista especializado, aportar su criterio a un conjunto de datos preprocesados de manera flexible, dependiente de la naturaleza de cada máquina y su operación.

LA PLATAFORMA SISMO

En este artículo utilizaremos la plataforma Sismo debido a su capacidad de tomar muestras de datos, aplicando conjuntos de análisis flexibles definidos por el usuario.

Sismo se compone de unidades remotas de adquisición (URA) de datos, situadas habitualmente cercanas a las máquinas a monitorear. Estas unidades poseen la capacidad de medir diversos tipos de sensores en forma continua o puntual como: temperatura, velocidad, vibraciones, e incluso variables eléctricas y de proceso. La captura de señales de vibraciones puede ser realizada a tasa fija o sincrónica [6], con largos de muestras de hasta 262.144 muestras por vez, permitiendo recoger espectros de gran resolución.

Las URA’s se conectan a una red distribuida de equipos de comunicaciones y finalmente almacenan toda su información en una base de datos central, que puede ser accesada en forma local o remota mediante un software cliente que permite la configuración y operación del sistema.

Sismo se define como una plataforma debido a que permite la medición y el análisis de la información en forma definida por el usuario, siendo éste es el que define qué medir y qué índices obtener a partir de las muestras adquiridas. El procesamiento de la información en la plataforma Sismo se realiza mediante lo que se conoce como Figuras de Merito.

Figuras de Mérito

Page 4: Figuras Merito Articulo

Una figura de mérito representa un índice, definido por el analista, que idealmente representa una falla característica de una máquina en particular o algún parámetro de interés para el análisis posterior. Una figura de mérito puede ser vista también como un operador matemático que entrega un resultado en función de una muestra de datos. También puede pensarse en una figura de mérito como un filtro programable de información.

La potencia de la figuras de mérito recae en su implementación que, más que ofrecer un conjunto reducido de operadores, ofrece un lenguaje de programación al usuario para que este defina con absoluta flexibilidad las operaciones a realizar. En el caso de la plataforma Sismo, esta ofrece un conjunto de funciones predefinidas y asistentes que facilitan la introducción a la programación de figuras de mérito para personas sin experiencia anterior en programación de computadores

El lenguaje utilizado para definir las figuras de mérito en el caso de Sismo es Python [2]. Este es un lenguaje moderno y simple de programar, del que existen abundantes recursos en Internet, tales como: librerías nativas de acceso a bases de datos, librerías de análisis numérico y científico [3], comunicaciones industriales [4] comunicaciones seriales [5], envío de emails y mucho más.

La programación de figuras de mérito no posee requisitos, por lo que una figura de mérito también puede ser utilizada como un pequeño programa para ejecutar cualquier función. Ejemplos de esto son enviar un mensaje a un usuario, generar un índice o ambas. La flexibilidad es total.

Implementación de figuras de mérito

La naturaleza flexible de la medición en la plataforma Sismo permite que las muestras de vibración sean adquiridas a frecuencias de muestreo y número de muestras arbitrarias y definidas por el usuario. Cada una de estas mediciones, representa una orden que debe ejecutar una URA en particular. A esta orden llamaremos Comando y el resultado de su ejecución podrá ser un valor numérico simple como la temperatura o velocidad de la máquina, o bien, un arreglo de datos que representen una muestra en el tiempo de vibraciones, velocidad u otra señal.

Las figuras de mérito generadas se asocian a un comando en particular y se diseñan para analizar esa muestra de datos en particular. En cada Comando es posible implementar tener todas las figuras de mérito que se desee.

Ejecución de figuras de mérito

Las Figuras de mérito se ejecutan luego de la ejecución del Comando respectivo. Para su ejecución, se genera un ambiente de ejecución que se carga con las variables y objetos necesarios para simplificar la tarea al asistente. De este modo, el usuario sólo debe ingresar el algoritmo de análisis. Este ambiente de ejecución es un Intérprete de Python, cargado con los datos del comando en particular que ejecuta las sentencias especificadas en el código de cada una de sus figuras de mérito.

En el caso de la plataforma Sismo y para el caso de comandos de medición de aceleración, velocidad y temperatura, los datos insertados al ambiente de ejecución son

• Comandos de vibración : - La muestra tomada del sensor de vibración (acelerómetro)- El módulo de la FFT de esta muestra

Page 5: Figuras Merito Articulo

• Comando de muestras de velocidad vuelta a vuelta- La muestra tomada del tacómetro (Proxímetro inductivo)

• Comandos de valores de velocidad y temperatura- El valor leído del sensor de temperatura (RTD)- Funciones de acceso que permite obtener datos históricos para hacer análisis

estadístico de los valores.

Adicionalmente, cada ambiente es cargado con elementos de conexión a la base de datos, de manera de: inyectar órdenes de ejecución de comandos, ingresar datos al registro de eventos del sistema o realizar consultas de información.

Las figuras de mérito pueden ser generadas con posterioridad a las mediciones y pueden ser ejecutadas sobre muestras de datos ya adquiridas o antiguas, convirtiéndose en filtros de post-proceso.

Determinación de límites para figuras de mérito

Las figuras de mérito no realizan necesariamente operaciones normadas sobre los datos, por lo que en la mayoría de los casos no existen normas al respecto, por tanto, los límites dependerán primariamente de la experiencia del analista y el análisis en el tiempo de las condiciones de operación de la máquina que permitan identificar las condiciones de falla en las figuras de mérito.

Análisis multi-variable y el motor de reglas

Todo lo que hemos revisado hasta ahora corresponde al análisis de muestras o valores correspondientes a un solo Comando particular, con el objetivo de generar los parámetros necesarios para poder tomar decisiones.

Las decisiones automatizadas en la plataforma Sismo se realizan a través del motor de reglas.

El motor de reglas es el componente de Sismo que ejecuta en orden las reglas definidas por el usuario. Las reglas no son más que scripts o pequeños programas similares a las figuras de mérito, cuyo ambiente de ejecución o intérprete ha sido cargado con todas las figuras de mérito del sistema. De esta manera, es posible realizar análisis multi-variable.

En la plataforma Sismo [1], los comandos son ejecutados en bloques o ciclos según una agenda definida por el usuario. Las reglas se ejecutan una vez que todos los comandos del ciclo de medición han sido ejecutados, así como cada una de sus correspondientes figuras de mérito.

METODOLOGÍA

Para mostrar el funcionamiento de las figuras de mérito hemos generado algunos ejemplos que se presentan junto con los resultados de su ejecución. Para este artículo, hemos trabajado con un comando de medición sincrónica de baja resolución que permite detectar condiciones anormales. Este comando a su vez, permite desencadenar la ejecución otro comando de alta resolución ante una detección de condición anormal, de manera que existan datos detallados de la condición encontrada dentro de la misma figura de mérito.

Page 6: Figuras Merito Articulo

Las figuras de mérito programadas fueron ejecutadas durante un mes y los resultados se muestran en cada caso. Las figuras de mérito programadas han sido hechas deliberadamente simples para facilitar su entendimiento. No se presenta el código de reglas ya que estas no generan resultados gráficos sino acciones operativas, como por ejemplo, enviar un email; por lo que es muy difícil mostrar su funcionamiento en este artículo.

Figuras de mérito de comando de aceleración sincrónica

Este comando es de baja resolución (2,048 líneas) por lo que utiliza poco espacio de almacenamiento. Sin embargo, permite detectar las condiciones anómalas y programar la ejecución de un comando similar pero de mucha mayor resolución (131,072 líneas) que permita al analista disponer de información de detalle de la condición anómala.

El módulo de la FFT de una muestra de este comando se presenta en la figura 1.

Figura 1: Comando de vibración sincrónica de baja resolución

La ventaja de este comando es que al ser muestreado en forma sincrónica, el análisis de la información es muy sencillo pues los peaks de vibración no cambian de posición en el tiempo, ante fluctuaciones de velocidad de la máquina.

La información capturada durante un mes por este comando, es procesada a través de las figuras de mérito y su resultado se grafica posteriormente.

Las figuras de mérito generadas para este comando son:

1X – armónico fundamental

El código que genera esta figura de mérito es:

# TODO LO QUE COMIENZA CON “#” ES UN COMENTARIO# Calculo de la energía entre armónicas de una FFT# consideramos una banda de 0.2X alrededor del bin 1X

# limites de la banda en términos armónicosarmonica_ini = 0.9 armonica_final = 1.1

Page 7: Figuras Merito Articulo

# llamamos al utilitario que suma la energíaenergia = VibSync.energyHarm(fm,fft,armonica_ini,armonica_final)# establecemos el valor de la figura de merito fm.setCalc_val(energia)

# determinamos si hay que ejecutar el comando de alta resoluciónnumero 4355 limite_energia = 0.1if energia > limite_energia:

fm.addComandoCola(4355,1)

Como vemos, el comando es bastante sencillo, solo utiliza la llamada a una función auxiliar que suma la energía en la banda deseada y la función auxiliar que programa la ejecución del comando de alta resolución. El resultado de esta figura de mérito sobre los datos de un mes, para este mismo comando (tomados cada 20 minutos) se presentan en la figura 2.

2X – Segunda componente armónica

En forma análoga al caso anterior, se genera una figura de mérito para rastrear la componente 2X. El resultado se presenta en la figura 3.

Porcentaje de la energía total de la suma de las bandas 1X y 2X

Esta figura de mérito calcula la relación entre la energía de las bandas 1X y 2X sumadas respecto a toda la energía vibratoria generada por la máquina, cuyo código se presenta a continuación:

energia_1X2X = VibSync.SumaArm(fm,fft,0.95,1.05)+VibSync.SumaArm(fm,fft,1.95,2.05)energia_total= VibSync.SumaArm(fm,fft,0.01,31.99)# entregamos el resultado de la figura de meritoporc = 100*energia_1X2X/energia_totalfm.setCalc_val(porc)

Energía total

Para estimar la energía total (no potencia espectral), se ha utilizado simplemente la suma de las componentes de la FFT, el código es:

# Calculo de la energía entre armónicas de una FFTarmonica_ini = 1 # este espectro cubre hasta la armónica 32armonica_final = 31.9 # usamos una función auxiliar que realiza la suma energia = VibSync.SumaArm(fm,fft,armonica_ini,armonica_final)fm.setCalc_val(energia)

# determinamos si hay que ejecutar el comando de alta resoluciónlimite_energia = 10if energia > limite_energia:

fm.addComandoCola(4355,1)

Page 8: Figuras Merito Articulo

Numero de armónicos presentesEsta figura de mérito cuenta los peaks armónicos sobre un determinado umbral.

# este script cuenta el numero de armónicos presentes sobre un umbral determinadoumbral=1E-3; # = 1 mgcontador=0;for i in range(1,32):

ini = i-0.01;fin = i+0.01; energia = VibSync.energyHarm(fm,fft,ini,fin);if energia >= umbral :

contador=contador+1print 'Armonico ',i,' sobre el umbral'

# entregamos el resultado de la figura de meritofm.setCalc_val(contador)

# determinamos si hay que ejecutar el comando de alta resoluciónif contador > 2:

fm.addComandoCola(4355,1)

% armónico respecto del total

Para estimar la porción de la energía espectral que corresponde a componentes armónicos, hemos generado la siguiente figura de mérito:

# Calculo de la energía total armónicalen_fft=len_sample/2;

# las figuras de merito pueden generar mensajes de texto para revisar su ejecuciónprint 'Len sample =' , len_sample;print 'Len fft =' , len_fft;

# Calculamos la energía totalenergia=VibSync.Suma(fft,0,len_fft-1);print 'energia = ',energia;energia_mg=energia*1000;print 'energia en mg = ',energia_mg;

# energía de las armónicasenergia_arm=0;# iteramos para sumar las 31 armónicas del espectrofor i in range(1,31):

energia_banda=VibSync.SumaArm(fm,fft,i-0.1,i+0.1);energia_arm=energia_arm+energia_banda;#print 'Arm ',i,' desde ',ini,' hasta ',fin,', energia=',energia_banda,' energia

acumulada=',energia_arm;

# convertimos la energía a unidad mgenergia_arm_mg=energia_arm*1000;porc_arm = 100*energia_arm_mg/energia_mg;

# desplegamos un mensajeprint 'energia arm total = ',energia_arm_mg,' (mg), % del total=',porc_arm,'%';

# establecemos el valor de la figura de meritofm.setCalc_val(porc_arm);

Page 9: Figuras Merito Articulo

RESULTADOS Y DISCUSIÓN

A continuación se presentan gráficos con los índices generados mediante las figuras de mérito antes descritas.

1X – Armónica Fundamental

Figura 2: 1X

2X – Segunda Armónica

Análogo al anterior, se genero una figura de mérito para rastrear la componente 2X, el resultado se presenta en la figura 3.

Figura 3: 2X

Page 10: Figuras Merito Articulo

Porcentaje de la suma de las bandas 1X y 2X respecto de la energía total

Figura 4: % de la energía de las bandas 1X y 2X respecto del total

Energía total

Figura 5: Energía total

Numero de armónicos presentes

Figura 6: Número de armónicos presentes

Page 11: Figuras Merito Articulo

Porcentaje armónico respecto del total

Figura 7: % armónico respecto del total

Como se puede apreciar de los gráficos anteriores, las figuras de mérito son una potente herramienta, permitiendo extraer información de detalle sobre muestras muy complejas de datos, como es el caso de los espectros de vibración.

CONCLUSIONES

• Las figuras de mérito implementadas mediante intérpretes de lenguaje Python efectivamente resuelven el problema de extraer índices a partir de muestras complejas.

• Las figuras de mérito permiten al analista traspasar parte de su criterio a sistemas automatizados de medición y análisis como la plataforma Sismo.

• La flexibilidad en la programación de las figuras de mérito permite adecuar el análisis a cualquier tipo de variable por compleja que esta sea.

• Las figuras de mérito constituyen la base de un sistema experto basado en el criterio y experiencia que puede ir adaptándose en el tiempo a los cambios en las máquinas, los procesos u otras condiciones.

• Las figuras de mérito permiten el desarrollo de índices muy complejos, junto con la incorporación y desarrollo de nuevas técnicas de análisis complementarias. Tal es el caso wavelets, filtros digitales FIR y IIR, procesos de demodulación de señales, etc. Esto es posible de implementar en forma sencilla, ya que estas corresponden a algoritmos que pueden utilizarse externamente, o bien, es posible desarrollarlas en el mismo intérprete en Python, U claro ejemplo de esto es la librería SciPy [3] y otras que incorporan una gran cantidad de algoritmos matemáticos pre-programados, los cuales pueden incorporarse para su uso en figuras de mérito.

Page 12: Figuras Merito Articulo

• La capacidad de ejecutar figuras de mérito sobre muestras ya adquiridas en el tiempo, permite extender el uso de las figuras de mérito de Sismo para realizar análisis estadístico y determinación de patrones de falla, tala como un verdadero laboratorio digital de análisis de señales.

REFERENCIAS

[1] Tecnologías Electrónicas Aplicadas (Tea) Ltda., http://www.tea-tec.cl

[2] El lenguaje Python http://www.python.org

[3] SciPy http://www.scipy.org/

[4] PPLT http://pplt.berlios.de/

[5] PySerial http://pyserial.sourceforge.net/

[6] Olgierd Eysysmontt - Aplicación del muestreo sincrónico al mantenimiento predictivo - MAPLA 2006

©Derechos reservados por Olgierd Eysymontt, TEA Ltda., prohibida su reproducción parcial o total sin el consentimiento del autor.