Una CPU S7-300 que entra en modo STOP sin una causa evidente puede detener completamente una línea de producción. En muchos casos, el origen no es una falla compleja, sino un detalle que pasa desapercibido durante la programación: el acceso a direcciones de entradas o salidas inexistentes.
Este tipo de error es más común de lo que parece y, si no se maneja correctamente, puede provocar paros inesperados en operación.
Un problema frecuente en campo
Durante el desarrollo de aplicaciones para PLC Siemens S7-300, es habitual trabajar con:
asignación de entradas y salidas
integración de hardware
uso de temporizadores, marcas y bloques de programa
En este proceso, pueden introducirse errores que no siempre son detectados en modo offline.
Algunos fallos aparecen únicamente cuando el programa se descarga en la CPU y entra en ejecución. En situaciones más críticas, la CPU puede pasar inmediatamente a STOP al intentar ejecutar instrucciones inválidas.
¿Qué son los OBs en S7-300?
Bien, ahora continuemos comprendiendo qué es un OB. En los PLC Siemens S7-300, los OB (Organization Blocks) son bloques especiales que el sistema operativo de la CPU ejecuta automáticamente ante determinados eventos.
Cada OB cumple una función específica dentro del sistema, por ejemplo:
OB1: ciclo principal del programa
OB100: arranque de la CPU
OB121: manejo de errores de programación
OB122: manejo de errores de acceso a entradas/salidas
En esencia, los OB permiten que la CPU responda de forma controlada ante diferentes condiciones de operación o falla.
Herramienta utilizada: SIMATIC Manager STEP 7
Para programar, configurar y diagnosticar las CPU S7-300 se utiliza el entorno SIMATIC Manager STEP 7.
Desde este software es posible realizar múltiples tareas, entre ellas:
crear y editar bloques de programa
configurar el hardware del sistema
cargar el programa a la CPU
acceder a funciones de diagnóstico
Es importante entender que muchas de las herramientas de análisis, como el diagnóstico de fallas, sólo están disponibles desde este entorno.
Caso típico en planta
Hace poco recibí la llamada de un cliente cuya CPU S7-300 se detenía constantemente.
El síntoma era claro: la máquina entraba en STOP de forma intermitente, generando paros no programados y afectando la operación.
Llegué a planta, y al revisar el sistema, advertí que la CPU estaba en STOP. Así que el siguiente paso fue acceder al búffer de diagnóstico de la CPU.
¿Qué es el búffer de diagnóstico?
Ahora te preguntarás qué rayos es el "búffer de diagnóstico". El búffer de diagnóstico es una memoria interna de la CPU donde se registran eventos importantes del sistema, como:
errores de ejecución
fallas de hardware
cambios de estado (RUN/STOP)
Para consultarlo es necesario:
Conectarse a la CPU mediante SIMATIC Manager STEP 7
Seleccionar la CPU en el proyecto
Abrir la opción de diagnóstico / buffer de diagnóstico
Ahí se puede ver el historial de eventos que permite identificar la causa del problema.
En el caso que me encontraba en planta, el mensaje indicaba claramente la ausencia del bloque OB122. "OB 122 no cargado" era la línea descriptiva de la falla.
¿Qué es el OB122 y por qué es importante?
El OB122 es un bloque de sistema diseñado para manejar errores de direccionamiento en entradas y salidas.
Su función principal es evitar que la CPU se detenga cuando el programa intenta acceder a direcciones inexistentes.
Esto ocurre porque:
En programación offline, el software permite usar direcciones que no existen físicamente
No se genera error durante el desarrollo
Pero al ejecutar el programa en la CPU:
Si se quiere acceder en el programa a una dirección inexistente y no existe el OB122, la CPU entra, inevitablemente, en STOP.
Ejemplo práctico
Vamos a ver un ejemplo para que quede más claro. Si el programa intenta leer desde la dirección PIW312 (una dirección analógica), pero no existe un módulo físico asociado:
Sin OB122 → la CPU se detiene
Con OB122 → la CPU permanece en RUN y gestiona el error
Cómo implementar el OB122
El procedimiento es sencillo:
Crear el bloque OB122 en SIMATIC Manager STEP 7
Descargarlo a la CPU
No es necesario programar ni una línea de lógica dentro del bloque
Incluso un OB122 vacío cumple su función.
Una vez presente:
La CPU lo reconoce automáticamente
En caso de error, lo ejecuta en lugar de detenerse
El sistema continúa en operación
Algo importante que debes considerar
El OB122 no elimina el error.
Sólo evita que la CPU se detenga.
Esto significa que:
El problema de direccionamiento sigue existiendo
Puede haber pérdida de señales reales
El sistema puede operar con fallas ocultas
Por lo tanto, siempre es necesario realizar un diagnóstico completo.
Situaciones donde se activa el OB122
Este bloque puede entrar en acción en distintos escenarios:
Durante programación
Uso de direcciones incorrectas
Configuración incompleta de hardware
Durante operación
Fallo o desconexión de módulos de E/S
Daños eléctricos
Cambios en hardware no actualizados en el programa
Incluso sistemas estables durante años pueden presentar este problema de forma repentina.
Checklist rápido en campo
Antes de intervenir una CPU en STOP o comportamiento anómalo, revisa lo siguiente:
¿El OB122 está cargado en la CPU?
¿El búffer de diagnóstico muestra errores de direccionamiento?
¿Existen módulos físicos para todas las direcciones utilizadas?
¿Se realizaron cambios recientes en hardware o cableado?
¿Hay módulos dañados o desconectados?
¿El direccionamiento en hardware coincide con el programa?
Para finalizar
El OB122 es una herramienta sencilla pero crítica para evitar que una CPU S7-300 entre en STOP debido a errores de direccionamiento.
Implementarlo desde la etapa inicial del proyecto puede marcar la diferencia entre:
una falla que detiene producción
o un sistema que continúa operando mientras se diagnostica el problema
Sin embargo, es importante remarcar que nunca debe considerarse una solución definitiva, sino una medida preventiva dentro de una estrategia de diagnóstico más amplia.
--------------------------------------------------------------------------------------------------------------
Siguiente paso
El error de I/O es sólo una de varias causas que pueden provocar que una CPU Siemens S7-300 entre en STOP y detenga un proceso productivo.
Contar con una metodología clara de diagnóstico permite reducir tiempos de paro, evitar cambios innecesarios y recuperar la operación con mayor rapidez.
Si necesitas apoyo práctico para atender este tipo de fallas en campo, puedes acceder a los siguientes recursos:
>>> Documento Gratuito <<<
Checklist descargable gratuito listo para uso en campo:
Diagnóstico y Solución de Fallas de I-O en CPU Siemens S7-300 [Hoja de Checklist]
>>> Documento Completo <<<
Guía práctica con procedimientos paso a paso, causas frecuentes de STOP, uso del búffer de diagnóstico y acciones recomendadas para corregir fallas comunes
Diagnóstico y Solución de Fallas en CPU Siemens S7-300
*** Disponibles en "Buy Me a Coffee"
Espera las siguientes entregas.
¡Gracias por tu apoyo!




en un PLC step7 300 al momento del arranque presenta en el display el siguiente mensaje: RAM MEMORY FAIL VERIFY LOAD DATA START CODE el programa corre perfectamente y no afecta a los sensores y actuadores.....pueden decirme como hacer para eliminar este mensaje jrabanal@hotmail.com.
ResponderEliminarnota: esto apareció despues de un corte de energia intempestivo