jueves, 31 de diciembre de 2009

Problema en Tecla de Función de HMI Siemens

 
SI-OP-001

    A pesar del paso de los años y de la evolución en la tecnología de los paneles Siemens, sigue repitiéndose un problema relacionado con la función “Activar bit mientras tecla pulsada”. Este detalle, que parece sencillo, puede ocasionar fallas críticas en la operación de máquinas y procesos industriales, lo que genera confusión tanto en programadores como en operadores.

Caso reciente en planta

    Hace unos días fui contactado por una planta donde reportaban que no podían cambiar el modo de operación de una máquina.

  • Equipo involucrado: PLC S7-300 con un panel gráfico Siemens.

  • Situación: El cambio de modo debía hacerse desde la pantalla del panel, pero no se efectuaba.

    Al conectar mi laptop al PLC para monitorear los bits de cambio de modo, observé que uno de los bits enviados desde el panel se mantenía siempre activado. Al forzarlo manualmente de “1” a “0”, el bit respondía bien, pero al volver a pulsar la tecla en el panel, el bit quedaba nuevamente activado de forma permanente.

     Esto confirmaba que el problema provenía del panel de operador y no del PLC.

Análisis de la falla

    El programador del panel revisó el proyecto y me mostró que la tecla en cuestión tenía asignada la función “Activar bit mientras tecla pulsada”.

     En teoría, el comportamiento debería ser:

  • Mientras la tecla esté presionada → el bit se activa.

  • Al soltar la tecla → el bit debería desactivarse.

    Sin embargo, la tecla quedaba “enclavada” y mantenía el bit en estado “1” aun cuando ya no estaba siendo pulsada.

Experiencia anterior con ProTool

    Esta no era la primera vez que veía este error. Años atrás, me ocurrió algo similar con un panel gráfico OP 37 programado con ProTool v6.0.

    En ese proyecto, asigné la función “Activar bit mientras tecla pulsada” a diferentes teclas para arrancar y parar motores. Inicialmente funcionó bien, pero con el tiempo los paneles comenzaron a presentar fallas:

  • Los motores quedaban encendidos permanentemente.

  • En otros casos, no era posible arrancarlos porque la señal de paro permanecía activa.

    El problema era exactamente el mismo: el panel no detectaba que la tecla había sido liberada.

     La solución fue implementar en el PLC un temporizador de autodesactivación, asegurando que la señal se apagara después de algunos segundos.

Situación heredada en WinCC Flexible

    Hoy en día ya no se utiliza ProTool, sino WinCC Flexible, herramienta que sustituyó al software anterior y que acompaña a los paneles Siemens más modernos. Sin embargo, el problema persiste:

  • Dos softwares diferentes: ProTool y WinCC Flexible.

  • Dos generaciones de paneles diferentes.

  • Dos programadores diferentes.

  • Un mismo problema con la misma función.

    Esto demuestra que no se trata de un error de programación aislado, sino de un fallo intrínseco en cómo Siemens maneja esta función en sus paneles.

Recomendaciones para evitar el problema

    Dado que Siemens no ha corregido este detalle, y nos toca remediar la situación, lo más prudente es:


     Tomar un cautín para repara la tecla, tal como se ilustra... es broma...

    Ya serio: 

  1. Evitar el uso de la función “Activar bit mientras tecla pulsada” en los paneles.

  2. Implementar lógica de autodesactivación en el PLC:

    • Programar temporizadores o condiciones que obliguen a que los bits provenientes del panel se apaguen tras cierto tiempo.

  3. Monitorear los bits en el PLC para identificar rápidamente si algún bit queda enclavado.

  4. Documentar la programación del panel para que futuros técnicos sepan que esta función puede causar problemas.

