Para evitar que un bloque de control PID_Compact en un autómata SIMATIC S7-1200 pierda sus parámetros de sintonización al descargar el programa desde TIA Portal, es necesario definir los valores del regulador en los valores de inicio (Start values) de la estructura sRet dentro de su bloque de datos de instancia (DB). Adicionalmente, el bloque se puede inicializar directamente en modo automático asignando el valor 3 al parámetro i_Mode (o Mode según la versión de TIA Portal) y ejecutando una transición de modo mediante un flanco en el parámetro ModeActivate.
Tabla de contenido
- Causa técnica: por qué el bloque PID_Compact pierde la optimización
- Requisitos previos
- Método 1: Ajuste de valores de inicio en la estructura sRet del DB de instancia
- Método 2: Resguardo y escritura de parámetros mediante READ_DBL y WRIT_DBL
- Inicialización directa en Modo Automático sin reoptimización
- Verificación
- Limitaciones y precauciones operativas
- Preguntas frecuentes para ingenieros
- Artículos relacionados
- Etiquetas relacionadas
Causa técnica: por qué el bloque PID_Compact pierde la optimización
Durante el proceso de optimización inicial (Pre-tuning / Fine tuning), la instrucción PID_Compact calcula e introduce los coeficientes ganancia proporcional (P), tiempo de integración (I) y tiempo de derivación (D) en los valores actuales (Actual values) de su bloque de datos de instancia.
Cuando un técnico o ingeniero realiza modificaciones en el programa de la CPU (por ejemplo, en TIA Portal V10.5 o V11) y descarga el proyecto completo hacia el PLC S7-1200, la memoria del bloque de datos se reinicializa. Si los valores de inicio (Start values) de la estructura del DB conservan los valores predeterminados de fábrica (0.0 o parámetros no sintonizados), los valores actuales calculados durante la optimización se sobrescriben. Como consecuencia, el lazo de control pierde la configuración y exige una nueva secuencia de optimización para volver a operar en modo automático.
Requisitos previos
- Controlador: PLC Siemens SIMATIC S7-1200 (por ejemplo, CPU 1214C DC/DC/DC).
- Software de ingeniería: TIA Portal (STEP 7 Basic o Professional V10.5, V11 o superior).
- Instrucción: Lazo de control de proceso configurado con la función
PID_Compact. - Datos del proceso: Parámetros PID conocidos u obtenidos mediante una optimización previa válida.
Método 1: Ajuste de valores de inicio en la estructura sRet del DB de instancia
Se utiliza mejor cuando: Se conocen los parámetros de sintonización (P,I,D) del lazo de control (por ejemplo, control de nivel en un tanque) y se desea que persistan permanentemente ante cualquier descarga de bloques hacia la CPU.
Procedimiento
- Abra el proyecto en TIA Portal y navegue en el árbol del proyecto hacia la carpeta del programa de la CPU.
- Localice y abra el bloque de datos de instancia (
DB) asignado a la instrucciónPID_Compact. - Despliegue la estructura interna de variables etiquetada como
sRet. -
Ubique las variables correspondientes a la sintonización del regulador:
sRet.r_Gain(Ganancia proporcional / Kp)sRet.r_Ti(Tiempo de integración / Ti en segundos)sRet.r_Td(Tiempo de derivación / Td en segundos)
5. Introduzca los valores obtenidos en la optimización previa directamente en la columna Valor de inicio (Start value) de cada variable.
6. Guarde y compile el bloque de datos de instancia.
7. Descargue el proyecto modificado a la CPU S7-1200.
Resultado esperado: Al reiniciar el PLC o descargar bloques, el DB de instancia cargará los valores definidos en la columna de inicio hacia la estructura de trabajo, conservando la sintonización sin requerir una nueva optimización.
Método 2: Resguardo y escritura de parámetros mediante READ_DBL y WRIT_DBL
Se utiliza mejor cuando: Los parámetros de sintonización se optimizan dinámicamente en campo y se requiere guardarlos automáticamente en la memoria de carga (Load Memory / Flash) de la CPU sin conectarse con el software TIA Portal.
Procedimiento
- Cree un bloque de datos global (
DB_PID_Backup) con una estructura equivalente a los parámetros de sintonización desRet. -
Para guardar los parámetros optimizados desde la memoria de trabajo (RAM) hacia la memoria de carga (Flash):
- Llame a la función de sistema
WRIT_DBLen el programa de usuario. - Asigne la estructura
sRetdel DB de instancia en el parámetroSRCBLK(origen). -
Asigne el bloque de datos global almacenado en la memoria de carga en el parámetro
DSTBLK(destino).
3. Para restaurar los parámetros desde la memoria de carga hacia la memoria de trabajo tras una reinicialización: -
Llame a la función de sistema
READ_DBL. - Asigne el DB global de resguardo en
SRCBLKy la estructurasRetdel DB de instancia enDSTBLK.
4. Acepte la ejecución de las funciones mediante una marca de activación o instrucción de control en el programa de la CPU.
- Llame a la función de sistema
Resultado esperado: La CPU lee y escribe los datos de sintonización entre la memoria de trabajo no volátil y la memoria de carga, protegiendo los coeficientes PID ante pérdidas de retentividad o transferencias de programa.
Inicialización directa en Modo Automático sin reoptimización
Para asegurar que el bloque de control entre en funcionamiento inmediatamente después de energizar la planta o descargar el programa, configure la secuencia de inicialización del PID_Compact:
-
En el programa de usuario (por ejemplo, en el bloque de organización de arranque
OB100o en el primer ciclo delOB1), configure el valor del modo operativo:- Asigne el valor
3al parámetroi_Mode(oModesegún la versión de la instrucción) del DB de instancia. El valor3corresponde al Modo Automático.
2. Active la entrada de cambio de modo enviando un flanco ascendente (0→1) al parámetroModeActivate(o mediante el bit de inicialización de la instrucción).
3. Verifique que la variable de estadosRet.i_Modeo la salida de estado del bloque confirme la transición al valor3.
- Asigne el valor
Verificación
El procedimiento para la retención e inicialización del bloque PID_Compact se ha realizado correctamente cuando:
- La CPU S7-1200 completa la descarga de bloques y pasa a modo RUN sin activar alarmas de error en el lazo de control.
- Las variables de trabajo
sRet.r_Gain,sRet.r_TiysRet.r_Tddentro del DB de instancia conservan valores distintos de cero o coincidentes con la sintonización guardada. - El bloque conmuta su estado de operación directamente a Modo Automático (
i_Mode = 3) sin requerir la ejecución de los comandos de preoptimización o finotuning desde el panel de control de TIA Portal.
Limitaciones y precauciones operativas
- Reinicialización completa del DB: Si se realiza una descarga con reinicialización completa del bloque de datos de instancia y la columna Start value conserva los valores de fábrica (0.0), el regulador PID perderá toda la sintonización previa.
- Transición de modo requerida: Asignar únicamente el valor
3a la variablei_Modeno cambia el estado del regulador si no se genera la señal de activación mediante flanco enModeActivate. - Escribir en la memoria de carga: La ejecución de la instrucción
WRIT_DBLescribe datos en la memoria Flash del S7-1200. No ejecute esta función cíclicamente en cada ciclo de Scan para evitar el desgaste prematuro de la memoria no volátil de la CPU.
Preguntas frecuentes
¿Por qué el bloque PID_Compact exige una nueva optimización tras cargar el programa si no modifiqué el OB del PID?
Porque al descargar cambios globales en el proyecto o estructurar nuevamente el programa, TIA Portal puede restablecer los datos de trabajo de los DB de instancia a sus valores de inicio (Start values). Si estos valores iniciales no fueron actualizados con los coeficientes sintonizados, el algoritmo detecta parámetros nulos e invalida el modo automático.
¿Se pueden respaldar los parámetros PID desde un panel HMI?
Sí. Los parámetros de la estructura sRet (r_Gain, r_Ti, r_Td) pueden vincularse a una receta o variables de proceso en un panel HMI. Al restaurar la receta desde la pantalla, el operador puede sobrescribir las variables del DB de instancia y reactivar el modo automático sin abrir TIA Portal.
¿Cuál es la diferencia entre el parámetro i_Mode = 3 y i_Mode = 4?
En la instrucción PID_Compact, el modo 3 representa la operación en Modo Automático (donde el bloque calcula la salida en función del Setpoint y la variable de proceso). El modo 4 corresponde al Modo Manual, en el cual la salida del regulador se fija directamente por la variable asignada a la consigna manual.
Artículos relacionados
- Cómo configurar y optimizar un lazo PID_Compact en SIMATIC S7-1200 con TIA Portal
- Uso de las instrucciones READ_DBL y WRIT_DBL para retención de datos en S7-1200
- Diferencias en la retención de variables entre memoria de trabajo y memoria de carga en Siemens S7-1200
Etiquetas relacionadas
Code: C316