0% encontró este documento útil (0 votos)
10 vistas11 páginas

Colector de Datos de Vibraciones DSP

Este documento describe un colector de datos portátil basado en tecnología de procesamiento digital de señales (DSP) para medir parámetros de vibraciones en máquinas. El colector usa un DSP para adquirir señales, procesar datos y presentar mediciones. Puede medir más de 1000 puntos con resolución de 400 líneas. Cuenta con baterías recargables para autonomía extendida y una interfaz robusta sin partes móviles. En el futuro se planea agregar análisis automáticos usando intelig

Cargado por

Daniel Sepulveda
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas11 páginas

Colector de Datos de Vibraciones DSP

Este documento describe un colector de datos portátil basado en tecnología de procesamiento digital de señales (DSP) para medir parámetros de vibraciones en máquinas. El colector usa un DSP para adquirir señales, procesar datos y presentar mediciones. Puede medir más de 1000 puntos con resolución de 400 líneas. Cuenta con baterías recargables para autonomía extendida y una interfaz robusta sin partes móviles. En el futuro se planea agregar análisis automáticos usando intelig

Cargado por

Daniel Sepulveda
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

COLECTOR DE DATOS PARA VIBRACIONES BASADO EN DSP

Ing. Javier I. Roitman*, Rodrigo Alcoberro ∗, Ing. Claudio Verrastro **


Grupo de Inteligencia Artificial,
Facultad Regional Buenos Aires.
Universidad Tecnológica Nacional.

Palabras Clave: DSP, portátil, multirate, vibraciones, colector de datos.

Resumen:
Se presenta un colector de datos portátil basado en tecnología de Procesamiento Digital de Señales (DSP) para captura de
parámetros de vibraciones en elementos rotativos de máquinas de mediano y gran porte, para su uso en el mantenimiento
preventivo y predictivo de tales máquinas. Sus características principales son: el empleo del DSP tanto para el procesamiento
de las señales adquiridas como para la gestión y presentación gráfica de las mediciones, evitándo se el uso de un segundo
procesador a tal efecto; una construcción robusta y confiable carente de partes móviles; gran capacidad de memoria no
volátil y extensa autonomía. Dada la potencia del equipo y flexibilidad del diseño centrado en el software, se pla nea en un
futuro dotarlo de herramientas de análisis automatizadas aplicando técnicas de inteligencia artificial.

comunicación serie con una computadora personal


1. Introducción compatible PC.

1.1. Función del equipo La construcción sumamente robusta y un paquete de


baterías recargables de NiMH, permite obtener una
El colector de datos fue diseñado para medir y unidad muy confiable, liviana, de bajo costo, con gran
almacenar el estado de vibración, tanto en aceleración autonomía, alta velocidad de procesamiento y fácil
como en velocidad, de mas de 1000 puntos. Estas manejo reemplazando con ventaja a una versión anterior
mediciones pueden ser de valores pico, eficaz o espectro basada en una notebook 486.
de frecuencias con 400 líneas de resolución. Funciona
además como analizador de primera instancia ya que La plataforma de hardware está integrada por un kit
posee distintos tipos de alarmas configurables. Una de de desarrollo estándar de DSP, una segunda placa de
las ventajas de la utilización de este tipo de equipos es circuito impreso que aloja la memoria y las interfaces de
que no se debe detener la máquina a ensayar y disminuye pantalla y teclado, además de la electrónica para el
considerablemente el riesgo de sufrir paradas por fallas acondicionamiento de la señal del sensor, el cargador de
imprevistas. baterías y una pantalla gráfica LCD.

Como elemento trasductor se utiliza un acelerómetro Cuenta con un convertidor A/D de dos canales, 16
activo que entrega un nivel de señal adecuado al circuito bits de resolución y una tasa máxima de muestreo de
de entrada del equipo. 48Ks/s. El procesador, de arquitectura Harvard
modificado, posee una capacidad de memoria RAM
El equipo está centrado alrededor de un procesador interna de 16384 palabras de 24 bits para código y datos,
digital de señales ADSP -2181, de 16 bits de palabra de y otras tantas, de 16 bits, sólo para datos. La frecuencia
datos y punto fijo. El diseño toma ventaja de la gran de reloj es de 33MHz, con un rendimiento del orden de
velocidad de procesamiento de estos dispositivos los 33MIPS. Para el almacenamiento masivo de los
empleándolos no sólo para las tareas de adquisición, datos, cuenta con un dispositivo NVRAM de 2MB, el
procesamiento y medición de la señal, que es la más grande disponible al momento de realizado el
aplicación clásica de un DSP, sino también, por desarrollo. La interfaz con el usuario está implementada
consideraciones de tamaño y consumo, para ejecutar la mediante una pantalla LCD gráfica de 320x240 pixeles
interfaz con el usuario, la adminis tración de la base de de resolución, iluminación de descarga gaseosa y un
datos jerárquica, la presentación gráfica de las teclado de cuatro teclas, cuyas funci ones son asignadas
mediciones y la emulación de un UART (Universal dinámicamente. La Fig. 1 muestra el aspecto real del
Asynchronous Receiver Transmitter) para la equipo.

