Resolución de bloqueos de diagramas y conflictos de acceso en ingeniería multiusuario en SIMATIC PCS 7

Los bloqueos de diagramas CFC (Continuous Function Chart) se producen en entornos de ingeniería multiusuario de SIMATIC PCS 7 cuando la base de datos de un sistema de automatización (AS) conserva un bloqueo de usuario exclusivo de una sesión de ingeniería anterior. Si un diagrama se deja abierto, se edita en línea o se cierra de forma anormal en una estación de ingeniería secundaría, la estación principal no puede abrir o descargar el diagrama, mostrando un error de que el objeto está en uso. Para resolver este problema es necesario finalizar las sesiones remotas colgantes, liberar los registros de base de datos bloqueados mediante la reorganización del proyecto, limpiar los controladores de archivos de red huérfanos en el servidor central del proyecto y garantizar que estén instalados los paquetes de actualización de CFC actuales.

Índice de contenidos

Arquitectura de bloqueo de ingeniería multiusuario en PCS 7

SIMATIC PCS 7 admite ingeniería multiusuario en una estructura de multiproyecto, lo que permite a varios ingenieros en Estaciones de ingeniería (ES) distribuidas trabajar simultáneamente en diferentes sistemas de automatización (AS) o estaciones de operador (OS). Para evitar la corrupción de datos, STEP 7 y CFC implementan un mecanismo estricto de bloqueo de registros:

  • Exclusividad a nivel de objeto: Si bien varios ingenieros pueden acceder simultáneamente a diferentes diagramas dentro del mismo AS, solo un ingeniero puede abrir un diagrama CFC o SFC específico para su edición o supervisión en línea en un momento dado.
  • Seguimiento de sesiones: Cuando un ingeniero abre un diagrama CFC, el editor CFC registra un registro de bloqueo en los archivos de la base de datos local (s7asr.dbf, s7amx.dbf o tablas de bloqueo internas) y crea bloqueos de sesión temporales en la carpeta compartida de ingeniería de la planta.
  • Restricciones del modo en línea: Cuando una ES se conecta en línea a un controlador para probar la lógica o ver valores dinámicos, el bloqueo de escritura del diagrama se actualiza para evitar descargas concurrentes del programa o cambios conflictivos desde otra estación.

Causas raíz de los errores persistentes de bloqueo de diagramas

En PCS 7 V9.0 SP3 y versiones relacionadas, los ingenieros suelen encontrar el error "El diagrama ya está abierto por otro usuario o por otra aplicación" incluso cuando la ES secundaria se ha apagado. Este estado de bloqueo persistente es impulsado por varios modos de fallo:

  1. Terminación anormal de la red: Si una ES secundaria pierde la conexión de red con el servidor del proyecto mientras un diagrama está abierto en línea, el servidor continúa manteniendo los bloqueos de archivos SMB porque los tiempos de espera de TCP Keep-Alive no han expirado.
  2. Bloqueo (Crash) de s7jcfcax.exe o s7tgtopx.exe: Si el editor CFC sufre un fallo o se fuerza su cierre a través del Administrador de tareas de Windows, se omite la secuencia de desbloqueo de la base de datos, lo que deja la marca de "diagrama abierto" configurada permanentemente en la base de datos del proyecto.
  3. Cambios en línea sin compilar: Si se realizaron cambios en un diagrama en línea en una estación secundaria sin guardar y cerrar correctamente, el búfer de cambios permanece asignado al ID de sesión de la estación secundaria.
  4. Deficiencias del software CFC: Ciertas versiones de CFC V9.0 SP3 sufrieron defectos de sincronización en entornos multiusuario donde el cierre de un diagrama no activaba inmediatamente la liberación del bloqueo en los recursos compartidos de red del multiproyecto.

Procedimiento paso a paso para eliminar bloqueos de diagramas atascados

Siga estos pasos progresivos para eliminar los bloqueos de diagramas colgantes sin poner en riesgo la integridad de los datos del proyecto:

Paso 1: Liberar controladores SMB del lado del servidor

  1. En la ES central o servidor que aloja el multiproyecto compartido, abra Administración de equipos de Windows (compmgmt.msc).
  2. Vaya a Herramientas del sistema -> Carpetas compartidas -> Archivos abiertos.
  3. Localice cualquier archivo abierto asociado con la ruta del subproyecto AS bloqueado (específicamente archivos en las subcarpetas widoff o global).
  4. Haga clic derecho en los archivos bloqueados y seleccione Cerrar archivo abierto.
  5. En Carpetas compartidas -> Sesiones, haga clic derecho en cualquier sesión inactiva de la ES secundaria y seleccione Cerrar sesión.

