Use un kit para desarrollar rápidamente una aplicación de mantenimiento predictivo industrial

Por Stephen Evanczuk

Colaboración de Editores de Digi-Key de América del Norte

La disponibilidad de sensores inteligentes de bajo costo ha permitido incrementar los niveles de control de equipos industriales hasta el punto en que ahora es posible ese mantenimiento predictivo. No obstante, para muchos desarrolladores, las tareas de recopilar, estructurar, comunicar, analizar y aplicar datos del sensor para mantenimiento predictivo sigue siendo imprecisa a partir de la complejidad del hardware requerido y el software de aplicaciones.

Para satisfacer rápidamente el creciente interés en el mantenimiento predictivo, los proveedores de semiconductores ponen a disposición soluciones completas de plataforma que combinan gran parte del hardware y el software requeridos. Con este tipo de plataformas, los desarrolladores de aplicaciones industriales pueden poner en marcha los sistemas de mantenimiento predictivo de manera rápida y rentable.

En este artículo se menciona el concepto moderno del mantenimiento predictivo usando el Internet de las cosas (IoT) y cómo mejorar en gran medida los procesos y resultados. A continuación, presenta una plataforma de mantenimiento predictivo de STMicroelectronics y muestra cómo los desarrolladores pueden usar este hardware y este software para evaluar la funcionalidad de mantenimiento predictivo y desarrollar sus propias aplicaciones.

La evolución del mantenimiento desde suposiciones hasta predicciones

Durante años, los ingenieros industriales han usado el análisis de vibración y otros métodos para detectar problemas en maquinarias. En el pasado, los ingenieros dependían de analizadores portátiles u otros equipos de pruebas dedicados para recopilar y procesar datos para el análisis de equipos. Gracias a los conceptos de IoT, los fabricantes ahora pueden instrumentar equipos críticos con sensores de bajo costo capaces de proporcionar los flujos de datos detallados necesarios para el control en tiempo real.

La capacidad de evaluar de manera continua el rendimiento de los equipos ofrece una ventaja importante para las operaciones de fábrica. Ahora, los ingenieros industriales pueden usar aplicaciones de control local o remoto para incrementar o incluso reemplazar programas de mantenimiento manual programados que invierten esfuerzo cuando no existe un problema, o bien, que demoran demasiado y no pueden evitar que problemas pequeños se conviertan en daños para los equipos. En lugar de reaccionar a los problemas que pueden cerrar las líneas de producción, los operaciones de la fábrica pueden usar métodos basados en sensores para identificar estos problemas con anticipación, disponer los recursos necesarios o incluso maquinaria de reemplazo, y realizar reparaciones en un momento en que se minimicen las interrupciones en la producción.

Para los gerentes de instalaciones, el mantenimiento predictivo es una oportunidad de detectar los problemas antes de que se vuelvan fallas catastróficas, lo que les permite mantener la integridad de la línea de producción y la seguridad de los trabajadores y, al mismo tiempo, analizar estos datos para mejorar los procesos y resultados. El desafío para los desarrolladores radica entonces en crear una plataforma capaz de recopilar datos al ancho de banda y la resolución requeridos para detectar signos de problemas subyacentes en el equipo controlado.

En cuanto al análisis de vibraciones, los ingenieros industriales comúnmente recopilan datos de vibración tanto en los dominios de tiempo como en los de frecuencia. Los ingenieros experimentados pueden identificar problemas mecánicos en los equipos con solo visualizar datos en estos dos dominios. Por ejemplo, los pulsos de breve duración periódicos con un amplio ancho de banda de frecuencia comúnmente indican que un componente, por ejemplo, un cojinete de bolas, presenta un defecto que hace que golpee la pared de su trayectoria en cada rotación. Por otro lado, los eventos de larga duración con un ancho de banda estrecho pueden indicar que los componentes están en rozamiento entre sí, lo que finalmente llevará al desgaste y la posible falla.

