Renumeración de bloques de función y funciones utilizados en CFCs de SIMATIC PCS 7

La renumeración de bloques de función (FB) y funciones (FC) utilizados activamente en diagramas CFC (Continuous Function Charts) en SIMATIC PCS 7 se ejecuta mediante la utilidad de recableado (Rewire) de SIMATIC Manager, seguida de una actualización del catálogo de tipos de bloques, en lugar de una eliminación y reemplazo manual dentro de los diagramas individuales. La eliminación manual o la modificación directa de los números de bloque dentro de CFCs existentes rompe los enlaces de instancias, borra los parámetros de ingeniería configurados, elimina los atributos de mensajes y corrompe las interconexiones de los diagramas.

Índice de contenidos

Restricciones de la renumeración de bloques e impacto en los CFCs

En la ingeniería de SIMATIC PCS 7 y STEP 7, cada tipo de bloque ubicado dentro de un diagrama CFC hace referencia a una entrada en la carpeta de bloques offline y en la tabla de símbolos del proyecto. Cuando se fusionan múltiples ramas de proyectos o bibliotecas de terceros en un multiproyecto maestro, con frecuencia ocurren colisiones de numeración (por ejemplo, dos bibliotecas de proveedores distintos que utilizan el FB 5 o el FC 100).

Intentar cambiar los números de bloque eliminando el bloque en la carpeta offline e insertándolo nuevamente con un nuevo número destruye todos los bloques de datos (DB) de instancia y la parametrización en los diagramas CFC:
* Bloques de datos de instancia: A cada instancia de bloque CFC se le asigna un DB de instancia gestionado automáticamente. El compilador de CFC asigna estos DBs al número de FB subyacente.
* Interdependencia de la tabla de símbolos: El catálogo de tipos de bloques se basa en la asignación de la tabla de símbolos entre el nombre simbólico (por ejemplo, CTRL_PID) y la dirección absoluta (por ejemplo, FB 5).
* Motor de recableado (Rewire): La función Rewire de STEP 7 actualiza de forma segura las referencias cruzadas en los bloques de código (FBs, FCs, OBs) y la base de datos de CFC, sustituyendo el número de bloque antiguo por el nuevo sin borrar los valores de los parámetros o las interconexiones de señales.

Procedimiento para el recableado y la actualización de tipos de bloques

Siga este procedimiento para renumerar un FB o FC (por ejemplo, cambiar FB 5 a FB 6) en todo un proyecto de PCS 7 que contenga cientos de instancias de CFC.

Requisitos previos

  • Copia de seguridad completa / archivo de proyecto (*.zip) creado a través de SIMATIC Manager (File -> Archive).
  • Todos los editores CFC y SFC cerrados en todas las estaciones de ingeniería.
  • Número de bloque de destino confirmado como no utilizado en la carpeta de bloques offline y dentro del rango de direcciones de la CPU (verifique a través de Options -> Reference Data -> Display -> Free Addresses).

Paso 1: Actualizar la tabla de símbolos

  1. En SIMATIC Manager, navegue hasta la carpeta del programa S7 que contiene el bloque.
  2. Abra la tabla de Símbolos (Symbols).
  3. Localice el nombre simbólico asociado con el bloque que se va a renumerar (por ejemplo, VALVE_CTRL asignado a FB 5).
  4. Actualice la dirección absoluta al nuevo número (por ejemplo, cambie FB 5 a FB 6).
  5. Guarde y cierre la tabla de símbolos.

Paso 2: Ejecutar la utilidad de recableado (Rewire)

  1. En la carpeta de bloques offline, seleccione el menú Options -> Rewire....
  2. En la tabla de diálogo de recableado:
    - En Old Value, introduzca el identificador de bloque actual (por ejemplo, FB 5).
    - En New Value, introduzca el identificador de bloque de destino (por ejemplo, FB 6).
  3. Haga clic en OK para ejecutar.
  4. SIMATIC Manager escanea todo el código de usuario, diagramas e instancias, reorientando las llamadas de FB 5 a FB 6.
  5. Cuando termine, revise el archivo de registro (log) de recableado generado para verificar que no ocurrieron errores de sintaxis.

Paso 3: Renombrar el bloque en la carpeta de bloques offline

  1. Si el archivo de bloque físico en la carpeta de bloques offline aún conserva el nombre antiguo, renombre FB 5 a FB 6 (asegúrese de que el nombre simbólico coincida con la tabla de símbolos actualizada).
  2. Si FB 6 ya existe como un archivo importado con el nuevo código, elimine el FB 5 obsoleto.