Para concluir...

    La falla de los bits enclavados al usar la función “Activar bit mientras tecla pulsada” se ha presentado en diferentes generaciones de paneles Siemens y con distintos softwares de programación.

     Aunque la tecnología ha avanzado, el problema sigue sin resolverse. Por ello, la mejor estrategia es prevenir desde el diseño del PLC, asegurando que las señales críticas no dependan exclusivamente de esta función del panel.

    En el caso reciente, la solución fue sencilla: implementar la desactivación automática de los bits luego de cierto tiempo. Con ello, la máquina recuperó su funcionalidad normal.

Una lección importante: confiar demasiado en el panel puede traer dolores de cabeza; siempre es mejor que el PLC tenga el control de la lógica de seguridad y operación

    

sábado, 19 de diciembre de 2009

Carga de Programa a CPU S5-135U desde Memory Card


 S5-135-001

    En muchas empresas aún nos encontramos con los llamados PLC’s “dinosaurios”, como los Siemens S5, que aunque obsoletos y difíciles de manipular, siguen presentes en numerosos procesos industriales. Su sola presencia puede desalentar a los técnicos debido a la complejidad que implica trabajar con ellos. Sin embargo, en la mayoría de los casos no queda otra alternativa más que familiarizarse con estos equipos y aprender a mantenerlos operativos.

    Uno de los problemas más frecuentes con la CPU S5-135U es la pérdida del programa en la memoria RAM, aun cuando cuenta con batería de respaldo. Cuando esto ocurre, es necesario volver a cargar el programa, ya sea mediante conexión con PC o a través de una Memory Card.

    En este documento se explica el procedimiento para cargar el programa desde una tarjeta de memoria directamente a la CPU.

Requisitos previos

  • Contar con una Memory Card que ya tenga cargado el programa.

  • Identificar la ranura correspondiente en la CPU para insertar la tarjeta.

  • Familiarizarse con los selectores de la CPU:

    • Run/Stop

    • Overall Reset

Procedimiento de carga desde Memory Card

  1. Insertar la Memory Card en la CPU en la ranura correspondiente.

  2. Colocar el selector en la posición de Overall Reset y mantenerlo presionado.

  3. Mientras lo mantenemos, mover el selector de Run-Stop a la posición Stop.

  4. Sin soltar el Overall Reset, colocar el selector de Run-Stop en la posición Run.

  5. Finalmente, regresar el selector a Stop y soltar en este momento el Overall Reset.

✔ Si el procedimiento se realizó correctamente, el LED de Stop permanecerá encendido de forma fija (sin parpadear).

Consideraciones importantes

  • Con este procedimiento se borra por completo el contenido de la memoria RAM de la CPU.

  • Tras el borrado, el sistema operativo de la CPU transfiere automáticamente el programa de la Memory Card hacia la RAM.

  • Una vez finalizada la carga, el programa ya está disponible en la CPU.

Arranque del sistema

  1. Colocar el selector Run-Stop en la posición Run.

  2. Verificar que el LED de Run se encienda en verde de forma permanente.

    Esto indica que la CPU ha iniciado correctamente y que el programa de la Memory Card fue cargado de manera exitosa.

    Aunque los PLC Siemens S5-135U son equipos obsoletos y poco amigables, aún es posible mantenerlos operativos si se conoce el procedimiento adecuado. La carga desde una Memory Card resulta una alternativa práctica y rápida para recuperar el programa perdido en la CPU, evitando paradas prolongadas de producción.

    

martes, 1 de diciembre de 2009

Cómo Grabar los Bloques de Datos en FM-354

 
  
SI-300-005

    La primera vez que me tocó programar una tarjeta FM-354 carecía de muchos conocimientos básicos sobre este módulo. El desafío era mayor porque debía programarla en un plazo de cinco días para una máquina cuya función era colocar botes de producto dentro de sus cajas.

    Ya antes había trabajado con Simodrives Siemens conectados a un PLC S7-300 mediante red Profibus, lo que me daba una base mínima. Sin embargo, este nuevo proyecto representaba una prueba exigente: ¿sería posible programar la FM-354 desde cero en menos de una semana y, además, lograr que la máquina funcionara correctamente?

    El panorama era complejo:

  • Poco tiempo disponible.

  • Desconocimiento total de la FM-354.

  • Alta presión por parte del cliente.

  • Riesgo de incumplimiento, retrasos en producción y posibles consecuencias contractuales.

    Aun así, acepté la responsabilidad. La misión era clara: la máquina debía funcionar a como diera lugar.