*
UTN FRBA E-mail: jroit@[Link]
**
UTN FRBA - CNEA
La programación se estructura en dos grandes Procesador: ADSP2181 a 33MHz
bloques. En primer lugar, la adquisición de los datos, Cuantización: 16 bits
procesamiento y medición, realizados íntegramente en Ancho de banda: 10Hz a 10KHz (Fs = 32kHz)
lenguaje ensamblador con el fin de obtener el máximo Escala de frecuencias: 100Hz a 10KHz en pasos
rendimiento y lograr un aprovechamiento integral de los 1,2,5.
recursos del procesador. En segundo término, la Resolución espectral: 400 líneas nominales.
administración de la base de datos, transferencia de Señal de Entrada: Acelerómetro activo.
datos, presentación de mediciones, configuración del Escalas de aceleración: 0.2G a 100G.
equipo y demás tareas operativas están codificadas en Escalas de velocidad: 0.2mm/s a 100mm/s.
lenguaje ANSI-C. Esto permitió su desarrollo y Cambio de escalas: Automático, en pasos 1,2,5.
depuración en PC, al tiempo que facilitó la manipulación Promediado: 1, 2, 5, 10, 20 o 50 mediciones
de tipos de datos complejos como ser cadenas de Mediciones: Espectro de aceleración.
caracteres, números en coma flotante y estructuras. Entre Espectro de velocidad.
los algoritmos de procesamiento de señales Valor Eficaz de aceleración.
implementados se cuentan la adquisición y filtrado de Valor Pico de aceleración.
señales a múltiples frecuencias de muestreo por Valor Eficaz de velocidad.
decimado e interpolado (procesamiento multi-rate), Valor Pico de aceleración.
transformada rápida de Fourier, integración, cálculo de Capacidad de almacenamiento de aproximadamente
verdadero valor eficaz, y en un futuro próximo, 1000 mediciones en una memoria RAM no volátil de
detección de envolvente. 2MB de capacidad.
Vínculo a PC serie RS232 a 115200 bps máximo.
Otro punto de interés en la programación es que Autonomía de mas de 8 horas con alimentación propia
careciendo el equipo de una UART, la misma se ha interna.
emulado por programa, alcanzando velocidades de Medición manual o automática.
transferencia de 115200 bps mientras opera en el
trasfondo de otros procesos. 2. Arquitectura del equipo

2.1. Diagrama en bloques

RTC CONTROL
BAT. TECLADO
DS1302 DISPLAY
3V
SED1330
LITIO INTERFAZ + RAM 32Kb
DISPLAY
AIN Etapa FLAGS
SPORT0

Analógica CODEC DISPLAY


de AD1847 LCD Gráfico
Entrada 320x240
ADSP-2181 BUS
I/O
33MHz
SPORT1

Interfaz
RS232-TTL PUERTO I/O
BDMA AUXILIAR
RS-232 TXD 8 E + 8S
DB-9 RXD
EPROM 27C010
Reg. Switching de Arranque
VCC
BATERÍA +5V CC 128Kb Estado Ganancia
PRINCIPAL Bateria
9.6V Reg. Switching Contraste NV-RAM DS1270
Fig. 1: Fotografía del equipo 2200mAH -20V CC LCD Alm. Datos
Recargable 2Mb
Inversor Iluminador LCD Selección
NiMH
800V CA (CCFL) Entrada

Fig. 2: Diagrama en bloques

1.2. Campo de Aplicación

El equipo se puede utilizar para recolectar las El equipo posee una etapa analógica de entrada que
vibraciones provenientes de equipos rotativos. En la tiene como función adaptar la impedancia de salida del
industria en general, aeronáutica, automotrices, etc. que sensor a la de entrada del CODEC y ajustar la amplitud
adopten el sistema de mantenimiento predictivo y de la señal de salida del acelerómetro a 20mV/G.
preventivo como método de trabajo. Por su robustez y
elevada autonomía cuadra perfectamente en la categoría El CODEC AD1847 posee un convertidor A/D
de equipo de medición en campo. Sigma-Delta con una resolución de 16 bits y una
frecuencia de muestreo máxima de 48 kS/s. Utiliza la
técnica de sobremuestreo, muestreando la señal a una
1.3. Características
frecuencia mucho mayor que la frecuencia de Nyquist
Las características mas sobresalientes del colector con una resolución de un bit. Luego posee un
son las siguientes: conformador de ruido que disminuye el ruido en la
banda de frecuencias por debajo de Fs/2, siendo Fs la para emular la UART. El puerto de FLAGS es de 8 bits,
frecuencia de Nyquist. Un filtro digital del tipo FIR y un programable bit a bit como entrada o salida, y se utiliza
decimador logran la resolución de 16 bits y la tasa para controlar el RTC, el teclado y la interfaz para la
deseada respectivamente. pantalla. El bus de I/O es de 8 bits y a través de él se
intercambian los 8 bits de datos entre el DSP y la
El DSP carga el programa en la memoria de pantalla gráfica.
Programas interna (RAM) durante el arranque del equipo
desde la memoria EPROM 27C010 mediante un proceso La alimentación es autónoma y está compuesta por
llamado BOOTSTRAP LOADING. El DSP comienza un paquete de baterías de NiMH, un regulador
este proceso cargando y ejecutando las primeras 32 conmutado de 5VCC para alimentar la lógica y otro de
palabras de la EPROM a través del BDMA (Byte-wide -20VCC para el contraste del LCD. La iluminación del
Direct Memory Access). A su vez, este fragmento de LCD es provista por un inversor que entrega 800VCA.
código configura el BDMA para cargar el resto del
programa.
2.2. Estructura del programa
Como memoria de almacenamiento principal para las La señal procesada por las etapas analógicas de
mediciones y algunas variables de estado se utiliza una entrada es muestreada a 32Ks/s. Debido a que las
NVRAM (Non-Volatile Random Access Memory) frecuencias de muestreo disponibles en el convertidor
Dallas DS1270 que posee un tiempo de retención de 5 A/D no coincidían con las requeridas por el proyecto, se
años y una capacidad de 2Mb. Este dispositivo tiene la eligió tomar muestras a esta frecuencia y luego emplear
forma de un híbrido, incorporando la RAM, la batería y un algoritmo de conversión de frecuencia de muestreo
los circuitos de protección contra escritura (cuando la por programa. De esta forma fue posible obtener un
tensión de alimentación principal cae por debajo de un amplio rango de frecuencias tales que los espectros
umbral) y conmutación de la fuente de alimentación. El resultasen con la resolución y ancho de banda
tiempo de acceso es de 100ns. Los datos desde la requeridos.
memoria y a ella se transfieren a través de BDMA.
El equipo puede realizar una de tres mediciones
Posee un reloj de tiempo real (RTC) DS1302 con básicas: valor pico, valor eficaz o espectro. Los
alimentación independiente y una pequeña memoria que resultados de las mediciones son luego promediados. Las
se comunica con el DSP en forma serie a través de una frecuencias de muestreo, los tipos de medición y la
interfaz serie hecha por software. cantidad de mediciones a promediar son seleccionadas
por el usuario, ya sea a través de una secuencia o ruta de
La interfaz de pantalla funciona como un bus mediciones previamente confeccionada y que se
bidireccional de 8 bits de baja velocidad ya que el DSP descarga en el equipo desde una computadora PC
es mucho mas rápido que el controlador de la pantalla. compatible, o bien en forma directa para realizar
Esta interfaz posee un registro que mantiene los datos mediciones adicionales fuera de ruta.
provenientes del DSP el tiempo necesario para que
puedan ser tomados por dicho controlador, y un buffer También es posible recoger información de variables
TRI-STATE para leer la memoria de video o el estado. de proceso (presión, temperatura, etc.). Estos valores son
Las señales de CHIP SELECT, WRITE, READ, se ingresados por teclado.
manejan manualmente.
Cada medición de la ruta lleva asociada dos máscaras
El controlador de pantalla es un SED1330 que de alarma (una de precaución y otra de emergencia),
permite utilizar hasta dos capas superpuestas de texto y valores límite y valores históricos. Para mediciones
gráficos. La forma en que interactuan estas capas es espectrales, la máscara puede contener hasta diez bandas
programable. Su frecuencia de reloj es de 10 MHz e de frecuencia, cada una con sus propios umbrales de
incorpora 32 KB de memoria RAM. El generador de precaución y emergencia. Esto permite ajustarla a la
caracteres interno conforma la norma JIS 5 x 7 firma espectral particular de cada máquina.