Paso 4: Actualizar los tipos de bloques en CFC

  1. Abra cualquier diagrama CFC arbitrario en el proyecto.
  2. Seleccione Options -> Block Types....
  3. En el cuadro de diálogo de tipos de bloques:
    - En la sección Block library or file path, seleccione la carpeta de bloques offline o la biblioteca maestra.
    - Seleccione el bloque renumerado (por ejemplo, FB 6 / VALVE_CTRL).
    - Haga clic en el botón de flecha -> para transferirlo a la Chart folder.
    - Si se le solicita que el tipo de bloque ya existe o necesita actualización, seleccione New Version o Clean up.
  4. Confirme la actualización. El editor CFC actualiza todas las instancias del diagrama, sincronizando las firmas de las interfaces internas y los números de bloque.

Verificación

  • En SIMATIC Manager, seleccione Options -> Reference Data -> Display -> Program Structure. Confirme que todas las llamadas apuntan a FB 6 y que FB 5 ya no aparece.
  • Abra CFC, seleccione Options -> Block Types y confirme que la lista de bloques muestra el número de bloque correcto y el estado de la versión sin errores de consistencia.
  • Ejecute una compilación completa de CFC (Chart -> Compile -> Changes Only o Entire Program) y confirme que la compilación se completa con 0 errores.
  • Verifique si el compilador permite una descarga de Changes Only a la CPU. Tenga en cuenta que la renumeración de FBs fundamentales a menudo requiere una descarga con parada de CPU (CPU Stop) si las asignaciones de memoria de instancia cambian significativamente.

Limitaciones y precauciones operativas

  • Renumerar un bloque de función altera las referencias de distribución de memoria; en la mayoría de los casos, la descarga posterior a la estación de automatización (AS) requiere un CPU STOP.
  • Después de renumerar un FB que contiene etiquetas de control y supervisión de operador (OCM) (como alarmas o consignas), es obligatoria una compilación de OS completa para actualizar los prefijos de las etiquetas de WinCC y los punteros de los bloques de datos sin procesar.
  • Nunca renumerare bloques estándar de la Advanced Process Library (APL) de Siemens (como FB 1823 o FC 360), ya que esto infringe los estándares de la biblioteca y rompe futuras actualizaciones del sistema PCS 7.

Preguntas frecuentes del ingeniero

  • ¿Puedo renumerar un bloque directamente editando las propiedades del bloque CFC?
    No. En el editor CFC, el número de tipo de bloque (FB/FC) es un atributo de solo lectura derivado de la carpeta de bloques offline y de la tabla de símbolos.
  • ¿Por qué CFC informa 'Type conflict' después de renumerar?
    Un conflicto de tipos ocurre si la interfaz (entradas, salidas o parámetros internos) del nuevo número de bloque no coincide con la firma del bloque antiguo, o si el catálogo de tipos de bloques en CFC no se actualizó mediante Options -> Block Types -> Clean up / New Version.
  • ¿Renumerar un FB eliminará mis mensajes de alarma configurados?
    No. Si la renumeración se realiza utilizando la utilidad Rewire y Options -> Block Types, todos los atributos de mensajes configurados, prioridades de alarma e interconexiones se conservan en la base de datos de CFC.
  • ¿Puedo renumerar FCs utilizados en CFC usando el mismo método?
    Sí. Las funciones (FCs) se pueden renumerar utilizando exactamente el mismo procedimiento: actualizar la tabla de símbolos, ejecutar Options -> Rewire y realizar una compilación de CFC.
  • ¿Qué sucede si olvido actualizar la tabla de símbolos antes de recablear?
    Si la tabla de símbolos no se actualiza, la utilidad Rewire puede generar una incoherencia entre la dirección absoluta y el nombre simbólico, lo que hace que el compilador señale definiciones de símbolos faltantes.

Referencias técnicas

  • Siemens Industry Online Support Entry ID 24449830: How do you renumber FBs and FCs in STEP 7 / PCS 7?
  • Manual de Siemens SIMATIC PCS 7 CFC: A5E41356136 - CFC para S7 / Sistema de ingeniería PCS 7.
  • Guías técnicas de Siemens: Ingeniería de multiproyectos y gestión de bibliotecas en PCS 7.

Artículos relacionados

Etiquetas relacionadas

  • PCS 7
  • CFC
  • Step 7
  • Simatic Manager
  • Function Block
  • PLC Programming
  • Industrial Automation
  • Engineering System
20 respuestas