Industria

Códigos de error más comunes del PLC Siemens Simatic S7: significado y diagnóstico

Joan Puig
31 de julio de 2026
9 min read
IA Industrial · Automatización

Códigos de error más comunes del PLC Siemens Simatic S7: significado y diagnóstico

Un PLC Siemens Simatic S7 (series S7-1200, S7-1500, S7-300 o S7-400) que entra en STOP con un código de error en la CPU puede detener una línea completa. Los códigos más frecuentes —error de E/S, watchdog, desbordamiento de tiempo de ciclo o pérdida de comunicación de red— tienen causas reconocidas y un diagnóstico estándar desde el TIA Portal o el Step 7 clásico. Este artículo recopila los errores que más aparecen en planta, qué significan realmente y cómo identificarlos sin tener que releer el manual completo cada vez.

Nota importante: Los nombres y números de código varían ligeramente entre generaciones (S7-300/400 con Step 7 clásico vs S7-1200/1500 con TIA Portal). Este artículo cubre el patrón general de cada familia de error; para el código exacto de tu firmware, consulta siempre el diagnóstico online ("Online & diagnostics") del TIA Portal, que muestra el texto completo del evento.

15-30 minutos

Es el tiempo medio que un técnico dedica a buscar el significado exacto de un código de error S7 en el manual de diagnóstico (Diagnostics Buffer) cuando no tiene el hábito. Con la lista de referencia de este artículo, la identificación inicial baja a segundos; el tiempo real se dedica a la causa raíz, no a descifrar el código.

¿Dónde se consultan los códigos de error de un S7?

Antes de entrar en los códigos concretos, hay que saber dónde se documentan. En las CPU S7-1200/1500, el Diagnostics Buffer del TIA Portal (menú "Online & diagnostics" → "Diagnostics buffer") registra cronológicamente cada evento: arranques, paradas, errores de E/S, errores de programa y pérdidas de comunicación, con marca de tiempo y el número de evento exacto. En las CPU S7-300/400 con Step 7 clásico, la información equivalente se encuentra en el módulo de diagnóstico del hardware ("Diagnose Hardware") y en los bloques de organización de error (OB) que la CPU llama automáticamente.

El LED de estado de la CPU (SF/ERROR en rojo, RUN/STOP) da una primera pista visual, pero nunca reemplaza la lectura del buffer: un LED SF encendido puede corresponder a decenas de causas diferentes, y solo el event number del buffer distingue entre ellas.

Categoría 1 — Errores de módulo de entradas/salidas (E/S)

Es la categoría más frecuente en planta. Aparece cuando la CPU no puede leer o escribir correctamente en un módulo digital o analógico conectado al bus (PROFIBUS, PROFINET o bus de fondo de rack).

  • "I/O access error" / error de módulo (evento tipo 0x39xx en S7-1200/1500): la CPU intenta acceder a una dirección de E/S y el módulo no responde. Causas habituales: módulo retirado físicamente, tarjeta dañada, o discrepancia entre la configuración hardware del TIA Portal y el módulo realmente instalado en el rack.
  • Error de rango analógico ("wire break" / rotura de hilo): típico en entradas 4-20 mA cuando el sensor está desconectado o el cableado roto. El módulo reporta el valor fuera de rango y genera un diagnóstico específico si el canal tiene el diagnóstico activado en el hardware config.
  • Sobrecarga o cortocircuito en salida digital: el módulo de salidas detecta corriente excesiva y desactiva el canal por protección, generando un evento de diagnóstico con el número de canal exacto.

Cómo diagnosticarlo: abre "Online & diagnostics", ve a "Diagnostics buffer" y localiza el evento más reciente de este tipo; anota el número de ranura/canal que indica. Comprueba físicamente el módulo indicado antes de tocar el programa: en la mayoría de casos el código señala con precisión el componente defectuoso.

Categoría 2 — Errores de programa y tiempo de ejecución