Sin embargo, para capturar estos datos de manera confiable, los sensores de vibración deben ser lo suficientemente robustos como para mantener su funcionamiento a pesar de los golpes repentinos, la intensa vibración o cualquiera de las otras características comúnmente presentes en entornos industriales. Incluso en el funcionamiento normal, los equipos industriales pueden generar vibraciones y golpes mecánicos que pueden exceder las capacidades de los sensores de vibración anteriores. El surgimiento de sensores basados en tecnología de sistemas microelectromecánicos (MEMS) ha eliminado considerablemente esa inquietud. Los sensores MEMS como el ISM330DLC de STMicroelectronics pueden resistir ráfagas de aceleración de hasta 10,000 g durante 0.2 milisegundos (ms), y aún así recuperarse con la rapidez suficiente para ofrecer mediciones de aceleración lineal con sensibilidad ms-g.

Si bien los datos confiables de los sensores de movimiento son fundamentales para el análisis de fallas, la vibración es el único indicador del estado de la máquina. Al igual que los ingenieros experimentados pueden discernir modos de falla específicos de los datos de vibración, ellos usan otras modalidades del sensor para determinar el momento que va desde la detección de un síntoma hasta la falla funcional del equipo, conocido como el intervalo entre la posibilidad hasta la falla (P-F). Por ejemplo, el incremento del consumo de potencia, el ruido o el calor comúnmente son indicios de una disminución en el intervalo de P-F para la mayoría de las maquinarias (Figura 1).

El gráfico del análisis de vibración generalmente permite la detección temprana.

Figura 1: Las diferentes modalidades del sensor pueden mostrar condiciones que indican la posibilidad de falla de una máquina, pero el análisis de vibración comúnmente permite la detección temprana y ayuda a eliminar el tiempo de inactividad a causa de falla repentina. (Fuente de la imagen: STMicroelectronics)

Para capturar estos indicadores adicionales, los ingenieros necesitan crear sistemas de sensores capaces de capturar la vibración, el audio, la presión, la temperatura y la humedad, como mínimo. No obstante, para los desarrolladores, los desafíos prácticos de combinar estos sensores en un diseño robusto pueden demorar considerablemente el avance hacia objetivos más grandes para el análisis del equipo. El kit de desarrollo STEVAL-BFA001V1B de STMicroelectronics y el software asociado proporcionan una plataforma integral que permite a los ingenieros impulsar aplicaciones para el control y mantenimiento predictivo de equipos.

Plataforma de referencia

El kit STEVAL-BFA001V1B sirve tanto como un diseño de referencia como una solución lista para usar que incluye una placa de sensor industrial y el software asociado para mantenimiento predictivo. La placa es un sistema de sensor independiente completo (Figura 2). Combina un MCU Arm® Cortex®-M4 STM32F469 STMicroelectronics de 32 bits con una serie completa de sensores, incluido el sensor de movimiento ISM330DLC para la medición de vibración mencionado anteriormente, además de lo siguiente de STMicroelectronics:

Diagrama del kit de desarrollo STMicroelectronics STEVAL-BFA001V1B

Figura 2: En el kit de desarrollo STMicroelectronics STEVAL-BFA001V1B, el diseño de la placa de sensores industriales basada en la MCU incluye un complemento completo de sensores comúnmente necesario para el monitoreo de los equipos. (Fuente de la imagen: STMicroelectronics)

El sistema complementa la memoria Flash de 2 Mbyte del microcontrolador con EEPROM de 1 Mbit M95M01-DF de STMicroelectronics, e incluye capacidades de gestión de energía con reguladores de interruptor L6984A y de caída baja (LDO) LDK220 de STMicroelectronics. Para simplificar la implementación en entornos industriales, la placa incluye un conector M12 en un extremo, respaldado por un transceptor ST L6362A IO-Link. En el otro extremo de la placa, un conector de expansión ofrece a los desarrolladores acceso al GPIO del microcontrolador, al convertidor analógico a digital (ADC) y a la interfaz serial I2C. El resultado es un sistema robusto solo ligeramente más grande que un cable industrial M12, con capacidad para satisfacer la serie completa de requisitos para el monitoreo de equipos (Figura 3).

Imagen de placa del sensor industrial STEVAL-BFA001V1B de STMicroelectronics

Figura 3: La placa del sensor industrial STEVAL-BFA001V1B de STMicroelectronics incluye el sistema de multisensor basado en el microcontrolador, conectores de expansión, conector de depuración de cable serial (SWD) y conector M12 en un factor de forma solo ligeramente más grande que un cable industrial. (Fuente de la imagen: STMicroelectronics)

