Por qué los diagramas CFC no tienen botón de deshacer (Undo) ni de guardar en SIMATIC PCS 7

El editor Continuous Function Chart (CFC) en SIMATIC PCS 7 carece de un botón de «Deshacer» (Undo) y de un aviso explícito de «Guardar / No guardar» al salir, debido a que es un editor de base de datos basado en transacciones con guardado automático. A diferencia de los editores de programación basados en documentos (como LAD/FBD/STL en el STEP 7 clásico), cada acción gráfica en CFC —como colocar un bloque, trazar una interconexión o editar un parámetro— ejecuta confirmaciones (commits) de bases de datos atómicas directamente en la base de datos subyacente del proyecto de STEP 7. Para proteger el trabajo contra eliminaciones accidentales, los ingenieros deben utilizar archivos de lectura retroactiva de diagramas (readback), control de versiones del proyecto y Tipos de Módulos de Control (CMT).

Índice de contenidos

Arquitectura de base de datos de CFC frente a editores basados en documentos

Los ingenieros que hacen la transición desde entornos de programación de PLC discretos (como STEP 7 clásico LAD/FBD o TIA Portal) a SIMATIC PCS 7 observan con frecuencia que el editor CFC no proporciona ni un elemento de menú Deshacer ni un aviso para Guardar cambios al cerrar una ventana de diagrama.

Esta diferencia fundamental en el diseño surge de la arquitectura subyacente de PCS 7:
1. Editores basados en documentos (LAD / FBD / STL):
* Al abrir un bloque (por ejemplo, FC 1 o FB 10), el editor carga el código de bytes del bloque en un búfer temporal de RAM volátil.
* Las ediciones permanecen locales en el búfer hasta que el usuario hace clic en Guardar (Ctrl+S). Si el usuario comete un error, la pila de deshacer en memoria puede revertir los cambios, o cerrar sin guardar descarta las modificaciones.
2. Motor de base de datos basado en transacciones (CFC):
* Los diagramas CFC no existen como documentos de archivo independientes. Son interfaces gráficas de usuario que consultan la base de datos relacional del proyecto de STEP 7 (*.s7p).
* Cuando arrastra un bloque a una hoja, elimina una interconexión o modifica un parámetro, CFC ejecuta inmediatamente una transacción de base de datos atómica. La base de datos asigna números de DB de instancia, actualiza los punteros de referencias cruzadas, recalcula las posiciones de la secuencia de ejecución en los OB cíclicos y actualiza la jerarquía tecnológica.
* Debido a que cada acción se confirma en la base de datos al instante, no hay un búfer de memoria sin confirmar. En consecuencia, cerrar la ventana no confirma nada nuevo; todo ya está guardado en el repositorio de la base de datos. Implementar un botón simple de "Deshacer" requeriría reversiones completas de transacciones de bases de datos relacionales en estructuras de datos de instancias múltiples.

Estrategias de ingeniería para protegerse contra modificaciones accidentales