La pantalla es de cristal líquido con una resolución de


320 x 240 pixels en modo gráfico y 30 renglones por 40 2.3. Interfaz con el usuario
columnas en modo texto. Es la pantalla de mayor
resolución que puede manejar este controlador. Est á La interfaz con el usuario emplea la pantalla y el
iluminada por una lámpara de descarga gaseosa de alto teclado. La operación resulta simple e intuitiva. Las
teclas están dispuestas verticalmente, duplicadas a
rendimiento.
ambos lados del equipo a fin de facilitar su uso con una
sola mano para operadores diestros y zurdos (Ver Fig.
El DSP se conecta al CODEC a través del puerto
1).
serie 0 (SPORT0). El puerto serie 1 (SPORT 1) se utiliza
Un menú principal controla las principales funciones
del colector: operación, recepción de rutas conteniendo
las mediciones a realizar, transmisión de las mediciones
efectuadas, posibilidad de realizar mediciones fuera de
ruta y control de configuración y estado.

Una serie de sub-menúes permite recorrer la ruta en


forma jerárquica, seleccionando la máquina a medir y
dentro de la misma, el punto, tipo y parámetros de la
medición.

Existen dos modos de operación: manual y


automático. En el modo manual, el operador selecciona Fig. 4: Pantalla de medición de valor eficaz
la medición a realizar, pudiendo acceder en forma
aleatoria a cualquiera programada en la ruta. En el modo
automático, el equipo recorre secuencialmente la ruta
partiendo de la medición actual y hasta completar la ruta
o ser detenido por el operador. El equipo informa al 3. Algoritmos implementados
operador cuando ha completado una medición, cuál es el
3.1. Conversión de la frecuencia de muestreo
próximo punto a medir, y pide confirmación antes de
continuar. El operador sólo debe ocuparse de colocar el Al emplearse la FFT como algoritmo de cálculo del
sensor en los lugares indicados. espectro y, estando la resolución espectral fijada por
especificaciones en 400 líneas, las frecuencias de
La Fig. 3 muestra un ejemplo de la pantalla, durante muestreo para cada ancho de banda quedan
la medición de espectros. El valor RMS global, la fecha unívocamente determinadas.
y resultado de la medición histórica anterior y los
parámetros de la medición se muestran en el costado El algoritmo FFT requiere vectores de entrada de
derecho. También pueden verse el cursor de medición y longitud N=2K y su resolución espectral nominal es de
las máscaras de alarma de precaución (línea de trazos) y FS/N, donde FS es la frecuencia de muestreo. En nuestro
emergencia (línea llena). caso, para obtener 400 líneas de salida, N=1024.

La Fig. 4 muestra una pantalla de medición escalar Luego de muestrear la señal con una frecuencia de
usada para mostrar los valores pico y eficaz 32KHz se aplican los algoritmos de interpolación y
decimado a fin de obtener las frecuencias de muestreo
necesarias.

Interpolar significa generar una señal con una


frecuencia de muestreo L veces mayor que la de entrada.
Para lograrlo se intercalan L-1 muestras de valor cero
entre cada muestra original, obteniéndose L muestras de
salida por cada una de entrada. Este proceso tiene dos
efectos colaterales: el primero es una reducción de la
amplitud de la señal, ya que la energía de cada muestra
de entrada se debe repartir entre L muestras de salida; el
segundo es la producción de alias de la señal de entrada
alrededor de su frecuencia de Nyquist original. La
reducción de amplitud se corrige multiplicando cada
muestra por un factor L. Los espectros alias se eliminan
Fig. 3: Pantalla de medición de espectros con filtrado pasabajos, el cual suaviza la salida,
asignando valores distintos de cero a las L-1 muestras
insertadas.