Primeros pasos: documentación y estudio

    Con el reto encima, lo primero que hice fue conseguir el manual de la FM-354 en internet. Como suele suceder con los manuales, la información estaba explicada de manera elemental, pero suficiente para trazar una ruta.

    A partir de esa investigación descubrí que la FM-354 es una tarjeta diseñada para controlar servomotores en tareas de posicionamiento, exactamente lo que necesitaba el proyecto.

Consideraciones de hardware

    Antes de iniciar con la programación, tuve que aclarar varios aspectos relacionados con el hardware:

  • Señales digitales que maneja la tarjeta.

  • Ubicación de la FM-354 dentro del rack del PLC.

  • Tipos de encoders compatibles y su forma de conexión.

  • Envío de señales de control al servo-drive.

    Tras revisar los componentes, confirmé que:

  • El encoder era compatible.

  • La señal de set-point de velocidad (–10V … 0 … +10V) era adecuada para el servo-drive.

    Con esto, la primera etapa de validación estaba superada.

Instalación del software y configuración inicial

    Con los componentes montados y conectados, el siguiente paso fue instalar el software de la FM-354, que se integra como complemento del Step 7. Utilicé la versión 5.4.

    Luego:

  1. Descargué el hardware del PLC conectando la CPU vía puerto MPI, usando un PC-Adapter y una laptop Acer.

  2. En el proyecto, abrí el Hardware Configuration.

  3. Seleccioné la FM-354, lo que desplegó una ventana de parametrización.

  4. Tras modificar parámetros, intenté transferir los bloques de datos a la FM.

    Cuando los parámetros eran correctos, la transferencia se completaba sin errores. Pero si había inconsistencias, aparecía un mensaje de fallo que obligaba a corregir la configuración.

Problema recurrente: pérdida de parámetros

    En esta etapa surgió un obstáculo inesperado. Varias veces notamos que, aunque la transferencia de datos a la FM era correcta, los parámetros se perdían al apagar el PLC. Al reiniciar, la FM aparecía sin las modificaciones guardadas.

   Este comportamiento no estaba documentado en el manual, lo que aumentó la frustración y la incertidumbre.

Procedimiento de solución


     Finalmente, tras varios intentos, descubrimos un procedimiento que permitió que la FM-354 conservara los parámetros después de apagar y encender el sistema:

  1. Conectarse al PLC por el puerto MPI y abrir la aplicación de la FM-354.

  2. Modificar los parámetros requeridos.

  3. Colocar el selector de la CPU en posición “Stop”.

  4. Transferir los bloques de datos a la FM.

  5. Desenergizar únicamente la FM por unos segundos y volver a energizarla.

  6. Al energizarla, la CPU indicará una falla con el LED “SF” encendido.

  7. Cambiar el selector de la CPU a posición “Run”.

    Luego de este procedimiento:

  • Se reinició la comunicación con la FM.

  • Se verificó que los parámetros modificados permanecían almacenados.

  • Tras apagar y energizar todo el tablero, comprobamos que la FM conservaba los cambios.

    Aunque fue un trabajo maratónico y lleno de presión, el proyecto fue concluido con éxito en el tiempo establecido. La máquina quedó operativa, presentando solo detalles menores que posteriormente fueron corregidos.

    La experiencia dejó varias lecciones importantes:

  • La importancia de estudiar a fondo los manuales técnicos.

  • La necesidad de validar siempre la compatibilidad del hardware.

  • La utilidad de la prueba y error frente a problemas no documentados.

  • Y, sobre todo, que los retos técnicos, por más complejos que parezcan, pueden resolverse con disciplina y método.