Debido a que las eliminaciones y alteraciones de parámetros en CFC son inmediatamente permanentes en la base de datos fuera de línea, los ingenieros deben implementar flujos de trabajo de desarrollo disciplinados:

  1. Realizar un archivo de multiproyecto antes de cambios importantes:
    * Antes de modificar enclavamientos complejos o refactorizar la lógica de la planta, seleccione siempre Archivo -> Archivar en SIMATIC Manager.
    * Almacene archivos con marca de tiempo (por ejemplo, Project_20261014_PreRefactor.zip) localmente. Si ocurre una eliminación accidental, el diagrama o el proyecto se pueden recuperar de forma limpia.
  2. Utilizar la lectura retroactiva (Read Back) de diagramas CFC:
    * Antes de modificar diagramas en ejecución, ejecute Diagrama -> Leer de vuelta... (Chart -> Read Back...).
    * Esto captura los parámetros de sintonización en línea actuales (ganancias PID, límites de alarma, preajustes de temporizadores) desde la CPU en línea hacia la base de datos fuera de línea, evitando la pérdida de parámetros durante las compilaciones posteriores.
  3. Copiar diagramas antes de editarlos:
    * Si prueba lógica experimental, duplique el diagrama dentro de la vista de planta (Plant View) (por ejemplo, Reactor1_Temp_Test).
    * Realice las modificaciones en el diagrama duplicado. Una vez verificado, elimine el diagrama obsoleto.
  4. Implementar Tipos de Módulos de Control (CMT) en PCS 7 moderno:
    * En las arquitecturas modernas de PCS 7, gestione la lógica dentro de Tipos de Módulos de Control (CMT) en la biblioteca de datos maestros (Master Data Library).
    * Modifique el tipo maestro y pruébelo de forma aislada antes de usar Sincronizar con CMT para propagar los cambios validados a las instancias activas de la planta.
  5. Evolución del DCS de próxima generación (SIMATIC PCS neo):
    * Los ingenieros que busquen funciones modernas de deshacer basadas en sesiones, ramas de versiones multiusuario y reversión de cambios encontrarán capacidades nativas de deshacer/rehacer totalmente implementadas en la plataforma DCS basada en web de Siemens, SIMATIC PCS neo.

Verificación

  • En SIMATIC CFC, coloque un bloque de prueba (por ejemplo, Pcs7DiIn) y conecte una entrada.
  • Cierre la ventana de CFC sin presionar ningún comando de guardado.
  • Vuelva a abrir el diagrama CFC. Confirme que el bloque y la interconexión están presentes exactamente como se colocaron, verificando la persistencia transaccional instantánea.
  • En SIMATIC Manager, verifique que los números de DB de instancia y las asignaciones de la tabla de símbolos se actualizaron simultáneamente.

Limitaciones y precauciones operativas

  • La eliminación accidental de un bloque en CFC elimina inmediatamente su DB de instancia y sus enlaces de símbolos del programa fuera de línea. Si los cambios se compilan y cargan, las variables de la CPU se reinicializan.
  • Nunca utilice el Administrador de tareas de Windows para cerrar abruptamente s7jcfcap.exe (el editor CFC) en un intento de descartar cambios no deseados; interrumpir el proceso a mitad de la transacción puede corromper la base de datos de STEP 7, lo que requeriría una reorganización lenta de la base de datos.
  • En el modo de ingeniería multiusuario, los cambios confirmados por un ingeniero en un diagrama CFC se vuelven visibles instantáneamente para otros clientes de ingeniería al actualizar el diagrama.

Preguntas frecuentes del ingeniero

  • ¿Puedo restaurar un diagrama CFC eliminado accidentalmente?
    Si se elimina un diagrama, se borra de la base de datos del proyecto. Puede restaurarlo recuperando un archivo de proyecto anterior (*.zip) o copiando el diagrama de un proyecto de respaldo no dañado.
  • ¿Por qué CFC permite eliminar bloques que están en línea?
    CFC modifica la base de datos del proyecto fuera de línea (offline). La CPU en línea continúa ejecutando el programa descargado previamente sin interrupciones hasta que el ingeniero compila y descarga los cambios.
  • ¿Tiene CFC alguna función de copia de seguridad automática?
    No se mantiene un historial automático de versiones de archivos dentro del Step 7 clásico. El control de versiones debe gestionarse externamente a través de SIMATIC Version Trail / Version Cross Manager o mediante el archivo manual.

Referencias técnicas

  • Manual de SIMATIC PCS 7 CFC para S7 / M7 (A5E41356247-AA).
  • SIMATIC PCS 7 Engineering System - Engineering Workflow and Data Management.
  • Entrada del Servicio de Soporte en Línea de la Industria de Siemens ID 109801081: Working Efficiently with CFC in SIMATIC PCS 7.

Artículos relacionados

Etiquetas relacionadas

PCS 7, CFC, Simatic Manager, Programming, Database, Save, Undo, Engineering Workflow

20 respuestas