Decimar, por el contrario, significa generar una señal


de salida con una frecuencia de muestreo M veces menor
que la de entrada. El proceso puede verse como un sub-
muestreo digital. Se filtra la señal con un filtro pasabajos
anti-alias. Luego, por cada M muestras de entrada etapas en cascada se pueden usar filtros de menor orden,
filtrada se toma una y se descartan las otras M-1. resultando en una implementación más eficiente y que
requiere menos memoria y tiempo de cálculo (Proakis y
Eligiendo convenientemente los factores L y M, es Manolakis, 1996).
posible trasladar una señal de una frecuencia de
muestreo FS a otra FS*L/M. Este proceso se denomina El convertidor empleado en este equipo utiliza una
Conversión Racional de Frecuencia de Muestreo. etapa de interpolación con factor L ajustable y hasta tres
Cuando se combinan etapas de interpolación y decimado etapas idénticas de decimado en cascada con factor M
en cascada, los filtros de suavizado y anti-alias quedan fijo igual a 5, logrando factores de decimado de 5, 25 y
también en cascada, pudiendo eliminarse aquel de mayor 125. Los filtros permiten una cierta cantidad de alias en
frecuencia de corte. la banda de transición, ya que la misma será descartada
para el análisis. De esta forma se obtiene la respuesta en
La Fig. 5 muestra la estructura del convertidor de frecuencia requerida (ver Fig. 6 ) con filtros de sólo 84
frecuencia de muestreo básico. El bloque L inserta L-1 derivaciones. El tiempo de cálculo de cada filtro es de
muestras de valor cero por cada una de la secuencia de 2.7µs.
entrada x(n), incrementando su frecuencia de muestreo L
veces y produciendo la secuencia x(k). En el otro 20
extremo, el bloque M realiza la operación contraria, H( w )
removiendo M -1 muestras de la secuencia w(k) para dB 0
producir la secuencia de salida y(m) de frecuencia de -20
muestreo M veces inferior a w(k). Los bloques h1(k) y
h2(k) representan los filtros de suavizado y anti-alias, que -40
al quedar en cascada, se reemplazan por un único filtro
h(k). -60

-80

-100
Interpolador Decimador
x(n) y(m)
-L h 1(k) h2(k) M¯ -120
0 0.1 0.2 0.3 0.4 0.5
x(k) w(k) Frecuencia Normalizada f/FS
Fig. 5: Convertidor de frecuencia de muestreo Fig. 6: Respuesta en frecuencia de los filtros

Para una aplicación como esta, es conveniente elegir La Tabla 1 indica para cada uno de los alcances de
un filtro de tipo FIR (respuesta finita al impulso). Ya que ancho de banda del equipo, FMAX , los factores de
su salida sólo depende de las entradas previas y no tiene interpolado, decimado, frecuencia de muestreo FS y la
realimentación, puede lograrse una implementación más resolución nominal de los espectros obtenidos en cada
eficiente en términos de tiempo de cálculo al no tener caso.
que calcular la salida para cada muestra. Sólo se calculan
aquellas salidas que serán efectivamente usadas, FMAX Factor de Etapas de FS (Hz) Resol.
(Hz) Interpolado Decimado x5 (Hz/linea)
produciéndose de esta forma la reducción de la
100 1 3 256 0.25
frecuencia de muestreo. El diseño del filtro puede
hacerse por cualquier procedimiento convencional. 200 2 3 512 0.5
500 1 2 1280 1.25
1000 2 2 2560 2.5
Un detalle particular del diseño de filtros para
análisis espectral es que como el extremo superior de l 2000 4 2 5120 5
espectro se desecha, puede permitirse alias en esa región 5000 2 1 12800 12.5
y de esta forma obtener un filtro de menor orden. 10000 4 1 25600 25
Tabla 1: Factores de interpolado y decimado
Por último, cuando se desean implementar factores
de interpolado o decimado grandes (mayores o iguales a 3.2. Adquisición de datos
10) es conveniente emplear varias etapas en cascada en
lugar de una sola, tal que el producto de los factores sea Por lo expresado arriba, se requieren entonces
igual al factor original. Cuando se utilizan factores vectores de entrada de 1024 muestras, tomadas con la
grandes, es necesario filtrar con bandas de transición frecuencia de muestreo adecuada para poder obtener un
menores y por ende, con filtros de mayor orden. Con espectro de 400 líneas con la resolución espectral pedida.
N −1
X ( k) = ∑ ~
El convertidor A/D obtiene muestras a 32KHz. Cada ~
vez que toma una muestra, produce una interrupción al x ( n ) * WNnk 0 ≤ k ≤ N −1
DSP. La atención de esta interrupción primero pasa la n =0
muestra por el conjunto de interpolado y decimado. Si
dicho conjunto produce una salida, la almacena en un 2π
−j
buffer. W Nnk = e N

Existen dos de tales buffers, ambos de 1024 x ( n ) = x( n ) * V ( n )