Estos errores ocurren cuando el código del programa hace algo que la CPU no puede ejecutar, y normalmente provocan que la CPU pase a STOP si no hay un bloque de organización (OB) de error configurado para capturarlos.

  • Desbordamiento de tiempo de ciclo ("Cycle time exceeded", OB80 en Step 7 clásico / evento de watchdog en TIA Portal): el programa tarda más del tiempo máximo configurado (por defecto 150 ms, ampliable). Causas frecuentes: bucles infinitos o mal cerrados, bloques de datos demasiado grandes procesados en un solo ciclo, o comunicación síncrona bloqueante dentro del ciclo principal.
  • Acceso a puntero no válido / "Programming error" (OB121): el código intenta leer o escribir en una dirección de memoria (DB, marca) que no existe o ha sido eliminada, a menudo por un bloque de datos global (DB) borrado o redimensionado sin actualizar todas las referencias.
  • Error aritmético ("I/O access error" en operaciones, OB121 también): división por cero, desbordamiento de rango numérico (por ejemplo, un INT que supera el rango en una suma) o conversión de tipo incorrecta.
  • Error de tiempo en bloque de llamada ("Call stack error"): recursividad excesiva o llamadas encadenadas de bloques de función (FB/FC) que agotan la pila de llamadas de la CPU.

Cómo diagnosticarlo: en el Diagnostics Buffer, el evento indica el bloque (FB/FC/OB) y a menudo la línea o instrucción aproximada donde falló. Si la CPU pasa a STOP repetidamente tras una modificación de programa reciente, revisa primero los cambios hechos en DBs globales antes de buscar el error en otro sitio.

Categoría 3 — Errores de comunicación y red

La comunicación entre la CPU y otros dispositivos (HMI, otros PLCs, módulos remotos ET200) es una fuente habitual de incidencias, especialmente en redes PROFINET grandes.

  • Pérdida de dispositivo PROFINET ("Station failure" / "Device missing"): un módulo remoto ET200SP/ET200MP u otro nodo de la red deja de responder. Causas: cable de red desconectado, switch industrial caído, o la dirección IP/nombre de dispositivo no coincide con la configuración del hardware.
  • Timeout de conexión S7 (comunicación entre CPUs o con SCADA/HMI): la conexión configurada (vía bloques PUT/GET o conexión S7 nativa) supera el tiempo de espera. A menudo por carga excesiva de red, o porque el dispositivo remoto también está en STOP.
  • Conflicto de dirección IP o duplicidad de nombre PROFINET: dos dispositivos con la misma dirección IP o "PROFINET device name" en la misma red. Genera errores intermitentes difíciles de reproducir, ya que dependen de qué dispositivo responde primero.

Cómo diagnosticarlo: la vista de topología de red del TIA Portal ("Network view" + "Accessible devices") muestra en tiempo real qué dispositivos responden. Un LED rojo en el módulo remoto o en el switch normalmente confirma el problema físico antes de que sea necesario tocar ninguna configuración lógica.

Categoría 4 — Errores de batería, memoria y hardware de la CPU

  • "Battery low" / batería de mantenimiento de datos baja: en S7-300/400 (y algunos módulos de ampliación S7-1500), la batería mantiene el reloj y la memoria remanente cuando no hay alimentación. Un aviso de batería baja no detiene la CPU inmediatamente, pero una pérdida total puede borrar datos remanentes en un corte de alimentación.
  • Memoria de carga llena ("Load memory full"): la tarjeta de memoria (SIMATIC Memory Card) no tiene espacio para el programa o los bloques de datos. Frecuente tras añadir muchos bloques de recetas o registros históricos sin ampliar la tarjeta.
  • Error de firmware incompatible: se carga un proyecto compilado con una versión de TIA Portal más reciente que el firmware instalado en la CPU física, provocando rechazo de la descarga o comportamiento inesperado.

Pasos prácticos para diagnosticar cualquier código de error S7

Checklist de diagnóstico rápido

  1. Conéctate online con el TIA Portal y abre "Online & diagnostics" antes de tocar nada en el programa.
  2. Lee el "Diagnostics buffer" de arriba a abajo: el evento más reciente normalmente es la causa inmediata de la parada.
  3. Anota el número de evento, la ranura/canal afectado y la marca horaria exacta.
  4. Comprueba primero el hardware físico indicado (módulo, cable, sensor) antes de revisar lógica de programa.
  5. Si es un error de programa (OB80/OB121), revisa los últimos cambios hechos en DBs o bloques de función antes de buscar en otro sitio.
  6. Documenta el código y la solución en el registro de mantenimiento: el mismo error tiende a repetirse en instalaciones similares.