Los desarrolladores pueden usar el cable M12 incluido en el kit o agregar sus propios conectores M12. El kit incluye una placa adaptadora para conectar la salida serial de la placa del sensor M12 a la interfaz ST-LINK/V2-1 que viene con una placa de desarrollo STM32 Nucleo-64 de STMicroelectronics. Para energizar la placa, los desarrolladores pueden proporcionar alimentación ellos mismos a través del cable M12 o enchufar el cable M12 en la placa de evaluación ST STEVAL-IDP004V1 IO-Link. Esta placa IO-Link proporciona la vía más rápida para el desarrollo, ya que los desarrolladores pueden conectar de modo rápido múltiples placas de sensores industriales y usar la interfaz gráfica de usuario (GUI) STEVAL-IDP005V1-GUI_v1.0 basada en Windows de STMicroelectronics para configurarlas (Figura 4).

Imagen de GUI Windows de ST

Figura 4: Con la GUI de ST, los desarrolladores pueden configurar rápidamente placas de sensores, realizar la recopilación de datos y ver los resultados en relación con datos de movimiento en los dominios de frecuencia y tiempo, además de los datos ambientales. (Fuente de la imagen: STMicroelectronics)

Después de completar la configuración en la pantalla correspondiente, los desarrolladores pueden moverse a la pantalla Análisis de vibración para la recopilación de datos. Después de hacer clic en el botón de inicio, los desarrolladores pueden ver mediciones de frecuencia de vibración y velocidad rotacional recopilados en los ejes x, y y z (Figura 5). Una pantalla individual para mediciones ambientales (pestaña Medidas ENV) permite a los desarrolladores ver datos de presión, temperatura y humedad recopilados por cada placa de sensores.

Imagen de GUI Windows de ST ofrece un enfoque simple (hacer clic para ampliar)

Figura 5: La GUI Windows de ST ofrece un enfoque simple para evaluar los datos del sensor con su capacidad para presentar resultados de dominio de frecuencia y tiempo desde el sensor de movimiento. (Fuente de la imagen: STMicroelectronics)

Desarrollo de software

Si bien la aplicación de la GUI proporciona acceso rápido a las capacidades de la placa de sensores, los desarrolladores necesitarán un enfoque más flexible para crear sus propias aplicaciones de mantenimiento predictivo. Para el desarrollo personalizado, el paquete de software STSW-BFA001V1 de STMicroelectronics proporciona una serie completa de módulos de software C, incluidos controladores, bibliotecas y aplicaciones de muestra (Figura 6).

Diagrama de distribución de software ST STSW-BFA001V1

Figura 6: La distribución de software ST STSW-BFA001V1 proporciona un conjunto completo de controladores y middleware junto con aplicaciones de muestra que los desarrolladores pueden ejecutar de inmediato y usar más tarde como base para sus aplicaciones personalizadas. (Fuente de la imagen: STMicroelectronics)

Entre sus muestras de software, el paquete STSW-BFA001V1 incluye una aplicación de monitoreo de estado que demuestra el proceso de recopilar datos del sensor y generar dominio de frecuencia, RMS y valores de aceleración máxima desde un sensor de movimiento. Para un diseño de producción, los desarrolladores pueden cargar estos datos a una aplicación host diseñada para detectar fallas. La aplicación de mantenimiento predictivo extiende esta base de recopilación de datos con características diseñadas para generar advertencias de posibles fallas.

Este enfoque presenta muchas ventajas, pero la más atractiva es la capacidad de ampliar los intervalos P-F al proporcionar la detección temprana de condiciones que indican posibles fallas. Otra ventaja es el acercamiento de la detección de falla a los equipos, lo que ofrece un reconocimiento más inmediato de las fallas.

La aplicación de mantenimiento predictivo de STMicroelectronics demuestra el modo en que los desarrolladores pueden llevar a cabo esta detección temprana mediante la comparación de las lecturas del sensor con una serie de valores de umbral vinculados a velocidad, aceleración y frecuencia. En un sistema de producción, la selección de estos valores de umbral depende de varios factores que van más allá del alcance de este artículo.