~
posiciones. En cualquier momento, uno está recibiendo
las muestras de señal mientras que el otro sirve de
dónde V(n) es la función de ventana.
entrada a las rutinas de cálculo. Cuando el buffer de
señal se llena, se lo intercambia con el de cálculo. Como
el tiempo de cálculo de todos los procesos de medición La FFT se implementa aprovechando el hecho de que
nk
es mucho menor que el tiempo necesario para adquirir el término exponencial de la DFT, WN , es periódico de
las 1024 muestras, no existe riesgo de interferencia. A periodo N y tiene simetría par. Esto permite reducir la
modo de referencia, el tiempo de cálculo máximo está en cantidad de operaciones necesarias para calcular la DFT
el orden de los 4ms; pero se necesitan 40ms para llenar de aproximadamente N2 a N*log2(N).
el buffer tomando muestras a la máxima frecuencia de
25600Hz. Por ende, es el tiempo de adquisición y no el En general los algoritmos FFT tienen dos grandes
de cálculo quien acota la velocidad de medición, ya que condicionantes. En primer lugar, la cantidad de datos de
este último es constante mientras que el primero aumenta entrada N debe ser potencia de 2; en nuestro caso
al reducirse la frecuencia de muestreo para obtener los N=210=1024. En segundo lugar, los datos deben llegar
diferentes anchos de banda requeridos. ordenados en forma “Bit-Reversal ”. Este re-
ordenamiento de los datos o “scrambling” es generado
por hardware propio del DSP, en forma transparente y
3.3. Transformada rápida de Fourier y compensación
eficiente.
de ventana

Para la estimación del espectro de la señal se emplea La elección de N condiciona la máxima resolución
la Transformada Rápida de Fourier o FFT. La longitud espectral posible, que es:
de los vectores de entrada se ha fijado en 1024 (210)
muestras. fs
R=
N
Al operar sobre señales aleatorias, cada vector no
contiene una cantidad entera de periodos. Ello introduce
una distorsión en el espectro estimado conocida como
fuga espectral (spectral leakage), característica de la donde fs es la frecuencia de muestreo en Hz, y R es la
FFT. La forma de minimizar dicha distorsión consiste en resolución espectral nominal en Hz por línea.
multiplicar el vector de entrada por una función conocida
como ventana. Las funciones de ventana tienen la Esta resolución es un límite máximo y sirve para fijar
característica de poseer un máximo central y decaer el eje de frecuencias. En la práctica la misma se ve
gradualmente hacia cero en los extremos, en forma reducida por la función de ventana empleada. En el caso
acampanada. La elección de una en particular de las de la ventana de Hanning, se reduce a la mitad. Esto
muchas conocidas depende de la aplicación. En nuestro significa que aunque la escala de frecuencia sea de R Hz
caso, encontramos que la ventana de Hanning es de uso por línea, no se puedan diferenciar picos situados a
extensivo para el análisis de vibraciones, por lo que se menos de 2*R Hz.
optó por dicha función. Su expresión es:
A partir del espectro complejo, se calcula el módulo
 2πn  N = 1024
v(n ) = 0 .5 * 1 − cos  de las primeras 400 componentes y se las divide por √2.
 N − 1 0≤ n≤ N −1 Los valores resultantes representan el espectro de
amplitud eficaz de la aceleración o velocidad en el ancho
de banda deseado.

Además de afectar la resolución espectral, la función


La transformada discreta de Fourier (DFT) se expresa
de ventana reduce la amplitud de las componentes
como:
observadas. Para mantener constante el nivel de energía
en el espectro estimado, es necesario normalizarlo por la
energía de la ventana empleada (Proakis y Manolakis, Debe llevar entonces la información sobre cuáles son
1996, Shanmuga n y Breipohl, 1988). las máquinas que serán estudiadas, que mediciones hay
que hacer sobre cada una, en qué parte específica de la
Sea U la energía de la ventana, calculada como máquina deben ser hechas y cuáles son los parámetros
particulares de cada una.
N −1
1
U=
N
∑ V 2 (k ) Estos parámetros son definidos por el personal
k=0 encargado de los estudios de Mantenimiento
Predictivo, mediante un software especial que corre en
una computadora tipo PC. Existen siete mediciones
posibles, a saber: aceleración pico, aceleración eficaz,
Luego, el espectro normalizado será espectro de aceleración, velocidad pico, velocidad eficaz,
espectro de velocidad y variables de proceso. Estas
X~ (k ) últimas no se miden sino que se ingresan directamente
X~ ′(k ) = por teclado. Todas las mediciones incorporan alarmas de
U precaución y emergencia, fecha de la última medición,
su valor y su estado. La frecuencia máxima, cantidad de
promedios y otros parámetros característicos de cada
medición son programables.
De esta forma, el valor eficaz global calculado a
partir del espectro coincide con el calculado a partir de la Al principio de una jornada de trabajo, la
forma de onda de la señal. información de una o más plantas es bajada al colector
vía RS-232. El operador sale a recorrer las plantas
asignadas siguiendo la lista que el equipo le presenta en
3.4. Mediciones la pantalla. El colector cuenta con un modo automático
que facilita dicha tarea, realizando de una sola vez todas
Además de la estimación de espectro, el equipo
las mediciones asociadas a cada punto y pasando de un
realiza otras dos mediciones: el valor pico y el valor
equipo al siguiente una vez realizadas todas sus
eficaz o RMS de la señal.
mediciones. El operador sólo debe cambiar el sensor de
lugar y presionar una tecla. Cuando se completa la
Estos valores se emplean para obtener una
jornada, los datos recogidos son descargados vía RS-232
caracterización de banda ancha (o global) del
para su posterior análisis, registro y seguimiento
comportamiento vibratorio de la máquina bajo estudio.
histórico.
En general se emplea el valor eficaz, reservándose el
valor pico para cuando se deben detectar valores muy
En vista de la organización jerárquica de la
reducidos, evitándose el gran error de cálculo asociado a
información de plantas, se decidió modelarla con una
la raíz cuadrada cuando su argumento es pequeño.
estructura jerárquica de cinco niveles. El nivel de
PLANTAS es el superior y el de MEDICIONES, el
Las tres mediciones (espectro, valor pico y valor
inferior. Cada nivel es, a su vez, una lista doble enlazada
eficaz) pueden realizarse tanto sobre señales de
de ítems de igual jerarquía. Cada uno de estos ítems
aceleración como de velocidad.
contiene una referencia descendente al primero de sus
sub-ítems. Las referencias ascendentes se guardan en
Al medir sobre máquinas reales en funcionamiento, una pila FIFO, independiente de la pila del compilador
los resultados presentan grandes variaciones debido a la C.
existencia de un sinnúmero de fuentes de ruido tanto
eléctricos como mecánicos. La forma usual de reducir En razón de su complejidad, tanto la base de datos
dicha variabilidad es promediar los valores medidos como todo el resto de las rut inas relacionadas con la
sobre un cierto número de observaciones. La cantidad de
interfaz usuario están codificadas en lenguaje C.
observaciones a promediar es seleccionada por el
usuario.
El volumen de datos requerido para una jornada de
trabajo es considerable y debe ser mantenido en el
3.5. Base de datos equipo aún ante una falla de su batería principal. Luego
de un extenso estudio de soluciones disponibles, se optó
La función principal del equipo es la de recoger datos por una memoria RAM estática con respaldo por batería
sobre el comportamiento vibratorio de un conjunto de de litio interna (NV-RAM) y una capacidad 2Mb. Dicha
máquinas de una determinada planta industrial. capacidad es suficiente para más de 1000 mediciones,
dependiendo de la selección particular de las mismas.
3.6. Presentación gráfica El DSP utilizado para el proyecto no tiene una UART
dedicada (hardware), por lo que se implementó una
Se implementó en el equipo un conjunto de rutinas de UART por software. El principio de funcionamiento de
manejo básico de pantalla tanto en modo gráfico o de esta UART emulada es el muestreo de los datos
texto estas rutinas son: provenientes del puerto serie 1 (SPORT 1) a una tasa
• Líneas continuas, de trazos y punteadas. mayor que la máxima tasa de transferencia de la UART.
En esta implementación la máxima tasa de transferencia
• Impresión de cadenas de caracteres en video
normal e invertido. en de 115200 bits/s y se muestrea tres veces cada bit.
Entonces:
• Volcado de imágenes en mapa de bits.
• Caracteres de doble tamaño.
115200 * 3 = 345600 muestras/s
Estas rutinas están implementadas en lenguaje
ensamblador compatible con C ya que son llamadas Una vez que se tomaron las tres muestras de un bit se
desde las rutinas de menú de usuario realizadas en realiza una “votación” para decidir si lo recibido fue un
ANSI-C. cero o un uno (lógica 2 de 3).