Paso 2: Limpiar la caché de la estación de trabajo local

  1. En la ES secundaria que accedió previamente al diagrama, asegúrese de que SIMATIC Manager y todas las herramientas de ingeniería estén completamente cerradas.
  2. Abra el Administrador de tareas y asegúrese de que no queden procesos de Siemens en ejecución (s7jcfcax.exe, s7tgtopx.exe, s7abapx.exe).
  3. Reinicie la ES secundaria si los procesos no se pueden terminar correctamente.

Paso 3: Borrar marcadores de bloqueo temporal del proyecto

  1. En el servidor central del proyecto, busque la carpeta específica del proyecto AS en el Explorador de Windows.
  2. Asegúrese de que Windows esté configurado para mostrar archivos ocultos y del sistema.
  3. Verifique el directorio del proyecto y los subdirectorios en busca de archivos temporales que coincidan con *.loc, *.tmp o *.lck.
  4. Si están presentes y todas las estaciones de ingeniería han cerrado SIMATIC Manager, elimine estos archivos de bloqueo huérfanos.

Reorganización del proyecto y reconstrucción de referencias cruzadas

Si el diagrama permanece bloqueado después de liberar los controladores de red, los indicadores de la base de datos interna deben reconstruirse utilizando la función de reorganización de SIMATIC Manager:

  1. Abra SIMATIC Manager en la ES principal.
  2. Asegúrese de que ninguna otra estación de ingeniería haya abierto ningún proyecto dentro del multiproyecto.
  3. Abra el subproyecto individual (el proyecto AS específico que contiene el diagrama bloqueado) directamente, omitiendo la raíz del multiproyecto.
  4. Seleccione Archivo -> Guardar como...
  5. En el cuadro de diálogo Guardar proyecto como:
    * Seleccione la casilla Con reorganización (lento).
    * Proporcione una nueva ruta de carpeta temporal en la unidad local.
    * Haga clic en Aceptar y espere a que se complete el proceso de reorganización.
  6. El proceso de reorganización analiza cada registro de base de datos, limpia las marcas de eliminación, elimina los registros de bloqueo huérfanos y reorganiza las tablas de bloques.
  7. Abra el proyecto reorganizado, verifique que el diagrama bloqueado se abra correctamente y luego reintegre el subproyecto en el multiproyecto maestro (Multiproyecto -> Insertar en multiproyecto).

Buenas prácticas operativas multiusuario

Para evitar bloqueos recurrentes en equipos de ingeniería distribuidos de PCS 7, aplique los siguientes protocolos de planta:

  1. Exclusión explícita (Check-Out) y notificación: Mantenga un registro de ingeniería central o comuníquese activamente antes de abrir diagramas en línea en proyectos AS operativos.
  2. Evitar la supervisión en línea a largo plazo: No deje los diagramas CFC en modo de prueba (Depurar -> Modo de prueba) sin supervisión. Cierre el modo de prueba inmediatamente después de completar el ajuste funcional.
  3. Quitar el AS del multiproyecto para ediciones pesadas: Cuando un ingeniero necesite realizar una reestructuración sustancial o una puesta en marcha a gran escala en un AS, elimine ese proyecto AS específico del multiproyecto (Multiproyecto -> Eliminar del multiproyecto), cópielo localmente en la estación de ingeniería, complete el trabajo y vuelva a insertarlo.
  4. Sincronizar actualizaciones de software: Asegúrese de que cada ES conectada al bus de planta ejecute exactamente la misma versión de PCS 7, Service Pack y nivel de hotfix de CFC.

Verificación

Verifique la restauración exitosa del acceso multiusuario en toda la red de ingeniería:

  1. Verificación en la ES principal:
    * Abra el multiproyecto maestro en la ES principal.
    * Navegue hasta el diagrama CFC previamente bloqueado y haga doble clic para abrirlo.
    * Verifique que el diagrama se abra en modo de solo lectura/escritura completo sin mensajes de advertencia.
    * Realice una edición cosmética menor (por ejemplo, mueva un bloque o ajuste un valor de parámetro), guarde el diagrama y verifique que se complete el guardado correctamente.
  2. Verificación en la ES secundaria:
    * En la ES secundaria, abra un diagrama CFC diferente dentro del mismo AS.
    * Confirme que ambas estaciones de ingeniería pueden trabajar simultáneamente en diferentes diagramas.
  3. Comprobación de compilación y descarga:
    * Ejecute una compilación de prueba (Diagramas -> Compilar -> Solo cambios).
    * Realice una descarga de cambio de prueba para verificar que los controladores de comunicación con el sistema de automatización funcionen plenamente.