Sin embargo, es importante destacar que hay normas para usar como referencia. Por ejemplo, la norma ISO 10816 ofrece pautas sobre valores de vibración para cuatro clases de máquinas que se ejecutan en diferentes zonas operativas, incluida Zona A (buena), Zona B (satisfactoria), Zona C (inadecuada para la operación continua) y Zona D (crítica con posibles daños en caso de operación continua). Tal como lo sugieren estas zonas, los operadores deben recibir advertencias cuando los niveles de vibración de una máquina alcance la Zona C y obtener una alarma más urgente cuando esos niveles alcancen la Zona D.

STMicroelectronics diseñó su aplicación de mantenimiento predictivo para respaldar este modelo de uso específico. Un archivo de encabezado (MotionSP_Threshold.h) dentro del software de aplicaciones de muestra incluye los valores de umbral tanto para los niveles de advertencia como de alarma. En este caso, STMicroelectronics definió umbrales de advertencia acordes a los valores recomendados por la norma ISO 10816 para la operación entre los límites de la Zona B y C. Los valores de umbral de alarma son valores de la norma ISO 10816 entre el límite de las Zonas C y D. Dado que un sensor de movimiento común, tal como ISM330DLC de STMicroelectronics, proporciona datos en los planos x, y. y z, se proporcionan tres valores para cada advertencia, así como los umbrales de alarma para cada cantidad monitoreada: velocidad RMS, aceleración y transformada rápida de Fourier (FFT). La aplicación usa umbrales para FFT en cuatro subrangos espectrales diferentes.

El resultado es una serie de valores de umbral coherentes con una amplia gama de estados operacionales realistas de la máquina. No obstante ello, los desarrolladores necesitarían, por supuesto, ajustar estos valores de umbral de advertencia y alarma para hacerlos coincidir con las características específicas de sus equipos monitoreados y objetivos generales de advertencias y alarmas.

Si bien el archivo de encabezado ofrece los objetivos operacionales para el monitoreo, la rutina principal (main.c) proporciona la lógica para detectar variaciones de umbral en los datos recopilados por los sensores de la placa industrial. Después de inicializar el hardware y las estructuras de software asociadas, la rutina principal ingresa en un bucle interminable para generar FFT para datos de vibración, medir RMS y aceleración máxima, detectar cruces de umbrales y transmitir advertencias (Lista 1).