El sistema controlador - pantalla funciona realizando Como reloj de muestreo se utiliza el temporizador
un barrido de forma similar a un tubo de rayos catódicos, que dispone el DSP. Una vez recibido el bit de START
con una parte de la línea “activa” y otra parte de se reciben los datos. Estos entran en un registro de
“retrasado”. Se debe acceder a la memoria del display desplazamiento para luego ser ingresados en memoria.
durante el retrasado, o tiempo de línea inactiva para no Todo este proceso trabaja mientras el equipo continúa su
interferirlo, ya que el controlador de pantalla no realiza funcionamiento normal. Esto es posible gracias a la gran
la contención del bus. Se debe chequear un bit de la velocidad de procesamiento del DSP y su excelente
palabra de estado para asegurarse de no acceder a la rendimiento para las comunicaciones.
memoria de vídeo de doble puerto en el momento en que
la pantalla se encuentra en la parte activa de la línea. Para sincronizar el comienzo de la recepción o bit de
START se utiliza una entrada de interrupción externa
En la rutina de líneas se debió tener especial atención (IRQ1), conectada a la línea de recepción. Iniciada la
ya que la memoria de vídeo se organiza en forma de bits recepción de un carácter, la misma debe completarse
empaquetados de a ocho y esto complica las rutinas al no dentro de 0.5s (periodo de time-out). El protocolo de
poder acceder a un bit en particular. línea sigue el estándar RS-232, con un bit de arranque
(START), 8 de datos y uno de parada (STOP). No se
Si un objeto dibujado se superpone con otro o con emplea paridad.
caracteres se realiza una XOR con lo cual el pixel (o los
pixeles) en cuestión cambian de encendido a apagado y El protocolo 3964 se modificó para cumplir mejor
viceversa. Para imprimir caracteres en video invertido se con los requerimientos del proyecto. Originalmente está
dibuja un fondo oscuro en la capa de gráficos y se orientado a bytes y limitado a paquetes de 256 bytes de
imprime sobre ésta. longitud.

Para la presentaci ón de algunas mediciones se El protocolo posee un sistema de handshake para


desarrolló una rutina que imprime números del doble de establecer la comunicación entre equipos, definiéndose
tamaño con tipografía Times New Roman. uno de los equipos como Emisor y el otro como
Receptor . Previo al envío de cada paquete, el emisor
Para imprimir dibujos se desarrolló una rutina que interroga al receptor. Si el mismo se encuentra listo, le
imprime gráficos del tipo mapa de bits. envía un paquete. En caso contrario, espera y reintenta.
Luego de cada paquete enviado, el emisor espera un
asentimiento por parte del receptor, confirmando o
3.7. Comunicación serie rechazando los datos recibidos. En caso de rechazo, el
emisor reintenta hasta un máximo de tres veces. Un error
El sistema de comunicaci ones se organiza según el
no recuperado provoca el fin de la comunicación.
modelo de capas de OSI:
El paquete empleado tiene la siguiente estructura:
• Nivel 1 Capa física: RS232

• Nivel 2 Capa de enlace de datos: Protocolo 3964


( modificado ).

• Nivel 7 Capa de aplicación: Protocolo propio.