Limitaciones y precauciones operativas

  • No elimine nunca archivos DBF desconocidos: No elimine manualmente archivos .dbf o .cdx de la carpeta del proyecto en un intento de eliminar bloqueos. Hacerlo destruye permanentemente la estructura de la base de datos del proyecto.
  • Prohibición de descargas concurrentes: La ingeniería multiusuario no permite que dos estaciones descarguen en el mismo sistema de automatización simultáneamente. Las operaciones de descarga bloquean toda la carpeta del AS hasta su finalización.
  • Exclusividad de la configuración de hardware: HW Config no se puede editar concurrentemente. La apertura de HW Config coloca un bloqueo exclusivo en toda la configuración de la estación.
  • Impacto de la latencia de red: Las conexiones de red de alta latencia (como VPN o enlaces Wi-Fi remotos) aumentan drásticamente la probabilidad de tiempos de espera de bloqueo SMB y bloqueos de diagramas. La ingeniería a través de WAN siempre debe utilizar sesiones de escritorio remoto en una ES local en lugar de recursos compartidos de red directos.

Preguntas frecuentes del ingeniero (Engineer FAQ)

  • ¿Por qué PCS 7 dice que un diagrama está abierto cuando la computadora secundaria ya se ha reiniciado?
    Cuando una computadora cliente se reinicia abruptamente, el servidor de archivos de Windows que aloja los archivos del proyecto retiene los controladores SMB abiertos hasta que expire el tiempo de espera de la red, y los registros de la base de datos del proyecto todavía marcan la sesión de edición activa.
  • ¿Pueden dos ingenieros editar diferentes diagramas CFC en el mismo proyecto AS al mismo tiempo?
    Sí, la ingeniería multiusuario de PCS 7 permite la edición concurrente de distintos diagramas CFC dentro del mismo sistema de automatización.
  • ¿Qué actualización específica de CFC resuelve los problemas de bloqueo de diagramas multiusuario en PCS 7 V9.0 SP3?
    La instalación de la última actualización acumulativa para CFC V9.0 SP3 (Upd1 o superior) resuelve los defectos conocidos en los que el editor no liberaba los bloqueos de sincronización multiusuario al cerrar.
  • ¿Cómo borra los diagramas bloqueados la función 'Guardar como con reorganización (lento)'?
    La reorganización lenta copia solo los registros de bases de datos válidos y activos en un contenedor de base de datos nuevo, eliminando los registros de bloqueo huérfanos, los marcadores eliminados y las tablas de índices dañadas.
  • ¿Puedo quitar un proyecto AS del multiproyecto para evitar un diagrama bloqueado?
    Sí, puede eliminar el proyecto AS de la estructura del multiproyecto, abrirlo como un proyecto individual independiente, realizar el desbloqueo y la reorganización, y luego volver a insertarlo.
  • ¿Qué permisos de Windows se requieren en el recurso compartido de red del multiproyecto para la ingeniería multiusuario?
    Todos los ingenieros participantes deben tener permisos de Control total tanto a nivel de recurso compartido de Windows como de NTFS, y pertenecer a los grupos SIMATIC HMI y Administradores locales.
  • ¿Causará corrupción de datos el cierre de un archivo bloqueado en compmgmt.msc?
    Cerrar a la fuerza un controlador SMB puede causar pérdida de datos si el cliente está escribiendo activamente. Si se verifica que la máquina cliente está cerrada o reiniciada, cerrar el controlador es seguro.
  • ¿Por qué el modo en línea (Test Mode) crea un bloqueo exclusivo en un diagrama CFC?
    El modo de prueba en línea establece una conexión de supervisión dinámica que se vincula a los recursos del búfer de la CPU y evita que otras estaciones de ingeniería descarguen cambios estructurales.
  • ¿Cómo puedo saber qué ingeniero está bloqueando actualmente un diagrama CFC específico?
    En las versiones más recientes de PCS 7, el cuadro de diálogo de bloqueo muestra el nombre de la computadora Windows y el usuario que tiene el bloqueo, o bien puede verificar en Administración de equipos -> Carpetas compartidas -> Archivos abiertos en el servidor host.
  • ¿Ayuda SIMATIC Version Trail a evitar conflictos de bloqueo de diagramas multiusuario?
    SIMATIC Version Trail realiza un seguimiento de los cambios y archiva versiones, pero la implementación de procedimientos estrictos de check-out junto con Version Trail minimiza los conflictos.

Referencias técnicas

  • Portal de Siemens Industry Online Support (SIOS): ¿Qué debe tener en cuenta en la ingeniería multiusuario en PCS 7? (ID de entrada: 22258957).
  • Manual del sistema de ingeniería SIMATIC PCS 7 (V9.0 SP3 / V9.1), Siemens AG.
  • Manual de programación SIMATIC CFC para S7 / PCS 7, Siemens AG.

Artículos relacionados

Etiquetas relacionadas

PCS 7, CFC, Ingeniería multiusuario, STEP 7, Estación de ingeniería, Bloqueo de archivos, Solución de problemas, Sistema de automatización

20 respuestas