Copy /* Initialize the motion sensor */ MotionSensorInit(); MotionSP_TimeDomainAlarmInit(&sTdAlarm,&sTimeDomainVal,&sTdRmsThresholds,&sTdPkThresholds); MotionSP_FreqDomainAlarmInit(&FDWarnThresh,&FDAlarmThresh,&THR_Fft_Alarms,MotionSP_Parameters.subrange_num); /****************************************************************************/  while (1) { /* Vibration Analysis */ MotionSP_Vibration_manager_run(&MotionSP_Parameters); /* Status check during Time domain Analysis */ MotionSP_TimeDomainAlarm(&sTdAlarm,&sTimeDomainVal, &sTdRmsThresholds, &sTdPkThresholds, &sTimeDomain); if(FinishAvgFlag == 1) { SendVibrationResult(); TD_Thresholds_DataSend(&sTdAlarm,&sTimeDomainVal);  MotionSP_FreqDomainAlarm (&SRAmplitude, FDWarnThresh, FDAlarmThresh, MotionSP_Parameters.subrange_num, &THR_Check,  &THR_Fft_Alarms);  FD_Thresholds_DataSend(MotionSP_Parameters.subrange_num, &SRBinVal, &THR_Fft_Alarms, &THR_Check);  MotionSP_TotalStatusAlarm(&sTdAlarm, &THR_Fft_Alarms, MotionSP_Parameters.subrange_num, &TotalTDAlarm, &TotalFDAlarm);  Thresholds_DataSend(&TotalTDAlarm, &TotalFDAlarm);  FinishAvgFlag = 0; RestartFlag = 1;  // wait while the UART is transmitting while((HAL_UART_GetState(&hSrvUart) & HAL_UART_STATE_BUSY_TX ) == HAL_UART_STATE_BUSY_TX); strcpy((char *)SrvUartTxBuffer, "\r\n|#################### Next Measurement ####################\r\n"); HAL_UART_Transmit(&hSrvUart, SrvUartTxBuffer, strlen((char *)SrvUartTxBuffer), SRV_UART_TIMEOUT_MAX);  MotionSP_TimeDomainAlarmInit(&sTdAlarm,&sTimeDomainVal, &sTdRmsThresholds,&sTdPkThresholds); MotionSP_FreqDomainAlarmInit(&FDWarnThresh, &FDAlarmThresh, &THR_Fft_Alarms, MotionSP_Parameters.subrange_num);  /* Configure the Hardware using parameters in RAM */ MotionSP_Vibration_manager_init(&MotionSP_Parameters, 1);  Accelero_MeasurementInit(); } }

Lista 1: La aplicación de mantenimiento predictivo de STMicroelectronics demuestra el uso de un bucle interminable para identificar y transmitir alarmas basadas en las mediciones de datos del sensor en los dominios de frecuencia y tiempo. (Fuente del código: STMicroelectronics)

A medida que el bucle continúa en ejecución, los controladores del sensor y los manipuladores de servicios en el paquete de soporte de la placa leen los datos y llenan los búferes monitoreados por rutinas de niveles más altos. El software de muestra de STMicroelectronics asigna manipuladores en la aplicación, y esto permite a los desarrolladores sustituir fácilmente sus propias rutinas para satisfacer los requisitos únicos sin ahondar demasiado en la arquitectura del software.

En cada iteración del bucle principal, la rutina principal indica a MotionSP_TimeDomainAlarm() que compruebe los umbrales para velocidad RMS y aceleración máxima. Para comprobaciones en el dominio de frecuencia, el bucle principal llama a MotionSP_Vibration_manager_run(), que llama de manera indirecta a la rutina de otro módulo, MotionSP_FrequencyDomainProcess(), que finalmente llama a una rutina de cálculo de FFT de middleware si el búfer circular necesario (AccCircBuffer) está suficientemente completo y está habilitado FFT (Lista 2). Resulta ser que la aplicación de monitoreo de estado básico usa este mismo patrón.

Copy /**   * @brief  Frequency Domain Processing starting from the Circular Buffer   * @param pMotionSP_Parameters: Pointer to board parameters   * @return None   */  void MotionSP_FrequencyDomainProcess(sMotionSP_Parameter_t *pMotionSP_Parameters) { #define FFTSIZEDELTA  (MotionSP_Parameters.size*((100.0-MotionSP_Parameters.ovl)/100.0))     if (fftIsEnabled == 1) {       if (!accCircBuffIndexWaitForOvf) {         if (AccCircBuffer.IdPos >= accCircBuffIndexForFft) {                 MotionSP_FFT_All_Axes();                 accCircBuffIndexForFft += FFTSIZEDELTA;         if (accCircBuffIndexForFft >= AccCircBuffer.Size) {           accCircBuffIndexForFft -= AccCircBuffer.Size;           accCircBuffIndexWaitForOvf = 1;         }       }     }     else {       if (AccCircBuffer.Ovf) {         AccCircBuffer.Ovf = 0;         accCircBuffIndexWaitForOvf = 0;       }     }   } } 

Lista 2: Esta rutina de la aplicación de muestra de STMicroelectronics muestra un mecanismo para trabajar con un búfer circular de datos de un sensor de movimiento para el análisis en el dominio de frecuencia. (Fuente del código: STMicroelectronics)

Al final de cada etapa de medición, la aplicación usa otra rutina (MotionSP_TotalStatusAlarm()) para analizar cada atributos de los datos de movimiento; de esta forma establece la alarma en el dominio de frecuencia (pTotalFDAlarm) y la alarma en el dominio de tiempo (pTotalTDAlarm) al valor de alarma máximo (Lista 3). A su vez, la rutina principal en la Lista 1 transmite estas alarmas a través de la conexión del Transmisor Receptor Asíncrono Universal (UART) antes de reiniciar el sistema para la siguiente etapa de medición.

Copyvoid MotionSP_TotalStatusAlarm(sTimeDomainAlarm_t *pTdAlarm, sFreqDomainAlarm_t *pTHR_Fft_Alarms, uint8_t subrange_num, Alarm_Type_t *pTotalTDAlarm, Alarm_Type_t *pTotalFDAlarm){ Alarm_Type_t TempAlarm = GOOD; Alarm_Type_t TempFDAlarm = GOOD;  TempAlarm = MAX4(TempAlarm, pTdAlarm->PK_STATUS_AXIS_X, pTdAlarm->PK_STATUS_AXIS_Y, pTdAlarm->PK_STATUS_AXIS_Z);   TempAlarm = MAX4(TempAlarm, pTdAlarm->RMS_STATUS_AXIS_X, pTdAlarm->RMS_STATUS_AXIS_Y, pTdAlarm->RMS_STATUS_AXIS_Z);  for(int i=0; i<subrange_num; i++) { TempFDAlarm = MAX4(TempFDAlarm, pTHR_Fft_Alarms->STATUS_AXIS_X[i], pTHR_Fft_Alarms->STATUS_AXIS_Y[i], pTHR_Fft_Alarms->STATUS_AXIS_Z[i]); }  *pTotalTDAlarm = TempAlarm; *pTotalFDAlarm = TempFDAlarm;  }

Lista 3: La aplicación de muestra de STMicroelectronics demuestra el patrón de diseño básico para trabajar con múltiples fuentes de alarma en una aplicación de mantenimiento predictivo. (Fuente del código: STMicroelectronics)

La aplicación de muestra de STMicroelectronics permite a los desarrolladores evaluar rápidamente las características y las funciones del mantenimiento predictivo. Más directamente, los desarrolladores pueden simplemente conectar la placa de sensores industriales a través de un programa de emulación de terminal para comenzar a visualizar de inmediato los valores medidos y el estado de advertencia/alarma.

No obstante, en el caso de una aplicación de producción, es más probable que los desarrolladores usen la interfaz serial de la placa de sensores para conectarse a los recursos ascendentes para un monitoreo y un control más sofisticado de la aplicación. Los principales proveedores de servicios en la nube ya ofrecen soluciones avanzadas de aprendizaje automático para el mantenimiento predictivo. Por ejemplo, entre sus ofertas, Microsoft Azure ofrece una solución de mantenimiento predictivo entre su serie de aceleradores de soluciones de IoT.

Los desarrolladores incluso pueden comenzar a usar de manera temprana el acelerador de Azure, que incluye dispositivos simulados capaces de presentar varios flujos de datos de sensores obtenidos de motores de aeronaves de la NASA. Al final de la cadena de herramientas para este acelerador, los servicios de aprendizaje automático de Azure proporcionan un modelo capacitado basado en estos datos. En algunos casos, los desarrolladores pueden emplear métodos de aprendizaje de transferencia que usan un modelo con capacitación previa, como el modelo de mantenimiento predictivo de Azure, como el punto de partida para su propio modelo de aprendizaje automático personalizado.

Conclusión

Para satisfacer el creciente interés en el mantenimiento predictivo, los desarrolladores necesitan poder implementar rápidamente sistemas robustos de varios sensores adecuados para entornos industriales. Una solución de desarrollo abarcadora disponible de STMicroelectronics combina una placa de sensores de hardware y un entorno de software diseñados específicamente para requisitos de mantenimiento predictivo.

Con la solución de este sistema, los desarrolladores pueden comenzar de inmediato a evaluar el mantenimiento predictivo, desarrollar rápidamente sus propias aplicaciones de mantenimiento predictivo y aprovechar los recursos emergentes de aprendizaje automático basados en la nube para crear capacidades de mantenimiento predictivo más sofisticadas.

Descargo de responsabilidad: Las opiniones, creencias y puntos de vista expresados por los autores o participantes del foro de este sitio web no reflejan necesariamente las opiniones, las creencias y los puntos de vista de Digi-Key Electronics o de las políticas oficiales de Digi-Key Electronics.

Información sobre el autor

Stephen Evanczuk

Stephen Evanczuk tiene más de 20 años de experiencia escribiendo para y sobre la industria de electrónica en un amplio rango de temas, entre ellos hardware, software, sistemas y aplicaciones, que incluyen IoT. Se doctoróen neurociencias (redes neuronales) y trabajó en la industria aeroespacial en sistemas seguros con distribución masiva y métodos de aceleración de algoritmos. Actualmente, cuando no escribe artículos sobre tecnología e ingeniería, trabaja en aplicaciones de aprendizaje profundo sobre sistemas de reconocimiento y recomendaciones.

Información sobre la editorial

Editores de Digi-Key de América del Norte