plataforma, demandó mínimas modificaciones debidas a
SeqNr Comando Largo Dato(0) - BCC incompatibilidades y errores del compilador del DSP.
Dato(m)
INFO(0) INFO(n) 4.2. Requisitos del hardware

SeqNr: Número de secuencia 16 bits. Tanto el DSP como el convertidor A/D empleados
Comando: Código de comando 16 bits requieren rutinas de inicialización muy específicas, no
Largo: Largo del campo de datos 16 bits provistas por el compilador C, y que deben escribirse en
Dato(i): Datos n*16 bits lenguaje Ensamblador.
BCC: Paridad 8 bits
Por otro lado, el convertidor A/D opera en una
Fig. 7 : Formato de la trama modalidad llamada “Auto-Buffering”, similar a una
transferencia por acceso directo a memoria (DMA). Este
El BCC es una suma de comprobación que se calcula
mediante la XOR de toda la trama, byte a byte. modo requiere la reserva permanente de recursos del
DSP que entran en conflicto con los requisitos del
entorno de lenguaje C.
4. Lenguajes de programación. Problemas y
soluciones Además, las rutinas de cálculo de FFT emplean la
casi totalidad de los registros punteros del procesador, lo
4.1. Requisitos del proyecto cual también supone un conflicto con el entorno del C.

En los diseños de equipos de medición que incluyen Estas incompatibilidades fueron resueltas planteando
procesadores digitales de señal (DSP), lo usual es que un dos entornos separados: un entorno anfitrión constituido
procesador tipo x86 o un micro-controlador cumplan el por el programa principal en lenguaje C, y un entorno de
rol de ejecutar la interfaz usuario, manejando la pantalla servicio, constituido por las rutinas de medición. Estos
y el teclado. entornos se comunican por medio de variables globales
escritas por el Ensamblador y leídas por el C, y una
En nuestro caso, quedó claro desde los primeros única rutina que oficia de punto de conexión para
estudios de factibilidad que el DSP tendría muy poca transferir la ejecución entre uno y otro entorno. Cuando
carga de trabajo, típicamente menor al 5% del tiempo. Se dicha transferencia se produce, el contexto del lenguaje
decidió entonces por un diseño de una sola CPU, con la C (registros y pila) es guardado en un espacio privado de
programación codificada en dos lenguajes: Ensamblador RAM, se inicializa el convertidor A/D y su puerto
para el código de medición, a fin de lograr velocidad, asociado (SPORT0), se realiza la medición pedida, se
eficiencia y un óptimo uso del DSP; y C para la interfaz desactiva el hardware y se restaura el contexto del C.
usuario y base de datos, a fin de poder manipular tipos
de datos como arreglos, estructuras, cadenas y números Las rutinas de interrupción del temporizador,
en coma flotante fácilmente. El código que maneja la apagado y botón de abortar están escritas de forma que
pantalla y comunicaciones también está estructurado en sean compatibles con ambos entornos. El temporizador
dos capas, estando en ambos casos la más próxima al se emplea para la lectura del teclado y el estado de la
hardware escrita en Ensamblador y la o las superiores en batería y para la comunicación serie. La interrupción de
lenguaje C. apagado suministra un aviso anticipado de tal evento,
permitiendo al equipo resguardar su estado en memoria
Como la base de datos y gran parte de la interfaz no volátil. El botón de abortar se utiliza como medida de
usuario debían ser diseñadas en paralelo con el hardware seguridad y herramienta de depuración, ofreciendo al
y software de manejo de pantalla y comunicaciones (de programador la interrupción segura de lazos de programa
los cuales dependen), el lenguaje C posibilitaría el uso de en la eventualidad de que se encuentren bloqueados. Este
un compilador y depurador estándar para PC como botón no está accesible en la versión final del equipo.
herramienta intermedia de desarrollo.
4.3. Requisitos del compilador C
De hecho, ambos módulos, junto con un sinnúmero
de rutinas auxiliares, fueron desarrollados y probados El compilador C requiere la reserva de una serie de
sobre una PC, simulando el hardware faltante con registros internos del DSP para su propio uso. Esto
librerías escritas ex profeso. Cuando el hardware estuvo provoca un conflicto con los requisitos del hardware,
terminado, dichas librerías fueron reemplazadas por las como se explicó anteriormente.
definitivas, escritas en Ensamblador, pero con la misma
interfaz. El traslado del código entre una y otra El DSP no está específicamente desarrollado para
ejecutar programas compilados en lenguajes de alto
nivel. Especialmente, carece de una pila para el paso de 5. Evaluación experimental. Resultados
parámetros entre subrutinas. El compilador C emula esta obtenidos
función reservando una zona de RAM de datos para
guardar la pila y un juego de punteros para hacer las 5.1. Conversor A/D
veces de Tope y Base de la pila (los registros SP y BP,
respectivamente, de un x86). La mínima resolución de amplitud necesaria para las
medidas a realizar se fijó inicialmente en 12 bits. Esta
resolución requería el uso de un preamplificador con dos
4.4. Librerías
rangos de ganancia (x1 y x10) conmutables por
Debido a las características particulares del entorno programa para cubrir todo el rango de amplitud del
de DSP empleado, muy pocas librerías estándar del equipo y de un algoritmo de auto-rango.
compilador C están disponibles. En particular, sólo las
librerías string.h (manejo de cadenas de caracteres) y Se optó entonces por emplear un conversor de 16 bits
math.h (emulación de punto flotante) fueron usadas en y un único rango de ganancia. De esta forma se mejoró
este proyecto. notablemente el rango dinámico del equipo y se
simplificó la etapa analógica. Además se redujeron
Además, fue necesario desarrollar una serie de notablemente los tiempos requeridos para realizar las
librerías de soporte, cuyas funciones incluyen: manejo de mediciones al no ser necesario determinar previamente
la pantalla gráfica, conversión y formato de datos para su la ganancia a emplear ni esperar a que el amplificador se
presentación, manejo de teclado y reloj de tiempo real y estabilice luego del cambio de ganancia. Esto es de
pantallas de ingreso de parámetros. particular importancia en las mediciones de baja
frecuencia, las cuales pueden tomar varios segundos.
Cabe destacar que esta última librería fue escrita con
técnicas tan cercanas a la programación orientada a Los 16 bits del conversor resultaron entonces
objetos como fue posible en un compilador C (carente de totalmente aprovechados, brindando resolución adicional
objetos). Esta metodología permitió un sustancial ahorro en la medición de señales de gran amplitud y
de espacio de programa y facilitó el reuso de código para permitiendo medir señales de pequeña amplitud dentro
implementar diferentes pantallas. de la resolución mínima necesaria.