Un patrón que se repite en muchas plantas es que el mismo código de error vuelve a aparecer meses después porque la causa raíz —un cable mal fijado, un DB demasiado grande, un switch de red envejecido— nunca se corrigió del todo, solo se "reinició" la CPU para salir del paso. Documentar la causa real, y no solo el código, es lo que realmente reduce el MTTR a medio plazo.

¿Por qué cuesta tanto encontrar el significado exacto de un código en planta?

El manual de diagnóstico completo de una familia S7-1500, por ejemplo, supera fácilmente las 600 páginas, e incluye cientos de números de evento agrupados por subsistema. En planta, a menudo el técnico solo tiene acceso al manual impreso o a un PDF genérico en el servidor, sin capacidad de búsqueda rápida por número de evento exacto. El resultado: minutos perdidos hojeando índices mientras la línea sigue parada.

Aquí es donde herramientas como IgeraIndustria aportan un cambio real: en lugar de buscar manualmente el código en el PDF del manual Siemens, el técnico puede preguntar directamente "¿Qué significa el evento 0x3946 en la CPU 1516F?" y recibir la respuesta exacta del manual oficial indexado, con la página y sección citadas, en segundos. No sustituye el conocimiento técnico del técnico —sustituye el tiempo perdido buscándolo.

Preguntas frecuentes

¿Qué diferencia hay entre un error que pone la CPU en STOP y un simple aviso de diagnóstico?

Un aviso de diagnóstico (por ejemplo, rotura de hilo en una entrada analógica) queda registrado en el buffer pero la CPU continúa en RUN si el programa no depende críticamente de ese valor. Un error grave de programa (como un acceso a puntero no válido sin OB de error configurado) fuerza a la CPU a STOP porque no puede seguir ejecutando el ciclo de forma segura.

¿Los códigos de error son iguales entre S7-300/400 y S7-1200/1500?

No exactamente. Las CPUs S7-300/400 (Step 7 clásico) utilizan bloques de organización de error (OB80, OB121, OB122...) con una nomenclatura propia. Las CPUs S7-1200/1500 (TIA Portal) mantienen conceptos equivalentes pero con eventos de diagnóstico numerados de forma diferente y más detallada en el Diagnostics Buffer. Las categorías de causa (E/S, programa, comunicación, hardware) son las mismas en ambas familias.

¿Se puede configurar la CPU para que no se detenga ante ciertos errores de programa?

Sí. Añadiendo el bloque de organización de error correspondiente (por ejemplo OB121 para errores de programación) al proyecto, la CPU llama a este bloque en lugar de pasar a STOP, permitiendo gestionar el error dentro del propio programa. Es una práctica habitual en programas robustos, pero requiere definir bien la lógica de recuperación para no enmascarar problemas reales.

¿Cuánto tiempo queda guardado el historial de errores en el Diagnostics Buffer?

El buffer tiene un tamaño limitado de eventos (típicamente cientos, según el modelo de CPU); cuando se llena, los eventos más antiguos se sobrescriben. Por eso es importante exportar o documentar el historial de errores relevantes antes de que queden sobrescritos, especialmente tras una parada crítica.

¿Un error de comunicación PROFINET siempre indica un problema de cableado?

No siempre. Aunque el cableado y los switches son la causa más frecuente, también pueden generar errores de comunicación una IP duplicada, una configuración de topología incorrecta en el TIA Portal, o incluso que el dispositivo remoto esté él mismo en STOP o en fallo de alimentación.

¿Cuánto le cuesta a tu planta buscar el significado de un código de error cada vez?

Con IgeraIndustria, el técnico pregunta el código exacto y recibe la respuesta del manual oficial en segundos, con la fuente citada

Prueba gratuita 14 días

Última actualización: Julio 2026 | Equipo IgeraSolutions | Prueba IgeraIndustria gratis

#codigos error siemens s7#plc siemens simatic s7#diagnostico plc siemens#tia portal diagnostics buffer#mantenimiento industrial IA

COMPARTIR

Comparte el conocimiento con tu red