Estas librerías fueron diseñadas con el criterio de ser 5.2. Medición de espectros
tan genéricas como fuese posible a fin de que pudieran
ser reusadas en proyectos futuros sobre la misma En la Fig. 3 se observa una medición de prueba de
plataforma de hardware. un espectro. Se excitó al equipo con una señal senoidal
de 1KHz de frecuencia y amplitud similar a la observada
en máquinas reales. La presentación resulta limpia y
4.5. Espacio y Velocidad precisa, a pesar del reducido tamaño de la pantalla y de
El compilador trabaja siempre en modo de la gran cantidad de procesamiento previo. La escala
optimización automática, pudiendo optarse por optimizar vertical lineal no permite observar ninguna componente
el código generado en velocidad (por defecto) o en espúrea, resultando las mismas de amplitud inferior a
tamaño. 0.02G RMS, frente a 13.78G RMS de componente
fundamental (se las observó empleando la función de
Debido a la gran extensión del programa C (cerca de zoom). El tiempo de medición resultó esencialmente el
tiempo de adquisición de datos (40ms para
10240 palabras de código, más 4096 palabras de
ensamblador puro, sobre 16384 palabras de espacio FMAX =10KHz; 4s para FMAX =100Hz; por cada medición
promediada.) ya que todo el procesamiento se realiza en
total), se tuvo que cambiar la optimización al modo de
tiempo real. El cálculo del espectro en punto fraccionario
mínimo tamaño. Aún así fue necesario estudiar y re -
fijo brinda entre cuatro y cinco cifras significativas, más
codificar muchas rutinas para reducir manualmente el
que suficientes para los propósitos del equipo y toma
largo del ejecutable, a fin de que cupiese en la memoria
menos de 5ms. El error en la medición no supera el 1%.
del DSP.

Como el código C no tiene exigencias de 5.3. Medición de valores globales


rendimiento, la pérdida de velocidad resultante no fue
notoria. Más aún, en muchos casos, la optimización En la Fig. 4 se observa una medición de valor RMS
manual tanto redujo el código como aumentó su de la misma señal del punto 5.2. En la práctica, el nivel
velocidad. de ruido que se encuentra al realizar estas mediciones es
tan grande que, aún con un número elevado de
promedios, los dos dígitos menos significativos resultan
ilegibles. Por este motivo se decidió truncarlos Referencias
mostrándose sólo los tres más significativos. El tiempo Analog Devices, ADSP-2100 Family User Manual,
requerido para medir es el mismo que para espectros. Prentice Hall (1995)
Analog Devices, Digital Signal Processing Applications
Using The ADSP-2100 Family, Prentice Hall (1992)
6. Futuras ampliaciones
Dallas Semiconductor, DS1270 Preliminary Data Sheet,
Como futuras mejoras de en las prestaciones del Dallas Semiconductor (1996)
equipo se prevén: Oppenheim A. V. and Schafer R. W., Digital Signal
Processing Prentice, Hall (1975)
• Adición de una función de espectro de envolvente Proakis J. G. and Manolakis D. G., Digital Signal
para la detección temprana de fallas en rodamientos. Processing, Prentice Hall (1996)
El detector de envolvente estará implementado Sam Shanmugan K. and Breipohl A. M ., Random
íntegramente por programa. Signals, detection, estimation and data analysis,
Willey (1988)
• Análisis detallado de los datos adquiridos empleando
técnicas de inteligencia artificial como ser redes
neuronales, para el reconocimiento de patrones de
falla, sistemas expertos y lógica difusa para evaluar
en forma automática fallas mecánicas incipientes en
los elementos bajo estudio, estimar la progresión de
las mismas y predecir los tiempos de falla

• Ajuste automático de los parámetros de detección y


alarma bajo diferentes condiciones de la máquina.

• Desarrollo de un equipo de monitoreo contínuo.


Determinación y auto-ajuste de los parámetros de
alarma. Detección inteligente de condiciones de
alarma (evitar paradas innecesarias de la maquina
bajo monitoreo)

• Adquisición y análisis de múltiples canales de señal


en forma simultánea (real-time). Posibilidad de
relacionar información entre canales para determinar
condiciones de alarma con mayor precisión.

7. Conclusiones
El empleo de un muy avanzado procesador digital de
señales ó DSP como núcleo de este equipo, junto con
memorias de gran capacidad, una pantalla gráfica amplia
y la carencia absoluta de partes móviles permitieron
lograr un equipo de costo, dimensiones y peso reduc idos
pero de alto rendimiento y elevada confiabilidad.

La sencillez de la plataforma de hardware y la


implementación de la totalidad de los procesos de
medición en software le confieren la característica de
“instrumento de medición virtual ” ya que la misma
plataforma puede ser, en un futuro, reprogramada para
realizar otras tareas de medición o bien, una misma
plataforma portar un conjunto de programas para
diversas mediciones.

También podría gustarte