0% encontró este documento útil (0 votos)
231 vistas541 páginas

Simatic: Regulación PID

Cargado por

Neubox
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
231 vistas541 páginas

Simatic: Regulación PID

Cargado por

Neubox
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Edición 11/2022

MANUAL DE FUNCIONES

SIMATIC
S7-1200, S7-1500
Regulación PID

[Link]
Introducción
1

Consignas de seguridad
2

SIMATIC Principios básicos de la


regulación
3
S7-1200, S7-1500
Regulación PID Configuración de un
regulador por software
4

Manual de funciones
Utilizar PID_Compact
5

Utilizar PID_3Step
6

Utilizar PID_Temp
7

Utilizar funciones básicas PID


8

Funciones auxiliares
9

Instrucciones
10

11/2022
A5E35300231-AF
Notas jurídicas
Filosofía en la señalización de advertencias y peligros
Este manual contiene las informaciones necesarias para la seguridad personal así como para la prevención de
daños materiales. Las informaciones para su seguridad personal están resaltadas con un triángulo de advertencia;
las informaciones para evitar únicamente daños materiales no llevan dicho triángulo. De acuerdo al grado de
peligro las consignas se representan, de mayor a menor peligro, como sigue.

PELIGRO
Significa que si no se adoptan las medidas preventivas adecuadas se producirá la muerte o bien lesiones
corporales graves.

ADVERTENCIA
Significa que si no se adoptan las medidas preventivas adecuadas puede producirse la muerte o bien lesiones
corporales graves.

PRECAUCIóN
Significa que si no se adoptan las medidas preventivas adecuadas pueden producirse lesiones corporales.

ATENCIóN
Significa que si no se adoptan las medidas preventivas adecuadas pueden producirse daños materiales.
Si se dan varios niveles de peligro se usa siempre la consigna de seguridad más estricta en cada caso. Si en una
consigna de seguridad con triángulo de advertencia de alarma de posibles daños personales, la misma consigna
puede contener también una advertencia sobre posibles daños materiales.
Personal cualificado
El producto/sistema tratado en esta documentación sólo deberá ser manejado o manipulado por personal
cualificado para la tarea encomendada y observando lo indicado en la documentación correspondiente a la
misma, particularmente las consignas de seguridad y advertencias en ella incluidas. Debido a su formación y
experiencia, el personal cualificado está en condiciones de reconocer riesgos resultantes del manejo o
manipulación de dichos productos/sistemas y de evitar posibles peligros.
Uso previsto de los productos de Siemens
Considere lo siguiente:

ADVERTENCIA
Los productos de Siemens sólo deberán usarse para los casos de aplicación previstos en el catálogo y la
documentación técnica asociada. De usarse productos y componentes de terceros, éstos deberán haber sido
recomendados u homologados por Siemens. El funcionamiento correcto y seguro de los productos exige que su
transporte, almacenamiento, instalación, montaje, manejo y mantenimiento hayan sido realizados de forma
correcta. Es preciso respetar las condiciones ambientales permitidas. También deberán seguirse las indicaciones y
advertencias que figuran en la documentación asociada.

Marcas registradas
Todos los nombres marcados con ® son marcas registradas de Siemens AG. Los restantes nombres y designaciones
contenidos en el presente documento pueden ser marcas registradas cuya utilización por terceros para sus propios
fines puede violar los derechos de sus titulares.
Exención de responsabilidad
Hemos comprobado la concordancia del contenido de esta publicación con el hardware y el software descritos. Sin
embargo, como es imposible excluir desviaciones, no podemos hacernos responsable de la plena concordancia. El
contenido de esta publicación se revisa periódicamente; si es necesario, las posibles correcciones se incluyen en la
siguiente edición.

Siemens AG A5E35300231-AF Copyright © Siemens AG 2019 - 2022.


Digital Industries Ⓟ 10/2022 Sujeto a cambios sin previo aviso Reservados todos los derechos
Postfach 48 48
90026 NÜRNBERG
ALEMANIA
Índice

1 Introducción........................................................................................................................................ 13
1.1 Finalidad, convenciones e información complementaria.................................................... 13
1.2 Guía a través de la documentación Manuales de funciones................................................ 14
1.2.1 Clases de información Manuales de funciones................................................................... 14
1.2.2 Herramientas básicas........................................................................................................ 16
1.2.3 Documentación técnica de SIMATIC.................................................................................. 18

2 Consignas de seguridad...................................................................................................................... 20
2.1 Información de seguridad................................................................................................. 20

3 Principios básicos de la regulación..................................................................................................... 21


3.1 Lazo de regulación y elementos finales de control............................................................. 21
3.2 Sistemas regulados........................................................................................................... 22
3.3 Valores característicos del sistema regulado...................................................................... 24
3.4 Regulador de impulsos...................................................................................................... 26
3.5 Respuesta de regulación y a perturbaciones...................................................................... 30
3.6 Respuesta de regulación con diferentes estructuras de realimentación............................... 31
3.7 Elección de la estructura del regulador con un sistema regulado definido.......................... 38
3.8 Ajuste de los parámetros PID............................................................................................. 39

4 Configuración de un regulador por software..................................................................................... 40


4.1 Vista general de los reguladores de software..................................................................... 40
4.2 Pasos para la configuración de un regulador por software.................................................. 41
4.3 Agregar objetos tecnológicos............................................................................................ 42
4.4 Configurar objetos tecnológicos........................................................................................ 43
4.5 Llamar la instrucción en el programa de usuario................................................................ 44
4.6 Cargar objetos tecnológicos en el dispositivo..................................................................... 45
4.7 Poner en marcha el regulador de software......................................................................... 46
4.8 Guardar los parámetros PID optimizados en el proyecto..................................................... 46
4.9 Trabajo con objetos multiinstancia.................................................................................... 47
4.10 Comparar valores.............................................................................................................. 49
4.10.1 Visualización de comparación y condiciones...................................................................... 49
4.10.2 Comparar valores.............................................................................................................. 50
4.11 Vista de parámetros.......................................................................................................... 52
4.11.1 Introducción a la vista de parámetros................................................................................ 52

Regulación PID
4 Manual de funciones, 11/2022, A5E35300231-AF
Índice

4.11.2 Estructura de la vista de parámetros.................................................................................. 53


[Link] Barra de herramientas....................................................................................................... 53
[Link] Navegación...................................................................................................................... 54
[Link] Tabla de parámetros......................................................................................................... 55
4.11.3 Abrir la vista de parámetros............................................................................................... 56
4.11.4 Ajuste predeterminado de la vista de parámetros.............................................................. 57
4.11.5 Trabajar con la vista de parámetros................................................................................... 59
[Link] Sinopsis............................................................................................................................ 59
[Link] Filtrar la tabla de parámetros............................................................................................. 59
[Link] Ordenar la tabla de parámetros......................................................................................... 60
[Link] Aplicar datos de parámetros en otros editores................................................................... 61
[Link] Mostrar errores................................................................................................................. 61
[Link] Editar valores de arranque en el proyecto.......................................................................... 61
[Link] Estado de la configuración (offline)................................................................................... 63
[Link] Observar online los valores en la vista de parámetros........................................................ 63
[Link] Cambio del formato de visualización del valor................................................................... 64
[Link] Crear instantánea de los valores de observación................................................................ 65
[Link] Forzar valores................................................................................................................... 66
[Link] Comparar valores.............................................................................................................. 67
[Link] Aplicar valores como valores de arranque desde el programa online.................................. 68
[Link] Inicializar los valores de ajuste en el programa online........................................................ 69
4.12 Mostrar el DB de instancia de un objeto tecnológico.......................................................... 70

5 Utilizar PID_Compact.......................................................................................................................... 71
5.1 Objeto tecnológico PID_Compact...................................................................................... 71
5.2 PID_Compact V2............................................................................................................... 72
5.2.1 Configurar PID_Compact V2.............................................................................................. 72
[Link] Ajustes básicos V2............................................................................................................ 72
[Link] Ajustes de valor real V2..................................................................................................... 74
[Link] Ajustes avanzados V2........................................................................................................ 75
5.2.2 Poner en servicio PID_Compact V2.................................................................................... 83
[Link] Optimización inicial V2..................................................................................................... 83
[Link] Optimización fina V2......................................................................................................... 84
[Link] Modo de operación "Modo manual" V2.............................................................................. 86
5.2.3 Regulación de transición con PID_Compact V2................................................................... 87
5.2.4 Simulación de PID_Compact V2 con PLCSIM...................................................................... 90
5.3 PID_Compact V1............................................................................................................... 91
5.3.1 Configurar PID_Compact V1.............................................................................................. 91
[Link] Ajustes básicos V1............................................................................................................ 91
[Link] Ajuste de valor real V1...................................................................................................... 93
[Link] Ajustes avanzados V1........................................................................................................ 95
5.3.2 Poner en servicio PID_Compact V1.................................................................................... 101
[Link] Puesta en servicio V1........................................................................................................ 101
[Link] Optimización inicial V1..................................................................................................... 102
[Link] Optimización fina V1......................................................................................................... 103
[Link] Modo de operación "Modo manual" V1.............................................................................. 105
5.3.3 Simulación de PID_Compact V1 con PLCSIM...................................................................... 106

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 5
Índice

6 Utilizar PID_3Step............................................................................................................................... 107


6.1 Objeto tecnológico PID_3Step........................................................................................... 107
6.2 PID_3Step V2.................................................................................................................... 108
6.2.1 Configuración de PID_3Step V2......................................................................................... 108
[Link] Ajustes básicos V2............................................................................................................ 108
[Link] Ajustes de valor real V2..................................................................................................... 112
[Link] Ajustes de actuador V2..................................................................................................... 112
[Link] Ajustes avanzados V2........................................................................................................ 115
6.2.2 Puesta en servicio de PID_3Step V2................................................................................... 119
[Link] Optimización inicial V2..................................................................................................... 119
[Link] Optimización fina V2......................................................................................................... 120
[Link] Realizar la puesta en servicio con parámetros PID manuales V2.......................................... 122
[Link] Medir el tiempo de posicionamiento del motor V2............................................................. 122
6.2.3 Simulación de PID_3Step V2 con PLCSIM........................................................................... 125
6.3 PID_3Step V1.................................................................................................................... 125
6.3.1 Configuración de PID_3Step V1......................................................................................... 125
[Link] Ajustes básicos V1............................................................................................................ 125
[Link] Ajuste de valor real V1...................................................................................................... 129
[Link] Ajuste de actuador V1....................................................................................................... 130
[Link] Ajustes avanzados V1........................................................................................................ 132
6.3.2 Puesta en servicio de PID_3Step V1................................................................................... 136
[Link] Puesta en servicio V1........................................................................................................ 136
[Link] Optimización inicial V1..................................................................................................... 136
[Link] Optimización fina V1......................................................................................................... 137
[Link] Realizar la puesta en servicio con parámetros PID manuales V1.......................................... 139
[Link] Medir el tiempo de posicionamiento del motor V1............................................................. 139
6.3.3 Simulación de PID_3Step V1 con PLCSIM........................................................................... 142

7 Utilizar PID_Temp................................................................................................................................ 143


7.1 Objeto tecnológico PID_Temp........................................................................................... 143
7.2 Configurar PID_Temp........................................................................................................ 144
7.2.1 Ajustes básicos................................................................................................................. 144
[Link] Introducción..................................................................................................................... 144
[Link] Tipo de regulación............................................................................................................ 144
[Link] Consigna.......................................................................................................................... 145
[Link] Valor real.......................................................................................................................... 145
[Link] Valor de salida para calefacción y refrigeración.................................................................. 146
[Link] Cascada............................................................................................................................ 147
7.2.2 Ajustes del valor real......................................................................................................... 149
[Link] Límites del valor real......................................................................................................... 149
[Link] Escalar valor real............................................................................................................... 149
7.2.3 Ajustes de salida............................................................................................................... 149
[Link] Ajustes básicos salida........................................................................................................ 149
[Link] Límites y escalado del valor de salida................................................................................. 152
7.2.4 Ajustes avanzados............................................................................................................. 155
[Link] Monitorización de valor real.............................................................................................. 155
[Link] Limitaciones PWM............................................................................................................. 156

Regulación PID
6 Manual de funciones, 11/2022, A5E35300231-AF
Índice

[Link] Parámetros PID................................................................................................................. 158


7.3 Puesta en servicio de PID_Temp........................................................................................ 165
7.3.1 Puesta en servicio............................................................................................................. 165
7.3.2 Optimización inicial.......................................................................................................... 165
7.3.3 Optimización fina............................................................................................................. 168
7.3.4 Modo de operación "Modo manual"................................................................................... 171
7.3.5 Consigna sustitutiva.......................................................................................................... 172
7.3.6 Puesta en servicio en cascada............................................................................................ 173
7.4 Regulación en cascada con PID_Temp............................................................................... 173
7.4.1 Introducción..................................................................................................................... 173
7.4.2 Creación del programa...................................................................................................... 175
7.4.3 Configuración................................................................................................................... 176
7.4.4 Puesta en servicio............................................................................................................. 177
7.4.5 Consigna sustitutiva.......................................................................................................... 178
7.4.6 Modos de operación y reacción a fallo............................................................................... 179
7.5 Regulación multizona con PID_Temp................................................................................. 179
7.6 Regulación de transición con PID_Temp............................................................................. 182
7.7 Simulación de PID_Temp con PLCSIM................................................................................ 186

8 Utilizar funciones básicas PID............................................................................................................. 187


8.1 CONT_C............................................................................................................................ 187
8.1.1 Objeto tecnológico CONT_C.............................................................................................. 187
8.1.2 Configurar el error de regulación CONT_C......................................................................... 187
8.1.3 Configurar el algoritmo de regulación CONT_C.................................................................. 188
8.1.4 Configurar la variable manipulada CONT_C....................................................................... 189
8.1.5 Programar regulador de impulsos...................................................................................... 190
8.1.6 Poner en marcha CONT_C................................................................................................. 190
8.2 CONT_S............................................................................................................................ 191
8.2.1 Objeto tecnológico CONT_S.............................................................................................. 191
8.2.2 Configurar el error de regulación CONT_S.......................................................................... 191
8.2.3 Configurar el algoritmo de regulación CONT_S.................................................................. 192
8.2.4 Configurar la variable manipulada CONT_S........................................................................ 192
8.2.5 Poner en marcha CONT_S................................................................................................. 193
8.3 TCONT_CP........................................................................................................................ 193
8.3.1 Objeto tecnológico TCONT_CP.......................................................................................... 193
8.3.2 Configurar TCONT_CP....................................................................................................... 194
[Link] Error de regulación........................................................................................................... 194
[Link] Algoritmo de regulación.................................................................................................... 195
[Link] Variable manipulada del regulador continuo..................................................................... 196
[Link] Variable manipulada del regulador de impulsos................................................................. 197
8.3.3 Poner en marcha TCONT_CP.............................................................................................. 199
[Link] Optimización de TCONT_CP............................................................................................... 199
[Link] Condiciones para una optimización................................................................................... 201
[Link] Posibilidades de la optimización........................................................................................ 204
[Link] Resultado de la optimización............................................................................................. 206
[Link] Optimización paralela de canales del regulador................................................................. 207

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 7
Índice

[Link] Síntomas de error y soluciones posibles............................................................................. 208


[Link] Realizar una optimización inicial........................................................................................ 211
[Link] Realizar optimización fina................................................................................................. 211
[Link] Cancelación de la optimización inicial o fina...................................................................... 212
[Link] Optimización fina manual en modo de regulación............................................................. 212
[Link] Realizar una optimización fina manual.............................................................................. 213
8.4 TCONT_S.......................................................................................................................... 214
8.4.1 Objeto tecnológico TCONT_S............................................................................................ 214
8.4.2 Configurar el error de regulación de TCONT_S................................................................... 215
8.4.3 Configurar el algoritmo de regulación TCONT_S................................................................ 216
8.4.4 Configurar la variable manipulada TCONT_S...................................................................... 216
8.4.5 Poner en marcha TCONT_S................................................................................................ 217

9 Funciones auxiliares........................................................................................................................... 218


9.1 Polyline............................................................................................................................ 218
9.2 SplitRange........................................................................................................................ 218
9.3 RampFunction.................................................................................................................. 219
9.4 RampSoak........................................................................................................................ 219
9.5 Filter_PT1......................................................................................................................... 220
9.6 Filter_PT2......................................................................................................................... 220
9.7 Filter_DT1......................................................................................................................... 221

10 Instrucciones....................................................................................................................................... 222
10.1 PID_Compact.................................................................................................................... 222
10.1.1 Novedades PID_Compact.................................................................................................. 222
10.1.2 Compatibilidad con CPU y FW............................................................................................ 225
10.1.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_Compact V2.x.................... 225
10.1.4 PID_Compact V2............................................................................................................... 226
[Link] Descripción PID_Compact V2............................................................................................. 226
[Link] Funcionamiento PID_Compact V2..................................................................................... 230
[Link] Parámetros de entrada PID_Compact V2............................................................................ 232
[Link] Parámetros de salida PID_Compact V2............................................................................... 233
[Link] Parámetros de entrada/salida PID_Compact V2.................................................................. 234
[Link] Variables estáticas de PID_Compact V2.............................................................................. 235
[Link] Modificaciones de la interfaz PID_Compact V2................................................................... 242
[Link] Parámetros State y Mode V2............................................................................................. 244
[Link] Parámetro ErrorBits V2...................................................................................................... 247
[Link] Variable ActivateRecoverMode V2..................................................................................... 249
[Link] Variable Warning V2......................................................................................................... 251
[Link] Variable IntegralResetMode V2.......................................................................................... 251
[Link] Programa de ejemplo para PID_Compact........................................................................... 253
10.1.5 PID_Compact V1............................................................................................................... 259
[Link] Descripción PID_Compact V1............................................................................................. 259
[Link] Parámetros de entrada PID_Compact V1............................................................................ 262
[Link] Parámetros de salida PID_Compact V1............................................................................... 263
[Link] Variables estáticas PID_Compact V1.................................................................................. 264
[Link] Parámetros State y sRet.i_Mode V1................................................................................... 268
[Link] Parámetro Error V1........................................................................................................... 271

Regulación PID
8 Manual de funciones, 11/2022, A5E35300231-AF
Índice

[Link] Parámetro Reset V1........................................................................................................... 272


[Link] Variable sd_warning V1.................................................................................................... 273
[Link] Variable i_Event_SUT V1................................................................................................... 274
[Link] Variable i_Event_TIR V1..................................................................................................... 274
10.2 PID_3Step......................................................................................................................... 275
10.2.1 Novedades PID_3Step....................................................................................................... 275
10.2.2 Compatibilidad con CPU y FW ........................................................................................... 276
10.2.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_3Step V2.x......................... 277
10.2.4 PID_3Step V2.................................................................................................................... 278
[Link] Descripción PID_3Step V2................................................................................................. 278
[Link] Funcionamiento PID_3Step V2.......................................................................................... 284
[Link] Modificaciones de la interfaz PID_3Step V2........................................................................ 287
[Link] Parámetros de entrada PID_3Step V2................................................................................. 287
[Link] Parámetros de salida PID_3Step V2.................................................................................... 289
[Link] Parámetros de entrada/salida PID_3Step V2....................................................................... 291
[Link] Variables estáticas PID_3Step V2....................................................................................... 291
[Link] Parámetros State y Mode V2............................................................................................. 300
[Link] Parámetro ErrorBits V2...................................................................................................... 305
[Link] Variable ActivateRecoverMode V2..................................................................................... 308
[Link] Variable Warning V2......................................................................................................... 310
10.2.5 PID_3Step V1.................................................................................................................... 311
[Link] Descripción PID_3Step V1................................................................................................. 311
[Link] Funcionamiento PID_3Step V1.......................................................................................... 315
[Link] Parámetros de entrada PID_3Step V1................................................................................. 318
[Link] Parámetros de salida PID_3Step V1.................................................................................... 320
[Link] Variables estáticas PID_3Step V1....................................................................................... 321
[Link] Parámetros State y [Link] V1................................................................................... 329
[Link] Parámetro ErrorBits V1...................................................................................................... 334
[Link] Parámetro Reset V1........................................................................................................... 336
[Link] Variable ActivateRecoverMode V1..................................................................................... 336
[Link] Variable Warning V1......................................................................................................... 338
[Link] Variable [Link] V1....................................................................................................... 339
[Link] Variable [Link] V1......................................................................................................... 339
10.3 PID_Temp......................................................................................................................... 340
10.3.1 Novedades PID_Temp....................................................................................................... 340
10.3.2 Compatibilidad con CPU y FW............................................................................................ 340
10.3.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_Temp V1............................ 340
10.3.4 PID_Temp......................................................................................................................... 341
[Link] Descripción PID_Temp....................................................................................................... 341
[Link] Funcionamiento PID_Temp............................................................................................... 345
[Link] Parámetros de entrada PID_Temp...................................................................................... 350
[Link] Parámetro de salida PID_Temp.......................................................................................... 352
[Link] Parámetro de entrada/salida PID_Temp.............................................................................. 353
[Link] Variables estáticas PID_Temp............................................................................................ 355
[Link] Parámetros State y Mode PID_Temp.................................................................................. 381
[Link] Parámetro ErrorBits PID_Temp........................................................................................... 387
[Link] Variable ActivateRecoverMode PID_Temp.......................................................................... 390
[Link] Variable Warning PID_Temp.............................................................................................. 392
[Link] Variable PwmPeriode........................................................................................................ 393
[Link] Variable IntegralResetMode.............................................................................................. 395

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 9
Índice

10.4 Funciones básicas de PID................................................................................................... 397


10.4.1 CONT_C............................................................................................................................ 397
[Link] Descripción de CONT_C..................................................................................................... 397
[Link] Funcionamiento de CONT_C............................................................................................. 397
[Link] Diagrama de bloques de CONT_C...................................................................................... 399
[Link] Parámetros de entrada de CONT_C.................................................................................... 400
[Link] Parámetros de salida de CONT_C....................................................................................... 401
10.4.2 CONT_S............................................................................................................................ 402
[Link] Descripción de CONT_S..................................................................................................... 402
[Link] Funcionamiento de CONT_S.............................................................................................. 403
[Link] Diagrama de bloques de CONT_S...................................................................................... 404
[Link] Parámetros de entrada de CONT_S.................................................................................... 405
[Link] Parámetros de salida de CONT_S....................................................................................... 406
10.4.3 PULSEGEN........................................................................................................................ 406
[Link] Descripción de PULSEGEN................................................................................................. 406
[Link] Funcionamiento de PULSEGEN.......................................................................................... 408
[Link] Modos de operación de PULSEGEN.................................................................................... 411
[Link] Regulación de tres puntos................................................................................................. 411
[Link] Regulación de dos puntos................................................................................................. 413
[Link] Parámetros de entrada de PULSEGEN................................................................................ 414
[Link] Parámetros de salida de PULSEGEN................................................................................... 415
10.4.4 TCONT_CP........................................................................................................................ 416
[Link] Descripción de TCONT_CP................................................................................................. 416
[Link] Funcionamiento de TCONT_CP.......................................................................................... 416
[Link] Funcionamiento del generador de impulsos...................................................................... 426
[Link] Diagrama de bloques TCONT_CP....................................................................................... 429
[Link] Parámetros de entrada de TCONT_CP................................................................................ 430
[Link] Parámetros de salida de TCONT_CP................................................................................... 431
[Link] Parámetros de entrada/salida de TCONT_CP....................................................................... 431
[Link] Variables estáticas de TCONT_CP....................................................................................... 432
[Link] Parámetro STATUS_H........................................................................................................ 437
[Link] Parámetro STATUS_D........................................................................................................ 438
10.4.5 TCONT_S.......................................................................................................................... 438
[Link] Descripción de TCONT_S................................................................................................... 438
[Link] Funcionamiento de TCONT_S............................................................................................ 439
[Link] Diagrama de bloques de TCONT_S..................................................................................... 443
[Link] Parámetros de entrada de TCONT_S.................................................................................. 444
[Link] Parámetros de salida de TCONT_S..................................................................................... 445
[Link] Parámetros de entrada/salida de TCONT_S......................................................................... 445
[Link] Variables estáticas de TCONT_S......................................................................................... 446
10.4.6 Funciones de sistema integradas....................................................................................... 447
[Link] CONT_C_SF....................................................................................................................... 447
[Link] CONT_S_SF....................................................................................................................... 447
[Link] PULSEGEN_SF................................................................................................................... 448
10.5 Polyline............................................................................................................................ 448
10.5.1 Compatibilidad con CPU y FW............................................................................................ 448
10.5.2 Descripción de Polyline..................................................................................................... 448
10.5.3 Funcionamiento de Polyline.............................................................................................. 451
10.5.4 Parámetros de entrada de Polyline.................................................................................... 454
10.5.5 Parámetros de salida de Polyline........................................................................................ 455
10.5.6 Variables estáticas de Polyline........................................................................................... 455

Regulación PID
10 Manual de funciones, 11/2022, A5E35300231-AF
Índice

10.5.7 Parámetro ErrorBits........................................................................................................... 456


10.6 SplitRange........................................................................................................................ 459
10.6.1 Compatibilidad con CPU y FW............................................................................................ 459
10.6.2 Descripción de SplitRange................................................................................................. 460
10.6.3 Parámetros de entrada SplitRange..................................................................................... 462
10.6.4 Parámetros de salida SplitRange........................................................................................ 463
10.6.5 Variables estáticas SplitRange........................................................................................... 463
10.6.6 Parámetro ErrorBits........................................................................................................... 463
10.7 RampFunction.................................................................................................................. 465
10.7.1 Compatibilidad con CPU y FW............................................................................................ 465
10.7.2 Descripción de RampFunction........................................................................................... 465
10.7.3 Funcionamiento de la RampFunction................................................................................ 470
10.7.4 Parámetros de entrada RampFunction............................................................................... 473
10.7.5 Parámetros de salida RampFunction.................................................................................. 474
10.7.6 Variables estáticas RampFunction...................................................................................... 474
10.7.7 Parámetro ErrorBits........................................................................................................... 475
10.8 RampSoak........................................................................................................................ 479
10.8.1 Compatibilidad con CPU y FW............................................................................................ 479
10.8.2 Descripción de RampSoak................................................................................................. 479
10.8.3 Funcionamiento de RampSoak.......................................................................................... 481
[Link] Configuración y comprobación de los datos de perfil......................................................... 481
[Link] Ejecución del perfil........................................................................................................... 483
[Link] Configurar el comportamiento de arranque: Variable estática StartMode........................... 488
[Link] Configurar el comportamiento de parada: Variable estática StopMode............................... 491
[Link] Medición del tiempo de ciclo............................................................................................. 493
[Link] Comportamiento de habilitación EN/ENO.......................................................................... 494
10.8.4 Parámetros de entrada de RampSoak................................................................................ 494
10.8.5 Parámetros de salida de RampSoak.................................................................................... 495
10.8.6 Parámetros de entrada/salida de RampSoak....................................................................... 496
10.8.7 Variables estáticas de RampSoak....................................................................................... 496
10.8.8 Parámetro ErrorBits........................................................................................................... 497
10.9 Filter_PT1......................................................................................................................... 501
10.9.1 Compatibilidad con CPU y FW............................................................................................ 501
10.9.2 Descripción Filter_PT1....................................................................................................... 502
10.9.3 Funcionamiento de Filter_PT1........................................................................................... 508
10.9.4 Parámetros de entrada Filter_PT1...................................................................................... 509
10.9.5 Parámetros de salida Filter_PT1......................................................................................... 510
10.9.6 Variables estáticas Filter_PT1............................................................................................. 510
10.9.7 Parámetro ErrorBits........................................................................................................... 510
10.10 Filter_PT2......................................................................................................................... 514
10.10.1 Compatibilidad con CPU y FW............................................................................................ 514
10.10.2 Descripción Filter_PT2....................................................................................................... 514
10.10.3 Funcionamiento de Filter_PT2........................................................................................... 521
10.10.4 Parámetros de entrada Filter_PT2...................................................................................... 522
10.10.5 Parámetros de salida Filter_PT2......................................................................................... 523
10.10.6 Variables estáticas Filter_PT2............................................................................................. 523
10.10.7 Parámetro ErrorBits........................................................................................................... 523
10.11 Filter_DT1......................................................................................................................... 527
10.11.1 Compatibilidad con CPU y FW............................................................................................ 527

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 11
Índice

10.11.2 Descripción Filter_DT1...................................................................................................... 527


10.11.3 Funcionamiento de Filter_DT1.......................................................................................... 534
10.11.4 Parámetros de entrada Filter_DT1..................................................................................... 535
10.11.5 Parámetros de salida Filter_DT1........................................................................................ 536
10.11.6 Variables estáticas Filter_DT1............................................................................................ 536
10.11.7 Parámetro ErrorBits........................................................................................................... 536

Índice alfabético................................................................................................................................. 540

Regulación PID
12 Manual de funciones, 11/2022, A5E35300231-AF
Introducción 1
1.1 Finalidad, convenciones e información complementaria

Finalidad de la documentación
Esta documentación le ayudará en la configuración y programación de tareas de regulación
con los sistemas de automatización S7-1200 y S7-1500.

Conocimientos básicos necesarios


Para comprender la documentación se requieren los siguientes conocimientos:
• Conocimientos generales de automatización
• Conocimientos del sistema de automatización industrial SIMATIC
• Conocimientos del manejo de STEP 7 (TIA Portal)

Ámbito de validez de la documentación


Esta documentación es válida para el uso de reguladores de SW en las CPU de los sistemas de
automatización S7-1200 y S7-1500 junto con STEP 7 (TIA Portal). Para el uso de S7-300 y
S7-400 con STEP 7 (TIA Portal) hay disponibles otros reguladores de SW que no son objeto de
esta documentación. El capítulo Vista general de los reguladores de software (Página 40)
ofrece una vista general de todos los reguladores de SW de STEP 7 (TIA Portal) y de sus
posibilidades de aplicación.

Convenciones
Preste atención a las indicaciones marcadas del modo siguiente:

NOTA
Una indicación contiene datos importantes acerca del producto descrito en la
documentación, el manejo de dicho producto o la parte de la documentación a la que debe
prestarse especial atención.

Industry Mall
El Industry Mall es el catálogo y sistema de pedidos de Siemens AG para soluciones de
automatización y accionamiento basadas en Totally Integrated Automation (TIA) y Totally
Integrated Power (TIP).
Los catálogos de todos los productos de automatización y accionamiento se encuentran en
Internet ([Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 13
Introducción
1.2 Guía a través de la documentación Manuales de funciones

Ver también

Página temática "Tecnología SIMATIC - Control PID: Sinopsis y enlaces


importantes"
[Link]
([Link]

1.2 Guía a través de la documentación Manuales de funciones

1.2.1 Clases de información Manuales de funciones


La documentación del sistema de automatización SIMATIC S7‑1500, de las CPU basadas en
SIMATIC S7‑1500 1513/1516pro-2 PN, SIMATIC Drive Controller y de los sistemas de periferia
descentralizada SIMATIC ET 200MP, ET 200SP, ET 200AL y ET 200eco PN se divide en tres
partes.
Esta división permite acceder directamente al contenido deseado.
La documentación se puede descargar gratuitamente de Internet.
([Link]

Información básica
En los manuales de sistema y en los Getting Started (primeros pasos) se describen
detalladamente la configuración, el montaje, el cableado y la puesta en marcha de los
sistemas SIMATIC S7‑1500, SIMATIC Drive Controller, ET 200MP, ET 200SP, ET 200AL y
ET 200eco PN. Para las CPU 1513/1516pro-2 PN utilice las instrucciones de servicio
respectivas.
La Ayuda en pantalla de STEP 7 le asiste en la configuración y programación.
Ejemplos:
• Getting Started (Primeros pasos) S7-1500
• Manuales de sistema
• Instrucciones de servicio de ET 200pro y CPU 1516pro-2 PN
• Ayuda en pantalla del TIA Portal

Regulación PID
14 Manual de funciones, 11/2022, A5E35300231-AF
Introducción
1.2 Guía a través de la documentación Manuales de funciones

Información de productos
Los manuales de producto contienen una descripción sintetizada de la información específica
de los módulos, como características, esquemas de conexiones, curvas características o datos
técnicos.
Ejemplos:
• Manuales de producto de las CPU
• Manuales de producto de los módulos de interfaz
• Manuales de producto de los módulos digitales
• Manuales de producto de los módulos analógicos
• Manuales de producto de los módulos de comunicación
• Manuales de producto de los módulos tecnológicos
• Manuales de producto de los módulos de alimentación
• Manuales de producto de las BaseUnits

Información general
En los manuales de funciones encontrará descripciones detalladas sobre temas generales en
torno a SIMATIC Drive Controller y al sistema de automatización S7-1500.
Ejemplos:
• Manual de funciones Diagnóstico
• Manual de funciones Comunicación
• Manuales de funciones Motion Control
• Manual de funciones Servidor web
• Manual de funciones Tiempos de ciclo y tiempos de reacción
• Manual de funciones PROFINET
• Manual de funciones PROFIBUS

Información del producto


Los cambios y ampliaciones de los manuales se documentan en una información del
producto. La información del producto tiene un carácter más vinculante que el manual de
producto y el manual de sistema.
Encontrará la información del producto actualizada en Internet:
• S7-1500/ET 200MP ([Link]
• SIMATIC Drive Controller
([Link]
• Motion Control ([Link]
• ET 200SP ([Link]
• ET 200eco PN ([Link]

Manual Collections
Las Manual Collections contienen la documentación completa de los sistemas recogida en un
archivo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 15
Introducción
1.2 Guía a través de la documentación Manuales de funciones

Encontrará las Manual Collections en Internet:


• S7-1500/ET 200MP/SIMATIC Drive Controller
([Link]
• ET 200SP ([Link]
• ET 200AL ([Link]
• ET 200eco PN ([Link]

1.2.2 Herramientas básicas


Las herramientas descritas a continuación lo ayudarán en todas las etapas: desde la
planificación hasta el análisis de la instalación, pasando por la puesta en marcha.

TIA Selection Tool


TIA Selection Tool lo ayudará a seleccionar, configurar y pedir equipos para Totally Integrated
Automation (TIA).
Como sucesor de SIMATIC Selection Tools agrupa en una sola herramienta los configuradores
ya conocidos para los sistemas de automatización.
TIA Selection Tool permite generar una lista de pedido completa a partir de la selección o
configuración de productos realizada.
Encontrará TIA Selection Tool en Internet.
([Link]

SIMATIC Automation Tool


SIMATIC Automation Tool permite llevar a cabo tareas de puesta en marcha y servicio técnico
como operaciones masivas en distintas estaciones SIMATIC S7, independientemente del TIA
Portal.
SIMATIC Automation Tool ofrece numerosas funciones:
• Escaneado de una red de instalación PROFINET/Ethernet e identificación de todas las CPU
conectadas
• Asignación de direcciones (IP, subred, Gateway) y nombre de dispositivo (dispositivo
PROFINET) a una CPU
• Transferencia al módulo de la fecha y la hora convertida a hora UTC de la programadora o
el PC
• Descarga de programas en la CPU
• Cambio de los modos de operación RUN/STOP
• Localización de las CPU mediante parpadeo de los LED
• Lectura de información de errores de la CPU
• Lectura del búfer de diagnóstico de la CPU
• Restablecimiento de los ajustes de fábrica
• Actualización del firmware de la CPU y los módulos conectados
Encontrará SIMATIC Automation Tool en Internet.
([Link]

Regulación PID
16 Manual de funciones, 11/2022, A5E35300231-AF
Introducción
1.2 Guía a través de la documentación Manuales de funciones

PRONETA
SIEMENS PRONETA (análisis de red PROFINET) es una herramienta de puesta en marcha y
diagnóstico para redes PROFINET. PRONETA Basic cuenta con dos funciones centrales:
• El "Análisis de red" proporciona una visión general rápida de la topología PROFINET.
Permite realizar modificaciones de parámetros sencillas, por ejemplo, en los nombres y
direcciones IP de los dispositivos. Además, permite comparar la configuración real con una
instalación de referencia de manera rápida y cómoda.
• "Test IO", que permite comprobar, con facilidad y rapidez, el cableado y la configuración
de los módulos de una instalación, incluida la documentación de los resultados del test.
Encontrará SIEMENS PRONETA Basic en Internet:
([Link]
SIEMENS PRONETA Professional ofrece funciones adicionales como producto bajo licencia.
Permite una gestión de activos sencilla en redes PROFINET y asiste a los operadores de
instalaciones de automatización en la adquisición automatizada de datos de los componentes
utilizados por medio de numerosas funciones:
• La interfaz de usuario (API) proporciona un punto de acceso a la célula de automatización
para automatizar las funciones de escaneo vía MQTT o por línea de comandos.
• Con el diagnóstico PROFIenergy, es posible detectar rápidamente y, en caso necesario,
modificar el modo de pausa o la disponibilidad para el funcionamiento actuales de los
dispositivos compatibles con PROFIenergy.
• El asistente de juegos de datos ayuda a los desarrolladores de PROFINET a leer y escribir
juegos de datos PROFINET acíclicos de forma rápida y sencilla, sin necesidad de PLC ni
ingeniería.
Encontrará SIEMENS PRONETA Professional en Internet: ([Link]
professional)

SINETPLAN
SINETPLAN, el Siemens Network Planner, es una ayuda para planificadores de sistemas y
redes de automatización basados en PROFINET. La herramienta facilita, incluso en la fase de
planificación, el dimensionamiento profesional y anticipativo de la instalación PROFINET.
SINETPLAN ayuda también a optimizar la red, así como a aprovechar al máximo los recursos
en la red y planificar reservas. De esta forma se evitan problemas en la puesta en marcha o
fallos durante el funcionamiento productivo antes de iniciar la aplicación programada. Esto
aumenta la disponibilidad de la producción y contribuye a mejorar la seguridad de operación.
Resumen de las ventajas
• Optimización de la red mediante el cálculo puerto a puerto de las cargas de red.
• Mayor disponibilidad de producción mediante escaneo online y verificación de las
instalaciones existentes
• Transparencia antes de la puesta en marcha mediante la importación y simulación de
proyectos STEP 7 existentes
• Eficiencia mediante la protección duradera de las inversiones existentes y el
aprovechamiento óptimo de los recursos
Encontrará SINETPLAN en Internet.
([Link]
communication/profinet/[Link])

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 17
Introducción
1.2 Guía a través de la documentación Manuales de funciones

1.2.3 Documentación técnica de SIMATIC


La información se completa con documentos adicionales de SIMATIC. Encontrará estos
documentos y su utilización en los siguientes enlaces y códigos QR.
Industry Online Support completa las posibilidades de obtener información sobre todos los
temas. Asimismo, los ejemplos de aplicación lo ayudan a resolver tareas de automatización.

Sinopsis de la documentación técnica de SIMATIC


Aquí encontrará una vista general de la documentación sobre SIMATIC disponible en Siemens
Industry Online Support:

Industry Online Support International


([Link]

En el siguiente vídeo le enseñaremos cómo encontrar la vista general directamente en


Siemens Industry Online Support y cómo utilizar Siemens Industry Online Support en su
dispositivo móvil:
Acceso rápido a la documentación técnica de los productos de automatización a
través de un vídeo ([Link]

Vídeo de YouTube: Siemens Automation Products - Technical Documentation at


a Glance ([Link]

mySupport
Con mySupport podrá sacar el máximo partido al Industry Online Support.

Registro Para usar todas las funciones de mySupport, es necesario registrarse una sola vez.
Tras el registro, podrá crear filtros, favoritos y pestañas en su área de trabajo perso­
nal.
Solicitudes de En las consultas que realice con el Support Request (solicitud de soporte), este ya
soporte estará cumplimentado con sus datos y podrá ver en todo momento una relación de
las solicitudes pendientes.
Documentación En el área Documentación podrá recopilar su librería personal.
Favoritos Con el botón "Añadir a los favoritos mySupport" puede guardar contenido especial­
mente interesante o recurrente. En la opción "Favoritos" encontrará una lista de las
entradas guardadas.
Últimos artículos Encontrará las últimas páginas cargadas en mySupport en "Últimos artículos vistos".
vistos

Regulación PID
18 Manual de funciones, 11/2022, A5E35300231-AF
Introducción
1.2 Guía a través de la documentación Manuales de funciones

Datos CAx El área Datos CAx permite acceder a datos de producto actualizados para su sistema
CAx o CAe. Con solo unos clics configurará su propio paquete de descarga:
• Imágenes de producto, croquis acotados 2D, modelos 3D, esquemas de cone­
xiones, archivos de macros EPLAN
• Manuales, curvas características, instrucciones de uso, certificados
• Datos característicos de productos
Encontrará mySupport en Internet. ([Link]

Ejemplos de aplicación
Los ejemplos de aplicación le asisten con diferentes herramientas y ejemplos a la hora de
resolver las tareas de automatización. Los ejemplos muestran siempre soluciones en las que
interactúan varios componentes del sistema sin centrarse en productos concretos.
Encontrará los ejemplos de aplicación en Internet.
([Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 19
Consignas de seguridad 2
2.1 Información de seguridad
Siemens ofrece productos y soluciones con funciones de seguridad industrial con el objetivo
de hacer más seguro el funcionamiento de instalaciones, sistemas, máquinas y redes.
Para proteger las instalaciones, los sistemas, las máquinas y las redes contra de amenazas
cibernéticas, es necesario implementar (y mantener continuamente) un concepto de
seguridad industrial integral que esté conforme al estado del arte. Los productos y las
soluciones de Siemens constituyen una parte de este concepto.
Los clientes son responsables de impedir el acceso no autorizado a sus instalaciones,
sistemas, máquinas y redes. Dichos sistemas, máquinas y componentes solo deben estar
conectados a la red corporativa o a Internet cuando y en la medida que sea necesario y
siempre que se hayan tomado las medidas de protección adecuadas (p. ej. cortafuegos y
segmentación de la red).
Para obtener información adicional sobre las medidas de seguridad industrial que podrían ser
implementadas, por favor visite.
Los productos y las soluciones de Siemens están sometidos a un desarrollo constante con el
fin de hacerlos más seguros. Siemens recomienda expresamente realizar actualizaciones en
cuanto estén disponibles y utilizar únicamente las últimas versiones de los productos. El uso
de versiones de los productos anteriores o que ya no sean soportadas y la falta de aplicación
de las nuevas actualizaciones, puede aumentar el riesgo de amenazas cibernéticas.
Para mantenerse informado de las actualizaciones de productos, recomendamos que se
suscriba al Siemens Industrial Security RSS Feed en.

Regulación PID
20 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación 3
3.1 Lazo de regulación y elementos finales de control

Lazo de regulación
Un ejemplo sencillo de un lazo de regulación es la regulación de la temperatura ambiente
mediante una calefacción. La temperatura ambiente se mide con un sensor y se transmite a
un regulador. Este compara la temperatura ambiente actual con una consigna y calcula un
valor de salida (variable manipulada) para controlar la calefacción.
&RQVLJQD 9DULDEOH
PDQLSXODGD
5HJXODGRU $FWXDGRU &DOHIDFFLµQ
9DORUUHDO

7HPSHUDWXUD
6HQVRU

Un regulador PID ajustado correctamente alcanza la consigna lo más rápido posible y luego la
mantiene constante. Tras un cambio del valor de salida el valor real suele cambiar de forma
retardada. Este comportamiento debe compensarse con el regulador.

Elementos finales de control


El elemento final de control es un componente del lazo de regulación y se ve influenciado por
el regulador. De esta manera se modifica un flujo másico o energético.
La tabla siguiente muestra los campos de aplicación de los elementos finales de control

Aplicación para Elemento final de control


Flujo másico de líquidos y gases Válvula, compuerta, corredera
Flujo másico sólido p. j. carga a granel Válvula de descarga, cinta transportadora, canal vibrato­
rio
Flujo eléctrico Conmutador, contactor, relé, tiristor
Resistor variable, transformador de regulación, transistor
Los elementos finales de control se diferencian del modo siguiente:
• Elementos finales de control proporcionales con señal de posicionamiento constante
Los ángulos de apertura, ángulos de rotación o posiciones se adoptan proporcionalmente
al valor de salida. Dentro del rango de ajuste el valor de salida incide en el proceso de
manera análoga.
A los elementos finales de control de este grupo pertenecen los accionamientos
neumáticos cargados por resorte, así como los accionamientos motorizados con

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 21
Principios básicos de la regulación
3.2 Sistemas regulados

realimentación de posición en los que se conforma un lazo de regulación de


posicionamiento.
El valor de salida es generado por un regulador continuo, p. ej. PID_Compact.
• Elementos finales de control proporcionales mediante señal con modulación de ancho de
impulsos
En estos elementos finales de control (actuadores) se emite un impulso con una
frecuencia equivalente al tiempo de muestreo y cuya longitud es proporcional al valor de
salida. El elemento final de control, p. ej. una resistencia calefactora o un grupo frigorífico,
se conecta de forma sincronizada con el ciclo por un tiempo variable en función del valor
de salida.
La señal de posicionamiento puede adoptar unipolarmente los estados "Conectado" o
"Desconectado" o bien representar bipolarmente los valores "Abierto/Cerrado",
"Adelante/Atrás", "Acelerar/Decelerar" etc.
El valor de salida es generado por un regulador de dos puntos, p. ej. PID_Compact con
modulación de ancho de impulsos.
• Elementos finales de control de acción integral con señal de salida de tres puntos
Frecuentemente los elementos finales de control se accionan con motores cuya duración
de conexión es proporcional al trayecto de ajuste del órgano de regulación. A este grupo
pertenecen p. ej. válvulas, compuertas y correderas. A pesar de que su diseño varía
considerablemente, estos elementos finales de control se asemejan en cuanto a que
tienen el efecto de una acción I en la entrada del sistema regulado.
El valor de salida es generado por un regulador paso a paso, p. ej. PID_3Step.

3.2 Sistemas regulados


Las propiedades de un sistema regulado están definidas por aspectos tecnológicos y
mecánicos que dejan un margen de influencia muy reducido. Para que la regulación arroje
buenos resultados es imprescindible elegir un tipo de regulador apropiado, que pueda ser
adaptado óptimamente a la rapidez de respuesta del sistema regulado. Por lo tanto, es
esencial conocer a fondo los datos característicos y el tipo del sistema regulado para poder
configurar la acción P, I y D del regulador.

Tipos de sistema regulado


Los sistemas regulados se clasifican en función de su rapidez de respuesta a cambios bruscos
del valor de salida.
Se distinguen los siguientes sistemas regulados:
• Sistemas regulados con compensación
– Sistemas regulados tipo P
– Sistemas regulados tipo PT1
– Sistemas regulados tipo PT2
• Sistemas regulados sin compensación
• Sistemas regulados con y sin tiempo muerto

Sistemas regulados con compensación


Sistemas regulados tipo P

Regulación PID
22 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.2 Sistemas regulados

En los sistemas proporcionales el valor real sigue al valor de salida casi instantáneamente. La
relación entre el valor real y el valor de salida se expresa mediante la ganancia proporcional
Gain del sistema regulado.
Ejemplos:
• Válvula deslizante en un sistema de tuberías
• Divisor de tensión
• Reducción en sistemas hidráulicos
Sistemas regulados tipo PT1
En un sistema regulado tipo PT1 el valor real varía en un principio de manera proporcional al
cambio del valor de salida. A medida que transcurre el tiempo, el valor real cambia más
lentamente (con retardo) hasta alcanzar un valor final.
Ejemplos:
• Sistemas de amortiguación por resorte
• Carga de componentes RC
• Depósito de agua calentado con vapor.
Frecuentemente rigen las mismas constantes de tiempo para procesos de calefacción y
refrigeración o curvas de carga y descarga. Si las constantes de tiempo son divergentes, la
regulación se torna mucho más complicada.
Sistemas regulados tipo PT2
En un sistema regulado tipo PT2 el valor real en un principio no cambia ante un escalón del
valor de salida, pero luego aumenta en rampa de subida hasta finalmente aproximarse a la
consigna con una rampa de bajada. El sistema regulado presenta un comportamiento de
transferencia proporcional con retardo de 2º grado.
Ejemplos:
• Regulación de presión
• Regulación de caudal
• Regulación de temperatura

Sistemas regulados sin compensación


Los sistemas regulados sin compensación presentan un comportamiento integral. El valor real
persigue un valor infinitamente grande.
Ejemplo:
• Entrada de un líquido determinado a un depósito

Sistemas regulados con tiempo muerto


Un tiempo muerto es siempre el tiempo de ejecución o de transporte hasta que un cambio en
la entrada del sistema pueda ser medido en la salida del mismo.
En los sistemas regulados con tiempo muerto el valor real varía con retardo en función del
tiempo muerto.
Ejemplo:
Cinta transportadora

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 23
Principios básicos de la regulación
3.3 Valores característicos del sistema regulado

3.3 Valores característicos del sistema regulado

Determinar el comportamiento de tiempo a partir de la respuesta indicial


La respuesta temporal del sistema regulado se puede determinar a partir de la evolución
temporal del valor real x tras un cambio brusco del valor de salida y. En la mayoría de los
casos se trata de sistemas regulados con compensación.
\





[ W

7J

;PD[

ෙ[

ෙW

7X W

El comportamiento de tiempo se puede definir aproximadamente con las magnitudes tiempo


de retardo Tu, tiempo de compensación Tg y valor máximo Xmax. Las magnitudes se
determinan posicionando tangentes en el valor máximo y en el punto de inflexión de la
respuesta indicial. En muchos casos no es posible aceptar la respuesta transitoria hasta el
valor máximo debido a que el valor real no puede rebasar ciertos valores. Luego se utiliza la
velocidad de aumento vmax para identificar el sistema regulado (vmax = Δx/Δt).

Regulación PID
24 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.3 Valores característicos del sistema regulado

La regulabilidad del sistema regulado se puede estimar a partir de la relación Tu/Tg o bien Tu ×
vmax/Xmax Rige lo siguiente:

Tipo de sistema Tu / Tg Regulabilidad del sistema regulado


I < 0,1 Altamente regulable
II 0,1 hasta 0,3 Todavía regulable
III > 0,3 Difícil de regular

Incidencia del tiempo muerto en la regulabilidad del sistema regulado


Un sistema regulado con tiempo muerto y compensación presenta la respuesta siguiente ante
un escalón del valor de salida
\

[
7J

7W 7X

7D

Tt Tiempo muerto
Tu Tiempo de retardo
Tg Tiempo de compensación
y Valor de salida
x Valor real
La regulabilidad de un sistema regulado con tiempo muerto está determinada por la relación
existente entre Tt y Tg. El valor de Tt debe ser pequeño en relación a Tg. Rige:
Tt/Tg ≤ 1

Velocidad de reacción de sistemas regulados


Los sistemas regulados se pueden catalogar en función de los valores siguientes:
Tu < 0,5 min, Tg < 5 min = sistema regulado rápido
Tu > 0,5 min, Tg > 5 min = sistema regulado lento

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 25
Principios básicos de la regulación
3.4 Regulador de impulsos

Valores característicos de algunos sistemas regulados

Magnitud físi­ Sistema regulado Tiempo de retardo Tu Tiempo de com­ Velocidad de au­
ca pensación Tg mento vmax
Temperatura Horno pequeño calentado eléctricamente 0,5 hasta 1 min 5 hasta 15 min hasta 60 K/min
Horno de recocer grande calentado eléctri­ 1 hasta 5 min 10 hasta 20 min hasta 20 K/min
camente
Horno de recocer grande calentado por gas 0,2 hasta 5 min 3 hasta 60 min 1 hasta 30 K/min
Columna de destilación fraccionada 1 hasta 7 min 40 hasta 60 min 0,1 hasta 0,5 °C/s
Autoclave (2,5 m3) 0,5 hasta 0,7 min 10 hasta 20 min ninguna indicación
Autoclave de alta presión 12 hasta 15 min 200 hasta 300 min ninguna indicación
Recalentador de vapor 30 s hasta 2,5 min 1 hasta 4 min 2 °C/s
Máquinas de moldeo por inyección 0,5 hasta 3 min 3 hasta 30 min 5 hasta 20 K/min
Extrusora 1 hasta 6 min 5 hasta 60 min
Máquinas de envasado y embalaje 0,5 hasta 4 min 3 hasta 40 min 2 hasta 35 K/min
Calefacción de locales 1 hasta 5 min 10 hasta 60 min 1 °C/min
Caudal Tubería con gas 0 hasta 5 s 0,2 hasta 10 s no aplicable
Tubería con líquido Sin Sin
Presión Tubería de gas Sin 0,1 s no aplicable
Caldera de tambor calentada con gas o fuel Sin 150 s no aplicable
oil
Caldera de tambor con molinos batidores 1 hasta 2 min 2 hasta 5 min no aplicable
Nivel del depó­ Caldera de tambor 0,6 hasta 1 min ninguna indicación 0,1 hasta 0,3 cm/s
sito (nivel)
Velocidad Accionamiento eléctrico pequeño Sin 0,2 hasta 10 s no aplicable
Accionamiento eléctrico grande Sin 5 hasta 40 s no aplicable
Turbina de gas Sin ninguna indicación 50 rpm
Tensión eléctri­ Generadores pequeños Sin 1 hasta 5 s no aplicable
ca
Generadores grandes Sin 5 hasta 10 s no aplicable

3.4 Regulador de impulsos

Regulador de dos puntos sin realimentación


Los reguladores de dos puntos tienen como función de conmutación el estado "ON" y "OFF".
Esto corresponde al 100 % o bien al 0 % de la potencia. Este comportamiento origina una
oscilación continua del valor real x en torno a la consigna w.
La amplitud y la duración de periodo de la oscilación aumentan con la relación existente entre
el tiempo de retardo Tu y el tiempo de compensación Tg presente en el sistema regulado.
Estos reguladores se utilizan principalmente en regulaciones de temperatura simples (p. ej.
hornos eléctricos de calefacción directa) o como señalizadores de límite.

Regulación PID
26 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.4 Regulador de impulsos

El gráfico siguiente muestra la curva característica de un regulador de dos puntos

 <K

Z [

① ON
② OFF
Yh Rango
w Consigna

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 27
Principios básicos de la regulación
3.4 Regulador de impulsos

El gráfico siguiente muestra la función de regulación de un regulador de dos puntos


[ 7J

;
6G

W
7X




W

① Respuesta transitoria sin regulador


② Respuesta transitoria con regulador de dos puntos
Tu Tiempo de retardo
Tg Tiempo de compensación
XSd Ganancia diferencial

Regulador de dos puntos con realimentación


El comportamiento de los reguladores de dos puntos en sistemas regulados que presentan
grandes tiempos de retardo (p. ej. hornos en los que la capacidad útil está separada de la
calefacción) se puede mejorar con realimentaciones electrónicas.
Con la realimentación se eleva la frecuencia de conmutación del regulador, con lo que se
reduce la amplitud del valor real. Además, se pueden mejorar considerablemente los
resultados de la regulación en el funcionamiento dinámico. El límite de la frecuencia de
conmutación está definido por la etapa de salida. La frecuencia de conmutación de
elementos finales de control mecánicos como relés y contactores no debe ser mayor de 1 a 5
conmutaciones por minuto. Para las salidas de corriente y tensión binarias con tiristores o

Regulación PID
28 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.4 Regulador de impulsos

triacs postconectados se pueden elegir altas frecuencias de conmutación ubicadas muy por
encima de la frecuencia de corte del sistema regulado.
Dado que los impulsos de conmutación en la salida del sistema regulado ya no se pueden
determinar, se obtienen resultados comparables a los de los reguladores continuos.
El valor de salida se genera por modulación del ancho de impulsos del valor de salida de un
regulador continuo.
Los reguladores de dos puntos con realimentación se utilizan para regular la temperatura en
hornos, máquinas para procesar plástico, textiles, papel, goma y alimentos, así como en
enfriadores y calefactores.

Regulador de tres puntos


Los reguladores de tres puntos se utilizan en calefacción/refrigeración. Estos reguladores
tienen dos puntos de conmutación como salida. Los resultados de la regulación se optimizan
con estructuras de realimentación electrónicas. Los campos de aplicación de estos
reguladores son las cámaras térmicas, frigoríficas y climatizadas, así como el
precalentamiento de herramientas de máquinas transformadoras de plástico.
El gráfico siguiente muestra la curva característica de un regulador de tres puntos

\

\ \

\

[
Z

[ 6K

y Valor de salida, p. ej.


y11 = 100 % calefacción
y12 = 0 % calefacción
y21 = 0 % refrigeración
y22 = 100 % refrigeración
x Unidad física del valor real, p. ej. la temperatura en °C
w Consigna
xSh Distancia entre los puntos de conmutación 1 y 2

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 29
Principios básicos de la regulación
3.5 Respuesta de regulación y a perturbaciones

3.5 Respuesta de regulación y a perturbaciones

Respuesta de regulación
El valor real debe seguir un cambio de la consigna lo más rápido posible. La respuesta de
regulación mejora cuanto más corto sea el tiempo necesario para alcanzar la nueva consigna
y menor la fluctuación del valor real.
[

x Valor real
w Consigna

Respuesta a perturbaciones
La consigna se ve afectada por magnitudes perturbadoras. El regulador debe eliminar lo más
rápido posible el error de regulación resultante. La respuesta a perturbaciones mejora cuanto
más corto sea el tiempo necesario para alcanzar la nueva consigna consigna y menor la
fluctuación del valor real.

[

x Valor real
w Consigna
① Incidencia de una magnitud perturbadora
Una magnitud perturbadora se compensa con reguladores con acción I. La calidad de la
regulación no se reduce por una magnitud perturbadora que incida constantemente, ya que
el error de regulación es relativamente constante. Una magnitud perturbadora dinámica

Regulación PID
30 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

afecta en mayor medida a la calidad de la regulación porque el error de regulación fluctúa.


Sólo a través de la acción I, que se forma lentamente, se vuelve a reducir el error de
regulación.
Una magnitud perturbadora medible puede entrar en el lazo de regulación. Esto puede
acelerar considerablemente la reacción del regulador.

3.6 Respuesta de regulación con diferentes estructuras de


realimentación

Comportamientos de regulador
Cuanto mayor sea la precisión de adaptación del regulador al comportamiento de tiempo del
sistema regulado, mayor será la precisión de ajuste de la consigna, de modo que la respuesta
a magnitudes perturbadores será óptima.
La inclusión en la realimentación puede tener un comportamiento proporcional (P),
proporcional diferencial (PD), proporcional integral (PI) o proporcional integral diferencial
(PID).
Si se le aplica una función de escalón al error de regulación, se generarán distintas respuestas
indiciales en función del regulador.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 31
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

Respuesta indicial de un regulador P



[

W

\

 


W

① Error de regulación
② Valor de salida de un regulador continuo
③ Valor de salida de un regulador de impulsos

Fórmula para reguladores P


El valor de salida y el error de regulación son directamente proporcionales, es decir:
Valor de salida = ganancia proporcional × error de regulación
y = GAIN × x

Regulación PID
32 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

Respuesta indicial de un regulador PD


[

70B/$*





W

① Error de regulación
② Valor de salida de un regulador continuo
③ Valor de salida de un regulador de impulsos
TM_LAG Retardo de la acción D
Fórmula para reguladores PD
Para la respuesta indicial del regulador PD en el dominio temporal rige lo siguiente:
W
7' 70B/$*
\ *$,1y;:y  yH
70B/$*

t = duración desde el escalón del error de regulación


La acción D genera un valor de salida en función de la velocidad con la que cambia el valor
real. Una acción D pura no es apta para la regulación, pues sólo un cambio del valor real
puede generar un cambio del valor de salida. Si el valor real permanece constante, el valor de
salida tampoco cambia.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 33
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

La acción D, en combinación con una acción P, mejora la respuesta a perturbaciones. Las


perturbaciones no se eliminan por completo. El comportamiento beneficioso es el bueno y
dinámico. Durante el desplazamiento y al cambiar la consigna se alcanza una transición bien
amortiguada y exenta de vibraciones.
Un regulador con acción D no es apropiado si el sistema regulado tiene magnitudes de
medición pulsantes, p. ej. en la regulación de presión o de caudal.

Respuesta indicial de un regulador PI

\ 





W

① Error de regulación
② Valor de salida de un regulador continuo
③ Valor de salida de un regulador de impulsos
Una acción I en el regulador totaliza el error de regulación en el tiempo. De este modo el
regulador sigue reajustándose hasta eliminar el error de regulación. En un regulador P puro

Regulación PID
34 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

se presenta un error de regulación permanente. Éste se puede eliminar con una acción I en el
regulador.
Dependiendo de los requisitos que deba cumplir la respuesta de regulación, en la práctica
resulta idónea una combinación de las acciones P, I y D. El comportamiento de tiempo de las
distintas acciones se puede describir con los siguientes parámetros del regulador: ganancia
proporcional GAIN, tiempo de acción integral TI (acción I) y tiempo de anticipación TD (acción
D).
Fórmula para reguladores PI
Para la respuesta indicial del regulador PI en el dominio temporal rige lo siguiente:


\ *$,1y;:y 
7,yW

t = duración desde el escalón del error de regulación

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 35
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

Respuesta indicial de un regulador PID

W


70B/$*

W
7,

\


① Error de regulación
② Valor de salida de un regulador continuo
③ Valor de salida de un regulador de impulsos
TM_LAG Retardo de la acción D
Ti Tiempo de integración
Fórmula para reguladores PID

Regulación PID
36 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.6 Respuesta de regulación con diferentes estructuras de realimentación

Para la respuesta indicial del regulador PID en el dominio temporal rige lo siguiente:
W
 7' 70B/$*
\ *$,1y;:y   70B/$*
yH
7,yW

t = duración desde el escalón del error de regulación

Comportamiento de un sistema regulado con distintas estructuras de regulación


La mayoría de regulaciones que se aplican en la técnica de procesos se puede controlar con
un regulador con comportamiento PI. En sistemas regulados lentos con grandes tiempos de
retardo, p. ej. regulación de temperatura, el resultado de la regulación se puede mejorar con
un regulador con comportamiento PID.




W

① Sin regulador
② Regulador PID
③ Regulador PD
w Consigna
x Valor real
Los reguladores con comportamiento PI y PID ofrecen la ventaja de que tras la fase de
estabilización el valor real no muestra ninguna desviación frente a la consigna. Durante el
desplazamiento el valor real oscila sobre la consigna.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 37
Principios básicos de la regulación
3.7 Elección de la estructura del regulador con un sistema regulado definido

3.7 Elección de la estructura del regulador con un sistema regulado


definido

Selección de las estructuras de regulador apropiadas


Un resultado de regulación óptimo sólo se puede alcanzar si se elige una estructura de
regulador que sea afín al sistema regulado, y que se pueda adaptar al mismo dentro de
determinados límites.
La tabla siguiente ofrece una vista general de las estructuras de regulador adecuadas en
función del sistema regulado.
Sistema regulado Estructura de regulador
P PD PI PID
Sólo con tiempo muerto No apta No apta Apta No apta

PT1 con tiempo muerto No apta No apta Muy apta Muy apta

PT2 con tiempo muerto No apta Apta con limitacio­ Muy apta Muy apta
nes

Alto grado No apta No apta Apta con limitacio­ Muy apta


nes

Sin compensación Muy apta Muy apta Muy apta Muy apta

La tabla siguiente ofrece una vista general de las estructuras de regulador adecuadas en
función de la magnitud física.

Magnitud física Estructura de regulador


P PD PI PID
Error de regulación permanente Error de regulación no permanente
Temperatura Para exigencias re­ Muy apta Estructuras de regulador idóneas para
ducidas y sistemas P exigencias elevadas (con excepción de
con Tu/Tg < 0,1 reguladores especiales adaptados)
Presión Apta, si el tiempo No apta Estructuras de regulador idóneas para
de retardo no es exigencias elevadas (con excepción de
significativo reguladores especiales adaptados)
Caudal No apta, porque el No apta Válido, pero el re­ Casi no es necesaria
rango GAIN requeri­ gulador I solo suele
do suele ser dema­ ser mejor
siado grande

Regulación PID
38 Manual de funciones, 11/2022, A5E35300231-AF
Principios básicos de la regulación
3.8 Ajuste de los parámetros PID

3.8 Ajuste de los parámetros PID

Fórmula empírica para ajustar los parámetros

Estructura de regulador Ajuste


P GAIN ≈ vmax × Tu [ °C ]
PI GAIN ≈ 1,2 × vmax × Tu [ °C ]
TI ≈ 4 × Tu [ min ]
PD GAIN ≈ 0,83 × vmax × Tu [ °C ]
TD ≈ 0,25 × vmax × Tu [ min ]
TM_LAG ≈ 0,5 × TD[ min ]
PID GAIN ≈ 0,83 × vmax × Tu [ °C ]
TI ≈ 2 × Tu [ min ]
TD ≈ 0,4 × Tu [ min ]
TM_LAG ≈ 0,5 × TD[ min ]
PD/PID GAIN ≈ 0,4 × vmax × Tu [ °C ]
TI ≈ 2 × Tu [ min ]
TD ≈ 0,4 × Tu [ min ]
TM_LAG ≈ 0,5 × TD[ min ]
En vez de vmax = ∆x / ∆t se puede utilizar Xmax / Tg.
En los reguladores con estructura PID el ajuste del tiempo de acción integral está acoplado
por lo general al ajuste del tiempo de anticipación.
La relación TI / TD es de 4 a 5 y por lo tanto óptima para la mayoría de sistemas regulados.
La inobservancia del tiempo de anticipación TD no es grave en los reguladores PD.
En los reguladores PI o PID ocurren oscilaciones en la regulación si el tiempo de acción
integral TI se ha ajustado por debajo de la mitad del nivel requerido.
Un tiempo de acción integral demasiado grande retarda la eliminación de perturbaciones. No
se puede pretender que los lazos de regulación trabajen óptimamente después de haber
ajustado por primera vez los parámetros. La experiencia ha demostrado que es necesario
efectuar un reajuste de parámetros si se trata de un sistema "difícil de regular" con Tu / Tg >
0,3.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 39
Configuración de un regulador por software 4
4.1 Vista general de los reguladores de software
Para la configuración de un regulador por software, se requiere una instrucción con el
algoritmo de regulación y un objeto tecnológico. El objeto tecnológico para un regulador de
software equivale al DB de instancia de la instrucción. En el objeto tecnológico, se guarda la
configuración del regulador. A diferencia de los DB de instancia de otras instrucciones, los
objetos tecnológicos no se guardan junto a los recursos del programa, sino en CPU > Objetos
tecnológicos.

Objetos tecnológicos e instrucciones

CPU Librería Instrucción Objeto tecnológi­ Descripción


co
S7-1200 Compact PID PID_Compact V1.x PID_Compact V1.x Regulador PID universal con optimización inte­
grada
S7-1200 PID_3Step V1.x PID_3Step V1.x Regulador PID para válvulas con optimización
integrada
S7-1500 PID_Compact V2.x PID_Compact V2.x Regulador PID universal con optimización inte­
S7-1200 V4.x grada
S7-1500 PID_3Step V2.x PID_3Step V2.x Regulador PID para válvulas con optimización
S7-1200 V4.x integrada
S7-1500 ≥ V1.7 PID_Temp V1.x PID_Temp V1.x Regulador de temperatura PID universal con
S7-1200 ≥ V4.1 optimización integrada
S7-1500/300/40­ Funciones básicas CONT_C CONT_C Regulador continuo
0 de PID
S7-1500/300/40­ CONT_S CONT_S Regulador paso a paso para elementos finales
0 de control de acción integrativa
S7-1500/300/40­ PULSEGEN - Generador de impulsos para elementos finales
0 de control de acción proporcional
S7-1500/300/40­ TCONT_CP TCONT_CP Regulador de temperatura continuo con gene­
0 rador de impulsos
S7-1500/300/40­ TCONT_S TCONT_S Regulador de temperatura para accionadores
0 integrables
S7-300/400 PID Self Tuner TUN_EC TUN_EC Optimización de un regulador continuo
S7-300/400 TUN_ES TUN_ES Optimización de un regulador paso a paso
S7-300/400 Standard PID Con­ PID_CP PID_CP Regulador continuo con generador de impulso
trol (paquete opcio­
S7-300/400 PID_ES PID_ES Regulador paso a paso para elementos finales
nal PID Professional)
de control de acción integrativa
S7-300/400 LP_SCHED - Distribuir llamadas del regulador

Regulación PID
40 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.2 Pasos para la configuración de un regulador por software

CPU Librería Instrucción Objeto tecnológi­ Descripción


co
S7-300/400 Modular PID Control A_DEAD_B - Filtrar señales perturbadoras del error de regu­
(paquete opcional lación
PID Professional)
S7-300/400 CRP_IN - Escalar señal de entrada analógica
S7-300/400 CRP_OUT - Escalar señal de salida analógica
S7-300/400 DEAD_T - Emitir señal de entrada retardada
S7-300/400 DEADBAND - Inhibir pequeñas oscilaciones del valor real
S7-300/400 DIF - Diferenciar señal de entrada en el tiempo
S7-300/400 ERR_MON Vigilar error de regulación
S7-300/400 INTEG - Integrar señal de entrada en el tiempo
S7-300/400 LAG1ST - Elemento de retardo de primer orden
S7-300/400 LAG2ND - Elemento de retardo de segundo orden
S7-300/400 LIMALARM - Notificar valores límite
S7-300/400 LIMITER - Limitar la variable manipulada
S7-300/400 LMNGEN_C - Determinar variable manipulada para regula­
dor continuo
S7-300/400 LMNGEN_S - Determinar variable manipulada para regula­
dor paso a paso
S7-300/400 NONLIN - Linealizar señal del encóder
S7-300/400 NORM - Normalizar el valor real físicamente
S7-300/400 OVERRIDE - Aplicar variables manipuladas de 2 regulado­
res PID en 1 actuador
S7-300/400 PARA_CTL - Conmutar juegos de parámetros
S7-300/400 PID - Algoritmo PID
S7-300/400 PUSLEGEN_M - Generar impulsos para actuadores de acción
proporcional
S7-300/400 RMP_SOAK - Especificar consignas según perfil
S7-300/400 ROC_LIM - Limitar la velocidad de cambio
S7-300/400 SCALE_M - Escalar valor real
S7-300/400 SP_GEN - Especificar consigna manualmente
S7-300/400 SPLT_RAN - Dividir rangos de variable manipulada
S7-300/400 SWITCH - Aplicar valores analógicos
S7-300/400 LP_SCHED_M - Distribuir llamadas del regulador

4.2 Pasos para la configuración de un regulador por software


Todos los reguladores de software se proyectan según el mismo esquema:

Paso Descripción
1 Agregar objeto tecnológico (Página 42)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 41
Configuración de un regulador por software
4.3 Agregar objetos tecnológicos

Paso Descripción
2 Configurar objeto tecnológico (Página 43)
3 Llamar la instrucción en el programa de usuario (Página 44)
4 Cargar objeto tecnológico en el dispositivo (Página 45)
5 Poner en marcha el regulador de software (Página 46)
6 Guardar los parámetros PID optimizados en el proyecto (Página 46)
7 Comparar valores (Página 50)
8 Mostrar instancias de un objeto tecnológico (Página 70)

4.3 Agregar objetos tecnológicos

Agregar objeto tecnológico en el árbol del proyecto


Al agregar un objeto tecnológico, se genera un DB de instancia de la instrucción para este
objeto tecnológico. En él se guarda la configuración del objeto tecnológico.

Requisitos
Hay un proyecto creado con una CPU.

Procedimiento
Para agregar un objeto tecnológico, proceda del siguiente modo:
1. Abra la carpeta de la CPU en el árbol del proyecto.
2. Abra la carpeta "Objetos tecnológicos".
3. Haga doble clic en "Agregar objeto".
Se abre el cuadro de diálogo "Agregar objeto".
4. Haga clic en el botón "Regulador PID".
Se muestran todos los reguladores PID disponibles para esta CPU.
5. Seleccione la instrucción para el objeto tecnológico, p. ej., PID_Compact.
6. En el campo de entrada "Nombre", introduzca un nombre personalizado para el objeto
tecnológico.
7. Seleccione la opción "manual" si desea modificar el número de bloque de datos propuesto
para el DB de instancia.
8. Haga clic en "Más información" para guardar información propia sobre el objeto
tecnológico.
9. Confirme con "OK".

Regulación PID
42 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.4 Configurar objetos tecnológicos

Resultado
El nuevo objeto tecnológico se genera y se guarda en la capeta "Objetos tecnológicos" del
árbol del proyecto. El objeto tecnológico se utiliza, cuando la instrucción para este objeto
tecnológico se llama en un OB de alarma cíclica.

NOTA
Existe la posibilidad de activar la casilla de verificación "Agregar nuevo y abrir" situada en la
parte inferior del diálogo. De ese modo, la configuración del objeto tecnológico se abrirá una
vez agregado.

4.4 Configurar objetos tecnológicos


Puede configurar las propiedades de un objeto tecnológico en una CPU S7-1200 de dos
maneras.
• En la ventana de inspección del editor de programación
• En el editor de configuración
Puede configurar las características de un objeto tecnológico en una CPU S7-300/400 sólo en
el editor de configuración.

Ventana de inspección del editor de programación


En la ventana de inspección del editor de programación, sólo es posible configurar los
parámetros que son necesarios para el funcionamiento.
También en el modo en línea, se muestran los valores fuera de línea de los parámetros. Los
valores en línea se pueden modificar sólo en la ventana de puesta en servicio.
Para abrir la ventana de inspección del objeto tecnológico, proceda del siguiente modo:
1. Abra la carpeta "Bloques de programa" en el árbol del proyecto.
2. Haga doble clic en el bloque (OB de alarma cíclica) en el que llama la instrucción del
regulador de software.
El bloque se abre en el área de trabajo.
3. Haga clic en la instrucción del regulador de software.
4. En la ventana de inspección, seleccione una tras otra las fichas "Propiedades" y
"Configuración".

Ventana de configuración
Para cada objeto tecnológico, hay una ventana de configuración específica, en la que se
configuran todas las características.
Para abrir la ventana de configuración de un objeto tecnológico, proceda del siguiente modo:
1. Abra la carpeta "Objetos tecnológicos" en el árbol del proyecto.
2. Abra el objeto tecnológico en el árbol del proyecto.
3. Haga doble clic en el objeto "Configuración".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 43
Configuración de un regulador por software
4.5 Llamar la instrucción en el programa de usuario

Símbolos
Los símbolos que aparecen en la navegación local de la configuración y de la ventana de
inspección muestran más detalles sobre la integridad de la configuración:

La configuración contiene valores predeterminados y está completa.


La configuración sólo contiene valores predeterminados. Con ellos es posible utilizar el objeto tec­
nológico sin más modificaciones.
La configuración contiene valores definidos por el usuario o adaptados automáticamente y
está completa
Todos los campos de entrada de la configuración contienen valores válidos y se ha modificado co­
mo mínimo un valor predeterminado.
La configuración es incompleta o errónea
Como mínimo un campo de entrada o una lista desplegable está vacío o contiene un valor no váli­
do. El campo o la lista desplegable en cuestión se marca en rojo. Al hacer clic, el roll out con el aviso
de error indica la causa del error.
La características de un objeto tecnológico se describen con detalle en el capítulo para el
objeto tecnológico.

4.5 Llamar la instrucción en el programa de usuario


La instrucción del regulador de software se debe llamar en el OB de alarma cíclica. El tiempo
de muestreo del regulador de software se determina a partir del intervalo transcurrido entre
las llamadas en el OB de alarma cíclica.

Requisitos
El OB de alarma cíclica está creado y el tiempo de ciclo del OB de alarma cíclica está
configurado correctamente.

Procedimiento
Para llamar la instrucción en el programa de usuario, proceda del siguiente modo:
1. Abra la carpeta de la CPU en el árbol del proyecto.
2. Abra la carpeta "Árbol del proyecto".
3. Haga doble clic en el OB de alarma cíclica.
El bloque se abre en el área de trabajo.
4. Abra, en la ventana "Instrucciones", el grupo "Tecnología" y la carpeta "PID Control".
La carpeta contiene todas las instrucciones para los reguladores del software que se
pueden configurar en la CPU.
5. Seleccione una instrucción y arrástrela al OB de alarma cíclica correspondiente mediante
Drag & Drop.
Se abre el cuadro de diálogo "Opciones de llamada".
6. En la lista "Nombre" seleccione un objeto tecnológico o introduzca el nombre del nuevo
objeto tecnológico.

Regulación PID
44 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.6 Cargar objetos tecnológicos en el dispositivo

Resultado
Si el objeto tecnológico no existe todavía, éste se agrega. La instrucción se agrega en el OB de
alarma cíclica. El objeto tecnológico está asignado a esta llamada de la instrucción.

4.6 Cargar objetos tecnológicos en el dispositivo


Para poder utilizar una configuración nueva o modificada en el modo online es necesario
cargarla en la CPU. Al cargar datos remanentes, hay que tener en cuenta las siguientes
particularidades:
• Software (solo modificaciones)
– S7-1200, S7-1500:
Los datos remanentes se conservan.
– S7-300/400:
Los datos remanentes se actualizan de inmediato. La CPU no pasa a Stop.
•  Cargar e inicializar programa PLC en el dispositivo
– S7-1200, S7-1500:
Los datos remanentes se actualizan con la siguiente transición de Stop a RUN. El
programa PLC solo puede cargarse completo.
– S7-300/400:
Los datos remanentes se actualizan con la siguiente transición de Stop a RUN.

Cargar datos remanentes en una CPU S7-1200 o S7-1500

NOTA
La carga e inicialización del programa PLC con la instalación en marcha puede causar
importantes daños materiales y personales en caso de fallos de funcionamiento o errores de
programa.
Asegúrese de que no puedan darse situaciones de peligro antes de cargar e inicializar el
programa PLC.

Para cargar datos remanentes, proceda del siguiente modo:


1. Seleccione la entrada de la CPU en el árbol del proyecto.
2. Seleccione el comando "Cargar e inicializar programa PLC en el dispositivo" en el menú
"Online".
– Si hasta ahora no se ha establecido ninguna conexión online, se abre el cuadro de
diálogo "Carga avanzada". Ajuste en este caso todos los parámetros necesarios para la
conexión y haga clic en "Cargar".
– Una vez definida la conexión online, los datos de proyecto se compilan si es necesario y
se abre el cuadro de diálogo "Cargar vista preliminar". En este cuadro de diálogo se
muestran avisos y se indican acciones necesarias para la carga.
3. Compruebe los avisos.
Cuando la carga pueda efectuarse, el botón "Cargar" se activa.
4. Haga clic en "Cargar".
El programa PLC completo se carga y se abre el cuadro de diálogo "Cargar resultados". Este
cuadro de diálogo muestra el estado y las acciones tras el proceso de carga.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 45
Configuración de un regulador por software
4.8 Guardar los parámetros PID optimizados en el proyecto

5. Si los módulos deben volver a arrancarse directamente tras la carga, active la casilla de
verificación "Arrancar todos".
6. Cierre el cuadro de diálogo "Cargar resultados" con "Finalizar".

Resultado
El programa PLC completo se carga en el dispositivo. Se borran los bloques que solo existen
online en el dispositivo. Cargando todos los bloques implicados y borrando los bloques no
necesarios en el dispositivo, se evitan incoherencias entre los bloques en el programa de
usuario.
Los avisos de la ventana de inspección (en "Información > General") indican si el proceso de
carga ha finalizado correctamente.

4.7 Poner en marcha el regulador de software

Procedimiento
Para abrir la zona de trabajo "Puesta en servicio" de un objeto tecnológico, proceda del
siguiente modo:
1. Abra la carpeta "Objetos tecnológicos" en el árbol del proyecto.
2. Abra el objeto tecnológico en el árbol del proyecto.
3. Haga doble clic en el objeto "Puesta en servicio".
Las funciones para la puesta en servicio son específicas para cada regulador y se describen
allí.

4.8 Guardar los parámetros PID optimizados en el proyecto


El regulador de software se optimiza en la CPU. De este modo, los valores ya no coinciden con
su proyecto en el DB de instancia en la CPU.
Para actualizar los parámetros PID en el proyecto con los parámetros PID optimizados en la
CPU, proceda del siguiente modo:

Requisitos
• Hay establecida una conexión online con la CPU y esta se encuentra en el estado operativo
"RUN".
• Las funciones de la ventana de puesta en servicio se han habilitado con el botón "Iniciar".

Regulación PID
46 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.9 Trabajo con objetos multiinstancia

Procedimiento
1. Abra la carpeta de la CPU en el árbol del proyecto.
2. Abra la carpeta "Objetos tecnológicos".
3. Abra un objeto tecnológico.
4. Haga doble clic en "Puesta en servicio".
5. Haga clic en el símbolo "Cargar parámetros PID".
6. Guarde el proyecto.

Resultado
Los parámetros PID efectivos en ese momento se guardan en los datos del proyecto. Al cargar
nuevamente los datos de proyecto en la CPU, se utilizan los parámetros optimizados.

4.9 Trabajo con objetos multiinstancia


Si un bloque de función (FB) llama otro FB, sus datos de instancia pueden guardarse también
en el DB de instancia del FB que llama. Este tipo de llamada de bloque recibe el nombre de
multiinstancia. Los reguladores de software PID admiten este tipo de llamada y pueden
utilizarse como multiinstancia.

Ventajas
Utilizar multiinstancias ofrece las ventajas siguientes:
• Buenas posibilidades de estructuración
• Menor número de DB de instancia
• FB configurados individualmente como plantilla para un regulador de software que se
pueden instanciar las veces que se desee

Restricciones
Si se utilizan multiinstancias para reguladores de software PID, existen las siguientes
restricciones frente al uso como instancia individual:
• No se admite Openness para objetos multiinstancia PID.
• No se pueden comparar objetos multiinstancia PID en un editor de comparación. La
comparación solamente es posible a través del bloque que contiene los objetos
multiinstancia.
• No hay ventana de inspección del editor de programación específica de objeto tecnológico
para llamar las instrucciones PID_Compact, PID_3Step y PID_Temp.

Configuración de objetos multiinstancia


La configuración y puesta en marcha de objetos multiinstancia PID no se abre mediante la
carpeta "Objetos tecnológicos" en el árbol del proyecto, como sucede con los objetos de
instancia individual. La configuración y la puesta en marcha de los objetos multiinstancia se
encuentra en la vista detallada, dentro de la pestaña "Objetos tecnológicos".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 47
Configuración de un regulador por software
4.9 Trabajo con objetos multiinstancia

Para abrir la configuración de objetos multiinstancia, haga lo siguiente:


1. Seleccione el FB o el DB de instancia con el objeto multiinstancia en el árbol del proyecto.
2. En la vista detallada, haga clic en el ficha "Objetos tecnológicos".
3. Navegue hasta el objeto multiinstancia que desee.
4. Abra la configuración del objeto multiinstancia.

NOTA
El editor de configuración no ofrece funcionalidad online para objetos multiinstancia en un
FB. Esta limitación no existe para los DB de instancia.

Puesta en marcha de objetos multiinstancia


Para abrir la puesta en marcha de objetos multiinstancia, haga lo siguiente:
1. Seleccione el DB de instancia con el objeto multiinstancia en el árbol del proyecto.
2. En la vista detallada, haga clic en el ficha "Objetos tecnológicos".
3. Navegue hasta el objeto multiinstancia que desee.
4. Abra la puesta en marcha del objeto multiinstancia.
Esta funcionalidad no existe para los objetos multiinstancia PID en FB.

NOTA
Si los objetos multiinstancia PID se encuentran en una matriz, la navegación hasta dichos
objetos multiinstancia en la vista detallada solamente es posible si el número de elementos
de la matriz no es mayor que 100. En el caso de matrices con más de 100 elementos, los
objetos multiinstancia PID no se muestran y los editores para configuración y puesta en
marcha no están disponibles.

Ejemplo de uso de objetos multiinstancia PID


Si desea utilizar objetos multiinstancia PID para su aplicación, puede hacer lo siguiente:
1. Agregue un bloque de función a su programa.
2. Llame uno o varios reguladores PID apropiados con la opción de llamada "Multiinstancia"
en ese FB.
3. Agregue una funcionalidad propia dependiente de la aplicación en el mismo FB, p. ej.,
preprocesamiento del valor de consigna.
4. Marque el FB en el árbol del proyecto y seguidamente, en la pestaña "Objetos
tecnológicos" de la vista detallada, abra los editores de configuración de los objetos
multiinstancia PID.
5. En los editores lleve a cabo la configuración, que debe ser idéntica para todas las
instancias del bloque de función.
6. Cierre los editores de configuración.
7. Instancie el bloque de función según sea necesario en el programa de usuario, de manera
que se creen DB de instancia.

Regulación PID
48 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.10 Comparar valores

8. Marque uno de esos DB de instancia en el árbol del proyecto y seguidamente, en la


pestaña "Objetos tecnológicos" de la vista detallada, abra los editores de configuración de
los objetos multiinstancia PID.
9. En los editores lleve a cabo la configuración, que es específica para ese DB de instancia.
10. Cierre los editores de configuración.

11. Repita los pasos 8 a 10 para el resto de los DB de instancia con objetos multiinstancia PID.

12. Compile el programa, cárguelo en el aparato y establezca una conexión online.

13. En el árbol del proyecto, marque un DB de instancia que contenga objetos multiinstancia
PID y seguidamente, en la pestaña "Objetos tecnológicos" de la vista detallada, abra los
editores de puesta en marcha de los objetos multiinstancia PID.
14. Realice la puesta en marcha de los objetos multiinstancia PID.

15. Cierre los editores de puesta en marcha.

16. Repita los pasos 13 a 15 para el resto de los DB de instancia con objetos multiinstancia
PID.

4.10 Comparar valores

4.10.1 Visualización de comparación y condiciones


La función "Comparar valores" ofrece las siguientes opciones:
• Comparación de los valores de arranque configurados del proyecto con los valores de
arranque de la CPU y los valores actuales
• Procesamiento directo de los valores actuales y de los valores de arranque del proyecto
• Detección y visualización inmediatas de errores de introducción con ayuda para su
corrección
• Copia de seguridad de los valores actuales en el proyecto
• Transferencia de los valores de arranque del proyecto a la CPU como valores actuales

Símbolos y elementos de control


Están disponibles los siguientes símbolos y elementos de control:

Símbolo Función
El valor de arranque en la CPU es igual al valor de arranque configurado en el proyecto

El valor de arranque en la CPU es diferente al valor de arranque configurado en el proyec­


to
No se puede realizar la comparación entre valor de arranque en la CPU y valor de arran­
que configurado en el proyecto
Por lo menos uno de los dos valores de comparación es incorrecto desde el punto de vista
tecnológico o sintáctico

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 49
Configuración de un regulador por software
4.10 Comparar valores

Símbolo Función
Crear instantánea de los valores de observación y aplicar valores de ajuste de esa instan­
tánea como valores de arranque
Cargar valores de arranque de los valores de ajuste como valores actuales (inicializar valo­
res de ajuste)
Se abre el cuadro de diálogo "Comparar valores"

Condiciones
La función "Comparar valores" está disponible de forma ilimitada para S7-1200 y S7-1500.
Para S7-300 y S7-400 rige la siguiente limitación:
En el modo de observación, una S7-300/S7-400 no puede transferir los valores de arranque a
la CPU. Estos valores no pueden mostrarse online con "Comparar valores".
Los valores actuales del objeto tecnológico se muestran y se pueden modificar directamente.

4.10.2 Comparar valores


A continuación se muestra el procedimiento con el ejemplo de los "parámetros PID".

Requisitos
• Está configurado un proyecto con un regulador de software.
• El proyecto está cargado en la CPU.
• En el navegador de proyecto está abierto el diálogo de configuración.

Procedimiento
1. Abra el regulador de software deseado en el árbol del proyecto.
2. Haga doble clic en el objeto "Configuración".
3. Navegue al cuadro de diálogo "Parámetros PID" en la ventana de configuración.
4. Haga clic en el símbolo para activar el modo de observación.
Se muestran los símbolos y elementos de control (Página 49) de la función "Comparar
valores" detrás de los parámetros.
5. Haga clic en el campo de entrada del parámetro deseado y modifique manualmente los
valores de parámetro mediante entrada directa.
– Si el fondo del campo de entrada es gris, los valores solo son legibles, no modificables.
– Para modificar los valores en el cuadro de diálogo "Parámetros PID", active primero la
entrada manual haciendo clic en la casilla de verificación "Activar entrada manual".
6. Haga clic en el símbolo para abrir el cuadro de diálogo de los valores de arranque.
Este cuadro de diálogo muestra dos valores del parámetro:
– Valor de arranque en la CPU: En la parte superior se muestra el valor de arranque en la
CPU.
– Valor de arranque en el proyecto: En la parte inferior se muestra el valor de arranque
configurado en el proyecto.
7. Introduzca el valor deseado en el campo de entrada para el proyecto.

Regulación PID
50 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.10 Comparar valores

Detección
Se detecta la entrada de valores incorrectos. En ese caso, se ofrece ayuda para la corrección.
Si introduce un valor sintácticamente erróneo, debajo del parámetro se abre una ventana
desplegable con el correspondiente aviso de error. No se aplica el valor medido incorrecto.
Si introduce un valor tecnológicamente incorrecto, se abre un cuadro de diálogo en el que se
notifica el error y se muestra información para la corrección:
• Haciendo clic en "No" puede adoptar la corrección y corregir su entrada.
• Haciendo clic en "OK" se aplica el valor incorrecto.

ATENCIóN
Mal funcionamiento del regulador
Los valores tecnológicamente incorrectos pueden producir un mal funcionamiento del
regulador.

Copia de seguridad de los valores actuales


Haciendo clic en el símbolo se transfieren los valores actuales del regulador a los valores
de arranque de su proyecto configurado.

Transferir valores de proyecto a la CPU


Haciendo clic en el símbolo se transfieren los valores configurados de su proyecto a la
CPU.

PRECAUCIóN
Evitar daños personales y materiales
La carga e inicialización del programa de usuario en la instalación en marcha puede causar
importantes daños materiales y personales en caso de fallos de funcionamiento o errores de
programa.
Asegúrese de que no puedan darse situaciones de peligro antes de cargar e inicializar el
programa de usuario.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 51
Configuración de un regulador por software
4.11 Vista de parámetros

4.11 Vista de parámetros

4.11.1 Introducción a la vista de parámetros


La vista de parámetros le ofrece una visión de conjunto de todos los parámetros relevantes de
un objeto tecnológico. Proporciona una vista general de los ajustes de los parámetros, de
manera que usted puede modificarlos cómodamente en el modo offline y online.

①      Ficha "Vista de parámetros"


②      Barra de herramientas (Página 53)
③      Navegación (Página 54)
④      Tabla de parámetros (Página 54)

Funcionalidad
Para analizar los parámetros de los objetos tecnológicos, y para poderlos observar y forzar de
manera selectiva, hay disponibles las siguientes funciones.
Funciones de indicación:
• Indicación de los valores de parámetros en modo offline y online
• Indicación de la información de estado de los parámetros
• Indicación de desviaciones de los valores y posibilidad de corregirlas directamente
• Indicación de errores de configuración
• Indicación de variaciones de valores como consecuencia de dependencias de parámetros
• Indicación de todos los valores almacenados de un parámetro: valor de arranque en la
CPU, valor de arranque en el proyecto, valor de observación
• Indicación de la comparación de parámetros de los valores almacenados de un parámetro

Regulación PID
52 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Funciones de manejo:
• Navegación, para cambiar rápidamente entre los parámetros y las estructuras de
parámetros.
• Filtro de texto, para encontrar más rápidamente determinados parámetros.
• Función de ordenación, para adaptar el orden de parámetros y grupos de parámetros en
función de las necesidades.
• Función de almacenamiento, para guardar ajustes estructurales de la vista de parámetros.
• Observar y forzar online valores de parámetro.
• Cambiar el formato de visualización del valor.
• Guardar instantánea de valores de parámetros de la CPU para reproducir situaciones
transitorias y reaccionar a ellas.
• Aplicar instantánea de valores de parámetros como valores de arranque.
• Cargar en la CPU valores de arranque modificados.
• Funciones de comparación, para comparar entre sí valores de parámetros.

Validez
La vista de parámetros aquí descrita está disponible para los siguientes objetos tecnológicos:
• PID_Compact
• PID_3Step
• PID_Temp
• CONT_C (solo S7-1500)
• CONT_S (solo S7-1500)
• TCONT_CP (solo S7-1500)
• TCONT_S (solo S7-1500)
• TO_Axis_PTO (S7-1200 Motion Control)
• TO_Positioning_Axis (S7-1200 Motion Control)
• TO_CommandTable_PTO (S7-1200 Motion Control)
• TO_CommandTable (S7-1200 Motion Control)

4.11.2 Estructura de la vista de parámetros

[Link] Barra de herramientas

En la barra de herramientas de la vista de parámetros pueden seleccionarse las siguientes


funciones:
Símbolo Función Explicación
Observar todos Inicia la observación de los parámetros visibles en la vista de paráme­
tros activa (modo online).
Crear instantánea de los Aplica los valores de observación actuales a la columna "Instantánea" y
valores de observación y actualiza los valores de arranque en el proyecto.
aplicar valores de ajuste Solo en modo online con PID_Compact, PID_3Step y PID_Temp.
de esa instantánea como
valores de arranque

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 53
Configuración de un regulador por software
4.11 Vista de parámetros

Símbolo Función Explicación


Cargar valores de arran­ Transfiere a la CPU los valores de arranque actualizados en el proyecto.
que de los valores de Solo en modo online con PID_Compact, PID_3Step y PID_Temp.
ajuste como valores ac­
tuales (inicializar valores
de ajuste)
Crear instantánea de los Aplica los valores de observación actuales a la columna "Instantánea".
valores de observación Solo en modo online.
Forzar una vez e inmedia­ Este comando se ejecuta una sola vez y lo antes posible, sin referencia
tamente todos los pará­ a un punto determinado del programa de usuario.
metros seleccionados Solo en modo online.
Seleccionar la estructura Cambia entre la navegación orientada a funciones y la navegación
de navegación orientada a datos.
Filtro de texto... Tras introducir una cadena de caracteres: indicación de todos los pará­
metros que contienen la cadena de caracteres introducida en una de
las columnas visibles actualmente.
Seleccionar valores de Selección de los valores de parámetros que deben compararse entre sí
comparación en modo online (valor de arranque en el proyecto, valor de arranque
en la CPU, instantánea)
Solo en modo online.
Memorizar disposición Guarda los ajustes de visualización de la vista de parámetros realizados
(p. ej., estructura de navegación seleccionada, columnas activadas de
la tabla, etc.).

[Link] Navegación

Dentro de la ficha "Vista de parámetros" pueden seleccionarse como alternativa las siguientes
estructuras de navegación:
Navegación Explicación
Navegación orien­ En la navegación orientada a funciones, la estructura de los paráme­
tada a funciones tros se basa en la estructura de los cuadros de diálogo de configura­
ción (ficha "Vista de funciones"), puesta en marcha y diagnóstico.
El último grupo "Otros parámetros" contiene los restantes paráme­
tros del objeto tecnológico.

Navegación orien­ En la navegación orientada a datos, la estructura de los parámetros


tada a datos se basa en la estructura del DB de instancia/DB tecnológico.
El último grupo "Otros parámetros" contiene los parámetros que no
están incluidos en el DB de instancia/DB tecnológico.

Con la lista desplegable "Seleccionar la estructura de navegación" puede cambiar la estructura


de navegación.

Regulación PID
54 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

[Link] Tabla de parámetros

La tabla siguiente muestra el significado de las distintas columnas de la tabla de parámetros.


Las columnas pueden mostrarse u ocultarse según convenga.
• Columna "Offline" = X: la columna es visible en modo offline.
• Columna "Online" = X: la columna es visible en modo online (conexión online con la CPU).

Columna Explicación Offline Online


Nombre en la vista de Nombre del parámetro en la vista de funciones. X X
funciones Este campo de visualización está vacío en el caso de parámetros que no se confi­
guran por medio del objeto tecnológico.
Nombre completo en Ruta completa del parámetro en el DB de instancia/DB tecnológico. X X
DB Este campo de visualización está vacío en el caso de parámetros que no están in­
cluidos en el DB de instancia/DB tecnológico.
Nombre en DB Nombre del parámetro en el DB de instancia/DB tecnológico. X X
Si el parámetro es parte de una estructura o UDT, se añade el prefijo ". ./".
Este campo de visualización está vacío en el caso de parámetros que no están in­
cluidos en el DB de instancia/DB tecnológico.
Estado de la configu­ Indicación de la integridad de la configuración mediante símbolos de estado X
ración ver Estado de la configuración (offline) (Página 62)
Resultado de la com­ Resultado de la función "Comparar valores". X
paración Esta columna aparece si existe una conexión online y el botón "Observar to­
dos" está seleccionado.

Valor de arranque en Valor de arranque configurado en el proyecto. X X


el proyecto Indicación de errores en caso de valores mal introducidos desde el punto de vis­
ta sintáctico o tecnológico.
Valor predeterminado Valor predeterminado del parámetro. X X
Este campo de visualización está vacío en el caso de parámetros que no están in­
cluidos en el DB de instancia/DB tecnológico.
Instantánea Instantánea de los valores actuales en la CPU (valores de observación). X X
Indicación de errores en caso de valores incorrectos desde el punto de vista tec­
nológico.
Valor de arranque en Valor de arranque en la CPU. X
la CPU Esta columna aparece si existe una conexión online y el botón "Observar to­
dos" está seleccionado.
Indicación de errores en caso de valores incorrectos desde el punto de vista tec­
nológico.
Valor de observación Valor actual en la CPU. X
Esta columna aparece si existe una conexión online y el botón "Observar to­
dos" está seleccionado.
Indicación de errores en caso de valores incorrectos desde el punto de vista tec­
nológico.
Valor de forzado Valor con que debe modificarse el valor de observación. X
Esta columna aparece si existe una conexión online y el botón "Observar to­
dos" está seleccionado.
Indicación de errores en caso de valores mal introducidos desde el punto de vis­
ta sintáctico o tecnológico.
Selección del valor de Selección de los valores de forzado que deben transferirse por medio del botón X
forzado "Forzar una vez e inmediatamente todos los parámetros seleccionados".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 55
Configuración de un regulador por software
4.11 Vista de parámetros

Columna Explicación Offline Online


Esta columna aparece junto con la columna "Valor de forzado".

Valor mínimo Valor tecnológico más bajo del parámetro. X X


Si el valor mínimo depende de otros parámetros, entonces viene determinado:
• Offline: por los valores de arranque en el proyecto.
• Online: por los valores de observación.
Valor máximo Valor tecnológico más alto del parámetro. X X
Si el valor máximo depende de otros parámetros, entonces viene determinado:
• Offline: por los valores de arranque en el proyecto.
• Online: por los valores de observación.
Valor de ajuste Identifica el parámetro como valor de ajuste. Estos parámetros pueden iniciali­ X X
zarse online.
Tipo de datos Tipo de datos del parámetro. X X
Este campo de visualización está vacío en el caso de parámetros que no están in­
cluidos en el DB de instancia/DB tecnológico.
Remanencia Identifica el valor como remanente. X X
Los valores de los parámetros remanentes se conservan incluso después de des­
conectar la tensión de alimentación.
Accesible desde HMI Indica si HMI puede acceder a este parámetro durante el tiempo de ejecución. X X
Visible en HMI Indica si el parámetro es visible por defecto en la lista de selección de HMI. X X
Comentario Descripción abreviada del parámetro. X X

Consulte
también
Comparar valores (Página 49)

4.11.3 Abrir la vista de parámetros

Requisitos
El objeto tecnológico se ha agregado al árbol de proyectos, lo que significa que se ha
generado el correspondiente DB de instancia/DB tecnológico de la instrucción.

Procedimiento
1. Abra la carpeta "Objetos tecnológicos" en el árbol del proyecto.
2. Abra el objeto tecnológico en el árbol del proyecto.
3. Haga doble clic en el objeto "Configuración".
4. Seleccione en la esquina superior derecha la ficha "Vista de parámetros".

Resultado
Se abre la vista de parámetros. En la tabla de parámetros cada parámetro mostrado viene está
representado por una fila de la tabla.

Regulación PID
56 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Las propiedades visualizables de los parámetros (columnas de la tabla) dependen de si la vista


de parámetros está en modo offline u online.
Además, es posible mostrar y ocultar las distintas columnas de la tabla de manera selectiva.
Consulte
también
Ajuste predeterminado de la vista de parámetros (Página 57)

4.11.4 Ajuste predeterminado de la vista de parámetros

Ajustes predeterminados
Para trabajar de forma efectiva con la vista de parámetros, puede adaptar la representación
de los parámetros y guardar los ajustes realizados.
Pueden efectuarse y guardarse los siguientes ajustes:
• Mostrar y ocultar columnas
• Modificar el ancho de las columnas
• Modificar el orden de las columnas
• Cambiar la navegación
• Seleccionar un grupo de parámetros en la navegación
• Seleccionar valores de comparación

Mostrar y ocultar columnas


Para mostrar y ocultar columnas en la tabla de parámetros, proceda del siguiente modo:
1. Sitúe el puntero del ratón en el encabezado de la tabla de parámetros.
2. En el menú contextual, seleccione el comando "Mostrar/ocultar".
Se muestra la selección de las columnas disponibles.
3. Para mostrar una columna, active la casilla de verificación de la columna.
4. Para ocultar una columna, desactive la casilla de verificación de la columna.
o bien
1. Sitúe el puntero del ratón en el encabezado de la tabla de parámetros.
2. En el menú contextual, seleccione el comando "Mostrar todas las columnas" si desea
mostrar todas las columnas del modo offline u online.
Algunas columnas solo pueden mostrarse en modo online: ver Tabla de parámetros (Página
54).

Modificar el ancho de las columnas


Para adaptar el ancho de una columna al contenido de manera que pueda leerse todo el texto
de las filas, proceda del siguiente modo:
1. Sitúe el puntero del ratón en el encabezado de la tabla de parámetros, a la derecha junto a
la columna que se desea optimizar, hasta que el puntero del ratón adopte la forma de una
cruz.
2. Haga doble clic en este punto.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 57
Configuración de un regulador por software
4.11 Vista de parámetros

o bien
1. Abra el menú contextual del encabezado de la tabla de parámetros.
2. Haga clic en
– "Optimizar ancho de columna" o
– "Optimizar ancho de todas las columnas".
Situando brevemente el puntero del ratón sobre el campo en cuestión, aparece el contenido
completo de los distintos campos en las columnas de ancho insuficiente.

Modificar el orden de las columnas


Las columnas de la tabla de parámetros pueden situarse donde se desee.
Para modificar el orden de las columnas, proceda del siguiente modo:
1. Haga clic sobre el encabezado de la columna, arrástrelo y suéltelo en el lugar deseado.
Cuando suelte el botón del ratón, la columna se anclará en la nueva posición.

Cambiar la navegación
Para cambiar la estructura de visualización de los parámetros, proceda del siguiente modo:
1. Seleccione la navegación que desee en la lista desplegable "Seleccionar la estructura de
navegación":
– Navegación orientada a datos
– Navegación orientada a funciones
Ver también Navegación (Página 54).

Seleccionar un grupo de parámetros en la navegación


Dentro de la navegación elegida puede optar entre la visualización "Todos los parámetros" o
la visualización de un grupo de parámetros subordinado deseado.
1. Haga clic sobre el grupo de parámetros deseado en la navegación.
En la tabla de parámetros se muestran solo los parámetros del grupo de parámetros.

Seleccionar valores de comparación (online)


Para ajustar los valores de comparación para la función "Comparar valores", proceda del
siguiente modo:
1. Seleccione en la lista desplegable "Seleccionar valores de comparación" los valores de
comparación que desee:
– Valor de arranque en el proyecto / valor de arranque en la CPU
– Valor de arranque en el proyecto / instantánea
– Valor de arranque en la CPU / instantánea
Por defecto está ajustada la opción "Valor de arranque en el proyecto / Valor de arranque en la
CPU".

Regulación PID
58 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Guardar el ajuste predeterminado de la vista de parámetros


Para guardar las modificaciones anteriores de la vista de parámetros, proceda del siguiente
modo:
1. Adapte la vista de parámetros en función de sus necesidades.
2. Haga clic en el botón "Memorizar disposición" situado en la parte superior derecha de la
vista de parámetros.

4.11.5 Trabajar con la vista de parámetros

[Link] Sinopsis

La siguiente tabla ofrece una vista general de las funciones de la vista de parámetros que se
describen a continuación en los modos online y offline.
• Columna "Offline" = X: esta función está disponible en modo offline.
• Columna "Online" = X: esta función está disponible en modo online.

Función/acción Offline Online


Filtrar la tabla de parámetros (Página 59) X X
Ordenar la tabla de parámetros (Página 60) X X
Aplicar datos de parámetros en otros editores (Página 60) X X
Mostrar errores (Página 61) X X
Editar valores de arranque en el proyecto (Página 61) X X
Estado de la configuración (offline) (Página 62) X
Observar online los valores en la vista de parámetros (Página 63) X
Crear instantánea de los valores de observación (Página 65) X
Forzar valores (Página 66) X
Comparar valores (Página 67) X
Aplicar valores como valores de arranque desde el programa online (Página X
68)
Inicializar los valores de ajuste en el programa online (Página 69) X

[Link] Filtrar la tabla de parámetros

Los parámetros de la tabla de parámetros pueden filtrarse de las siguientes maneras:


• Con el filtro de texto
• Con los subgrupos de la navegación
Los dos métodos de filtrado pueden utilizarse simultáneamente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 59
Configuración de un regulador por software
4.11 Vista de parámetros

Con el filtro de texto


Puede filtrarse por los textos que son visibles en la tabla de parámetros. Esto significa que
solo se puede filtrar por los textos de las líneas de parámetros y columnas mostradas.
1. Introduzca en el campo de entrada "Filtro de texto..." la cadena de caracteres por la que
desee filtrar.
La tabla de parámetros solo muestra aquellos parámetros que contienen la cadena de
caracteres.
El filtro de texto se restablece:
• Seleccionando otro grupo de parámetros en la navegación.
• Cambiando entre la navegación orientada a datos y a funciones.

Con los subgrupos de la navegación


1. Haga clic sobre el grupo de parámetros deseado en la navegación, p. ej., "Static".
En la tabla de parámetros se muestran solo los parámetros "Static". En algunos grupos de
la navegación puede seleccionar otros subgrupos.
2. Haga clic sobre "Todos los parámetros" en la navegación si desea volver a mostrar todos
los parámetros.

[Link] Ordenar la tabla de parámetros

Los valores de los parámetros están dispuestos por filas. La tabla de parámetros puede
ordenarse según cualquiera de las columnas mostradas.
• En las columnas con valores numéricos se ordena según la altura del valor numérico.
• En las columnas con texto se ordena alfabéticamente.

Ordenar por columnas


1. Sitúe el puntero del ratón en el encabezado de la columna deseada.
El fondo de esta celda se marca en azul.
2. Haga clic sobre el encabezado de la columna.

Resultado
Toda la tabla de parámetros se ordena según la columna marcada. En el encabezado de la
columna aparece un triángulo con la punta hacia arriba.
Haciendo clic de nuevo sobre el encabezado de la columna, el orden cambia de la siguiente
manera:
• Símbolo "▲": la tabla de parámetros se ordena de manera ascendente.
• Símbolo "▼": la tabla de parámetros se ordena de manera descendente.
• Ningún símbolo: se anula la ordenación. La tabla de parámetros adopta la vista
predeterminada.
En la ordenación se ignora el prefijo "../" de la columna "Nombre en DB".

Regulación PID
60 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

[Link] Aplicar datos de parámetros en otros editores

Una vez seleccionada toda una fila de parámetros de la tabla de parámetros, con
• arrastrar y soltar
• <Ctrl+C>/<Ctrl+V>
• copiar/pegar por medio del menú contextual
pueden aplicarse parámetros en los siguientes editores del TIA Portal:
• en el editor de programas;
• en la tabla de observación;
• en la tabla de señales para Trace.
El parámetro se añade con el nombre completo: ver indicación en la columna "Nombre
completo en DB".

[Link] Mostrar errores

Señalización de errores
Los errores de parametrización que conllevan errores de compilación (p. ej., rebase de límite),
se indican en la vista de parámetros.
Cada vez que se introduce un valor en la vista de parámetros, se comprueba y muestra de
inmediato la corrección tecnológica y sintáctica.
Los valores erróneos se indican con:
• Un símbolo de error rojo en las columnas "Estado de la configuración" (modo offline) o
"Resultado de la comparación" (modo online, en función del tipo de comparación elegido)
y/o
• El campo de la tabla con el fondo rojo
Al hacer clic sobre el campo erróneo, se muestra el mensaje de error desplegable que
indica el rango de valores admisible o la sintaxis requerida (formato)

Errores de compilación
Desde el mensaje de error del compilador puede abrirse directamente la vista de parámetros
(navegación orientada a funciones) con el parámetro causante del error para aquellos
parámetros que no se muestren en el cuadro de diálogo de configuración.

[Link] Editar valores de arranque en el proyecto

Con la vista de parámetros pueden editarse los valores de arranque en el proyecto en los
modos offline y online:
• Los valores se modifican en la columna "Valor de arranque en el proyecto" de la tabla de
parámetros.
• En la columna "Estado de la configuración" de la tabla de parámetros se muestra el
progreso de la configuración mediante los símbolos de estado conocidos del cuadro de
diálogo de configuración del objeto tecnológico.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 61
Configuración de un regulador por software
4.11 Vista de parámetros

Condiciones
• Si hay otros parámetros que dependen del parámetro cuyo valor de arranque se ha
modificado, el valor de arranque del parámetro dependiente se adapta igualmente.
• Si un parámetro de un objeto tecnológico no es editable, tampoco lo es en la vista de
parámetros. La posibilidad de edición de un parámetro puede depender también de los
valores de otros parámetros.

Definir nuevos valores de arranque


Para especificar valores de arranque para parámetros en la vista de parámetros, proceda del
siguiente modo:
1. Abra la vista de parámetros del objeto tecnológico.
2. Introduzca en la columna "Valor de arranque en el proyecto" los valores de arranque
deseados. El valor debe ser conforme al tipo de datos del parámetro y no debe rebasar el
rango de valores del parámetro.
En las columnas "Valor máximo" y "Valor mínimo" se muestran los valores límite del rango
de valores.
En la columna "Estado de la configuración" se muestra el "progreso" de la configuración
mediante símbolos de colores.
Ver también Estado de la configuración (offline) (Página 62)
Una vez adaptados los valores de arranque y cargado el objeto tecnológico en la CPU, los
parámetros adoptan durante el arranque el valor definido, siempre y cuando estos
parámetros estén declarados como remanentes (columna "Remanencia").

Señalización de errores
Cuando se introduce un valor de arranque, se comprueba y muestra de inmediato la
corrección tecnológica y sintáctica:
Los valores de arranque erróneos se indican con
• Un símbolo de error rojo en las columnas "Estado de la configuración" (modo offline) o
"Resultado de la comparación" (modo online, en función del tipo de comparación elegido)
y/o
• Un fondo rojo en el campo "Valor de arranque en el proyecto"
Al hacer clic sobre el campo erróneo, se muestra el mensaje de error desplegable que
indica el rango de valores admisible o la sintaxis requerida (formato)

Corregir valores de arranque erróneos


1. Corrija los valores de arranque erróneos con ayuda de la información del mensaje de error
desplegable.
El símbolo de error rojo, el fondo rojo del campo y el mensaje de error desplegable dejarán
de mostrarse.
El proyecto solo puede compilarse correctamente con valores de arranque correctos.

Regulación PID
62 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

[Link] Estado de la configuración (offline)

El estado de la configuración se indica mediante símbolos:


• En la columna "Estado de la configuración" en la tabla de parámetros
• En la estructura de navegación de la navegación orientada a funciones o la navegación
orientada a datos

Símbolo en la columna "Estado de la configuración"

Símbolo Significado
El valor de arranque del parámetro coincide con el valor predeterminado y es válido. El
usuario todavía no ha definido ningún valor de arranque.
El valor de arranque del parámetro contiene un valor definido por el usuario o adaptado
automáticamente. El valor de arranque difiere del valor predeterminado. El valor de
arranque no contiene errores y es válido.
El valor de arranque del parámetro no es válido (error sintáctico o tecnológico).
El campo de entrada tiene fondo rojo. Al hacer clic, el roll out con el aviso de error indica
la causa del error.
Solo con S7-1200 Motion Control:
El valor de arranque del parámetro es válido, pero contiene advertencias.
El campo de entrada tiene fondo amarillo.
El parámetro no es relevante en la configuración actual.

Símbolo en la navegación
Los símbolos en la navegación muestran el "progreso" de la configuración de la misma
manera que en el cuadro de diálogo de configuración del objeto tecnológico.
Consulte
también
Configurar objetos tecnológicos (Página 43)

[Link] Observar online los valores en la vista de parámetros

Es posible observar directamente en la vista de parámetros los valores que los parámetros del
objeto tecnológico van adoptando actualmente en la CPU (valores de observación).

Requisitos
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 63
Configuración de un regulador por software
4.11 Vista de parámetros

Procedimiento
1. Inicie la observación haciendo clic en el símbolo .
En cuanto la vista de parámetros esté online, se mostrarán también las siguientes
columnas:
– Resultado de la comparación
– Valor de arranque en la CPU
– Valor de observación
– Valor de forzado
– Selección del valor de forzado
La columna "Valor de observación" muestra los valores actuales de los parámetros en la
CPU.
Significado de las demás columnas: ver Tabla de parámetros (Página 54)
2. La observación se finaliza haciendo clic de nuevo en el símbolo .

Indicación
Todas las columnas disponibles únicamente online tienen fondo naranja:
• Los valores de las celdas naranja claro se pueden modificar.
• Los valores de las celdas con fondo naranja oscuro no admiten modificaciones.

[Link] Cambio del formato de visualización del valor

El formato de visualización del valor puede seleccionarse en el menú contextual de una fila en
la vista de parámetros del objeto tecnológico.
El formato de visualización de los siguientes valores puede cambiarse tanto en modo online
como offline:
• Valor de arranque en el proyecto
• Valor de arranque en la CPU
• Valor máximo
• Valor mínimo
• Instantánea
• Valor de observación
• Valor predeterminado
• Valor de forzado
El formato de visualización configurado se aplica a todos los valores de la fila.
Pueden modificarse los siguientes formatos de visualización del valor:
• Predeterminado
• Hex
• Octal
• Bin
• Dec (+/-)
• DEC

Regulación PID
64 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Solo pueden elegirse los formatos de visualización soportados dependiendo del parámetro
seleccionado en la vista de parámetros.

Requisitos
• La vista de parámetros del objeto tecnológico está abierta.

Procedimiento
Para cambiar el formato de visualización del valor, haga lo siguiente:
1. Seleccione una o varias filas en las que desee cambiar el formato de visualización.
2. Seleccione el comando "Formato visualización" en el menú contextual.
3. Seleccione el formato de visualización deseado.

NOTA
Para modificar el formato de visualización de un tipo de datos determinado en varias filas,
ordene la vista de parámetros por este tipo de datos. A continuación, seleccione la primera y
la última fila con este tipo de datos manteniendo pulsada la tecla <Mayús> y modifique el
formato de visualización de las filas seleccionadas.

[Link] Crear instantánea de los valores de observación

Es posible guardar los valores actuales del objeto tecnológico en la CPU (valores de
observación) y mostrarlos en la vista de parámetros.

Requisitos
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.
• El botón "Observar todos" está activado.

Procedimiento
Para mostrar los valores actuales de los parámetros, proceda del siguiente modo:
1. Haga clic en la vista de parámetros sobre el símbolo "Crear instantánea de los valores de
observación".

Resultado
Los valores de observación actuales se aplican una vez en la columna "Instantánea" de la tabla
de parámetros.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 65
Configuración de un regulador por software
4.11 Vista de parámetros

Los valores "congelados" así pueden analizarse mientras que los valores de observación de la
columna "Valores de observación" se siguen actualizando.

[Link] Forzar valores

Con la vista de parámetros puede forzar los valores del objeto tecnológico en la CPU.
Puede asignar valores al parámetro (valor de forzado) una sola vez y forzarlos de inmediato.
Al ejecutar esta función la orden de forzado se lleva a cabo lo antes posible, sin referencia a
un punto determinado del programa de usuario.

PELIGRO
Peligro en el forzado:
Una modificación de los valores de los parámetros con la instalación en marcha puede
causar importantes daños materiales y personales en caso de fallos de funcionamiento o
errores de programa.
Asegúrese de que no puedan darse situaciones de peligro antes de ejecutar la función
"Forzar".

Requisitos
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.
• El botón "Observar todos" está activado.
• El parámetro puede forzarse (el campo correspondiente en la columna "Valor de forzado"
tiene fondo naranja claro).

Procedimiento
Para forzar parámetros inmediatamente, proceda del siguiente modo:
1. Introduzca los valores de forzado deseados en la columna "Valores de forzado" de la tabla
de parámetros.
2. Compruebe si se ha activado la casilla de verificación para el forzado en la columna
"Selección del valor de forzado".
Los valores de forzado y las casillas de verificación correspondientes de los parámetros
dependientes se adaptan también automáticamente.
3. Haga clic en el símbolo "Forzar una vez e inmediatamente todos los parámetros
seleccionados".
Los parámetros seleccionados se fuerzan una vez e inmediatamente con los valores
especificados y pueden observarse en la columna "Valores de observación". Las casillas de
verificación para el forzado en la columna "Selección del valor de forzado" se desactivan
automáticamente una vez ejecutada la orden de forzado.

Regulación PID
66 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Señalización de errores
Cuando se introduce un valor de forzado, se comprueba y muestra de inmediato la corrección
tecnológica y sintáctica:
Los valores de forzado erróneos se indican con
• Un fondo rojo en el campo "Valor de forzado"
y
• Al hacer clic sobre el campo erróneo, se muestra el mensaje de error desplegable que
indica el rango de valores admisible o la sintaxis requerida (formato)

Valores de forzado erróneos


• Los valores de forzado erróneos desde el punto de vista tecnológico pueden transferirse.
• Los valores de forzado erróneos desde el punto de vista sintáctico no pueden transferirse.

[Link] Comparar valores

Las funciones de comparación permiten comparar los siguientes valores almacenados de un


parámetro:
• Valor de arranque en el proyecto
• Valor de arranque en la CPU
• Instantánea

Requisitos
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.
• El botón "Observar todos" está activado.

Procedimiento
Para comparar los valores de arranque de los diversos sistemas de destino, proceda del
siguiente modo:
1. Haga clic en el símbolo "Seleccionar valores de comparación".
Se abre una lista desplegable con las opciones de comparación:
– Valor de arranque en el proyecto - valor de arranque en la CPU (ajuste predeterminado)
– Valor de arranque en el proyecto - instantánea
– Valor de arranque en la CPU - instantánea

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 67
Configuración de un regulador por software
4.11 Vista de parámetros

2. Elija la opción de comparación que desee.


La opción de comparación seleccionada se ejecuta de la siguiente manera:
– En las celdas del encabezado de las dos columnas seleccionadas para la comparación
aparece un símbolo con una balanza.
– En la columna "Resultado de la comparación" se muestra mediante símbolos el
resultado de la comparación de las columnas seleccionadas.

Símbolo en la columna "Resultado de la comparación"

Símbolo Significado
Los valores de comparación son iguales y no contienen errores.

Los valores de comparación son distintos y no contienen errores.

Por lo menos uno de los dos valores de comparación es incorrecto desde el punto de vista
tecnológico o sintáctico.
No se ha podido llevar a cabo la comparación. Por lo menos uno de los dos valores de
comparación no está disponible (p. ej., instantánea).
No tiene sentido comparar el valor, ya que no es relevante en una de las configuraciones.

Símbolo en la navegación
Los símbolos se muestran de la misma manera en la navegación cuando el resultado de la
comparación se cumple como mínimo para uno de los parámetros de debajo de la estructura
de navegación mostrada.

[Link] Aplicar valores como valores de arranque desde el programa online

Para aplicar al proyecto en un paso valores optimizados de la CPU como valores de arranque,
genere una instantánea de los valores de observación. A continuación, los valores de la
instantánea marcados como "Valor de ajuste" se aplicarán como valores de arranque en el
proyecto.

Requisitos
• El objeto tecnológico es de tipo "PID_Compact", "PID_3Step" o "PID_Temp".
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.
• El botón "Observar todos" está activado.

Regulación PID
68 Manual de funciones, 11/2022, A5E35300231-AF
Configuración de un regulador por software
4.11 Vista de parámetros

Procedimiento
Para aplicar valores optimizados de la CPU, proceda del siguiente modo:
1. Haga clic en el símbolo "Crear instantánea de los valores de observación y aplicar
valores de ajuste de esa instantánea como valores de arranque".

Resultado
Los valores de observación actuales se aplican a la columna "Instantánea" y sus valores de
ajuste se copian como valores de arranque nuevos en la columna "Valor de arranque en el
proyecto".

NOTA
Aplicar valores de parámetros individuales
También es posible aplicar los valores de determinados parámetros que no estén marcados
como valor de ajuste de la columna "Instantánea" a la columna "Valores de arranque en el
proyecto". Para ello copie los valores con ayuda de los comandos "Copiar"·y "Pegar" del menú
contextual y péguelos en la columna "Valor de arranque en el proyecto".

[Link] Inicializar los valores de ajuste en el programa online

Todos los parámetros marcados en la vista de parámetros como "Valor de ajuste" se pueden
inicializar en la CPU con nuevos valores en un solo paso. Para ello se deben cargar los valores
de arranque del proyecto en la CPU. La CPU se mantiene en el estado operativo "RUN".
Para evitar una pérdida de datos en la CPU al arrancar en frío o al reiniciar (arranque en
caliente), es necesario cargar también el objeto tecnológico en la CPU.

PELIGRO
Peligro al modificar valores de parámetros
Una modificación de los valores de los parámetros con la instalación en marcha puede
causar importantes daños materiales y personales en caso de fallos de funcionamiento o
errores de programa.
Asegúrese de que no puedan darse situaciones de peligro antes de reinicializar los valores de
ajuste.

Requisitos
• El objeto tecnológico es de tipo "PID_Compact", "PID_3Step" o "PID_Temp".
• Existe una conexión online.
• El objeto tecnológico está cargado en la CPU.
• La ejecución del programa está activa (CPU en "RUN").
• La vista de parámetros del objeto tecnológico está abierta.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 69
Configuración de un regulador por software
4.12 Mostrar el DB de instancia de un objeto tecnológico

• El botón "Observar todos" está activado.


• Los parámetros marcados como " disponen de un "Valor de arranque en el proyecto" sin
errores tecnológicos ni sintácticos.

Procedimiento
Para inicializar todos los valores de ajuste, proceda del siguiente modo:
1. Introduzca los valores deseados en la columna "Valor de arranque en el proyecto".
Compruebe que los valores de arranque no contengan errores tecnológicos o sintácticos.
2. Haga clic en el símbolo "Cargar valores de arranque de los valores de ajuste como
valores actuales".

Resultado
Los valores de ajuste de la CPU se inicializan con los valores de arranque del proyecto.

4.12 Mostrar el DB de instancia de un objeto tecnológico


Para cada objeto tecnológico, se crea un DB de instancia, en el que están guardados los
parámetros y las variables estáticas.

Procedimiento
Para mostrar el DB de instancia de un objeto tecnológico, proceda del siguiente modo:
1. Abra la carpeta de la CPU en el árbol del proyecto.
2. Abra la carpeta "Objetos tecnológicos".
3. Marque un objeto tecnológico.
4. Seleccione la orden "Abrir en el editor DP" en el menú contextual.

Regulación PID
70 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact 5
5.1 Objeto tecnológico PID_Compact
El objeto tecnológico PID_Compact ofrece un regulador PID continuo con optimización
integrada. Asimismo, también es posible configurar un regulador de impulsos. Es posible
elegir entre el modo manual y el automático.
PID-Compact registra de forma continua el valor real medido dentro de un lazo de regulación
y lo compara con la consigna deseada. A partir del error de regulación resultante, la
instrucción PID_Compact calcula un valor de salida, con el que el valor real se iguala con la
consigna con la máxima rapidez y estabilidad. En los reguladores PID, el valor de salida se
compone de tres acciones:
• Acción P
La acción P del valor de salida aumenta proporcionalmente al error de regulación.
• Acción I
La acción I del valor de salida aumenta hasta que se compensa el error de regulación.
• Acción D
La acción D aumenta con una velocidad de variación creciente del error de regulación. El
valor real se iguala lo más rápidamente posible con la consigna. Si la velocidad de
variación del error de regulación vuelve a reducirse, también lo hace la acción D.
La instrucción PID_Compact calcula los parámetros P, I y D para su sistema regulado de forma
autónoma durante la optimización inicial. Los parámetros pueden optimizarse aún más a
través de una optimización fina. No es necesario determinar los parámetros manualmente.

Información adicional
• Vista general de los reguladores de software (Página 40)
• Agregar objetos tecnológicos (Página 42)
• Configurar objetos tecnológicos (Página 43)
• Configurar PID_Compact V2 (Página 71-72)
• Configurar PID_Compact V1 (Página 91)

Preguntas frecuentes (FAQ)


Para más información al respecto, consulte la siguiente pregunta frecuente (FAQ) en el
Siemens Industry Online Support:
• ID de artículo 79047707 ([Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 71
Utilizar PID_Compact
5.2 PID_Compact V2

5.2 PID_Compact V2

5.2.1 Configurar PID_Compact V2

[Link] Ajustes básicos V2

Configure las propiedades siguientes del objeto tecnológico PID_Compact en el área de


ajustes básicos de la ventana de inspección o de configuración.
• Magnitud física
• Sentido de regulación
• Comportamiento en arranque después de un reset
• Consigna (sólo en la ventana de inspección)
• Valor real (sólo en la ventana de inspección)
• Valor de salida (sólo en la ventana de inspección)

Consigna, valor real y valor de salida


La consigna, el valor real y el valor de salida sólo pueden configurarse en la ventana de
inspección del editor de programación. Para cada salida digital elija la fuente:
• DB de instancia
Se utiliza el valor que se encuentra almacenado en el DB de instancia.
El valor debe actualizarse en el DB de instancia del programa de usuario.
En la instrucción no puede haber ningún valor.
Modificación posible desde HMI.
• Instrucción
Se utiliza el valor que se conecta con la instrucción.
Cada vez que se llama la instrucción, el valor se escribe en el DB de instancia.
No se puede modificar desde HMI.

Magnitud física
En el grupo "Tipo de regulación", seleccione la magnitud física y la unidad de la consigna y del
valor real. La consigna y el valor real se mostrarán en esta unidad.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal.
PID_Compact no funciona con ganancia proporcional negativa. Para reducir el valor real con
un valor de salida más elevado, active la casilla de verificación "Inversión sentido de
regulación".
Ejemplos
• Al abrir una válvula de escape se reduce el nivel de llenado de un recipiente.
• Si se aumenta la potencia de refrigeración, disminuye la temperatura.

Regulación PID
72 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

Comportamiento en arranque
1. Para cambiar inmediatamente al modo de operación "Inactivo" tras el rearranque de la
CPU, desactive la casilla de verificación "Activar Mode tras rearrancar la CPU".
Para cambiar inmediatamente, tras el rearranque de la CPU, al modo de operación
almacenado en Mode, active la casilla de verificación "Activar Mode tras rearrancar la
CPU".
2. En la lista desplegable "Poner Mode a", seleccione el modo de operación que debe
activarse tras una carga completa en el dispositivo.
Tras una carga completa en el dispositivo, PID_Compact arranca en el modo de operación
seleccionado. Con cada rearranque, PID_Compact arranca en el último modo de operación
almacenado en Mode.
Ejemplo
Se ha activado la casilla de verificación "Activar Mode tras rearrancar la CPU" y se ha
seleccionado la entrada "Optimización inicial" en la lista "Poner Mode a". Tras una carga
completa en el dispositivo, PID_Compact arranca en el modo de operación "Optimización
inicial". Si la optimización inicial aún está activa y se rearranca la CPU, PID_Compact arranca
de nuevo en el modo de operación "Optimización inicial". Si la optimización inicial ha
finalizado correctamente, el modo automático aún está activo y se rearranca la CPU,
PID_Compact arranca en "Modo automático".

Procedimiento
Para especificar una consigna fija, proceda del siguiente modo:
1. Seleccione "DB de instancia".
2. Introduzca una consigna, como puede ser 80 °C.
3. En caso necesario, elimine una entrada de la instrucción.
Para especificar una consigna variable, proceda del siguiente modo:
1. Seleccione "Instrucción".
2. Indique el nombre de la variable REAL en la que está almacenada la consigna.
Es posible asignar varios valores controlados por programa a la variable REAL para, por
ejemplo, modificar la consigna de tiempo de forma controlada.

Si utiliza directamente el valor de la entrada analógica, PID_Compact escala el valor de la


entrada analógica al tamaño físico.
Si se desea acondicionar el valor de la entrada analógica, es preciso escribir un programa
propio para su acondicionamiento. Por ejemplo, el valor real no es directamente proporcional
al valor de la entrada analógica. El valor real acondicionado debe estar en formato de coma
flotante.

Procedimiento
Para utilizar directamente el valor de la entrada analógica, proceda del siguiente modo:
1. En la lista desplegable "Input", seleccione la entrada "Input_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 73
Utilizar PID_Compact
5.2 PID_Compact V2

Para utilizar el valor real acondicionado en el formato de coma flotante, proceda del siguiente
modo:
1. En la lista desplegable "Input", seleccione la entrada "Input".
2. Seleccione "Instrucción" como fuente.
3. Indique el nombre de la variable en la que está almacenado el valor real acondicionado.

PID_Compact ofrece tres valores de salida. El valor de salida que se utilice dependerá del
actuador.
• Output_PER
El actuador se activa a través de una salida analógica y se controla con una señal continua,
como puede ser 0 a 10 V, 4 a 20 mA.
• Output
El valor de salida debe acondicionarse mediante el programa de usuario, por ejemplo,
porque el actuador muestra un comportamiento no lineal.
• Output_PWM
El actuador se controla a través de una salida digital. Una modulación de ancho de
impulsos permite formar tiempos de conexión y desconexión variables.

Procedimiento
Para utilizar el valor de salida analógico, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output_PER" (analógica).
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida analógica.
Para acondicionar el valor de salida mediante el programa de usuario, proceda del siguiente
modo:
1. En la lista desplegable "Output", seleccione la entrada "Output".
2. Seleccione "DB de instancia".
El valor de salida calculado se guarda en DB de instancia.
3. Para acondicionar el valor de salida utilice el parámetro de salida Output.
4. Transfiera el valor de salida acondicionado hasta el actuador a través de una salida digital
o analógica de la CPU.
Para utilizar el valor de salida digital, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output_PWM".
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida digital.

[Link] Ajustes de valor real V2

Si en los ajustes básicos ha configurado el uso de Input_PER, deberá convertir el valor de la


entrada analógica a la magnitud física del valor real. En el cuadro de visualización Input_PER
se muestra la configuración actual.
Si el valor real es directamente proporcional al valor de la entrada analógica, Input_PER se
escalará a partir de un par de valores inferior y superior.

Regulación PID
74 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

Procedimiento
Para escalar el valor real, haga lo siguiente:
1. En los campos de entrada "Valor real inferior escalado" y "abajo", introduzca el par de
valores inferior.
2. En los campos de entrada "Valor real superior escalado" y "arriba", introduzca el par de
valores superior.
La configuración hardware contiene pares de valores predeterminados. Para utilizar los pares
de valores contenidos en la configuración hardware, haga lo siguiente:
1. Seleccione en el editor de programación la instrucción PID_Compact.
2. En los ajustes básicos, interconecte Input_PER con una entrada analógica.
3. En los ajustes del valor real, haga clic en el botón "Ajuste automático".
Los valores existentes se sobrescribirán con los valores de la configuración hardware.

Como valores límite para el sistema regulado defina los límites superior e inferior absolutos
del valor real de modo que sean razonables. Tan pronto como dichos valores se rebasen por
exceso o defecto, se producirá un error (ErrorBits = 0001h). La optimización se cancela
cuando se rebasan los valores reales. Configure en los ajustes de los valores de salida cómo
debe reaccionar PID_Compact en caso de error en el modo automático.

[Link] Ajustes avanzados V2

Configure un límite de advertencia inferior y uno superior para el valor real en la ventana de
configuración "Monitorización del valor real". Si durante el funcionamiento se rebasa uno de
los límites de advertencia por defecto o por exceso, se muestra una advertencia en la
instrucción "PID_Compact".
• En el parámetro de salida "InputWarning_H", si se ha rebasado por exceso el límite
superior de advertencia
• En el parámetro de salida "InputWarning_L", si se ha rebasado por defecto el límite inferior
de advertencia
Los límites de advertencia deben encontrarse dentro de los límites superior e inferior del valor
real.
Si no introduce ningún valor, se utilizan los límites superior e inferior del valor real.

Ejemplo
Límite superior del valor real = 98 °C; límite superior de advertencia = 90 °C
Límite inferior de advertencia = 10 ℃; límite inferior del valor real = 0 ℃
PID_Compact se comporta del modo siguiente:

Valor real InputWarning_H InputWarning_L ErrorBits Modo de opera­


ción
> 98 °C TRUE FALSE 0001h Inactivo o
valor de salida susti­
tutivo con monitori­
zación de errores
≤ 98 °C y > 90 °C TRUE FALSE 0000h Modo automático

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 75
Utilizar PID_Compact
5.2 PID_Compact V2

Valor real InputWarning_H InputWarning_L ErrorBits Modo de opera­


ción
≤ 90 °C y ≥ 10 °C FALSE FALSE 0000h Modo automático
< 10°C y ≥ 0 °C FALSE TRUE 0000h Modo automático
< 0 °C FALSE TRUE 0001h Inactivo o
valor de salida susti­
tutivo con monitori­
zación de errores
Configure en los ajustes de los valores de salida cómo debe reaccionar PID_Compact si se
rebasa el límite superior o inferior del valor real.
Consulte
también
Parámetros State y Mode V2 (Página 244)

Una modulación de ancho de impulsos transforma el valor del parámetro de salida Output en
un tren de impulsos que se emite por el parámetro de salida Output_PWM.
Output se calcula en el tiempo de muestreo Algoritmo PID. El tiempo de muestreo se utiliza
como duración del período de la modulación por ancho de impulso.
El tiempo de muestreo Algoritmo PID se determina durante la optimización inicial o la
optimización fina. Al ajustar los parámetros PID manualmente, debe configurarse también ahí
el tiempo de muestreo Algoritmo PID.
Output_PWM se emite en el tiempo de muestreo PID_Compact. El tiempo de muestreo
PID_Compact equivale al tiempo de ciclo del OB invocante.

Regulación PID
76 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

La duración del impulso es proporcional al valor de Output y es siempre un múltiplo entero


del tiempo de muestreo PID_Compact.
2XWSXW









W PV
2XWSXWB3:0

758(

)$/6(
W PV



 

① Tiempo de muestreo PID_Compact


② Tiempo de muestreo Algoritmo PID
③ Duración del impulso
④ Duración de la pausa
"Tiempo conexión mín." y "Tiempo de desconex. mín." se redondean a un múltiplo entero del
tiempo de muestreo PID_Compact.
Un impulso o una pausa nunca son más cortas que los tiempos de conexión o desconexión
mínimos. Las imprecisiones que se producen se suman y se compensan en el siguiente ciclo.
Ejemplo
Tiempo de muestreo PID_Compact (equivale al tiempo de ciclo del OB que efectúa la llamada)
= 100 ms
Tiempo de muestreo Algoritmo PID (equivale a la duración del periodo)= 1000 ms
Tiempo conexión mín. = 200 ms

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 77
Utilizar PID_Compact
5.2 PID_Compact V2

Output es constante del 15%. El mínimo impulso que PID_Compact puede emitir es del 20 %
En el primer ciclo no se emite ningún impulso. En el segundo ciclo, el impulso no emitido del
primer ciclo se agrega al impulso del segundo ciclo.
2XWSXW








2XWSXWB3:0 W PV

758(

)$/6(
W PV


① Tiempo de muestreo PID_Compact


② Tiempo de muestreo Algoritmo PID
⑤ Tiempo conexión mín.
Para reducir la frecuencia de conmutación y proteger el actuador, prolongue los tiempos de
conexión y desconexión mínimos.
Si se utiliza "Output" o "Output_PER", los tiempos mínimos de conexión y desconexión deben
configurarse con el valor 0.0.

NOTA
Los tiempos mínimos de conexión y desconexión actúan solo en el parámetro de salida
Output_PWM y no se utilizan para posibles generadores de impulsos integrados en la CPU.

Límites del valor de salida


Configure en tantos por ciento los límites absolutos del valor de salida en la ventana de
configuración "Límites del valor de salida". Los límites del valor de salida absolutos no se
rebasan ni por exceso ni por defecto ni en el modo manual ni en el automático. Si en el modo
manual se especifica un valor de salida fuera de los límites, el valor efectivo se limitará en la
CPU a los límites configurados.
Los límites del valor de salida deben ser compatibles con el sentido de regulación.

Regulación PID
78 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

Los valores válidos para los límites del valor de salida dependen del Output utilizado.

Output de -100.0 a 100.0%


Output_PER de -100.0 a 100.0%
Output_PWM de -0.0 a 100.0%

Comportamiento en caso de error

ATENCIóN
Su instalación puede sufrir daños.
Si en caso de fallo se emite "Valor actual para la duración del error" o "Valor de salida
sustitutivo mientras dure el error", PID_Compact se mantiene en modo automático. De este
modo, los límites del valor real pueden rebasarse y su instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

PID_Compact está preajustado de manera que, en caso de error, la regulación permanece


activa en la mayoría de los casos. Si en el modo de regulación se producen errores con
frecuencia, este ajuste empeorará el comportamiento de regulación. Compruebe en tal caso
el parámetro Errorbits y elimine la causa de error.
En caso de error, PID_Compact emite un valor de salida configurable:
• Cero (inactivo)
PID_Compact emite 0.0 como valor de salida para todos los errores y conmuta al modo de
operación "Inactivo". El regulador no se reactiva hasta que no se detecta un flanco
descendente en Reset o un flanco ascendente en ModeActivate.
• Valor actual mientras dure el error
Si se producen los siguientes errores en el modo automático, PID_Compact regresa a
dicho modo en cuanto los errores en cuestión dejan de existir.
Si se producen uno o varios de los errores siguientes, PID_Compact permanece en
modo automático:
– 0001h: El parámetro "Input" se encuentra fuera de los límites del valor real.
– 0800h: Error en tiempo de muestreo
– 40000h: Valor no válido en el parámetro Disturbance.
Si en el modo automático se producen uno o varios de los errores siguientes,
PID_Compact pasa al modo "Valor de salida sustitutivo con monitorización de errores" y
emite el último valor de salida válido:
– 0002h: Valor no válido en el parámetro Input_PER.
– 0200h: Valor no válido en el parámetro Input.
– 0400h: Error al calcular el valor de salida.
– 1000h: Valor no válido en el parámetro Setpoint.
Si se produce un error en modo manual, PID_Compact sigue utilizando como valor de
salida el valor manual. Si el valor manual no es válido, se utiliza el valor de salida
sustitutivo. Si el valor manual y el valor de salida sustitutivo no son válidos, se utiliza el
límite inferior del valor de salida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 79
Utilizar PID_Compact
5.2 PID_Compact V2

Si durante una optimización inicial u optimización fina aparece el siguiente error,


PID_Compact se mantiene en el modo de operación activo:
– 0020h: La optimización inicial no está permitida durante la optimización fina.
Con todos los demás errores, PID_Compact interrumpe la optimización y cambia al modo
desde el que se inició la optimización.
En cuanto no aparezcan errores, PID_Compact pasa de nuevo al modo automático.
• Valor de salida sustitutivo mientras dure el error
PID_Compact emite el valor de salida sustitutivo.
Si se produce el siguiente error, PID_Compact se mantiene en el modo "Valor de salida
sustitutivo con monitorización de errores" y emite el límite inferior del valor de salida:
– 20000h: Valor no válido en la variable SubstituteOutput.
Con el resto de los errores, PID_Compact se comporta del modo descrito en "Valor actual
mientras dure el error".
Consulte
también
Parámetros State y Mode V2 (Página 244)

En la ventana de configuración "Parámetros PID" se visualizan los parámetros PID. Durante la


optimización los parámetros PID se adaptan al sistema regulado. No es necesario introducir
los parámetros PID de forma manual.

NOTA
Los parámetros PID efectivos actualmente están en la estructura sRet con PID_Compact V1 y
en la estructura [Link] con PID_Compact V2.
Para prevenir un comportamiento erróneo del regulador PID, los parámetros PID efectivos
actualmente solo deben modificarse online en el modo de operación "Inactivo".
Si desea modificar online los parámetros PID en los modos de operación "Automático" o
"Manual", debe hacerlo del siguiente modo:
• PID_Compact V1: Modifique los parámetros PID en la estructura sBackUp y aplique los
cambios poniendo sPid_Cmpt.b_LoadBackUp = TRUE en la estructura sRet.
• PID_Compact V2: Modifique los parámetros PID en la estructura CtrlParamsBackUp y
aplique los cambios poniendo LoadBackUp = TRUE en la estructura [Link].
Los cambios online en los parámetros PID realizados en el modo de operación "Automático"
pueden provocar saltos en el valor de salida.

Regulación PID
80 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

El algoritmo PID funciona de acuerdo con la siguiente fórmula:


1 TD · s
y = Kp [ (b · w - x) + T · s I
(w - x) +
a · TD · s + 1
(c · w - x) ]
y Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada T1 = a ×TD)
TD Tiempo derivativo
c Ponderación de la acción D
El gráfico siguiente muestra cómo entran los parámetros en el algoritmo PID.

6HWSRLQW Z E

$QWL:LQGXS
.3
/,0,7 , \

6FDOHG,QSXW [ '7


Todos los parámetros PID son remanentes. Si introduce manualmente los parámetros PID,
debe cargar PID_Compact por completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Ganancia proporcional
El valor indica la ganancia proporcional del regulador. PID_Compact no funciona con una
ganancia proporcional negativa. El sentido de regulación se invierte en Ajustes básicos > Tipo
de regulación.

Tiempo de integración
El tiempo de integración determina el comportamiento temporal de la acción I. La
desconexión de la acción I se realiza con el tiempo de integración = 0,0. Si el tiempo de

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 81
Utilizar PID_Compact
5.2 PID_Compact V2

integración se modifica online en el modo de operación "Automático" de un valor cualquiera


a 0.0, la acción I actual se borra y se produce un salto del valor de salida.

Tiempo derivativo
El tiempo de la acción derivada determina el comportamiento temporal de la acción D. La
desconexión de la acción D se realiza con el tiempo derivativo = 0,0.

Coeficiente para el retardo de la acción derivada


El efecto de la acción D se retrasa mediante el coeficiente de retardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo x coeficiente de retardo de la acción
derivada
• 0.0: la acción D solo surte efecto para un ciclo y, por ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regulados con una constante
de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto de la acción D.

Ponderación de la acción P
En el caso de que se produzcan cambios en la consigna, es posible atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva cuando se cambia la consigna
• 0.0: La acción P no actúa al cambiar la consigna
Si se produce una modificación del valor real, la acción P es totalmente efectiva.

Ponderación de la acción D
En el caso de que se produzcan cambios en la consigna, es posible atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva cuando se cambia la consigna.
• 0.0: La acción D no actúa al cambiar la consigna
Si se produce una modificación del valor real, la acción D es totalmente efectiva.

Tiempo de muestreo Algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_Compact se ejecutan con cada llamada.
Si se utiliza Output_PWM, el tiempo de muestreo del algoritmo PID se utiliza como duración
del periodo de la modulación por ancho de impulsos. La precisión de la señal de salida está
determinada por la relación entre el tiempo de muestreo del algoritmo PID y el tiempo de

Regulación PID
82 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

ciclo del OB. Por eso se recomienda que el tiempo de ciclo sea como máximo una décima
parte del tiempo de muestreo del algoritmo PID.

Regla para la optimización


En la lista desplegable "Estructura del regulador" seleccione si van a calcular los parámetros PI
o PID.
• PID
Se calcula durante la optimización inicial y la optimización fina del parámetro PID.
• PI
Se calcula durante la optimización inicial y la optimización fina del parámetro PI.
• Definido por el usuario
Si se han ajustado diferentes estructuras del regulador para la optimización inicial y la
optimización fina en un programa de usuario, en la lista desplegable aparece "Definido por
el usuario".

5.2.2 Poner en servicio PID_Compact V2

[Link] Optimización inicial V2

La optimización inicial determina el comportamiento del proceso a un escalón del valor de


salida y busca el punto de inflexión. Los parámetros PID óptimos se calculan a partir de la
pendiente máxima y el tiempo muerto del sistema regulado. Para obtener los mejores
parámetros PID, debe efectuarse una optimización inicial y una optimización fina.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los
parámetros PID. Un ruido del valor real es aceptable siempre que la subida del valor real sea
considerablemente mayor que el ruido. Esto tiene más probabilidades de suceder en los
modos "Inactivo" o "Manual". Es preciso realizar una copia de seguridad de los parámetros PID
antes de volver a calcularlos.

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• PID_Compact se encuentra en el modo de operación "Modo manual", "Inactivo" o "Modo
automático".
• La consigna y el real se encuentran dentro de los límites configurados (véase la
configuración "Monitorización del valor real").
• La diferencia entre la consigna y el valor real es mayor del 30% de la diferencia entre el
límite superior e inferior del valor real.
• La diferencia entre la consigna y el valor real es superior al 50% de la consigna.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 83
Utilizar PID_Compact
5.2 PID_Compact V2

Procedimiento
Para poder realizar una optimización inicial, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_Compact" > Puesta en
servicio".
2. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización inicial".
3. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia la optimización inicial.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
Haga clic en el símbolo "Stop" cuando la barra de progreso haya alcanzado el 100% y se
deba presuponer un bloqueo de la optimización. Compruebe la configuración del
objeto tecnológico y, si procede, vuelva a iniciar la optimización.

Resultado
Si la optimización inicial ha finalizado sin ningún mensaje de error, significa que los
parámetros PID se han optimizado. PID_Compact cambia al modo automático y utiliza los
parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power
OFF) y al rearrancar por completo la CPU.
Si no es posible realizar la optimización inicial, PID_Compact se comporta del modo
configurado en Comportamiento en caso de error.
Consulte
también
Parámetros State y Mode V2 (Página 244)

[Link] Optimización fina V2

La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros
PID se optimizan para el punto de operación a partir de la amplitud y la frecuencia. A partir de
los resultados se vuelven a calcular todos los parámetros PID. Los parámetros PID existentes
después de la optimización fina muestran en su mayoría un comportamiento de guía y ante
fallos mucho mejor que los parámetros PID de la optimización inicial. Para obtener los
mejores parámetros PID, debe efectuarse una optimización inicial y una optimización fina.
PID_Compact intenta generar automáticamente una oscilación que es mayor que el ruido del
valor real. La estabilidad del valor real ejerce tan solo una mínima influencia sobre la
optimización fina. Es preciso realizar una copia de seguridad de los parámetros PID antes de
volver a calcularlos.

Regulación PID
84 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• La consigna y el valor real se encuentran dentro de los límites configurados.
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se
ha alcanzado cuando el valor real coincide con la consigna.
• No se esperan perturbaciones.
• PID_Compact se encuentra en el modo de operación inactivo, automático o manual.

El proceso depende de la situación de inicio


La optimización fina puede iniciarse desde los modos de operación "Inactivo", "Automático" o
"Manual". Al inicio, la optimización fina se desarrolla del modo siguiente:
• Modo automático
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la
optimización fina desde el modo automático.
PID_Compact regula con los parámetros PID existentes hasta que el lazo de regulación es
estacionario y se cumplen las condiciones para la optimización fina. Sólo entonces
comienza la optimización fina.
• Inactivo o manual
Si se cumplen las condiciones para optimización inicial, ésta se inicia. Con los parámetros
PID calculados, la regulación se realiza hasta que el lazo de regulación es estacionario y se
han cumplido las condiciones para una optimización fina. Sólo entonces comienza la
optimización fina. Si no es posible realizar la optimización inicial, PID_Compact se
comporta del modo configurado en Comportamiento en caso de error.
Si el valor real para una optimización inicial se encuentra ya muy cerca de la consigna, se
intenta alcanzar la consigna con el valor de salida máximo o mínimo, lo que puede
ocasionar una sobreoscilación muy alta.

Procedimiento
Para poder realizar una optimización fina, proceda del siguiente modo:
1. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización fina".
2. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia el proceso de optimización fina.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
En el grupo "Modo de optimización" haga clic en el símbolo "Stop" cuando la barra de
progreso haya alcanzado el 100% y se deba presuponer un bloqueo de la optimización.
Compruebe la configuración del objeto tecnológico y, si procede, vuelva a iniciar la
optimización.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 85
Utilizar PID_Compact
5.2 PID_Compact V2

Resultado
Si durante la optimización fina no se producen errores, significa que los parámetros PID se
han optimizado. PID_Compact cambia al modo automático y utiliza los parámetros
optimizados. Los parámetros PID optimizados se conservan al desconectar (Power OFF) y al
rearrancar por completo la CPU.
Si se han producido errores durante la "optimización fina", PID_Compact se comporta del
modo configurado en Comportamiento en caso de error.
Consulte
también
Parámetros State y Mode V2 (Página 244)

[Link] Modo de operación "Modo manual" V2

A continuación se describe cómo utilizar el modo de operación "Modo manual" en la ventana


de puesta en servicio del objeto tecnológico "PID_Compact". El modo manual es posible
aunque haya un error pendiente.

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• Hay establecida una conexión online con la CPU y ésta se encuentra en el estado operativo
"RUN".

Procedimiento
Utilice "Modo manual" en la ventana de puesta en servicio si desea probar el sistema regulado
especificando un valor manual. Para especificar un valor manual, proceda del siguiente
modo:
1. Haga clic en el símbolo "Start".
2. Active la casilla de verificación "Modo manual" en el área "Estado online del regulador".
PID_Compact funciona en modo manual. El último valor de salida actual permanece
activo.
3. Introduzca el valor manual en la unidad % en el campo "Output".
4. Haga clic en el símbolo .

Resultado
El valor manual se escribe en la CPU y es efectivo de forma inmediata.
Desactive la casilla de verificación "Modo manual" si desea que el regulador PID vuelva a
especificar el valor de salida. El cambio al modo automático se efectúa sin discontinuidad.
Consulte
también
Parámetros State y Mode V2 (Página 244)

Regulación PID
86 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

5.2.3 Regulación de transición con PID_Compact V2

Regulación de transición
En caso de regulación de transición, dos o más reguladores comparten un actuador común.
En cada instante, solo un regulador tiene acceso al actuador y actúa sobre el proceso.
Una lógica decide qué regulador obtiene acceso al actuador. A menudo, esta decisión se
toma en función de una comparación de los valores de salida de todos los reguladores, p. ej.,
el regulador con el mayor valor de salida obtiene acceso al actuador en caso de selección del
máximo.
La selección en función del valor de salida hace necesario que todos los reguladores
funcionen en el modo automático. Los reguladores que no tengan efecto sobre el actuador se
corrigen. Esto es necesario para evitar los efectos de Windup y sus repercusiones negativas
sobre el comportamiento de regulación y la conmutación entre los reguladores.
A partir de la versión 2.3, PID_Compact soporta regulaciones de transición, pues el regulador
ofrece un procedimiento simplificado para corregir el regulador no activo:
• Mediante las variables OverwriteInitialOutputValue y [Link] es posible preasignar
la acción I del regulador en el modo automático como si el algoritmo PID hubiera
calculado Output = OverwriteInititalOutputValue para el valor de salida en el último ciclo.
• Para ello, OverwriteInitialOutputValue se interconecta con el valor de salida del regulador
que tenga acceso en este momento al actuador.
• Ajustando el bit [Link] se lanza la preasignación de la acción I, así como el reinicio
del ciclo del regulador y el período de PWM.
• El subsiguiente cálculo del valor de salida en el ciclo actual se realiza basándose en la
acción I preasignada (e igualada para todos los reguladores), así como en la acción P e I
del actual error de regulación.
• La acción D no está activa durante la llamada con [Link] = TRUE y, por tanto, no
contribuye al valor de salida.
Este procedimiento garantiza que el cálculo del valor de salida actual y, con ello, la decisión
sobre qué regulador tiene acceso al actuador solo tengan lugar considerando el estado actual
del proceso y los parámetros PI. Así se evitan los efectos de Windup en los reguladores no
activos y, con ello, las decisiones erróneas de la lógica de conmutación.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 87
Utilizar PID_Compact
5.2 PID_Compact V2

Requisitos
• [Link] solo es efectivo si la acción I está activada (variable [Link] >
0.0).
• Debe asignar [Link] y OverwriteInitialOutputValue usted mismo en su programa
de usuario (ver ejemplo más abajo). PID_Compact no realiza ningún cambio automático
en estas variables.
• [Link] solo es efectivo si PID_Compact se encuentra en el modo automático
(parámetro State = 3).
• Si es posible, seleccione el tiempo de muestreo del algoritmo PID (variable
[Link]) de forma que sea idéntico para todos los reguladores y llame
todos los reguladores en el mismo OB de alarma cíclica. De esta forma se asegurará de que
la conmutación no suceda dentro de un ciclo de regulador o de un período de PWM.

NOTA
Adaptación continua de los límites de los valores de salida
En lugar de la corrección activa de reguladores sin acceso al actuador aquí descrita, en otros
sistemas de regulador se realiza alternativamente una adaptación continua de los límites de
los valores de salida.
Esto no es posible con PID_Compact, pues no se soporta el cambio de los límites de los
valores de salida en el modo automático.

Ejemplo: regulación de un gasoducto


PID_Compact se utiliza para regular un gasoducto
El objetivo principal es regular el caudal Input1. Para ello se utiliza el regulador
PID_Compact_1. Además, con el regulador de limitación PID_Compact_2 debe mantenerse la
presión Input2 (medida en el sentido de flujo antes de la válvula) por debajo de un límite
superior.
El caudal y la presión se modifican a través de una única electroválvula. El valor de salida del
regulador se corresponde con la apertura de la válvula: si aumenta el valor de salida, la
válvula se abre. Con ello aumenta el caudal (sentido normal de regulación) mientras cae la
presión (sentido inverso de regulación).

Input1
PID_Compact_1

>
Input2
PID_Compact_2

La válvula se acciona mediante el valor de salida de PID_Compact en el formato de periferia


(parámetro Output_PER), escribiendo la variable de programa ActuatorInput.
La preasignación de la consigna para el caudal se realiza en el parámetro
PID_Compact_1.Setpoint.

Regulación PID
88 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.2 PID_Compact V2

El límite superior de presión se preasigna como consigna en el parámetro


PID_Compact_2.Setpoint.
Input1

PID_Compact_1

Input Output_PER
1
ActuatorInput
Setpoint Output

[Link] 0

OverwriteInitial
OutputValue

>
PID_Compact_2
1
Input Output_PER

Setpoint Output 0

[Link]
OverwriteInitial
OutputValue

Input2

Ambos reguladores disponen únicamente de una válvula como actuador común. La lógica
que decide qué regulador obtiene acceso al actuador se implementa aquí a través de una
selección de máximo del valor de salida (en formato Real, parámetro Output). Puesto que el
valor de salida corresponde a la apertura de la válvula, el regulador obtiene el control que
requiere la mayor apertura de la válvula.

NOTA
Activación de la inversión del sentido de regulación
Puesto que para el regulador de presión PID_Compact_2 debe alcanzarse una reducción del
valor real (presión) al aumentar el valor de salida (apertura de la válvula), debe activarse la
inversión del sentido de regulación: PID_Compact_2.[Link] = TRUE.

En el funcionamiento normal de la instalación, el valor real del caudal corresponde a la


consigna. El regulador de caudal PID_Compact_1 se ha estabilizado en un valor de salida
estacionario PID_Compact_1.Output. En el modo normal, el valor real de la presión está
claramente por debajo del límite superior que se ha preasignado como consigna para
PID_Compact_2. Por tanto, el regulador de presión debe seguir cerrando la válvula para
aumentar la presión, es decir, calculará un valor de salida PID_Compact_2.Output que será
inferior al del regulador de caudal PID_Compact_1.Output. Por tanto, la selección máxima de
la lógica de conmutación sigue permitiendo al regulador de caudal PID_Compact_1 el acceso
al actuador. Además, mediante las asignaciones PID_Compact_2.OverwriteInitialOutputValue
= PID_Compact_1.Output y PID_Compact_2.[Link] = TRUE se garantiza que se
corregirá PID_Compact_2.
Si ahora la presión se acerca al límite superior o lo rebasa, por ejemplo, debido a una avería,
el regulador de presión PID_Compact_2 calculará un valor de salida mayor para seguir
abriendo la válvula y así reducir la presión. Si PID_Compact_2.Output es mayor que
PID_Compact_1.Output, el regulador de presión PID_Compact_2 obtiene acceso al actuador a
través de la selección de valor máximo y lo abre. Mediante las asignaciones
PID_Compact_1.OverwriteInitialOutputValue = PID_Compact_2.Output y
PID_Compact_1.[Link] = TRUE se garantiza que se corregirá PID_Compact_1.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 89
Utilizar PID_Compact
5.2 PID_Compact V2

La presión se reduce mientras el caudal aumenta y deja de poder mantenerse en la consigna.


Si la avería deja de producirse, la presión seguirá cayendo, y la apertura de la válvula se
reducirá mediante el regulador de presión. Si el regulador de caudal calcula una apertura
mayor como valor de salida, la instalación regresa al modo normal, de forma que el regulador
de caudal PID_Compact_1 vuelve a obtener acceso al actuador.
Este ejemplo se puede implementar con el siguiente código de programa SCL:

"PID_Compact_1"(Input := "Input1");
"PID_Compact_2"(Input := "Input2");
IF "PID_Compact_1".Output >= "PID_Compact_2".Output THEN
"ActuatorInput" := "PID_Compact_1".Output_PER;
"PID_Compact_1".[Link] := FALSE;
"PID_Compact_2".[Link] := TRUE;
"PID_Compact_2".OverwriteInitialOutputValue :=
"PID_Compact_1".Output;
ELSE
"ActuatorInput" := "PID_Compact_2".Output_PER;
"PID_Compact_1".[Link] := TRUE;
"PID_Compact_2".[Link] := FALSE;
"PID_Compact_1".OverwriteInitialOutputValue :=
"PID_Compact_2".Output;
END_IF;

5.2.4 Simulación de PID_Compact V2 con PLCSIM

NOTA
Simulación con PLCSIM
La simulación de PID_Compact V2.x con PLCSIM para CPU S7-1200 no se soporta.
PID_Compact V2.x solo puede simularse con PLCSIM para CPU S7-1500.
En la simulación con PLCSIM, el comportamiento temporal del PLC simulado no es idéntico al
de un PLC "auténtico". El verdadero ciclo de un OB de alarma cíclica puede presentar mayores
fluctuaciones en un PLC simulado que en un PLC "auténtico".
En la configuración estándar, PID_Compact determina automáticamente el tiempo entre las
llamadas y vigila sus fluctuaciones.
Por tanto, al simular PID_Compact con PLCSIM es posible detectar un error de tiempo de
muestreo (ErrorBits = DW#16#00000800).
Esto provoca la cancelación de las optimizaciones en curso.
La reacción en el modo automático depende del valor de la variable ActivateRecoverMode.
Para evitarlo, debe configurarse PID_Compact en la simulación con PLCSIM del modo
siguiente:
• [Link] = FALSE
• [Link] = FALSE
• [Link]: Asigne a estas variables el ciclo del OB de alarma cíclica que se debe
llamar en la unidad segundos.

Regulación PID
90 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

5.3 PID_Compact V1

5.3.1 Configurar PID_Compact V1

[Link] Ajustes básicos V1

Configure las propiedades siguientes del objeto tecnológico PID_Compact en el área de


ajustes básicos de la ventana de inspección o de configuración.
• Magnitud física
• Sentido de regulación
• Comportamiento en arranque después de un reset
• Consigna (sólo en la ventana de inspección)
• Valor real (sólo en la ventana de inspección)
• Valor de salida (sólo en la ventana de inspección)

Consigna, valor real y valor de salida


La consigna, el valor real y el valor de salida sólo pueden configurarse en la ventana de
inspección del editor de programación. Para cada salida digital elija la fuente:
• DB de instancia
Se utiliza el valor que se encuentra almacenado en el DB de instancia.
El valor debe actualizarse en el DB de instancia del programa de usuario.
En la instrucción no puede haber ningún valor.
Modificación posible desde HMI.
• Instrucción
Se utiliza el valor que se conecta con la instrucción.
Cada vez que se llama la instrucción, el valor se escribe en el DB de instancia.
No se puede modificar desde HMI.

Magnitud física
En el grupo "Tipo de regulación" seleccione la magnitud física y la unidad de la consigna y el
valor real. La consigna y el valor real se muestran en esta unidad.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal.
PID_Compact no funciona con ganancia proporcional negativa. Para reducir el valor real con
un valor de salida más elevado, active la casilla de verificación "Inversión sentido de
regulación".
Ejemplos
• Al abrir una válvula de escape se reduce el nivel de un recipiente.
• Si se aumenta la potencia de refrigeración, disminuye la temperatura.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 91
Utilizar PID_Compact
5.3 PID_Compact V1

Comportamiento en arranque tras un reset


Para cambiar inmediatamente al último modo de operación activo tras el rearranque de la
CPU, active la casilla de verificación "Activar último modo de operación después del
rearranque de la CPU".
Si la casilla de verificación está desactivada, PID_Compact se queda en el modo de operación
"Inactivo".

Procedimiento
Para especificar una consigna fija, proceda del siguiente modo:
1. Seleccione "DB de instancia".
2. Introduzca una consigna, como puede ser 80 °C.
3. En caso necesario, elimine una entrada de la instrucción.
Para especificar una consigna variable, proceda del siguiente modo:
1. Seleccione "Instrucción".
2. Indique el nombre de la variable REAL en la que está almacenada la consigna.
Es posible asignar varios valores controlados por programa a la variable REAL para, por
ejemplo, modificar la consigna de tiempo de forma controlada.

Si utiliza directamente el valor de la entrada analógica, PID_Compact escala el valor de la


entrada analógica al tamaño físico.
Si se desea acondicionar el valor de la entrada analógica, es preciso escribir un programa
propio para su acondicionamiento. Por ejemplo, el valor real no es directamente proporcional
al valor de la entrada analógica. El valor real acondicionado debe estar en formato de coma
flotante.

Procedimiento
Para utilizar directamente el valor de la entrada analógica, proceda del siguiente modo:
1. En la lista desplegable "Input", seleccione la entrada "Input_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica.
Para utilizar el valor real acondicionado en el formato de coma flotante, proceda del siguiente
modo:
1. En la lista desplegable "Input", seleccione la entrada "Input".
2. Seleccione "Instrucción" como fuente.
3. Indique el nombre de la variable en la que está almacenado el valor real acondicionado.

Regulación PID
92 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

PID_Compact ofrece tres valores de salida. El valor de salida que se utilice dependerá del
actuador.
• Output_PER
El actuador se activa a través de una salida analógica y se controla con una señal continua,
como puede ser 0 a 10 V, 4 a 20 mA.
• Output
El valor de salida debe acondicionarse mediante el programa de usuario, por ejemplo,
porque el actuador muestra un comportamiento no lineal.
• Output_PWM
El actuador se controla a través de una salida digital. Una modulación de ancho de
impulsos permite formar tiempos de conexión y desconexión variables.

Procedimiento
Para utilizar el valor de salida analógico, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output_PER" (analógica).
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida analógica.
Para acondicionar el valor de salida mediante el programa de usuario, proceda del siguiente
modo:
1. En la lista desplegable "Output", seleccione la entrada "Output".
2. Seleccione "DB de instancia".
El valor de salida calculado se guarda en DB de instancia.
3. Para acondicionar el valor de salida utilice el parámetro de salida Output.
4. Transfiera el valor de salida acondicionado hasta el actuador a través de una salida digital
o analógica de la CPU.
Para utilizar el valor de salida digital, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output_PWM".
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida digital.

[Link] Ajuste de valor real V1

Configure la normalización del valor real en la ventana de configuración "Ajustes del valor
real" y fije los límites absolutos del valor real.

Escalar valor real


Si en los ajustes básicos se ha elegido el uso de Input_PER, el valor de la entrada analógica
debe convertirse en el tamaño físico del valor real. En el cuadro de visualización Input_PER se
muestra la configuración actual.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 93
Utilizar PID_Compact
5.3 PID_Compact V1

Si el valor real es directamente proporcional al valor de la entrada analógica, Input_PER se


escala a partir de una pareja de valores inferiores y superiores.
1. En los campos de entrada "Valor real inferior escalado" y "Abajo" introduzca la pareja de
valores inferiores.
2. En los campos de entrada "Valor real inferior escalado" y "Abajo" introduzca la pareja de
valores inferiores.
La configuración de hardware incluye una configuración predeterminada para los pares de
valores. Para utilizar los pares de valores a partir de la configuración de hardware, proceda del
siguiente modo:
1. Seleccione la instrucción PID_Compact en el editor de programación.
2. En los ajustes básicos, interconecte Input_PER con una entrada analógica.
3. En la configuración del valor real, haga clic en el botón "Ajuste automático".
Los valores existentes se sobrescriben con los valores de la configuración de hardware.

Monitorizar el valor real


Defina los límites absolutos superior e inferior del valor real. En cuanto dichos valores se
rebasen por exceso o por defecto durante el funcionamiento, la regulación se desconectará y
el valor de salida se ajustará al 0%. Como límites, se deben introducir valores razonables para
el sistema regulado. Durante la optimización es importante disponer de valores límite
razonables para obtener los parámetros PID óptimos.
La preasignación del "Límite superior del valor real" es 120%. En la entrada de periferia, el
valor real puede encontrarse como máximo un 18% por encima del rango normalizado
(margen de saturación). No se comunica ningún error más debido al rebasamiento por
exceso del "Límite superior del valor real". Únicamente se detectan la rotura de hilo y el
cortocircuito y PID_Compact pasa al modo de operación "Inactivo".

ADVERTENCIA
Si ajusta valores muy altos (z. B. -3,4*1038...+3,4*1038) como límites del valor real, se
desactiva la monitorización del valor real. Esto puede dar lugar a daños en la instalación.

Consulte
también
Vigilancia de valor real V1 (Página 94-95)
Limitaciones de PWM V1 (Página 95)
Límites del valor de salida V1 (Página 97)
Parámetros PID V1 (Página 98)

Regulación PID
94 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

[Link] Ajustes avanzados V1

Configure un límite de advertencia inferior y uno superior para el valor real en la ventana de
configuración "Monitorización del valor real". Si durante el funcionamiento se rebasa uno de
los límites de advertencia por defecto o por exceso, se muestra una advertencia en la
instrucción "PID_Compact".
• En el parámetro de salida "InputWarning_H", si se ha rebasado por exceso el límite
superior de advertencia
• En el parámetro de salida "InputWarning_L", si se ha rebasado por defecto el límite inferior
de advertencia
Los límites de advertencia deben encontrarse dentro de los límites superior e inferior del valor
real.
Si no introduce ningún valor, se utilizan los límites superior e inferior del valor real.

Ejemplo
Límite superior del valor real = 98 °C; límite superior de advertencia = 90 °C
Límite inferior de advertencia = 10 ℃; límite inferior del valor real = 0 ℃
PID_Compact se comporta del modo siguiente:

Valor real InputWarning_H InputWarning_L Modo de operación


> 98 °C TRUE FALSE Inactivo
≤ 98 °C y > 90 °C TRUE FALSE Modo automático
≤ 90 °C y ≥ 10 °C FALSE FALSE Modo automático
< 10°C y ≥ 0 °C FALSE TRUE Modo automático
< 0 °C FALSE TRUE Inactivo

Consulte
también
Ajuste de valor real V1 (Página 93)
Limitaciones de PWM V1 (Página 95)
Límites del valor de salida V1 (Página 97)
Parámetros PID V1 (Página 98)

Una modulación de ancho de impulsos transforma el valor del parámetro de salida Output en
un tren de impulsos que se emite por el parámetro de salida Output_PWM.
Output se calcula en el tiempo de muestreo Algoritmo PID. El tiempo de muestreo se utiliza
como duración del período de la modulación por ancho de impulso.
El tiempo de muestreo Algoritmo PID se determina durante la optimización inicial o la
optimización fina. Al ajustar los parámetros PID manualmente, debe configurarse también ahí
el tiempo de muestreo Algoritmo PID.
Output_PWM se emite en el tiempo de muestreo PID_Compact. El tiempo de muestreo
PID_Compact equivale al tiempo de ciclo del OB invocante.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 95
Utilizar PID_Compact
5.3 PID_Compact V1

La duración del impulso es proporcional al valor de Output y es siempre un múltiplo entero


del tiempo de muestreo PID_Compact.
2XWSXW









W PV
2XWSXWB3:0

758(

)$/6(
W PV



 

① Tiempo de muestreo PID_Compact


② Tiempo de muestreo Algoritmo PID
③ Duración del impulso
④ Duración de la pausa
"Tiempo conexión mín." y "Tiempo de desconex. mín." se redondean a un múltiplo entero del
tiempo de muestreo PID_Compact.
Un impulso o una pausa nunca son más cortas que los tiempos de conexión o desconexión
mínimos. Las imprecisiones que se producen se suman y se compensan en el siguiente ciclo.
Ejemplo
Tiempo de muestreo PID_Compact (equivale al tiempo de ciclo del OB que efectúa la llamada)
= 100 ms
Tiempo de muestreo Algoritmo PID (equivale a la duración del periodo)= 1000 ms
Tiempo conexión mín. = 200 ms

Regulación PID
96 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

Output es constante del 15%. El mínimo impulso que PID_Compact puede emitir es del 20 %
En el primer ciclo no se emite ningún impulso. En el segundo ciclo, el impulso no emitido del
primer ciclo se agrega al impulso del segundo ciclo.
2XWSXW








2XWSXWB3:0 W PV

758(

)$/6(
W PV


① Tiempo de muestreo PID_Compact


② Tiempo de muestreo Algoritmo PID
⑤ Tiempo conexión mín.
Para reducir la frecuencia de conmutación y proteger el actuador, prolongue los tiempos de
conexión y desconexión mínimos.
Si se utiliza "Output" o "Output_PER", los tiempos mínimos de conexión y desconexión deben
configurarse con el valor 0.0.

NOTA
Los tiempos mínimos de conexión y desconexión actúan solo en el parámetro de salida
Output_PWM y no se utilizan para posibles generadores de impulsos integrados en la CPU.

Consulte
también
Ajuste de valor real V1 (Página 93)
Vigilancia de valor real V1 (Página 94-95)
Límites del valor de salida V1 (Página 97)
Parámetros PID V1 (Página 98)

Configure en tantos por ciento los límites absolutos del valor de salida en la ventana de
configuración "Límites del valor de salida". Los límites absolutos del valor de salida no se
rebasan ni por exceso ni por defecto ni en el modo manual ni en el automático. Si en el modo
manual se especifica un valor de salida fuera de los límites, el valor efectivo se limitará en la
CPU a los límites configurados.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 97
Utilizar PID_Compact
5.3 PID_Compact V1

Los valores válidos para los límites del valor de salida dependen del Output utilizado.

Output -100,0 a 100,0


Output_PER -100,0 a 100,0
Output_PWM 0,0 a 100,0
En caso de error, PID_Compact ajusta el valor de salida a 0.0. Así pues, 0.0 debe encontrarse
siempre dentro de los límites del valor de salida. Para obtener un límite inferior del valor de
salida mayor que 0.0, en el programa de usuario debe sumarse un offset a Output y
Output_PER.
Consulte
también
Ajuste de valor real V1 (Página 93)
Vigilancia de valor real V1 (Página 94-95)
Limitaciones de PWM V1 (Página 95)
Parámetros PID V1 (Página 98)

En la ventana de configuración "Parámetros PID" se visualizan los parámetros PID. Durante la


optimización los parámetros PID se adaptan al sistema regulado. No es necesario introducir
los parámetros PID de forma manual.

NOTA
Los parámetros PID efectivos actualmente están en la estructura sRet con PID_Compact V1 y
en la estructura [Link] con PID_Compact V2.
Para prevenir un comportamiento erróneo del regulador PID, los parámetros PID efectivos
actualmente solo deben modificarse online en el modo de operación "Inactivo".
Si desea modificar online los parámetros PID en los modos de operación "Automático" o
"Manual", debe hacerlo del siguiente modo:
• PID_Compact V1: Modifique los parámetros PID en la estructura sBackUp y aplique los
cambios poniendo sPid_Cmpt.b_LoadBackUp = TRUE en la estructura sRet.
• PID_Compact V2: Modifique los parámetros PID en la estructura CtrlParamsBackUp y
aplique los cambios poniendo LoadBackUp = TRUE en la estructura [Link].
Los cambios online en los parámetros PID realizados en el modo de operación "Automático"
pueden provocar saltos en el valor de salida.

Regulación PID
98 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

El algoritmo PID funciona de acuerdo con la siguiente fórmula:


1 TD · s
y = Kp [ (b · w - x) + T · s I
(w - x) +
a · TD · s + 1
(c · w - x) ]
y Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada T1 = a ×TD)
TD Tiempo derivativo
c Ponderación de la acción D
El gráfico siguiente muestra cómo entran los parámetros en el algoritmo PID.

6HWSRLQW Z E

$QWL:LQGXS
.3
/,0,7 , \

6FDOHG,QSXW [ '7


Todos los parámetros PID son remanentes. Si introduce manualmente los parámetros PID,
debe cargar PID_Compact por completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Ganancia proporcional
El valor indica la ganancia proporcional del regulador. PID_Compact no funciona con una
ganancia proporcional negativa. El sentido de regulación se invierte en Ajustes básicos > Tipo
de regulación.

Tiempo de integración
El tiempo de integración determina el comportamiento temporal de la acción I. La
desconexión de la acción I se realiza con el tiempo de integración = 0,0. Si el tiempo de

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 99
Utilizar PID_Compact
5.3 PID_Compact V1

integración se modifica online en el modo de operación "Automático" de un valor cualquiera


a 0.0, la acción I actual se borra y se produce un salto del valor de salida.

Tiempo derivativo
El tiempo de la acción derivada determina el comportamiento temporal de la acción D. La
desconexión de la acción D se realiza con el tiempo derivativo = 0,0.

Coeficiente para el retardo de la acción derivada


El efecto de la acción D se retrasa mediante el coeficiente de retardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo x coeficiente de retardo de la acción
derivada
• 0.0: la acción D solo surte efecto para un ciclo y, por ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regulados con una constante
de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto de la acción D.

Ponderación de la acción P
En el caso de que se produzcan cambios en la consigna, es posible atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva cuando se cambia la consigna
• 0.0: La acción P no actúa al cambiar la consigna
Si se produce una modificación del valor real, la acción P es totalmente efectiva.

Ponderación de la acción D
En el caso de que se produzcan cambios en la consigna, es posible atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva cuando se cambia la consigna.
• 0.0: La acción D no actúa al cambiar la consigna
Si se produce una modificación del valor real, la acción D es totalmente efectiva.

Tiempo de muestreo Algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_Compact se ejecutan con cada llamada.
Si se utiliza Output_PWM, el tiempo de muestreo del algoritmo PID se utiliza como duración
del periodo de la modulación por ancho de impulsos. La precisión de la señal de salida está
determinada por la relación entre el tiempo de muestreo del algoritmo PID y el tiempo de

Regulación PID
100 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

ciclo del OB. Por eso se recomienda que el tiempo de ciclo sea como máximo una décima
parte del tiempo de muestreo del algoritmo PID.

Regla para la optimización


En la lista desplegable "Estructura del regulador" seleccione si van a calcular los parámetros PI
o PID.
• PID
Se calcula durante la optimización inicial y la optimización fina del parámetro PID.
• PI
Se calcula durante la optimización inicial y la optimización fina del parámetro PI.
• Definido por el usuario
Si se han ajustado diferentes estructuras del regulador para la optimización inicial y la
optimización fina en un programa de usuario, en la lista desplegable aparece "Definido por
el usuario".

5.3.2 Poner en servicio PID_Compact V1

[Link] Puesta en servicio V1

La ventana de puesta en servicio ayuda durante la puesta en servicio del regulador PID. En el
visor de curvas se puede observar los valores de la consigna, valor real y valor de salida a lo
largo del eje de tiempo. En la ventana de puesta en servicio se soportan las siguientes
funciones:
• Optimización inicial del regulador
• Optimización fina del regulador
Utilice la optimización fina si desea realizar un ajuste de precisión del parámetro PID.
• Observación de la regulación en curso en la ventana de curvas
• Probar el sistema regulado especificando un valor de salida manual
Para todas las funciones es preciso realizar una conexión online a la CPU.

Principios básicos del manejo


• Seleccione el tiempo de actualización que desee en la lista desplegable "Tiempo de
actualización".
Todos los valores de la ventana de puesta en servicio se actualizan en el tiempo de
actualización seleccionado.
• Haga clic en el botón "Inicio" en el grupo Medición si desea utilizar las funciones de puesta
en servicio.
Se inicia el registro de los valores. En el visor de curvas se registran los valores actuales de
consigna, valor real y valor de salida. Se habilita el manejo de la ventana de puesta en
servicio.
• Haga clic en el botón "Parar" si desea finalizar las funciones de puesta en servicio.
Los valores mostrados en el visor de curvas pueden continuar analizándose.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 101
Utilizar PID_Compact
5.3 PID_Compact V1

Al cerrar la ventana de puesta en servicio finaliza el registro en el visor de curvas y los valores
registrados se borran.
Consulte
también
Optimización inicial V1 (Página 102)
Optimización fina V1 (Página 103)
Modo de operación "Modo manual" V1 (Página 105)

[Link] Optimización inicial V1

La optimización inicial determina el comportamiento del proceso a un escalón del valor de


salida y busca el punto de inflexión. A partir de la inclinación máxima y del tiempo muerto del
sistema regulado se calculan los parámetros PID óptimos.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los
parámetros PID. Un ruido del valor real es aceptable siempre que la subida del valor real sea
considerablemente mayor que el ruido. Es preciso realizar una copia de seguridad de los
parámetros PID antes de volver a calcularlos.

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• PID_Compact se encuentra en el modo de operación "Inactivo" o "Manual".
• La consigna no puede modificarse durante la optimización. De lo contrario se desactiva
PID_Compact.
• La consigna y el real se encuentran dentro de los límites configurados (véase la
configuración "Monitorización del valor real").
• La diferencia entre la consigna y el valor real es mayor del 30% de la diferencia entre el
límite superior e inferior del valor real.
• La diferencia entre la consigna y el valor real es superior al 50% de la consigna.

Procedimiento
Para poder realizar una optimización inicial, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_Compact" > Puesta en
servicio".
2. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización inicial".
3. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia la optimización inicial.

Regulación PID
102 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
Haga clic en el símbolo "Stop" cuando la barra de progreso haya alcanzado el 100% y se
deba presuponer un bloqueo de la optimización. Compruebe la configuración del
objeto tecnológico y, si procede, vuelva a iniciar la optimización.

Resultado
Si la optimización inicial ha finalizado sin ningún mensaje de error, significa que los
parámetros PID se han optimizado. PID_Compact cambia al modo automático y utiliza los
parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power
OFF) y al rearrancar por completo la CPU.
Si no es preciso realizar la optimización inicial, PID_Compact cambia al modo de operación
"Inactivo".
Consulte
también
Parámetros State y sRet.i_Mode V1 (Página 268)
Puesta en servicio V1 (Página 101)
Optimización fina V1 (Página 103)
Modo de operación "Modo manual" V1 (Página 105)

[Link] Optimización fina V1

La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros
PID se optimizan para el punto de operación a partir de la amplitud y la frecuencia. A partir de
los resultados se vuelven a calcular todos los parámetros PID. Los parámetros PID existentes
después de la optimización fina muestran en su mayoría un comportamiento de guía y ante
fallos mucho mejor que los parámetros PID de la optimización inicial.
PID_Compact intenta generar automáticamente una oscilación que es mayor que el ruido del
valor real. La estabilidad del valor real ejerce tan sólo una mínima influencia sobre la
optimización fina. Es preciso realizar una copia de seguridad de los parámetros PID antes de
volver a calcularlos.

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• La consigna y el real se encuentran dentro de los límites configurados (véase la
configuración "Monitorización del valor real").
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se
ha alcanzado cuando el valor real coincide con la consigna.
• No se esperan perturbaciones.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 103
Utilizar PID_Compact
5.3 PID_Compact V1

• La consigna no puede modificarse durante la optimización.


• PID_Compact se encuentra en el modo de operación inactivo, automático o manual.

El proceso depende de la situación de inicio


La optimización fina puede iniciarse desde los modos de operación "Inactivo", "Automático" o
"Manual". La optimización fina se realiza en el momento del inicio tal como se indica a
continuación:
• Modo automático
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la
optimización fina a partir del modo automático.
PID_Comact regula con los parámetros PID existentes hasta que el lazo de regulación es
estacionario y se han cumplido las condiciones para una optimización fina. Sólo entonces
comienza la optimización fina.
• Inactivo o manual
Si se cumplen las condiciones para optimización inicial, ésta se inicia. Con los parámetros
PID calculados la regulación se realiza hasta que el lazo de regulación es estacionario y se
han cumplido las condiciones para una optimización fina. Sólo entonces comienza la
optimización fina. Si no es posible realizar la optimización inicial, PID_Compact cambia al
modo de operación "Inactivo".
Si el valor real para una optimización inicial se encuentra ya muy cerca de la consigna, se
intenta alcanzar la consigna con el valor de salida máximo o mínimo. lo que puede
ocasionar una sobreoscilación muy alta.

Procedimiento
Para poder realizar una optimización fina, proceda del siguiente modo:
1. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización fina".
2. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia el proceso de optimización fina.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
En el grupo "Modo de optimización" haga clic en el símbolo "Stop" cuando la barra de
progreso haya alcanzado el 100% y se deba presuponer un bloqueo de la optimización.
Compruebe la configuración del objeto tecnológico y, si procede, vuelva a iniciar la
optimización.

Resultado
Si la optimización fina se ha completado sin ningún aviso de error, significa que los
parámetros PID se han optimizado. PID_Compact cambia al modo automático y utiliza los

Regulación PID
104 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Compact
5.3 PID_Compact V1

parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power


OFF) y al rearrancar por completo la CPU.
Si se produjeran errores durante la optimización fina, PID_Compact cambia al modo de
operación "Inactivo".
Consulte
también
Parámetros State y sRet.i_Mode V1 (Página 268)
Puesta en servicio V1 (Página 101)
Optimización inicial V1 (Página 102)
Modo de operación "Modo manual" V1 (Página 105)

[Link] Modo de operación "Modo manual" V1

A continuación se describe cómo utilizar el modo de operación "Modo manual" en la ventana


de puesta en servicio del objeto tecnológico "PID Compact".

Requisitos
• La instrucción "PID_Compact" se llama en un OB de alarma cíclica.
• Hay establecida una conexión online con la CPU y ésta se encuentra en el estado operativo
"RUN".
• Las funciones de la ventana de puesta en marcha se han habilitado con el botón "Medición
on".

Procedimiento
Utilice "Modo manual" en la ventana de puesta en servicio si desea probar el sistema regulado
especificando un valor manual. Para especificar un valor manual, proceda del siguiente
modo:
1. Active la casilla de verificación "Modo manual" en el área "Estado online del regulador".
PID_Compact funciona en modo manual. El último valor de salida actual permanece
activo.
2. Introduzca el valor manual en la unidad % en el campo "Output".
3. Haga clic en el botón .

Resultado
El valor manual se escribe en la CPU y es efectivo de forma inmediata.

NOTA
PID_Compact sigue monitorizando el valor real. Cuando se exceden los límites del valor real,
se desactiva PID_Compact.

Desactive la casilla de verificación "Modo manual" si desea que el regulador PID vuelva a
especificar el valor de salida. El cambio al modo automático se efectúa sin discontinuidad.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 105
Utilizar PID_Compact
5.3 PID_Compact V1

Consulte
también
Parámetros State y sRet.i_Mode V1 (Página 268)
Puesta en servicio V1 (Página 101)
Optimización inicial V1 (Página 102)
Optimización fina V1 (Página 103)

5.3.3 Simulación de PID_Compact V1 con PLCSIM

NOTA
Simulación con PLCSIM
En la simulación con PLCSIM, el comportamiento temporal del PLC simulado no es idéntico al
de un PLC "auténtico". El verdadero ciclo de un OB de alarma cíclica puede presentar mayores
fluctuaciones en un PLC simulado que en un PLC "auténtico".
En la configuración estándar, PID_Compact determina automáticamente el tiempo entre las
llamadas y vigila sus fluctuaciones.
Por tanto, al simular PID_Compact con PLCSIM es posible detectar un error de tiempo de
muestreo (ErrorBits = DW#16#00000800).
PID_Compact cambia en este caso al modo de operación Inactivo (State = 0).
Para evitarlo, debe configurarse PID_Compact en la simulación con PLCSIM del modo
siguiente:
• sb_EnCyclEstimation = FALSE
• sb_EnCyclMonitoring = FALSE
• sPid_Calc.r_Cycle: Asigne a estas variables el ciclo del OB de alarma cíclica que se debe
llamar en la unidad segundos.

Regulación PID
106 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step 6
6.1 Objeto tecnológico PID_3Step
El objeto tecnológico PID_3Step proporciona un regulador PID con optimización para válvulas
o actuadores con comportamiento integrador.
Es posible configurar los siguientes reguladores:
• Regulador paso a paso de tres puntos con realimentación de posición
• Regulador paso a paso de tres puntos sin realimentación de posición
• Regulador de válvula con valor de salida analógico
PID_3Step registra de forma continua el valor real medido dentro de un lazo de regulación y
lo compara con la consigna. A partir del error de regulación resultante, PID_3Step calcula un
valor de salida, con el que el valor real se iguala con la consigna con la máxima rapidez y
estabilidad. En los reguladores PID, el valor de salida se compone de tres acciones:
• Acción P
La acción P del valor de salida aumenta proporcionalmente al error de regulación.
• Acción I
La acción I del valor de salida aumenta hasta que se compensa el error de regulación.
• Acción D
La acción D aumenta con una velocidad de variación creciente del error de regulación. El
valor real se igual lo más rápidamente posible con la consigna. Si la velocidad de variación
del error de regulación vuelve a reducirse, también lo hace la acción D.
La instrucción PID_3Step calcula los parámetros P, I y D para su sistema regulado de forma
autónoma durante la optimización inicial. Los parámetros pueden optimizarse aún más a
través de una optimización fina. No es necesario determinar los parámetros manualmente.

Información adicional
• Vista general de los reguladores de software (Página 40)
• Agregar objetos tecnológicos (Página 42)
• Configurar objetos tecnológicos (Página 43)
• Configuración de PID_3Step V2 (Página 107-108)
• Configuración de PID_3Step V1 (Página 125)

Principio
Para más información al respecto, consulte la siguiente pregunta frecuente (FAQ) en el
Siemens Industry Online Support:
• ID de artículo 68011827 ([Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 107
Utilizar PID_3Step
6.2 PID_3Step V2

6.2 PID_3Step V2

6.2.1 Configuración de PID_3Step V2

[Link] Ajustes básicos V2

Configure las propiedades siguientes del objeto tecnológico PID_3Step en el área de ajustes
básicos de la ventana de inspección o de configuración.
• Magnitud física
• Sentido de regulación
• Comportamiento en arranque tras un reset
• Consigna (sólo en la ventana de inspección)
• Valor real (sólo en la ventana de inspección)
• Valor de salida (sólo en la ventana de inspección)
• Realimentación de posición (sólo en la ventana de inspección)

Consigna, valor real, valor de salida y realimentación de posición


La consigna, el valor real, el valor de salida y la realimentación de posición sólo pueden
configurarse en la ventana de inspección del editor de programación. Para cada valor elija el
origen:
• DB de instancia
Se utiliza el valor que se encuentra almacenado en el DB de instancia.
El valor debe actualizarse en el DB de instancia del programa de usuario.
En la instrucción no puede haber ningún valor.
Modificación posible desde HMI.
• Instrucción
Se utiliza el valor que se interconecta a la instrucción.
Cada vez que se llama la instrucción, el valor se escribe en el DB de instancia.
No se puede modificar desde HMI.

Magnitud física
En el grupo "Tipo de regulación", seleccione la magnitud física y la unidad de la consigna y del
valor real. La consigna y el valor real se mostrarán en esta unidad.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal.
PID_3Step no funciona con ganancia proporcional negativa. Para reducir el valor real con un
valor de salida más elevado, active la casilla de verificación "Inversión sentido de regulación".

Regulación PID
108 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

Ejemplos
• Al abrir una válvula de escape se reduce el nivel de llenado de un recipiente.
• Si se aumenta la potencia de refrigeración, disminuye la temperatura.

Comportamiento en arranque
1. Para cambiar inmediatamente al modo de operación "Inactivo" tras el rearranque de la
CPU, desactive la casilla de verificación "Activar Mode tras rearrancar la CPU".
Para cambiar inmediatamente, tras el rearranque de la CPU, al modo de operación
almacenado en Mode, active la casilla de verificación "Activar Mode tras rearrancar la
CPU".
2. En la lista desplegable "Poner Mode a", seleccione el modo de operación que debe
activarse tras una carga completa en el dispositivo.
Tras una carga completa en el dispositivo, PID_3Step arranca en el modo de operación
seleccionado. Con cada rearranque, PID_3Step arranca en el último modo de operación
almacenado en Mode.
Ejemplo
Se ha activado la casilla de verificación "Activar Mode tras rearrancar la CPU" y se ha
seleccionado la entrada "Optimización inicial" en la lista "Poner Mode a". Tras una carga
completa en el dispositivo, PID_3Step arranca en el modo de operación "Optimización inicial".
Si la optimización inicial aún está activa y se rearranca la CPU, PID_3Step arranca de nuevo en
el modo de operación "Optimización inicial". Si la optimización inicial ha finalizado
correctamente, el modo automático aún está activo y se rearranca la CPU, PID_3Step arranca
en "Modo automático".

Procedimiento
Para especificar una consigna fija, proceda del siguiente modo:
1. Seleccione "DB de instancia".
2. Introduzca una consigna, como puede ser 80 °C.
3. En caso necesario, elimine una entrada de la instrucción.
Para especificar una consigna variable, proceda del siguiente modo:
1. Seleccione "Instrucción".
2. Indique el nombre de la variable REAL en la que está almacenada la consigna.
Es posible asignar varios valores de forma controlada por programa a la variable REAL
para, por ejemplo, modificar la consigna de tiempo de forma controlada.

Si utiliza directamente el valor de la entrada analógica, PID_3Step escala el valor de la entrada


analógica al tamaño físico.
Si desea acondicionar primero el valor de la entrada analógica, es preciso escribir un
programa propio para su acondicionamiento. Por ejemplo, el valor real no es directamente
proporcional al valor de la entrada analógica. El valor real acondicionado debe estar en
formato de coma flotante.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 109
Utilizar PID_3Step
6.2 PID_3Step V2

Procedimiento
Para utilizar directamente el valor de la entrada analógica, proceda del siguiente modo:
1. En la lista desplegable "Input", seleccione la entrada "Input_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica.
Para utilizar el valor real acondicionado en el formato de coma flotante, proceda del siguiente
modo:
1. En la lista desplegable "Input", seleccione la entrada "Input".
2. Seleccione "Instrucción" como fuente.
3. Indique el nombre de la variable en la que está almacenado el valor real acondicionado.

La configuración de la realimentación de posición depende del elemento final de control


utilizado.
• Actuador sin realimentación de posición
• Elemento final de control con señales de tope digitales
• Actuador con realimentación de posición analógica
• Actuador con realimentación de posición analógico y señales de tope

Elemento final de control sin realimentación de posición


Para configurar PID_3Step para un elemento final de control sin realimentación de posición,
proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "No Feedback".

Elemento final de control con señales de tope digitales


Para configurar PID_3Step para un elemento final de control con señales de tope, proceda del
siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "No Feedback".
2. Active la casilla de verificación "Señal tope del actuador".
3. Seleccione "Instrucción" como fuente para Actuator_H y Actuator_L.
4. Introduzca las direcciones de las entradas digitales para Actuator_H y Actuator_L.

Elemento final de control con realimentación de posición analógica


Para configurar PID_3Step para un elemento final de control con realimentación de posición
analógica, proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "Feedback" o "Feedback_PER".
– En Feedback_PER utilice el valor de la entrada analógica. El escalado de Feedback_PER
se configura en la configuración del elemento final de control.
– En Feedback procese el valor de la entrada analógica a través de su programa de
usuario.
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica o la variable de su programa de usuario.

Regulación PID
110 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

Elemento final de control con realimentación de posición analógica y señales de tope


Para configurar PID_3Step para un elemento final de control con realimentación de posición
analógica y señales de tope, proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "Feedback" o "Feedback_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica o la variable de su programa de usuario.
4. Active la casilla de verificación "Señal tope del actuador".
5. Seleccione "Instrucción" como fuente para Actuator_H y Actuator_L.
6. Introduzca las direcciones de las entradas digitales para Actuator_H y Actuator_L.

PID_3Step ofrece un valor de salida analógico (Output_PER) y valores de salida digitales


(Output_UP, Output_DN). El valor de salida que se utilice dependerá del actuador.
• Output_PER
El actuador dispone de un tiempo de posicionamiento del motor relevante, se activa a
través de una salida analógica y se controla con una señal continua, como puede ser 0 a
10 V, 4 a 20 mA. El valor de Output_PER se corresponde con la posición de destino de la
válvula, p. ej., Output_PER = 13824, cuando la válvula debe abrirse hasta un 50 %.
PID_3Step tiene en cuenta, p. ej., para la optimización automática y el comportamiento
Anti-Windup, que el valor de salida analógico actúa en el proceso con un retardo debido al
tiempo de posicionamiento del motor. Si en su proceso no actúa ningún tiempo de
posicionamiento del motor relevante (p. ej., con electroválvulas), de forma que el valor de
salida actúa directamente y en toda su magnitud sobre el proceso, utilice PID_Compact en
su lugar.
• Output_UP, Output_DN
El actuador dispone de un tiempo de posicionamiento del motor relevante y se controla
mediante dos salidas digitales.
Output_UP desplaza la válvula hacia el estado abierto.
Output_DN desplaza la válvula hacia el estado cerrado.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el
correcto funcionamiento, sobre todo, durante la optimización automática y el
comportamiento Anti-Windup. Por tanto, configure el tiempo de posicionamiento del motor
en "Ajustes del actuador" con el valor que requiere el motor para desplazar el actuador del
estado cerrado al estado abierto.

Procedimiento
Para utilizar el valor de salida analógico, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada Output (analógica).
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida analógica.
Para utilizar el valor de salida digital, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output (digital)".
2. Seleccione "Instrucción" para Output_UP y Output_DN.
3. Introduzca las direcciones de las salidas digitales.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 111
Utilizar PID_3Step
6.2 PID_3Step V2

Para acondicionar el valor de salida mediante el programa de usuario, proceda del siguiente
modo:
1. En la lista desplegable "Output" seleccione la entrada adecuada al actuador.
2. Seleccione "Instrucción".
3. Indique el nombre de la variable que utilizará para acondicionar el valor de salida.
4. Transfiera el valor de salida acondicionado hasta el actuador a través de una salida
analógica o digital de la CPU.

[Link] Ajustes de valor real V2

Si en los ajustes básicos ha configurado el uso de Input_PER, deberá convertir el valor de la


entrada analógica a la magnitud física del valor real. En el cuadro de visualización Input_PER
se muestra la configuración actual.
Si el valor real es directamente proporcional al valor de la entrada analógica, Input_PER se
escalará a partir de un par de valores inferior y superior.

Procedimiento
Para escalar el valor real, haga lo siguiente:
1. En los campos de entrada "Valor real inferior escalado" y "abajo", introduzca el par de
valores inferior.
2. En los campos de entrada "Valor real superior escalado" y "arriba", introduzca el par de
valores superior.
La configuración hardware contiene pares de valores predeterminados. Para utilizar los pares
de valores contenidos en la configuración hardware, haga lo siguiente:
1. Marque la instrucción PID_3Step en el editor de programación.
2. En los ajustes básicos, interconecte Input_PER con una entrada analógica.
3. En los ajustes del valor real, haga clic en el botón "Ajuste automático".
Los valores existentes se sobrescribirán con los valores de la configuración hardware.

Como valores límite para el sistema regulado defina los límites superior e inferior absolutos
del valor real de modo que sean razonables. Tan pronto como dichos valores se rebasen por
exceso o defecto, se producirá un error (ErrorBits = 0001h). La optimización se cancela
cuando se rebasan los valores reales. Defina en los ajustes del actuador cómo debe reaccionar
PID_3Step en caso de error en el modo automático.

[Link] Ajustes de actuador V2

Tiempos específicos del actuador


Para proteger el elemento final de control frente a daños, ajuste el tiempo de
posicionamiento del motor y los tiempos mínimos de conexión y desconexión. Los datos
figuran en la hoja de datos del elemento final de control.

Regulación PID
112 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

El tiempo de posicionamiento del motor es el tiempo en segundos que requiere el motor para
desplazar el elemento final de control del estado cerrado al estado abierto. El tiempo de
posicionamiento del motor puede calcularse durante la puesta en marcha.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el
correcto funcionamiento, sobre todo, durante la optimización automática y el
comportamiento Anti-Windup.
Si en su proceso no actúa ningún tiempo de posicionamiento del motor relevante (p. ej., con
electroválvulas), de forma que el valor de salida actúa directamente y en toda su magnitud
sobre el proceso, utilice PID_Compact en su lugar.
El tiempo de posicionamiento del motor es remanente. Si modifica manualmente el tiempo
de posicionamiento del motor, debe cargar PID_3Step por completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)
Si se utiliza Output_UP y Output_DN, debe reducirse la frecuencia de conmutación con los
tiempos mínimos de conexión y desconexión.
En el modo automático se acumulan los tiempos calculados de conexión y desconexión y
estos no surten efecto hasta que la suma sea igual o superior al tiempo mínimo de conexión o
desconexión.
En el modo manual, Manual_UP = TRUE o Manual_DN = TRUE permiten controlar el elemento
final de control al menos en el tiempo mínimo de conexión o desconexión.
Si en los ajustes básicos ha elegido el valor analógico de salida Output_PER, el tiempo de
conexión mínimo y el tiempo de desconexión mínimo no se evalúan ni se pueden modificar.

Comportamiento en caso de error


PID_3Step está preajustado de manera que, en caso de error, la regulación permanece activa
en la mayoría de los casos. Si en el modo de regulación se producen errores con frecuencia,
este ajuste empeorará el comportamiento de regulación. Compruebe en tal caso el parámetro
Errorbits y elimine la causa de error.

ATENCIóN
Su instalación puede sufrir daños.
Si en caso de error se emite "Valor actual para la duración del error" o "Valor de salida
sustitutivo mientras dure el error", PID_3Step se mantiene en modo automático también
cuando se rebasan los límites del valor real. De este modo, su instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

En caso de error, PID_3Step emite un valor de salida configurable:


• Valor actual
PID_3Step está desconectado y ya no modifica la posición del elemento final de control.
• Valor actual para la duración del error
Las funciones de regulación de PID_3Step están desactivadas y ya no se modifica la
posición del elemento final de control.
Si se producen los siguientes errores en el modo automático, PID_3Step regresa a dicho
modo en cuanto los errores en cuestión dejan de existir.
– 0002h: Valor no válido en el parámetro Input_PER.
– 0200h: Valor no válido en el parámetro Input.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 113
Utilizar PID_3Step
6.2 PID_3Step V2

– 0400h: Error al calcular el valor de salida.


– 1000h: Valor no válido en el parámetro Setpoint.
– 2000h: Valor no válido en el parámetro Feedback_PER.
– 4000h: Valor no válido en el parámetro Feedback.
– 8000h: Error en la realimentación digital de posición.
– 20000h: Valor no válido en la variable SavePosition.
Si se producen uno o varios de los errores siguientes, PID_3Step permanece en
modo automático:
– 0001h: El parámetro Input se encuentra fuera de los límites del valor real.
– 0800h: Error en tiempo de muestreo
– 40000h: Valor no válido en el parámetro Disturbance.
Si aparece un error en el modo manual, PID_3Step permanece en dicho modo.
Si durante la optimización o la medición del tiempo de posicionamiento se produce un
error, PID_3Step cambia al modo de operación en que se había comenzado la
optimización o la medición del tiempo de posicionamiento. La optimización no se cancela
con los siguientes errores únicamente:
– 0020h: La optimización inicial no está permitida durante la optimización fina.
• Valor de salida sustitutivo
PID_3Step desplaza el elemento final de control (actuador) al valor de salida sustitutivo y
se desconecta.
• Valor de salida sustitutivo mientras dure el error
PID_3Step desplaza el elemento final de control (actuador) al valor de salida sustitutivo.
Una vez alcanzado el valor de salida sustitutivo, PID_3Step se comporta como se describe
en "Valor actual mientras dure el error".
El valor de salida sustitutivo se introduce en "%".
Si se utiliza Output_UP y Output_DN sin realimentación de posición analógica
([Link] = FALSE y [Link] = FALSE), solo es posible configurar los
valores de salida sustitutivos 0 % y 100 %. Para poder alcanzar el tope superior e inferior, el
elemento final de control se desplaza en el sentido correspondiente. Si existen señales de
tope ([Link] = TRUE), Output_UP y Output_DN se restablecen cuando
Actuator_H = TRUE o Actuator_L = TRUE. Si no existen señales de tope
([Link] = FALSE), Output_UP y Output_DN se restablecen después de un
tiempo de desplazamiento de [Link] * [Link]/100.
Si se utiliza Output_PER o realimentación de posición analógica ([Link] = TRUE
o [Link] = TRUE), es posible configurar cualesquiera valores de salida
sustitutivos dentro de los límites establecidos para valores de salida.

Escalar realimentación de posición


Si con el ajuste básico se ha elegido el uso de Feedback_PER, el valor de la entrada analógica
debe convertirse en %. En el cuadro de visualización "Feedback" se muestra el ajuste actual.
Feedback_PER se escala a partir de una pareja de valores inferiores y superiores.
1. En los campos de entrada "Tope inferior" y "Abajo" introduzca la pareja de valores
inferiores.
2. En los campos de entrada "Tope superior" y "Arriba" introduzca la pareja de valores
superiores.

Regulación PID
114 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

El valor de "Tope inferior" debe ser inferior al de "Tope superior"; por su parte, "Abajo" debe
ser inferior a "Arriba".
Los valores válidos para el "tope superior" y el "tope inferior" dependen de:
• Sin Feedback, Feedback, Feedback_PER
• Output (analógico), Output (digital)

Output Feedback Tope inferior Tope superior


Output (digital) Sin Feedback No ajustable (0.0 %) No ajustable (100.0 %)
Output (digital) Feedback -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (digital) Feedback_PER -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (analógico) Sin Feedback No ajustable (0.0 %) No ajustable (100.0 %)
Output (analógico) Feedback -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (analógico) Feedback_PER -100.0 % o 0.0 % 0.0 % o +100.0 %

Limitar el valor de salida


Los límites del valor de salida pueden rebasarse por exceso o por defecto durante la medición
del tiempo de posicionamiento y en el modo = 10. En los demás modos de operación, el valor
de salida se limita a estos valores.
Introduzca en los campos de entrada "Lím. sup. v. de salida" y "Lím. inf. v. de salida" los límites
absolutos del valor de salida. Los límites del valor de salida deben encontrarse dentro del
"Tope inferior" o el "Tope superior".
Si no existe ningún Feedback y está ajustado Output (digital), no se puede limitar el valor de
salida. Output_UP y Output_DN se restablecen entonces si se cumple Actuator_H = TRUE o
Actuator_L = TRUE. Si tampoco existen señales de tope, Output_UP y Output_DN se
restablecen después de un tiempo de desplazamiento del 150% del tiempo de
posicionamiento del motor.
El valor predeterminado 150% puede modificarse mediante la variable
[Link]. A partir de PID_3Step versión 2.3 puede desactivarse la vigilancia
y limitación del tiempo de desplazamiento con [Link] = 0.0.

[Link] Ajustes avanzados V2

Configure un límite de advertencia inferior y uno superior para el valor real en la ventana de
configuración "Monitorización del valor real". Si durante el funcionamiento se rebasa uno de
los límites de advertencia por defecto o por exceso, se muestra una advertencia en la
instrucción "PID_3Step".
• En el parámetro de salida "InputWarning_H", si se ha rebasado por exceso el límite
superior de advertencia.
• En el parámetro de salida "InputWarning_L", si se ha rebasado por defecto el límite inferior
de advertencia.
Los límites de advertencia deben encontrarse dentro de los límites superior e inferior del valor
real.
Si no introduce ningún valor, se utilizan los límites superior e inferior del valor real.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 115
Utilizar PID_3Step
6.2 PID_3Step V2

Ejemplo
Límite superior del valor real = 98 °C; límite superior de advertencia = 90 °C
Límite inferior de advertencia = 10 ℃; límite inferior del valor real = 0 ℃
PID_3Step se comporta del modo siguiente:

Valor real InputWarning_H InputWarning_L ErrorBits Modo de opera­


ción
> 98 °C TRUE FALSE 0001h Según configura­
ción
≤ 98 °C y > 90 °C TRUE FALSE 0000h Modo automático
≤ 90 °C y ≥ 10 °C FALSE FALSE 0000h Modo automático
< 10°C y ≥ 0 °C FALSE TRUE 0000h Modo automático
< 0 °C FALSE TRUE 0001h Según configura­
ción
Configure en los ajustes del actuador cómo debe reaccionar PID_3Step si se rebasa el límite
superior o inferior del valor real.

En la ventana de configuración "Parámetros PID" se visualizan los parámetros PID. Durante la


optimización los parámetros PID se adaptan al sistema regulado. No es necesario introducir
los parámetros PID de forma manual.

NOTA
Los parámetros PID efectivos actualmente están en la estructura [Link].
Para prevenir un comportamiento erróneo del regulador PID, los parámetros PID efectivos
actualmente solo deben modificarse online en el modo de operación "Inactivo".
Si desea modificar online los parámetros PID en los modos de operación "Automático" o
"Manual", modifique los parámetros PID en la estructura CtrlParamsBackUp y aplique los
cambios en la estructura [Link], del siguiente modo:
• PID_3Step V1: Aplique los cambios poniendo [Link] = TRUE
• PID_3Step V2: Aplique los cambios poniendo LoadBackUp = TRUE
Los cambios online en los parámetros PID realizados en el modo de operación "Automático"
pueden provocar saltos en el valor de salida.

Regulación PID
116 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

El algoritmo PID funciona de acuerdo con la siguiente fórmula:


1 TD · s
[
Δ y = K p · s · (b · w - x) +
TI · s
(w - x) +
a · TD · s + 1
(c · w - x) ]
Δy Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada T1 = a × TD)
TD Tiempo derivativo
c Ponderación de la acción D
El gráfico siguiente muestra cómo entran los parámetros en el algoritmo PID.

E
6HWSRLQW Z

 '7 ' .
F 3
˂\

'HDGB% 


7L ,
6FDOHG,QSXW [

)DF7W $QWL:LQGXS

Todos los parámetros PID son remanentes. Si introduce manualmente los parámetros PID,
debe cargar PID_3Step por completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Ganancia proporcional
El valor indica la ganancia proporcional del regulador. PID_3Step no funciona con una
ganancia proporcional negativa. El sentido de regulación se invierte en Ajustes básicos > Tipo
de regulación.

Tiempo de integración
El tiempo de integración determina el comportamiento temporal de la acción I. La
desconexión de la acción I se realiza con el tiempo de integración = 0,0. Si el tiempo de
integración se modifica online en el modo de operación "Automático" de un valor cualquiera
a 0.0, la acción I actual se borra y se produce un salto del valor de salida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 117
Utilizar PID_3Step
6.2 PID_3Step V2

Tiempo derivativo
El tiempo de la acción derivada determina el comportamiento temporal de la acción D. La
desconexión de la acción D se realiza con el tiempo derivativo = 0,0.

Coeficiente para el retardo de la acción derivada


El efecto de la acción D se retrasa mediante el coeficiente de retardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo x coeficiente de retardo de la acción
derivada
• 0.0: la acción D solo surte efecto para un ciclo y, por ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regulados con una constante
de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto de la acción D.

Ponderación de la acción P
En el caso de que se modifique la consigna, es posible atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consigna
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es totalmente efectiva.

Ponderación de la acción D
En el caso de que se modifique la consigna, es posible atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva cuando se cambia la consigna.
• 0.0: la acción D no es efectiva cuando cambia la consigna.
Si se produce una modificación del valor real, la acción D es totalmente efectiva.

Tiempo de muestreo algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de muestreo PID_3Step. Todas las
demás funciones de PID_3Step se ejecutan con cada llamada.

Ancho de zona muerta


La zona muerta suprime los niveles del ruido en el estado estabilizado del regulador. El ancho
de zona muerta indica el tamaño de la zona muerta. Con un ancho de zona muerta de 0.0, la
zona muerta se encuentra desactivada.

Regulación PID
118 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

Si para la ponderación de la acción P o de la acción D se han configurado valores diferentes


de 1.0, los cambios de la consigna también tendrán efecto sobre el valor de salida en la zona
muerta.
Los cambios del valor real comprendidos dentro de la zona muerta no tienen efecto sobre el
valor de salida, independientemente de la ponderación.

6.2.2 Puesta en servicio de PID_3Step V2

[Link] Optimización inicial V2

La optimización inicial determina el comportamiento del proceso a un impulso del valor de


salida y busca el punto de inflexión. A partir de la inclinación máxima y del tiempo muerto del
sistema regulado se calculan los parámetros PID óptimos. Para obtener los mejores
parámetros PID, debe efectuarse una optimización inicial y una optimización fina.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los
parámetros PID. Un ruido del valor real es aceptable siempre que la subida del valor real sea
considerablemente mayor que el ruido. Esto tiene más probabilidades de suceder en los
modos "Inactivo" o "Manual". Es preciso realizar una copia de seguridad de los parámetros PID
antes de volver a calcularlos.
La consigna se congela durante la optimización inicial.

Requisitos
• La instrucción "PID_3Step" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• El tiempo de posicionamiento del motor está configurado o medido.
• PID_3Step se encuentra en el modo de operación "Inactivo", "Modo manual" o "Modo
automático".
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").

Procedimiento
Para poder realizar una optimización inicial, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step > Puesta en
servicio".
2. En la lista desplegable "Modo de optimización" del área de trabajo "Optimización"
seleccione la entrada "Optimización inicial".
3. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia la optimización inicial.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 119
Utilizar PID_3Step
6.2 PID_3Step V2

– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
Haga clic en el símbolo "Stop" cuando la barra de progreso haya alcanzado el 100% y se
deba presuponer un bloqueo de la optimización. Compruebe la configuración del
objeto tecnológico y, si procede, vuelva a iniciar la optimización.

Resultado
Si la optimización inicial ha finalizado sin ningún mensaje de error, significa que los
parámetros PID se han optimizado. PID_3Step cambia al modo automático y utiliza los
parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power
OFF) y al rearrancar por completo la CPU.
Si no es posible realizar la optimización inicial, PID_3Step se comporta del modo configurado
en Comportamiento en caso de error.

[Link] Optimización fina V2

La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros
PID se optimizan para el punto de operación a partir de la amplitud y la frecuencia. A partir de
los resultados se vuelven a calcular todos los parámetros PID. Los parámetros PID existentes
después de la optimización fina muestran en su mayoría un comportamiento de guía y ante
fallos mucho mejor que los parámetros PID de la optimización inicial. Para obtener los
mejores parámetros PID, debe efectuarse una optimización inicial y una optimización fina.
PID_3Step intenta generar automáticamente una oscilación que es mayor que el ruido del
valor real. La estabilidad del valor real ejerce tan sólo una mínima influencia sobre la
optimización fina. Es preciso realizar una copia de seguridad de los parámetros PID antes de
volver a calcularlos.
La consigna se congela durante la optimización fina.

Requisitos
• La instrucción "PID_3Step" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• El tiempo de posicionamiento del motor está configurado o medido.
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se
ha alcanzado cuando el valor real coincide con la consigna.
• No se esperan perturbaciones.
• PID_3Step se encuentra en el modo de operación inactivo, automático o manual.

Regulación PID
120 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

El proceso depende de la situación de inicio


La optimización fina se desarrolla del modo siguiente en el momento del inicio:
• Modo automático
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la
optimización fina desde el modo automático.
PID_3Step regula con los parámetros PID existentes hasta que el lazo de regulación es
estacionario y se han cumplido las condiciones para una optimización fina. Sólo entonces
comienza la optimización fina.
• Inactivo o manual
Se realiza primero una optimización inicial. Con los parámetros PID calculados, la
regulación se realiza hasta que el lazo de regulación es estacionario y se han cumplido las
condiciones para una optimización fina. Sólo entonces comienza la optimización fina.

Procedimiento
Para poder realizar una optimización fina, proceda del siguiente modo:
1. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización fina".
2. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia el proceso de optimización fina.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los errores
ocurridos. La barra de progreso muestra el progreso del paso actual.

NOTA
En el grupo "Modo de optimización" haga clic en el símbolo "Stop" cuando la barra de
progreso haya alcanzado el 100% y se deba presuponer un bloqueo de la optimización.
Compruebe la configuración del objeto tecnológico y, si procede, vuelva a iniciar la
optimización.

Resultado
Si durante la optimización fina no se producen errores, significa que los parámetros PID se
han optimizado. PID_3Step cambia al modo automático y utiliza los parámetros optimizados.
Los parámetros PID optimizados se conservan al desconectar (Power OFF) y al rearrancar por
completo la CPU.
Si se han producido errores durante la optimización fina, PID_3Step se comporta del modo
configurado en Comportamiento en caso de error.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 121
Utilizar PID_3Step
6.2 PID_3Step V2

[Link] Realizar la puesta en servicio con parámetros PID manuales V2

Requisitos
• La instrucción "PID_3Step" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• El tiempo de posicionamiento del motor está configurado o medido.
• PID_3Step se encuentra en el modo de operación "Inactivo".
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").

Procedimiento
Para poner en marcha PID_3Step con parámetros PID manuales, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step" > Configuración".
2. En la ventana de configuración haga clic en "Ajustes avanzados > Parámetros PID".
3. Active la casilla de verificación "Activar entrada manual".
4. Introduzca los parámetros PID.
5. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step > Puesta en
servicio".
6. Establezca una conexión online con la CPU.
7. Cargue los parámetros PID en la CPU.
8. Haga clic en el símbolo "Start PID_3Step".

Resultado
PID_3Step cambia al modo automático y realiza la regulación con los parámetros PID actuales.
Consulte
también
Parámetros PID V2 (Página 116)

[Link] Medir el tiempo de posicionamiento del motor V2

Introducción
PID_3Step necesita un tiempo de posicionamiento del motor lo más preciso posible para
alcanzar un buen resultado de regulación. Los datos de la documentación del elemento final
de control son valores medios para este tipo de elemento final de control. El valor puede
variar para el elemento final de control que se use en cada momento.
Si utiliza actuadores con realimentación de posición o con señales de tope, es posible medir el
tiempo de posicionamiento del motor durante la puesta en servicio. Los límites del valor de

Regulación PID
122 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.2 PID_3Step V2

salida no se tienen en cuenta durante la medición del tiempo de posicionamiento del motor.
El actuador puede desplazarse hasta el tope superior o inferior.
Si no se dispone de una realimentación de posición ni de señales de tope, no es posible medir
el tiempo de posicionamiento del motor.

Actuadores con realimentación de posición analógica


Para medir el tiempo de posicionamiento del motor con realimentación de posición, proceda
del siguiente modo:
Requisitos
• En la configuración básica se ha seleccionado Feedback o Feedback_PER y la señal se
interconecta.
• Se ha establecido una conexión online con la CPU.
1. Active la casilla de verificación "Utilizar realimentación de posición".
2. En el campo de entrada "Posición de destino" indique hacia dónde desea mover el
elemento final de control.
La realimentación de posición actual (posición de inicio) se muestra. La diferencia entre
"Posición de destino" y "Realimentación de posición" debe ser al menos el 50% del rango
admisible para el valor de salida.
3. Haga clic en el símbolo "Start".

Resultado
El elemento final de control se desplaza hasta la posición de destino desde la posición de
inicio. La medición del tiempo se inicia de inmediato y finaliza en cuanto el elemento final de
control ha alcanzado la posición de destino. El tiempo de posicionamiento del motor se
calcula según la fórmula:
Tiempo de posicionamiento del motor = (Límite superior del valor de salida - Límite inferior
del valor de salida) x Tiempo de medición /VALOR ABSOLUTO(Posición de destino - Posición
de inicio).
Se muestran el progreso y el estado de la medición del tiempo de posicionamiento. El tiempo
de posicionamiento medido se almacena en el bloque de datos de instancia de la CPU y se
muestra en el campo "Tiempo de actuación medido" Si ha finalizado la medición del tiempo
de posicionamiento y ActivateRecoverMode = TRUE, PID_3Step pasa al modo desde el que se
inició la medición. Si ha finalizado la medición del tiempo de posicionamiento y
ActivateRecoverMode = FALSE, PID_3Step pasa al modo de operación "Inactivo".

NOTA
Para adoptar el tiempo de posicionamiento del motor medido en el proyecto, haga clic en el
icono "Cargar tiempo pos. medido".

Actuadores con señales de tope


Para medir el tiempo de posicionamiento de los actuadores con señales de tope, proceda del
siguiente modo:

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 123
Utilizar PID_3Step
6.2 PID_3Step V2

Requisitos
• En la configuración básica la casilla de verificación "Señales de tope" está activada y los
actuadores H y L están interconectados.
• Se ha establecido una conexión online con la CPU.
Para medir el tiempo de posicionamiento del motor con señales de tope, proceda del
siguiente modo:
1. Active la casilla de verificación "Utilizar señales de tope del actuador".
2. Seleccione el sentido en el que desee mover el elemento final de control.
– Abrir - Cerrar - Abrir
El elemento final de control se mueve primero hasta el tope superior, después, hasta el
tope inferior y, de nuevo, hasta el tope superior.
– Cerrar - Abrir - Cerrar
El elemento final de control se mueve primero hasta el tope inferior, después, hasta el
tope superior y, de nuevo, hasta el tope inferior.
3. Haga clic en el símbolo "Start".

Resultado
El elemento final de control se mueve en el sentido seleccionado. La medición del tiempo se
inicia cuando el elemento final de control ha alcanzado el primer tope y finaliza cuando el
elemento final de control alcanza este tope por segunda vez. El tiempo medido dividido entre
dos da lugar al tiempo de posicionamiento del motor.
Se muestran el progreso y el estado de la medición del tiempo de posicionamiento. El tiempo
de posicionamiento medido se almacena en el bloque de datos de instancia de la CPU y se
muestra en el campo "Tiempo de actuación medido" Si ha finalizado la medición del tiempo
de posicionamiento y ActivateRecoverMode = TRUE, PID_3Step pasa al modo desde el que se
inició la medición. Si ha finalizado la medición del tiempo de posicionamiento y
ActivateRecoverMode = FALSE, PID_3Step pasa al modo de operación "Inactivo".

Cancelar medición del tiempo de posicionamiento


Una vez cancelada la medición del tiempo de posicionamiento con el botón Stop, PID_3Step
cambia al modo de operación "Inactivo".

Regulación PID
124 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

6.2.3 Simulación de PID_3Step V2 con PLCSIM

NOTA
Simulación con PLCSIM
La simulación de PID_3Step V2.x con PLCSIM para CPU S7-1200 no se soporta.
PID_3Step V2.x solo puede simularse con PLCSIM para CPU S7-1500.
En la simulación con PLCSIM, el comportamiento temporal del PLC simulado no es idéntico al
de un PLC "auténtico". El verdadero ciclo de un OB de alarma cíclica puede presentar mayores
fluctuaciones en un PLC simulado que en un PLC "auténtico".
En la configuración estándar, PID_3Step determina automáticamente el tiempo entre las
llamadas y vigila sus fluctuaciones.
Por tanto, al simular PID_3Step con PLCSIM es posible detectar un error de tiempo de
muestreo (ErrorBits = DW#16#00000800).
Esto provoca la cancelación de las optimizaciones en curso.
La reacción en el modo automático depende del valor de la variable ActivateRecoverMode.
Para evitarlo, debe configurarse PID_3Step en la simulación con PLCSIM del modo siguiente:
• [Link] = FALSE
• [Link] = FALSE
• [Link]: Asigne a estas variables el ciclo del OB de alarma cíclica que se debe
llamar en la unidad segundos.

6.3 PID_3Step V1

6.3.1 Configuración de PID_3Step V1

[Link] Ajustes básicos V1

Configure las propiedades siguientes del objeto tecnológico PID_3Step en el área de ajustes
básicos de la ventana de inspección o de configuración.
• Magnitud física
• Sentido de regulación
• Comportamiento en arranque tras un reset
• Consigna (sólo en la ventana de inspección)
• Valor real (sólo en la ventana de inspección)
• Valor de salida (sólo en la ventana de inspección)
• Realimentación de posición (sólo en la ventana de inspección)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 125
Utilizar PID_3Step
6.3 PID_3Step V1

Consigna, valor real, valor de salida y realimentación de posición


La consigna, el valor real, el valor de salida y la realimentación de posición sólo pueden
configurarse en la ventana de inspección del editor de programación. Para cada valor elija el
origen:
• DB de instancia
Se utiliza el valor que se encuentra almacenado en el DB de instancia.
El valor debe actualizarse en el DB de instancia del programa de usuario.
En la instrucción no puede haber ningún valor.
Modificación posible desde HMI.
• Instrucción
Se utiliza el valor que se interconecta a la instrucción.
Cada vez que se llama la instrucción, el valor se escribe en el DB de instancia.
No se puede modificar desde HMI.

Magnitud física
En el grupo "Tipo de regulación" seleccione la magnitud física y la unidad de la consigna y el
valor real. La consigna y el valor real se muestran en esta unidad.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal.
PID_3Step no funciona con ganancia proporcional negativa. Para reducir el valor real con un
valor de salida más elevado, active la casilla de verificación "Inversión sentido de regulación".
Ejemplos
• Al abrir una válvula de escape se reduce el nivel de llenado de un recipiente.
• Si se aumenta la potencia de refrigeración, disminuye la temperatura.

Comportamiento en arranque tras un reset


Para cambiar inmediatamente al último modo de operación activo tras un rearranque
completo de la CPU, active la casilla de verificación "Activar último modo de operación
después del rearranque de la CPU".
Si la casilla de verificación está desactivada, PID_3Step se queda en el modo de operación
"Inactivo".

Procedimiento
Para especificar una consigna fija, proceda del siguiente modo:
1. Seleccione "DB de instancia".
2. Introduzca una consigna, como puede ser 80 °C.
3. En caso necesario, elimine una entrada de la instrucción.

Regulación PID
126 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Para especificar una consigna variable, proceda del siguiente modo:


1. Seleccione "Instrucción".
2. Indique el nombre de la variable REAL en la que está almacenada la consigna.
Es posible asignar varios valores de forma controlada por programa a la variable REAL
para, por ejemplo, modificar la consigna de tiempo de forma controlada.

Si utiliza directamente el valor de la entrada analógica, PID_3Step escala el valor de la entrada


analógica al tamaño físico.
Si desea acondicionar primero el valor de la entrada analógica, es preciso escribir un
programa propio para su acondicionamiento. Por ejemplo, el valor real no es directamente
proporcional al valor de la entrada analógica. El valor real acondicionado debe estar en
formato de coma flotante.

Procedimiento
Para utilizar directamente el valor de la entrada analógica, proceda del siguiente modo:
1. En la lista desplegable "Input", seleccione la entrada "Input_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica.
Para utilizar el valor real acondicionado en el formato de coma flotante, proceda del siguiente
modo:
1. En la lista desplegable "Input", seleccione la entrada "Input".
2. Seleccione "Instrucción" como fuente.
3. Indique el nombre de la variable en la que está almacenado el valor real acondicionado.

La configuración de la realimentación de posición depende del elemento final de control


utilizado.
• Actuador sin realimentación de posición
• Elemento final de control con señales de tope digitales
• Actuador con realimentación de posición analógica
• Actuador con realimentación de posición analógico y señales de tope

Elemento final de control sin realimentación de posición


Para configurar PID_3Step para un elemento final de control sin realimentación de posición,
proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "No Feedback".

Elemento final de control con señales de tope digitales


Para configurar PID_3Step para un elemento final de control con señales de tope, proceda del
siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "No Feedback".
2. Active la casilla de verificación "Señal tope del actuador".
3. Seleccione "Instrucción" como fuente para Actuator_H y Actuator_L.
4. Introduzca las direcciones de las entradas digitales para Actuator_H y Actuator_L.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 127
Utilizar PID_3Step
6.3 PID_3Step V1

Elemento final de control con realimentación de posición analógica


Para configurar PID_3Step para un elemento final de control con realimentación de posición
analógica, proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "Feedback" o "Feedback_PER".
– En Feedback_PER utilice el valor de la entrada analógica. El escalado de Feedback_PER
se configura en la configuración del elemento final de control.
– En Feedback procese el valor de la entrada analógica a través de su programa de
usuario.
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica o la variable de su programa de usuario.

Elemento final de control con realimentación de posición analógica y señales de tope


Para configurar PID_3Step para un elemento final de control con realimentación de posición
analógica y señales de tope, proceda del siguiente modo:
1. En la lista desplegable "Feedback", seleccione la entrada "Feedback" o "Feedback_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica o la variable de su programa de usuario.
4. Active la casilla de verificación "Señal tope del actuador".
5. Seleccione "Instrucción" como fuente para Actuator_H y Actuator_L.
6. Introduzca las direcciones de las entradas digitales para Actuator_H y Actuator_L.

PID_3Step ofrece un valor de salida analógico (Output_PER) y valores de salida digitales


(Output_UP, Output_DN). El valor de salida que se utilice dependerá del actuador.
• Output_PER
El actuador dispone de un tiempo de posicionamiento del motor relevante, se activa a
través de una salida analógica y se controla con una señal continua, como puede ser 0 a
10 V, 4 a 20 mA. El valor de Output_PER se corresponde con la posición de destino de la
válvula, p. ej., Output_PER = 13824, cuando la válvula debe abrirse hasta un 50 %.
PID_3Step tiene en cuenta, p. ej., para la optimización automática y el comportamiento
Anti-Windup, que el valor de salida analógico actúa en el proceso con un retardo debido al
tiempo de posicionamiento del motor. Si en su proceso no actúa ningún tiempo de
posicionamiento del motor relevante (p. ej., con electroválvulas), de forma que el valor de
salida actúa directamente y en toda su magnitud sobre el proceso, utilice PID_Compact en
su lugar.
• Output_UP, Output_DN
El actuador dispone de un tiempo de posicionamiento del motor relevante y se controla
mediante dos salidas digitales.
Output_UP desplaza la válvula hacia el estado abierto.
Output_DN desplaza la válvula hacia el estado cerrado.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el
correcto funcionamiento, sobre todo, durante la optimización automática y el
comportamiento Anti-Windup. Por tanto, configure el tiempo de posicionamiento del motor
en "Ajustes del actuador" con el valor que requiere el motor para desplazar el actuador del
estado cerrado al estado abierto.

Regulación PID
128 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Procedimiento
Para utilizar el valor de salida analógico, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada Output (analógica).
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida analógica.
Para utilizar el valor de salida digital, proceda del siguiente modo:
1. En la lista desplegable "Output", seleccione la entrada "Output (digital)".
2. Seleccione "Instrucción" para Output_UP y Output_DN.
3. Introduzca las direcciones de las salidas digitales.
Para acondicionar el valor de salida mediante el programa de usuario, proceda del siguiente
modo:
1. En la lista desplegable "Output" seleccione la entrada adecuada al actuador.
2. Seleccione "Instrucción".
3. Indique el nombre de la variable que utilizará para acondicionar el valor de salida.
4. Transfiera el valor de salida acondicionado hasta el actuador a través de una salida
analógica o digital de la CPU.

[Link] Ajuste de valor real V1

Configure la normalización del valor real en la ventana de configuración "Ajustes del valor
real" y fije los límites absolutos del valor real.

Escalar valor real


Si en los ajustes básicos se ha elegido el uso de Input_PER, el valor de la entrada analógica
debe convertirse en el tamaño físico del valor real. En el cuadro de visualización Input_PER se
muestra la configuración actual.
Si el valor real es directamente proporcional al valor de la entrada analógica, Input_PER se
escala a partir de una pareja de valores inferiores y superiores.
1. En los campos de entrada "Valor real inferior escalado" y "Abajo" introduzca la pareja de
valores inferior.
2. En los campos de entrada "Valor real superior escalado" y "arriba", introduzca el par de
valores superior.
La configuración hardware incluye una configuración predeterminada de las parejas de
valores. Para utilizar los pares de valores a partir de la configuración hardware, proceda del
siguiente modo:
1. Marque la instrucción PID_3Step en el editor de programación.
2. En los ajustes básicos, interconecte Input_PER con una entrada analógica.
3. En los ajustes del valor real, haga clic en el botón "Ajuste automático".
Los valores existentes se sobrescriben con los valores de la configuración hardware.

Monitorizar el valor real


Defina los límites absolutos superior e inferior del valor real. Como límites, se deben
introducir valores razonables para el sistema regulado. Durante la optimización es importante

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 129
Utilizar PID_3Step
6.3 PID_3Step V1

disponer de valores límite razonables para obtener los parámetros PID óptimos. La
preasignación del "Límite superior del valor real" es 120%. En la entrada de periferia, el valor
real puede encontrarse como máximo un 18% por encima del rango normalizado (margen de
saturación). No se comunica ningún error más con este ajuste debido al rebase por exceso del
"Límite superior del valor real". Únicamente se detectan la rotura de hilo y el cortocircuito y
PID_3Step se comporta según la reacción configurada en caso de error.

ATENCIóN
Su instalación puede sufrir daños.
Si ajusta valores muy altos (z. B. -3,4*1038...+3,4*1038) como límites del valor real, se
desactiva la monitorización del valor real. Esto puede dar lugar a daños en la instalación.
Configure límites del valor real razonables para su sistema regulado.

[Link] Ajuste de actuador V1

Tiempos específicos del actuador


Para proteger el elemento final de control frente a daños, ajuste el tiempo de
posicionamiento del motor y los tiempos mínimos de conexión y desconexión. Los datos
figuran en la hoja de datos del elemento final de control.
El tiempo de posicionamiento del motor es el tiempo en segundos que requiere el motor para
desplazar el elemento final de control del estado cerrado al estado abierto. El actuador se
mueve en un sentido a como máximo el 110 % del tiempo de posicionamiento del motor. El
tiempo de posicionamiento del motor puede medirse durante la puesta en servicio.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el
correcto funcionamiento, sobre todo, durante la optimización automática y el
comportamiento Anti-Windup.
Si en su proceso no actúa ningún tiempo de posicionamiento del motor relevante (p. ej., con
electroválvulas), de forma que el valor de salida actúa directamente y en toda su magnitud
sobre el proceso, utilice PID_Compact en su lugar.
Si se utiliza Output_UP y Output_DN, debe reducirse la frecuencia de conmutación con los
tiempos mínimos de conexión y desconexión.
En el modo automático se acumulan los tiempos calculados de conexión y desconexión y
estos no surten efecto hasta que la suma sea igual o superior al tiempo mínimo de conexión o
desconexión.
En el modo manual, un flanco ascendente en Manual_UP o Manual_DN permite controlar el
elemento final de control al menos en el tiempo mínimo de conexión o desconexión.
Si en los ajustes básicos ha elegido el valor analógico de salida Output_PER, el tiempo de
conexión mínimo y el tiempo de desconexión mínimo no se evalúan ni se pueden modificar.

Comportamiento en caso de error


PID_3Step está preajustado de manera que, en caso de error, la regulación permanece activa
en la mayoría de los casos. Si en el modo de regulación se producen errores con frecuencia,
este ajuste empeorará el comportamiento de regulación. Compruebe en tal caso el parámetro
Errorbits y elimine la causa de error.

Regulación PID
130 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

En caso de error, PID_3Step emite un valor de salida configurable:


• Valor actual
PID_3Step está desconectado y ya no modifica la posición del elemento final de control.
• Valor actual para la duración del error
Las funciones de regulación de PID_3Step están desactivadas y ya no se modifica la
posición del elemento final de control.
Si se producen los siguientes errores en el modo automático, PID_3Step regresa a dicho
modo en cuanto los errores en cuestión dejan de existir.
– 0002h: Valor no válido en el parámetro Input_PER.
– 0200h: Valor no válido en el parámetro Input.
– 0800h: Error en tiempo de muestreo
– 1000h: Valor no válido en el parámetro Setpoint.
– 2000h: Valor no válido en el parámetro Feedback_PER.
– 4000h: Valor no válido en el parámetro Feedback.
– 8000h: Error en la realimentación digital de posición.
Si aparece alguno de los errores siguientes en el modo manual, PID_3Step permanece en
dicho modo.
Si se produce un error durante la optimización o durante la medición del tiempo de
posicionamiento, PID_3Step se desconecta.
• Valor de salida sustitutivo
PID_3Step desplaza el elemento final de control (actuador) al valor de salida sustitutivo y
se desconecta.
• Valor de salida sustitutivo mientras dure el error
PID_3Step desplaza el elemento final de control (actuador) al valor de salida sustitutivo.
Una vez alcanzado el valor de salida sustitutivo, PID_3Step se comporta como se describe
en "Valor actual mientras dure el error".
El valor de salida sustitutivo se introduce en "%".
Si se utiliza Output_UP y Output_DN sin realimentación de posición analógica
([Link] = FALSE y [Link] = FALSE), solo es posible configurar los
valores de salida sustitutivos 0 % y 100 %. Para poder alcanzar el tope superior e inferior, el
elemento final de control se desplaza en un sentido con un 110% del tiempo de
posicionamiento del motor. Las señales de tope tienen prioridad.
Si se utiliza Output_PER o realimentación de posición analógica ([Link] = TRUE
o [Link] = TRUE), es posible configurar cualesquiera valores de salida
sustitutivos dentro de los límites establecidos para valores de salida.

Escalar realimentación de posición


Si con el ajuste básico se ha elegido el uso de Feedback_PER, el valor de la entrada analógica
debe convertirse en %. En el cuadro de visualización "Feedback" se muestra el ajuste actual.
Feedback_PER se escala a partir de una pareja de valores inferiores y superiores.
1. En los campos de entrada "Tope inferior" y "Abajo" introduzca la pareja de valores
inferiores.
2. En los campos de entrada "Tope superior" y "Arriba" introduzca la pareja de valores
superiores.
El valor de "Tope inferior" debe ser inferior al de "Tope superior"; por su parte, "Abajo" debe
ser inferior a "Arriba".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 131
Utilizar PID_3Step
6.3 PID_3Step V1

Los valores válidos para el "Tope superior" y el "Tope inferior" dependen de:
• Sin Feedback, Feedback, Feedback_PER
• Output (analógico), Output (digital)

Output Feedback Tope inferior Tope superior


Output (digital) Sin Feedback No ajustable (0.0 %) No ajustable (100.0 %)
Output (digital) Feedback -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (digital) Feedback_PER -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (analógico) Sin Feedback No ajustable (0.0 %) No ajustable (100.0 %)
Output (analógico) Feedback -100.0 % o 0.0 % 0.0 % o +100.0 %
Output (analógico) Feedback_PER -100.0 % o 0.0 % 0.0 % o +100.0 %

Limitar el valor de salida


Los límites del valor de salida solo pueden rebasarse por exceso o por defecto durante la
medición del tiempo de posicionamiento. En los demás modos de operación, el valor de
salida se limita a estos valores.
Introduzca en los campos de entrada "Lím. sup. v. de salida" y "Lím. inf. v. de salida" los límites
absolutos del valor de salida. Los límites del valor de salida deben encontrarse dentro del
"Tope inferior" o el "Tope superior".
Si no hay ningún Feedback y se ha ajustado Output (digital), el valor de salida no se puede
limitar. Las salidas digitales deben desactivarse en Actuator_H = TRUE o Actuator_L = TRUE o
después de un tiempo de desplazamiento del 110% del tiempo de posicionamiento del
motor.

[Link] Ajustes avanzados V1

Configure un límite de advertencia inferior y uno superior para el valor real en la ventana de
configuración "Monitorización del valor real". Si durante el funcionamiento se rebasa uno de
los límites de advertencia por defecto o por exceso, se muestra una advertencia en la
instrucción "PID_3Step".
• En el parámetro de salida "InputWarning_H", si se ha rebasado por exceso el límite
superior de advertencia.
• En el parámetro de salida "InputWarning_L", si se ha rebasado por defecto el límite inferior
de advertencia.
Los límites de advertencia deben encontrarse dentro de los límites superior e inferior del valor
real.
Si no introduce ningún valor, se utilizan los límites superior e inferior del valor real.

Ejemplo
Límite superior del valor real = 98 °C; límite superior de advertencia = 90 °C
Límite inferior de advertencia = 10 ℃; límite inferior del valor real = 0 ℃

Regulación PID
132 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

PID_3Step se comporta del modo siguiente:

Valor real InputWarning_H InputWarning_L Modo de operación


> 98 °C TRUE FALSE Inactivo
≤ 98 °C y > 90 °C TRUE FALSE Modo automático
≤ 90 °C y ≥ 10 °C FALSE FALSE Modo automático
< 10°C y ≥ 0 °C FALSE TRUE Modo automático
< 0 °C FALSE TRUE Inactivo

En la ventana de configuración "Parámetros PID" se visualizan los parámetros PID. Durante la


optimización los parámetros PID se adaptan al sistema regulado. No es necesario introducir
los parámetros PID de forma manual.

NOTA
Los parámetros PID efectivos actualmente están en la estructura [Link].
Para prevenir un comportamiento erróneo del regulador PID, los parámetros PID efectivos
actualmente solo deben modificarse online en el modo de operación "Inactivo".
Si desea modificar online los parámetros PID en los modos de operación "Automático" o
"Manual", modifique los parámetros PID en la estructura CtrlParamsBackUp y aplique los
cambios en la estructura [Link], del siguiente modo:
• PID_3Step V1: Aplique los cambios poniendo [Link] = TRUE
• PID_3Step V2: Aplique los cambios poniendo LoadBackUp = TRUE
Los cambios online en los parámetros PID realizados en el modo de operación "Automático"
pueden provocar saltos en el valor de salida.

El algoritmo PID funciona de acuerdo con la siguiente fórmula:


1 TD · s
[
Δ y = K p · s · (b · w - x) +
TI · s
(w - x) +
a · TD · s + 1
(c · w - x) ]
Δy Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada T1 = a × TD)
TD Tiempo derivativo
c Ponderación de la acción D

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 133
Utilizar PID_3Step
6.3 PID_3Step V1

El gráfico siguiente muestra cómo entran los parámetros en el algoritmo PID.

E
6HWSRLQW Z

 '7 ' .
F 3
˂\

'HDGB% 


7L ,
6FDOHG,QSXW [

)DF7W $QWL:LQGXS

Todos los parámetros PID son remanentes. Si introduce manualmente los parámetros PID,
debe cargar PID_3Step por completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Ganancia proporcional
El valor indica la ganancia proporcional del regulador. PID_3Step no funciona con una
ganancia proporcional negativa. El sentido de regulación se invierte en Ajustes básicos > Tipo
de regulación.

Tiempo de integración
El tiempo de integración determina el comportamiento temporal de la acción I. La
desconexión de la acción I se realiza con el tiempo de integración = 0,0. Si el tiempo de
integración se modifica online en el modo de operación "Automático" de un valor cualquiera
a 0.0, la acción I actual se borra y se produce un salto del valor de salida.

Tiempo derivativo
El tiempo de la acción derivada determina el comportamiento temporal de la acción D. La
desconexión de la acción D se realiza con el tiempo derivativo = 0,0.

Coeficiente para el retardo de la acción derivada


El efecto de la acción D se retrasa mediante el coeficiente de retardo de la acción derivada.

Regulación PID
134 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Retardo de la acción derivada = Tiempo derivativo x coeficiente de retardo de la acción


derivada
• 0.0: la acción D solo surte efecto para un ciclo y, por ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regulados con una constante
de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto de la acción D.

Ponderación de la acción P
En el caso de que se modifique la consigna, es posible atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consigna
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es totalmente efectiva.

Ponderación de la acción D
En el caso de que se modifique la consigna, es posible atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva cuando se cambia la consigna.
• 0.0: la acción D no es efectiva cuando cambia la consigna.
Si se produce una modificación del valor real, la acción D es totalmente efectiva.

Tiempo de muestreo algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de muestreo PID_3Step. Todas las
demás funciones de PID_3Step se ejecutan con cada llamada.

Ancho de zona muerta


La zona muerta suprime los niveles del ruido en el estado estabilizado del regulador. El ancho
de zona muerta indica el tamaño de la zona muerta. Con un ancho de zona muerta de 0.0, la
zona muerta se encuentra desactivada.
Si para la ponderación de la acción P o de la acción D se han configurado valores diferentes
de 1.0, los cambios de la consigna también tendrán efecto sobre el valor de salida en la zona
muerta.
Los cambios del valor real comprendidos dentro de la zona muerta no tienen efecto sobre el
valor de salida, independientemente de la ponderación.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 135
Utilizar PID_3Step
6.3 PID_3Step V1

6.3.2 Puesta en servicio de PID_3Step V1

[Link] Puesta en servicio V1

En la zona de trabajo "Optimización" es posible observar la consigna, el valor real y el valor de


salida en función del tiempo. En el registrador de curvas se soportan las siguientes funciones
de puesta en servicio:
• Optimización inicial del regulador
• Optimización fina del regulador
• Observación de la regulación en curso en la ventana de curvas
Para todas las funciones es preciso realizar una conexión online a la CPU.

Principios básicos del manejo


• Seleccione el tiempo de actualización que desee en la lista desplegable "Tiempo de
actualización".
Todos los valores del área de trabajo de optimización se actualizan en el tiempo de
actualización seleccionado.
• Haga clic en el botón "Inicio" en el grupo Medición si desea utilizar las funciones de puesta
en servicio.
Se inicia el registro de los valores. En el visor de curvas se registran los valores actuales de
consigna, valor real y valor de salida. Se habilita el manejo de la ventana de puesta en
servicio.
• Haga clic en el botón "Parar" si desea finalizar las funciones de puesta en servicio.
Los valores mostrados en el visor de curvas pueden continuar analizándose.
• Al cerrar la ventana de puesta en servicio finaliza el registro en el visor de curvas y los
valores registrados se borran.

[Link] Optimización inicial V1

La optimización inicial determina el comportamiento del proceso a un impulso del valor de


salida y busca el punto de inflexión. A partir de la inclinación máxima y del tiempo muerto del
sistema regulado se calculan los parámetros PID óptimos.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los
parámetros PID. Un ruido del valor real es aceptable siempre que la subida del valor real sea
considerablemente mayor que el ruido. Es preciso realizar una copia de seguridad de los
parámetros PID antes de volver a calcularlos.
La consigna se congela durante la optimización inicial.

Regulación PID
136 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Requisitos
• La instrucción "PID_3Step" se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• PID_3Step se encuentra en el modo de operación "Inactivo" o "Manual".
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").

Procedimiento
Para poder realizar una optimización inicial, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step > Puesta en
servicio".
2. En la lista desplegable "Modo de optimización" del área de trabajo "Optimización"
seleccione la entrada "Optimización inicial".
3. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia la optimización inicial.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los fallos ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
Haga clic en el símbolo "Stop" cuando la barra de progreso haya alcanzado el 100% y se
deba presuponer un bloqueo de la optimización. Compruebe la configuración del
objeto tecnológico y, si procede, vuelva a iniciar la optimización.

Resultado
Si la optimización inicial ha finalizado sin ningún mensaje de error, significa que los
parámetros PID se han optimizado. PID_3Step cambia al modo automático y utiliza los
parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power
OFF) y al rearrancar por completo la CPU.
Si no es posible realizar la optimización inicial, PID_3Step cambia al modo de operación
"Inactivo".

[Link] Optimización fina V1

La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros
PID se optimizan para el punto de operación a partir de la amplitud y la frecuencia. A partir de
los resultados se vuelven a calcular todos los parámetros PID. Los parámetros PID existentes
después de la optimización fina muestran en su mayoría un comportamiento de guía y ante
fallos mucho mejor que los parámetros PID de la optimización inicial.
PID_3Step intenta generar automáticamente una oscilación que es mayor que el ruido del
valor real. La estabilidad del valor real ejerce tan sólo una mínima influencia sobre la
optimización fina. Es preciso realizar una copia de seguridad de los parámetros PID antes de
volver a calcularlos.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 137
Utilizar PID_3Step
6.3 PID_3Step V1

La consigna se congela durante la optimización fina.

Requisitos
• La instrucción PID_3Step se llama en un OB se alarma cíclica.
• ManualEnable = FALSE
• El tiempo de posicionamiento del motor está configurado o medido.
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se
ha alcanzado cuando el valor real coincide con la consigna.
• No se esperan perturbaciones.
• PID_3Step se encuentra en el modo de operación inactivo, automático o manual.

El proceso depende de la situación de inicio


La optimización fina se desarrolla del modo siguiente en el momento del inicio:
• Modo automático
Si desea mejorar los parámetros PID existentes mediatne optimización, inicie la
optimización fina desde el modo automático.
PID_3Step regula con los parámetros PID existentes hasta que el lazo de regulación es
estacionario y se han cumplido las condiciones para una optimización fina. Sólo entonces
comienza la optimización fina.
• Inactivo o manual
Se realiza primero una optimización inicial. Con los parámetros PID calculados, la
regulación se realiza hasta que el lazo de regulación es estacionario y se han cumplido las
condiciones para una optimización fina. Sólo entonces comienza la optimización fina.

Procedimiento
Para poder realizar una optimización fina, proceda del siguiente modo:
1. En la lista desplegable "Modo de optimización" seleccione la entrada "Optimización fina".
2. Haga clic en el símbolo "Start".
– Se establece una conexión online.
– Se inicia el registro de los valores.
– Se inicia el proceso de optimización fina.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los errores
ocurridos. La barra de progreso muestra el progreso del paso actual.

NOTA
En el grupo "Modo de optimización" haga clic en el símbolo "Stop" cuando la barra de
progreso haya alcanzado el 100% y se deba presuponer un bloqueo de la optimización.
Compruebe la configuración del objeto tecnológico y, si procede, vuelva a iniciar la
optimización.

Regulación PID
138 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Resultado
Si la optimización fina ha finalizado sin ningún mensaje de error, significa que los parámetros
PID se han optimizado. PID_3Step cambia al modo automático y utiliza los parámetros
optimizados. Los parámetros PID optimizados se conservan al desconectar (Power OFF) y al
rearrancar por completo la CPU.
Si se produjeran errores durante la optimización fina, PID_3Step cambia al modo de
operación "Inactivo".

[Link] Realizar la puesta en servicio con parámetros PID manuales V1

Procedimiento
Para poner en marcha PID_3Step con parámetros PID manuales, proceda del siguiente modo:
1. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step" > Configuración".
2. En la ventana de configuración haga clic en "Ajustes avanzados > Parámetros PID".
3. Active la casilla de verificación "Activar entrada manual".
4. Introduzca los parámetros PID.
5. Haga doble clic en la navegación del proyecto en la entrada "PID_3Step" > Puesta en
servicio".
6. Establezca una conexión online con la CPU.
7. Cargue los parámetros PID en la CPU.
8. Haga clic en el símbolo "Activar regulador".

Resultado
PID_3Step cambia al modo automático y realiza la regulación con los parámetros PID actuales.

[Link] Medir el tiempo de posicionamiento del motor V1

Introducción
PID_3Step necesita un tiempo de posicionamiento del motor lo más preciso posible para
alcanzar un buen resultado de regulación. Los datos de la documentación del elemento final
de control son valores medios para este tipo de elemento final de control. El valor puede
variar para el elemento final de control que se use en cada momento.
Si utiliza actuadores con realimentación de posición o con señales de tope, es posible medir el
tiempo de posicionamiento del motor durante la puesta en servicio. Los límites del valor de
salida no se tienen en cuenta durante la medición del tiempo de posicionamiento del motor.
El actuador puede desplazarse hasta el tope superior o inferior.
Si no se dispone de una realimentación de posición ni de señales de tope, no es posible medir
el tiempo de posicionamiento del motor.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 139
Utilizar PID_3Step
6.3 PID_3Step V1

Actuadores con realimentación de posición analógica


Para medir el tiempo de posicionamiento del motor con realimentación de posición, proceda
del siguiente modo:
Requisitos
• En la configuración básica se ha seleccionado Feedback o Feedback_PER y la señal se
interconecta.
• Se ha establecido una conexión online con la CPU.
1. Active la casilla de verificación "Utilizar realimentación de posición".
2. En el campo de entrada "Posición de destino" indique hacia dónde desea mover el
elemento final de control.
La realimentación de posición actual (posición de inicio) se muestra. La diferencia entre
"Posición de destino" y "Realimentación de posición" debe ser al menos el 50% del rango
admisible para el valor de salida.
3. Haga clic en el botón "Iniciar medición tiempo de posicionamiento".

Resultado
El elemento final de control se desplaza hasta la posición de destino desde la posición de
inicio. La medición del tiempo se inicia de inmediato y finaliza en cuanto el elemento final de
control ha alcanzado la posición de destino. El tiempo de posicionamiento del motor se
calcula según la fórmula:
Tiempo de posicionamiento del motor = (Límite superior del valor de salida - Límite inferior
del valor de salida) x Tiempo de medición /VALOR ABSOLUTO(Posición de destino - Posición
de inicio).
Se muestran el progreso y el estado de la medición del tiempo de posicionamiento. El tiempo
de posicionamiento medido se almacena en el bloque de datos de instancia de la CPU y se
muestra en el campo "Tiempo de actuación medido" Una vez finalizada la medición del
tiempo de posicionamiento, PID_3Step cambia al modo de operación "Inactivo".

NOTA
Para adoptar el tiempo de posicionamiento del motor medido en el proyecto, haga clic en el
icono "Cargar tiempo pos. medido".

Actuadores con señales de tope


Para medir el tiempo de posicionamiento de los actuadores con señales de tope, proceda del
siguiente modo:
Requisitos
• En la configuración básica la casilla de verificación "Señales de tope" está activada y los
actuadores H y L están interconectados.
• Se ha establecido una conexión online con la CPU.

Regulación PID
140 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_3Step
6.3 PID_3Step V1

Para medir el tiempo de posicionamiento del motor con señales de tope, proceda del
siguiente modo:
1. Active la casilla de verificación "Utilizar señales de tope del actuador".
2. Seleccione el sentido en el que desee mover el elemento final de control.
– Abrir - Cerrar - Abrir
El elemento final de control se mueve primero hasta el tope superior, después, hasta el
tope inferior y, de nuevo, hasta el tope superior.
– Cerrar - Abrir - Cerrar
El elemento final de control se mueve primero hasta el tope inferior, después, hasta el
tope superior y, de nuevo, hasta el tope inferior.
3. Haga clic en el botón "Iniciar medición tiempo de posicionamiento".

Resultado
El elemento final de control se mueve en el sentido seleccionado. La medición del tiempo se
inicia cuando el elemento final de control ha alcanzado el primer tope y finaliza cuando el
elemento final de control alcanza este tope por segunda vez. El tiempo medido dividido entre
dos da lugar al tiempo de posicionamiento del motor.
Se muestran el progreso y el estado de la medición del tiempo de posicionamiento. El tiempo
de posicionamiento medido se almacena en el bloque de datos de instancia de la CPU y se
muestra en el campo "Tiempo de actuación medido" Una vez finalizada la medición del
tiempo de posicionamiento, PID_3Step cambia al modo de operación "Inactivo".

Cancelar medición del tiempo de posicionamiento


Una vez finalizada la medición del tiempo de posicionamiento, PID_3Step cambia de
inmediato al modo de operación "Inactivo". El elemento final de control deja de moverse. Es
posible volver a activar PID-3Step en el registrador de curvas.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 141
Utilizar PID_3Step
6.3 PID_3Step V1

6.3.3 Simulación de PID_3Step V1 con PLCSIM

NOTA
Simulación con PLCSIM
En la simulación con PLCSIM, el comportamiento temporal del PLC simulado no es idéntico al
de un PLC "auténtico". El verdadero ciclo de un OB de alarma cíclica puede presentar mayores
fluctuaciones en un PLC simulado que en un PLC "auténtico".
En la configuración estándar, PID_3Step determina automáticamente el tiempo entre las
llamadas y vigila sus fluctuaciones.
Por tanto, al simular PID_3Step con PLCSIM es posible detectar un error de tiempo de
muestreo (ErrorBits = DW#16#00000800).
Esto provoca la cancelación de las optimizaciones en curso.
La reacción en el modo automático depende del valor de la variable ActivateRecoverMode.
Para evitarlo, debe configurarse PID_3Step en la simulación con PLCSIM del modo siguiente:
• [Link] = FALSE
• [Link] = FALSE
• [Link]: Asigne a estas variables el ciclo del OB de alarma cíclica que se debe
llamar en la unidad segundos.

Regulación PID
142 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp 7
7.1 Objeto tecnológico PID_Temp
El objeto tecnológico PID_Temp ofrece un regulador PID continuo con optimización integrada.
PID_Temp está diseñado especialmente para regular la temperatura y es apto para
aplicaciones de calefacción o calefacción/refrigeración. Para ello se dispone de dos salidas,
una para calefacción y otra para refrigeración. Además, PID_Temp también se puede utilizar
para otras tareas de regulación. PID_Temp puede conectarse en cascada y emplearse en
modo manual o en modo automático.
PID_Temp captura de forma continua el valor real medido dentro de un lazo de regulación y
lo compara con la consigna ajustada. A partir de los errores de regulación que se producen, la
instrucción PID_Temp calcula el valor de salida para la calefacción o la refrigeración, a través
del cual el valor real se iguala a la consigna. En el regulador PID, los valores de salida se
componen de tres acciones:
• Acción P
La acción P del valor de salida aumenta proporcionalmente al error de regulación.
• Acción I
La acción I del valor de salida aumenta hasta que se compensa el error de regulación.
• Acción D
La acción D aumenta con una velocidad de variación creciente del error de regulación. El
valor real se iguala lo más rápidamente posible con la consigna. Si la velocidad de
variación del error de regulación vuelve a reducirse, también lo hace la acción D.
La instrucción PID_Temp calcula los parámetros P, I y D para el sistema regulado de forma
autónoma durante la "optimización inicial". Los parámetros pueden optimizarse aún más a
través de una "optimización fina". No es necesario determinar los parámetros manualmente.
Para aplicaciones de calefacción/refrigeración puede utilizarse un factor de enfriamiento fijo o
bien dos juegos de parámetros PID.

Información adicional
• Vista general de los reguladores de software (Página 40)
• Agregar objetos tecnológicos (Página 42)
• Configurar objetos tecnológicos (Página 43)
• Configurar PID_Temp (Página 143)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 143
Utilizar PID_Temp
7.2 Configurar PID_Temp

7.2 Configurar PID_Temp

7.2.1 Ajustes básicos

[Link] Introducción

Configure las propiedades siguientes del objeto tecnológico PID_Temp en el área de ajustes
básicos de la ventana de inspección o de configuración.
• Magnitud física
• Comportamiento en arranque tras un reset
• Origen e introducción de la consigna (solo en la ventana de inspección)
• Selección del valor real
• Origen e introducción del valor real (solo en la ventana de inspección)
• Selección del valor de salida para calefacción
• Origen e introducción del valor de salida para calefacción (solo en la ventana de
inspección)
• Activación y selección del valor de salida para refrigeración
• Origen e introducción del valor de salida para refrigeración (solo en la ventana de
inspección)
• Activar PID_Temp como maestro o esclavo de una cascada
• Número de esclavos
• Selección del maestro (solo en la ventana de inspección)

Consigna, valor real, valor de salida para calefacción y valor de salida para refrigeración
Para la consigna, el valor real, el valor de salida para calefacción y el valor de salida para
refrigeración, en la ventana de inspección del editor de programación puede seleccionar el
origen e introducir valores o variables.
Para cada valor elija el origen:
• DB de instancia:
Se utiliza el valor que se encuentra almacenado en el DB de instancia. El valor debe
actualizarse en el DB de instancia del programa de usuario. En la instrucción no puede
haber ningún valor. Modificación posible desde HMI.
• Instrucción:
Se utiliza el valor que se interconecta a la instrucción. Cada vez que se llama la instrucción,
el valor se escribe en el DB de instancia. No se puede modificar desde HMI.

[Link] Tipo de regulación

Magnitud física
En el grupo "Tipo de regulación", seleccione la magnitud física y la unidad de la consigna y del
valor real. La consigna y el valor real se mostrarán en esta unidad.

Regulación PID
144 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

Comportamiento en arranque
1. Para cambiar inmediatamente al modo de operación "Inactivo" tras el rearranque de la
CPU, desactive la casilla de verificación "Activar Mode tras rearrancar la CPU".
Para cambiar inmediatamente, tras el rearranque de la CPU, al modo de operación
almacenado en Mode, active la casilla de verificación "Activar Mode tras rearrancar la
CPU".
2. En la lista desplegable "Poner Mode a", seleccione el modo de operación que debe
activarse tras una carga completa en el dispositivo.
Tras una operación de "Cargar en dispositivo" completa, PID_Temp arranca en el modo de
operación seleccionado. Con cada rearranque, PID_Temp arranca en el último modo de
operación almacenado en Mode.
Al seleccionar la optimización inicial o la optimización fina, es preciso además setear o
resetear las variables [Link] y [Link] para elegir entre
optimización para calefacción y optimización para refrigeración.
Ejemplo:
Se ha activado la casilla de verificación "Activar Mode tras rearrancar la CPU" y en la lista
"Poner Mode a" se ha seleccionado la entrada "Optimización inicial". Tras una operación de
"Cargar en dispositivo" completa, PID_Temp arranca en el modo de operación "Optimización
inicial". Si la optimización inicial aún está activa y se rearranca la CPU, PID_Temp arranca de
nuevo en el modo de operación "Optimización inicial" (calefacción/refrigeración dependiendo
de las variables [Link] y [Link]). Si la optimización inicial ha
finalizado correctamente, el modo automático aún está activo y se rearranca la CPU,
PID_Temp arranca en "Modo automático".

[Link] Consigna

Procedimiento
Para especificar una consigna fija, proceda de la siguiente manera:
1. Seleccione "DB de instancia".
2. Introduzca una consigna, como puede ser 80 °C.
3. En caso necesario, elimine una entrada de la instrucción.
Para especificar una consigna variable, proceda de la siguiente manera:
1. Seleccione "Instrucción".
2. Indique el nombre de la variable REAL en la que está almacenada la consigna.
Es posible asignar varios valores de forma controlada por programa a la variable REAL
para, por ejemplo, modificar la consigna de forma controlada por tiempo.

[Link] Valor real

Si utiliza directamente el valor de la entrada analógica, PID_Temp escala el valor de la entrada


analógica a la magnitud física.
Si desea acondicionar primero el valor de la entrada analógica, es preciso escribir un
programa propio para su acondicionamiento. Por ejemplo, el valor real no es directamente
proporcional al valor de la entrada analógica. El valor real acondicionado debe estar en
formato de coma flotante.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 145
Utilizar PID_Temp
7.2 Configurar PID_Temp

Procedimiento
Para utilizar directamente el valor de la entrada analógica, proceda del siguiente modo:
1. En la lista desplegable "Input", seleccione la entrada "Input_PER".
2. Seleccione "Instrucción" como fuente.
3. Introduzca la dirección de la entrada analógica.
Para utilizar el valor real acondicionado en el formato de coma flotante, proceda del siguiente
modo:
1. En la lista desplegable "Input", seleccione la entrada "Input".
2. Seleccione "Instrucción" como fuente.
3. Indique el nombre de la variable en la que está almacenado el valor real acondicionado.

[Link] Valor de salida para calefacción y refrigeración

La instrucción PID_Temp ofrece un regulador PID con optimización integrada para procesos
de temperatura. PID_Temp es apta para aplicaciones de calefacción o de
calefacción/refrigeración.
PID_Temp ofrece los siguientes valores de salida. El valor de salida que se utilice dependerá
del actuador.
• OutputHeat
Valor de salida para calefacción (formato de coma flotante): El valor de salida para
calefacción debe acondicionarse mediante el programa de usuario, por ejemplo, porque el
actuador presenta un comportamiento no lineal.
• OutputHeat_PER
Valor de salida analógico para calefacción: El actuador para calefacción se activa a través
de una salida analógica y se controla con una señal continua, como puede ser 0 a 10 V, 4
a 20 mA.
• OutputHeat_PWM
Valor de salida modulado por ancho de impulso para calefacción: El actuador para
calefacción se controla a través de una salida digital. Una modulación de ancho de
impulsos permite formar tiempos de conexión y desconexión variables.
• OutputCool
Valor de salida para refrigeración (formato de coma flotante): El valor de salida para
refrigeración debe acondicionarse mediante el programa de usuario, por ejemplo, porque
el actuador muestra un comportamiento no lineal.
• OutputCool_PER
Valor de salida analógico para refrigeración: El actuador para refrigeración se activa a
través de una salida analógica y se controla con una señal continua, como puede ser 0 a
10 V, 4 a 20 mA.
• OutputCool_PWM
Valor de salida modulado por ancho de impulso para refrigeración: El actuador para
refrigeración se controla a través de una salida digital. Una modulación de ancho de
impulsos permite formar tiempos de conexión y desconexión variables.

Regulación PID
146 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

La salida de refrigeración solo está disponible si se ha activado a través de la casilla de


verificación "Activar refrigeración".
• Si la casilla de verificación está desactivada, el valor de salida del algoritmo PID
(PidOutputSum) se escala y se emite en las salidas para calefacción.
• Si la casilla de verificación está activada, los valores de salida positivos del algoritmo PID
(PidOutputSum) se escalan y se emiten en las salidas para calefacción. Los valores de
salida negativos del algoritmo PID se escalan y se emiten en las salidas para refrigeración.
En los ajustes de salida se puede elegir entre dos métodos de cálculo del valor de salida.

NOTA
Tenga en cuenta lo siguiente:
• Las salidas OutputHeat_PWM, OutputHeat_PER, OutputCool_PWM, OutputCool_PER
únicamente se calculan si se seleccionan en la lista desplegable.
• La salida OutputHeat siempre se calcula.
• La salida OutputCool se calcula si la casilla de verificación para la refrigeración está
activada.
• La casilla de verificación "Activar refrigeración" únicamente está disponible si el regulador
no está configurado como maestro en una cascada.

Procedimiento
Para utilizar el valor de salida analógico, proceda del siguiente modo:
1. En la lista desplegable "OutputHeat" o "OutputCool", seleccione la entrada
"OutputHeat_PER" o "OutputCool_PER".
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida analógica.
Para utilizar el valor de salida modulado por ancho de impulso, proceda de la siguiente
manera:
1. En la lista desplegable "OutputHeat" o "OutputCool", seleccione la entrada
"OutputHeat_PWM" o "OutputCool_PWM".
2. Seleccione "Instrucción".
3. Introduzca la dirección de la salida digital.
Para acondicionar el valor de salida mediante el programa de usuario, proceda del siguiente
modo:
1. En la lista desplegable "OutputHeat" o "OutpuCool", seleccione la entrada "OutputHeat" o
"OutputCool".
2. Seleccione "Instrucción".
3. Indique el nombre de la variable que utilizará para acondicionar el valor de salida.
4. Transfiera el valor de salida acondicionado hasta el actuador a través de una salida
analógica o digital de la CPU.

[Link] Cascada

Si una instancia PID_Temp recibe su consigna de un regulador maestro superior y transmite


su propio valor de salida a un regulador esclavo inferior, esa instancia PID_Temp es regulador

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 147
Utilizar PID_Temp
7.2 Configurar PID_Temp

maestro y regulador esclavo al mismo tiempo. Para esa instancia PID_Temp deben realizarse
entonces las dos configuraciones descritas a continuación. Esto es lo que ocurre, por ejemplo,
con la instancia PID_Temp central de una regulación en cascada con tres magnitudes
concatenadas y tres instancias PID_Temp.

Configurar un regulador como maestro en una cascada


La salida de un regulador maestro es la consigna de un regulador esclavo.
Para utilizar PID_Temp como maestro en una cascada, debe desactivarse la refrigeración en
los ajustes básicos. Para configurar esa instancia PID_Temp como regulador maestro en una
cascada, active la casilla de verificación "El regulador es maestro". La selección del valor de
salida para calefacción se ajusta automáticamente a OutputHeat.
OutputHeat_PWM y OutputHeat_PER no pueden utilizarse para un maestro en una cascada.
A continuación, indique el número de reguladores esclavos directamente subordinados y que
reciben su consigna de ese regulador maestro.
Si al asignar el parámetro OutputHeat del maestro al parámetro Setpoint del esclavo no se
utiliza una función de escalado propia, puede que sea necesario adaptar los límites y la escala
del valor de salida del maestro al rango de consignas/valores reales del esclavo. Esto puede
realizarse en los ajustes de salida del maestro, en el área "OutputHeat / OutputCool".

Configurar un regulador como esclavo en una cascada


Un regulador esclavo recibe su consigna (parámetro Setpoint) de la salida de su regulador
maestro (parámetro OutputHeat).
Para configurar esa instancia PID_Temp como regulador esclavo en una cascada, active la
casilla de verificación "El regulador es esclavo" en los ajustes básicos.
A continuación, en la ventana de inspección del editor de programación, seleccione la
instancia PID_Temp que habrá de utilizarse como regulador maestro para ese regulador
esclavo. Al realizar esta selección, los parámetros Master y Setpoint del regulador esclavo se
interconectan con el regulador maestro elegido (las interconexiones anteriores de estos
parámetros se sobrescriben). Esta interconexión permite el intercambio de información y la
especificación de consigna entre maestro y esclavo. Si es necesario, la interconexión del
parámetro Setpoint del regulador esclavo puede modificarse posteriormente, p. ej., para
añadir un filtro adicional. La interconexión del parámetro Maestro no puede modificarse
posteriormente.
En el regulador maestro seleccionado, la casilla de verificación "El regulador es maestro" debe
estar activada, y el número de esclavos debe estar correctamente configurado. El regulador
maestro debe llamarse antes que el regulador esclavo en el mismo OB de alarma cíclica.

Información adicional
Para más información sobre creación de programas, configuración y puesta en marcha en
relación con el uso de PID_Temp en regulaciones en cascada, ver Regulación en cascada con
PID_Temp (Página 173).

Regulación PID
148 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

7.2.2 Ajustes del valor real

[Link] Límites del valor real

Como valores límite para el sistema regulado, defina los límites superior e inferior absolutos
del valor real de modo que sean razonables. Tan pronto como dichos valores se rebasen por
exceso o defecto, se producirá un error (ErrorBits = 0001h). La optimización se cancela
cuando se rebasan los límites del valor real. La manera como debe reaccionar PID_Temp en
caso de fallo en el modo automático se define en los ajustes de salida.

[Link] Escalar valor real

Si en los ajustes básicos ha configurado el uso de Input_PER, deberá convertir el valor de la


entrada analógica a la magnitud física del valor real. En el cuadro de visualización Input_PER
se muestra la configuración actual.
Si el valor real es directamente proporcional al valor de la entrada analógica, Input_PER se
escalará a partir de un par de valores inferior y superior.

Procedimiento
Para escalar el valor real, haga lo siguiente:
1. En los campos de entrada "Valor real inferior escalado" y "abajo", introduzca el par de
valores inferior.
2. En los campos de entrada "Valor real superior escalado" y "arriba", introduzca el par de
valores superior.
La configuración hardware contiene pares de valores predeterminados. Para utilizar los pares
de valores contenidos en la configuración hardware, haga lo siguiente:
1. Marque la instrucción PID_Temp en el editor de programación.
2. En los ajustes básicos, interconecte Input_PER con una entrada analógica.
3. En los ajustes del valor real, haga clic en el botón "Ajuste automático".
Los valores existentes se sobrescribirán con los valores de la configuración hardware.

7.2.3 Ajustes de salida

[Link] Ajustes básicos salida

Método para calefacción y refrigeración


Si la refrigeración está activada en los ajustes básicos, para el cálculo del valor de salida PID
hay dos métodos disponibles:
• Conmutación de parámetros PID ([Link] = TRUE):
El cálculo del valor de salida para la refrigeración se lleva a cabo mediante un juego de
parámetros PID propio. El algoritmo PID, a partir del valor de salida calculado y el error de
regulación, decide si los parámetros PID se utilizarán para calefacción o para refrigeración.
Este método es adecuado si el actuador de calefacción y el actuador de refrigeración
presentan un comportamiento temporal diferente y ganancias diferentes.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 149
Utilizar PID_Temp
7.2 Configurar PID_Temp

La optimización inicial y la optimización fina para refrigeración únicamente están


disponibles si se elige este método.
• Factor de enfriamiento ([Link] = FALSE):
El valor de salida para la refrigeración se calcula con los parámetros PID para calefacción
teniendo en cuenta el factor de enfriamiento configurable [Link]. Este método
es adecuado si el actuador de calefacción y el actuador de refrigeración presentan un
comportamiento temporal similar pero ganancias diferentes. Si se elige este método, la
optimización inicial y la optimización fina para refrigeración, así como el juego de
parámetros PID para refrigeración, no están disponibles. Tan solo pueden realizarse
optimizaciones para calefacción.

Factor de enfriamiento
Si como método para calefacción/refrigeración se ha elegido el factor de enfriamiento, este se
tiene en cuenta como factor a la hora de calcular el valor de salida para refrigeración. De esta
forma es posible tener en cuenta ganancias diferentes del actuador de calefacción y el
actuador de refrigeración.
El factor de enfriamiento no se ajusta automáticamente ni se adapta durante la optimización.
Debe configurar el factor de enfriamiento correctamente de forma manual con la relación
"ganancia actuador de calefacción / ganancia actuador de refrigeración".
Ejemplo: un factor de enfriamiento = 2.0 significa que la ganancia del actuador de calefacción
es el doble que la ganancia del actuador de refrigeración.
El factor de enfriamiento únicamente actúa y puede modificarse si como método para
calefacción / refrigeración se ha elegido "Factor de enfriamiento".

Comportamiento en caso de error

ATENCIóN
Su instalación puede sufrir daños.
Si en caso de fallo se emite "Valor actual mientras dure el error" o "Valor de salida sustitutivo
mientras dure el error", PID_Temp se mantiene en modo automático o en modo manual. De
este modo, los límites del valor real pueden rebasarse y su instalación puede sufrir daños.
Configure un comportamiento en caso de fallo para su sistema regulado que proteja la
instalación de daños.

PID_Temp está preajustado de manera que, en caso de fallo, la regulación permanece activa
en la mayoría de los casos.
Si en el modo de regulación se producen errores con frecuencia, este ajuste empeorará el
comportamiento de regulación. Compruebe en tal caso el parámetro ErrorBits y elimine la
causa de error.

Regulación PID
150 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

En caso de fallo, PID_Temp emite un valor de salida configurable:


• Cero (inactivo)
Cuando se produce cualquier error, PID_Temp cambia al modo de operación "Inactivo" y
emite lo siguiente:
– 0.0 como valor de salida PID (PidOutputSum)
– 0.0 como valor de salida para calefacción (OutputHeat) y valor de salida para
refrigeración (OutputCool)
– 0 como valor de salida analógico para calefacción (OutputHeat_PER) y valor de salida
analógico para refrigeración (OutputCool_PER)
– FALSE como valor de salida modulado por ancho de impulso para calefacción
(OutputHeat_PWM) y valor de salida modulado por ancho de impulso para
refrigeración (OutputCool_PWM)
Esto es independiente de los límites y la escala del valor de salida que se hayan
configurado. El regulador no se reactiva hasta que no se detecta un flanco descendente en
Reset o un flanco ascendente en ModeActivate.
• Valor actual mientras dure el error
La reacción a fallo depende del error ocurrido y del modo de operación.
Si en el modo automático se producen uno o varios de los errores siguientes, PID_Temp
permanece en modo automático:
– 0000001h: El parámetro Input se encuentra fuera de los límites del valor real.
– 0000800h: Error en tiempo de muestreo
– 0040000h: Valor no válido en el parámetro Disturbance.
– 8000000h: Error durante el cálculo de los parámetros PID.
Si en el modo automático se producen uno o varios de los errores siguientes, PID_Temp
pasa al modo "Valor de salida sustitutivo con monitorización de errores" y emite el último
valor de salida PID válido (PidOutputSum):
– 0000002h: Valor no válido en el parámetro Input_PER.
– 0000200h: Valor no válido en el parámetro Input.
– 0000400h: Error al calcular el valor de salida.
– 0001000h: Valor no válido en el parámetro Setpoint o SubstituteSetpoint.
Los valores resultantes del valor de salida PID en las salidas para calefacción y refrigeración
se obtienen del escalado de salida configurado.
En cuanto los errores dejan de estar activos, PID_Temp pasa de nuevo al modo
automático.
Si se produce un error en el modo manual, PID_Temp permanece en el modo manual y
continúa utilizando el valor manual como valor de salida PID.
Si el valor manual no es válido, se utiliza el valor de salida sustitutivo configurado.
Si el valor manual y el valor de salida sustitutivo no son válidos, se utiliza el límite inferior
del valor de salida PID para calefacción ([Link]).
Si durante una optimización inicial u optimización fina aparece el siguiente error,
PID_Temp se mantiene en el modo de operación activo:
– 0000020h: La optimización inicial no está permitida durante la optimización fina.
Con todos los demás errores, PID_Temp interrumpe la optimización y cambia al modo
desde el que se inició la optimización.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 151
Utilizar PID_Temp
7.2 Configurar PID_Temp

• Valor de salida sustitutivo mientras dure el error


PID_Temp se comporta del modo descrito en "Valor actual mientras dure el error", pero en
el modo de operación "Valor de salida sustitutivo con monitorización de errores" emite el
valor de salida sustitutivo configurado (SubstituteOutput) como valor de salida PID
(PidOutputSum).
Los valores resultantes del valor de salida PID en las salidas para calefacción y refrigeración
se obtienen del escalado de salida configurado.
Para reguladores con salida de refrigeración activada ([Link] = TRUE),
– introduzca un valor de salida sustitutivo positivo para emitir el valor en las salidas para
calefacción.
– introduzca un valor de salida sustitutivo negativo para emitir el valor en las salidas para
refrigeración.
Si se produce el siguiente error, PID_Temp se mantiene en el modo "Valor de salida
sustitutivo con monitorización de errores" y emite el límite inferior del valor de salida PID
para calefacción ([Link]):
– 0020000h: Valor no válido en la variable SubstituteOutput.

[Link] Límites y escalado del valor de salida

El valor de salida PID (PidOutputSum) se calcula automáticamente con el algoritmo PID en


función del modo de operación o bien está predeterminado por el valor manual
(ManualValue) o por el valor de salida sustitutivo configurado (SubstituteOutput).
El valor de salida PID se limita dependiendo de la configuración:
• Si la refrigeración está desactivada en los ajustes básicos ([Link] =
FALSE), el valor se limita al límite superior del valor de salida PID (calefacción)
([Link]) y al límite inferior del valor de salida PID (calefacción)
([Link]).
Ambos valores límite pueden configurarse en el apartado "OutputHeat / OutputCool" en el
eje horizontal de la característica de escala. En los apartados "OutputHeat_PWM /
OutputCool_PWM" y "OutputHeat_PER / OutputCool_PER" se muestran dichos valores
límite, pero no es posible modificarlos.
• Si la refrigeración está activada en los ajustes básicos ([Link] = TRUE), el
valor se limita al límite superior del valor de salida PID ([Link])
y al límite inferior del valor de salida PID (refrigeración)
([Link]).
Ambos valores límite pueden configurarse en el apartado "OutputHeat / OutputCool" en el
eje horizontal de la característica de escala. En los apartados "OutputHeat_PWM /
OutputCool_PWM" y "OutputHeat_PER / OutputCool_PER" se muestran dichos valores
límite, pero no es posible modificarlos.
El límite inferior del valor de salida PID (calefacción) ([Link]) y
el límite superior del valor de salida PID (refrigeración) ([Link])
no pueden modificarse y deben estar configurados con el valor 0.0.

Regulación PID
152 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

El valor de salida PID se escala y se emite en las salidas para calefacción y refrigeración. El
escalado puede especificarse por separado para cada salida y se define mediante 2 pares de
valores en cada caso: un valor límite del valor de salida PID y un valor de escalado.

Salida Par de valores Parámetro


OutputHeat Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida superior escalado (calefacción) [Link]­
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida inferior escalado (calefacción) [Link]­
[Link]
OutputHeat_PWM Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida PWM superior escalado (calefacción)
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida PWM inferior escalado (calefacción)
[Link]
OutputHeat_PER Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida analógico superior escalado (calefacción)
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida analógico inferior escalado (calefacción)
[Link]
OutputCool Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida superior escalado (refrigeración)
[Link]
Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida inferior escalado (refrigeración)
[Link]
OutputCool_PWM Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida PWM superior escalado (refrigeración)
[Link]
El límite inferior del valor de salida PID (calefacción) ([Link]) debe tener el
valor 0.0 si la refrigeración está activada ([Link] = TRUE).
El límite superior del valor de salida PID (refrigeración) ([Link]) debe tener
siempre el valor 0.0.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 153
Utilizar PID_Temp
7.2 Configurar PID_Temp

Salida Par de valores Parámetro


OutputCool_PWM Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida PWM inferior escalado (refrigeración)
[Link]
OutputCool_PER Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida analógico superior escalado (refrigeración)
[Link]
Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida analógico inferior escalado (refrigeración)
[Link]
El límite inferior del valor de salida PID (calefacción) ([Link]) debe tener el
valor 0.0 si la refrigeración está activada ([Link] = TRUE).
El límite superior del valor de salida PID (refrigeración) ([Link]) debe tener
siempre el valor 0.0.

Ejemplo:
Escalado de salida si se utiliza la salida OutputHeat (refrigeración desactivada; el límite
inferior del valor de salida PID (calefacción) ([Link]) puede ser
distinto de 0.0):
2XWSXW+HDW

&RQILJ2XWSXW+HDW
8SSHU6FDOLQJ

&RQILJ2XWSXW+HDW
/RZHU6FDOLQJ
3LG2XWSXW6XP

&RQILJ2XWSXW+HDW &RQILJ2XWSXW+HDW
3LG/RZHU/LPLW 3LG8SSHU/LPLW

Ejemplo:
Escalado de salida si se utiliza la salida OutputHeat_PWM y OutputCool_PER (refrigeración
activada; el límite inferior del valor de salida PID (calefacción)
([Link]) debe ser 0.0):
OutputCool_PER OutputHeat_PWM

[Link].
PerUpperScaling [Link].
PwmUpperScaling

[Link].
PwmLowerScaling
[Link].
PerLowerScaling PidOutputSum
[Link].
[Link]. PidLowerLimit [Link].
PidLowerLimit =[Link]. PidUpperLimit
PidUpperLimit=0.0

Con la excepción del modo de operación "Inactivo", el valor en una salida está siempre
comprendido entre su valor de salida superior escalado y el valor de salida inferior escalado;
p. ej., para OutputHeat está siempre entre el valor de salida superior escalado (calefacción)

Regulación PID
154 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

([Link]) y el valor de salida inferior escalado (calefacción)


([Link]).
Por lo tanto, si se quiere limitar el valor en la salida correspondiente, también deben limitarse
estos valores de escalado.
Los valores de escalado de una salida pueden configurarse en el eje vertical de la
característica de escala. Cada salida dispone de dos valores de escalado propios. Para
OutputHeat_PWM, OutputCool_PWM, OutputHeat_PER y OutputCool_PER, dichos valores
únicamente pueden modificarse si la salida correspondiente está seleccionada en los ajustes
básicos. Para todas las salidas para refrigeración es necesario, además, que la refrigeración
esté activada en los ajustes básicos.
El visor de curvas que hay en el cuadro de diálogo de puesta en marcha tan solo registra los
valores de OutputHeat y OutputCool, con independencia de la salida seleccionada en los
ajustes básicos. Por lo tanto, los valores de escalado para OutputHeat o OutputCool también
deben adaptarse si se está utilizando OutputHeat_PWM o OutputHeat_PER, o bien
OutputCool_PWM o OutputCool_PER, y se quiere emplear el visor de curvas del cuadro de
diálogo de puesta en marcha.

7.2.4 Ajustes avanzados

[Link] Monitorización de valor real

Configure un límite de advertencia inferior y uno superior para el valor real en la ventana de
configuración "Monitorización del valor real". Si durante el funcionamiento se rebasa uno de
los límites de advertencia por defecto o por exceso, se muestra una advertencia en la
instrucción PID_Temp:
• En el parámetro de salida "InputWarning_H", si se ha rebasado por exceso el límite
superior de advertencia
• En el parámetro de salida "InputWarning_L", si se ha rebasado por defecto el límite inferior
de advertencia
Los límites de advertencia deben encontrarse dentro de los límites superior e inferior del valor
real.
Si no introduce ningún valor, se utilizan los límites superior e inferior del valor real.

Ejemplo
Límite superior del valor real = 98 °C; límite superior de advertencia = 90 °C
Límite inferior de advertencia = 10 °C; límite inferior del valor real = 0 °C
PID_Temp se comporta del modo siguiente:

Valor real InputWarning_H InputWarning_L ErrorBits


> 98 °C TRUE FALSE 0001h
≤ 98 °C y > 90 °C TRUE FALSE 0000h
≤ 90 °C y ≥ 10 °C FALSE FALSE 0000h
< 10 °C y ≥ 0 °C FALSE TRUE 0000h
< 0 °C FALSE TRUE 0001h
La manera en que debe reaccionar PID_Temp si se rebasan el límite superior o inferior del
valor real se configura en los ajustes de salida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 155
Utilizar PID_Temp
7.2 Configurar PID_Temp

[Link] Limitaciones PWM

El valor de salida PID PidOutputSum se escala y, mediante una modulación de ancho de


impulsos, se transforma en una secuencia de impulsos que se emite en el parámetro de salida
OutputHeat_PWM o OutputCool_PWM.
El "Tiempo muestreo algoritmo PID" es el tiempo que transcurre entre dos cálculos del valor
de salida PID. El tiempo de muestreo se utiliza como duración de período de la modulación
por ancho de impulso.
Durante la calefacción, el valor de salida PID se calcula siempre en el "Tiempo muestreo
algoritmo PID para calefacción".
El cálculo del valor de salida PID durante la refrigeración depende del tipo de refrigeración
seleccionado en "Ajustes básicos Salida":
• Si se utiliza el factor de enfriamiento, se aplica el "Tiempo muestreo algoritmo PID para
calefacción".
• Si se utiliza la conmutación de parámetros PID, se aplica el "Tiempo muestreo algoritmo
PID para refrigeración".
El tiempo de muestreo del algoritmo PID para calefacción o refrigeración se determina
durante la optimización inicial o la optimización fina. Si los parámetros PID se ajustan
manualmente, debe configurarse también ahí el tiempo de muestreo del algoritmo PID para
calefacción o refrigeración.
OutputHeat_PWM y OutputCool_PWM se emiten en el tiempo de muestreo PID_Temp. El
tiempo de muestreo PID_Temp equivale al tiempo de ciclo del OB que efectúa la llamada.
La duración del impulso es proporcional al valor de salida PID y es siempre un múltiplo entero
del tiempo de muestreo PID_Temp.
Ejemplo de OutputHeat_PWM
3LG2XWSXW6XP









W PV
2XWSXW+HDWB3:0

758(

)$/6(
W PV



 

① Tiempo de muestreo PID_Temp


② Tiempo de muestreo del algoritmo PID para calefacción
③ Duración del impulso
④ Duración de la pausa

Regulación PID
156 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

"Tiempo conexión mín." y "Tiempo desconex. mín." pueden utilizarse por separado para
calefacción y refrigeración, redondeados a un múltiplo entero del tiempo de muestreo
PID_Temp.
Un impulso o una pausa nunca son más cortas que los tiempos de conexión o desconexión
mínimos. Las imprecisiones que se producen se suman y se compensan en el siguiente ciclo.
Ejemplo de OutputHeat_PWM
Tiempo de muestreo PID_Temp (equivale al tiempo de ciclo del OB que efectúa la llamada) =
100 ms
Tiempo de muestreo Algoritmo PID (equivale a la duración del periodo) = 1000 ms
Tiempo conexión mín. = 200 ms
El valor de salida PID PidOutputSum es del 15% en todo momento. El impulso mínimo que
PID_Temp puede emitir es del 20% En el primer ciclo no se emite ningún impulso. En el
segundo ciclo, el impulso no emitido del primer ciclo se agrega al impulso del segundo ciclo.
3LG2XWSXW6XP








2XWSXW+HDWB3:0 W PV

758(

)$/6(
W PV


① Tiempo de muestreo PID_Temp


② Tiempo de muestreo del algoritmo PID para calefacción
⑤ Tiempo conexión mín.
Para reducir la frecuencia de conmutación y proteger el actuador, prolongue los tiempos de
conexión y desconexión mínimos.
Si en los ajustes básicos se ha seleccionado como salida OutputHeat o OutputCool, o bien
OutputHeat_PER o OutputCool_PER, el tiempo de conexión mínimo y el tiempo de
desconexión mínimo no se evalúan y no pueden modificarse.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 157
Utilizar PID_Temp
7.2 Configurar PID_Temp

Si en caso de utilizar OutputHeat_PWM o OutputCool_PWM el "Tiempo de muestreo


Algoritmo PID" ([Link] o [Link]) y, con ello, la
duración del periodo de la modulación de ancho de impulsos es muy larga, puede
especificarse una duración del período más corta en los parámetros
[Link] o [Link] (v. también Variable
PwmPeriode (Página 393)) para así mejorar el filtrado del valor real.

NOTA
Los tiempos mínimos de conexión y desconexión actúan solo en los parámetros de salida
OutputHeat_PWM o OutputCool_PWM y no se utilizan para posibles generadores de impulsos
integrados en la CPU.

[Link] Parámetros PID

En la ventana de configuración "Parámetros PID" se visualizan los parámetros PID.


Si en los ajustes básicos está activada la refrigeración y en los ajustes de salida se ha
seleccionado la conmutación de parámetros PID como método para calefacción/refrigeración,
están disponibles dos juegos de parámetros: uno para calefacción y otro para refrigeración.
En tal caso, el algoritmo PID, a partir del valor de salida calculado y el error de regulación,
decide si los parámetros PID se utilizarán para calefacción o para refrigeración.
Si la refrigeración está desactivada o se ha seleccionado el factor de enfriamiento como
método para calefacción/refrigeración, siempre se utiliza el juego de parámetros para
calefacción.
Durante la optimización, los parámetros PID se adaptan al sistema regulado, con excepción
del ancho de zona muerta, que debe configurarse manualmente.

NOTA
Los parámetros PID efectivos actualmente están en la estructura [Link].
Para prevenir un comportamiento erróneo del regulador PID, los parámetros PID efectivos
actualmente solo deben modificarse online en el modo de operación "Inactivo".
Si desea modificar online los parámetros PID en los modos de operación "Automático" o
"Manual", modifique los parámetros PID en la estructura CtrlParamsBackUp y aplique los
cambios poniendo LoadBackUp = TRUE en la estructura [Link].
Los cambios online en los parámetros PID realizados en el modo de operación "Automático"
pueden provocar saltos en el valor de salida.

PID_Temp es un regulador PIDT1 con Anti-Windup y ponderación de las acciones P y D.


El algoritmo PID funciona de acuerdo con la siguiente fórmula (zona de regulación y zona
muerta desactivadas):
1 TD · s
y = Kp [ (b · w - x) + T · s
I
(w - x) +
a · TD · s + 1
(c · w - x) ]
Símbolo Descripción Parámetro correspondiente de la instrucción
PID_Temp
y Valor de salida del algoritmo PID -

Regulación PID
158 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

Símbolo Descripción Parámetro correspondiente de la instrucción


PID_Temp
Kp Ganancia proporcional [Link]
[Link]
CoolFactor
s Operador laplaciano -
b Ponderación de la acción P [Link]
[Link]
w Consigna CurrentSetpoint
x Valor real ScaledInput
TI Tiempo de integración [Link]
[Link]
TD Tiempo derivativo [Link]
[Link]
a Coeficiente para el retardo de acción derivativa [Link]
(retardo de la acción derivada T1 = a x TD) [Link]
c Ponderación de la acción D [Link]
[Link]
DeadZone Ancho de zona muerta [Link]
[Link]
ControlZone Ancho de zona de regulación [Link]
[Link]

El gráfico siguiente muestra cómo entran los parámetros en el algoritmo PID.

&XUUHQW6HWSRLQW Z E
&RQILJ2XWSXW+HDW
 3LG8SSHU/LPLW

F '7 .S
\ 




'HDG=RQH
&RQILJ2XWSXW+HDW
3LG/RZHU/LPLW
&RQILJ2XWSXW&RRO

 3LG/RZHU/LPLW

$QWL:LQGXS
6FDOHG,QSXW [ /LPLW ,

&RQWURO=RQH





Todos los parámetros PID son remanentes. Si introduce manualmente los parámetros PID,
debe cargar PID_Temp por completo (Cargar objetos tecnológicos en el dispositivo (Página
45)).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 159
Utilizar PID_Temp
7.2 Configurar PID_Temp

Diagrama de bloques PID_Temp


El siguiente diagrama de bloques muestra cómo está integrado el algoritmo PID en PID_Temp.
InputPEROn
Scale PV_ALRM
Input_PER InputWarning_H
1 InputWarning_L

Input 0

z -1 sgn

CtrlParams
[Link]
Heat Ti …
[Link]
[Link] ...
SubstituteSetpointOn
ScaledInput
Setpoint
Limit PIDT1
0
SubstituteSetpoint CurrentSetpoint Anti Windup
1

Disturbance
State

=3 Limit
ManualValue PidOutputSum
=4

Scale
OutputHeat

PidOutput [Link]
Scale PWM
OffsetHeat
[Link]. =1
FALSE OutputHeat_PWM
OutputOffsetHeat
≠1

Split Limit Scale

=2
0 OutputHeat_PER
≠2

[Link]
Split Limit Scale
OutputCool
-1
1
0.0
0
[Link]. [Link]
Scale PWM
OutputOffsetCool
PidOutput 1 =1
FALSE FALSE OutputCool_PWM
OffsetCool
0 ≠1

Scale

1 =2
0 0 OutputCool_PER
0 ≠2

Ganancia proporcional
El valor indica la ganancia proporcional del regulador. PID_Temp no funciona con una
ganancia proporcional negativa y tan solo soporta el sentido de regulación normal, es decir,
al aumentar el valor de salida PID (PidOutputSum) debe aumentar el valor real.

Regulación PID
160 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

Tiempo de integración
El tiempo de integración determina el comportamiento temporal de la acción I. La
desconexión de la acción I se realiza con el tiempo de integración = 0,0. Si el tiempo de
integración se modifica online en el modo de operación "Automático" de un valor cualquiera
a 0.0, la acción I actual se borra y se produce un salto del valor de salida.

Tiempo derivativo
El tiempo de la acción derivada determina el comportamiento temporal de la acción D. La
desconexión de la acción D se realiza con el tiempo derivativo = 0,0.

Coeficiente para el retardo de la acción derivada


El efecto de la acción D se retrasa mediante el coeficiente de retardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo x coeficiente de retardo de la acción
derivada
• 0.0: la acción D solo surte efecto para un ciclo y, por ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regulados con una constante
de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto de la acción D.

Ponderación de la acción P
En el caso de que se modifique la consigna, es posible atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consigna
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es totalmente efectiva.

Ponderación de la acción D
En el caso de que se modifique la consigna, es posible atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva cuando se cambia la consigna.
• 0.0: la acción D no es efectiva cuando cambia la consigna.
Si se produce una modificación del valor real, la acción D es totalmente efectiva.

Tiempo de muestreo algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo "Algoritmo
PID" es el tiempo que transcurre entre dos cálculos del valor de salida PID. Este se determina
durante la optimización y se redondea a un múltiplo del tiempo de muestreo PID_Temp

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 161
Utilizar PID_Temp
7.2 Configurar PID_Temp

(tiempo de ciclo del OB de alarma cíclica). Todas las demás funciones de PID_Temp se
ejecutan con cada llamada.
Si se utiliza OutputHeat_PWM o OutputCool_PWM, el tiempo de muestreo del algoritmo PID
se utiliza como duración de período de la modulación de ancho de impulsos. La precisión de
la señal de salida se determina mediante la relación entre el tiempo de muestreo del
algoritmo PID y el tiempo de ciclo del OB. El tiempo de ciclo debe ser como máximo una
décima parte del tiempo de muestreo del algoritmo PID.
El tiempo de muestreo del algoritmo PID que se utilice como duración de período de la
modulación por ancho de impulso con OutputCool_PWM depende del método seleccionado
en los "Ajustes básicos Salida" para calefacción/refrigeración:
• Si se utiliza el factor de enfriamiento, con OutputCool_PWM también se aplica el "Tiempo
de muestreo del algoritmo PID para calefacción".
• Si se utiliza la conmutación de parámetros PID, el "Tiempo de muestreo del algoritmo PID
para refrigeración" se aplica como duración de período para OutputCool_PWM.
En caso de utilizarse OutputHeat_PWM o OutputCool_PWM, si el tiempo de muestreo del
algoritmo PID y, por tanto, la duración de período de la modulación de ancho de impulsos es
muy larga, en los parámetros [Link] o
[Link] se puede especificar una duración de período más corta con
el fin de reducir las fluctuaciones del valor real.

Ancho de zona muerta


Si el valor real está perturbado, la componente de ruido también se verá reflejada en el valor
de salida. Si la ganancia del regulador es elevada y la acción D está activada, el valor de salida
puede variar en gran medida. Si el valor real se encuentra dentro de la zona muerta en torno
a la consigna, el error de regulación se suprime para que el algoritmo PID no reaccione y las
fluctuaciones innecesarias del valor de salida se reduzcan.
El ancho de zona muerta para la calefacción o la refrigeración no se ajusta automáticamente
durante la optimización. El ancho de zona muerta correcto debe configurarse de forma
manual. La desconexión de la zona muerta tiene lugar con un ancho de zona muerta = 0.0.
Si la zona muerta está conectada, es posible ajustar un error de regulación (desviación entre
consigna y valor real) permanente. Esto puede tener un efecto negativo al realizar una
optimización fina.
Si en los ajustes básicos está activada la refrigeración y en los ajustes de salida se ha
seleccionado la conmutación de parámetros PID como método para calefacción/refrigeración,
la zona muerta se encuentra entre "consigna - ancho de zona muerta (calefacción)" y
"consigna + ancho de zona muerta (refrigeración)".
Si en los ajustes básicos está desactivada la refrigeración o bien se utiliza el factor de
enfriamiento, la zona muerta se encuentra justo entre "consigna - ancho de zona muerta
(calefacción)" y "consigna + ancho de zona muerta (calefacción)".

Regulación PID
162 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.2 Configurar PID_Temp

Si para la ponderación de la acción P o de la acción D se han configurado valores diferentes


de 1.0, los cambios de la consigna también tendrán efecto sobre el valor de salida en la zona
muerta.
Los cambios del valor real comprendidos dentro de la zona muerta no tienen efecto sobre el
valor de salida, independientemente de la ponderación.

5HWDLQ&WUO3DUDPV
5HWDLQ&WUO3DUDPV
5HWDLQ&WUO3DUDPV +HDW'HDG=RQH
&RRO'HDG=RQH
+HDW'HDG=RQH

Zona muerta con factor de enfriamiento o refrigeración desactivados (izquierda) o con


refrigeración activada y conmutación de parámetros PID (derecha). El eje x / horizontal
muestra el error de regulación = consigna - valor real. El eje y / vertical muestra la señal de
salida de la zona muerta que se transmite al algoritmo PID.

Ancho de zona de regulación


Si el valor real se sale de la zona de regulación que hay en torno a la consigna, se emite el
valor de salida mínimo o máximo. De este modo el valor real alcanza más rápido la consigna.
Si el valor real está dentro de la zona de regulación que hay en torno a la consigna, se calcula
el valor de salida del algoritmo PID.
El ancho de la zona de regulación para calefacción o refrigeración únicamente se ajusta
automáticamente durante la optimización inicial si como estructura de regulador para
calefacción o refrigeración se ha seleccionado "PID (temperatura)".
La desconexión de la zona de regulación tiene lugar con un ancho de zona de regulación =
3.402822e+38.
Si en los ajustes básicos está desactivada la refrigeración o bien se utiliza el factor de
enfriamiento, la zona de regulación se encuentra justo entre "consigna - ancho de zona de
regulación (calefacción)" y "consigna + ancho de zona de regulación (calefacción)".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 163
Utilizar PID_Temp
7.2 Configurar PID_Temp

Si en los ajustes básicos está activada la refrigeración y en los ajustes de salida se ha


seleccionado la conmutación de parámetros PID como método para calefacción/refrigeración,
la zona de regulación se encuentra entre "consigna - ancho de zona de regulación
(calefacción)" y "consigna + ancho de zona de regulación (refrigeración)".
,QSXW

3LG2XWSXW6XP  6HWSRLQW
&RQILJ2XWSXW+HDW3LG/RZHU/LPLW 5HWDLQ&WUO3DUDPV
3LG2XWSXW6XP  +HDW&RQWURO=RQH
&RQILJ2XWSXW&RRO3LG/RZHU/LPLW

6HWSRLQW
6HWSRLQW
5HWDLQ&WUO3DUDPV
+HDW&RQWURO=RQH
3LG2XWSXW6XP 
&RQILJ2XWSXW+HDW3LG8SSHU/LPLW

Zona de regulación con factor de enfriamiento o refrigeración desactivados.


,QSXW

3LG2XWSXW6XP 
6HWSRLQW
&RQILJ2XWSXW&RRO3LG/RZHU/LPLW
5HWDLQ&WUO3DUDPV
&RRO&RQWURO=RQH

6HWSRLQW

6HWSRLQW
5HWDLQ&WUO3DUDPV
3LG2XWSXW6XP  +HDW&RQWURO=RQH
&RQILJ2XWSXW+HDW3LG8SSHU/LPLW

Zona de regulación con refrigeración activada y conmutación de parámetros PID.

Regla para la optimización


En la lista desplegable "Estructura del regulador" seleccione si se van a calcular los parámetros
PI o PID. Las reglas de optimización para calefacción y optimización para refrigeración pueden
especificarse por separado.
• PID (temperatura)
Se calcula durante la optimización inicial y la optimización fina del parámetro PID.
La optimización inicial está diseñada para procesos de temperatura y provoca un
comportamiento de regulación más lento y más bien asintótico, con menos
sobreoscilaciones que con la opción "PID". La optimización fina es idéntica que con la
opción "PID".
El ancho de la zona de regulación se determina automáticamente durante la optimización
inicial únicamente si se selecciona esta opción.
• PID
Se calcula durante la optimización inicial y la optimización fina del parámetro PID.

Regulación PID
164 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

• PI
Se calcula durante la optimización inicial y la optimización fina del parámetro PI.
• Definido por el usuario
Si se han ajustado diferentes estructuras del regulador para la optimización inicial y la
optimización fina mediante un programa de usuario o la vista de parámetros, en la lista
desplegable aparece "Definido por el usuario".

7.3 Puesta en servicio de PID_Temp

7.3.1 Puesta en servicio


La ventana de puesta en servicio ayuda durante la puesta en servicio del regulador PID. En el
visor de curvas se pueden observar la consigna, el valor real y los valores de salida para
calefacción y refrigeración a lo largo del eje de tiempo. En la ventana de puesta en servicio se
soportan las siguientes funciones:
• Optimización inicial del regulador
• Optimización fina del regulador
Utilice la optimización fina si desea realizar un ajuste de precisión del parámetro PID.
• Observación de la regulación en curso en la ventana de curvas
• Prueba del sistema regulado especificando un valor de salida PID manual y una consigna
sustitutiva
• Almacenamiento de los valores actuales de los parámetros PID en el proyecto offline
Para todas las funciones es preciso realizar una conexión online a la CPU.
Mediante los botones "Observar todos" o "Inicio" del visor de curvas se establece la
conexión online con la CPU, si no estaba ya establecida, y se habilita el manejo de la ventana
de puesta en servicio.

Manejo del visor de curvas


• Seleccione el tiempo de muestreo que desee en la lista desplegable "Tiempo de muestreo".
Todos los valores del visor de curvas se actualizan en el tiempo de muestreo seleccionado.
• Haga clic en el símbolo "Iniciar" del grupo Medición si desea utilizar el visor de curvas.
Se inicia el registro de los valores. En el visor de curvas se registran los valores actuales de
consigna, valor real y valores de salida para calefacción y refrigeración.
• Haga clic en el símbolo "Parar" si desea finalizar el visor de curvas.
Los valores mostrados en el visor de curvas pueden continuar analizándose.
Al cerrar la ventana de puesta en servicio finaliza el registro en el visor de curvas y los valores
registrados se borran.

7.3.2 Optimización inicial


La optimización inicial determina el comportamiento del proceso a un escalón del valor de
salida y busca el punto de inflexión. A partir de la inclinación máxima y del tiempo muerto del
sistema regulado se calculan los parámetros PID óptimos. Para obtener los mejores
parámetros PID, debe efectuarse una optimización inicial y una optimización fina.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 165
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los
parámetros PID. Un ruido del valor real es aceptable siempre que la subida del valor real sea
considerablemente mayor que el ruido. Esto tiene más probabilidades de suceder en los
modos "Inactivo" o "Manual". Es preciso realizar una copia de seguridad de los parámetros PID
antes de volver a calcularlos.
PID_Temp ofrece varios tipos de optimización inicial en función de la configuración:
• Optimización inicial calefacción
Se emite un salto en el valor de salida de calefacción, se calculan los parámetros PID para
calefacción y a continuación se ajusta la consigna en el modo automático.
• Optimización inicial de la calefacción y la refrigeración
Se emite un salto en el valor de salida para calefacción.
En cuanto el valor real se encuentra cerca de la consigna, se emite un salto en el valor de
salida para refrigeración.
Se calculan los parámetros PID para calefacción (estructura [Link]) y
refrigeración (estructura [Link]) y a continuación se ajusta la consigna en
modo automático.
• Optimización inicial para refrigeración
Se emite un salto en el valor de salida para refrigeración.
Se calculan los parámetros PID para refrigeración y a continuación se ajusta la consigna en
modo automático.
Si quiere optimizar los parámetros PID para calefacción y refrigeración, realizando una
"Optimización inicial calefacción" y seguidamente una "Optimización inicial refrigeración" se
consigue un comportamiento de regulación mejor que realizando una "Optimización inicial
calefacción y refrigeración". Sin embargo, realizar la optimización inicial en dos pasos
requiere más tiempo.

Requisitos generales
• La instrucción PID_Temp se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• PID_Temp se encuentra en el modo de operación "Inactivo", "Modo manual" o "Modo
automático".
• La consigna y el valor real se encuentran dentro de los límites configurados (ver la
configuración Monitorización de valor real (Página 155)).

Requisitos para la optimización inicial de la calefacción


• La diferencia entre la consigna y el valor real es mayor del 30% de la diferencia entre el
límite superior e inferior del valor real.
• La diferencia entre la consigna y el valor real es superior al 50% de la consigna.
• La consigna es mayor que el valor real.

Regulación PID
166 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Requisitos para la optimización inicial de la calefacción y la refrigeración


• La salida de refrigeración está activada en los "Ajustes básicos" ([Link] =
TRUE).
• La conmutación de parámetros PID está activada en los "Ajustes básicos Valor de salida"
([Link] = TRUE).
• La diferencia entre la consigna y el valor real es mayor del 30% de la diferencia entre el
límite superior e inferior del valor real.
• La diferencia entre la consigna y el valor real es superior al 50% de la consigna.
• La consigna es mayor que el valor real.

Requisitos para la optimización inicial para refrigeración


• La salida de refrigeración está activada en los "Ajustes básicos" ([Link] =
TRUE).
• La conmutación de parámetros PID está activada en los "Ajustes básicos Valor de salida"
([Link] = TRUE).
• Se ha realizado correctamente una "Optimización inicial calefacción" o una "Optimización
inicial calefacción y refrigeración" ([Link] = TRUE). Debe
utilizarse la misma consigna para todas las optimizaciones.
• La diferencia entre la consigna y el valor real es inferior al 5% de la diferencia entre el
límite superior e inferior del valor real.

Procedimiento
Para poder realizar una optimización inicial, proceda del siguiente modo:
1. En el árbol del proyecto, haga clic en la entrada "PID_Temp > Puesta en servicio".
2. Active el botón "Observar todos" o inicie el visor de curvas.
Se establece una conexión online.
3. Seleccione la opción de optimización inicial que desee en la lista desplegable "Modo de
ajuste".
4. Haga clic en el símbolo "Start".
– Se inicia la optimización inicial.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los errores
ocurridos. La barra de progreso muestra el progreso del paso actual.

NOTA
Si la barra de progreso (variable "Progress") lleva mucho tiempo sin avanzar y se debe
presuponer un bloqueo de la optimización, haga clic en el símbolo "Stop". Compruebe
la configuración del objeto tecnológico y, si procede, vuelva a iniciar la optimización.

Resultado
Si la optimización inicial ha finalizado sin ningún mensaje de error, significa que los
parámetros PID se han optimizado. PID_Temp cambia al modo automático y utiliza los

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 167
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

parámetros optimizados. Los parámetros PID optimizados se conservan al desconectar (Power


OFF) y al rearrancar por completo la CPU.
Si no es posible realizar una optimización inicial, PID_Temp se comporta del modo
configurado en Comportamiento en caso de error.

7.3.3 Optimización fina


La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros
PID se optimizan para el punto de operación a partir de la amplitud y la frecuencia. A partir de
los resultados se vuelven a calcular los parámetros PID. Los parámetros PID existentes
después de la optimización fina muestran en su mayoría un comportamiento de guía y ante
fallos mucho mejor que los parámetros PID de la optimización inicial. Para obtener los
mejores parámetros PID, debe efectuarse una optimización inicial y una optimización fina.
PID_Temp intenta generar automáticamente una oscilación que es mayor que el ruido del
valor real. La estabilidad del valor real ejerce tan solo una mínima influencia sobre la
optimización fina. Es preciso realizar una copia de seguridad de los parámetros PID antes de
volver a calcularlos.
PID_Temp ofrece distintos tipos de optimización fina en función de la configuración:
• Optimización fina para calefacción:
Mediante cambios periódicos en el valor de salida para calefacción, PID_Temp genera una
oscilación del valor real y calcula los parámetros PID para calefacción.
• Optimización fina para refrigeración:
Mediante cambios periódicos en el valor de salida para refrigeración, PID_Temp genera
una oscilación del valor real y calcula los parámetros PID para refrigeración.

Offset temporal de la optimización para el regulador de calefacción y refrigeración


Si se utiliza PID_Temp como regulador de calefacción y refrigeración ([Link]
= TRUE), el valor de salida PID (PidOutputSum) en la consigna debe cumplir la siguiente
condición para que se genere una oscilación del valor real y la optimización fina pueda
llevarse a cabo correctamente:
• Valor de salida PID positivo para la optimización fina para calefacción
• Valor de salida PID negativo para la optimización fina para refrigeración
Si esta condición no se cumple, es posible especificar un offset temporal para la optimización
fina (este offset se emite en la salida opuesta).
• Offset para la salida de refrigeración ([Link]) en caso de
optimización fina para calefacción.
Antes de iniciar la optimización debe especificarse un valor de offset de optimización para
refrigeración negativo que sea menor que el valor de salida PID (PidOutputSum) de la
consigna en estado estacionario.
• Offset para la salida de calefacción ([Link]) en caso de
optimización fina para refrigeración.
Antes de iniciar la optimización debe especificarse un valor de offset de optimización para
calefacción positivo que sea mayor que el valor de salida PID (PidOutputSum) de la
consigna en estado estacionario.

Regulación PID
168 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Entonces, el algoritmo PID compensa el offset especificado de manera que el valor real se
mantenga en la consigna. A través de la magnitud del offset, el valor de salida PID se puede
adaptar para que cumpla la condición antes mencionada.
Para evitar sobreoscilaciones mayores del valor real al especificar el offset, esta también
puede incrementarse en varios pasos.
Si PID_Temp sale del modo Optimización fina, se restablece el offset de optimización.

Ejemplo: especificación de un offset para Optimización fina refrigeración


• Sin offset
– Consigna (Setpoint) = valor real (ScaledInput) = 80 °C
– Valor de salida PID (PidOutputSum) = 30.0
– Valor de salida para calefacción (OutputHeat) = 30.0
– Valor de salida para refrigeración (OutputCool) = 0.0
La salida de refrigeración por si sola no permite generar una oscilación del valor real en
torno a la consigna. En ese caso fallaría la optimización fina.
• Con offset para la salida de calefacción ([Link]) = 80.0
– Consigna (Setpoint) = valor real (ScaledInput) = 80 °C
– Valor de salida PID (PidOutputSum) = -50.0
– Valor de salida para calefacción (OutputHeat) = 80.0
– Valor de salida para refrigeración (OutputCool) = -50.0
Especificando un offset para la salida de calefacción, la salida de refrigeración puede
generar una oscilación del valor real en torno a la consigna. De este modo la
optimización fina puede llevarse a cabo correctamente.

Requisitos generales
• La instrucción PID_Temp se llama en un OB de alarma cíclica.
• ManualEnable = FALSE
• Reset = FALSE
• La consigna y el valor real se encuentran dentro de los límites configurados (véase la
configuración "Configuración del valor real").
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se
ha alcanzado cuando el valor real coincide con la consigna.
Si la zona muerta está conectada, es posible ajustar un error de regulación (desviación
entre consigna y valor real) permanente. Esto puede tener un efecto negativo al realizar la
optimización fina.
• No se esperan perturbaciones.
• PID_Temp se encuentra en el modo de operación inactivo, automático o manual.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 169
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Requisitos para Optimización fina calefacción


• [Link] = TRUE
• [Link] = FALSE
• Si PID_Temp está configurado como regulador de calefacción y refrigeración
([Link] = TRUE), la salida de calefacción debe estar activa en el punto de
operación donde vaya a realizarse la optimización.
PidOutputSum > 0.0 (ver Offset de optimización)

Requisitos para Optimización fina refrigeración


• [Link] = FALSE
• [Link] = TRUE
• La salida de refrigeración está activada ([Link] = TRUE).
• La conmutación de parámetros PID está activada ([Link] = TRUE).
• La salida de refrigeración debe estar activa en el punto de operación donde vaya a
realizarse la optimización.
PidOutputSum < 0.0 (ver Offset de optimización)

El proceso depende de la situación de inicio


La optimización fina puede iniciarse desde los modos de operación "Inactivo", "Automático" o
"Manual".
La optimización fina se desarrolla del modo siguiente en el momento del inicio:
• Modo automático con [Link] = FALSE (ajuste predeterminado)
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la
optimización fina desde el modo automático.
PID_Temp regula con los parámetros PID existentes hasta que el lazo de regulación es
estacionario y se cumplen las condiciones para la optimización fina. Solo entonces
comienza la optimización fina.
• Modo inactivo, modo manual o modo automático con [Link] = TRUE
Se intenta alcanzar la consigna con el valor de salida mínimo o máximo (regulación de dos
puntos):
– con el valor de salida mínimo o máximo para calefacción en caso de optimización fina
para calefacción.
– con el valor de salida mínimo o máximo para refrigeración en caso de optimización fina
para refrigeración.
Esto puede ocasionar una sobreoscilación muy alta. La optimización fina comienza cuando
se alcanza la consigna.
Si no es posible alcanzar la consigna, PID_Temp no cancela automáticamente la
optimización.

Regulación PID
170 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Procedimiento
Para poder realizar una optimización fina, proceda del siguiente modo:
1. En el árbol del proyecto, haga doble clic en la entrada "PID_Temp > Puesta en servicio".
2. Active el botón "Observar todos" o inicie el visor de curvas.
Se establece una conexión online.
3. Seleccione la opción de optimización fina que desee en la lista desplegable "Modo de
ajuste".
4. Si es necesario (ver Offset de optimización), especifique un offset de optimización y
espere a que se alcance de nuevo el estado estacionario.
5. Haga clic en el símbolo "Start".
– Se inicia el proceso de optimización fina.
– En el campo "Estado" se muestran los pasos actuales y, de haberlos, los errores
ocurridos.
La barra de progreso muestra el progreso del paso actual.

NOTA
En el grupo "Modo de ajuste", haga clic en el símbolo "Stop" si la barra de progreso
(variable "Progress") lleva mucho tiempo sin avanzar y se debe presuponer un bloqueo de
la optimización. Compruebe la configuración del objeto tecnológico y, si procede, vuelva a
iniciar la optimización.
En particular en las fases siguientes, la optimización no se cancela de forma automática si
no es posible alcanzar la consigna.
– "Intentar alcanzar la consigna para la calefacción con regulación de dos puntos."
– "Intentar alcanzar la consigna para la refrigeración con regulación de dos puntos."

Resultado
Si durante la optimización fina no se produjeron errores, significa que los parámetros PID se
optimizaron. PID_Temp pasa al modo automático y utiliza los parámetros optimizados. Los
parámetros PID optimizados se conservan al desconectar (Power OFF) y al rearrancar por
completo la CPU.
Si se han producido errores durante la optimización fina, PID_Temp se comporta del modo
configurado en Comportamiento en caso de error.

7.3.4 Modo de operación "Modo manual"


A continuación se describe cómo utilizar el modo de operación "Modo manual" en la ventana
de puesta en servicio del objeto tecnológico "PID_Temp".
El modo manual es posible aunque haya un error pendiente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 171
Utilizar PID_Temp
7.3 Puesta en servicio de PID_Temp

Requisitos
• La instrucción "PID_Temp" se llama en un OB de alarma cíclica.
• Se ha establecido una conexión online con la CPU.
• La CPU se encuentra en el estado operativo "RUN".

Procedimiento
Si quiere probar el sistema regulado especificando un valor manual, utilice el "Modo manual"
en la ventana de puesta en servicio.
Para especificar un valor manual, proceda del siguiente modo:
1. En el árbol del proyecto, haga doble clic en la entrada "PID_Temp > Puesta en servicio".
2. Active el botón "Observar todos" o inicie el visor de curvas.
Se establece una conexión online.
3. Active la casilla de verificación "Modo manual" en el área "Estado online del regulador".
PID_Temp opera en modo manual. El último valor de salida actual permanece activo.
4. Introduzca el valor manual en la unidad % en el campo editable.
Si está activada la refrigeración en los ajustes básicos, introduzca el valor manual de la
siguiente manera:
– Para emitir el valor en las salidas para calefacción, introduzca un valor manual positivo.
– Para emitir el valor en las salidas para refrigeración, introduzca un valor manual
negativo.
5. Haga clic en el símbolo .

Resultado
El valor manual se escribe en la CPU y es efectivo de forma inmediata.
Desactive la casilla de verificación "Modo manual" si desea que el regulador PID vuelva a
especificar el valor de salida.
El cambio al modo automático se efectúa sin discontinuidad.

7.3.5 Consigna sustitutiva


A continuación se describe cómo utilizar la consigna sustitutiva en la ventana de puesta en
servicio del objeto tecnológico "PID_Temp".

Requisitos
• La instrucción "PID_Temp" se llama en un OB de alarma cíclica.
• Se ha establecido una conexión online con la CPU.
• La CPU se encuentra en el estado operativo "RUN".

Regulación PID
172 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

Procedimiento
Si temporalmente quiere utilizar como consigna un valor distinto al del parámetro "Setpoint"
(p. ej., para optimizar un esclavo en una cascada), utilice la consigna sustitutiva en la ventana
de puesta en servicio.
Para especificar una consigna sustitutiva, proceda del siguiente modo:
1. En el árbol del proyecto, haga doble clic en la entrada "PID_Temp > Puesta en servicio".
2. Active el botón "Observar todos" o inicie el visor de curvas.
Se establece una conexión online.
3. Active la casilla de verificación "[Link]" en el área "Estado online del regulador".
La consigna sustitutiva (variable SubstituteSetpoint) se inicializa con la última consigna
actual y se utiliza ahora.
4. Introduzca la consigna sustitutiva en el campo editable.
5. Haga clic en el símbolo .

Resultado
La consigna sustitutiva se escribe en la CPU y es efectiva de forma inmediata.
Desactive la casilla de verificación "[Link]" cuando de nuevo quiera utilizar como
consigna el valor del parámetro "Setpoint".
El cambio no tiene lugar sin discontinuidad.

7.3.6 Puesta en servicio en cascada


Para más información sobre la puesta en servicio en cascada con PID_Temp, ver Puesta en
servicio (Página 177).

7.4 Regulación en cascada con PID_Temp

7.4.1 Introducción
Para la regulación en cascada se imbrican varios lazos de regulación entre sí. Las consignas
(Setpoint) de los esclavos son los valores de salida (OutputHeat) de los respectivos maestros
superiores.
La condición para establecer una conexión en cascada es que el sistema regulado pueda
dividirse en sistemas parciales, cada uno de ellos con una magnitud propia.
La especificación de consigna para la variable regulada se lleva a cabo en el maestro más
exterior.
El valor de salida del esclavo más interior se aplica en el actuador y actúa sobre el sistema
regulado.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 173
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

El uso de una regulación en cascada ofrece las siguientes ventajas principales en comparación
con un lazo de regulación simple:
• Al haber más lazos de regulación subordinados, los errores que ocurren se corrigen más
rápido. Su influencia en la variable regulada disminuye considerablemente. Esto mejora el
comportamiento ante fallos.
• Los lazos de regulación subordinados tienen un efecto linealizante. Esto reduce las
consecuencias negativas de tales faltas de linealidad sobre la variable regulada.
PID_Temp ofrece las siguientes funciones especialmente para uso en regulaciones en
cascada:
• especificación de una consigna sustitutiva;
• intercambio de información de estado entre maestro y esclavo (p. ej., modo de operación
actual);
• varios modos Anti-Wind-Up (reacción del maestro a la limitación de sus esclavos).

Ejemplo
El siguiente diagrama de bloques muestra una regulación en cascada con PID_Temp tomando
como ejemplo el proceso simplificado de un fundidor de chocolate:
7HPS&KRFRODWH

7HPS:DWHU

3,'B7HPSB 3,'B7HPSB

,QSXW 2XWSXW+HDW ,QSXW 2XWSXW+HDW


&KRFRODWH
6HWSRLQW 2XWSXW&RRO 6HWSRLQW 2XWSXW&RRO

3,'B7HPSB :DWHU
0DVWHU 0DVWHU
6ODYH
6ODYH 6ODYH

,V0DVWHU 758( ,V0DVWHU )$/6(


,V6ODYH )$/6( ,V6ODYH 758(
&RXQW6ODYHV  &RXQW6ODYHV 

El maestro PID_Temp_1 compara el valor real de la temperatura del chocolate


(TempChocolate) con la consigna especificada por el usuario con el parámetro Setpoint. El
valor de salida OutputHeat es la consigna del esclavo PID_Temp_2.
PID_Temp_2 intenta que el valor real de la temperatura del baño María (TempWater) llegue
hasta esa consigna. El valor de salida de PID_Temp_2 se aplica directamente sobre el actuador
del sistema regulado (calefacción del baño María) y de este modo influye en la temperatura
del agua. A su vez, la temperatura del agua influye en la temperatura del chocolate.

Preguntas frecuentes (FAQ)


Para más información al respecto, consulte la siguiente pregunta frecuente (FAQ) en el
Siemens Industry Online Support:
• ID de artículo 103526819
([Link]

Regulación PID
174 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

Consulte
también
Creación del programa (Página 175)

7.4.2 Creación del programa


A la hora de crear el programa deben tenerse en cuenta los siguientes puntos:
• Número de instancias de PID_Temp
Deben llamarse tantas instancias PID_Temp diferentes en un OB de alarma cíclica como
magnitudes concatenadas haya en el proceso.
En el ejemplo hay dos magnitudes concatenadas: TempChocolate y TempWater. Por lo
tanto, se necesitan dos instancias PID_Temp.
• Orden de llamada
El maestro debe llamarse antes que sus esclavos en el mismo OB de alarma cíclica.
Primero se llama al maestro más exterior, en el que se especifica la consigna de usuario.
A continuación se llama al esclavo cuya consigna procede de ese maestro más exterior, y
así sucesivamente.
El esclavo más interior, cuyo valor de salida se aplica al actuador del proceso, es el último
en ser llamado.
En el ejemplo se llama a PID_Temp_1 antes que a PID_Temp_2.
• Interconexión de las magnitudes
El maestro más exterior se interconecta con la magnitud más exterior, que debe regularse
hasta coincidir con la consigna de usuario.
El esclavo más interior se interconecta con la magnitud más interior, que recibe la
influencia directa del actuador.
La interconexión de las magnitudes con PID_Temp se lleva a cabo con los parámetros
Input o Input_PER.
En el ejemplo, la magnitud exterior TempChocolate se interconecta con PID_Temp_1, y la
magnitud interior TempWater se interconecta con PID_Temp_2.
• Interconexión del valor de salida del maestro con la consigna del esclavo
El valor de salida (OutputHeat) de un maestro debe asignarse a la consigna (Setpoint) de
su esclavo.
Esta interconexión puede realizarse manualmente en el editor de programación o bien
automatizarse en la ventana de inspección del esclavo, seleccionando al maestro en los
ajustes básicos.
Si es necesario, pueden añadirse funciones de filtro o escalado propias, p. ej., para adaptar
el rango de valores de salida del maestro al rango de consignas/valores reales del esclavo.
En el ejemplo, OutputHeat de PID_Temp_1 se asigna a Setpoint de PID_Temp_2.
• Interconexión de la interfaz para el intercambio de información entre maestro y esclavo
El parámetro "Slave" de un maestro debe asignarse al parámetro "Master" de todos los
esclavos directamente subordinados (que reciben su consigna de ese maestro). Para poder
interconectar un maestro con varios esclavos y visualizar la interconexión en la ventana de
inspección del esclavo en los ajustes básicos, debe realizarse la asignación a través de la
interfaz del esclavo.
Esta interconexión puede realizarse manualmente en el editor de programación o bien
automatizarse en la ventana de inspección del esclavo, seleccionando al maestro en los
ajustes básicos.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 175
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

La funcionalidad Anti-Wind-Up y la evaluación de los modos de operación de esclavo en el


maestro solo pueden funcionar correctamente si se ha realizado esa interconexión.
En el ejemplo, el parámetro "Slave" de PID_Temp_1 se asigna al parámetro "Master" de
PID_Temp_2.
Código de programa del ejemplo en lenguaje SCL (sin asignación del valor de salida del
esclavo al actuador):
"PID_Temp_1"(Input:="TempChocolate");
"PID_Temp_2"(Input:="TempWater", Master := "PID_Temp_1".Slave,
Setpoint := "PID_Temp_1".OutputHeat);
Consulte
también
Variable ActivateRecoverMode PID_Temp (Página 390)

7.4.3 Configuración
La configuración puede realizarse a través del programa de usuario, el editor de configuración
o la ventana de inspección de la llamada a PID_Temp.
A la hora de utilizar PID_Temp en una regulación en cascada, debe tenerse en cuenta la
correcta configuración de los ajustes mencionados a continuación.
Si una instancia PID_Temp recibe su consigna de un maestro superior y transmite su valor de
salida a un esclavo inferior, esa instancia PID_Temp es maestro y esclavo al mismo tiempo.
Para esa instancia PID_Temp deben realizarse las dos configuraciones descritas a
continuación. Esto es lo que ocurre, por ejemplo, con la instancia PID_Temp central de una
regulación en cascada con tres magnitudes concatenadas y tres instancias PID_Temp.

Configuración de un maestro

Ajuste en el editor de configuración o Parámetro del DB Explicación


la ventana de inspección
Ajustes básicos → Cascada: [Link] = TRUE Activa ese regulador como maestro en una cas­
Activar la casilla de verificación "El regu­ cada.
lador es maestro"
Ajustes básicos → Cascada: [Link] Número de esclavos directamente subordinados
Número de esclavos que reciben sus consignas de ese maestro.
Ajustes básicos → Parámetros de entra­ [Link] = 0 El maestro utiliza exclusivamente el parámetro
da/salida: de salida OutputHeat.
Selección del valor de salida (calefac­ OutputHeat_PWM y OutputHeat_PER están de­
ción) = OutputHeat sactivados.
Ajustes básicos → Parámetros de entra­ [Link] = FALSE En un maestro, la refrigeración debe estar desac­
da/salida: tivada.
Desactivar la casilla de verificación "Acti­
var refrigeración"
Ajustes de la salida → Límites y escala del [Link]­ Si al asignar OutputHeat del maestro a Setpoint
valor de salida → OutputHeat / Output­ mit, del esclavo no se utiliza una función de escalado
Cool: [Link]­ propia, puede que sea necesario adaptar los lími­
Límite inferior del valor de salida PID (ca­ mit, tes y la escala del valor de salida del maestro al
lefacción), [Link]­ rango de consignas/valores reales del esclavo.
Límite superior del valor de salida PID ling,
(calefacción),

Regulación PID
176 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

Ajuste en el editor de configuración o Parámetro del DB Explicación


la ventana de inspección
Valor de salida inferior escalado (calefac­ [Link]­
ción), ling
Valor de salida superior escalado (cale­
facción)
Esta variable no está disponible en la [Link]­ El modo Anti-Wind-Up determina cómo se trata
ventana de inspección ni en la vista de de la acción I de ese maestro si los esclavos directa­
funciones del editor de configuración. mente subordinados alcanzan sus límites de va­
Puede modificarse a través de la vista de lor de salida.
parámetros del editor de configuración. Posibilidades:
• AntiWindUpMode = 0:
La funcionalidad AntiWindUp está desactiva­
da. El maestro no reacciona cuando sus escla­
vos están en el límite.
• AntiWindUpMode = 1 (ajuste predetermina­
do):
La acción I del maestro se reduce en la pro­
porción "esclavos en el límite / número de es­
clavos". De este modo se reducen las repercu­
siones de la limitación en el comportamiento
de regulación.
• AntiWindUpMode = 2:
La acción I del maestro se detiene en cuanto
un esclavo está en la limitación.

Configuración de un esclavo

Ajuste en el editor de configuración o Parámetro del DB Explicación


la ventana de inspección
Ajustes básicos → Cascada: [Link] = TRUE Activa ese regulador como esclavo en una casca­
Activar la casilla de verificación "El regu­ da.
lador es esclavo"

7.4.4 Puesta en servicio


Después de compilar y cargar el programa, puede iniciarse la puesta en marcha de la
regulación en cascada.
Comience la puesta en marcha (ejecución de una optimización o cambio al modo automático
con parámetros PID existentes) con el esclavo más interior y continúe hacia fuera hasta llegar
al maestro más exterior.
En el ejemplo anterior, la puesta en servicio comienza con PID_Temp_2 y prosigue con
PID_Temp_1.

Optimización del esclavo


La optimización de PID_Temp requiere una consigna constante. Por lo tanto, para optimizar
un esclavo hay que activar su consigna sustitutiva (variables SubstituteSetpoint y
SubstituteSetpointOn) o poner el maestro correspondiente en modo manual con el valor

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 177
Utilizar PID_Temp
7.4 Regulación en cascada con PID_Temp

manual correspondiente. De esta forma se garantiza que la consigna del esclavo permanezca
constante durante la optimización.

Optimización del maestro


Para que un maestro pueda influir en el proceso o realizar una optimización, todos los
esclavos posteriores deben estar en modo automático y haber desactivado la consigna
sustitutiva. A través de la interfaz para intercambio de información entre maestro y esclavo
(parámetros Master y Slave), un maestro evalúa estas condiciones y muestra el estado actual
en las variables AllSlaveAutomaticState y NoSlaveSubstituteSetpoint. En el editor de puesta
en marcha se emiten los avisos de estado correspondientes.
Aviso de estado en el editor de puesta Parámetro de DB del maestro Solución
en servicio del maestro
Uno o varios esclavos no están en modo AllSlaveAutomaticState = FALSE, Realice primero la puesta en servicio de todos los
automático. NoSlaveSubstituteSetpoint = esclavos posteriores.
TRUE Antes de realizar una optimización o de activar el
modo manual o automático del maestro, asegú­
Uno o varios esclavos han activado la AllSlaveAutomaticState = TRUE,
rese de que se cumplen las condiciones siguien­
consigna sustitutiva. NoSlaveSubstituteSetpoint =
tes:
FALSE
• Todos los esclavos siguientes están en modo
Uno o varios esclavos no están en modo AllSlaveAutomaticState = FALSE, automático (State = 3).
automático y han activado la consigna NoSlaveSubstituteSetpoint = • Todos los esclavos posteriores tienen la con­
sustitutiva. FALSE signa sustitutiva desactivada (SubstituteSet­
pointOn = FALSE).

Si se inicia una optimización inicial o una optimización fina para un maestro, PID_Temp
cancela la optimización y muestra un error con ErrorBits = DW#16#0200000 en los casos
siguientes:
• Uno o varios esclavos no están en modo automático (AllSlaveAutomaticState = FALSE).
• Uno o varios esclavos han activado la consigna sustitutiva (NoSlaveSubstituteSetpoint =
FALSE).
El siguiente cambio de modo de operación depende de ActivateRecoverMode.

7.4.5 Consigna sustitutiva


Para la especificación de una consigna, PID_Temp ofrece, además del parámetro Setpoint,
una consigna sustitutiva en la variable SubstituteSetpoint. Esta puede activarse con
SubstituteSetpointOn = TRUE o marcando la casilla de verificación correspondiente en el
editor de puesta en servicio.
Con la consigna sustitutiva se puede especificar la consigna directamente en el esclavo de
forma temporal, p. ej., para la puesta en servicio u optimización.
Para ello, en el programa no debe modificarse la interconexión del valor de salida del maestro
con la consigna del esclavo (interconexión necesaria para el funcionamiento normal de la
regulación en cascada).
Para que un maestro pueda influir en el proceso o realizar una optimización, todos los
esclavos posteriores deben haber desactivado la consigna sustitutiva.
La consigna actualmente activa, utilizada por el algoritmo PID para el cálculo, puede verse en
la variable CurrentSetpoint.

Regulación PID
178 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.5 Regulación multizona con PID_Temp

7.4.6 Modos de operación y reacción a fallo


El maestro o esclavo de una instancia PID_Temp no cambian el modo de operación de dicha
instancia PID_Temp.
Si se produce un error en uno de sus esclavos, el maestro permanece en su modo de
operación actual.
Si se produce un error en su maestro, el esclavo permanece en su modo de operación actual.
Sin embargo, el funcionamiento posterior del esclavo depende del error y de la reacción a
fallo configurada en el maestro, ya que el valor de salida del maestro se utiliza como consigna
del esclavo:
• Si en el maestro está configurado ActivateRecoverMode = TRUE y el error no impide el
cálculo de OutputHeat, el error no afecta al esclavo.
• Si en el maestro está configurado ActivateRecoverMode = TRUE y el error impide el cálculo
de OutputHeat, el maestro, en función de SetSubstituteOutput, emite el último valor de
salida válido o el valor de salida sustitutivo configurado SubstituteOutput. Este valor es
utilizado por el esclavo como consigna.
PID_Temp está preajustado de manera que en este caso se emite el valor de salida
sustitutivo 0.0 (ActivateRecoverMode = TRUE, SetSubstituteOutput = TRUE,
SubstituteOutput = 0.0). Configure para su aplicación un valor de salida sustitutivo
adecuado o bien active el uso del último valor de salida PID válido (SetSubstituteOutput =
FALSE).
• Si en el maestro está configurado ActivateRecoverMode = FALSE, en caso de fallo el
maestro cambia al modo de operación "Inactivo" y emite OutputHeat = 0.0. El esclavo
utiliza 0.0 como consigna.
La reacción a fallo puede consultarse en los ajustes de salida, en el editor de configuración.

7.5 Regulación multizona con PID_Temp

Introducción
La regulación multizona consiste en que varias subáreas de una instalación, llamadas zonas,
se regulan simultáneamente a temperaturas diferentes. La característica de la regulación
multizona es la influencia mutua de las zonas de temperatura mediante acoplamiento
térmico, es decir, el valor real de una zona puede influir en el valor real de otra zona debido al
acoplamiento térmico. El efecto de esta influencia depende del diseño de la instalación y de
los puntos de operación seleccionados en las zonas.
Ejemplo: una extrusora de las que se utilizan para la transformación de plásticos, entre otras
cosas.
Para que la transformación se lleve a cabo de manera óptima, la mezcla que pasa por la
extrusora debe regularse a temperaturas diferentes. Así, por ejemplo, en la zona de llenado
de la extrusora pueden necesitarse temperaturas diferentes que en la tobera de salida. Las
distintas zonas de temperatura influyen unas en otras debido al acoplamiento térmico.
Si se utiliza PID_Temp en regulaciones multizona, cada zona de temperatura es regulada por
una instancia PID_Temp propia.
Debe tener en cuenta las indicaciones siguientes cuando utilice PID_Temp en una regulación
multizona.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 179
Utilizar PID_Temp
7.5 Regulación multizona con PID_Temp

Optimización inicial separada para calefacción y refrigeración


La primera puesta en servicio de una instalación generalmente comienza con una
optimización inicial, para realizar un primer ajuste de los parámetros PID y para regular el
punto de operación. La optimización inicial para regulaciones multizona suele realizarse
simultáneamente para todas las zonas.
Para reguladores con refrigeración activada y conmutación de parámetros PID como método
para calefacción/refrigeración ([Link] = TRUE, [Link] =
TRUE), PID_Temp ofrece la posibilidad de realizar la optimización inicial para calefacción y
refrigeración en un solo paso (Mode = 1, [Link] = TRUE, [Link] =
TRUE).
No obstante, se recomienda no utilizar esta optimización en caso de optimización inicial
simultánea de varias instancias PID_Temp en una regulación multizona. En lugar de ello,
realice la optimización inicial para calefacción (Mode = 1, [Link] = TRUE,
[Link] = FALSE) y la optimización inicial para refrigeración (Mode = 1,
[Link] = FALSE, [Link] = TRUE) por separado.
La optimización inicial para refrigeración no debe iniciarse hasta que todas las zonas hayan
concluido la optimización inicial para calefacción y hayan alcanzado su punto de operación.
De esta manera, se reducen las influencias mutuas debidas a acoplamientos térmicos entre
las zonas durante la optimización.

Adaptación del tiempo de retardo


Si se utiliza PID_Temp en una regulación multizona con fuertes acoplamientos térmicos entre
las zonas, hay que cerciorarse de que la adaptación del tiempo de retardo para la
optimización inicial esté desactivada con [Link] = 0. De lo
contrario, la determinación del tiempo de retardo puede verse falseada si durante la
adaptación del tiempo de retardo (la calefacción está desactivada en esa fase) se impide la
refrigeración de esa zona debido a la entrada de calor procedente de otras zonas.

Desconexión temporal de la refrigeración


Para reguladores con refrigeración activada ([Link] = TRUE), PID_Temp
ofrece la posibilidad de desactivar temporalmente la refrigeración en modo automático
ajustando DisableCooling = TRUE.
De esta manera durante la puesta en servicio puede impedirse que ese regulador enfríe en
modo automático mientras los reguladores de otras zonas todavía no han concluido la
optimización de la calefacción. Si eso ocurriera, la optimización podría verse afectada
negativamente debido al acoplamiento térmico entre las zonas.

Procedimiento
Para la puesta en servicio de regulaciones multizona con acoplamientos térmicos relevantes,
puede proceder del siguiente modo:
1. Para todos los reguladores con refrigeración activada, ajuste DisableCooling = TRUE.
2. Para todos los reguladores, ajuste [Link] = 0.
3. Especifique las consignas que desee (parámetro Setpoint) e inicie simultáneamente para
todos los reguladores la optimización inicial para calefacción (Mode = 1,
[Link] = TRUE, [Link] = FALSE).

Regulación PID
180 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.5 Regulación multizona con PID_Temp

4. Espere a que todos los reguladores hayan concluido la optimización inicial de la


calefacción.
5. Para todos los reguladores con refrigeración activada, ajuste DisableCooling = FALSE.
6. Espere a que los valores reales de todas las zonas se hayan estabilizado y estén próximos a
las consignas correspondientes.
Si en una zona no es posible alcanzar la consigna de manera permanente, significa que el
actuador de calefacción o refrigeración está infradimensionado.
7. Para todos los reguladores con refrigeración activada, inicie la optimización inicial de la
refrigeración (Mode = 1, [Link] = FALSE, [Link] = TRUE).

NOTA
Rebase de los límites del valor real
Si la refrigeración en modo automático se desactiva con DisableCooling = TRUE, puede ocurrir
que el valor real rebase la consigna y los límites de valor real mientras DisableCooling = TRUE.
Observe los valores reales y esté preparado para intervenir si utiliza DisableCooling.

NOTA
Regulaciones multizona
En las regulaciones multizona, los acoplamientos térmicos entre las zonas pueden causar
fuertes sobreoscilaciones, rebasamientos permanentes o transitorios de valores límite, y
errores de regulación permanentes o transitorios durante la puesta en servicio y durante el
funcionamiento. Observe los valores reales y esté preparado para intervenir. Dependiendo de
la instalación, puede que sea necesario actuar de manera diferente al procedimiento descrito.

Sincronización de varias optimizaciones finas


Si la optimización fina se inicia desde el modo automático con [Link] = FALSE,
PID_Temp intenta alcanzar la consigna con regulación PID y con los parámetros PID actuales.
La optimización propiamente dicha no comienza hasta que se alcanza la consigna. El tiempo
necesario para alcanzar la consigna puede diferir en las diferentes zonas de una regulación
multizona.
Si se quiere realizar la optimización fina para varias zonas a la vez, PID_Temp ofrece la
posibilidad de sincronizarlas retrasando el resto de los pasos de optimización hasta que se
alcance la consigna.

Procedimiento
De esta manera puede asegurarse de que todos los reguladores hayan alcanzado su consigna
cuando comiencen los pasos de optimización propiamente dichos. Así se reducen las
influencias mutuas debidas a acoplamientos térmicos entre las zonas durante la optimización.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 181
Utilizar PID_Temp
7.6 Regulación de transición con PID_Temp

Con los reguladores para cuyas zonas quiera realizar la optimización fina de manera
simultánea, proceda del siguiente modo:
1. Ajuste [Link] = TRUE para todos los reguladores.
Esos reguladores deben estar en modo automático con [Link] = FALSE.
2. Especifique las consignas que desee (parámetro Setpoint) e inicie la optimización fina para
todos los reguladores.
3. Espere hasta que en todos los reguladores esté ajustado [Link] =
TRUE.
4. Ajuste [Link] = TRUE Para todos los reguladores.
Todos los reguladores inician la optimización en sí simultáneamente.

7.6 Regulación de transición con PID_Temp

Regulación de transición
En caso de regulación de transición, dos o más reguladores comparten un actuador común.
En cada instante, solo un regulador tiene acceso al actuador y actúa sobre el proceso.
Una lógica decide qué regulador obtiene acceso al actuador. A menudo, esta decisión se
toma en función de una comparación de los valores de salida de todos los reguladores, p. ej.,
el regulador con el mayor valor de salida obtiene acceso al actuador en caso de selección del
máximo.
La selección en función del valor de salida hace necesario que todos los reguladores
funcionen en el modo automático. Los reguladores que no tengan efecto sobre el actuador se
corrigen. Esto es necesario para evitar los efectos de Windup y sus repercusiones negativas
sobre el comportamiento de regulación y la conmutación entre los reguladores.
A partir de la versión 1.1, PID_Temp soporta regulaciones de transición, pues el regulador
ofrece un procedimiento simplificado para corregir el regulador no activo: Mediante las
variables OverwriteInitialOutputValue y [Link] es posible preasignar la acción I del
regulador en el modo automático como si el algoritmo PID hubiera calculado PidOutputSum =
OverwriteInititalOutputValue para el valor de salida PID en el último ciclo. Para ello,
OverwriteInitialOutputValue se interconecta con el valor de salida PID del regulador que
tenga acceso al actuador en ese momento. Ajustando el bit [Link] se lanza la
preasignación de la acción I, así como el reinicio del ciclo del regulador y el período de PWM.
El subsiguiente cálculo del valor de salida PID en el ciclo actual se realiza basándose en la
acción I preasignada (e igualada para todos los reguladores), así como en la acción P e I del
actual error de regulación. La acción D no está activa durante la llamada con [Link] =
TRUE y, por tanto, no contribuye al valor de salida.
Este procedimiento garantiza que el cálculo del valor de salida PID actual y, con ello, la
decisión sobre qué regulador tiene acceso al actuador solo tengan lugar considerando el
estado actual del proceso y los parámetros PI. Así se evitan los efectos de Windup en los
reguladores no activos y, con ello, las decisiones erróneas de la lógica de conmutación.

Regulación PID
182 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.6 Regulación de transición con PID_Temp

Requisitos
• [Link] solo es efectivo si la acción I está activada (variables
[Link] y [Link] > 0.0).
• Debe asignar [Link] y OverwriteInitialOutputValue usted mismo en su programa
de usuario (ver ejemplo más abajo). PID_Temp no realiza ningún cambio automático en
estas variables.
• [Link] solo es efectivo si PID_Temp se encuentra en el modo automático
(parámetro State = 3).
• Si es posible, seleccione el tiempo de muestreo del algoritmo PID (variables
[Link] y [Link]) de forma que sea idéntico
para todos los reguladores, y llame todos los reguladores en el mismo OB de alarma
cíclica. De esta forma se asegurará de que la conmutación no suceda dentro de un ciclo de
regulador o de un período de PWM.

NOTA
Adaptación continua de los límites de los valores de salida
En lugar de la corrección activa de reguladores sin acceso al actuador aquí descrita, en otros
sistemas de regulador se realiza alternativamente una adaptación continua de los límites de
los valores de salida.
Esto no es posible con PID_Temp, pues no se soporta el cambio de los límites de los valores
de salida en el modo automático.

Ejemplo: regulación de una gran caldera


PID_Temp se utiliza para la regulación de una gran caldera
El objetivo principal es regular la temperatura Input1. Para ello se utiliza el regulador
PID_Temp_1. Además, con el regulador de limitación PID_Temp_2 debe mantenerse la
temperatura Input2 en un punto de medición adicional por debajo de un límite superior.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 183
Utilizar PID_Temp
7.6 Regulación de transición con PID_Temp

Las dos temperaturas se modifican a través de una única calefacción. El valor de salida del
regulador se corresponde con la potencia de calefacción.

Input1
PID_Temp_1

<
Input2
PID_Temp_2

La calefacción se acciona mediante el valor de salida modulado por ancho de impulso de


PID_Temp (parámetro OutputHeat_PWM), escribiendo la variable de programa ActuatorInput.
La preasignación de la consigna para la temperatura Input1 se realiza en el parámetro
PID_Temp_1.Setpoint. El límite superior de temperatura para el punto de medición adicional
se preasigna como consigna en el parámetro PID_Temp_2.Setpoint.
Input1

PID_Temp_1

Input OutputHeat_PWM
1
ActuatorInput
Setpoint PidOutputSum

[Link] 0

OverwriteInitial
OutputValue

<
PID_Temp_2
1
Input OutputHeat_PWM

Setpoint PidOutputSum 0

[Link]
OverwriteInitial
OutputValue

Input2

Ambos reguladores disponen únicamente de una calefacción como actuador común. La


lógica que decide qué regulador obtiene acceso al actuador se implementa aquí a través de
una selección de mínimo del valor de salida PID (en formato Real, parámetro PidOutputSum).
Puesto que el valor de salida PID corresponde a la potencia calorífica, el regulador obtiene el
control que requiere la menor potencia de calefacción.

Regulación PID
184 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar PID_Temp
7.6 Regulación de transición con PID_Temp

En el funcionamiento normal de la instalación, el valor real de la magnitud regulada principal


corresponde a la consigna. El regulador principal PID_Temp_1 se ha estabilizado en un valor
de salida PID estacionario PID_Temp_1.PidOutputSum. En servicio normal, el valor real del
regulador de limitación Input2 está claramente por debajo del límite superior que se ha
preasignado como consigna para PID_Temp_2. Por tanto, el regulador de limitación debe
seguir aumentando la potencia calorífica para aumentar su valor real, es decir, calculará un
valor de salida PID PID_Temp_2.PidOutputSum que será superior al del regulador principal
PID_Temp_1.PidOutputSum. Por tanto, la selección mínima de la lógica de conmutación sigue
permitiendo al regulador principal PID_Temp_1 el acceso al actuador. Además, mediante las
asignaciones PID_Temp_2.OverwriteInitialOutputValue = PID_Temp_1.PidOutputSum y
PID_Temp_2.[Link] = TRUE se garantiza que se corregirá PID_Temp_2.
Ahora bien, si Input2 se acerca al límite superior o lo rebasa, por ejemplo, debido a una
avería, el regulador de limitación PID_Temp_2 calculará un valor de salida PID menor para
seguir moderando la potencia calorífica y así reducir Input2. Si PID_Temp_2.PidOutputSum es
menor que PID_Temp_1.PidOutputSum, el regulador de limitación PID_Temp_2 obtiene
acceso al actuador a través de la selección de valor mínimo y reduce la potencia de
calefacción. Mediante las asignaciones PID_Temp_1.OverwriteInitialOutputValue =
PID_Temp_2.PidOutputSum y PID_Temp_1.[Link] = TRUE se garantiza que se
corregirá PID_Temp_1.
La temperatura en el punto de medición adicional Input2 se reduce. La temperatura de la
magnitud regulada principal Input1 cae también y ya no puede mantenerse en la consigna.
Si la avería deja de producirse, Input2 seguirá cayendo, y la potencia de calefacción del
regulador de limitación volverá a aumentar. En cuanto el regulador principal calcula una
potencia de calefacción menor como valor de salida, la instalación regresa al modo normal,
de forma que el regulador principal PID_Temp_1 vuelve a obtener acceso al actuador. Este
ejemplo se puede implementar con el siguiente código de programa SCL:
"PID_Temp_1"(Input := "Input1");
"PID_Temp_2"(Input := "Input2");
IF "PID_Temp_1".PidOutputSum <= "PID_Temp_2".PidOutputSum THEN
"ActuatorInput" := "PID_Temp_1".OutputHeat_PWM;
"PID_Temp_1".[Link] := FALSE;
"PID_Temp_2".[Link] := TRUE;
"PID_Temp_2".OverwriteInitialOutputValue := "PID_Temp_1".PidOutputSum;
ELSE
"ActuatorInput" := "PID_Temp_2".OutputHeat_PWM;
"PID_Temp_1".[Link] := TRUE;
"PID_Temp_2".[Link] := FALSE;
"PID_Temp_1".OverwriteInitialOutputValue := "PID_Temp_2".PidOutputSum;
END_IF;

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 185
Utilizar PID_Temp
7.7 Simulación de PID_Temp con PLCSIM

7.7 Simulación de PID_Temp con PLCSIM

NOTA
Simulación con PLCSIM
La simulación de PID_Temp con PLCSIM para CPU S7-1200 no se soporta.
PID_Temp solo puede simularse con PLCSIM para CPU S7-1500.
En la simulación con PLCSIM, el comportamiento temporal del PLC simulado no es idéntico al
de un PLC "auténtico". El verdadero ciclo de un OB de alarma cíclica puede presentar mayores
fluctuaciones en un PLC simulado que en un PLC "auténtico".
En la configuración estándar, PID_Temp determina automáticamente el tiempo entre las
llamadas y vigila sus fluctuaciones.
Por tanto, al simular PID_Temp con PLCSIM es posible detectar un error de tiempo de
muestreo (ErrorBits = DW#16#00000800).
Esto provoca la cancelación de las optimizaciones en curso.
La reacción en el modo automático depende del valor de la variable ActivateRecoverMode.
Para evitarlo, debe configurarse PID_Temp en la simulación con PLCSIM del modo siguiente:
• [Link] = FALSE
• [Link] = FALSE
• [Link]: Asigne a estas variables el ciclo del OB de alarma cíclica que se debe
llamar en la unidad segundos.

Regulación PID
186 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID 8
8.1 CONT_C

8.1.1 Objeto tecnológico CONT_C


El objeto tecnológico CONT_C proporciona un regulador PID continuo para los modos
automático y manual. Equivale al bloque de datos de instancia de la instrucción CONT_C. La
instrucción PULSEGEN permite configurar un regulador de impulsos.
Los componentes proporcional, integrativo (INT) y diferencial (DIF) están conectados en
paralelo y se pueden conectar o desconectar de forma independiente. Con ello se pueden
parametrizar los reguladores P, PI, PD y PID.
S7-1500
Todos los parámetros y variables del objeto tecnológico son remanentes y, al efectuarse la
carga en el dispositivo, solo pueden modificarse si se carga CONT_C por completo.
Consulte
también
Vista general de los reguladores de software (Página 40)
Agregar objetos tecnológicos (Página 42)
Configurar objetos tecnológicos (Página 43)
Cargar objetos tecnológicos en el dispositivo (Página 45)
CONT_C (Página 396-397)

8.1.2 Configurar el error de regulación CONT_C

Utilizar el valor real de periferia


Para utilizar el valor real en el formato de periferia en el parámetro de entrada PV_PER,
proceda del siguiente modo:
1. Active la casilla de verificación "Activar periferia".
2. Si existe el valor real como magnitud física, introduzca el factor y el offset para la
normalización en porcentajes.
De este modo, el valor real se calcula según la siguiente fórmula:
PV = PV_PER × PV_FAC + PV_OFF

Utilizar el valor real interno


Para utilizar el valor real en el formato de coma flotante en el parámetro de entrada PV_IN,
proceda del siguiente modo:
1. Desactive la casilla de verificación "Activar periferia".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 187
Utilizar funciones básicas PID
8.1 CONT_C

Error de regulación
Ajuste un ancho de zona muerta según los siguientes requisitos:
• La señal del valor real tiene ruido.
• La ganancia del regulador es alta.
• La acción D está activada.
El nivel de ruido del valor real provoca, en este caso, fuertes variaciones de la variable
manipulada. La zona muerta suprime el nivel de ruido, cuando el estado del regulador es
estacionario. El ancho de zona muerta indica el tamaño de la zona muerta. Con un ancho de
zona muerta de 0.0, la zona muerta se encuentra desactivada.
Consulte
también
Funcionamiento de CONT_C (Página 397)

8.1.3 Configurar el algoritmo de regulación CONT_C

General
Para averiguar qué acciones del algoritmo de regulación están activadas, proceda del
siguiente modo:
1. Seleccione una entrada de la lista "Estructura de regulador".
Sólo puede introducir los parámetros necesarios para la estructura de regulación
seleccionada.

Acción P
1. Si la estructura de regulador contiene una acción P, introduzca la "Ganancia proporcional".

Acción I
1. Si la estructura de regulador contiene una acción I, introduzca la "Tiempo de integración".
2. Para asignar un valor de inicialización a la acción I, active el botón de opción "Inicializar
acción I" e introduzca el valor de inicialización.
3. Para ajustar la acción I permanentemente a este valor de inicialización, active el botón de
opción "Detener acción I".

Acción D
1. Si la estructura del regulador contiene una acción D, introduzca el tiempo derivativo, la
ponderación de la acción D y el tiempo de retardo.

Consulte
también
Funcionamiento de CONT_C (Página 397)

Regulación PID
188 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.1 CONT_C

8.1.4 Configurar la variable manipulada CONT_C

General
Puede instroducir CONT_C en el modo manual o en el modo automático.
1. Para fijar una variable manipulado manual, active el botón de opción "Activar modo
manual".
Puede especificar una variable manipulado manual en el parámetro de entrada MAN.

Límites de la variable manipulada


La variable manipulada se limita hacia arriba o hacia abajo, para que sólo pueda aceptar
valores válidos. No puede desconectar la limitación. Si se sobrepasan los límites, esto se
muestra mediante los parámetros de salida QLMN_HLM y QLMN_LLM.
1. Introduzca un valor para el límite superior y el límite inferior de la variable manipulada.
Si la variable manipulada es una magnitud física, las unidades para el límite superior y el
límite inferior de la variable manipulada deben coincidir.

Normalización
La variable manipulada se puede normalizar para la salida como valor en coma flotante y
valor de periferia mediante un factor y un offset, según la siguiente fórmula.
Variable manipulada normalizada = variable manipulada × factor + offset
Están preseleccionados un factor de 1.0 y un offset de 0.0.
1. Introduzca un valor para factor y offset.

Consulte
también
Funcionamiento de CONT_C (Página 397)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 189
Utilizar funciones básicas PID
8.1 CONT_C

8.1.5 Programar regulador de impulsos


Con el regulador continuo CONT_C y el formador de impulsos PULSEGEN, es posible realizar
un regulador de valor fijo con salida de conmutación para actuadores proporcionales. La
figura siguiente muestra el proceso de señales del lazo de regulación.

&217B& 38/6(*(1

/01 ,19 4326B3


41(*B3

39B3(5

5HFRUULGRFRQVDOLGD
GHFRQPXWDFLµQ

El regulador continuo CONT_C forma la variable manipulada LMN que el formador de


impulsos PULSEGEN convierte en señales de pausa de impulso QPOS_P o QNEG_P.
Consulte
también
PULSEGEN (Página 406)

8.1.6 Poner en marcha CONT_C

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Procedimiento
Para determinar manualmente los parámetros PID óptimos, proceda del siguiente modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. Introduzca parámetros PID nuevos en los campos "P", "I", "D" y "Tiempo de retardo".
3. Haga clic en el grupo "Optimización" en el símbolo "Enviar parámetros a la CPU".
4. En el grupo "Valores actuales", active la casilla de verificación "Especificar consigna" .
5. Introduzca otra consigna y haga clic en el grupo "Valores actuales", en el símbolo .
6. En caso necesario, desactive la casilla de verificación "Modo manual".
El regulador trabaja con los nuevos parámetros PID y regula según la nueva consigna.

Regulación PID
190 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.2 CONT_S

7. Compruebe la calidad de los parámetros PID mediante los recorridos de la curva.


8. Repita los pasos del 2 hasta el 6, hasta que esté satisfecho/a con el resultado de la
regulación.

8.2 CONT_S

8.2.1 Objeto tecnológico CONT_S


El objeto tecnológico CONT_S pone a disposición un regulador paso a paso para elementos
finales de control con comportamiento integral y sirve para regular los procesos técnicos de
temperatura con señales binarias de salida de variable manipulada. El objeto tecnológico
corresponde al bloque de datos de instancia de la instrucción CONT_S. El modo de trabajo se
basa en el algoritmo de regulación PI del regulador de muestreo. El regulador paso a paso
opera sin realimentación de posición. Es posible elegir entre el modo manual y el automático.

S7-1500
Todos los parámetros y variables del objeto tecnológico son remanentes y, al efectuarse la
carga en el dispositivo, solo pueden modificarse si se carga CONT_S por completo.
Consulte
también
Vista general de los reguladores de software (Página 40)
Agregar objetos tecnológicos (Página 42)
Configurar objetos tecnológicos (Página 43)
Cargar objetos tecnológicos en el dispositivo (Página 45)
CONT_S (Página 402)

8.2.2 Configurar el error de regulación CONT_S

Utilizar el valor real de periferia


Para utilizar el valor real en el formato de periferia en el parámetro de entrada PV_PER,
proceda del siguiente modo:
1. Active la casilla de verificación "Activar periferia".
2. Si existe el valor real como magnitud física, introduzca el factor y el offset para la
normalización en porcentajes.
De este modo, el valor real se calcula según la siguiente fórmula:
PV = PV_PER × PV_FAC + PV_OFF

Utilizar el valor real interno


Para utilizar el valor real en el formato de coma flotante en el parámetro de entrada PV_IN,
proceda del siguiente modo:
1. Desactive la casilla de verificación "Activar periferia".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 191
Utilizar funciones básicas PID
8.2 CONT_S

Error de regulación
Ajuste un ancho de zona muerta según los siguientes requisitos:
• La señal del valor real tiene ruido.
• La ganancia del regulador es alta.
• La acción D está activada.
La componente de ruido del valor real provoca, en este caso, fuertes variaciones de la variable
manipulada. La zona muerta suprime la componente de ruido cuando el estado del regulador
es estacionario. El ancho de zona muerta indica el tamaño de la zona muerta. Con un ancho
de zona muerta de 0.0, la zona muerta se encuentra desactivada.
Consulte
también
Funcionamiento de CONT_S (Página 403)

8.2.3 Configurar el algoritmo de regulación CONT_S

Algoritmo PI
1. Introduzca la "Ganancia roporcional" para la acción P.
2. Introduzca el tiempo de integración para la rapidez de respuesta de la acción I.
Con un tiempo de integración de 0.0, la acción I se encuentra desactivada.
Consulte
también
Funcionamiento de CONT_S (Página 403)

8.2.4 Configurar la variable manipulada CONT_S

General
Puede introducir CONT_S en el modo manual o en el modo automático.
1. Para fijar una variable manipulado manual, active el botón de opción "Activar modo
manual".
Especifique una variable manipulada manual en los parámetros de entrada LMNUP y
LMNDN.

Generador de impulsos
1. Introduzca la duración mínima de impulso y la duración mínima de pausa.
Los valores deben ser mayores o iguales al tiempo de ciclo en el parámetro de entrada
CYCLE. De esta manera, se reduce la frecuencia de maniobra.
2. Introduzca el tiempo de posicionamiento del motor.
El valor debe ser mayor o igual al tiempo de ciclo en el parámetro de entrada CYCLE.

Regulación PID
192 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Consulte
también
Funcionamiento de CONT_S (Página 403)

8.2.5 Poner en marcha CONT_S

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Procedimiento
Para determinar manualmente los parámetros PID óptimos, proceda del siguiente modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. Introduzca una nueva ganancia proporcional y un nuevo tiempo de integración en los
campos "P" e "I".
3. Haga clic en el grupo "Optimización" en el símbolo "Enviar parámetros a la CPU".
4. En el grupo "Valores actuales", active la casilla de verificación "Especificar consigna" .
5. Introduzca una nueva consigna y haga clic en el grupo "Valores actuales", en el símbolo .
6. En caso necesario, desactive la casilla de verificación "Modo manual".
El regulador trabaja con los nuevos parámetros y regula según la nueva consigna.
7. Compruebe la calidad de los parámetros PID mediante los recorridos de la curva.
8. Repita los pasos del 2 hasta el 6, hasta que esté satisfecho/a con el resultado de la
regulación.

8.3 TCONT_CP

8.3.1 Objeto tecnológico TCONT_CP


El objeto tecnológico TCONT_CP proporciona un regulador de temperatura continuo con
generador de impulsos. Equivale al bloque de datos instancia de la instrucción TCONT_CP. El
modo de trabajo se basa en el algoritmo de regulación PID del regulador de muestreo. Es
posible elegir entre el modo manual y el automático.
La instrucción TCONT_CP calcula los parámetros P, I y D para el sistema regulado de forma
autónoma durante la "optimización inicial". Los parámetros pueden optimizarse aún más a
través de una "optimización fina". Los parámetros PID también pueden determinarse
manualmente.
S7-1500
Todos los parámetros y variables del objeto tecnológico son remanentes y, al efectuarse la
carga en el dispositivo, solo pueden modificarse si se carga TCONT_CP por completo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 193
Utilizar funciones básicas PID
8.3 TCONT_CP

Consulte
también
Vista general de los reguladores de software (Página 40)
Agregar objetos tecnológicos (Página 42)
Configurar objetos tecnológicos (Página 43)
Cargar objetos tecnológicos en el dispositivo (Página 45)
TCONT_CP (Página 415)

8.3.2 Configurar TCONT_CP

[Link] Error de regulación

Utilizar el valor real de periferia


Para utilizar el parámetro de entrada PV_PER, proceda del siguiente modo:
1. Seleccione la entrada "Periferia" en la lista "Origen".
2. Seleccione el "Tipo de sensor ".
Según el tipo de sensor, el valor real se normaliza según diferentes fórmulas.
– Termopares
estándar; PT100/NI100
PV = 0.1 × PV_PER × PV_FAC + PV_OFFS
– Climatiz.;
PT100/NI100
PV = 0.01 × PV_PER × PV_FAC + PV_OFFS
– Intensidad/tensión
PV = 100/27648 × PV_PER × PV_FAC + PV_OFFS
3. Introduzca factor y offset para la normalización del valor real de periferia.

Utilizar el valor real interno


Para utilizar el parámetro de entrada PV_IN, proceda del siguiente modo:
1. Seleccione la entrada "Interno" en la lista "Origen".

Error de regulación
Ajuste un ancho de zona muerta según los siguientes requisitos:
• La señal del valor real tiene ruido.
• La ganancia del regulador es alta.
• La acción D está activada.
La componente de ruido del valor real provoca, en este caso, fuertes variaciones de la variable
manipulada. La zona muerta suprime la componente de ruido cuando el estado del regulador
es estacionario. El ancho de zona muerta indica el tamaño de la zona muerta. Con un ancho
de zona muerta de 0.0, la zona muerta se encuentra desactivada.

Regulación PID
194 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Consulte
también
Funcionamiento de TCONT_CP (Página 416)

[Link] Algoritmo de regulación

General
1. Introduzca el "Tiempo de muestreo del algoritmo PID".
El tiempo de muestreo del regulador no debería exceder un 10 % del tiempo de
integración del regulador (TI) calculado.
2. Si la estructura de regulador contiene una acción P, introduzca la "Ganancia proporcional".
Una ganancia proporcional negativa invierte el sentido de regulación.

Acción P
En caso de modificaciones de la consigna, la acción P puede provocar sobreoscilaciones.
Mediante la ponderación de la acción P se puede elegir con qué intensidad debe actuar la
acción P al cambiar la consigna. La atenuación de la acción P se logra mediante una
compensación en la acción I.
1. Para atenuar la acción P en caso de modificaciones de la consigna, introduzca la
"Ponderación de la acción P".
– 1.0: Acción P completamente efectiva en caso de modificación de la consigna
– 0.0: Acción P inefectiva en caso de modificación de la consigna

Acción I
En caso de limitación de la variable manipulada, la acción I se detiene. En caso de un error de
regulación, que mueve la acción I en dirección al área manipulada interna, la acción I vuelve a
activarse.
1. Si la estructura de regulador contiene una acción I, introduzca el "Tiempo de integración".
Con un tiempo de integración de 0.0, la acción I se encuentra desactivada.
2. Para asignar un valor de inicialización a la acción I, active el botón de opción "Inicializar
acción I" e introduzca el "Valor de inicialización".
En caso de reinicio o COM_RST = TRUE, la acción I se pone en este valor.

Acción D
1. Si la estructura del regulador contiene una acción D, introduzca el tiempo derivativo (TD) y
el coeficiente DT1 (D_F).
Si está conectada la acción D, deberá cumplirse la siguiente ecuación:
TD = 0.5 × CYCLE× D_F.
De ahí se calcula el tiempo de retardo según la fórmula:
Tiempo de retardo = TD/D_F

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 195
Utilizar funciones básicas PID
8.3 TCONT_CP

Parametrizar el regulador PD con el punto de operación


1. Introduzca el tiempo de integración 0.0.
2. Active el botón de opción "Inicializar acción I".
3. Introduzca el punto de operación como valor de inicialización.

Parametrizar el regulador P con el punto de operación


1. Parametrice un regulador PD con el punto de operación.
2. Introduzca el tiempo derivativo 0.0.
La acción D se desactiva.

Zona de regulación
La zona de regulación limita el rango del error de regulación. Si el error de regulación se
encuentra fuera de este rango, se utilizan los límites de la variable manipulada.
Al entrar en la zona de regulación, la acción D conectada provoca una reducción muy rápida
de la magnitud manipulada. Por lo tanto, la zona de regulación sólo es útil, cuando la acción
D está conectada. Sin zona de regulación, principalmente sólo la acción P que va
disminuyendo reduciría la magnitud manipulada. La zona de regulación provoca un régimen
transitorio rápido sin sobreoscilaciones ni posteriores infraoscilaciones, en caso de que la
magnitud manipulada mínima o máxima emitida esté a mucha distancia de la magnitud
manipulada necesaria para el nuevo punto de operación.
1. Active el botón de opción "Activar" en el grupo "Zona de regulación".
2. Introduzca en el campo de entrada "Ancho" un valor que el valor real pueda desviarse de la
consigna por encima o por debajo.

Consulte
también
Funcionamiento de TCONT_CP (Página 416)

[Link] Variable manipulada del regulador continuo

Límites de la variable manipulada


La variable manipulada se limita hacia arriba o hacia abajo, para que sólo pueda aceptar
valores válidos. No puede desconectar la limitación. Si se sobrepasan los límites, esto se
muestra mediante los parámetros de salida QLMN_HLM y QLMN_LLM.
1. Introduzca un valor para el límite superior y el límite inferior de la variable manipulada.

Normalización
La variable manipulada se puede normalizar para la salida como valor de punto flotante y
valor de periferia mediante un factor y un offset, según la siguiente fórmula.
Variable manipulada normalizada = variable manipulada × factor + offset

Regulación PID
196 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Hay preasignado un factor de 1.0 y un offset de 0.0.


1. Introduzca un valor para factor y offset.

Generador de impulsos
Para un regulador continuo, el generador de impulsos debe estar desconectado.
1. Desactive el botón de opción "Activar" en el grupo "Generador de impulsos".

Consulte
también
Funcionamiento de TCONT_CP (Página 416)

[Link] Variable manipulada del regulador de impulsos

Generador de impulsos
La variable manipulada análogo (LmnN) se puede emitir con modulación de ancho de
impulsos en el parámetro de salida QPULSE como un intervalor de impulsos.
Para utilizar el generador de impulsos, proceda del siguiente modo:
1. Active el botón de opción "Activar" en el grupo "Generador de impulsos".
2. Introduzca el "Tiempo de muestreo del generador de impulsos", la "Duración mínima de
impulso/de pausa" y la "Duración del período".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 197
Utilizar funciones básicas PID
8.3 TCONT_CP

Los siguientes gráficos aclaran la relación entre el "Tiempo de muestreo del generador de
impulsos" (CYCLE_P), la "Duración mínima de impulso/de pausa" (P_B_TM) y la "Duración del
período" (PER_TM):
/PQ1









 W

438/6(

 W

&<&/(B3

3(5B70

3B%B70 3B%B70

3(5B70 3(5B70 3(5B70

Tiempo de muestreo del generador de impulsos


El tiempo de muestreo del generador de impulsos debe coincidir con el período del OB de
alarma cíclica invocante. La duración del impulso generado es simpre un múltiplo entero de
este valor. Para una resolución exacta y adecuada de la variable manipulada, debería darse la
siguiente relación:
CYCLE_P ≤ PER_TM/50

Regulación PID
198 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Duración mínima de impulso/de pausa


Mediante la duración mínima de impulso/de pausa se evitan los tiempos de conexión o
desconexión cortos en el elemento final de control. Un impulso menor que P_B_TM se
suprime.
Se recomienda los valores P_B_TM ≤ 0.1 × PER_TM.

Duración del período


La duración del período no debería exceder un 20 % del tiempo de integración del regulador
(TI) calculado:
PER_TM ≤ TI/5

Ejemplo de los efectos de los parámetros CYCLE_P, CYCLE y PER_TM:


Duración del período PER_TM = 10 s
Tiempo de muestreo del algoritmo PID CYCLE = 1 s
Tiempo de muestreo del generador de impulsos CYCLE_P = 100 ms.
Cada segundo se calcula una nueva variable manipulada, cada 100 ms se produce la
comparación de la variable manipulada con la longitud de impulso o de pausa emitida hasta
entonces.
• Si se emite un impulso, existen 2 posibilidades:
– La variable manipulada calculada es mayor que la longitud de impulso/PER_TM
existente hasta entonces. En tal caso, el impulso se prolonga.
– La variable manipulada calculada es menor o igual que la longitud de impulso/PER_TM
existente hasta entonces. En tal caso, no se emiten más señales de impulso.
• Si no se emite ningún impulso, también caben 2 posibilidades:
– El valor (100 % - variable manipulada calculada) es mayor que la longitud de pausa/
PER_TM existente hasta entonces. En tal caso, la pausa se prolonga.
– El valor (100 % - variable manipulada calculada) es menor o igual que la longitud de
pausa/ PER_TM existente hasta entonces. En tal caso se emite una señal de impulso.

Consulte
también
Funcionamiento de TCONT_CP (Página 416)
Funcionamiento del generador de impulsos (Página 425)

8.3.3 Poner en marcha TCONT_CP

[Link] Optimización de TCONT_CP

Posibilidades de utilización
La optimización del regulador puede utilizarse exclusivamente en los procesos de
refrigeración o en los procesos de calefacción del tipo de sistema I. Pero también para los
sistemas de orden superior del tipo II o III, puede utilizar el bloque.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 199
Utilizar funciones básicas PID
8.3 TCONT_CP

Los parámetros PI/PID se calculan y ajustan automáticamente. El diseño de regulador se ha


concebido con un comportamiento óptimo frente a perturbaciones. Los parámetros "de
efecto brusco" resultantes conducirían a sobreoscilaciones de entre el 10 % y el 40 % de la
amplitud del escalón, en caso de escalones de consigna.

Fases de la optimización del regulador


Durante la optimización del regulador se ejecutan fases individuales, que se indican en el
parámetro PHASE .

PHASE = 0
No se produce ninguna optimización. TCONT_CP funciona en modo automático o manual.
Mientras PHASE = 0, el sistema regulado debe cumplir con los requisitos para una
optimización.
Al final de la optimización, TCONT_CP vuelve a cambiar en PHASE = 0.

PHASE = 1
TCONT_CP se encuentra en disposición de optimización. PHASE = 1 sólo puede iniciarse, si se
cumplen las condiciones para una optimización.
Mientras PHASE = 1 se calculan los siguientes valores:
• Ruido del valor real NOISE_PV
• Subida inicial PVDT0
• Valor medio de la variable manipulada
• Tiempo de muestreo algoritmo PID CYCLE
• Tiempo de muestreo del generador de impulsos CYCLE_P

PHASE = 2
En la fase 2 se busca el punto de inversión del valor real con una variable manipulada
constante. El procedimiento impide que el punto de inversión se detecte demasiado pronto
debido al ruido de PV:
En el regulador de impulsos se toma el promedio de PV mediante N ciclos de impulsos y,
seguidamente, se pone a disposición de la parte del regulador. En la parte del regulador se
realiza otra promediación: al principio, dicha promediación está inactiva, es decir, sólo se
toma el promedio de 1 ciclo cada vez. En cuanto el ruido excede una medida determinada, se
duplica el número de ciclos.
Se determinan el período y la amplitud del ruido. La búsqueda del punto de inversión no se
cancela y se sale de la fase 2 hasta que el gradiente es siempre menor que el ascenso máximo
durante el período estimado. Sin embargo, TU y T_P_INF se calculan en el punto de inversión
real.

Regulación PID
200 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

De todas formas, la optimización no finaliza hasta que se cumplen las dos condiciones
siguientes:
1. El valor real está más alejado del punto de inversión que 2*NOISE_PV.
2. El valor real ha excedido el punto de inversión en un 20 %.

NOTA
En caso de excitación mediante escalón de consigna, la optimización finaliza a muy tardar
cuando el valor real ha pasado el 75 % del escalón de consigna (SP_INT-PV0) (véase
abajo).

PHASE = 3, 4, 5
Las fases 3, 4 y 5 duran cada una 1 ciclo.
En la fase 3, se guardan los parámetros PI/PID válidos antes de la optimización y se calculan
los parámetros del proceso.
En la fase 4, se calculan los nuevos parámetros PI/PID.
En la fase 5, se calcula la nueva variable manipulada y se fija según el sistema regulado.

PHASE = 7
El tipo de sistema se comprueba en la fase 7, ya que TCONT_CP siempre cambia al modo
automático tras la optmización. El modo automático se inicia con LMN = LMN0 +
0.75*TUN_DLMN como variable manipulada. La comprobación del tipo de sistema tiene lugar
en modo automático con los parámetros del regulador que se acaban de calcular y finaliza, a
lo sumo, 0,35*TA (tiempo de compensación) tras el punto de inversión. Si el orden de
proceso se diferencia considerablemente del valor estimado, vuelven a calcularse los
parámetros del regulador y aumenta en 1 el STATUS_D, de lo contrario, los parámetros del
regulador se mantienen sin cambios.
La operación de optimización está terminada y TCONT_CP vuelve a encontrarse en PHASE = 0.
El parámetro STATUS_H indica si la optimización ha finalizado correctamente.

Cancelación anticipada de la optimización


En las fases 1, 2 ó 3 se puede cancelar la optimización sin que se calculen parámetros nuevos,
restableciendo TUN_ON = FALSE. El regulador se inicia en modo automático con LMN = LMN0
+ TUN_DLMN. Si el regulador se encontraba en modo manual antes de la optimización, se
emitirá la variable manipulada manual antigua.
Si en la fase 4, 5 ó 7 se interrumpe la optimización por medio de TUN_ON = FALSE, se
conservan los parámetros del regulador ya calculados.

[Link] Condiciones para una optimización

Régimen transitorio
El proceso debe presentar un régimen transitorio estable, con retardo y asintótico.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 201
Utilizar funciones básicas PID
8.3 TCONT_CP

Después de un escalón de la magnitud manipulada, el valor real debe pasar a un estado


estacionario. Con ello se excluyen procesos que presentan un comportamiento oscilante
incluso sin regulación, así como sistemas regulados sin compensación (integrador en el
proceso regulado).

ADVERTENCIA
Pueden producirse daños materiales considerables, lesiones físicas graves o incluso la
muerte.
Durante una optimización, el parámetro MAN_ON no tiene efecto alguno. Por lo tanto, la
variable manipulada o el valor real pueden tomar valores no deseados, o también extremos.
La variable manipulada se especifica mediante optimización. Para interrumpir la
optimización, primero hay ajustar TUN_ON = FALSE. De este modo, MAN_ON vuelve a tener
efecto.

Consolidación de un estado inicial cuasi-estacionario (fase 0)


Si la magnitud regulada presentara oscilaciones de baja frecuencia, por ejemplo, debido a
unos parámetros del regulador incorrectos, habrá que controlar el regulador manualmente
antes de iniciar la optimización y esperar a que desaparezcan dichas oscilaciones. Como
alternativa, también se puede conmutar a un regulador PI de efecto "suave" (ganancia del
lazo pequeña, tiempo de integración largo).
Ahora deberá esperar hasta que se alcance el estado estacionario, es decir, hasta que el valor
real y la variable manipulada sean estacionarios. También está permitido un régimen
transitorio asintótico o un desplazamiento lento del valor real (estado cuasi-estacionario,
consulte la figura siguiente). La magnitud manipulada debe ser constante u oscilar alrededor
de un valor medio constante.

NOTA
Evite modificar la magnitud manipulada justo antes del inicio de la optimización. La magnitud
manipulada también se puede modificar de manera involuntaria mediante el establecimiento
de las condiciones de ensayo (p. ej., cerrar una puerta abierta). Si este fuera el caso, deberá
esperar como mínimo a que el valor real experimente de nuevo un régimen transitorio de
forma asintótica a un estado estacionario No obstante, conseguirá mejores parámetros de
regulación, si espera hasta que el proceso de régimen transitorio haya finalizado
completamente.

Regulación PID
202 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

En la siguiente figura, se muestra el régimen transitorio al estado estacionario:

39
9DORUUHDO
3+$6(  3+$6( 

(VWDGRFXDVLHVWDFLRQDULR (VPHMRUXQHVWDGR
(VWDGRQRHVWDFLRQDULR D¼QSHUPLWLGR HVWDFLRQDULRHVWDELOL]DGR
QRSHUPLWLGR

39

9DORUPDQLSXODGR
/01
,PSXOVRGHOYDORUPDQLSXODGR
/01

Linealidad y zona de trabajo


El proceso debe presentar un comportamiento lineal en la zona de trabajo. Un
comportamiento no lineal se produce, p. ej., con un cambio de un estado de agregación. La
optimización debe tener lugar en una parte lineal de la zona de trabajo.
Esto significa que, tanto para la optimización como para el modo de regulación normal, los
efectos no lineales dentro de dicha zona de trabajo deben ser despreciablemente pequeños.
Sin embargo, es posible optimizar de nuevo el proceso cambiando el punto de operación si la
optimización vuelve a ejecutarse en un entorno reducido del nuevo punto de operación y si
durante la optimización no se pasa por la no linealidad.
Si se conocen determinadas no linealidades estáticas (p. ej. características de válvulas), es
aconsejable compensarlas previamente con una línea poligonal para linealizar el
comportamiento del proceso.

Perturbaciones en procesos de temperatura


Las perturbaciones, como la transferencia de calor a zonas colindantes, no deben influir
excesivamente en el proceso global de temperatura. Así, p. ej., al optimizar las zonas de una
extrusionadora, todas las zonas deben calentarse simultáneamente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 203
Utilizar funciones básicas PID
8.3 TCONT_CP

[Link] Posibilidades de la optimización

Existen las siguientes posibilidades de optimización:


• Optimización inicial
• Optimización fina
• Optimización fina manual en modo de regulación

Optimización inicial
Durante esta optimización, el punto de operación del estado frío se pone en marcha a través
de un escalón de consigna.
Con TUN_ON = TRUE, cree la disposición de optimización. El regulador cambia de PHASE = 0 a
PHASE = 1.

3+$6(  3+$6(  3+$6( 3+$6(  3+$6( 




r& 63
/01
(VWDGRGH
SURFHVR
HQFDOLHQWH
39 SXQWRGH
WUDEDMR
781B'/01

3XQWRGH /01
LQYHUVLµQ
(VWDGRGH
SURFHVRHQ
IU¯R
W
781B21

La variable manipulada de la optimización (LMN0 + TUN_DLMN) se aplica mediante


modificación de la consigna (transición fase 1 -> 2). La consigna no es efectiva hasta que se
alcanza el punto de inversión (sólo entonces se conmutará al modo Automático).
El delta de la excitación manipulada (TUN_DLMN) se define de acuerdo con la modificación
admisible del valor real bajo responsabilidad propia. El signo de TUN_DLMN debe estar en
concordancia con la modificación prevista del valor real (observar el sentido de regulación).
El escalón de consigna y TUN_DLMN deben estar coordinados. Un TUN_DLMN demasiado
grande conlleva el peligro de que el punto de inversión no esté dentro del 75 % del escalón
de consigna.
Sin embargo, TUN_DLMN debe ser lo suficientemente grande como para que el valor real
alcance como mínimo el 22 % del escalón de consigna. En caso contrario, el procedimiento
permanece en modo Optimización (fase 2).

Regulación PID
204 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Solución: reduzca la consigna durante la búsqueda del punto de inversión.

NOTA
En procesos con un fuerte retardo, es aconsejable definir para la optimización una consigna
de destino un poco más baja que el punto de operación deseado y observar con detenimiento
los bits de estado y el PV (peligro de sobreoscilaciones).
Optimización únicamente en el rango lineal:
Determinados sistemas regulados (p. ej. calderas de fusión de zinc o magnesio) pasan por un
rango no lineal poco antes del punto de operación (modificación del estado de agregación).
Si se selecciona con habilidad el escalón de consigna es posible limitar la optimización al
rango lineal. Si el valor real ha pasado el 75 % del escalón de consigna (SP_INT-PV0) se
finaliza la optimización.
Paralelamente, TUN_DLMN debería reducirse hasta que el punto de inversión se encuentre
con seguridad antes de alcanzar el 75 % del escalón de consigna.

Optimización fina
Durante esta optimización, el proceso se excita, en caso de una consigna constante, mediante
un salto de la variable manipulada.
3+$6(  3+$6(  3+$6( 3+$6(  3+$6( 
r& 
/01

39

3XQWRGH 9DORUUHDOGHOSXQWRGHWUDEDMR
LQYHUVLµQ

63

/01 9DORUPDQLSXODGRGHOSXQWRGHWUDEDMR
781B'/01

VHGHVDFWLYD W
781B21 DXWRP£WLFDPHQWH

W
781B67

La variable manipulada de la optimización (LMN0 + TUN_DLMN) se aplica mediante


activación del bit de inicio TUN_ST (transición fase 1 -> 2). Si se modifica la consigna, la
nueva consigna no es efectiva hasta que no se alcanza el punto de inversión (sólo entonces
se conmuta al modo Automático).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 205
Utilizar funciones básicas PID
8.3 TCONT_CP

El delta de la excitación manipulada (TUN_DLMN) se define de acuerdo con la modificación


admisible del valor real bajo responsabilidad propia. El signo de TUN_DLMN debe estar en
concordancia con la modificación prevista del valor real (observar el sentido de regulación).

ATENCIóN
Si la excitación se realiza mediante TUN_ST no se produce ninguna desconexión de
seguridad al 75 %. La optimización finaliza cuando se alcanza el punto de inversión. Sin
embargo, en procesos con ruidos es posible que se sobrepase claramente el punto de
inversión.

Optimización fina manual en modo de regulación


Para conseguir un comportamiento de consigna sin sobreoscilaciones, pueden tomarse las
medidas siguientes:
• Adaptar la zona de regulación
• Optimizar el comportamiento de referencia
• Amortiguar los parámetros de regulación
• Modificar los parámetros de regulación

[Link] Resultado de la optimización

La cifra de la izquierda de STATUS_H muestra el estado de optimización

STATUS_H Resultado
0 Se han encontrado parámetros del regulador predeterminados, ninguno o ningu­
no nuevo.
10000 Se han encontrado parámetros del regulador adecuados
2xxxx Se han encontrado parámetros del regulador superiores a los valores estimados;
compruebe el comportamiento de regulación, lea el aviso de diagnóstico
STATUS_H y repita la optimización del regulador.
3xxxx Se han producido errores de operador; lea el aviso de diagnóstico STATUS_H y re­
pita la optimización del regulador.
En la fase 1 ya se verificaron los tiempos de muestreo CYCLE y CYCLE_P.
Los siguientes parámetros de regulación se actualizan en TCONT_CP:
• P (ganancia proporcional GAIN)
• I (tiempo de integración TI)
• D (tiempo de acción derivativa TD)
• Ponderación de la acción P PFAC_SP
• Coeficiente DT1 (D_F)
• Zona de regulación on/off CONZ_ON
• Ancho de la zona de regulación CON_ZONE
La zona de regulación sólo se activa si el tipo de sistema es adecuado (I y II) y si el regulador
PID está activado (CONZ_ON = TRUE).

Regulación PID
206 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

En función de PID_ON se regula con el regulador PI o PID. Los parámetros antiguos del
regulador se guardan y pueden volver a activarse mediante UNDO_PAR. Además, se guarda
un juego de parámetros PI y PID en las estructuras PI_CON y PID_CON. Mediante LOAD_PID y
la activación correspondiente de PID_ON, también es posible cambiar más adelante entre los
parámetros optimizados PI o PID.

[Link] Optimización paralela de canales del regulador

Zonas colindantes (fuerte acoplamiento térmico)


Si hay dos o más reguladores que regulan la temperatura, p. ej. en una placa (es decir, dos
calefacciones y dos valores reales medidos con un fuerte acoplamiento térmico), proceda del
siguiente modo:
1. Combine lógicamente con la operación O las dos salidas QTUN_RUN.
2. Interconecte cada una de las dos entradas TUN_KEEP con una de las salidas del elemento
O.
3. Inicie los dos reguladores predefiniendo simultáneamente un escalón de consigna o
activando simultáneamente TUN_ST.
La figura siguiente representa la optimización paralela de canales del regulador:

7&217B&3'%B7&217B&3

781B.((3
4781B581

ุ
7&217B&3'%B7&217B&3

781B.((3
4781B581

Ventaja:
Ambos reguladores emiten LMN0 + TUN_DLMN hasta que los dos han salido de la fase 2. De
este modo se impide que el regulador que finaliza primero la optimización falsifique el
resultado de optimización del otro regulador al modificar su magnitud manipulada.

ATENCIóN
Cuando se alcanza el 75 % del escalón de consigna se sale de la fase 2, con lo que se
desactiva la salida QTUN_RUN. Sin embargo, el modo Automático no empezará hasta que
TUN_KEEP sea 0.

Zonas colindantes (acoplamiento térmico débil)


Por norma general, debería optimizarse del mismo modo que se regula posteriormente. Si en
modo productivo las zonas se desplazan conjuntamente en paralelo, de modo que las
diferencias de temperatura entre las distintas zonas se mantienen iguales, durante la

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 207
Utilizar funciones básicas PID
8.3 TCONT_CP

optimización debería aumentarse el nivel de temperatura de las zonas colindantes en


correspondencia.
Las diferencias de temperatura al principio del ensayo no son relevantes, porque se
compensan mediante una calefacción inicial adecuada (→ subida inicial = 0).

[Link] Síntomas de error y soluciones posibles

Interceptar errores de operador

Error de operador STAUTS y medida Comentario


Activación simultánea de TUN_ON Transición a la fase 1 pero sin La modificación de la consigna se
y escalón de consigna o TUN_ST inicio de optimización. anula. De este modo se impide que
• SP_INT = SPantiguo o el regulador se regule a la nueva
• TUN_ST = FALSE consigna y abandone innecesaria­
mente el punto de operación esta­
cionario.
TUN_DLMN < 5 % efectivo (fin de STATUS_H = 30002 Cancelación de la optimización.
la fase 1) • Transición a la fase 0 La modificación de la consigna se
• TUN_ON = FALSE anula. De este modo se impide que
• SP = SPantiguo el regulador se regule a la nueva
consigna y abandone innecesaria­
mente el punto de operación esta­
cionario.

Punto de inversión no alcanzado (sólo en caso de excitación mediante escalón de consigna)


La optimización finaliza como muy tarde cuando el valor real ha pasado el 75 % del escalón
de consigna (SP_INT-PV0). Esto se notifica mediante "Punto de inversión no alcanzado" en
STATUS_H (2xx2x).
Siempre rige la consigna que está ajustada en cada momento. Así pues, si se reduce la
consigna, es posible que la optimización finalice anticipadamente.
En casos de procesos de temperatura típicos, suele bastar con cancelar la optimización al 75
% del escalón de consigna para impedir sobreoscilaciones. Sin embargo, hay que tomar
precauciones, especialmente en procesos con un retardo considerable(TU/TA > 0.1, tipo III). Si
la excitación manipulada es demasiado fuerte en comparación con el escalón de consigna, el
valor real tendrá muchas sobreoscilaciones (hasta el factor 3).
Si, en procesos de orden superior, el punto de inversión sigue muy alejado una vez alcanzado
el 75 % del escalón de consigna, hay una sobreoscilación clara. Además, los parámetros del
regulados son demasiado rigurosos. En este caso, atenúe los parámetros del regulador o
repita el ensayo.

Regulación PID
208 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

La figura siguiente representa la sobreoscilación del valor real en caso de excitación


demasiado fuerte (tipo de sistema III):
3+$6(  3+$6(  3+$6(  3+$6(  3+$6( 
r& /01
/01

39TXHUHVXOWDU¯DVL
/01781B'/01 HO/01QRKD
FDPELDGR
781B'/01

3XQWRGHLQYHUVLµQ

(VWDGRGHSURFHVR
39 HQFDOLHQWH SXQWRGH
WUDEDMR
63
(VWDGRGH
SURFHVRHQIU¯R
63

781B21

En procesos de temperatura típicos, una cancelación justo ante de alcanzar el punto de


inversión no es crítica respecto de los parámetros del regulador.
Si repite el ensayo, reduzca TUN_DLMN o aumente el escalón de consigna.
Principio: la variable manipulada de optimización debe concordar con el escalón de consigna.

Error de estimación con tiempo de retardo u orden


El tiempo de retardo (STATUS_H = 2x1xx o 2x3xx) o el orden (STATUS_H = 21xxx o 22xxx) no
ha podido registrarse correctamente. Se sigue trabajando con un valor estimado que puede
provocar parámetros no óptimos del regulador.
Repita la optimización y asegúrese de que no se produzcan perturbaciones en el valor real.

NOTA
El caso especial de un proceso PT1 puro también se señala con STATUS_H = 2x1xx (TU <=
3*CYCLE). En este caso no es necesario repetir el ensayo. Atenúe los parámetros del
regulador si la regulación oscila.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 209
Utilizar funciones básicas PID
8.3 TCONT_CP

Calidad de las señales medidas (ruido medido, perturbaciones de baja frecuencia)


El resultado de la optimización puede verse entorpecido por ruidos medidos o perturbaciones
de baja frecuencia. En tal caso, considere lo siguiente:
• En caso de ruidos medidos, seleccione una frecuencia de muestreo más bien alta que baja.
Dentro de un período de ruido, el valor real debe muestrearse como mínimo dos veces. En
el modo Impulso sirve de ayuda la filtración integrada del valor medio. De todas formas,
requiere que el valor PV se transfiera a la instrucción en el ciclo de impulso rápido. La
medida de ruido no debería exceder un 5 % del cambio de señal útil.
• Las perturbaciones de alta frecuencia ya no pueden eliminarse por filtración mediante
TCONT_CP. Dichas perturbaciones ya deberían haberse filtrado en el sensor de medición
para impedir el efecto aliasing.
La figura siguiente representa el efecto aliasing con un tiempo de muestreo demasiado
grande:

W
• En caso de perturbaciones de baja frecuencia es relativamente fácil garantizar una tasa de
muestreo lo suficientemente elevada. Por otro lado, el TCONT_CP debe generar una señal
medida homogénea a causa de un intervalo elevado de la filtración de valores medios.
Una filtración de valores medios debe abarcar como mínimo dos períodos de ruido. De
esta forma, dentro del bloque se generan rápidamente tiempos de muestreo más grandes,
de modo que se merma la precisión de la optimización. Una precisión suficiente se
garantiza con un mínimo de 40 períodos de ruido hasta el punto de inversión.
Medidas posibles al repetir el ensayo:
aumentar TUN_DLMN.

Sobreoscilación
En las situaciones siguientes pueden producirse sobreoscilaciones:

Situación Causa Solución


Fin de la optimi­ • Excitación mediante un cambio dema­ • Aumentar el escalón de consigna o
zación siado brusco de la variable manipulada reducir el escalón de la variable mani­
en comparación con el escalón de con­ pulada
signa (véase arriba).
• Regulador PI activado mediante PID_ON • Si el proceso admite un regulador
= FALSE. PID, inicie la optimización con
PID_ON = TRUE.
Optimización en Primero se han determinado parámetros -
fase 7 más suaves para el regulador (tipo de siste­
ma III) que pueden provocar sobreoscila­
ciones en la fase 7.

Regulación PID
210 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

Situación Causa Solución


Modo de regula­ Regulador PI y con PFAC_SP = 1.0 para el ti­ Si el proceso admite un regulador PID,
ción po de sistema I. inicie la optimización con PID_ON =
TRUE.

[Link] Realizar una optimización inicial

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Procedimiento
Para determinar los parámetros PID óptimos en la primera puesta en servicio, proceda del
siguiente modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. En la lista "Modo" seleccione la entrada "Optimización inicial".
TCONT_CP está preparado para la optimización.
3. En el campo "Escalón de la variable manipulada" indique el valor en el que debe
aumentarse la variable manipulada.
4. En el campo "Consigna", indique una consigna. El escalón de la variable manipulada se
hace efectivo sólo con una nueva consigna.
5. Haga clic en el símbolo "Iniciar optimización".
Se inicia la optimización inicial. Se muestra el estado de la optimización.

[Link] Realizar optimización fina

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Procedimiento
Para determinar los parámetros PID óptimos en el punto de operación, proceda del siguiente
modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. En la lista "Modo" seleccione la entrada "Optimización fina".
TCONT_CP está disponible para la optimización.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 211
Utilizar funciones básicas PID
8.3 TCONT_CP

3. En el campo "Escalón de la variable manipulada" indique el valor en el que debe


aumentarse la variable manipulada.
4. Haga clic en el símbolo "Iniciar optimización".
Se inicia la optimización fina. Se muestra el estado de la optimización.

[Link] Cancelación de la optimización inicial o fina

Para cerrar una optimización inicial o fina, haga clic en el símbolo "Detener optimización".
Si los parámetros PID no se han calculado y almacenado todavía, TCONT_CP se inicia en el
modo automático con LMN = LMN0 + TUN_DLMN. Si el regulador se encontraba en modo
manual antes de la optimización, se emitirá la variable manipulada manual antigua.
Si los parámetros PID calculados ya están almacenados, TCONT_CP se inicia en el modo
automático y funciona entonces con los parámetros PID calculados hasta la fecha.

[Link] Optimización fina manual en modo de regulación

Para conseguir un comportamiento de consigna sin sobreoscilaciones pueden tomarse las


medidas siguientes:

Adaptar la zona de regulación


En la optimización se determina una zona de regulación CON_ZONE del TCONT_CP y se activa
con un tipo de sistema adecuado (I y II) y un regulador PID (CONZ_ON = TRUE). En el modo de
regulación es posible modificar la zona de regulación o desactivarla completamente (con
CONZ_ON = FALSE).

NOTA
Si se activa la zona de regulación en procesos de orden superior (tipo III), no suele suponer
ninguna ventaja, porque en este caso la zona de regulación es mayor que el rango de
regulación asequible con el 100 % de la magnitud manipulada. Tampoco es ventajoso activar
la zona de regulación para regulador PI.
Antes de activar a mano la zona de regulación, asegúrese de no ajustar un ancho de zona de
regulación demasiado pequeño. Si el ancho de la zona de regulación ajustado fuera
insuficiente, se producirán oscilaciones en las curvas de la magnitud manipulada y del valor
real.

Atenuar continuamente la respuesta de regulación con PFAC_SP


La respuesta de regulación se atenúa con el parámetro PFAC_SP. Dicho parámetro determina
qué proporción de la acción P será efectiva en casos de escalones de consigna.

Regulación PID
212 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.3 TCONT_CP

PFAC_SP se predetermina a 0.8 mediante la optimización, independientemente del tipo de


sistema; seguidamente puede modificarse el valor. Para limitar las sobreoscilaciones a un 2 %
aproximadamente en caso de escalones de consigna (si los demás parámetros del regulador
son correctos), son suficientes los valores siguientes para PFAC_SP:

Tipo de sistema I Tipo de sistema II Tipo de sistema III


Proceso de temperatura típi­ Rango de transición Proceso de temperatura de orden supe­
co rior
PI 0.8 0.82 0.8
PID 0.6 0.75 0.96
Ajuste el factor predeterminado (0.8), especialmente en los casos siguientes:
• Tipo de sistema I con PID (0.8 -> 0.6): los escalones de consigna dentro de la zona de
regulación provocan todavía un 18 % de sobreoscilaciones con PFAC_SP = 0.8.
• Tipo de sistema III con PID (0.8 -> 0.96): los escalones de consigna con PFAC_SP = 0.8 se
amortiguan demasiado. Se regala un tiempo de ajuste claro.

Amortiguar los parámetros de regulación


Si en el lazo de regulación cerrado se producen oscilaciones o si hay sobreoscilaciones
después de escalones de consigna, es posible girar hacia atrás la ganancia del regulador GAIN
(p. ej. al 80 % del valor original) y aumentar el tiempo de acción integral TI (p. ej. al 150 % del
valor original). Si la magnitud manipulada analógica del regulador continuo se convierte en
señales manipuladas binarias con un generador de impulsos, es posible que aparezcan
pequeñas oscilaciones continuas debido a los efectos de cuantificación. Dichas oscilaciones se
eliminan aumentando la zona muerta del regulador DEADB_W.

Modificar los parámetros de regulación


Para modificar los parámetros del regulador, proceda del siguiente modo:
1. Guarde los parámetros actuales con SAVE_PAR.
2. Modifique los parámetros.
3. Pruebe el comportamiento de regulación.
Si los parámetros nuevos fueran peores que los antiguos, vuelva a ajustar los parámetros
antiguos con UNDO_PAR.

[Link] Realizar una optimización fina manual

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 213
Utilizar funciones básicas PID
8.4 TCONT_S

Procedimiento
Para determinar manualmente los parámetros PID óptimos, proceda del siguiente modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. En la lista "Modo" seleccione la entrada "Manual".
3. Introduzca los nuevos parámetros PID.
4. Haga clic en el grupo "Optimización" en el símbolo "Enviar parámetros a la CPU".
5. En el grupo "Valores actuales", active la casilla de verificación "Especificar consigna" .
6. Introduzca una nueva consigna y haga clic en el grupo "Valores actuales", en el símbolo .
7. En caso necesario, desactive la casilla de verificación "Modo manual".
El regulador trabaja con los nuevos parámetros PID y regula según la nueva consigna.
8. Compruebe la calidad de los parámetros PID mediante los recorridos de la curva.
9. Repita los pasos del 3 hasta el 8, hasta que esté satisfecho/a con el resultado de la
regulación.

8.4 TCONT_S

8.4.1 Objeto tecnológico TCONT_S


El objeto tecnológico TCONT_S pone a disposición un regulador paso a paso para elementos
finales de control con comportamiento integrador y sirve para regular los procesos técnicos
de temperatura con señales binarias de salida de variable manipulada. El objeto tecnológico
corresponde al bloque de datos de instancia de la instrucción TCONT_S. El modo de trabajo se
basa en el algoritmo de regulación PI del regulador de muestreo. El regulador paso a paso
opera sin realimentación de posición. Es posible elegir entre el modo manual y el automático.

S7-1500
Todos los parámetros y variables del objeto tecnológico son remanentes y, al efectuarse la
carga en el dispositivo, solo pueden modificarse si se carga TCONT_S por completo.
Consulte
también
Vista general de los reguladores de software (Página 40)
Agregar objetos tecnológicos (Página 42)
Configurar objetos tecnológicos (Página 43)
Cargar objetos tecnológicos en el dispositivo (Página 45)
TCONT_S (Página 438)

Regulación PID
214 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.4 TCONT_S

8.4.2 Configurar el error de regulación de TCONT_S

Utilizar el valor real de periferia


Para utilizar el parámetro de entrada PV_PER, proceda del siguiente modo:
1. Seleccione la entrada "Periferia" en la lista "Origen".
2. Seleccione el "Tipo de sensor".
Según el tipo de sensor, el valor real se normaliza según diferentes fórmulas.
– Termopares
estándar; PT100/NI100
PV = 0.1 × PV_PER × PV_FAC + PV_OFFS
– Climatiz.;
PT100/NI100
PV = 0.01 × PV_PER × PV_FAC + PV_OFFS
– Intensidad/tensión
PV = 100/27648 × PV_PER × PV_FAC + PV_OFFS
3. Introduzca factor y offset para la normalización del valor real de periferia.

Utilizar el valor real interno


Para utilizar el parámetro de entrada PV_IN, proceda del siguiente modo:
1. Seleccione la entrada "Interno" en la lista "Origen".

Error de regulación
Ajuste un ancho de zona muerta según los siguientes requisitos:
• La señal del valor real tiene ruido.
• La ganancia del regulador es alta.
• La acción D está activada.
La componente de ruido del valor real provoca, en este caso, fuertes variaciones de la variable
manipulada. La zona muerta suprime la componente de ruido cuando el estado del regulador
es estacionario. El ancho de zona muerta indica el tamaño de la zona muerta. Con un ancho
de zona muerta de 0.0, la zona muerta se encuentra desactivada.
Consulte
también
Funcionamiento de TCONT_S (Página 439)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 215
Utilizar funciones básicas PID
8.4 TCONT_S

8.4.3 Configurar el algoritmo de regulación TCONT_S

General
1. Introduzca el "Tiempo de muestreo del algoritmo PID".
El tiempo de muestreo del regulador no debería exceder un 10 % del tiempo de
integración del regulador (TI) calculado.
2. Si la estructura de regulador contiene una acción P, introduzca la "Ganancia proporcional".
Una ganancia proporcional negativa invierte el sentido de regulación.

Acción P
En caso de modificaciones de la consigna, la acción P puede provocar sobreoscilaciones.
Mediante la ponderación de la acción P se puede elegir con qué intensidad debe actuar la
acción P al cambiar la consigna. La atenuación de la acción P se logra mediante una
compensación en la acción I.
1. Para atenuar la acción P en caso de modificaciones de la consigna, introduzca la
"Ponderación de la acción P".
– 1.0: Acción P completamente efectiva en caso de modificación de la consigna
– 0.0: Acción P inefectiva en caso de modificación de la consigna

Acción I
1. Si la estructura de regulador contiene una acción I, introduzca el "Tiempo de integración".
Con un tiempo de integración de 0.0, la acción I se encuentra desactivada.

Consulte
también
Funcionamiento de TCONT_S (Página 439)

8.4.4 Configurar la variable manipulada TCONT_S

Generador de impulsos
1. Introduzca la duración mínima de impulso y la duración mínima de pausa.
Los valores deben ser mayores o iguales al tiempo de ciclo en el parámetro de entrada
CYCLE. De esta manera, se reduce la frecuencia de maniobra.
2. Introduzca el tiempo de posicionamiento del motor.
El valor debe ser mayor o igual al tiempo de ciclo en el parámetro de entrada CYCLE.
Consulte
también
Funcionamiento de TCONT_S (Página 439)

Regulación PID
216 Manual de funciones, 11/2022, A5E35300231-AF
Utilizar funciones básicas PID
8.4 TCONT_S

8.4.5 Poner en marcha TCONT_S

Requisitos
• La instrucción y el objeto tecnológico están cargados en la CPU.

Procedimiento
Para determinar manualmente los parámetros PID óptimos, proceda del siguiente modo:
1. Haga clic en el símbolo "Start".
Si aún no existe ninguna conexión online, ésta se crea. Se graban los valores actuales de
consigna, valor real y variable manipulada.
2. Introduzca los parámetros PID nuevos en los campos "P", "I", "D" y ponderación de la acción
P.
3. Haga clic en el grupo "Optimización" en el símbolo "Enviar parámetros a la CPU".
4. En el grupo "Valores actuales", active la casilla de verificación "Especificar consigna" .
5. Introduzca una nueva consigna y haga clic en el grupo "Valores actuales", en el símbolo .
6. En caso necesario, desactive la casilla de verificación "Modo manual".
El regulador trabaja con los nuevos parámetros y regula según la nueva consigna.
7. Compruebe la calidad de los parámetros PID mediante los recorridos de la curva.
8. Repita los pasos del 2 hasta el 6, hasta que esté satisfecho/a con el resultado de la
regulación.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 217
Funciones auxiliares 9
9.1 Polyline

Polyline
La instrucción Polyline ofrece una función con la característica de la línea poligonal con cuyos
nodos puede linealizarse, p. ej., el comportamiento de sensores no lineales.
La instrucción Polyline puede utilizarse con la CPU S7-1500 a partir de la versión de firmware
2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción de Polyline (Página 448)
Funcionamiento de Polyline (Página 451)
Parámetros de entrada de Polyline (Página 454)
Parámetros de salida de Polyline (Página 455)
Variables estáticas de Polyline (Página 455)
Parámetro ErrorBits (Página 456)

9.2 SplitRange

SplitRange
La instrucción SplitRange divide el rango de valores de salida del regulador PID en varios
subrangos. Dichos subrangos permiten regular un proceso influido por varios actuadores.
La instrucción SplitRange puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción de SplitRange (Página 459)
Parámetros de entrada SplitRange (Página 462)
Variables estáticas SplitRange (Página 463)
Parámetros de salida SplitRange (Página 462)
Parámetro ErrorBits (Página 463)

Regulación PID
218 Manual de funciones, 11/2022, A5E35300231-AF
Funciones auxiliares
9.4 RampSoak

9.3 RampFunction

RampFunction
La instrucción RampFunction limita la velocidad de cambio de una señal. Un salto de señal en
la entrada se emite como función de rampa del valor de salida, con el fin de conseguir una
respuesta de regulación más suave sin influir en la respuesta a perturbaciones, por ejemplo.
La instrucción RampFunction puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción de RampFunction (Página 465)
Funcionamiento de la RampFunction (Página 470)
Parámetros de entrada RampFunction (Página 473)
Parámetros de salida RampFunction (Página 474)
Variables estáticas RampFunction (Página 474)
Parámetro ErrorBits (Página 475)

9.4 RampSoak

RampSoak
Con la instrucción se genera un valor de salida que sigue un perfil configurable en función del
tiempo. Cada punto de este perfil tiene un valor de destino y un valor de tiempo. Cuando se
ejecuta el perfil, se alcanza el valor de destino del punto actual dentro del valor de tiempo. La
instrucción puede utilizarse, por ejemplo, para preparar un perfil de consigna para la
regulación de un proceso de temperatura.
La instrucción RampSoak puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción de RampSoak (Página 479)
Funcionamiento de RampSoak (Página 481)
Parámetros de entrada de RampSoak (Página 494)
Parámetros de salida de RampSoak (Página 495)
Parámetros de entrada/salida de RampSoak (Página 495)
Variables estáticas de RampSoak (Página 496)
Parámetro ErrorBits (Página 497)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 219
Funciones auxiliares
9.6 Filter_PT2

9.5 Filter_PT1

Filter_PT1
La instrucción Filter_PT1 es un elemento de transferencia proporcional con un retardo de
primer orden. Filter_PT1 se puede utilizar como filtro paso bajo, elemento de retardo o
bloque de simulación de proceso.
La instrucción Filter_PT1 puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción Filter_PT1 (Página 501)
Modo de operación Filter_PT1 (Página 508)
Parámetros de entrada Filter_PT1 (Página 509)
Parámetros de salida Filter_PT1 (Página 509)
Variables estáticas Filter_PT1 (Página 510)
Parámetro ErrorBits (Página 510)

9.6 Filter_PT2

Filter_PT2
La instrucción Filter_PT2 es un elemento de transferencia proporcional con un retardo de
segundo orden. Filter_PT2 se puede utilizar como filtro paso bajo, elemento de retardo o
bloque de simulación de proceso.
La instrucción Filter_PT2 puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción Filter_PT2 (Página 514)
Modo de operación Filter_PT2 (Página 521)
Parámetros de entrada Filter_PT2 (Página 522)
Parámetros de salida Filter_PT2 (Página 522)
Variables estáticas Filter_PT2 (Página 523)
Parámetro ErrorBits (Página 523)

Regulación PID
220 Manual de funciones, 11/2022, A5E35300231-AF
Funciones auxiliares
9.7 Filter_DT1

9.7 Filter_DT1

Filter_DT1
La instrucción Filter_DT1 es un elemento diferenciador con un retardo de primer orden.
Filter_DT1 se puede utilizar como filtro paso alto, elemento diferenciador o control
anticipativo.
La instrucción Filter_DT1 puede utilizarse con la CPU S7-1500 a partir de la versión de
firmware 2.0 y con la CPU S7-1200 a partir de la versión de firmware 4.2.

Más información
Descripción Filter_DT1 (Página 527)
Modo de operación Filter_DT1 (Página 533)
Parámetros de entrada Filter_DT1 (Página 535)
Parámetros de salida Filter_DT1 (Página 535)
Variables estáticas Filter_DT2 (Página 536)
Parámetro ErrorBits (Página 536)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 221
Instrucciones 10
10.1 PID_Compact

10.1.1 Novedades PID_Compact

PID_Compact V2.4
• Inicialización de la acción integral
Ahora PID_Compact inicializa la acción integral correctamente si se utiliza
OverwriteInitialOutputValue con sentido de regulación invertido.
Si hasta ahora ha utilizado OverwriteInitialOutputValue con sentido de regulación
invertido, tenga en cuenta que PID_Compact V2.4 modifica el signo del valor de salida.

PID_Compact V2.3
• Reacción del valor de salida al cambiar del modo de operación "Inactivo" al "Modo
automático"
La nueva opción IntegralResetMode = 4 se ha agregado y se ha definido como ajuste
predeterminado. Con IntegralResetMode = 4, al cambiar del modo de operación "Inactivo"
al "Modo automático" la acción I se preasigna automáticamente de forma que un error de
regulación provoque un salto del valor de salida con idéntico signo.
• Inicialización de la acción integral en el modo automático
La acción integral se puede inicializar en el modo automático con ayuda de las variables
OverwriteInitialOutputValue y [Link]. Esto simplifica el uso de PID_Compact para
regulaciones de transición.

PID_Compact V2.2
• Uso con S7-1200
A partir de PID_Compact V2.2, la instrucción también se puede utilizar con funcionalidad
V2 en una S7-1200 a partir de la versión de firmware 4.0.

Regulación PID
222 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

PID_Compact V2.0
• Comportamiento en caso de error
Se ha modificado a fondo el comportamiento en caso de error. PID_Compact tiene un
comportamiento más tolerante a errores en el ajuste predeterminado. Este
comportamiento se ajusta al copiar PID_Compact V1.X de una CPU S7-1200 a una CPU
S7-1500.

ATENCIóN
Su instalación puede sufrir daños.
Si utiliza el ajuste predeterminado, PID_Compact se mantiene en modo automático al
rebasar los límites del valor real. De este modo, su instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

El parámetro Error indica si hay algún un error presente en ese momento. Si no persiste el
error, se indica Error = FALSE. El parámetro ErrorBits indica qué errores han ocurrido. Con
ErrorAck se acusan los errores y advertencias sin necesidad de reiniciar el regulador ni
borrar la acción I. Al cambiar el modo de operación, ya no se borran los errores que no
estén pendientes.
El comportamiento en caso de error se configura con SetSubstituteOutput y
ActivateRecoverMode.
• Valor de salida sustitutivo
Puede configurarse un valor de salida sustitutivo que se emitirá en caso de error.
• Cambio de modos de operación
El modo de operación se especifica en el parámetro de entrada/salida Mode y se activa
mediante un flanco ascendente en ModeActivate. Se ha suprimido la variable sRet.i_Mode.
• Capacidad multiinstancia
Puede llamar PID_Compact como DB multiinstancia.
• Comportamiento en arranque
Con RunModeByStartup = TRUE, el modo de operación especificado en Mode se inicia
también en caso de flanco descendente en Reset y en caso de arranque en frío de la CPU.
• Comportamiento ENO
ENO se ajusta en función del modo de operación.
Si State = 0, entonces ENO = FALSE.
Si State ≠ 0, entonces ENO = TRUE.
• Especificación de consigna durante la optimización
La fluctuación admisible de la consigna durante la optimización se configura en la variable
CancelTuningLevel.
• Rango de valores para límites de valor de salida
Ahora ya no es necesario que el valor 0.0 se encuentre dentro de los límites de valor de
salida.
• Preasignar acción I
Con las variables IntegralResetMode y OverwriteInitialOutputValue se preasigna la acción I
al cambiar del modo de operación "Inactivo" a "Modo automático".
• Control anticipativo
El parámetro Disturbance permite activar el control anticipativo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 223
Instrucciones
10.1 PID_Compact

• Ajuste predeterminado de los parámetros PID


Se han modificado los siguientes ajustes predeterminados:
– Ponderación de la acción P (PWeighting), de 0.0 a 1.0
– Ponderación de la acción D (DWeighting), de 0.0 a 1.0
– Coeficiente para el retardo de la acción derivada (TdFiltRatio), de 0.0 a 0.2
• Cambio de nombre de las variables
Se han cambiado los nombres de las variables estáticas para hacerlos más compatibles con
PID_3Step.

PID_Compact V1.2
• Modo manual en el arranque de la CPU
Si al arrancar la CPU ManualEnable = TRUE, PID_Compact arranca en modo manual. No es
necesario un flanco ascendente en ManualEnable.
• Optimización inicial
Si la CPU se apaga durante la optimización inicial, la optimización inicial arranca de nuevo
al conectar la CPU.

PID_Compact V1.1
• Modo manual en el arranque de la CPU
Al arrancar la CPU, PID_Compact únicamente pasa al modo manual si se detecta un flanco
ascendente en ManualEnable. Si no se detecta un flanco ascendente, PID_Compact
arranca en el último modo de operación en el que ManualEnable era FALSE.
• Comportamiento en Reset
Un flanco ascendente en Reset hace que se desactiven los errores y las advertencias y que
se borre la acción I. Si se detecta un flanco descendente en Reset, se cambia al último
modo de operación activo.
• Ajuste predeterminado del límite superior de valor real
El ajuste predeterminado r_Pv_Hlm se ha cambiado a 120.0.
• Vigilancia del tiempo de muestreo
– Ya no se señalizan errores cuando el tiempo de muestreo actual ≥ 1,5 x valor medio
actual o el tiempo de muestreo actual ≤ 0,5 x valor medio actual. En el modo
automático se permite una desviación mayor del tiempo de muestreo.
– PID_Compact es compatible con FW a partir de V2.0.
• Acceso a variables
Las siguientes variables pueden utilizarse ahora en el programa de usuario.
– i_Event_SUT
– i_Event_TIR
– r_Ctrl_Ioutv
• Corrección de errores
PID_Compact aplica ahora impulsos correctos si el tiempo de conexión más pequeño es
distinto del tiempo de desconexión más pequeño.

Regulación PID
224 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

10.1.2 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de PID_Compact.

CPU FW PID_Compact
S7-1200 A partir de V4.2 V2.3
V2.2
V1.2
V4.0 a V4.1 V2.2
V1.2
V3.x V1.2
V1.1
V2.x V1.2
V1.1
V1.x V1.0
S7-1500 A partir de V3.0 V2.4
V2.5 a V2.9 V2.4
V2.3
V2.2
V2.1
V2.0
V2.0 y V2.1 V2.3
V2.2
V2.1
V2.0
V1.5 a V1.8 V2.2
V2.1
V2.0
V1.1 V2.1
V2.0
V1.0 V2.0

10.1.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_Compact V2.x

Tiempo de ejecución de CPU


Tiempos de ejecución de CPU típicos del objeto tecnológico PID_Compact a partir de la
versión V2.0 en función del tipo de CPU y el modo de operación para CPU estándar, F, T y TF.

CPU FW Tiempo ejecución CPU típ. modo Tiempo ejecución CPU típ.
automático optimización inicial y
optimización fina
CPU 1211 ≥ V4.0 190 µs 270 µs
CPU 1212
CPU 1214
CPU 1215

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 225
Instrucciones
10.1 PID_Compact

CPU 1217 ≥ V4.0 190 µs 270 µs


CPU 1510SP ≤ V2.9 65 µs 80 µs
CPU 1511
CPU 1511C
CPU 1512C
CPU 1512SP
CPU 1513
CPU 1515 50 µs 65 µs
CPU 1516
CPU 1517 Cual­ 8 µs 12 µs
quiera
CPU 1518 4 µs 6 µs
CPU 1510SP ≥ V3.0 50 µs 65 µs
CPU 1511
CPU 1512SP
CPU 1513
CPU 1514SP
CPU 1515 40 µs 55 µs
CPU 1516

Memoria requerida
Memoria requerida por un DB de instancia del objeto tecnológico PID_Compact a partir de la
versión V2.0.

Memoria requerida Memoria requerida por el DB de instancia de


PID_Compact V2.x
Memoria de carga requerida Aprox. 12000 bytes
Memoria de trabajo total requerida 788 bytes
Memoria de trabajo remanente requerida 44 bytes

10.1.4 PID_Compact V2

[Link] Descripción PID_Compact V2

Descripción
La instrucción PID_Compact ofrece un regulador PID con optimización integrada para
actuadores de acción proporcional.

Regulación PID
226 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Se dispone de los modos de operación siguientes:


• Inactivo
• Optimización inicial
• Optimización fina
• Modo automático
• Modo manual
• Valor de salida sustitutivo con monitorización de errores
Los modos de operación se describen detalladamente en el parámetro State.

Algoritmo PID
PID_Compact es un regulador PIDT1 con Anti-Windup y ponderación de las acciones P y D. El
algoritmo PID funciona de acuerdo con la siguiente fórmula:
1 TD · s
y = Kp [ (b · w - x) + T · s
I
(w - x) +
a · TD · s + 1
(c · w - x) ]
Símbolo Descripción
y Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
TD Tiempo derivativo
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada
T1 = a × TD)
c Ponderación de la acción D

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 227
Instrucciones
10.1 PID_Compact

Diagrama de bloques PID_Compact

,QSXW3HU2Q
&53B,1 6FDOH 39B$/50 ,QSXW:DUQLQJB+
,QSXWB3(5
  ,QSXW:DUQLQJB/


,QSXW
3,'7
$QWL:LQGXS
/LPLW
6HWSRLQW

,19 ,QYHUW&RQWURO





'LVWXUEDQFH 2XWSXW

6WDWH

/LPLW &53B287
0DQXDO9DOXH ำ 2XWSXWB3(5
 

3:0
2XWSXWB3:0

Diagrama de bloques PIDT1 con Anti-Windup

6HWSRLQW Z E

$QWL:LQGXS
.3
/,0,7 , \

6FDOHG,QSXW [ '7


Regulación PID
228 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Llamada
PID_Compact se llama en una base de tiempo constante de un OB de alarma cíclica.

Cargar en dispositivo
Los valores actuales de variables remanentes solo se actualizan si se carga PID_Compact por
completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Arranque
Al arrancar la CPU, PID_Compact se inicia en el modo guardado en el parámetro de
entrada/salida Mode. Para cambiar al modo de operación "Inactivo" durante el arranque,
ajuste RunModeByStartup = FALSE.

Comportamiento en caso de error


En el modo automático y durante la puesta en servicio, el comportamiento en caso de error
depende de las variables SetSubstituteOutput y ActivateRecoverMode. En modo manual, el
comportamiento no depende de SetSubstituteOutput y ActivateRecoverMode. Si
ActivateRecoverMode = TRUE, el comportamiento dependerá además del error que se haya
producido.
SetSubstitu­ ActivateReco­ Ajuste del Editor de configuración Comportamiento
teOutput verMode > Valor de salida
> Output a
Irrelevante FALSE Cero (inactivo) Cambio al modo de operación "Inactivo" (State = 0)
El valor 0.0.0 se transfiere al elemento final de con­
trol.
FALSE TRUE Valor de salida actual por la duración Cambio al modo de operación "Valor de salida sus­
del error titutivo con monitorización de errores" (State = 5)
El valor de salida actual se transfiere al elemento fi­
nal de control o actuador mientras dure el error.
TRUE TRUE Valor de salida sustitutivo mientras Cambio al modo de operación "Valor de salida sus­
dure el error titutivo con monitorización de errores" (State = 5)
El valor de SubstituteOutput se transfiere al actua­
dor mientras dure el error.

PID_Compact utiliza ManualValue como valor de salida en el modo manual, excepto si


ManualValue no es válido. Si ManualValue no es válido, se utiliza SubstituteOutput. Si
ManualValue y SubstituteOutput no son válidos, se utiliza [Link].
El parámetro Error indica si hay algún un error presente en ese momento. Si no persiste el
error, se indica Error = FALSE. El parámetro ErrorBits muestra qué errores se han producido.
ErrorBits se reinicia mediante un flanco ascendente en Reset o ErrorAck.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 229
Instrucciones
10.1 PID_Compact

[Link] Funcionamiento PID_Compact V2

Monitorizar límites del valor real


En las variables [Link] y [Link] es posible definir un límite
superior y uno inferior del valor real. Si el valor real se encuentra fuera de estos límites,
ocurre un error (ErrorBits = 0001h).
En las variables [Link] y [Link] se definen un límite
de advertencia superior y uno inferior del valor real. Si el valor real se encuentra fuera de
estos límites de advertencia, se produce una advertencia (Warning = 0040h) y el parámetro
de salida InputWarning_H o InputWarning_L adopta el valor TRUE.

Limitar consigna
En las variables [Link] y [Link] es posible definir un
límite superior y uno inferior para la consigna. PID_Compact limita la consigna
automáticamente a los límites del valor real. Es posible limitar la consigna a un rango más
pequeño. PID_Compact verifica si dicho rango está dentro de los límites del valor real. Si la
consigna está fuera de estos límites, se utilizan los límites superior e inferior como consigna y
el parámetro de salida SetpointLimit_H o SetpointLimit_L adopta el valor TRUE.
La consigna se limita en todos los modos de operación.

Limitar el valor de salida


En las variables [Link] y [Link] se definen un límite
superior y otro inferior del valor de salida. Output, ManualValue y SubstituteOutput se limitan
a estos valores. Los límites del valor de salida deben ser compatibles con el sentido de
regulación.
Los valores válidos para los límites del valor de salida dependen del Output utilizado.

Output de -100.0 a 100.0%


Output_PER de -100.0 a 100.0%
Output_PWM de -0.0 a 100.0%
Rige:
OutputUpperLimit > OutputLowerLimit

NOTA
Uso con dos o más actuadores
PID_Compact no es adecuado para el uso con dos o más actuadores (p. ej., en aplicaciones de
calefacción/refrigeración), pues los actuadores diferentes necesitan también parámetros PID
diferentes para conseguir un buen comportamiento de regulación. Para aplicaciones con dos
actuadores de acción contrapuesta, utilice PID_Temp.

Regulación PID
230 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Valor de salida sustitutivo


PID_Compact puede emitir un valor de salida sustitutivo en caso de error que predefine en la
variable SubstituteOutput. El valor de salida sustitutivo debe encontrarse dentro de los límites
del valor de salida.

Vigilar la validez de las señales


Se vigila la validez de los valores de los siguientes parámetros al utilizarlos:
• Setpoint
• Input
• Input_PER
• Disturbance
• ManualValue
• SubstituteOutput
• Output
• Output_PER
• Output_PWM

Vigilancia del tiempo de muestreo PID_Compact


En el caso ideal, el tiempo de muestreo equivale al tiempo de ciclo del OB invocante. La
instrucción PID_Compact mide en cada caso el tiempo que transcurre entre dos llamadas.
Este es el tiempo de muestreo actual. Con cada cambio de modo de operación y en el primer
arranque se calcula la media de los 10 primeros tiempos de muestreo. Si el tiempo de
muestreo actual se desvía mucho de este valor medio, ocurre un error (Error = 0800h).
Durante la optimización, el error se produce si:
• Valor medio nuevo >= 1,1 veces el valor medio antiguo
• Valor medio nuevo <= 0,9 veces el valor medio antiguo
En el modo automático, el error se produce si:
• Valor medio nuevo >= 1,5 veces el valor medio antiguo
• Valor medio nuevo <= 0,5 veces el valor medio antiguo
Si se desactiva la monitorización del tiempo de muestreo ([Link] = FALSE),
puede llamarse PID_Compact también en el OB1. En tal caso, deberá aceptarse una
regulación de menor calidad, debido a la fluctuación del tiempo de muestreo.

Tiempo de muestreo del algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_Compact se ejecutan con cada llamada.
Si se utiliza Output_PWM, el tiempo de muestreo del algoritmo PID se utiliza como duración
de periodo de la modulación de ancho de impulsos. La precisión de la señal de salida se
determina mediante la relación entre el tiempo de muestreo del algoritmo PID y el tiempo de

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 231
Instrucciones
10.1 PID_Compact

ciclo del OB. Por eso se recomienda que el tiempo de ciclo sea como máximo una décima
parte del tiempo de muestreo del algoritmo PID.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal. Para refrigeración o para las regulaciones
de desagües puede ser necesario invertir el sentido de regulación. PID_Compact no funciona
con ganancia proporcional negativa. Si InvertControl = TRUE, un error de regulación
ascendente provocará una reducción del valor de salida. El sentido de regulación se tiene en
cuenta también durante la optimización inicial y la optimización fina.

[Link] Parámetros de entrada PID_Compact V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-1  
Parámetro Tipo de datos Ajuste prede­ Descripción
terminado
Setpoint REAL 0.0 Consigna del regulador PID en modo automático
Input REAL 0.0 Una variable del programa de usuario se utiliza como
origen del valor real.
Si utiliza el parámetro Input, debe cumplirse lo siguien­
te: [Link] = FALSE.
Input_PER INT 0 Una entrada analógica se utiliza como origen del valor
real.
Si utiliza el parámetro Input_PER, debe cumplirse lo si­
guiente: [Link] = TRUE.
Disturbance REAL 0.0 Magnitud perturbadora o valor de control anticipativo
ManualEnable BOOL FALSE • El flanco FALSE -> TRUE activa el modo de operación
"Modo manual", State = 4, Mode no cambia.
Mientras se cumple ManualEnable = TRUE, no es po­
sible cambiar el modo de operación mediante un
flanco ascendente en ModeActivate, ni utilizar el
diálogo de puesta en servicio.
• El flanco TRUE -> FALSE activa el modo de operación
especificado en Mode.
Se recomienda cambiar el modo de operación solo me­
diante ModeActivate.
ManualValue REAL 0.0 Valor manual
Este valor se utiliza en modo manual como valor de sali­
da.
Se admiten valores entre [Link] y
[Link]
ErrorAck BOOL FALSE • Flanco FALSE -> TRUE
ErrorBits y Warning se desactivan.

Regulación PID
232 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Reset BOOL FALSE Realiza un rearranque completo del regulador.
• Flanco FALSE -> TRUE
– Cambio al modo de operación "Inactivo"
– ErrorBits y Warnings se desactivan.
• Mientras se cumpla Reset = TRUE,
– PID_Compact permanece en el modo de opera­
ción "Inactivo" (State = 0);
– no es posible cambiar el modo de operación me­
diante Mode y ModeActivate o ManualEnable;
– no es posible utilizar el diálogo de puesta en
marcha.
• Flanco TRUE -> FALSE
– Si ManualEnable = FALSE, PID_Compact cambia
al modo de operación que está guardado en Mo­
de.
– Si Mode = 3, la acción I se trata como se haya
configurado a través de la variable IntegralReset­
Mode.
ModeActivate BOOL FALSE • Flanco FALSE -> TRUE
PID_Compact cambia al modo guardado en Mode.

[Link] Parámetros de salida PID_Compact V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-2  
Parameter Tipo de datos Ajuste predetermina­ Descripción
do
ScaledInput REAL 0.0 Valor real escalado
Las salidas "Output", "Output_PER" y "Output_PWM" pueden utilizarse paralelamente.
Output REAL 0.0 Valor de salida en el formato REAL
Output_PER INT 0 Valor de salida analógico
Output_PWM BOOL FALSE Valor de salida modulado por ancho de impulso
El valor de salida se obtiene mediante tiempos de conexión y
desconexión variables.
SetpointLimit_H BOOL FALSE Si SetpointLimit_H = TRUE se cumple, significa que se ha al­
canzado el límite superior absoluto de la consigna (Set­
point ≥ [Link]).
La consigna está limitada a [Link] .
SetpointLimit_L BOOL FALSE Si SetpointLimit_L = TRUE se cumple, significa que se ha al­
canzado el límite inferior absoluto de la consigna (Setpoint ≤
[Link]).
La consigna está limitada a [Link] .
InputWarning_H BOOL FALSE Cuando InputWarning_H = TRUE, significa que se ha alcanza­
do o rebasado el límite superior de advertencia del valor real.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 233
Instrucciones
10.1 PID_Compact

Parameter Tipo de datos Ajuste predetermina­ Descripción


do
InputWarning_L BOOL FALSE Cuando InputWarning_L = TRUE, significa que se ha alcanza­
do o rebasado por defecto el límite inferior de advertencia
del valor real.
State INT 0 El parámetro State (Página 244) indica el modo de operación
actual del regulador PID. El modo de operación se cambia
con el parámetro de entrada Mode y un flanco ascendente
en ModeActivate.
• State = 0: Inactivo
• State = 1: Optimización inicial
• State = 2: Optimización fina
• State = 3: Modo automático
• State = 4: Modo manual
• State = 5: Valor de salida sustitutivo con monitorización
de errores
Error BOOL FALSE Si Error = TRUE, existe al menos un mensaje de error en el ci­
clo actual.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 247) muestra qué mensajes
de error existen. ErrorBits es remanente y se restablece con
un flanco ascendente en Reset o ErrorAck.

[Link] Parámetros de entrada/salida PID_Compact V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-3  
Parameter Tipo de datos Ajuste predeterminado Descripción
Mode INT 4 Especifique en Mode el modo de operación al
que debe cambiar PID_Compact. Posibilida­
des:
• Mode = 0: Inactivo
• Mode = 1: Optimización inicial
• Mode = 2: Optimización fina
• Mode = 3: Modo automático
• Mode = 4: Modo manual
El modo se activa mediante:
• Flanco ascendente en ModeActivate
• Flanco descendente en Reset
• Flanco descendente en ManualEnable
• Arranque en frío de la CPU si RunMo­
deByStartup = TRUE
Mode es remanente.
Encontrará una descripción detallada de los
modos de operación en Parámetros State y
Mode V2 (Página 244).

Consulte
también
Parámetros State y Mode V2 (Página 244)

Regulación PID
234 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

[Link] Variables estáticas de PID_Compact V2

NOTA
Modifique las variables marcadas con (1) solo en el modo de operación "Inactivo" para evitar
un comportamiento erróneo del regulador PID.

Salvo que se indique lo contrario, los nombres de las siguientes variables se aplican tanto
para el bloque de datos como para el acceso a través de Openness API.
Variable Tipo de da­ Ajuste prede­ Descripción
tos terminado
IntegralResetMode INT Hasta V2.2: 1, La Variable IntegralResetMode V2 (Página 251) determi­
a partir de na cómo se preasigna la acción I [Link] al
V2.3: 4 cambiar del modo de operación "Inactivo" al "Modo au­
tomático". Este ajuste surte efecto solo para un ciclo.
Posibilidades:
• IntegralResetMode = 0: Filtrar
• IntegralResetMode = 1: Borrar
• IntegralResetMode = 2: Mantener
• IntegralResetMode = 3: Preasignar
• IntegralResetMode = 4: Como el cambio de consigna
(solo para PID_Compact con versión ≥ 2.3)
OverwriteInitialOutputValue REAL 0.0 Si se cumple una de las siguientes condiciones, la acción
integral de [Link] se preasigna automáti­
camente como si en el ciclo anterior hubiese sido Out­
put = OverwriteInitialOutputValue:
• IntegralResetMode = 3 al cambiar del modo de ope­
ración "Inactivo" al "Modo automático"
• IntegralResetMode = 3, flanco TRUE -> FALSE en el
parámetro Reset y parámetro Mode = 3
• [Link] = TRUE en el "Modo automático" (dis­
ponible a partir de PID_Compact versión 2.3)
RunModeByStartup BOOL TRUE Activar Mode después del rearranque de la CPU
Si RunModeByStartup = TRUE, PID_Compact se inicia
después del arranque de la CPU en el modo guardado en
Mode.
Si RunModeByStartup = FALSE, PID_Compact permanece
en modo "Inactivo" después del arranque de la CPU.
LoadBackUp BOOL FALSE Si LoadBackUp = TRUE, se carga nuevamente el último
juego de parámetros PID. El juego se guardó antes de la
última optimización. LoadBackUp se ajusta automática­
mente de nuevo a FALSE.
PhysicalUnit INT 0 Unidad física del valor real y de la consigna, p. ej. ºC o
ºF.
PhysicalUnit se utiliza para la visualización en los edito­
res y no influye en el comportamiento del algoritmo de
regulación en la CPU.
Al importar PID_Compact a través de Openness API, Phy­
sicalUnit se restablece al valor estándar.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 235
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
PhysicalQuantity INT 0 Unidad física del valor real y de la consigna, p. ej. tem­
peratura.
PhysicalQuantity se utiliza para la visualización en los
editores y no influye en el comportamiento del algorit­
mo de regulación en la CPU.
Al importar PID_Compact a través de Openness API, Phy­
sicalQuantity se restablece al valor estándar.
ActivateRecoverMode BOOL TRUE La Variable ActivateRecoverMode V2 (Página 249) deter­
mina el comportamiento en caso de error.
Warning DWORD 0 Variable Warning V2 (Página 251) muestra las adverten­
cias desde Reset = TRUE o ErrorAck =TRUE. Warning es
remanente.
Progress REAL 0.0 Progreso de la optimización en porcentaje (0,0 - 100,0)
CurrentSetpoint REAL 0.0 CurrentSetpoint muestra siempre la consigna actual. Es­
te valor se congela durante la optimización.
CancelTuningLevel REAL 10.0 Fluctuación admisible de la consigna durante la optimi­
zación. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
SubstituteOutput REAL 0.0 Valor de salida sustitutivo
Si se cumplen las siguientes condiciones, se utiliza el va­
lor de salida sustitutivo:
• Se ha producido un error en el modo automático.
• SetSubstituteOutput = TRUE
• ActivateRecoverMode = TRUE
SetSubstituteOutput BOOL TRUE Si SetSubstituteOutput = TRUE y ActivateRecoverMo­
de = TRUE, se emite el valor de salida sustitutivo confi­
gurado mientras haya un error pendiente.
Si SetSubstituteOutput = FALSE y ActivateRecoverMo­
de = TRUE, el actuador se mantiene en el valor de salida
actual mientras haya un error pendiente.
Si ActivateRecoverMode = FALSE, SetSubstituteOutput
queda sin efecto.
Si SubstituteOutput no es válido (ErrorBits = 20000h), el
valor de salida sustitutivo no se puede emitir.
[Link](1) BOOL TRUE Si InputPerOn = TRUE, se utiliza el parámetro Input_PER.
Si InputPerOn = FALSE, se utiliza el parámetro Input.
[Link](1) BOOL FALSE Inversión del sentido de regulación
Si InvertControl = TRUE, un error de regulación ascen­
dente provocará una reducción del valor de salida.
_Config.OutputSelect INT 0 Selección del valor de salida:
• OutputSelect = 0: Output_PER (analógico)
• OutputSelect = 1: Output
• OutputSelect = 2: Output_PWM
_Config.OutputSelect se utiliza para la configuración del
regulador en el TIA Portal y no influye en el cálculo de
los valores de salida en la CPU.

Regulación PID
236 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
_Config.OutputSelect no está disponible en el bloque de
datos y solo se puede configurar en el editor de configu­
ración o a través de Openness API.
Al importar PID_Compact a través de Openness API,
_Config.OutputSelect se restablece al valor estándar.
[Link](1) REAL 120.0 Límite superior del valor real
Se vigila que Input y Input_PER respeten estos límites.
En la entrada de periferia, el valor real puede encontrar­
se como máximo un 18% por encima del rango normali­
zado (margen de saturación). No se comunica ningún
error más con el ajuste predeterminado debido al rebase
por exceso del "Límite superior del valor real". Única­
mente se detectan la rotura de hilo y el cortocircuito y
PID_Compact se comporta según la reacción configura­
da en caso de error.
InputUpperLimit > InputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor real
Se vigila que Input y Input_PER respeten estos límites.
InputLowerLimit < InputUpperLimit
[Link](1) REAL 3.402822e+38 Límite superior de advertencia del valor real
Si se configura InputUpperWarning a un valor que se en­
cuentre fuera de los límites del valor real, el límite supe­
rior absoluto configurado para el valor real se utiliza co­
mo límite superior de advertencia.
Si se configura InputUpperWarning a un valor que se en­
cuentre dentro de los límites del valor real, este valor se
utiliza como límite superior de advertencia.
InputUpperWarning > InputLowerWarning
InputUpperWarning ≤ InputUpperLimit
[Link](1) REAL -3.402822e+38 Límite inferior de advertencia del valor real
Si se configura InputLowerWarning a un valor que se en­
cuentre fuera de los límites del valor real, el límite infe­
rior absoluto configurado para el valor real se utiliza co­
mo límite inferior de advertencia.
Si se configura InputLowerWarning a un valor que se en­
cuentre dentro de los límites del valor real, este valor se
utiliza como límite inferior de advertencia.
InputLowerWarning < InputUpperWarning
InputLowerWarning ≥ InputLowerLimit
[Link](1) REAL 100.0 Límite superior del valor de salida
Para más detalles ver OutputLowerLimit
OutputUpperLimit > OutputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor de salida
Para Output o Output_PER, el rango de valores válido va
de -100.0 hasta +100.0 incluido el cero. Para -100.0,
Output_PER = -27648; para +100.0, Output_PER =
27648.
Para Output_PWM el rango de valores válido va de 0.0 a
+100.0.
Los límites del valor de salida deben ser compatibles con
el sentido de regulación.
OutputLowerLimit < OutputUpperLimit

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 237
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
[Link](1) REAL 3.402822e+38 Límite superior de la consigna
Si se configura SetpointUpperLimit a un valor que se en­
cuentre fuera de los límites del valor real, el límite supe­
rior absoluto configurado para el valor real se utiliza co­
mo límite superior de la consigna.
Si se configura SetpointUpperLimit a un valor que se en­
cuentre dentro de los límites del valor real, este valor se
utiliza como límite superior de la consigna.
[Link](1) REAL -3.402822e+38 Límite inferior de la consigna
Si se configura SetpointLowerLimit a un valor que se en­
cuentre fuera de los límites del valor real, el límite infe­
rior absoluto configurado para el valor real se utiliza co­
mo límite inferior de la consigna.
Si se configura SetpointLowerLimit a un valor que se en­
cuentre dentro de los límites del valor real, este valor se
utiliza como límite inferior de la consigna.
[Link](1) REAL 0.0 El tiempo mínimo de conexión de la modulación de an­
cho de impulsos en segundos se redondea a
MinimumOnTime = n×[Link]
[Link](1) REAL 0.0 El tiempo mínimo de desconexión de la modulación de
ancho de impulsos en segundos se redondea a
MinimumOffTime = n×[Link]
[Link](1) REAL 27648.0 Escalado Input_PER arriba
Mediante los dos pares de valores UpperPointOut, Up­
perPointIn y LowerPointOut, LowerPointIn, Input_PER se
convierte a porcentaje.
[Link](1) REAL 0.0 Escalado Input_PER abajo
Mediante los dos pares de valores UpperPointOut, Up­
perPointIn y LowerPointOut, LowerPointIn, Input_PER se
convierte a porcentaje.
[Link](1) REAL 100.0 Valor real superior escalado
Mediante los dos pares de valores UpperPointOut, Up­
perPointIn y LowerPointOut, LowerPointIn, Input_PER se
convierte a porcentaje.
[Link](1) REAL 0.0 Valor real inferior escalado
Mediante los dos pares de valores UpperPointOut, Up­
perPointIn y LowerPointOut, LowerPointIn, Input_PER se
convierte a porcentaje.
[Link] BOOL TRUE Si [Link] = TRUE se empieza a medir
automáticamente el tiempo de ciclo. Una vez finalizada
la medición, [Link] = FALSE.
[Link] BOOL TRUE Si [Link] = TRUE se calcula el tiempo
de muestreo PID_Compact.
Si [Link] = FALSE, el tiempo de mues­
treo PID_Compact no se calcula y debe configurar Cycle­
[Link] correctamente a mano.

Regulación PID
238 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
[Link] BOOL TRUE Si [Link] = FALSE no se vigila el tiem­
po de muestreo PID_Compact. Si no es posible ejecutar
PID_Compact dentro del tiempo de muestreo, no se
emite ningún error (ErrorBits=0800h) y PID_Compact no
cambia al modo de operación "Inactivo".
[Link](1) REAL 0.1 Tiempo de muestreo PID_Compact en segundos
[Link] se determina automáticamente y equi­
vale normalmente al tiempo de ciclo del OB invocante.
[Link] REAL 1.0 Ganancia proporcional almacenada
Los valores de la estructura CtrlParamsBackUp pueden
volverse a cargar con LoadBackUp = TRUE.
[Link] REAL 20.0 Tiempo de integración [s] almacenado
[Link] REAL 0.0 Tiempo derivativo [s] almacenado
[Link] REAL 0.2 Coeficiente almacenado para el retardo de la acción de­
rivada
[Link] REAL 1.0 Factor de ponderación almacenado de la acción P
[Link] REAL 1.0 Factor de ponderación almacenado de la acción D
[Link] REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID
[Link] BOOL FALSE Las propiedades del sistema regulado se almacenan du­
rante la optimización. Si [Link] = TRUE, se
vuelven a calcular los parámetros de la optimización ini­
cial con estas propiedades. De este modo puede cam­
biarse el método para calcular los parámetros sin que
sea necesario repetir la optimización.
[Link] se ajusta a FALSE después del cál­
culo.
[Link] INT 0 Calcular los parámetros durante la optimización inicial
según el método:
• [Link] = 0: PID según Chien, Hrones y Res­
wick
• [Link] = 1: PI según Chien, Hrones y Reswick
[Link] INT 0 La variable [Link] muestra la fase actual de la optimi­
zación inicial:
• State = 0: Iniciar la optimización inicial
• State = 100: Calcular desviación estándar
• State = 200: Determinar punto de inflexión
• State = 9900: Optimización inicial correcta
• State = 1: Optimización inicial no correcta
[Link] BOOL FALSE Con la variable RunIn puede determinar que se realice
una optimización fina incluso sin optimización inicial.
• RunIn = FALSE
Si la optimización fina se inicia desde los modos de
operación Inactivo o Manual, se inicia una optimiza­
ción inicial. Si no se cumplen los requisitos para la
optimización inicial, PID_Compact se comporta como
si RunIn = TRUE.
Si la optimización fina se inicia desde el modo auto­
mático, los parámetros PID existentes se regulan a la
consigna.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 239
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
Solo entonces comienza la optimización fina. Si no
es posible realizar una optimización inicial,
PID_Compact pasa al modo desde el que se inició la
optimización.
• RunIn = TRUE
La optimización inicial se omite. PID_Compact inten­
ta alcanzar la consigna con el valor de salida mínimo
o máximo, lo que puede ocasionar una sobreoscila­
ción muy alta. La optimización fina se inicia enton­
ces automáticamente.
RunIn se ajusta a FALSE después de la optimización
fina.
[Link] BOOL FALSE Las propiedades del sistema regulado se almacenan du­
rante la optimización. Si [Link] = TRUE, se
vuelven a calcular los parámetros de la optimización fina
con estas propiedades. De este modo puede cambiarse
el método para calcular los parámetros sin que sea ne­
cesario repetir la optimización.
[Link] se ajusta a FALSE después del cálcu­
lo.
[Link] INT 0 Calcular los parámetros durante la optimización fina se­
gún el método:
• [Link] = 0: PID automático
• [Link] = 1: PID rápido (comportamiento de re­
gulación más rápido con amplitudes del valor de sali­
da mayores que las de [Link] = 2)
• [Link] = 2: PID lento (comportamiento de re­
gulación más lento con amplitudes del valor de sali­
da menores que las de [Link] = 1)
• [Link] = 3: PID Ziegler-Nichols
• [Link] = 4: PI Ziegler-Nichols
• [Link] = 5: P Ziegler-Nichols
Para poder repetir el cálculo de los parámetros PID con
[Link] y [Link] = 0, 1 o 2, la optimi­
zación fina anterior debe haberse ejecutado también
con [Link] =0, 1 o 2.
De no ser así, se utiliza [Link] = 3.
Siempre es posible volver a calcular los parámetros PID
con [Link] y [Link] = 3, 4 o 5.
[Link] INT 0 La variable [Link] muestra la fase actual de la "Opti­
mización fina":
• State = -100 No es posible realizar la optimización fi­
na. Primero se efectuará una optimización inicial.
• State = 0: Iniciar la optimización fina
• State = 200: Calcular desviación estándar
• State = 300: Intentar alcanzar consigna
• State = 400: Intentar alcanzar la consigna con los pa­
rámetros PID actuales
(si la optimización inicial ha sido correcta)
• State = 500: Determinar oscilación y calcular pará­
metros
• State = 9900: Optimización fina correcta
• State = 1: Optimización fina no correcta

Regulación PID
240 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
[Link](1) REAL 0.0 Acción I actual
[Link] BOOL FALSE [Link] está disponible a partir de PID_Compact
versión 2.3.
Si [Link] = TRUE en el "Modo automático", la ac­
ción integral de [Link] se preasigna auto­
máticamente como si en el ciclo anterior hubiese sido
Output = OverwriteInitialOutputValue. Esto se puede
utilizar para una Regulación de transición con
PID_Compact V2 (Página 86).
_Retain.[Link] BOOL FALSE Activar la introducción manual de los parámetros PID
Si _Retain.[Link] = TRUE, se pueden edi­
tar los parámetros PID.
_Retain.[Link] se utiliza para la configu­
ración del regulador en el TIA Portal y no influye en el
comportamiento del algoritmo de regulación en la CPU.
_Retain.[Link] no está disponible en el
bloque de datos y solo se puede configurar en el editor
de configuración o a través de Openness API.
Al importar PID_Compact a través de Openness API,
_Retain.[Link] se restablece al valor es­
tándar.
[Link](1) REAL 1.0 Ganancia proporcional activa
Para invertir el sentido de regulación utilice la variable
[Link]. Los valores negativos de Gain in­
vierten también el sentido de regulación. Se recomienda
que ajuste el sentido de regulación únicamente a través
de InvertControl. Si se cumplen InvertControl = TRUE y
Gain < 0.0, el sentido de regulación también se invierte.
Gain es remanente.
[Link](1) REAL 20.0 • [Link] > 0.0: Tiempo de integración activo
• [Link] = 0.0: La acción I está desactivada
Ti es remanente.
[Link](1) REAL 0.0 • [Link] > 0.0: Tiempo derivativo activo
• [Link] = 0.0: La acción D está desactivada
Td es remanente.
[Link](1) REAL 0.2 Coeficiente activo para el retardo de la acción derivada
El efecto de la acción D se retrasa mediante el coeficien­
te de retardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo × coe­
ficiente de retardo de la acción derivada
• 0.0: La acción D solo surte efecto para un ciclo y, por
ello, casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para
sistemas regulados con una constante de tiempo do­
minante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retra­
sará el efecto de la acción D.
TdFiltRatio es remanente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 241
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
[Link](1) REAL 1.0 Ponderación activa de la acción P
En el caso de que se modifique la consigna, es posible
atenuar la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la
consigna
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P
es totalmente efectiva.
PWeighting es remanente.
[Link](1) REAL 1.0 Ponderación activa de la acción D
En el caso de que se modifique la consigna, es posible
atenuar la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva al cambiar la
consigna.
• 0.0: La acción D no es efectiva al cambiar la consig­
na.
Si se produce una modificación del valor real, la acción
D es totalmente efectiva.
DWeighting es remanente.
[Link](1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID
[Link] se determina durante la optimización y
se redondea a un múltiplo entero de [Link].
[Link] se utiliza como duración de periodo de
la modulación por ancho de impulso.
Cycle es remanente.

Consulte
también
Variable ActivateRecoverMode V2 (Página 249)
Variable Warning V2 (Página 251)
Cargar objetos tecnológicos en el dispositivo (Página 45)

[Link] Modificaciones de la interfaz PID_Compact V2

La siguiente tabla muestra lo que ha cambiado en la interfaz de la instrucción PID_Compact.

PID_Compact V1 PID_Compact V2 Cambio


Input_PER Input_PER Tipo de datos de Word a Int
Disturbance Nuevo
ErrorAck Nuevo
ModeActivate Nuevo
Output_PER Output_PER Tipo de datos de Word a Int
Error ErrorBits Cambio de nombre
Error Nuevo

Regulación PID
242 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

PID_Compact V1 PID_Compact V2 Cambio


Mode Nuevo
sb_RunModeByStartup RunModeByStartup Función
IntegralResetMode
OverwriteInitialOutputValue Nuevo
SetSubstituteOutput Nuevo
CancelTuningLevel Nuevo
SubstituteOutput Nuevo

La siguiente tabla muestra las variables que han cambiado de nombre.

PID_Compact V1.x PID_Compact V2


sb_GetCycleTime [Link]
sb_EnCyclEstimation [Link]
sb_EnCyclMonitoring [Link]
sb_RunModeByStartup RunModeByStartup
si_Unit PhysicalUnit
si_Type PhysicalQuantity
sd_Warning Warning
sBackUp.r_Gain [Link]
sBackUp.r_Ti [Link]
sBackUp.r_Td [Link]
sBackUp.r_A [Link]
sBackUp.r_B [Link]
sBackUp.r_C [Link]
sBackUp.r_Cycle [Link]
sPid_Calc.r_Cycle [Link]
sPid_Calc.b_RunIn [Link]
sPid_Calc.b_CalcParamSUT [Link]
sPid_Calc.b_CalcParamTIR [Link]
sPid_Calc.i_CtrlTypeSUT [Link]
sPid_Calc.i_CtrlTypeTIR [Link]
sPid_Calc.r_Progress Progress
sPid_Cmpt.r_Sp_Hlm [Link]
sPid_Cmpt.r_Sp_Llm [Link]
sPid_Cmpt.r_Pv_Norm_IN_1 [Link]
sPid_Cmpt.r_Pv_Norm_IN_2 [Link]
sPid_Cmpt.r_Pv_Norm_OUT_1 [Link]
sPid_Cmpt.r_Pv_Norm_OUT_2 [Link]
sPid_Cmpt.r_Lmn_Hlm [Link]
sPid_Cmpt.r_Lmn_Llm [Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 243
Instrucciones
10.1 PID_Compact

PID_Compact V1.x PID_Compact V2


sPid_Cmpt.b_Input_PER_On [Link]
sPid_Cmpt.b_LoadBackUp LoadBackUp
sPid_Cmpt.b_InvCtrl [Link]
sPid_Cmpt.r_Lmn_Pwm_PPTm [Link]
sPid_Cmpt.r_Lmn_Pwm_PBTm [Link]
sPid_Cmpt.r_Pv_Hlm [Link]
sPid_Cmpt.r_Pv_Llm [Link]
sPid_Cmpt.r_Pv_HWrn [Link]
sPid_Cmpt.r_Pv_LWrn [Link]
sParamCalc.i_Event_SUT [Link]
sParamCalc.i_Event_TIR [Link]
sRet.i_Mode sRet.i_Mode se ha suprimido. El modo de opera­
ción se cambia mediante Mode y ModeActivate.
sRet.r_Ctrl_Gain [Link]
sRet.r_Ctrl_Ti [Link]
sRet.r_Ctrl_Td [Link]
sRet.r_Ctrl_A [Link]
sRet.r_Ctrl_B [Link]
sRet.r_Ctrl_C [Link]
sRet.r_Ctrl_Cycle [Link]

[Link] Parámetros State y Mode V2

Interrelación de los parámetros


El parámetro State indica el modo de operación actual del regulador PID. El parámetro State
no puede modificarse.
Con un flanco ascendente en ModeActivate, PID_Compact pasa al modo guardado en el
parámetro de entrada/salida Mode.
Al conectar la CPU o cambiar de STOP a RUN, PID_Compact se inicia en el modo de operación
guardado en Mode. Para dejar PID_Compact en el modo de operación "Inactivo", ajuste
RunModeByStartup = FALSE.

Significado de los valores

State / Mode Descripción del modo de operación


0 Inactivo
En el modo de operación "Inactivo" se emite siempre el valor de salida 0.0, independientemente de Con­
[Link] y [Link]. La modulación del ancho de pulso está desactivada.

Regulación PID
244 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

State / Mode Descripción del modo de operación


1 Optimización inicial
La optimización inicial determina el comportamiento del proceso a un escalón del valor de salida y busca el
punto de inflexión. Los parámetros PID óptimos se calculan a partir de la pendiente máxima y el tiempo muer­
to del sistema regulado. Para obtener los mejores parámetros PID, debe efectuarse una optimización inicial y
una optimización fina.
Requisitos para la optimización inicial:
• Modo de operación Inactivo (State = 0), Manual (State = 4) o Automático (State = 3)
• ManualEnable = FALSE
• Reset = FALSE
• El valor real no debe aproximarse demasiado a la consigna.
|Setpoint - Input| > 0.3 * | [Link] - [Link]| y
|Setpoint - Input| > 0.5 * |Setpoint|
• La consigna y el valor real se encuentran dentro de los límites configurados.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los parámetros PID. Un
ruido del valor real es aceptable siempre que la subida del valor real sea considerablemente mayor que el rui­
do.
La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de estos y es posible reacti­
varlos con LoadBackUp.
Una vez realizada correctamente la optimización inicial, se pasa al modo automático; si la optimización inicial
no se ha realizado correctamente, el cambio del modo de operación depende de ActivateRecoverMode.
Se muestra la fase de la optimización inicial con [Link].
Para iniciar la optimización inicial desde el modo automático, es recomendable hacer coincidir el cambio re­
querido de la consigna con el flanco ascendente en ModeActivate. Si primero se cambia la consigna y luego se
inicia la optimización inicial, el valor de salida en el modo automático varía y provoca una modificación del va­
lor real. Esto puede tener un efecto negativo sobre la optimización inicial subsiguiente o incluso impedir su
inicio.
2 Optimización fina
La optimización fina genera una oscilación constante y limitada del valor real. A partir de la amplitud y fre­
cuencia de esta oscilación se calculan de nuevo los parámetros PID. Los parámetros PID existentes después de
la optimización fina muestran en su mayoría un comportamiento de guía y ante fallos mucho mejor que los
parámetros PID de la optimización inicial. Para obtener los mejores parámetros PID, debe efectuarse una opti­
mización inicial y una optimización fina.
PID_Compact intenta generar automáticamente una oscilación que es mayor que el ruido del valor real. La es­
tabilidad del valor real ejerce tan solo una mínima influencia sobre la optimización fina.
La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de estos y es posible reacti­
varlos con LoadBackUp.
Requisitos para la optimización fina:
• No se esperan perturbaciones.
• La consigna y el valor real se encuentran dentro de los límites configurados.
• ManualEnable = FALSE
• Reset = FALSE
• Modo de operación Automático (State = 3), Inactivo (State = 0) o Manual (State = 4)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 245
Instrucciones
10.1 PID_Compact

State / Mode Descripción del modo de operación


Al inicio, la optimización fina se desarrolla del modo siguiente:
• Modo automático (State = 3)
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la optimización fina desde el
modo automático.
PID_Compact regula con los parámetros PID existentes hasta que el lazo de regulación es estacionario y se
cumplen las condiciones para la optimización fina. Solo entonces comienza la optimización fina.
• Modo Inactivo (State = 0) o Manual (State = 4)
Si se cumplen las condiciones para optimización inicial, esta se inicia. Con los parámetros PID calculados,
la regulación se realiza hasta que el lazo de regulación es estacionario y se han cumplido las condiciones
para una optimización fina.
Si el valor real para una optimización inicial se encuentra ya muy cerca de la consigna o si PIDSelfTu­
[Link] = TRUE, se intenta alcanzar la consigna con el valor de salida máximo o mínimo. lo que pue­
de ocasionar una sobreoscilación muy alta.
Solo entonces comienza la optimización fina.
Una vez realizada correctamente la optimización fina, el regulador pasa al modo automático; si la optimiza­
ción fina no se ha realizado correctamente, el cambio del modo de operación depende de ActivateRecoverMo­
de.
La fase de la optimización fina se muestra con [Link].
3 Modo automático
En el modo automático, PID_Compact regula el sistema regulado conforme a los parámetros predefinidos.
Cuando se cumple uno de los requisitos siguientes, se cambia al modo automático:
• Optimización inicial finalizada correctamente.
• Optimización fina finalizada correctamente.
• Cambio del parámetro de entrada/salida Mode al valor 3 y un flanco ascendente en ModeActivate.
El cambio de modo automático a modo manual se realiza sin discontinuidad únicamente en el editor de pues­
ta de servicio.
En el modo automático se tiene en cuenta la variable ActivateRecoverMode.
4 Modo manual
En el modo manual se especifica un valor de salida manual en el parámetro ManualValue.
Este modo puede activarse también mediante ManualEnable = TRUE. Se recomienda cambiar los modos de
operación solo mediante Mode y ModeActivate.
El cambio de modo manual a modo automático se efectúa sin discontinuidad. El modo manual es posible aun­
que haya un error pendiente.
5 Valor de salida sustitutivo con monitorización de errores
El algoritmo de regulación está desactivado. La variable SetSubstituteOutput determina qué valor de salida se
emite durante este modo de operación.
• SetSubstituteOutput = FALSE: Último valor de salida válido
• SetSubstituteOutput = TRUE: Valor de salida sustitutivo
Este modo de operación no puede activarse con Mode = 5.
Se activa en caso de error en lugar del modo de operación "Inactivo", cuando se cumplen todas las condicio­
nes siguientes:
• Modo automático (Mode = 3)
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode.
En cuanto los errores dejan de estar activos, PID_Compact pasa de nuevo al modo automático.

Comportamiento ENO
Si State = 0, entonces ENO = FALSE.
Si State ≠ 0, entonces ENO = TRUE.

Regulación PID
246 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Cambio automático de modo de operación durante la puesta en servicio


Una vez realizada correctamente la optimización inicial o la optimización fina, se activa el
modo automático. La siguiente tabla muestra cómo se modifican Mode y State durante una
optimización inicial correcta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 Optimización inicial correcta
n 3 3 Se inicia el modo automático
En caso de error, PID_Compact cambia automáticamente el modo de operación. La siguiente
tabla muestra cómo se modifican Mode y State durante una optimización inicial incorrecta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 La optimización inicial se ha cancelado
n 4 4 Se inicia el modo manual
Si ActivateRecoverMode = TRUE, se activa el modo guardado en Mode. Al iniciar la
optimización inicial o fina, PID_Compact ha guardado el valor de State en el parámetro de
entrada/salida Mode. Por lo tanto, PID_Compact cambia al modo desde el que se inició la
optimización.
Si ActivateRecoverMode = FALSE, se cambia al modo de operación "Inactivo".
Consulte
también
Parámetros de salida PID_Compact V2 (Página 233)

[Link] Parámetro ErrorBits V2

Si hay varios errores presentes a la vez, los valores del ErrorBits se muestran sumados
binariamente. Si se muestra, p. ej., ErrorBits = 0003h, significa que están presentes
simultáneamente los errores 0001h y 0002h.
PID_Compact utiliza en modo manual ManualValue como valor de salida. La excepción es
Errorbits = 10000h.
ErrorBits Descripción

(DW#16#...)
0000 No hay ningún error.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 247
Instrucciones
10.1 PID_Compact

ErrorBits Descripción

(DW#16#...)
0001 El parámetro "Input" se encuentra fuera de los límites del valor real.
• Input > [Link] o bien,
• Input < [Link]
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Compact permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
0002 Valor no válido en el parámetro "Input_PER". Compruebe si hay un error en la entrada analógica.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Compact emite el valor de salida sustitutivo configurado. En cuanto desaparece el error,
PID_Compact pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
0004 Error durante la optimización fina. No se ha podido mantener la oscilación del valor real.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact cancela la optimiza­
ción y cambia al modo guardado en Mode.
0008 Error al iniciar la optimización inicial. El valor real se aproxima demasiado a la consigna. Inicie la optimiza­
ción fina.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact cancela la optimiza­
ción y cambia al modo guardado en Mode.
0010 Se ha cambiado la consigna durante la optimización.
En la variable CancelTuningLevel puede ajustar la fluctuación admisible de la consigna.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact cancela la optimiza­
ción y cambia al modo guardado en Mode.
0020 La optimización inicial no está permitida durante la optimización fina.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact permanece en el
modo optimización fina.
0080 Error durante la optimización inicial. Los límites del valor de salida no están configurados correctamente o
el valor real no responde de la forma esperada.
Asegúrese de lo siguiente:
• Los límites del valor de salida están configurados correctamente y concuerdan con el sentido de regu­
lación.
• Es posible cambiar el valor de salida para que el valor real se aproxime a la consigna. El valor de salida
no está limitado desde antes de comenzar la optimización inicial por el correspondiente límite del va­
lor de salida.
Ejemplo: Con el sentido de regulación normal y un valor real inferior a la consigna, el valor de salida
no puede haber alcanzado el límite superior antes de comenzar la optimización inicial.
• El valor real no presenta oscilaciones fuertes antes de comenzar la optimización inicial.
Para iniciar una optimización inicial desde el modo automático, se recomienda hacer coincidir el cambio
requerido de la consigna con el flanco ascendente en ModeActivate. Así se evita que se limite el valor de
salida entre el cambio de consigna y el comienzo de la optimización inicial. Esto también se logra inician­
do la optimización desde el modo manual o el modo de operación "Inactivo".
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact cancela la optimiza­
ción y cambia al modo guardado en Mode.
0100 Un error en la optimización fina ha provocado parámetros no válidos.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact cancela la optimiza­
ción y cambia al modo guardado en Mode.

Regulación PID
248 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

ErrorBits Descripción

(DW#16#...)
0200 Valor no válido en el parámetro "Input": El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Compact emite el valor de salida sustitutivo configurado. En cuanto desaparece el error,
PID_Compact pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
0400 Error al calcular el valor de salida. Compruebe los parámetros PID.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Compact emite el valor de salida sustitutivo configurado. En cuanto desaparece el error,
PID_Compact pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
0800 Error de tiempo de muestreo: PID_Compact no se llama dentro del tiempo de muestreo del OB de alarma
cíclica.
Se recomienda llamar PID_Compact en un OB de alarma cíclica sin condiciones y activarlo o desactivarlo
con el modo de operación en el parámetro Mode. Las llamadas condicionadas o la llamada en OB1 po­
drían afectar a la calidad de la regulación.
Se puede desactivar la monitorización del tiempo de muestreo con [Link] = FALSE
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Compact permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
Si este error se ha producido durante la simulación con PLCSIM, tenga en cuenta las indicaciones de Simu­
lación de PID_Compact V2 con PLCSIM (Página 90).
1000 Valor no válido en el parámetro "Setpoint": El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y se cumplía ActivateRecoverMode =
TRUE, PID_Compact emite el valor de salida sustitutivo configurado. En cuanto desaparece el error,
PID_Compact pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode.
10000 Valor no válido en el parámetro ManualValue. El valor no tiene un formato numérico válido.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Compact utiliza Substitu­
teOutput como valor de salida. En cuanto se especifica un valor válido en ManualValue, PID_Compact lo
utiliza como valor de salida.
20000 Valor no válido en la variable SubstituteOutput. El valor no tiene un formato numérico válido.
PID_Compact utiliza como valor de salida el límite inferior del valor de salida.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_Compact pasa de nuevo al modo automático.
40000 Valor no válido en el parámetro Disturbance. El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y ActivateRecoverMode = TRUE, Distur­
bance se ajusta a cero. PID_Compact permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_Compact pasa al modo guardado en Mode. Si en la fase actual Distur­
bance no influye en el valor de salida, la optimización no se cancela.

[Link] Variable ActivateRecoverMode V2

La variable ActivateRecoverMode determina el comportamiento en caso de error. El


parámetro Error indica si hay algún un error pendiente en ese momento. Si no persiste el
error, se indica Error = FALSE. El parámetro ErrorBits indica qué errores han ocurrido.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 249
Instrucciones
10.1 PID_Compact

Modo automático

ATENCIóN
Su instalación puede sufrir daños.
Si se cumple ActivateRecoverMode = TRUE, incluso al rebasar los límites del valor real
PID_Compact permanece en el modo automático en caso de error. De este modo, su
instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_Compact cambia al modo de operación "Inactivo". El regulador no se activa hasta
que no se detecta un flanco descendente en Reset o un flanco ascendente en ModeActivate.
TRUE Si en el modo automático se producen errores con frecuencia, este ajuste empeorará el comportamiento
de regulación, ya que PID_Compact alterna entre el valor de salida calculado y el valor de salida sustitutivo
cada vez que se produce un error. Compruebe en tal caso el parámetro ErrorBits y elimine la causa de
error.
Si se producen uno o varios de los errores siguientes, PID_Compact permanece en modo automático:
• 0001h: El parámetro "Input" se encuentra fuera de los límites del valor real.
• 0800h: Error en tiempo de muestreo
• 40000h: Valor no válido en el parámetro Disturbance.
Si se produce uno o varios de los errores siguientes, PID_Compact pasa al modo "Valor de salida sustitutivo
con monitorización de errores":
• 0002h: Valor no válido en el parámetro Input_PER.
• 0200h: Valor no válido en el parámetro Input.
• 0400h: Error al calcular el valor de salida.
• 1000h: Valor no válido en el parámetro Setpoint.
Si se produce el siguiente error, PID_Compact pasa al modo "Valor de salida sustitutivo con monitorización
de errores" y desplaza el actuador hasta [Link]:
• 20000h: Valor no válido en la variable SubstituteOutput. El valor no tiene un formato numérico válido.
Este comportamiento no depende de SetSubstituteOutput.
En cuanto los errores dejan de estar activos, PID_Compact pasa de nuevo al modo automático.

Optimización inicial y optimización fina

ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_Compact cambia al modo de operación "Inactivo". El regulador no se activa hasta
que no se detecta un flanco descendente en Reset o un flanco ascendente en ModeActivate.
TRUE Si se produce el siguiente error, PID_Compact permanece en el modo activo:
• 0020h: La optimización inicial no está permitida durante la optimización fina.
Los siguientes errores se omiten:
• 10000h: Valor no válido en el parámetro ManualValue.
• 20000h: Valor no válido en la variable SubstituteOutput.
Con todos los demás errores, PID_Compact interrumpe la optimización y cambia al modo desde el que se
inició la optimización.

Regulación PID
250 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Modo manual
En el modo manual, ActivateRecoverMode no tiene efecto.

[Link] Variable Warning V2

Si hay varias advertencias presentes a la vez, los valores de la variable Warning se muestran
sumados en modo binario. Si se muestra p. ej. la advertencia 0003h, significa que están
presentes simultáneamente las advertencias 0001h y 0002h.
Warning Descripción
(DW#16#....)
0000 No hay ninguna advertencia.
0001 Durante la optimización inicial no se encontró el punto de inflexión.
0004 La consigna ha sido limitada a los límites ajustados.
0008 En el método de cálculo seleccionado no se han definido todas las propiedades necesarias del sistema regu­
lado. En sustitución se calcularon los parámetros PID con el método [Link] = 3.
0010 No se ha podido cambiar el modo de operación porque Reset = TRUE o ManualEnable = TRUE.
0020 El tiempo de muestreo del algoritmo PID está limitado por el tiempo de ciclo del OB invocante.
Para obtener mejores resultados, utilice tiempos de ciclo más cortos para el OB.
0040 El valor real ha rebasado por exceso uno de sus límites de advertencia.
0080 Valor no válido en Mode. El modo de operación no se conmuta.
0100 El valor manual ha sido limitado a los límites de la salida del regulador.
0200 No se admiten las reglas indicadas para la optimización. No se calculan parámetros PID.
1000 El valor de salida sustitutivo no puede alcanzarse porque está fuera de los límites del valor de salida.

Las siguientes advertencias se eliminan en cuanto la causa se soluciona:


• 0001h
• 0004h
• 0008h
• 0040h
• 0100h
Todas las demás advertencias se eliminan si hay un flanco ascendente en Reset o ErrorAck.

[Link] Variable IntegralResetMode V2

La variable IntegralResetMode determina cómo se preasigna la acción I [Link]:


• al cambiar del modo de operación "Inactivo" al "Modo automático"
• Con flanco TRUE -> FALSE en el parámetro Reset y el parámetro Mode = 3

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 251
Instrucciones
10.1 PID_Compact

Este ajuste surte efecto solo para un ciclo y solo es efectivo si la acción I está activada
(variable [Link] > 0.0)
IntegralReset­ Descripción
Mode
0 Filtrar
El valor de [Link] se preasigna de tal modo que la conmutación se realice sin discontinuidad,
es decir, el "Modo automático" se inicia partiendo del valor de salida = 0.0 (parámetro Output) y no se pro­
duce salto del valor de salida, con independencia del error de regulación (consigna - valor real).
1 Borrar
Se recomienda ajustar la ponderación de la acción P ([Link]) a 1.0 si se utiliza esta
opción.
El valor de [Link] se borra. Si existe un error de regulación, se produce un salto del valor de
salida. La dirección del salto del valor de salida depende de la ponderación configurada de la acción P (va­
riable [Link]) y del error de regulación:
• Ponderación de la acción P = 1.0:
El salto del valor de salida y el error de regulación tienen idéntico signo.
Ejemplo: si el valor real está por debajo de la consigna (error de regulación positivo), el valor de salida
salta a un valor positivo.
• Ponderación de la acción P < 1.0:
para errores de regulación grandes, el salto del valor de salida y el error de regulación tienen idéntico
signo.
Ejemplo: Si el valor real es muy inferior a la consigna (error de regulación positivo), el valor de salida
salta a un valor positivo.
Para errores de regulación pequeños, el salto del valor de salida y el error de regulación tienen distinto
signo.
Ejemplo: Si el valor real es ligeramente inferior a la consigna (error de regulación positivo), el valor de
salida salta a un valor negativo. Normalmente esto no es deseable, pues da lugar a un aumento provi­
sional del error de regulación.
Cuanto menor esté configurada la ponderación de la acción P, mayor debe ser el error de regulación, a
fin de que el salto del valor de salida conserve el signo.
Se recomienda ajustar la ponderación de la acción P ([Link]) a 1.0 si se utiliza esta
opción. En caso contrario, esto podría provocar el comportamiento descrito no deseado en caso de errores
de regulación pequeños. Alternativamente, también puede utilizar IntegralResetMode = 4. Esta opción ga­
rantiza que el signo del salto del valor de salida y del error de regulación sea idéntico con independencia
de la ponderación configurada de la acción P y del error de regulación.
2 Mantener
El valor de [Link] no se modifica. Mediante el programa de usuario se puede especificar un
nuevo valor.
3 Preasignar
El valor de [Link] se preasigna automáticamente como si en el último ciclo hubiese sido Out­
put = OverwriteInitialOutputValue.
4 Como el cambio de consigna (solo para PID_Compact con versión ≥ 2.3)
El valor de [Link] se preasigna automáticamente de forma que se obtenga un salto del valor
de salida similar al de un regulador PI en modo automático en caso de cambio de consigna del valor real
actual a la consigna actual.
Si existe un error de regulación, se produce un salto del valor de salida. El salto del valor de salida y el
error de regulación tienen idéntico signo.
Ejemplo: si el valor real está por debajo de la consigna (error de regulación positivo), el valor de salida sal­
ta a un valor positivo. Esto es independiente de la ponderación configurada de la acción P y del error de
regulación.

Regulación PID
252 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Si se asigna a IntegralResetMode un valor fuera del rango válido, PID_Compact se comportará


como con la preasignación de IntegralResetMode:
• PID_Compact hasta V2.2: IntegralResetMode = 1
• PID_Compact a partir de V2.3: IntegralResetMode = 4
Todas las afirmaciones anteriores sobre el signo del salto del valor de salida suponen un
sentido de regulación normal (variable [Link] = FALSE). En caso de sentido de
regulación invertido ([Link] = TRUE), se obtiene un signo invertido del salto del
valor de salida.

[Link] Programa de ejemplo para PID_Compact

En el siguiente ejemplo se regulan valores de temperatura con el objeto tecnológico de la


instrucción "PID_Compact". Los valores de temperatura se simulan a partir de un bloque, que
representa un elemento de retardo de tercer orden (elemento PT3). Los parámetros PID del
objeto tecnológico se ajustan automáticamente en la optimización inicial.
VHWSRLQW 3,'B&RPSDFW RXWSXW9DOXH 6/,B352&B& LQSXW9DOXH
&RQVLJQD 5HJXODGRU 9DULDEOHPDQLSXODGD 3URFHVR 9DORUUHDO
UHJXODGR

9DORUUHDO

Almacenamiento de los datos


Para almacenar los datos para la interconexión, se crean siete variables en un bloque de datos
global.

Interconexión de los parámetros


Las siguientes interconexiones se llaman en un OB de alarma cíclica.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 253
Instrucciones
10.1 PID_Compact

Segmento 1: Los parámetros de la instrucción "PID_Compact" se interconectan como sigue:

Segmento 2: Los parámetros del bloque que simula valores de temperatura "SLI_PROC_C" se
interconectan como sigue.

Objeto tecnológico
El objeto tecnológico se puede configurar a través de las propiedades de la instrucción
"PID_Compact" o a través de la ruta Objeto tecnológico > Configuración. En el ejemplo son

Regulación PID
254 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

importantes el tipo de regulación y los parámetros de entrada y salida. A través del tipo de
regulación se determina una preselección para la unidad del valor que se regula. En este
ejemplo se utiliza como tipo de regulación "Temperatura" con la unidad "°C". Los parámetros
de "PID_Compact" ya están interconectados con variables globales. En consecuencia, es
suficiente indicar el uso de los parámetros Input y Output.

Procedimiento para iniciar la regulación


Tras cargar en la CPU, PID_Compact se encuentra en modo manual con el valor manual 0.0.
Para comenzar la regulación, proceda del siguiente modo:
1. Abra la puesta en marcha del objeto tecnológico "SLI_Tech_PID_Compact".
2. En el área "Medición", haga clic en el botón "Iniciar".

La medición se inicia y es posible activar PID_Compact.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 255
Instrucciones
10.1 PID_Compact

3. La optimización inicial está seleccionada.


En el área "Tipo de optimización", haga clic en el botón "Iniciar".
Se realiza una optimización inicial. Los parámetros PID se adaptan automáticamente al
proceso regulado. Una vez concluida la optimización inicial, PID_Compact cambia al modo
automático.

NOTA
Alternativa a iniciar PID_Compact
Como alternativa, PID_Compact se puede poner en modo automático en el área "Estado
online del regulador" con el botón "Detener PID_Compact" / "Iniciar PID_Compact" sin una
optimización inicial. De ese modo el regulador utiliza por defecto valores para los
parámetros PID y muestra un comportamiento de regulación peor para la aplicación en
cuestión.

Procedimiento para detener la regulación


Para detener y finalizar PID_Compact y el programa, proceda como sigue:
1. En el objeto tecnológico "SLI_Tech_PID_Compact", haga clic en el botón "Detener
PID_Compact" en el área "Estado online del regulador".

La instrucción "PID_Compact" finaliza la regulación y emite "0.0" como valor manipulado.


2. En el área "Medición", haga clic en el botón "Detener".
3. Para poner el valor real de inmediato al valor "0.0", proceda del siguiente modo:
En el bloque "SLI_OB_PID_Compact", ponga la variable "resetAll" al valor "TRUE" y a
continuación al valor "FALSE".

Instrucción "PID_Compact"
En el parámetro Setpoint ("setpoint") se preasigna el valor de consigna para la temperatura
que se regula. Si la instrucción "PID_Compact" se ha iniciado a través del objeto tecnológico,
se inicia la regulación. La instrucción "PID_Compact" emite un valor manipulado en el
parámetro de salida Output ("outputValue"). A través del parámetro de entrada Input
("inputValue") se transmite a la instrucción "PID_Compact" el valor real de la temperatura.
Dependiendo de la evolución de la diferencia entre la consigna ("setpoint") y el valor real
("inputValue"), la instrucción "PID_Compact" adapta el valor manipulado ("outputValue"). Este

Regulación PID
256 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

proceso se repite de forma que el valor real ("inputValue") se aproxime a la consigna


("setpoint") a través del valor manipulado ("outputValue").
En el parámetro de salida State ("state") se muestra el modo de operación actual de la
instrucción "PID_Compact". Tras una optimización inicial (el valor de "state" es "1"),
PID_Compact conmuta al modo automático (el valor es "3").
El parámetro de salida Error ("error") muestra actualmente que no hay ningún error. En caso
de error, el parámetro de salida ErrorBits ("errorBits") proporciona información sobre el tipo
de error. Si se produce un error, este puede acusarse con el botón "ErrorAck" en el área Estado
de optimización del objeto tecnológico.

Bloque "SLI_PROC_C"
El bloque "SLI_PROC_C" simula el valor real ("inputValue") de la temperatura creciente de una
instalación. El bloque "SLI_PROC_C" recibe el valor manipulado del regulador ("outputValue")
y simula el comportamiento de temperatura del proceso regulado. Esta temperatura se
incorpora al regulador como valor real ("inputValue").

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 257
Instrucciones
10.1 PID_Compact

Un cambio de los valores de la variable "resetAll" (del parámetro comRst) tiene las siguientes
consecuencias:

Parámetro comRst ("re­ La instrucción "PID_Compact" se eje­ La instrucción "PID_Compact" se ha


setAll") cuta detenido
comRst ("resetAll") per­ El bloque "SLI_PROC_C" emite, basán­ El bloque "SLI_PROC_C" no recibe nin­
manece en el valor "FAL­ dose en un valor manipulado ("out­ gún valor manipulado > "0.0", pero
SE" putValue"), un nuevo valor real ("in­ continúa emitiendo un valor real >
putValue"). "0.0".
comRst ("resetAll"): Cam­ Tanto el valor manipulado ("outputVa­ El valor real devuelto ("inputValue") o
bio de "FALSE" al valor lue") como el valor real devuelto ("in­ la temperatura del bloque
"TRUE" putValue") se ponen a "0.0". "SLI_PROC_C" se pone a "0.0".
comRst ("resetAll"): Cam­ La regulación de la temperatura co­ El valor real devuelto o la temperatura
bio de "TRUE" al valor mienza de nuevo. que se emite ("inputValue") sigue
"FALSE" siendo "0.0".

Regulación PID
258 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Código de programa
Encontrará más información sobre el código de programa del ejemplo anterior bajo la palabra
clave "Sample Library for Instructions".

10.1.5 PID_Compact V1

[Link] Descripción PID_Compact V1

Descripción
La instrucción PID_Compact ofrece un regulador PID con optimización integrada para los
modos automático y manual.

Llamada
PID_Compact se llama en un periodo constante del tiempo de ciclo del OB invocante
(preferentemente en un OB de alarma cíclica).

Cargar en dispositivo
Los valores actuales de variables remanentes solo se actualizan si se carga PID_Compact por
completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Arranque
PID_Compact arranca simultáneamente con la CPU en el último modo de operación activo.
Para dejar PID_ Compact en el modo de operación "Inactivo", es necesario ajustar
sb_RunModeByStartup = FALSE.

Vigilancia del tiempo de muestreo PID_Compact


En el caso ideal, el tiempo de muestreo equivale al tiempo de ciclo del OB invocante. La
instrucción PID_Compact mide en cada caso el tiempo que transcurre entre dos llamadas.
Este es el tiempo de muestreo actual. Con cada cambio de modo de operación y en el primer
arranque se calcula la media de los 10 primeros tiempos de muestreo. Si el tiempo de
muestreo actual difiere mucho de este valor medio, se produce un error (Error = 0800 hex) y
PID_Compact cambia al modo de operación "Inactivo".
Durante la optimización, PID_Compact a partir de la versión 1.1 cambia al modo de operación
"Inactivo" cuando se dan las siguientes condiciones:
• Valor medio nuevo >= 1,1 veces el valor medio antiguo
• Valor medio nuevo <= 0,9 veces el valor medio antiguo

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 259
Instrucciones
10.1 PID_Compact

PID_Compact a partir de la versión 1.1 cambia al modo de operación "Inactivo" cuando se dan
las siguientes condiciones en el modo automático:
• Valor medio nuevo >= 1,5 veces el valor medio antiguo
• Valor medio nuevo <= 0,5 veces el valor medio antiguo
Durante la optimización y el modo automático PID_Compact 1.0 cambia al modo de
operación "Inactivo" cuando se dan las siguientes condiciones:
• Valor medio nuevo >= 1,1 veces el valor medio antiguo
• Valor medio nuevo <= 0,9 veces el valor medio antiguo
• Tiempo de muestreo actual >= 1,5 veces el valor medio actual
• Tiempo de muestreo actual <= 0,5 veces el valor medio actual

Tiempo de muestreo del algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_Compact se ejecutan con cada llamada.

Algoritmo PID
PID_Compact es un regulador PIDT1 con Anti-Windup y ponderación de las acciones P y D. El
valor de salida se calcula con la siguiente fórmula.
1 TD · s
y = Kp [ (b · w - x) + T · s
I
(w - x) +
a · TD · s + 1
(c · w - x) ]
Símbolo Descripción
y Valor de salida
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (T1 = a x TD)
Tiempo derivativo
c Ponderación de la acción D

Regulación PID
260 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Diagrama de bloques PID_Compact

EB,QSXWB3(5B2Q
&53B,1 6FDOH 39B$/50 ,QSXW:DUQLQJB+
,QSXWB3(5
  ,QSXW:DUQLQJB/


,QSXW
3,'7
$QWL:LQGXS
/LPLW
6HWSRLQW

,19 EB,QY&WUO



 2XWSXW

0DQXDO(QDEOH

/LPLW &53B287
0DQXDO9DOXH  2XWSXWB3(5



3:0
2XWSXWB3:0

Diagrama de bloques PIDT1 con Anti-Windup

6HWSRLQW Z E

$QWL:LQGXS
.3
/,0,7 , \

6FDOHG,QSXW [ '7


Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 261
Instrucciones
10.1 PID_Compact

Comportamiento en caso de error


Cuando ocurren errores, estos se indican en el parámetro Error y PID_Compact cambia al
modo de operación "Inactivo". Con el parámetro Reset se resetean los errores.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal. Para refrigeración o para las regulaciones
de desagües puede ser necesario invertir el sentido de regulación. PID_Compact no funciona
con ganancia proporcional negativa. Si InvertControl = TRUE, un error de regulación
ascendente provocará una reducción del valor de salida. El sentido de regulación se tiene en
cuenta también durante la optimización inicial y la optimización fina.
Consulte
también
Tipo de regulación V1 (Página 91)

[Link] Parámetros de entrada PID_Compact V1

Tabla 10-4  
Parámetro Tipo de da­ Ajuste predeter­ Descripción
tos minado
Setpoint REAL 0.0 Consigna del regulador PID en modo automático
Input REAL 0.0 Una variable del programa de usuario se utiliza como origen del valor
real.
Si utiliza el parámetro Input, debe cumplirse lo siguiente:
sPid_Cmpt.b_Input_PER_On = FALSE.
Input_PER WORD W#16#0 Entrada analógica como origen del valor real
Si utiliza el parámetro Input_PER, debe cumplirse lo siguiente:
sPid_Cmpt.b_Input_PER_On = TRUE.
ManualEnable BOOL FALSE • El flanco FALSE -> TRUE selecciona el modo de operación "Modo ma­
nual", State = 4, sRet.i_Mode no cambia.
• El flanco TRUE -> FALSE selecciona el último modo de operación acti­
vo, State =sRet.i_Mode
Mientras ManualEnable = TRUE un cambio de sRet.i_Mode no tendrá
efecto. Sólo con el flanco TRUE -> FALSE en ManualEnable , se tiene en
cuenta el cambio de sRet.i_Mode.
PID_Compact V1.2 y PID_Compact V1.0
Si al arrancar la CPU ManualEnable = TRUE, PID_Compact arranca en mo­
do manual. No es necesario que se produzca un flanco ascendente (FAL­
SE > TRUE) en ManualEnable.
PID_Compact V1.1
Al arrancar la CPU, PID_Compact únicamente pasa al modo manual si se
detecta un flanco ascendente (FALSE->TRUE) en ManualEnable . Si no se
detecta un flanco ascendente, PID_Compact arranca en el último modo
de operación en el que ManualEnable era FALSE.
ManualValue REAL 0.0 Valor manual
Este valor se utiliza en el modo manual como valor de salida.
Reset BOOL FALSE El parámetro Reset (Página 271) realiza un rearranque del regulador.

Regulación PID
262 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

[Link] Parámetros de salida PID_Compact V1

Tabla 10-5  
Parameter Tipo de da­ Ajuste predeter­ Descripción
tos minado
ScaledInput REAL 0.0 Salida del valor real escalado
Las salidas "Output", "Output_PER" y "Output_PWM" pueden utilizarse paralelamente.
Output REAL 0.0 Valor de salida en el formato REAL
Output_PER WORD W#16#0 Valor de salida analógico
Output_PWM BOOL FALSE Valor de salida modulado por ancho de impulso
El valor de salida se obtiene mediante tiempos de conexión y descone­
xión variables.
SetpointLimit_H BOOL FALSE Cuando SetpointLimit_H = TRUE, significa que se ha alcanzado el lími­
te superior absoluto de la consigna. En la CPU la consigna se limita al
límite superior absoluto configurado para la consigna. Como límite su­
perior de la consigna se ajusta de forma predeterminada el límite su­
perior absoluto configurado para el valor real.
Si se configura sPid_Cmpt.r_Sp_Hlm a un valor que se encuentre den­
tro de los límites del valor real, este valor se utilizará como límite supe­
rior de la consigna.
SetpointLimit_L BOOL FALSE Cuando SetpointLimit_L = TRUE, significa que se ha alcanzado el límite
inferior absoluto de la consigna. En la CPU la consigna se limita al lími­
te inferior absoluto configurado para la consigna. Como límite inferior
de la consigna se ajusta de forma predeterminada el límite inferior ab­
soluto configurado para el valor real.
Si se configura sPid_Cmpt.r_Sp_Llm a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite inferior
de la consigna.
InputWarning_H BOOL FALSE Cuando InputWarning_H = TRUE, significa que se ha alcanzado o reba­
sado el límite superior de advertencia del valor real.
InputWarning_L BOOL FALSE Cuando InputWarning_L = TRUE, significa que se ha alcanzado o reba­
sado por defecto el límite inferior de advertencia del valor real.
State INT 0 El parámetro State (Página 268) indica el modo de operación actual
del regulador PID. El modo de operación se cambia con la variable
sRet.i_Mode.
• State = 0: Inactivo
• State = 1: optimización inicial
• State = 2: Optimización fina
• State = 3: Modo automático
• State = 4: Modo manual
Error DWORD W#16#0 El parámetro Error (Página 271) indica los mensajes de error.
Error = 0000: No hay ningún error.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 263
Instrucciones
10.1 PID_Compact

[Link] Variables estáticas PID_Compact V1

NOTA
No se deben modificar las variables que no aparecen listadas. Estas solo se utilizan
internamente.
Modifique las variables marcadas con (1) solo en el modo de operación "Inactivo" para evitar
un comportamiento erróneo del regulador PID. El modo de operación "Inactivo" se fuerza con
el valor "0" en la variable "sRet.i_Mode".

Tabla 10-6  
Variable Tipo de da­ Ajuste prede­ Descripción
tos terminado
sb_GetCycleTime BOOL TRUE Si sb_GetCycleTime = TRUE se empieza a medir auto­
máticamente el tiempo de ciclo. Una vez finalizada la
medición, [Link] = FALSE.
sb_EnCyclEstimation BOOL TRUE Si sb_EnCyclEstimation = TRUE se calcula el tiempo de
muestreo PID_Compact.
sb_EnCyclMonitoring BOOL TRUE Si sb_EnCyclMonitoring = FALSE no se vigila el tiempo
de muestreo PID_Compact. Si no es posible ejecutar
PID_Compact dentro del tiempo de muestreo, no se
genera el error 0800 y PID_Compact no cambia al mo­
do de operación "Inactivo".
sb_RunModeByStartup BOOL TRUE Activar último modo de operación después del rearran­
que completo de la CPU
Si sb_RunModeByStartup = FALSE, el regulador perma­
nece inactivo tras un arranque de la CPU.
Si sb_RunModeByStartup = TRUE, el regulador regresa
al último modo de operación activo tras el arranque de
la CPU.
si_Unit INT 0 Unidad física del valor real y de la consigna, p. ej. ºC o
ºF.
si_Type INT 0 Magnitud física del valor real y de la consigna, p. ej.
temperatura
sd_Warning DWORD DW#16#0 La variable sd_warning (Página 273) muestra las adver­
tencias desde Reset o desde el último cambio del modo
de operación.
sBackUp.r_Gain REAL 1.0 Ganancia proporcional almacenada
Los valores de la estructura sBackUp pueden volverse a
cargar con sPid_Cmpt.b_LoadBackUp = TRUE.
sBackUp.r_Ti REAL 20.0 Tiempo de integración [s] almacenado
sBackUp.r_Td REAL 0.0 Tiempo derivativo [s] almacenado
sBackUp.r_A REAL 0.0 Coeficiente almacenado para el retardo de la acción
derivada
sBackUp.r_B REAL 0.0 Factor de ponderación almacenado de la acción P
sBackUp.r_C REAL 0.0 Factor de ponderación almacenado de la acción D
sBackUp.r_Cycle REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID

Regulación PID
264 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
sPid_Calc.r_Cycle(1) REAL 0.1 Tiempo de muestreo de la instrucción PID_Compact
r_Cycle se calcula automáticamente y equivale normal­
mente al tiempo de ciclo del OB invocante.
sPid_Calc.b_RunIn BOOL FALSE • b_RunIn = FALSE
Si la optimización fina se inicia desde los modos de
operación Inactivo o Manual, se inicia una optimi­
zación inicial. Si no se cumplen los requisitos para
la optimización inicial, PID_Compact se comporta
como si b_RunIn = TRUE.
Si la optimización fina se inicia desde el modo auto­
mático, los parámetros PID existentes se regulan a
la consigna.
Solo entonces comienza la optimización fina. Si no
es preciso realizar la optimización inicial,
PID_Compact cambia al modo de operación "Inacti­
vo".
• b_RunIn = TRUE
La optimización inicial se omite. PID_3Compact in­
tenta alcanzar la consigna con el valor de salida mí­
nimo o máximo, lo que puede ocasionar una so­
breoscilación muy alta. La optimización fina se ini­
cia entonces automáticamente.
b_RunIn se ajusta a FALSE después de la optimiza­
ción fina.
sPid_Calc.b_CalcParamSUT BOOL FALSE Si b_CalcParamSUT = TRUE, se vuelven a calcular los
parámetros de la optimización inicial. De este modo
puede cambiarse el método para calcular los paráme­
tros sin que sea necesario repetir la optimización.
b_CalcParamSUT se ajusta a FALSE después del cálculo.
sPid_Calc.b_CalcParamTIR BOOL FALSE Si b_CalcParamTIR = TRUE, se vuelven a calcular los pa­
rámetros de la optimización fina. De este modo puede
cambiarse el método para calcular los parámetros sin
que sea necesario repetir la optimización.
b_CalcParamTIR se ajusta a FALSE después del cálculo.
sPid_Calc.i_CtrlTypeSUT INT 0 Calcular los parámetros durante la optimización inicial
según el método:
• i_CtrlTypeSUT = 0: PID según Chien, Hrones y Res­
wick
• i_CtrlTypeSUT = 1: PI según Chien, Hrones y Res­
wick
sPid_Calc.i_CtrlTypeTIR INT 0 Calcular los parámetros durante la optimización fina
según el método:
• i_CtrlTypeTIR = 0: PID automático
• i_CtrlTypeTIR = 1: PID rápido (comportamiento de
regulación más rápido con amplitudes del valor de
salida mayores que las de i_CtrlTypeTIR = 2)
• i_CtrlTypeTIR = 2: PID lento (comportamiento de re­
gulación más lento con amplitudes del valor de sali­
da menores que las de i_CtrlTypiTIR = 1)
• i_CtrlTypeTIR = 3: PID Ziegler-Nichols
• i_CtrlTypeTIR = 4: PI Ziegler-Nichols
• i_CtrlTypeTIR = 5: P Ziegler-Nichols

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 265
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
Para poder repetir el cálculo de los parámetros PID con
b_CalcParamTIR y i_CtrlTypeTIR = 0, 1 o 2, la optimiza­
ción fina anterior debe haberse ejecutado también con
i_CtrlTypeTIR = 0, 1 o 2.
De no ser así, se utiliza i_CtrlTypeTIR = 3.
Siempre es posible volver a calcular los parámetros PID
con b_CalcParamTIR y i_CtrlTypeTIR = 3, 4 o 5.
sPid_Calc.r_Progress REAL 0.0 Progreso de la optimización en porcentaje (0,0 - 100,0)
sPid_Cmpt.r_Sp_Hlm(1) REAL +3.402822e+­ Límite superior de la consigna
38 Si se configura sPid_Cmpt.r_Sp_Hlm a un valor que se
encuentre fuera de los límites del valor real, el límite
superior absoluto configurado para el valor real se utili­
za como límite superior de la consigna.
Si se configura sPid_Cmpt.r_Sp_Hlm a un valor que se
encuentre dentro de los límites del valor real, este va­
lor se utiliza como límite superior de la consigna.
sPid_Cmpt.r_Sp_Llm(1) REAL -3.402822e+3­ Límite inferior de la consigna
8 Si se configura sPid_Cmpt.r_Sp_Llm a un valor que se
encuentre fuera de los límites del valor real, el límite
inferior absoluto configurado para el valor real se utili­
za como límite inferior de la consigna.
Si se configura sPid_Cmpt.r_Sp_Llm a un valor que se
encuentre dentro de los límites del valor real, este va­
lor se utiliza como límite inferior de la consigna.
sPid_Cmpt.r_Pv_Norm_IN_1(1) REAL 0.0 Escalado Input_PER abajo
Mediante los dos pares de valores r_Pv_Norm_OUT_1,
r_Pv_Norm_IN_1 y r_Pv_Norm_OUT_2,
r_Pv_Norm_IN_2 de la estructura sPid_Cmpt, Input_PER
se convierte en porcentaje.
sPid_Cmpt.r_Pv_Norm_IN_2(1) REAL 27648.0 Escalado Input_PER arriba
Mediante los dos pares de valores r_Pv_Norm_OUT_1,
r_Pv_Norm_IN_1 y r_Pv_Norm_OUT_2,
r_Pv_Norm_IN_2 de la estructura sPid_Cmpt, Input_PER
se convierte en porcentaje.
sPid_Cmpt.r_Pv_Norm_OUT_1(1) REAL 0.0 Valor real inferior escalado
Mediante los dos pares de valores r_Pv_Norm_OUT_1,
r_Pv_Norm_IN_1 y r_Pv_Norm_OUT_2,
r_Pv_Norm_IN_2 de la estructura sPid_Cmpt, Input_PER
se convierte en porcentaje.
sPid_Cmpt.r_Pv_Norm_OUT_2(1) REAL 100.0 Valor real superior escalado
Mediante los dos pares de valores r_Pv_Norm_OUT_1,
r_Pv_Norm_IN_1 y r_Pv_Norm_OUT_2,
r_Pv_Norm_IN_2 de la estructura sPid_Cmpt, Input_PER
se convierte en porcentaje.
sPid_Cmpt.r_Lmn_Hlm(1) REAL 100.0 Límite superior del valor de salida para el parámetro de
salida "Output"
sPid_Cmpt.r_Lmn_Llm(1) REAL 0.0 Límite inferior del valor de salida para el parámetro de
salida "Output"

Regulación PID
266 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
sPid_Cmpt.b_Input_PER_On(1) BOOL TRUE Si b_Input_PER_On = TRUE, se utiliza el parámetro
Input_PER. Si b_Input_PER_On = FALSE, se utiliza el pa­
rámetro Input.
sPid_Cmpt.b_LoadBackUp BOOL FALSE Activación del juego de parámetros de backup Si hu­
biera fallado una optimización, es posible volver a acti­
var los parámetros PID anteriores activando este bit.
sPid_Cmpt.b_InvCtrl(1) BOOL FALSE Inversión del sentido de regulación
Si b_InvCtrl = TRUE, un error de regulación ascendente
provocará una reducción del valor de salida.
sPid_Cmpt.r_Lmn_Pwm_PPTm(1) REAL 0.0 El tiempo mínimo de conexión de la modulación de an­
cho de impulsos en segundos se redondea a
r_Lmn_Pwm_PPTm = r_Cycle o
r_Lmn_Pwm_PPTm = n*r_Cycle
sPid_Cmpt.r_Lmn_Pwm_PBTm(1) REAL 0.0 El tiempo mínimo de desconexión de la modulación de
ancho de impulsos en segundos se redondea a
r_Lmn_Pwm_PBTm = r_Cycle o
r_Lmn_Pwm_PBTm = n*r_Cycle
sPid_Cmpt.r_Pv_Hlm(1) REAL 120.0 Límite superior del valor real
En la entrada de periferia, el valor real puede encon­
trarse como máximo un 18% por encima del rango nor­
malizado (margen de saturación). No se comunica nin­
gún error más debido al rebasamiento por exceso del
"Límite superior del valor real". Únicamente se detec­
tan la rotura de hilo y el cortocircuito y PID_Compact
pasa al modo de operación "Inactivo".
r_Pv_Hlm > r_Pv_Llm
sPid_Cmpt.r_Pv_Llm(1) REAL 0.0 Límite inferior del valor real
r_Pv_Llm < r_Pv_Hlm
sPid_Cmpt.r_Pv_HWrn(1) REAL +3.402822e+­ Límite superior de advertencia del valor real
38 Si se configura r_Pv_HWrn a un valor que se encuentre
fuera de los límites del valor real, el límite superior ab­
soluto configurado para el valor real se utiliza como lí­
mite superior de advertencia.
Si se configura r_Pv_HWrn a un valor que se encuentre
dentro de los límites del valor real, este valor se utiliza
como límite superior de advertencia.
r_Pv_HWrn > r_Pv_LWrn
r_Pv_HWrn ≤ r_Pv_Hlm
sPid_Cmpt.r_Pv_LWrn(1) REAL -3.402822e+3­ Límite inferior de advertencia del valor real
8 Si se configura r_Pv_LWrn a un valor que se encuentre
fuera de los límites del valor real, el límite inferior ab­
soluto configurado para el valor real se utiliza como lí­
mite inferior de advertencia.
Si se configura r_Pv_LWrn a un valor que se encuentre
dentro de los límites del valor real, este valor se utiliza
como límite inferior de advertencia.
r_Pv_LWrn < r_Pv_HWrn
r_Pv_LWrn ≥ r_Pv_LWrn
sPidCalc.i_Ctrl_IOutv(1) REAL 0.0 Acción I actual

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 267
Instrucciones
10.1 PID_Compact

Variable Tipo de da­ Ajuste prede­ Descripción


tos terminado
sParamCalc.i_Event_SUT INT 0 La variable i_Event_SUT (Página 274) muestra la fase
actual de la "optimización inicial":
sParamCalc.i_Event_TIR INT 0 La variable i_Event_TIR (Página 274) muestra la fase
actual de la "optimización fina":
sRet.i_Mode INT 0 El modo de operación cambia controlado por flanco.
El siguiente modo de operación se activa al cambiar a
• i_Mode = 0: Modo de operación "Inactivo" (parada
del regulador)
• i_Mode = 1: Modo de operación "Optimización ini­
cial"
• i_Mode = 2: Modo de operación "Optimización fina"
• i_Mode = 3: Modo de operación "Modo automático"
• i_Mode = 4: Modo de operación "Modo manual"
i_Mode es remanente.
sRet.r_Ctrl_Gain(1) REAL 1.0 Ganancia proporcional activa
Gain es remanente.
sRet.r_Ctrl_Ti(1) REAL 20.0 • r_Ctrl_Ti > 0.0: Tiempo de integración activo
• r_Ctrl_Ti = 0.0: La acción I está desactivada
r_Ctrl_Ti es remanente.
sRet.r_Ctrl_Td(1) REAL 0.0 • r_Ctrl_Td > 0.0: Tiempo derivativo activo
• r_Ctrl_Td = 0.0: La acción D está desactivada
r_Ctrl_Td es remanente.
sRet.r_Ctrl_A(1) REAL 0.0 Coeficiente activo para el retardo de la acción derivada
r_Ctrl_A es remanente.
sRet.r_Ctrl_B(1) REAL 0.0 Ponderación activa de la acción P
r_Ctrl_B es remanente.
sRet.r_Ctrl_C(1) REAL 0.0 Ponderación activa de la acción D
r_Ctrl_C es remanente.
sRet.r_Ctrl_Cycle(1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID
r_Ctrl_Cycle se determina durante la optimización y se
redondea a un múltiplo entero de r_Cycle.
r_Ctrl_Cycle se utiliza como duración de periodo de la
modulación por ancho de impulso.
r_Ctrl_Cycle es remanente.

Consulte
también
Cargar objetos tecnológicos en el dispositivo (Página 45)

[Link] Parámetros State y sRet.i_Mode V1

Interrelación de los parámetros


El parámetro State indica el modo de operación actual del regulador PID. El parámetro State
no puede modificarse.
Para cambiar el modo de operación debe modificarse la variable sRet.i_Mode. Esto también se
aplica cuando sRet.i_Mode ya contiene el valor para el nuevo modo de operación. A

Regulación PID
268 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

continuación, por ejemplo, puede ajustarse primero sRet.i_Mode = 0 y, después, sRet.i_Mode


= 3. Si el modo de operación actual del regulador permite este cambio, State adopta el valor
de sRet.i_Mode.
Cuando PID_Compact cambia automáticamente el modo de operación, se aplica lo siguiente:
State != sRet.i_Mode.
Ejemplos:
• Una optimización inicial correcta
State = 3 y sRet.i_Mode = 1
• En caso de error
State = 0 y sRet.i_Mode mantiene el valor que tenía hasta ahora; por ejemplo,
sRet.i_Mode = 3
• ManualEnalbe = TRUE
State = 4 y sRet.i_Mode permanecen en el valor actual; por ejemplo, sRet.i_Mode = 3

NOTA
Por ejemplo, es posible repetir una optimización fina correcta sin tener que finalizar el
modo automático con i_Mode = 0.
Si en un ciclo ajusta sRet.i_Mode a un valor no válido, como puede ser, 9999, esto no
afecta en modo alguno a State. En el siguiente ciclo se ajusta Mode = 2. Es posible crear
una modificación en sRet.i_Mode sin tener que cambiar primero al modo de operación
"Inactivo".

Significado de los valores

State / Descripción del modo de operación


sRet.i_Mode
0 Inactivo
El regulador está apagado.
Antes de realizar una optimización inicial el regulador se encuentra en el modo de operación "Inactivo".
Durante el funcionamiento, el regulador PID cambia al modo de operación "Inactivo" cuando se produce un
error o cuando se hace clic en el botón "Desactivar regulador" en la ventana de puesta en servicio.
1 Optimización inicial
La optimización inicial determina la respuesta del proceso a un escalón del valor de salida y busca el punto de
inflexión. A partir de la inclinación máxima y del tiempo muerto del sistema regulado se calculan los paráme­
tros PID óptimos.
Requisitos para la optimización inicial
• El regulador se encuentra en el modo de operación inactivo o manual
• ManualEnable = FALSE
• El valor real no debe aproximarse demasiado a la consigna.
|Setpoint - Input| > 0.3 * |sPid_Cmpt.r_Pv_Hlm - sPid_Cmpt.r_Pv_Llm| y
|Setpoint - Input| > 0.5 * |Setpoint|
• La consigna no puede modificarse durante la optimización inicial.
Cuanto más estable sea el valor real, tanto más fácil y preciso será el cálculo de los parámetros PID. El ruido
del valor real es admisible en la medida en que el aumento del valor real sea significantemente superior al
propio ruido.
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de los mismos y es posible
reactivarlos con sPid_Cmpt.b_LoadBackUp.
Una vez realizada correctamente la optimización inicial se pasa al modo automático; si dicha optimización no
se realiza correctamente, se pasa al modo de operación "Inactivo".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 269
Instrucciones
10.1 PID_Compact

State / Descripción del modo de operación


sRet.i_Mode
Se muestra la fase de la optimización inicial con Variable i_Event_SUT V1 (Página 274).
2 Optimización fina
La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros PID se optimi­
zan a partir de la amplitud y la frecuencia de esta oscilación. Se analizan las diferencias entre la respuesta de
proceso durante la optimización inicial y la optimización fina. A partir de los resultados se vuelven a calcular
todos los parámetros PID. Los parámetros PID existentes después de la optimización fina muestran en su ma­
yoría un comportamiento de guía y ante fallos mucho mejor que los parámetros PID de la optimización inicial.
PID_Compact intenta generar automáticamente una oscilación que es mayor que el ruido del valor real. La es­
tabilidad del valor real ejerce tan sólo una mínima influencia sobre la optimización fina.
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de los mismos y es posible
reactivarlos con sPid_Cmpt.b_LoadBackUp.
Requisitos para la optimización fina:
• No se esperan perturbaciones.
• La consigna y el valor real se encuentran dentro de los límites configurados.
• La consigna no puede modificarse durante la optimización fina.
• ManualEnable = FALSE
• Modo de operación Automático (State = 3), Inactivo (State = 0) o Manual (State = 4)
La optimización fina se realiza en el momento del inicio tal como se indica a continuación:
• Modo automático (State = 3)
Si desea mejorar los parámetros PID existentes a través de la optimización, inicie la optimización fina des­
de el modo automático.
PID_Comact regula con los parámetros PID existentes hasta que el lazo de regulación es estacionario y se
han cumplido las condiciones para una optimización fina. Sólo entonces comienza la optimización fina.
• Modo Inactivo (State = 0) o Manual (State = 4)
Si se cumplen las condiciones para optimización inicial, ésta se inicia. Con los parámetros PID calculados,
la regulación se realiza hasta que el lazo de regulación es estacionario y se han cumplido las condiciones
para una optimización fina. Sólo entonces comienza la optimización fina. Si no es preciso realizar la opti­
mización inicial, PID_Compact cambia al modo de operación "Inactivo".
Si el valor real para una optimización inicial se encuentra ya muy cerca de la consigna o si
sPid_Calc.b_RunIn = TRUE, se intenta alcanzar la consigna con el valor de salida máximo o mínimo. lo que
puede ocasionar una sobreoscilación muy alta.
Una vez realizada correctamente la optimización fina, el regulador cambia al modo de operación "Automático"
y, si dicha optimización no se ejecuta correctamente, se pasa al modo de operación "Inactivo".
La fase de la optimización fina se muestra con Variable i_Event_TIR V1 (Página 274).
3 Modo automático
En el modo automático, PID_Compact regula el sistema regulado conforme a los parámetros predefinidos.
Cuando se cumple uno de los requisitos siguientes, se cambia al modo automático:
• Optimización inicial finalizada correctamente.
• Optimización fina finalizada correctamente.
• Cambio de la variable sRet.i_Mode al valor 3.
Si se conecta la CPU o se cambia de STOP a RUN, PID_Compact arranca en el último modo de operación activo.
Para dejar PID_Compact en el modo de operación "Inactivo", ajuste sb_RunModeByStartup = FALSE.
4 Modo manual
En el modo manual se especifica un valor de salida manual en el parámetro ManualValue.
Este modo de operación se activa si sRet.i_Mode = 4 o en caso de un flanco ascendente en ManualEnable. Si
ManualEnable adopta el valor TRUE, únicamente cambia State. sRet.i_Mode permanece en el valor actual.
Con un flanco descendente en ManualEnable, PID_Compact regresa al modo de operación previo.
El cambio al modo automático se efectúa sin discontinuidad.

Regulación PID
270 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Consulte
también
Parámetros de salida PID_Compact V1 (Página 263)
Optimización inicial V1 (Página 102)
Optimización fina V1 (Página 103)
Modo de operación "Modo manual" V1 (Página 105)
Variable i_Event_SUT V1 (Página 274)
Variable i_Event_TIR V1 (Página 274)

[Link] Parámetro Error V1

Si hay varios errores presentes a la vez, los valores del código de error se muestran sumados
binariamente. Si se muestra, p. ej., el código de error 0003, significa que están presentes
simultáneamente los errores 0001 y 0002.
Error Descripción

(DW#16#...)
0000 No hay ningún error.
0001 El parámetro "Input" se encuentra fuera de los límites del valor real.
• Input > sPid_Cmpt.r_Pv_Hlm o bien,
• Input < sPid_Cmpt.r_Pv_Llm
Para poder desplazar de nuevo el actuador, previamente se debe eliminar el error.
0002 Hay un valor no válido en el parámetro "Input_PER". Compruebe si hay un error en la entrada analógica.
0004 Error durante la optimización fina. No se ha podido mantener la oscilación del valor real.
0008 Error al iniciar la optimización inicial. El valor real se aproxima demasiado a la consigna. Inicie la optimiza­
ción fina.
0010 Se ha cambiado la consigna durante la optimización.
0020 La optimización inicial no está permitida en el modo automático ni durante la optimización fina.
0080 Error durante la optimización inicial. Los límites del valor de salida no están configurados correctamente o
el valor real no responde de la forma esperada.
Compruebe si los límites del valor de salida están configurados correctamente y si encajan con el sentido
de la regulación.
Asegúrese también de que el valor real no oscile fuertemente antes de iniciar la optimización inicial.
0100 Un error en la optimización ha provocado parámetros no válidos.
0200 Valor no válido en el parámetro "Input": El valor no tiene un formato numérico válido.
0400 Error al calcular el valor de salida. Compruebe los parámetros PID.
0800 Error de tiempo de muestreo: PID_Compact no se llama dentro del tiempo de muestreo del OB de alarma
cíclica.
Si este error se ha producido durante la simulación con PLCSIM, tenga en cuenta las indicaciones de Simu­
lación de PID_Compact V1 con PLCSIM (Página 106).
1000 Valor no válido en el parámetro "Setpoint": El valor no tiene un formato numérico válido.

Consulte
también
Parámetros de salida PID_Compact V1 (Página 263)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 271
Instrucciones
10.1 PID_Compact

[Link] Parámetro Reset V1

La respuesta en caso de Reset = TRUE depende de la versión de la instrucción PID_Compact.

Respuesta Reset PID_Compact a partir de V.1.1


Un flanco ascendente en Reset hace que se pase al modo de operación "Inactivo", se
desactiven los errores y las advertencias, y se borre la acción I. Un flanco descendente en
Reset provoca un cambio al último modo de operación activo. Si antes estaba activo el modo
automático, la acción I se preasigna de tal modo que la conmutación se realice sin
discontinuidad.
5HVHW


W PV
LB0RGH


W PV
6WDWH


W PV
   

① Conexión
② Error
③ Reset

Regulación PID
272 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.1 PID_Compact

Respuesta Reset PID_Compact V.1.0


Un flanco ascendente en Reset hace que se pase al modo de operación "Inactivo", se
desactiven los errores y las advertencias, y se borre la acción I. El regulador no vuelve a
conectarse hasta que no aparece un flanco en i_Mode.
5HVHW


W PV
LB0RGH




W PV
6WDWH




    W PV

① Conexión
② Error
③ Reset

[Link] Variable sd_warning V1

Si hay varias advertencias presentes a la vez, los valores de la variable sd_warning se


muestran sumados binariamente. Si se muestra p. ej. la advertencia 0003, significa que están
presentes simultáneamente las advertencias 0001 y 0002.
sd_warning Descripción
(DW#16#....)
0000 No hay ninguna advertencia.
0001 Durante la optimización inicial no se encontró el punto de inflexión.
0002 Durante la optimización fina la oscilación fue más intensa.
0004 La consigna estuvo fuera de los límites ajustados.
0008 En el método de cálculo seleccionado no se han definido todas las propiedades necesarias del sistema regu­
lado. En sustitución se calcularon los parámetros PID con el método "i_CtrlTypeTIR = 3".
0010 No se ha podido cambiar el modo de operación, pues ManualEnable = TRUE.
0020 El tiempo de muestreo del algoritmo PID está limitado por el tiempo de ciclo del OB invocante.
Para obtener mejores resultados, utilice tiempos de ciclo más cortos para el OB.
0040 El valor real ha rebasado uno de sus límites de advertencia.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 273
Instrucciones
10.1 PID_Compact

Las siguientes advertencias se eliminan en cuanto la causa se soluciona.


• 0004
• 0020
• 0040
Todas las demás advertencias se eliminan si hay un flanco ascendente en Reset.

[Link] Variable i_Event_SUT V1

i_Event_SUT Nombre Descripción


0 SUT_INIT Iniciar optimización inicial
100 SUT_STDABW Calcular desviación estándar
200 SUT_GET_POI Determinar punto de inflexión
9900 SUT_IO Optimización inicial correcta
1 SUT_NIO Optimización inicial no correcta

Consulte
también
Variables estáticas PID_Compact V1 (Página 263)
Parámetros State y sRet.i_Mode V1 (Página 268)

[Link] Variable i_Event_TIR V1

i_Event_TIR Nombre Descripción


-100 TIR_FIRST_SUT No es posible realizar la optimización fina. Se realiza primero una optimización ini­
cial.
0 TIR_INIT Iniciar optimización fina
200 TIR_STDABW Calcular desviación estándar
300 TIR_RUN_IN Intentar alcanzar consigna
400 TIR_CTRLN Intentar alcanzar consigna con los parámetros PID existentes
(si la optimización inicial fue correcta)
500 TIR_OSZIL Determinar oscilación y calcular parámetros
9900 TIR_IO Optimización fina correcta
1 TIR_NIO Optimización fina no correcta

Consulte
también
Variables estáticas PID_Compact V1 (Página 263)
Parámetros State y sRet.i_Mode V1 (Página 268)

Regulación PID
274 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

10.2 PID_3Step

10.2.1 Novedades PID_3Step

PID_3Step V2.3
• A partir de PID_3Step versión 2.3 puede desactivarse la vigilancia y limitación del tiempo
de desplazamiento con [Link] = 0.0.

PID_3Step V2.2
• Uso con S7-1200
A partir de PID_3Step V2.2, la instrucción también se puede utilizar con funcionalidad V2
en una S7-1200 a partir de la versión de firmware 4.0.

PID_3Step V2.0
• Comportamiento en caso de error
Se ha modificado a fondo el comportamiento con ActivateRecoverMode = TRUE.
PID_3Step tiene un comportamiento más tolerante a errores en el ajuste predeterminado.

ATENCIóN
Su instalación puede sufrir daños.
Si utiliza el ajuste predeterminado, PID_3Step se mantiene también en modo automático
al rebasar los límites del valor real. De este modo, su instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

Con el parámetro de entrada ErrorAck se acusan los errores y las advertencias sin
necesidad de reiniciar el regulador ni borrar la acción I.
Al cambiar el modo de operación, ya no se acusan los errores que no estén pendientes.
• Cambio de modos de operación
El modo de operación se especifica en el parámetro de entrada/salida Mode y se activa
mediante un flanco ascendente en ModeActivate. Se ha suprimido la variable
[Link].
Ya no es posible iniciar la medición del tiempo de posicionamiento con
[Link], sino solo con Mode = 6 y un flanco ascendente en ModeActivate.
• Capacidad multiinstancia
Puede llamar PID_3Step como DB multiinstancia.
• Comportamiento en arranque
Con RunModeByStartup = TRUE, el modo de operación especificado en Mode se inicia
también en caso de flanco descendente en Reset y en caso de arranque en frío de la CPU.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 275
Instrucciones
10.2 PID_3Step

• Comportamiento ENO
ENO se ajusta en función del modo de operación.
Si State = 0, entonces ENO = FALSE.
Si State ≠ 0, entonces ENO = TRUE.
• Modo manual
Los parámetros de entrada Manual_UP y Manual_DN ya no son controlados por flancos. El
modo manual controlado por flancos sigue siendo posible mediante las variables
ManualUpInternal y ManualDnInternal.
En el "Modo manual sin señales de tope" (Mode = 10), se ignoran las señales de tope
Actuator_H y Actuator_L aunque estén activadas.
• Ajuste predeterminado de los parámetros PID
Se han modificado los siguientes ajustes predeterminados:
– Ponderación de la acción P (PWeighting), de 0.0 a 1.0
– Ponderación de la acción D (DWeighting), de 0.0 a 1.0
– Coeficiente para el retardo de la acción derivada (TdFiltRatio), de 0.0 a 0.2
• Limitación del tiempo de posicionamiento del motor
En la variable [Link] se especifica en qué % del tiempo de
posicionamiento del motor se desplazará como máximo el actuador en un sentido.
• Especificación de consigna durante la optimización
La fluctuación admisible de la consigna durante la optimización se configura en la variable
CancelTuningLevel.
• Control anticipativo
El parámetro Disturbance permite activar el control anticipativo.
• Corrección de errores
Si las señales de tope no están activadas (ActuatorEndStopOn = FALSE), Actuator_H y
Actuator_L ya no se tienen en cuenta para determinar ScaledFeedback.

PID_3Step V1.1
• Modo manual en el arranque de la CPU
Si al arrancar la CPU ManualEnable = TRUE, PID_3Step arranca en modo manual. No es
necesario un flanco ascendente en ManualEnable.
• Comportamiento en caso de error
La variable ActivateRecoverMode ya no actúa en modo manual.
• Corrección de errores
La variable Progress se restablece tras la optimización correcta o la medición del tiempo de
posicionamiento.

10.2.2 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de PID_3Step.

CPU FW PID_3Step
S7-1200 A partir de V4.2 V2.3
V2.2
V1.1

Regulación PID
276 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

CPU FW PID_3Step
S7-1200 V4.0 a V4.1 V2.2
V1.1
V3.x V1.1
V1.0
V2.x V1.1
V1.0
V1.x -
S7-1500 A partir de V3.0 V2.3
V2.0 a V2.9 V2.3
V2.2
V2.1
V2.0
V1.5 a V1.8 V2.2
V2.1
V2.0
V1.1 V2.1
V2.0
V1.0 V2.0

10.2.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_3Step V2.x

Tiempo de ejecución de CPU


Tiempos de ejecución de CPU típicos del objeto tecnológico PID_3Step a partir de la versión
V2.0 en función del tipo de CPU y el modo de operación para CPU estándar, F, T y TF.

CPU FW Tiempo ejecución CPU típ. modo Tiempo ejecución CPU típ.
automático optimización inicial y
optimización fina
CPU 1211 ≥ V4.0 260 µs 310 µs
CPU 1212
CPU 1214
CPU 1215
CPU 1217
CPU 1510SP ≤ V2.9 80 µs 95 µs
CPU 1511
CPU 1511C
CPU 1512C
CPU 1512SP
CPU 1513
CPU 1515 70 µs 80 µs
CPU 1516

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 277
Instrucciones
10.2 PID_3Step

CPU 1517 Cual­ 11 µs 15 µs


quiera
CPU 1518 5 µs 7 µs
CPU 1510SP ≥ V3.0 65 µs 80 µs
CPU 1511
CPU 1512SP
CPU 1513
CPU 1514SP
CPU 1515 50 µs 70 µs
CPU 1516

Memoria requerida
Memoria requerida por un DB de instancia del objeto tecnológico PID_3Step a partir de la
versión V2.0.

Memoria requerida Memoria requerida por el DB de instancia de PID_3Step


V2.x
Memoria de carga requerida Aprox. 15000 bytes
Memoria de trabajo total requerida 1040 bytes
Memoria de trabajo remanente requerida 60 bytes

10.2.4 PID_3Step V2

[Link] Descripción PID_3Step V2

Descripción
Con la instrucción PID_3Step se puede configurar un regulador PID con autooptimización para
válvulas o elementos de control final con comportamiento integrador.
Se dispone de los modos de operación siguientes:
• Inactivo
• Optimización inicial
• Optimización fina
• Modo automático
• Modo manual
• Aproximación al valor de salida sustitutivo
• Medición del tiempo de posicionamiento
• Monitorización de errores
• Aproximación al valor de salida sustitutivo con monitorización de errores
• Modo manual sin señales de tope
Los modos de operación se describen detalladamente en el parámetro State.

Regulación PID
278 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Algoritmo PID
PID_3Step es un regulador PIDT1 con Anti-Windup y ponderación de las acciones P y D. El
algoritmo PID funciona de acuerdo con la siguiente fórmula:
1 TD · s
[
Δ y = K p · s · (b · w - x) +
TI · s
(w - x) +
a · TD · s + 1
(c · w - x) ]
Δy Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
TD Tiempo derivativo
a Coeficiente para el retardo de la acción derivada (retardo de la acción derivada
T1 = a × TD)
c Ponderación de la acción D

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 279
Instrucciones
10.2 PID_3Step

Diagrama de bloques sin realimentación de posición

39B$/50 ,QSXW:DUQLQJB+

,QSXW:DUQLQJB/
,QSXW3HU2Q

$QWL:LQGXS
&53B,1 6FDOH
,QSXWB3(5
 

 )DF
,QSXW 3,'7 ,QW
$QWL:LQGXS
˂Y
6HWSRLQW
/LPLW  


 
2XWSXW3HU2Q
'  
'LVWXUEDQFH  
 

2XWSXW3HU2Q 0DQXDO(QDEOH
0DQXDO9DOXH )$&
/LPLW 5RFB/LP

  


2XWSXW8SSHU/LPLW
2XWSXW/RZHU/LPLW  6WDWH
 
&53B287
 2XWSXWB3(5
0DQXDOB'1 0DQXDOB83
 
ำ
$GHDGB%

6WDWH
6WDWH 0DQXDOB83
 
2XWSXWB83
0DQXDO83,QWHUQDO
3XOVH2XW
ำ ุ

7KU6WS ำ
0DQXDO'1,QWHUQDO
2XWSXWB'1
  ุ
ำ 0DQXDOB'1 ำ


6WDWH
 
 

 


Regulación PID
280 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Diagrama de bloques con realimentación de posición

39B$/50 ,QSXW:DUQLQJB+

,QSXW3HU2Q ,QSXW:DUQLQJB/
&53B,1 6FDOH
,QSXWB3(5 $QWL:LQGXS
 

 ,QW
,QSXW 3,'7
$QWL:LQGXS ำ /LPLW )DF
/LPLW 
6HWSRLQW

6WDWH 9
'
'LVWXUEDQFH

0DQXDO9DOXH
)HHGEDFN3HU2Q
&53B,1 6FDOH
)HHGEDFNB3(5
 

)HHGEDFN

0DQXDOB83
2XWSXW8SSHU/LPLW
2XWSXW/RZHU/LPLW  6WDWH
 
&53B287
2XWSXW3HU2Q  2XWSXWB3(5
0DQXDOB'1
 
  Ƅ


$GHDGB%
 
 6WDWH
0DQXDOB83
6WDWH  
ำ 2XWSXWB83
0DQXDO83,QWHUQDO
3XOVH2XW
ุ

7KU6WS
0DQXDO'1,QWHUQDO ำ
2XWSXWB'1


ุ
ำ
0DQXDOB'1 ำ

6WDWH

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 281
Instrucciones
10.2 PID_3Step

Diagrama de bloques PIDT1 con Anti-Windup

E
6HWSRLQW Z

 '7 ' .
F 3
˂\

'HDGB% 


7L ,
6FDOHG,QSXW [

)DF7W $QWL:LQGXS

Llamada
PID_3Step se llama en una base de tiempo constante de un OB de alarma cíclica.

Cargar en dispositivo
Los valores actuales de variables remanentes solo se actualizan si se carga PID_3Step por
completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Arranque
Al arrancar la CPU, PID_3Step se inicia en el modo guardado en el parámetro de
entrada/salida Mode. Para dejar PID_3Step en el modo de operación "Inactivo", ajuste
RunModeByStartup = FALSE.

Regulación PID
282 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Comportamiento en caso de error


En el modo automático y durante la puesta en servicio, el comportamiento en caso de error
depende de las variables ErrorBehaviour y ActivateRecoverMode. En modo manual, el
comportamiento no depende de ErrorBehaviour y ActivateRecoverMode. Si
ActivateRecoverMode = TRUE, el comportamiento dependerá además del error que se haya
producido.

ErrorBeha­ ActivateReco­ Ajuste del Editor de configu­ Comportamiento


viour verMode ración
> Ajuste del actuador
> Output a
FALSE FALSE Valor de salida actual Cambio al modo de operación "Inactivo"
(State = 0)
El actuador permanece en la posición ac­
tual.
FALSE TRUE Valor de salida actual por la Cambio al modo de operación "Monitori­
duración del error zación de errores" (State = 7)
El actuador permanece en la posición ac­
tual mientras dure el error.
TRUE FALSE Valor de salida sustitutivo Cambio al modo de operación "Aproximar
al valor de salida sustitutivo" (State = 5)
El actuador se desplaza al valor de salida
sustitutivo configurado.
Cambio al modo de operación "Inactivo"
(State = 0)
El actuador permanece en la posición ac­
tual.
TRUE TRUE Valor de salida sustitutivo Cambio al modo de operación "Aproximar
mientras dure el error a valor de salida sustitutivo con monitori­
zación de errores" (State = 8)
El actuador se desplaza al valor de salida
sustitutivo configurado.
Cambio al modo de operación "Monitori­
zación de errores" (State = 7)
PID_3Step utiliza ManualValue como valor de salida en el modo manual, excepto con los
siguientes errores:
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
Solo es posible modificar la posición del actuador con Manual_UP y Manual_DN, no con
ManualValue:
El parámetro Error indica si se ha producido un error en el ciclo actual. El parámetro ErrorBits
muestra qué errores se han producido. ErrorBits se reinicia mediante un flanco ascendente en
Reset o ErrorAck.
Consulte
también
Parámetros State y Mode V2 (Página 300)
Parámetro ErrorBits V2 (Página 305)
Configuración de PID_3Step V2 (Página 107-108)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 283
Instrucciones
10.2 PID_3Step

[Link] Funcionamiento PID_3Step V2

Monitorizar límites del valor real


En las variables [Link] y [Link] es posible definir un límite
superior y uno inferior del valor real. Si el valor real se encuentra fuera de estos límites,
ocurre un error (ErrorBits = 0001h).
En las variables [Link] y [Link] se definen un límite
de advertencia superior y uno inferior del valor real. Si el valor real se encuentra fuera de
estos límites de advertencia, se produce una advertencia (Warning = 0040h) y el parámetro
de salida InputWarning_H o InputWarning_L adopta el valor TRUE.

Limitar consigna
En las variables [Link] y [Link] es posible definir un
límite superior y uno inferior para la consigna. PID_3Step limita la consigna automáticamente
a los límites del valor real. Es posible limitar la consigna a un rango más pequeño. PID_3Step
verifica si dicho rango está dentro de los límites del valor real. Si la consigna está fuera de
estos límites, se utilizan los límites superior e inferior como consigna y el parámetro de salida
SetpointLimit_H o SetpointLimit_L adopta el valor TRUE.
La consigna se limita en todos los modos de operación.

Limitar el valor de salida


En las variables [Link] y [Link] se define un límite
superior y uno inferior del valor de salida. Los límites del valor de salida deben encontrarse
dentro del "Tope inferior" o el "Tope superior".
• Tope superior: [Link]
• Tope inferior: [Link]
Rige:
UpperPointOut ≥ OutputUpperLimit > OutputLowerLimit ≥ LowerPointOut
Los valores válidos para el "Tope superior" y el "Tope inferior" dependen de:
• FeedbackOn
• FeedbackPerOn
• OutputPerOn

OutputPerOn FeedbackOn FeedbackPerOn LowerPointOut UpperPointOut


FALSE FALSE FALSE No ajustable (0.0 %) No ajustable (100.0 %)
FALSE TRUE FALSE -100.0 % o 0.0 % 0.0 % o +100.0 %
FALSE TRUE TRUE -100.0 % o 0.0 % 0.0 % o +100.0 %
TRUE FALSE FALSE No ajustable (0.0 %) No ajustable (100.0 %)
TRUE TRUE FALSE -100.0 % o 0.0 % 0.0 % o +100.0 %
TRUE TRUE TRUE -100.0 % o 0.0 % 0.0 % o +100.0 %
Si OutputPerOn = FALSE y FeedbackOn = FALSE, no se puede limitar el valor de salida.
Output_UP y Output_DN se restablecen entonces si se cumple Actuator_H = TRUE o

Regulación PID
284 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Actuator_L = TRUE. Si tampoco existen señales de tope, Output_UP y Output_DN se


restablecen después de un tiempo de desplazamiento del
[Link] × [Link]/100. A partir de PID_3Step versión 2.3
puede desactivarse la vigilancia y limitación del tiempo de desplazamiento con
[Link] = 0.0.
El valor de salida asciende a 27648 con un 100 % y a -27648 con un -100 %. PID_3Step debe
poder cerrar la válvula completamente.

NOTA
Uso con dos o más actuadores
PID_3 Step no es adecuado para el uso con dos o más actuadores (p. ej., en aplicaciones de
calefacción/refrigeración), pues los actuadores diferentes necesitan también parámetros PID
diferentes para conseguir un buen comportamiento de regulación.

Valor de salida sustitutivo


En caso de error, PID_3Step puede emitir un valor de salida sustitutivo y conducir el elemento
final de control a una posición segura que se especifica en la variable SavePosition. El valor de
salida sustitutivo debe encontrarse dentro de los límites del valor de salida.

Vigilar la validez de las señales


Se vigila la validez de los valores de los siguientes parámetros al utilizarlos:
• Setpoint
• Input
• Input_PER
• Input_PER
• Feedback
• Feedback_PER
• Disturbance
• ManualValue
• SavePosition
• Output_PER

Vigilar el tiempo de muestreo PID_3Step


En el caso ideal, el tiempo de muestreo equivale al tiempo de ciclo del OB invocante. La
instrucción PID_3Step mide en cada caso el tiempo que transcurre entre dos llamadas. Este es
el tiempo de muestreo actual. Con cada cambio de modo de operación y en el primer
arranque se calcula la media de los 10 primeros tiempos de muestreo. Si el tiempo de
muestreo actual se desvía mucho de este valor medio, ocurre un error (ErrorBits = 0800h).
Durante la optimización, el error se produce si:
• Valor medio nuevo >= 1,1 veces el valor medio antiguo
• Valor medio nuevo <= 0,9 veces el valor medio antiguo

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 285
Instrucciones
10.2 PID_3Step

En el modo automático, el error se produce si:


• Valor medio nuevo >= 1,5 veces el valor medio antiguo
• Valor medio nuevo <= 0,5 veces el valor medio antiguo
Si se desactiva la monitorización del tiempo de muestreo ([Link] = FALSE),
puede llamarse PID_3Step también en el OB1. En tal caso, deberá aceptarse una regulación
de menor calidad, debido a la fluctuación del tiempo de muestreo.

Tiempo de muestreo del algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_3Step se ejecutan con cada llamada.

Medir el tiempo de posicionamiento del motor


El tiempo de posicionamiento del motor es el tiempo en segundos que requiere el motor para
desplazar el elemento final de control del estado cerrado al estado abierto. El elemento final
de control se mueve en un sentido a como máximo [Link] ×
[Link]/100. PID_3Step necesita un tiempo de posicionamiento del motor lo más
preciso posible para alcanzar un buen resultado de regulación. Los datos de la
documentación del elemento final de control son valores medios para este tipo de elemento
final de control. El valor puede variar para el elemento final de control que se use en cada
momento. El tiempo de posicionamiento del motor puede medirse durante la puesta en
servicio. Los límites del valor de salida no se tienen en cuenta durante la medición del tiempo
de posicionamiento del motor. El actuador puede desplazarse hasta el tope superior o
inferior.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el
correcto funcionamiento, sobre todo, durante la optimización automática y el
comportamiento Anti-Windup. Por tanto, configure el tiempo de posicionamiento del motor
con el valor que requiera el motor para desplazar el actuador del estado cerrado al estado
abierto.
Si en su proceso no actúa ningún tiempo de posicionamiento del motor relevante (p. ej., con
electroválvulas), de forma que el valor de salida actúa directamente y en toda su magnitud
sobre el proceso, utilice PID_Compact en su lugar.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal. Para refrigeración o para las regulaciones
de desagües puede ser necesario invertir el sentido de regulación. PID_3Step no funciona con
ganancia proporcional negativa. Si InvertControl = TRUE, un error de regulación ascendente
provocará una reducción del valor de salida. El sentido de regulación se tiene en cuenta
también durante la optimización inicial y la optimización fina.

Regulación PID
286 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Consulte
también
Configuración de PID_3Step V1 (Página 125)

[Link] Modificaciones de la interfaz PID_3Step V2

La siguiente tabla muestra lo que ha cambiado en la interfaz de la instrucción PID_3Step.

PID_3Step V1 PID_3Step V2 Cambio


Input_PER Input_PER Tipo de datos de Word a Int
Feedback_PER Feedback_PER Tipo de datos de Word a Int
Disturbance Nuevo
Manual_UP Manual_UP Función
Manual_DN Manual_DN Función
ErrorAck Nuevo
ModeActivate Nuevo
Output_PER Output_PER Tipo de datos de Word a Int
ManualUPInternal Nuevo
ManualDNInternal Nuevo
CancelTuningLevel Nuevo
VirtualActuatorLImit Nuevo
[Link] Loadbackup Cambio de nombre
[Link] [Link] Cambio de nombre y remanencia añadida
[Link] Sustituido por Mode y ModeActivate
[Link] [Link] Cambio de nombre
[Link] [Link] Cambio de nombre
[Link] [Link] Cambio de nombre
[Link] [Link] Cambio de nombre
[Link] Mode Función
Declaración de Static a parámetros de entrada/salida

[Link] Parámetros de entrada PID_3Step V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-7  
Parámetro Tipo de da­ Ajuste prede­ Descripción
tos terminado
Setpoint REAL 0.0 Consigna del regulador PID en modo automático

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 287
Instrucciones
10.2 PID_3Step

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
Input REAL 0.0 Una variable del programa de usuario se utiliza como origen del
valor real.
Si utiliza el parámetro Input, debe cumplirse lo siguiente: Con­
[Link] = FALSE.
Input_PER INT 0 Una entrada analógica se utiliza como origen del valor real.
Si utiliza el parámetro Input_PER, debe cumplirse lo siguiente:
[Link] = TRUE.
Actuator_H BOOL FALSE Realimentación de posicionamiento digital de la válvula para el
tope superior
Si Actuator_H = TRUE la posición de la válvula se encuentra en el
tope superior y la válvula ya no se desplaza en ese sentido.
Actuator_L BOOL FALSE Realimentación de posición digital de la válvula para el tope in­
ferior
Si Actuator_L = TRUE la posición de la válvula se encuentra en el
tope inferior y la válvula ya no se desplaza en ese sentido.
Feedback REAL 0.0 Realimentación de posición de la válvula
Si utiliza el parámetro Feedback, debe cumplirse lo siguiente:
[Link] = FALSE.
Feedback_PER INT 0 Realimentación de posición analógica de una válvula
Si utiliza el parámetro Feedback_PER, debe cumplirse lo siguien­
te: [Link] = TRUE.
Feedback_PER se escala a partir de las variables:
• [Link]
• [Link]
• [Link]
• [Link]
Disturbance REAL 0.0 Magnitud perturbadora o valor de control anticipativo
ManualEnable BOOL FALSE • El flanco FALSE -> TRUE activa el modo de operación "Modo
manual", State = 4, Mode no cambia.
Mientras se cumple ManualEnable = TRUE, no es posible
cambiar el modo de operación mediante un flanco ascen­
dente en ModeActivate, ni utilizar el diálogo de puesta en
servicio.
• El flanco TRUE -> FALSE activa el modo de operación especi­
ficado en Mode.
Se recomienda cambiar el modo de operación solo mediante
ModeActivate.
ManualValue REAL 0.0 En el modo manual se especifica la posición absoluta de la vál­
vula. ManualValue solo se evalúa si se utiliza Output_PER o si se
dispone de una realimentación de posición.
Manual_UP BOOL FALSE • Manual_UP = TRUE
La válvula se abre aunque se utilice Output_PER o una reali­
mentación de posición. La válvula deja de moverse cuando
se alcanza el tope superior.
Ver también [Link]
• Manual_UP = FALSE
Si se utiliza Output_PER o una realimentación de posición, la
válvula se desplaza a ManualValue. En caso contrario, la vál­
vula deja de moverse.
Si Manual_UP y Manual_DN se ajustan simultáneamente a
TRUE, la válvula no se mueve.

Regulación PID
288 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
Manual_DN BOOL FALSE • Manual_DN = TRUE
La válvula se cierra aunque se utilice Output_PER o una reali­
mentación de posición. La válvula deja de moverse cuando
se alcanza el tope inferior.
Ver también [Link]
• Manual_DN = FALSE
Si se utiliza Output_PER o una realimentación de posición, la
válvula se desplaza a ManualValue. En caso contrario, la vál­
vula deja de moverse.
ErrorAck BOOL FALSE • Flanco FALSE -> TRUE
ErrorBits y Warning se desactivan.
Reset BOOL FALSE Realiza un rearranque completo del regulador.
• Flanco FALSE -> TRUE
– Cambio al modo de operación "Inactivo"
– ErrorBits y Warnings se desactivan.
• Mientras se cumpla Reset = TRUE,
– PID_3Step permanece en el modo de operación "Inacti­
vo" (State = 0);
– no es posible cambiar el modo de operación mediante
Mode y ModeActivate o ManualEnable;
– no es posible utilizar el diálogo de puesta en marcha.
• Flanco TRUE -> FALSE
– Si ManualEnable = FALSE, PID_3Step cambia al modo de
operación que está guardado en Mode.
– Si Mode = 3, la conmutación al modo automático tiene
lugar sin discontinuidades.
ModeActivate BOOL FALSE • Flanco FALSE -> TRUE
PID_3Step cambia al modo guardado en Mode.

[Link] Parámetros de salida PID_3Step V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-8  
Parámetro Tipo de da­ Ajuste prede­ Descripción
tos terminado
ScaledInput REAL 0.0 Valor real escalado
ScaledFeedback REAL 0.0 Realimentación de posición escalada
Con actuadores sin realimentación de posición, ScaledFeed­
back indica la posición del actuador de modo muy impreciso.
En tal caso, ScaledFeedback solo puede usarse para una esti­
mación aproximada de la posición actual.
Output_UP BOOL FALSE Valor de salida digital para abrir la válvula
Si [Link] = FALSE, se utiliza el parámetro
Output_UP.
Output_DN BOOL FALSE Valor de salida digital para cerrar la válvula
Si [Link] = FALSE, se utiliza el parámetro
Output_DN.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 289
Instrucciones
10.2 PID_3Step

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
Output_PER INT 0 Valor de salida analógico
Si [Link] = TRUE, se utiliza Output_PER.
Utilice Output_PER si desea utilizar como actuador una válvula
que se activa a través de una salida analógica y se controla con
una señal continua, como puede ser 0 a 10 V, 4 a 20 mA.
El valor de Output_PER se corresponde con la posición de desti­
no de la válvula, p. ej., Output_PER = 13824, cuando la válvula
debe abrirse hasta un 50 %.
SetpointLimit_H BOOL FALSE Si SetpointLimit_H = TRUE se cumple, significa que se ha alcan­
zado el límite superior absoluto de la consigna (Setpoint ≥ Con­
[Link]).
La consigna está limitada a [Link] .
SetpointLimit_L BOOL FALSE Si SetpointLimit_L = TRUE se cumple, significa que se ha alcan­
zado el límite inferior absoluto de la consigna (Setpoint ≤ Con­
[Link]).
La consigna está limitada a [Link] .
InputWarning_H BOOL FALSE Cuando InputWarning_H = TRUE, significa que se ha alcanzado
o rebasado el límite superior de advertencia del valor real.
InputWarning_L BOOL FALSE Cuando InputWarning_L = TRUE, significa que se ha alcanzado
o rebasado por defecto el límite inferior de advertencia del va­
lor real.
State INT 0 El parámetro State (Página 300) indica el modo de operación
actual del regulador PID. El modo de operación se cambia con
el parámetro de entrada Mode y un flanco ascendente en Mo­
deActivate.
• State = 0: Inactivo
• State = 1: Optimización inicial
• State = 2: Optimización fina
• State = 3: Modo automático
• State = 4: Modo manual
• State = 5: Aproximación al valor de salida sustitutivo
• State = 6: Medición del tiempo de posicionamiento
• State = 7: Monitorización de errores
• State = 8: Aproximación al valor de salida sustitutivo con
monitorización de errores
• State = 10: Modo manual sin señales de tope
Error BOOL FALSE Si Error = TRUE, existe al menos un mensaje de error en el ciclo
actual.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 305) muestra qué mensajes de
error existen. ErrorBits es remanente y se restablece con un
flanco ascendente en Reset o ErrorAck.

Consulte
también
Parámetros State y Mode V2 (Página 300)
Parámetro ErrorBits V2 (Página 305)

Regulación PID
290 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

[Link] Parámetros de entrada/salida PID_3Step V2

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-9  
Parámetro Tipo de da­ Ajuste prede­ Descripción
tos terminado
Mode INT 4 Especifique en Mode el modo al que debe cambiar PID_3Step.
Posibilidades:
• Mode = 0: Inactivo
• Mode = 1: Optimización inicial
• Mode = 2: Optimización fina
• Mode = 3: Modo automático
• Mode = 4: Modo manual
• Mode = 6: Medición del tiempo de posicionamiento
• Mode = 10: Modo manual sin señales de tope
El modo se activa mediante:
• Flanco ascendente en ModeActivate
• Flanco descendente en Reset
• Flanco descendente en ManualEnable
• Arranque en frío de la CPU si RunModeByStartup = TRUE
Mode es remanente.
Encontrará una descripción detallada de los modos de opera­
ción en Parámetros State y Mode V2 (Página 300).

[Link] Variables estáticas PID_3Step V2

NOTA
Modifique las variables marcadas con (1) solo en el modo de operación "Inactivo" para evitar
un comportamiento erróneo del regulador PID.

Los nombres de las siguientes variables se aplican tanto para el bloque de datos como para el
acceso a través de Openness API.
Variable Tipo de Ajuste Descripción
datos predeter­
minado
ManualUpInternal BOOL FALSE En el modo manual, cada flanco ascendente abre la válvula un 5%
del rango de posicionamiento total o durante el tiempo mínimo de
posicionamiento del motor. ManualUpInternal solo se evalúa si no se
utiliza Output_PER ni se dispone de realimentación de posición. Esta
variable se utiliza en el diálogo de puesta en servicio.
ManualDnInternal BOOL FALSE En el modo manual, cada flanco ascendente cierra la válvula un 5%
del rango de posicionamiento total o durante el tiempo mínimo de
posicionamiento del motor. ManualDnInternal solo se evalúa si no se
utiliza Output_PER ni se dispone de realimentación de posición. Esta
variable se utiliza en el diálogo de puesta en servicio.
ActivateRecoverMode BOOL TRUE La variable ActivateRecoverMode V2 (Página 308) determina el com­
portamiento en caso de error.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 291
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
RunModeByStartup BOOL TRUE Activar Mode después del rearranque de la CPU
Si RunModeByStartup = TRUE, PID_3Step se inicia después del arran­
que de la CPU en el modo guardado en Mode.
Si RunModeByStartup = FALSE, PID_3Step permanece en modo
"Inactivo" después del arranque de la CPU.
LoadBackUp BOOL FALSE Si LoadBackUp = TRUE, se carga nuevamente el último juego de pa­
rámetros PID. El juego se guardó antes de la última optimización.
LoadBackUp se ajusta automáticamente de nuevo a FALSE.
PhysicalUnit INT 0 Unidad física del valor real y de la consigna, p. ej. ºC o ºF.
PhysicalUnit se utiliza para la visualización en los editores y no influ­
ye en el comportamiento del algoritmo de regulación en la CPU.
Al importar PID_3Step a través de Openness API, PhysicalUnit se res­
tablece al valor estándar.
PhysicalQuantity INT 0 Unidad física del valor real y de la consigna, p. ej. temperatura
PhysicalQuantity se utiliza para la visualización en los editores y no
influye en el comportamiento del algoritmo de regulación en la CPU.
Al importar PID_3Step a través de Openness API, PhysicalQuantity se
restablece al valor estándar.
ErrorBehaviour BOOL FALSE Si ErrorBehaviour = FALSE, en caso de error la válvula permanece en
la posición actual y el regulador cambia directamente al modo de
operación "Inactivo" o "Monitorización de errores".
Si ErrorBehaviour = TRUE, en caso de error el actuador se desplaza al
valor de salida sustitutivo y solo entonces pasa al modo de operación
"Inactivo" o "Monitorización de errores".
Si se producen los errores siguientes, la válvula ya no se puede des­
plazar a un valor de salida sustitutivo configurado.
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
• 20000h: Valor no válido en la variable SavePosition.
Warning DWORD DW#16#0 La variable Warning (Página 300) muestra las advertencias desde Re­
set = TRUE o ErrorAck =TRUE. Warning es remanente.
Las advertencias cíclicas (por ejemplo, advertencia del valor real) se
muestran mientras siga existiendo la causa de la advertencia. Al eli­
minar la causa, se borran automáticamente. Las advertencias no cí­
clicas (como es la relativa al punto de inflexión no encontrado) se
mantienen y se borran como se hace con los errores.
SavePosition REAL 0.0 Valor de salida sustitutivo
Si ErrorBehaviour = TRUE, en caso de error el elemento final de con­
trol o actuador se desplaza a una posición segura para la instalación.
En cuanto se alcanza el valor de salida sustitutivo, PID_3Step cambia
de modo en función del valor de ActivateRecoverMode.
El rango de valores permitido depende de la configuración.
• [Link] = FALSE y [Link] = FALSE:
SavePosition = 0.0 o bien 100.0
• [Link] = TRUE o [Link] = TRUE:
[Link] ≥ SavePosition ≥ [Link]­
Limit
CurrentSetpoint REAL 0.0 Consigna activa actualmente. Este valor se congela al iniciarse la op­
timización.

Regulación PID
292 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
CancelTuningLevel REAL 10.0 Fluctuación admisible de la consigna durante la optimización. La op­
timización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
Progress REAL 0.0 Progreso de la optimización en porcentaje (0,0 - 100,0)
[Link](1) BOOL TRUE Si InputPerOn = TRUE, se utiliza el parámetro Input_PER. Si InputPe­
rOn = FALSE, se utiliza el parámetro Input.
[Link](1) BOOL FALSE Si OutputPerOn = TRUE, se utiliza el parámetro Output_PER. Si Out­
putPerOn = FALSE, se utilizan los parámetros Ouput_UP y
Output_DN.
[Link](1) BOOL FALSE Inversión del sentido de regulación
Si InvertControl = TRUE, un error de regulación ascendente provoca­
rá una reducción del valor de salida.
[Link](1) BOOL FALSE Si FeedbackOn = FALSE, se simula una realimentación de posición.
Si FeedbackOn = TRUE, se activa por lo general la realimentación de
posición.
[Link](1) BOOL FALSE FeedbackPerOn solo está activo cuando FeedbackOn = TRUE.
Si FeedbackPerOn = TRUE, se utiliza la entrada analógica para la rea­
limentación de posición (parámetro Feedback_PER).
Si FeedbackPerOn = FALSE, se utiliza el parámetro Feedback para la
realimentación de posición.
[Link](1) BOOL FALSE Si ActuatorEndStopOn = TRUE, se tiene en cuenta la realimentación
de posición digital Actuator_L y Actuator_H .
[Link](1) REAL 120.0 Límite superior del valor real
Se vigila que Input y Input_PER respeten estos límites.
En la entrada de periferia, el valor real puede encontrarse como má­
ximo un 18% por encima del rango normalizado (margen de satura­
ción). No se comunica ningún error más debido al rebase por exceso
del "Límite superior del valor real". Únicamente se detectan la rotura
de hilo y el cortocircuito y PID_3Step se comporta según la reacción
configurada en caso de error.
InputUpperLimit > InputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor real
InputLowerLimit < InputUpperLimit
[Link](1) REAL +3.40282­ Límite superior de advertencia del valor real
2e+38 Si se configura InputUpperWarning a un valor que se encuentre fue­
ra de los límites del valor real, el límite superior absoluto configura­
do para el valor real se utiliza como límite superior de advertencia.
Si se configura InputUpperWarning a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite supe­
rior de advertencia.
InputUpperWarning > InputLowerWarning
InputUpperWarning ≤ InputUpperLimit

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 293
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link](1) REAL -3.40282­ Límite inferior de advertencia del valor real
2e+38 Si se configura InputLowerWarning a un valor que se encuentre fue­
ra de los límites del valor real, el límite inferior absoluto configurado
para el valor real se utiliza como límite inferior de advertencia.
Si se configura InputLowerWarning a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite infe­
rior de advertencia.
InputLowerWarning < InputUpperWarning
InputLowerWarning ≥ InputLowerLimit
[Link](1) REAL 100.0 Límite superior del valor de salida
El rango de valores siguiente es admisible:
UpperPointOut ≥ OutputUpperLimit > OutputLowerLimit
Para más detalles ver OutputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor de salida
El rango de valores siguiente es admisible:
OutputUpperLimit > OutputLowerLimit ≥ LowerPointOut
Si se usa Output_PER, el límite de valor de salida -100 % se corres­
ponde con el valor Output_PER = -27648; 100 % se corresponden
con el valor Output_PER = 27648.
Si OutputPerOn = FALSE y FeedbackOn = FALSE,OutputLowerLimit y
OutputUpperLimit no se evalúan.
Seguidamente, Output_UP y Output_DN se restablecen con
Actuator_H = TRUE o Actuator_L = TRUE (si ActuatorEndSto­
pOn = TRUE) o tras un tiempo de desplazamiento de [Link]­
lActuatorLimit * [Link]/100 (si ActuatorEndSto­
pOn = FALSE).
[Link](1) REAL +3.40282­ Límite superior de la consigna
2e+38 Si se configura SetpointUpperLimit a un valor que se encuentre fuera
de los límites del valor real, el límite superior absoluto configurado
para el valor real se preasigna como límite superior de la consigna.
Si se configura SetpointUpperLimit a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite supe­
rior de la consigna.
[Link](1) REAL - Límite inferior de la consigna
3.402822­ Si se configura SetpointLowerLimit a un valor que se encuentre fue­
e+38 ra de los límites del valor real, el límite inferior absoluto configurado
para el valor real se preasigna como límite inferior de la consigna.
Si se configura SetpointLowerLimit a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite infe­
rior de la consigna.
[Link](1) REAL 0.0 Tiempo conexión mín.
Tiempo en segundos, que debe estar conectado como mínimo el ele­
mento final de control.
[Link] solo es efectivo si se utilizan Output_UP y
Output_DN ([Link] = FALSE).
[Link](1) REAL 0.0 Tiempo OFF mín.
Tiempo en segundos, que debe estar desconectado como mínimo el
elemento final de control.
[Link] solo es efectivo si se utilizan Output_UP y
Output_DN ([Link] = FALSE).

Regulación PID
294 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link](1) REAL 150.0 Si se cumplen todas las condiciones siguientes, el actuador se des­
plaza como máximo durante VirtualActuatorLimit × [Link]­
me/100 en una dirección y se emite la advertencia 2000h:
• [Link] = FALSE
• [Link] = FALSE
• [Link] = FALSE
Si se cumple [Link] = FALSE y [Link]­
pOn = TRUE o [Link] = TRUE, solo se emite la adverten­
cia 2000h.
Si se cumple [Link] = TRUE, no se tiene en cuenta Vir­
tualActuatorLimit.
A partir de PID_3Step versión 2.3 puede desactivarse la vigilancia y
limitación del tiempo de desplazamiento con [Link]­
Limit = 0.0.
[Link]­ REAL 27648.0 Escalado Input_PER arriba
tIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 0.0 Escalado Input_PER abajo
tIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 100.0 Valor real superior escalado
tOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 0.0 Valor real inferior escalado
tOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 27648.0 Escalado Feedback_PER arriba
PointIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
[Link]­ REAL 0.0 Escalado Feedback_PER abajo
PointIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
[Link]­ REAL 100.0 Tope superior
PointOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
El rango de valores permitido depende de la configuración.
• FeedbackOn = FALSE:
UpperPointOut = 100.0
• FeedbackOn = TRUE:
UpperPointOut = 100.0 o 0.0
UpperPointOut ≠ LowerPointOut

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 295
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link]­ REAL 0.0 Tope inferior
PointOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
El rango de valores permitido depende de la configuración.
• FeedbackOn = FALSE:
LowerPointOut = 0.0
• FeedbackOn = TRUE:
LowerPointOut = 0.0 o -100.0
LowerPointOut ≠ UpperPointOut
[Link] BOOL FALSE Si InvertDirection = FALSE, se abre completamente la válvula para
determinar el tiempo de posicionamiento, luego se cierra y se vuelve
a abrir.
Si InvertDirection = TRUE, se cierra completamente la válvula, luego
se abre y se vuelve a cerrar.
[Link] BOOL FALSE Si SelectFeedback = TRUE, durante la medición del tiempo de posi­
cionamiento se tendrá en cuenta Feedback_PER o Feedback.
Si SelectFeedback = FALSE, durante la medición del tiempo de posi­
cionamiento se tendrán en cuenta Actuator_H y Actuator_L.
[Link] INT 0 Fase actual de la medición del tiempo de posicionamiento
• State = 0: Inactivo
• State = 1: Abrir válvula completamente
• State = 2: Cerrar válvula completamente
• State = 3: Desplazar válvula a la posición de destino (NewOutput)
• State = 4: Tiempo de posicionamiento medido correctamente
• State = 5: Medición del tiempo de posicionamiento cancelada
[Link] REAL 0.0 Posición de destino para la medición del tiempo de posicionamiento
con realimentación de posición
La posición de destino debe encontrarse dentro de los topes superior
e inferior. La diferencia entre NewOutput y ScaledFeedback debe es­
tar al menos por encima del 50% del margen de ajuste admisible.
[Link] BOOL TRUE Si StartEstimation = TRUE, se inicia la medición del tiempo de mues­
treo PID_3Step. Una vez finalizada la medición, [Link]­
mation = FALSE.
[Link] BOOL TRUE Si EnEstimation = TRUE, se calcula el tiempo de muestreo PID_3Step.
Si [Link] = FALSE, el tiempo de muestreo
PID_3Step no se calcula y debe configurar [Link] correcta­
mente a mano.
[Link] BOOL TRUE Si EnMonitoring = TRUE, se vigila el tiempo de muestreo PID_3Step.
Si no es posible ejecutar PID_3Step dentro del tiempo de muestreo,
se emite el error 0800h y se cambia el modo de operación. El modo
de operación al que se cambie depende de ActivateRecoverMode y
de ErrorBehaviour.
Si EnMonitoring = FALSE, el tiempo de muestreo PID_3Step no se vi­
gila, el error 0800h no se emite y el modo de operación no se cam­
bia.
[Link](1) REAL 0.1 Tiempo de muestreo PID_3Step en segundos
[Link] se determina automáticamente y equivale normal­
mente al tiempo de ciclo del OB invocante.

Regulación PID
296 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link] BOOL FALSE Valor almacenado de [Link]
Los valores de la estructura CtrlParamsBackUp pueden volverse a car­
gar con LoadBackUp = TRUE.
[Link] REAL 1.0 Ganancia proporcional almacenada
[Link] REAL 20.0 Tiempo de integración almacenado en segundos
[Link] REAL 0.0 Tiempo derivativo almacenado en segundos
[Link] REAL 0.2 Coeficiente almacenado para el retardo de la acción derivada
[Link] REAL 1.0 Ponderación almacenada de la acción P
[Link] REAL 1.0 Ponderación almacenada de la acción D
[Link] REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID en segundos
[Link]­ REAL 0.0 Ancho de zona muerta almacenado del error de regulación
Band
[Link]­ BOOL FALSE Las propiedades del sistema regulado se almacenan durante la opti­
rams mización. Si CalculateParams = TRUE, se vuelven a calcular los pará­
metros PID basándose en estas propiedades. Los parámetros PID se
calculan según el método ajustado en TuneRule. CalculateParams se
ajusta a FALSE después del cálculo.
[Link] INT 1 Calcular los parámetros durante la optimización inicial según el mé­
todo:
• [Link] = 0: PID rápido I (comportamiento de regulación
más rápido con amplitudes del valor de salida mayores que las de
[Link] =1)
• [Link] = 1: PID lento I (comportamiento de regulación
más lento con amplitudes del valor de salida menores que las de
[Link] = 0)
• [Link] = 2: PID según Chien, Hrones, Reswick
• [Link] = 3: PI según Chien, Hrones, Reswick
• [Link] = 4: PID rápido II (comportamiento de regulación
más rápido con amplitudes del valor de salida mayores que las de
[Link] = 5)
• [Link] = 5: PID lento II (comportamiento de regulación
más lento con amplitudes del valor de salida menores que las de
[Link] = 4)
Los métodos [Link] = 0 y 1 se diferencian únicamente en el
cálculo de la ganancia proporcional de los métodos [Link]­
le = 4 y 5:
Con [Link] = 0 y 1, la ganancia proporcional se calcula par­
tiendo del tiempo de compensación del proceso. Con [Link]­
le = 4 y 5, se hace partiendo del tiempo de retardo del proceso.
Con [Link] = 4 y 5, se obtiene un valor mayor para la ganan­
cia proporcional y, con ello, un comportamiento de regulación más
rápido con amplitudes del valor de salida mayores que las de [Link]­
neRule = 0 y 1.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 297
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link] INT 0 La variable [Link] muestra la fase actual de la optimización ini­
cial:
• State = 0: Iniciar la optimización inicial
• State = 50: Determinar la posición inicial sin realimentación de
posición
• State = 100: Calcular desviación estándar
• State = 200: Determinar punto de inflexión
• State = 300: Determinar el tiempo de subida
• State = 9900: Optimización inicial correcta
• State = 1: Optimización inicial no correcta
[Link] BOOL FALSE Con la variable RunIn puede determinar que se realice una optimiza­
ción fina incluso sin optimización inicial.
• RunIn = FALSE
Si la optimización fina se inicia desde los modos de operación
Inactivo o Manual, se inicia una optimización inicial.
Si la optimización fina se inicia desde el modo automático, los
parámetros PID existentes se regulan a la consigna.
Solo entonces comienza la optimización fina. Si no es posible
realizar una optimización inicial, PID_3Step pasa al modo desde
el que se inició la optimización.
• RunIn = TRUE
La optimización inicial se omite. PID_3Step intenta alcanzar la
consigna con el valor de salida mínimo o máximo, lo que puede
ocasionar una sobreoscilación muy alta. Solo entonces comienza
la optimización fina.
RunIn se ajusta a FALSE después de la optimización fina.
[Link]­ BOOL FALSE Las propiedades del sistema regulado se almacenan durante la opti­
rams mización. Si CalculateParams = TRUE, se vuelven a calcular los pará­
metros PID basándose en estas propiedades. Los parámetros PID se
calculan según el método ajustado en TuneRule. CalculateParams se
ajusta a FALSE después del cálculo.
[Link] INT 0 Calcular los parámetros durante la optimización fina según el méto­
do:
• [Link] = 0: PID automático
• [Link] = 1: PID rápido (comportamiento de regulación más
rápido con amplitudes del valor de salida mayores que las de
[Link] = 2)
• [Link] = 2: PID lento (comportamiento de regulación más
lento con amplitudes del valor de salida menores que las de
[Link] = 1)
• [Link] = 3: PID Ziegler-Nichols
• [Link] = 4: PI Ziegler-Nichols
• [Link] = 5: P Ziegler-Nichols
Para poder repetir el cálculo de los parámetros PID con [Link]­
Params y [Link] = 0, 1 o 2, la optimización fina anterior debe
haberse ejecutado también con [Link] =0, 1 o 2.
De no ser así, se utiliza [Link] = 3.
Siempre es posible volver a calcular los parámetros PID con [Link]­
culateParams y [Link] = 3, 4 o 5.

Regulación PID
298 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link] INT 0 La variable [Link] muestra la fase actual de la "Optimización fina":
• State = -100 No es posible realizar la optimización fina. Primero
se efectuará una optimización inicial.
• State = 0: Iniciar la optimización fina
• State = 200: Calcular desviación estándar
• State = 300: Intentar alcanzar la consigna con el valor de salida
máximo o mínimo
• State = 400: Intentar alcanzar la consigna con los parámetros PID
actuales (si la optimización inicial ha sido correcta)
• State = 500: Determinar oscilación y calcular parámetros
• State = 9900: Optimización fina correcta
• State = 1: Optimización fina no correcta
[Link](1) REAL 30.0 Tiempo de posicionamiento del motor en segundos
Tiempo en segundos que requiere el elemento final de control para
desplazar la válvula del estado cerrado al estado abierto.
TransitTime es remanente.
[Link](1) BOOL FALSE Si SetByUser = FALSE, los parámetros PID se determinan de forma
automática y PID_3Step funciona con una zona muerta en el valor
de salida. El ancho de la zona muerta se calcula durante la optimiza­
ción a partir de una desviación estándar del valor de salida y se alma­
cena en [Link].
Si SetByUser = TRUE, los parámetros PID se introducen manualmente
y PID_3 Step funciona sin zona muerta en el valor de [Link]­
[Link] = 0.0
SetByUser es remanente.
[Link](1) REAL 1.0 Ganancia proporcional activa
Para invertir el sentido de regulación utilice la variable [Link]­
Control. Los valores negativos de Gain invierten también el sentido
de regulación. Se recomienda que ajuste el sentido de regulación
únicamente a través de InvertControl. Si se cumplen InvertControl =
TRUE y Gain < 0.0, el sentido de regulación también se invierte.
Gain es remanente.
[Link](1) REAL 20.0 • Ti > 0.0: Tiempo de integración activo en segundos
• Ti = 0.0: La acción I está desactivada
Ti es remanente.
[Link](1) REAL 0.0 • Td > 0.0: Tiempo derivativo activo en segundos
• Td = 0.0: La acción D está desactivada
Td es remanente.
[Link](1) REAL 0.2 Coeficiente activo para el retardo de la acción derivada
El efecto de la acción D se retrasa mediante el coeficiente de retardo
de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo × coeficiente de
retardo de la acción derivada
• 0.0: La acción D solo surte efecto para un ciclo y, por ello, casi no
es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas regu­
lados con una constante de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el efecto
de la acción D.
TdFiltRatio es remanente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 299
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link](1) REAL 1.0 Ponderación activa de la acción P
En el caso de que se modifique la consigna, es posible atenuar la ac­
ción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consigna
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es total­
mente efectiva.
PWeighting es remanente.
[Link](1) REAL 1.0 Ponderación activa de la acción D
En el caso de que se modifique la consigna, es posible atenuar la ac­
ción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva al cambiar la consigna.
• 0.0: La acción D no es efectiva al cambiar la consigna.
Si se produce una modificación del valor real, la acción D es total­
mente efectiva.
DWeighting es remanente.
[Link](1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID en segundos que se re­
dondea a un múltiplo entero del tiempo de ciclo del OB invocante.
Cycle es remanente.
[Link]­ REAL 0.0 Ancho de zona muerta del error de regulación
Band(1) InputDeadBand es remanente.

Consulte
también
Parámetros State y Mode V2 (Página 300)
Variable ActivateRecoverMode V2 (Página 308)
Cargar objetos tecnológicos en el dispositivo (Página 45)

[Link] Parámetros State y Mode V2

Interrelación de los parámetros


El parámetro State indica el modo de operación actual del regulador PID. El parámetro State
no puede modificarse.
Con un flanco ascendente en ModeActivate, PID_3Step pasa al modo guardado en el
parámetro de entrada/salida Mode.
Al conectar la CPU o cambiar de STOP a RUN, PID_3Step se inicia en el modo de operación
guardado en Mode. Para dejar PID_3Step en el modo de operación "Inactivo", ajuste
RunModeByStartup = FALSE.

Regulación PID
300 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Significado de los valores

State Descripción del modo de operación


0 Inactivo
El regulador está desconectado y ya no modifica la posición de la válvula.
El cambio del modo de operación "Inactivo" a "Modo automático" tiene lugar sin discontinuidades.
1 Optimización inicial
La optimización inicial determina el comportamiento del proceso a un impulso del valor de salida y busca el
punto de inflexión. Los parámetros PID óptimos se calculan a partir de la pendiente máxima y el tiempo muer­
to del sistema regulado. Para obtener los mejores parámetros PID, debe efectuarse una optimización inicial y
una optimización fina.
Requisitos para la optimización inicial:
• El tiempo de posicionamiento del motor está configurado o medido.
• Modo de operación Inactivo (State = 0), Manual (State = 4) o Automático (State = 3)
• ManualEnable = FALSE
• Reset = FALSE
• La consigna y el valor real se encuentran dentro de los límites configurados.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los parámetros PID. Un
ruido del valor real es aceptable siempre que la subida del valor real sea considerablemente mayor que el rui­
do. Esto tiene más probabilidades de suceder en los modos de operación "Inactivo" o "Manual".
La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de estos y es posible reacti­
varlos con LoadBackUp.
Una vez realizada correctamente la optimización inicial, el regulador pasa al modo automático; si la optimiza­
ción inicial no se ha realizado correctamente, el cambio del modo de operación depende de ActivateRecover­
Mode y ErrorBehaviour.
La fase de optimización inicial se muestra con la variable [Link].
2 Optimización fina
La optimización fina genera una oscilación constante y limitada del valor real. A partir de la amplitud y fre­
cuencia de esta oscilación se calculan de nuevo los parámetros PID. Los parámetros PID existentes después de
la optimización fina muestran en su mayoría un comportamiento de guía y ante fallos mucho mejor que los
parámetros PID de la optimización inicial. Para obtener los mejores parámetros PID, debe efectuarse una opti­
mización inicial y una optimización fina.
PID_3Step intenta generar automáticamente una oscilación que es mayor que el ruido del valor real. La esta­
bilidad del valor real ejerce tan solo una mínima influencia sobre la optimización fina.
La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
Antes de la optimización fina se realiza una copia de seguridad de los parámetros PID. Estos pueden reactivar­
se con LoadBackUp.
Requisitos para la optimización fina:
• El tiempo de posicionamiento del motor está configurado o medido.
• La consigna y el valor real se encuentran dentro de los límites configurados.
• ManualEnable = FALSE
• Reset = FALSE
• Modo de operación Automático (State = 3), Inactivo (State = 0) o Manual (State = 4)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 301
Instrucciones
10.2 PID_3Step

State Descripción del modo de operación


Al inicio, la optimización fina se desarrolla del modo siguiente:
• Modo automático (State = 3)
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la optimización fina desde el
modo automático.
PID_3Step regula con los parámetros PID existentes hasta que el lazo de regulación es estacionario y se
cumplen las condiciones para la optimización fina. Solo entonces comienza la optimización fina.
• Modo Inactivo (State = 0) o Manual (State = 4)
Si se cumplen las condiciones para optimización inicial, esta se inicia. Con los parámetros PID calculados,
la regulación se realiza hasta que el lazo de regulación es estacionario y se han cumplido las condiciones
para una optimización fina.
Si [Link] = TRUE, se omite la optimización inicial y se intenta alcanzar la consigna con el
valor de salida máximo o mínimo. lo que puede ocasionar una sobreoscilación muy alta. La optimización
fina comienza entonces automáticamente.
Una vez realizada correctamente la optimización fina, el regulador pasa al modo automático; si la optimiza­
ción fina no se ha realizado correctamente, el cambio del modo de operación depende de ActivateRecoverMo­
de y ErrorBehaviour.
La fase de optimización fina se muestra con la variable [Link].
3 Modo automático
En el modo automático, PID_3Step regula el sistema regulado conforme a los parámetros predefinidos.
Cuando se cumple uno de los requisitos siguientes, se cambia al modo automático:
• Optimización inicial finalizada correctamente.
• Optimización fina finalizada correctamente.
• Cambio del parámetro de entrada/salida Mode al valor 3 y un flanco ascendente en ModeActivate.
El cambio de modo automático a modo manual se realiza sin discontinuidad únicamente en el editor de pues­
ta de servicio.
En el modo automático se tiene en cuenta la variable ActivateRecoverMode.
4 Modo manual
En el modo manual, se especifican valores de salida manuales en los parámetros Manual_UP y Manual_DN o
ManualValue. El parámetro ErrorBits describe si el actuador se puede desplazar al valor de salida en caso de
error.
Este modo puede activarse también mediante ManualEnable = TRUE. Se recomienda cambiar los modos de
operación solo mediante Mode y ModeActivate.
El cambio de modo manual a modo automático se efectúa sin discontinuidad. El modo manual es posible aun­
que haya un error pendiente.
5 Aproximación al valor de salida sustitutivo
Este modo de operación se activa en caso de error si Errorbehaviour = TRUE y ActivateRecoverMode = FALSE..
PID_3Step desplaza el elemento final de control al valor de salida sustitutivo y cambia después al modo de
operación "Inactivo".
6 Medición del tiempo de posicionamiento
Se mide el tiempo que requiere el motor para abrir completamente la válvula a partir del estado cerrado.
Este modo de operación se activa cuando se ajusta Mode = 6 y ModeActivate = TRUE.
Si se utilizan señales de tope para la medición del tiempo de posicionamiento, la válvula se abre completa­
mente desde la posición actual, luego se cierra completamente y se vuelve a abrir completamente. Si Get­
[Link] = TRUE, el comportamiento se invierte.
Si se utiliza una realimentación de posición para la medición del tiempo de posicionamiento, el elemento final
de control se desplaza desde la posición actual a una posición de destino.
Los límites del valor de salida no se tienen en cuenta durante la medición del tiempo de posicionamiento. El
actuador puede desplazarse hasta el tope superior o inferior.

Regulación PID
302 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

State Descripción del modo de operación


7 Monitorización de errores
El algoritmo de regulación está desconectado y ya no modifica la posición de la válvula.
Este modo de operación se activa en caso de error en lugar del modo de operación "Inactivo".
Deben haberse cumplido todas las condiciones siguientes:
• Modo automático (Mode = 3)
• Errorbehaviour = FALSE
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode (Página 308).
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.
8 Aproximación al valor de salida sustitutivo con monitorización de errores
Este modo de operación se activa en caso de error en lugar del modo de operación "Aproximar al valor de sali­
da sustitutivo". PID_3Step desplaza el elemento final de control o actuador al valor de salida sustitutivo y cam­
bia después al modo de operación "Monitorización de errores".
Deben haberse cumplido todas las condiciones siguientes:
• Modo automático (Mode = 3)
• Errorbehaviour = TRUE
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode (Página 308).
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.
10 Modo manual sin señales de tope
Las señales de tope no se tienen en cuenta a pesar de que [Link] = TRUE. No se tienen
en cuenta los límites del valor de salida. Por lo demás, PID_3Step se comporta del mismo modo que en el mo­
do manual.

Comportamiento ENO
Si State = 0, entonces ENO = FALSE.
Si State ≠ 0, entonces ENO = TRUE.

Cambio automático de modo de operación durante la puesta en servicio


Una vez realizada correctamente la optimización inicial o la optimización fina, se activa el
modo automático. La siguiente tabla muestra cómo se modifican Mode y State durante una
optimización inicial correcta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 Optimización inicial correcta
n 3 3 Se inicia el modo automático

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 303
Instrucciones
10.2 PID_3Step

En caso de error, PID_3Step cambia automáticamente el modo de operación. La siguiente


tabla muestra cómo se modifican Mode y State durante una optimización inicial incorrecta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 La optimización inicial se ha cancelado
n 4 4 Se inicia el modo manual
Si ActivateRecoverMode = TRUE, se activa el modo guardado en Mode. Al iniciar la medición
del tiempo de posicionamiento, la optimización inicial o la optimización fina, PID_3Step ha
guardado el valor de State en el parámetro de entrada/salida Mode. Por lo tanto, PID_3Step
cambia al modo desde el que se inició la optimización.
Si ActivateRecoverMode = FALSE, se activa el modo "Inactivo" o "Aproximar al valor de salida
sustitutivo".

Cambio automático del modo de operación tras la medición del tiempo de posicionamiento
Si ActivateRecoverMode = TRUE, se activa el modo de operación guardado en Mode una vez
realizada correctamente la medición del tiempo de posicionamiento.
Si ActivateRecoverMode = FALSE, se cambia al modo de operación "Inactivo" una vez realizada
correctamente la medición del tiempo de posicionamiento.

Regulación PID
304 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Cambio automático del modo de operación en el modo automático


En caso de error, PID_3Step cambia automáticamente el modo de operación. El diagrama
siguiente muestra la influencia de ErrorBehaviour y ActivateRecoverMode sobre este cambio
del modo de operación.

,QDFWLYR   0RQLWRUL]DFLµQGHHUURUHV 

(UURU%HKDYLRXU )$/6( (UURU%HKDYLRXU )$/6(


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

0RGRDXWRP£WLFR  

(UURU%HKDYLRXU 758( (UURU%HKDYLRXU 758(


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

$SUR[LPDUDOYDORUPDQLSXODGRGHVHJXULGDG   $SUR[LPDUDOYDORUPDQLSXODGRGHVHJXULGDG
FRQPRQLWRUL]DFLµQGHHUURUHV  

 Cambio automático del modo de operación en caso de error

 Cambio automático del modo de operación cuando ha concluido el modo actual.

Cambio automático del modo de operación cuando ya no existe el error.

Consulte
también
Variable ActivateRecoverMode V2 (Página 308)
Parámetro ErrorBits V2 (Página 305)

[Link] Parámetro ErrorBits V2

Si hay varios errores presentes a la vez, los valores del ErrorBits se muestran sumados
binariamente. Si se muestra, p. ej., ErrorBits = 0003h, significa que están presentes
simultáneamente los errores 0001h y 0002h.
Si hay una realimentación de posición, PID_3Step utiliza ManualValue en el modo manual
como valor de salida. La excepción es Errorbits = 10000h.
ErrorBits Descripción

(DW#16#...)
0000 No hay ningún error.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 305
Instrucciones
10.2 PID_3Step

ErrorBits Descripción

(DW#16#...)
0001 El parámetro "Input" se encuentra fuera de los límites del valor real.
• Input > [Link] o bien,
• Input < [Link]
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
0002 Valor no válido en el parámetro "Input_PER". Compruebe si hay un error en la entrada analógica.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step cambia al modo de operación "Aproximar al valor de salida sustitutivo con monitoriza­
ción de errores" o "Monitorización de errores". En cuanto desaparece el error, PID_3Step pasa de nuevo al
modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
0004 Error durante la optimización fina. No se ha podido mantener la oscilación del valor real.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_3Step cancela la optimización
y cambia al modo guardado en Mode.
0010 Se ha cambiado la consigna durante la optimización.
En la variable CancelTuningLevel puede ajustar la fluctuación admisible de la consigna.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_3Step cancela la optimización
y cambia al modo guardado en Mode.
0020 La optimización inicial no está permitida durante la optimización fina.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_3Step permanece en el modo
optimización fina.
0080 Error durante la optimización inicial. Los límites del valor de salida no están configurados correctamente o
el valor real no responde de la forma esperada.
Asegúrese de lo siguiente:
• Los límites del valor de salida están configurados correctamente y concuerdan con el sentido de regu­
lación.
• Es posible cambiar el valor de salida para que el valor real se aproxime a la consigna. El valor de salida
no está limitado antes de comenzar la optimización inicial por el correspondiente límite del valor de
salida y el actuador todavía no ha alcanzado su tope.
Ejemplo: Con el sentido de regulación normal y un valor real inferior a la consigna, no puede haber lle­
gado el valor de salida al límite superior ni el actuador al tope máximo antes de comenzar la optimiza­
ción inicial.
• El valor real no presenta oscilaciones fuertes antes de comenzar la optimización inicial.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_3Step cancela la optimización
y cambia al modo guardado en Mode.
0100 Un error en la optimización fina ha provocado parámetros no válidos.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_3Step cancela la optimización
y cambia al modo guardado en Mode.
0200 Valor no válido en el parámetro "Input": El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step cambia al modo de operación "Aproximar al valor de salida sustitutivo con monitoriza­
ción de errores" o "Monitorización de errores". En cuanto desaparece el error, PID_3Step pasa de nuevo al
modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.

Regulación PID
306 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

ErrorBits Descripción

(DW#16#...)
0400 Error al calcular el valor de salida. Compruebe los parámetros PID.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step cambia al modo de operación "Aproximar al valor de salida sustitutivo con monitoriza­
ción de errores" o "Monitorización de errores". En cuanto desaparece el error, PID_3Step pasa de nuevo al
modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
0800 Error de tiempo de muestreo: PID_3Step no se llama dentro del tiempo de muestreo del OB de alarma cí­
clica.
Se recomienda llamar PID_3Step en un OB de alarma cíclica sin condiciones y activarlo o desactivarlo con
el modo de operación en el parámetro Mode. Las llamadas condicionadas o la llamada en OB1 podrían
afectar a la calidad de la regulación.
Se puede desactivar la monitorización del tiempo de muestreo con [Link] = FALSE
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
Si este error se ha producido durante la simulación con PLCSIM, tenga en cuenta las indicaciones de Simu­
lación de PID_3Step V2 con PLCSIM (Página 124).
1000 Valor no válido en el parámetro "Setpoint": El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_3Step cambia al modo de operación "Aproximar al valor de salida sustitutivo con monitoriza­
ción de errores" o "Monitorización de errores". En cuanto desaparece el error, PID_3Step pasa de nuevo al
modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
2000 Valor no válido en el parámetro Feedback_PER.
Compruebe si hay un error en la entrada analógica.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. En el
modo manual solo es posible modificar la posición del actuador con Manual_UP y Manual_DN, no con Ma­
nualValue.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
4000 Valor no válido en el parámetro Feedback. El valor no tiene un formato numérico válido.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. En el
modo manual solo es posible modificar la posición del actuador con Manual_UP y Manual_DN, no con Ma­
nualValue.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 307
Instrucciones
10.2 PID_3Step

ErrorBits Descripción

(DW#16#...)
8000 Error en la realimentación digital de posición. Actuator_H = TRUE y Actuator_L = TRUE.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. El modo
manual no es posible en este estado.
Para poder sacar el actuador de ese estado, es necesario desactivar las "Señales de tope del actuador"
([Link] = FALSE) o pasar al "Modo manual sin señales de tope" (Mode = 10).
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial, optimización fina o medición del
tiempo de posicionamiento y se cumplía ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado
en Mode.
10000 Valor no válido en el parámetro ManualValue. El valor no tiene un formato numérico válido.
El actuador no puede desplazarse al valor manual y permanece en la posición actual.
Especifique un valor válido en ManualValue o desplace el actuador en modo manual con Manual_UP y
Manual_DN.
20000 Valor no válido en la variable SavePosition. El valor no tiene un formato numérico válido.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual.
40000 Valor no válido en el parámetro Disturbance. El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y ActivateRecoverMode = TRUE, Distur­
bance se ajusta a cero. PID_3Step permanece en modo automático.
Si antes de producirse el error estaba activo el modo optimización inicial u optimización fina y se cumplía
ActivateRecoverMode = TRUE, PID_3Step pasa al modo guardado en Mode. Si en la fase actual Disturban­
ce no influye en el valor de salida, la optimización no se cancela.
Durante la medición del tiempo de posicionamiento el error no tiene ninguna influencia.

[Link] Variable ActivateRecoverMode V2

La variable ActivateRecoverMode determina el comportamiento en caso de error. El


parámetro Error indica si hay algún un error pendiente en ese momento. Si no persiste el
error, se indica Error = FALSE. El parámetro ErrorBits indica qué errores han ocurrido.

ATENCIóN
Su instalación puede sufrir daños.
Si se cumple ActivateRecoverMode = TRUE, incluso al rebasar los límites del valor real
PID_3Step permanece en el modo automático. De este modo, su instalación puede sufrir
daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

Modo automático

ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_3Step pasa al modo de operación "Inactivo" o "Aproximar al valor de salida sustituti­
vo". El regulador no se activa hasta que no se detecta un flanco descendente en Reset o un flanco ascen­
dente en ModeActivate.

Regulación PID
308 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

ActivateRecover­ Descripción
Mode
TRUE Si en el modo automático se producen errores con frecuencia, este ajuste empeorará el comportamiento
de regulación, ya que PID_3Step alterna entre el valor de salida calculado y el valor de salida sustitutivo
cada vez que se produce un error. Compruebe en tal caso el parámetro ErrorBits y elimine la causa de
error.
Si se producen uno o varios de los errores siguientes, PID_3Step permanece en modo automático:
• 0001h: El parámetro "Input" se encuentra fuera de los límites del valor real.
• 0800h: Error en tiempo de muestreo
• 40000h: Valor no válido en el parámetro Disturbance.
Si se produce uno o varios de los errores siguientes, PID_3Step pasa al modo operativo "Aproximar a valor
de salida sustitutivo con monitorización de errores" o "Monitorización de errores":
• 0002h: Valor no válido en el parámetro Input_PER.
• 0200h: Valor no válido en el parámetro Input.
• 0400h: Error al calcular el valor de salida.
• 1000h: Valor no válido en el parámetro Setpoint.
Si se producen uno o varios de los siguientes errores, PID_3Step ya no puede mover el actuador:
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
• 20000h: Valor no válido en la variable SavePosition. El valor no tiene un formato numérico válido.
Este comportamiento no depende de ErrorBehaviour.
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.

Optimización inicial, optimización fina y medición del tiempo de posicionamiento

ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_3Step pasa al modo de operación "Inactivo" o "Aproximar al valor de salida sustituti­
vo". El regulador no se activa hasta que no se detecta un flanco descendente en Reset o un flanco ascen­
dente en ModeActivate.
Una vez realizada correctamente la medición del tiempo de posicionamiento, el regulador pasa al modo
de operación Inactivo.
TRUE Si se produce el siguiente error, PID_3Step permanece en el modo activo:
• 0020h: La optimización inicial no está permitida durante la optimización fina.
Los siguientes errores se omiten:
• 10000h: Valor no válido en el parámetro ManualValue.
• 20000h: Valor no válido en la variable SavePosition.
Con todos los demás errores, PID_3Step interrumpe la optimización y cambia al modo desde el que se ini­
ció la optimización.

Modo manual
En el modo manual, ActivateRecoverMode no tiene efecto.
Consulte
también
Variables estáticas PID_3Step V2 (Página 291)
Parámetros State y Mode V2 (Página 300)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 309
Instrucciones
10.2 PID_3Step

[Link] Variable Warning V2

Si hay varias advertencias presentes a la vez, los valores de las advertencias se muestran
sumados binariamente. Si se muestra p. ej. la advertencia 0005h, significa que las
advertencias 0001h y 0004h están presentes simultáneamente.
Warning Descripción
(DW#16#...)
0000 No hay advertencias pendientes.
0001 Durante la optimización inicial no se encontró el punto de inflexión.
0004 La consigna ha sido limitada a los límites ajustados.
0008 En el método de cálculo seleccionado no se han definido todas las propiedades necesarias del sistema re­
gulado. En sustitución se calcularon los parámetros PID con el método [Link] = 3.
0010 No se ha podido cambiar el modo de operación porque Reset = TRUE o ManualEnable = TRUE.
0020 El tiempo de muestreo del algoritmo PID está limitado por el tiempo de ciclo del OB invocante.
Para obtener mejores resultados, utilice tiempos de ciclo más cortos para el OB.
0040 El valor real ha rebasado por exceso uno de sus límites de advertencia.
0080 Valor no válido en Mode. El modo de operación no se conmuta.
0100 El valor manual ha sido limitado a los límites de la salida del regulador.
0200 No se admiten las reglas indicadas para la optimización. No se calculan parámetros PID.
0400 El tiempo de posicionamiento no se puede medir porque los ajustes del elemento final de control no con­
cuerdan con el método de medición seleccionado.
0800 En la medición del tiempo de posicionamiento, la diferencia entre la posición actual y el nuevo valor de
salida es insuficiente. Esto puede ocasionar resultados erróneos. La diferencia entre el valor de salida ac­
tual y el nuevo valor de salida debe ser de al menos un 50% del rango de posicionamiento total.
1000 El valor de salida sustitutivo no puede alcanzarse porque está fuera de los límites del valor de salida.
2000 El actuador se mueve en un sentido durante un tiempo superior a [Link] × Re­
[Link]. Compruebe si el actuador ha alcanzado una señal de tope.

Las siguientes advertencias se eliminan en cuanto la causa se soluciona:


• 0001h
• 0004h
• 0008h
• 0040h
• 0100h
• 2000h
Todas las demás advertencias se eliminan si hay un flanco ascendente en Reset o ErrorAck.

Regulación PID
310 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

10.2.5 PID_3Step V1

[Link] Descripción PID_3Step V1

Descripción
Con la instrucción PID_3Step se puede configurar un regulador PID con autooptimización para
válvulas o elementos de control final con comportamiento integrador.
Se dispone de los modos de operación siguientes:
• Inactivo
• Optimización inicial
• Optimización fina
• Modo automático
• Modo manual
• Aproximar al valor de salida sustitutivo
• Medición del tiempo de posicionamiento
• Aproximar al valor de salida sustitutivo con monitorización de errores
• Monitorización de errores
Los modos de operación se describen detalladamente en el parámetro State.

Algoritmo PID
PID_3Step es un regulador PIDT1 con Anti-Windup y ponderación de la acción P y D. El valor
de salida se calcula con la siguiente fórmula.
1 TD · s
[
Δ y = K p · s · (b · w - x) +
TI · s
(w - x) +
a · TD · s + 1
(c · w - x) ]
Δy Valor de salida del algoritmo PID
Kp Ganancia proporcional
s Operador laplaciano
b Ponderación de la acción P
w Consigna
x Valor real
TI Tiempo de integración
a Coeficiente para el retardo de la acción derivada (T1 = a x TD)
TD Tiempo derivativo
c Ponderación de la acción D

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 311
Instrucciones
10.2 PID_3Step

Diagrama de bloques sin realimentación de posición

,QSXW:DUQLQJB+
39B$/50

,QSXW:DUQLQJB/

,QSXW3HU2Q
$QWL:LQGXS
&53B,1 6FDOH
,QSXWB3(5

 )DF ,QW

,QSXW 3,'7 ˂Y
$QWL:LQGXS  

/LPLW
6HWSRLQW  
2XWSXW3HU2Q
   

 

0DQXDO(QDEOH

0DQXDO9DOXH )$& 5RFB/LP





2XWSXW3HU2Q
/LPLW &53B287
2XWSXWB3(5
 



$GHDGB%

0DQXDO(QDEOH

0DQXDOB83

3XOVH2XW 2XWSXWB83
7KU6WS  2XWSXWB'1
0DQXDOB'1
 
  


 
 

Regulación PID
312 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Diagrama de bloques con realimentación de posición

39B$/50 ,QSXW:DUQLQJB+

,QSXW:DUQLQJB/

,QSXW3HU2Q
$QWL:LQGXS
&53B,1 6FDOH
,QSXWB3(5
 

 ,QW /LPLW
 )DF
,QSXW 3,'7
$QWL:LQGXS  ;

6HWSRLQW
/LPLW 0DQXDO(QDEOH 
˂9

0DQXDO9DOXH

)HHGEDFN3HU2Q
&53B,1 6FDOH
)HHGEDFNB3(5
 


)HHGEDFN

2XWSXW3HU2Q
&53B287
2XWSXWB3(5
  


 
 0DQXDO(QDEOH

0DQXDOB83 2XWSXWB83
 3XOVH2XW
$GHDGB% 7KU6WS

0DQXDOB'1 2XWSXWB'1



Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 313
Instrucciones
10.2 PID_3Step

Diagrama de bloques PIDT1 con Anti-Windup

E
6HWSRLQW Z

 '7 ' .
F 3
˂\

'HDGB% 


7L ,
6FDOHG,QSXW [

)DF7W $QWL:LQGXS

Llamada
PID_3Step se llama en un periodo constante del tiempo de ciclo del OB invocante
(preferentemente en un OB de alarma cíclica).

Cargar en dispositivo
Los valores actuales de variables remanentes solo se actualizan si se carga PID_3Step por
completo.
Cargar objetos tecnológicos en el dispositivo (Página 45)

Arranque
PID_3Step arranca simultáneamente con la CPU en el último modo de operación activo. Para
dejar PID_3Step en el modo de operación "Inactivo", ajuste RunModeByStartup = FALSE.

Regulación PID
314 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Comportamiento en caso de error


Cuando ocurren errores, estos se indican en el parámetro Error. El comportamiento de
PID_3Step se configura con las variables ErrorBehaviour y ActivateRecoverMode.

ErrorBeha­ ActivateReco­ Configuración del ajuste del Comportamiento


viour verMode actuador
Poner Output a
0 FALSE Valor de salida actual Cambio al modo de operación "Inactivo"
(Mode = 0)
0 TRUE Valor de salida actual por la Cambio al modo de operación "Monitori­
duración del error zación de errores" (Mode = 7)
1 FALSE Valor de salida sustitutivo Cambio al modo de operación "Aproximar
al valor de salida sustitutivo" (Mode = 5)
Cambio al modo de operación "Inactivo"
(Mode = 0)
1 TRUE Valor de salida sustitutivo Cambio al modo de operación "Aproximar
mientras dure el error a valor de salida sustitutivo con monitori­
zación de errores" (Mode = 8)
Cambio al modo de operación "Monitori­
zación de errores" (Mode = 7)
El parámetro ErrorBits indica qué errores han ocurrido.
Consulte
también
Parámetros State y [Link] V1 (Página 329)
Parámetro ErrorBits V1 (Página 334)
Configuración de PID_3Step V1 (Página 125)

[Link] Funcionamiento PID_3Step V1

Monitorizar límites del valor real


En las variables [Link] y [Link] es posible definir un límite
superior y uno inferior del valor real. Si el valor real se encuentra fuera de estos límites,
ocurre un error (ErrorBits = 0001hex).
En las variables [Link] y [Link] se definen un límite
de advertencia superior y uno inferior del valor real. Si el valor real se encuentra fuera de
estos límites de advertencia, se produce una advertencia (Warnings = 0040hex) y el
parámetro de salida InputWarning_H o InputWarning_L adopta el valor TRUE.

Limitar consigna
En las variables [Link] y [Link] es posible definir un
límite superior y uno inferior para la consigna. PID_3Step limita la consigna automáticamente
a los límites del valor real. Es posible limitar la consigna a un rango más pequeño. PID_3Step
verifica si dicho rango está dentro de los límites del valor real. Si la consigna está fuera de

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 315
Instrucciones
10.2 PID_3Step

estos límites, se utilizan los límites superior e inferior como consigna y el parámetro de salida
SetpointLimit_H o SetpointLimit_L adopta el valor TRUE.
La consigna se limita en todos los modos de operación.

Limitar el valor de salida


En las variables [Link] y [Link] se define un límite
superior y uno inferior del valor de salida. Los límites del valor de salida deben encontrarse
dentro del "Tope inferior" o el "Tope superior".
• Tope superior: [Link]
• Tope inferior: [Link]
Rige:
UpperPointOut ≥ OutputUpperLimit > OutputLowerLimit ≥ LowerPointOut
Los valores válidos para el "Tope superior" y el "Tope inferior" dependen de:
• FeedbackOn
• FeedbackPerOn
• OutputPerOn

OutputPerOn FeedbackOn FeedbackPerOn LowerPointOut UpperPointOut


FALSE FALSE FALSE No ajustable (0.0 %) No ajustable (100.0 %)
FALSE TRUE FALSE -100.0 % o 0.0 % 0.0 % o +100.0 %
FALSE TRUE TRUE -100.0 % o 0.0 % 0.0 % o +100.0 %
TRUE FALSE FALSE No ajustable (100.0 %) No ajustable (100.0 %)
TRUE TRUE FALSE -100.0 % o 0.0 % 0.0 % o +100.0 %
TRUE TRUE TRUE -100.0 % o 0.0 % 0.0 % o +100.0 %
Si OutputPerOn = FALSE y FeedbackOn = FALSE, no es posible limitar el valor de salida. Las
salidas digitales deben desactivarse en Actuator_H = TRUE o Actuator_L = TRUE o después de
un tiempo de desplazamiento del 110% del tiempo de posicionamiento del motor.
El valor de salida asciende a 27648 con un 100 % y a -27648 con un -100 %. PID_3Step debe
poder cerrar la válvula completamente. Por lo tanto el cero debe estar contenido en los
límites del valor de salida.

NOTA
Uso con dos o más actuadores
PID_3 Step no es adecuado para el uso con dos o más actuadores (p. ej., en aplicaciones de
calefacción/refrigeración), pues los actuadores diferentes necesitan también parámetros PID
diferentes para conseguir un buen comportamiento de regulación.

Valor de salida sustitutivo


En caso de error, PID_3Step puede emitir un valor de salida sustitutivo y conducir el elemento
final de control a una posición segura que se especifica en la variable SavePosition. El valor de
salida sustitutivo debe encontrarse dentro de los límites del valor de salida.

Regulación PID
316 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Vigilar la validez de las señales


Se vigila la validez de los valores de los siguientes parámetros:
• Setpoint
• Input
• Input_PER
• Feedback
• Feedback_PER
• Output

Vigilar el tiempo de muestreo PID_3Step


En el caso ideal, el tiempo de muestreo equivale al tiempo de ciclo del OB invocante. La
instrucción PID_3Step mide en cada caso el tiempo que transcurre entre dos llamadas. Este es
el tiempo de muestreo actual. Con cada cambio de modo de operación y en el primer
arranque se calcula la media de los 10 primeros tiempos de muestreo. Si el tiempo de
muestreo actual se desvía mucho de este valor medio, ocurre un error (ErrorBits = 0800 hex).
Durante la optimización PID_3Step cambia al modo de operación "Inactivo" cuando se dan las
siguientes condiciones:
• Valor medio nuevo >= 1,1 veces el valor medio antiguo
• Valor medio nuevo <= 0,9 veces el valor medio antiguo
PID_3Step cambia al modo de operación "Inactivo" cuando se dan las siguientes condiciones:
• Valor medio nuevo >= 1,5 veces el valor medio antiguo
• Valor medio nuevo <= 0,5 veces el valor medio antiguo

Tiempo de muestreo del algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo entre dos cálculos del valor de salida. Este se determina durante la
optimización y se redondea a un múltiplo del tiempo de ciclo. Todas las demás funciones de
PID_3Step se ejecutan con cada llamada.

Medir el tiempo de posicionamiento del motor


El tiempo de posicionamiento del motor es el tiempo en segundos que requiere el motor para
desplazar el elemento final de control del estado cerrado al estado abierto. El elemento final
de control se mueve en un sentido a como máximo el 110% del tiempo de posicionamiento
del motor. PID_3Step necesita un tiempo de posicionamiento del motor lo más preciso
posible para alcanzar un buen resultado de regulación. Los datos de la documentación del
elemento final de control son valores medios para este tipo de elemento final de control. El
valor puede variar para el elemento final de control que se use en cada momento. El tiempo
de posicionamiento del motor puede medirse durante la puesta en servicio. Los límites del
valor de salida no se tienen en cuenta durante la medición del tiempo de posicionamiento del
motor. El actuador puede desplazarse hasta el tope superior o inferior.
El tiempo de posicionamiento del motor se tiene en cuenta tanto en el cálculo del valor de
salida analógico como en el cálculo de los valores de salida digitales. Es necesario para el

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 317
Instrucciones
10.2 PID_3Step

correcto funcionamiento, sobre todo, durante la optimización automática y el


comportamiento Anti-Windup. Por tanto, configure el tiempo de posicionamiento del motor
con el valor que requiera el motor para desplazar el actuador del estado cerrado al estado
abierto.
Si en su proceso no actúa ningún tiempo de posicionamiento del motor relevante (p. ej., con
electroválvulas), de forma que el valor de salida actúa directamente y en toda su magnitud
sobre el proceso, utilice PID_Compact en su lugar.

Sentido de regulación
Por lo general, un aumento del valor de salida debe lograr un aumento del valor real. En este
caso, se habla de un sentido de regulación normal. Para refrigeración o para las regulaciones
de desagües puede ser necesario invertir el sentido de regulación. PID_3Step no funciona con
ganancia proporcional negativa. Si InvertControl = TRUE, un error de regulación ascendente
provocará una reducción del valor de salida. El sentido de regulación se tiene en cuenta
también durante la optimización inicial y la optimización fina.
Consulte
también
Configuración de PID_3Step V1 (Página 125)

[Link] Parámetros de entrada PID_3Step V1

Tabla 10-10  
Parámetro Tipo de da­ Ajuste prede­ Descripción
tos terminado
Setpoint REAL 0.0 Consigna del regulador PID en modo automático
Input REAL 0.0 Una variable del programa de usuario se utiliza como origen del
valor real.
Si utiliza el parámetro Input, debe cumplirse lo siguiente: Con­
[Link] = FALSE.
Input_PER WORD W#16#0 Una entrada analógica se utiliza como origen del valor real.
Si utiliza el parámetro Input_PER, debe cumplirse lo siguiente:
[Link] = TRUE.
Actuator_H BOOL FALSE Realimentación de posicionamiento digital de la válvula para el
tope superior
Si Actuator_H = TRUE la posición de la válvula se encuentra en
el tope superior y la válvula ya no se desplaza en ese sentido.
Actuator_L BOOL FALSE Realimentación de posición digital de la válvula para el tope in­
ferior
Si Actuator_L = TRUE la posición de la válvula se encuentra en el
tope inferior y la válvula ya no se desplaza en ese sentido.
Feedback REAL 0.0 Realimentación de posición de la válvula
Si utiliza el parámetro Feedback, debe cumplirse lo siguiente:
[Link] = FALSE.

Regulación PID
318 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
Feedback_PER WORD W#16#0 Realimentación de posición analógica de una válvula
Si utiliza el parámetro Feedback_PER, debe cumplirse lo siguien­
te: [Link] = TRUE.
Feedback_PER se escala a partir de las variables:
• [Link]
• [Link]
• [Link]
• [Link]
ManualEnable BOOL FALSE • El flanco FALSE -> TRUE selecciona el modo de operación
"Modo manual", State = 4, [Link] no cambia.
• El flanco TRUE -> FALSE selecciona el último modo de opera­
ción activo
La operación ManualEnable = TRUE no provoca un cambio en
[Link]. Hasta que no se llega al flanco TRUE -> FALSE en
ManualEnable , no se tiene en cuenta la modificación de Re­
[Link].
PID_3Step V1.1Si al arrancar la CPU ManualEnable = TRUE,
PID_3Step arranca en modo manual. No es necesario que se
produzca un flanco ascendente (FALSE > TRUE) en ManualEna­
ble.
PID_3Step V1.0
Al arrancar la CPU, PID_3Step únicamente pasa al modo manual
si se detecta un flanco ascendente (FALSE->TRUE) en ManualE­
nable . Si no se detecta un flanco ascendente, PID_3Step arran­
ca en el último modo de operación en el que ManualEnable era
FALSE.
ManualValue REAL 0.0 En el modo manual se especifica la posición absoluta de la vál­
vula. ManualValue solo se evalúa si se utiliza OutputPer o si se
dispone de una realimentación de posición.
Manual_UP BOOL FALSE En el modo manual cada flanco ascendente abre la válvula un 5
% del rango de posicionamiento total o durante el tiempo míni­
mo de posicionamiento del motor. Manual_UP sólo se evalúa si
ni se utiliza Output_PER ni hay disponible una realimentación de
posición.
Manual_DN BOOL FALSE En el modo manual cada flanco ascendente cierra la válvula un
5 % del rango de posicionamiento total o durante el tiempo mí­
nimo de posicionamiento del motor. Manual_DN sólo se evalúa
si ni se utiliza Output_PER ni hay disponible una realimentación
de posición.
Reset BOOL FALSE Realiza un rearranque completo del regulador.
• Flanco FALSE -> TRUE
– Cambio al modo de operación "Inactivo"
– ErrorBits y Warning se desactivan
– Los valores intermedios de la regulación se desactivan
(los parámetros PID se mantienen)
• Flanco TRUE -> FALSE
– Cambio al último modo de operación activo
– Si antes estaba activo el modo automático, la conmuta­
ción al modo automático tiene lugar sin discontinuida­
des.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 319
Instrucciones
10.2 PID_3Step

[Link] Parámetros de salida PID_3Step V1

Tabla 10-11  
Parámetro Tipo de da­ Ajuste prede­ Descripción
tos terminado
ScaledInput REAL 0.0 Valor real escalado
ScaledFeedback REAL 0.0 Realimentación de posición escalada
Con actuadores sin realimentación de posición, ScaledFeedback
indica la posición del actuador de modo muy impreciso. En tal
caso, ScaledFeedback solo puede usarse para una estimación
aproximada de la posición actual.
Output_UP BOOL FALSE Valor de salida digital para abrir la válvula
Si [Link] = FALSE, se utiliza el parámetro
Output_UP.
Output_DN BOOL FALSE Valor de salida digital para cerrar la válvula
Si [Link] = FALSE, se utiliza el parámetro
Output_DN.
Output_PER WORD W#16#0 Valor de salida analógico
Si [Link] = TRUE, se utiliza Output_PER.
Utilice Output_PER si desea utilizar como actuador una válvula
que se activa a través de una salida analógica y se controla con
una señal continua, como puede ser 0 a 10 V, 4 a 20 mA.
El valor de Output_PER se corresponde con la posición de desti­
no de la válvula, p. ej., Output_PER = 13824, cuando la válvula
debe abrirse hasta un 50 %.
SetpointLimit_H BOOL FALSE Cuando SetpointLimit_H = TRUE, significa que se ha alcanzado
el límite superior absoluto de la consigna. En la CPU la consigna
se limita al límite superior absoluto configurado para la consig­
na. Como límite superior de la consigna se preasigna el límite
superior absoluto configurado para el valor real.
Si se configura [Link] a un valor que se en­
cuentre dentro de los límites del valor real, este valor se utiliza
como límite superior de la consigna.
SetpointLimit_L BOOL FALSE Cuando SetpointLimit_L = TRUE, significa que se ha alcanzado el
límite inferior absoluto de la consigna. En la CPU la consigna se
limita al límite inferior absoluto configurado para la consigna.
Como límite inferior de la consigna se preasigna el límite infe­
rior absoluto configurado para el valor real.
Si se configura [Link] a un valor que se en­
cuentre dentro de los límites del valor real, este valor se utiliza
como límite inferior de la consigna.
InputWarning_H BOOL FALSE Cuando InputWarning_H = TRUE, significa que se ha alcanzado
o rebasado el límite superior de advertencia del valor real.
InputWarning_L BOOL FALSE Cuando InputWarning_L = TRUE, significa que se ha alcanzado o
rebasado por defecto el límite inferior de advertencia del valor
real.

Regulación PID
320 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
State INT 0 El parámetro State (Página 329) indica el modo de operación
actual del regulador PID. El modo de operación se cambia con la
variable [Link].
• State = 0: Inactivo
• State = 1: Optimización inicial
• State = 2: Optimización fina
• State = 3: Modo automático
• State = 4: Modo manual
• State = 5: Aproximación al valor de salida sustitutivo
• State = 6: Medición del tiempo de posicionamiento
• State = 7: Monitorización de errores
• State = 8: Aproximación al valor de salida sustitutivo con
monitorización de errores
Error BOOL FALSE Si Error = TRUE, existe al menos un aviso de error.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 334) muestra los avisos de error.

Consulte
también
Parámetros State y [Link] V1 (Página 329)
Parámetro ErrorBits V1 (Página 334)

[Link] Variables estáticas PID_3Step V1

NOTA
No se deben modificar las variables que no aparecen listadas. Estas solo se utilizan
internamente.
Modifique las variables marcadas con (1) solo en el modo de operación "Inactivo" para evitar
un comportamiento erróneo del regulador PID. El modo de operación "Inactivo" se fuerza con
el valor "0" en la variable "[Link]".

Tabla 10-12  
Variable Tipo de Ajuste Descripción
datos predeter­
minado
ActivateRecoverMode BOOL TRUE La variable ActivateRecoverMode (Página 336) determina el compor­
tamiento en caso de error.
RunModeByStartup BOOL TRUE Activar último modo de operación después del rearranque completo
de la CPU
Si RunModeByStartup = TRUE, el regulador regresa al último modo
de operación activo tras el arranque de la CPU.
Si RunModeByStartup = FALSE, el regulador permanece inactivo tras
un arranque de la CPU.
PhysicalUnit INT 0 Unidad física del valor real y de la consigna, p. ej. ºC o ºF.
PhysicalQuantity INT 0 Unidad física del valor real y de la consigna, p. ej. temperatura

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 321
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
ErrorBehaviour INT 0 Si ErrorBehaviour = 0, en caso de error la válvula permanece en la
posición actual y el regulador cambia directamente al modo de ope­
ración "Inactivo" o "Monitorización de errores".
Si ErrorBehaviour = 1, en caso de error el actuador se desplaza al va­
lor de salida sustitutivo y solo entonces pasa al modo de operación
"Inactivo" o "Monitorización de errores".
Si se producen los errores siguientes, la válvula ya no se puede des­
plazar a un valor de salida sustitutivo configurado.
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
Warning DWORD DW#16#0 La variable Warning (Página 329) muestra las advertencias desde Re­
set o desde el último cambio de modo de operación.
Las advertencias cíclicas (por ejemplo, advertencia del valor real) se
muestran mientras sigue existiendo la causa de la advertencia. Una
vez solucionada la causa, se borran automáticamente. Las adverten­
cias no cíclicas (como es la relativa al punto de inflexión no encon­
trado) se mantienen y se borran como se hace con los errores.
SavePosition REAL 0.0 Valor de salida sustitutivo
Si ErrorBehaviour = 1, en caso de error el elemento final de control
se desplaza a una posición segura para la instalación y solo entonces
se cambia al modo de operación "Inactivo".
El rango de valores permitido depende de la configuración.
• [Link] = FALSE y [Link] = FALSE:
SavePosition = 0.0 o bien 100.0
• [Link] = TRUE o [Link] = TRUE:
[Link] ≥ SavePosition ≥ [Link]­
Limit
CurrentSetpoint REAL 0.0 Consigna activa actualmente. Este valor se congela al iniciarse la op­
timización.
Progress REAL 0.0 Progreso de la optimización en porcentaje (0,0 - 100,0)
[Link](1) BOOL TRUE Si InputPerOn = TRUE, se utiliza el parámetro Input_PER. Si InputPe­
rOn = FALSE, se utiliza el parámetro Input.
[Link](1) BOOL FALSE Si OutputPerOn = TRUE, se utiliza el parámetro Output_PER. Si Out­
putPerOn = FALSE, se utilizan los parámetros Ouput_UP y
Output_DN.
[Link] BOOL FALSE Si LoadBackUp = TRUE, se carga nuevamente el último juego de pa­
rámetros PID. El juego se guardó antes de la última optimización.
LoadBackUp se ajusta automáticamente de nuevo a FALSE.
[Link](1) BOOL FALSE Inversión del sentido de regulación
Si InvertControl = TRUE, un error de regulación ascendente provoca­
rá una reducción del valor de salida.
[Link](1) BOOL FALSE Si FeedbackOn = FALSE, se simula una realimentación de posición.
Si FeedbackOn = TRUE, se activa por lo general la realimentación de
posición.

Regulación PID
322 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link](1) BOOL FALSE FeedbackPerOn solo está activo cuando FeedbackOn = TRUE.
Si FeedbackPerOn = TRUE, se utiliza la entrada analógica para la rea­
limentación de posición (parámetro Feedback_PER).
Si FeedbackPerOn = FALSE, se utiliza el parámetro Feedback para la
realimentación de posición.
[Link](1) BOOL FALSE Si ActuatorEndStopOn = TRUE, se tiene en cuenta la realimentación
de posición digital Actuator_L y Actuator_H .
[Link](1) REAL 120.0 Límite superior del valor real
En la entrada de periferia, el valor real puede encontrarse como má­
ximo un 18% por encima del rango normalizado (margen de satura­
ción). No se comunica ningún error más debido al rebase por exceso
del "Límite superior del valor real". Únicamente se detectan la rotura
de hilo y el cortocircuito y PID_3Step se comporta según la reacción
configurada en caso de error.
InputUpperLimit > InputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor real
InputLowerLimit < InputUpperLimit
[Link](1) REAL +3.40282­ Límite superior de advertencia del valor real
2e+38 Si se configura InputUpperWarning a un valor que se encuentre fue­
ra de los límites del valor real, el límite superior absoluto configura­
do para el valor real se utiliza como límite superior de advertencia.
Si se configura InputUpperWarning a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite supe­
rior de advertencia.
InputUpperWarning > InputLowerWarning
InputUpperWarning ≤ InputUpperLimit
[Link](1) REAL -3.40282­ Límite inferior de advertencia del valor real
2e+38 Si se configura InputLowerWarning a un valor que se encuentre fue­
ra de los límites del valor real, el límite inferior absoluto configurado
para el valor real se utiliza como límite inferior de advertencia.
Si se configura InputLowerWarning a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite infe­
rior de advertencia.
InputLowerWarning < InputUpperWarning
InputLowerWarning ≥ InputLowerLimit
[Link](1) REAL 100.0 Límite superior del valor de salida
El rango de valores siguiente es admisible:
UpperPointOut ≥ OutputUpperLimit > OutputLowerLimit
Para más detalles ver OutputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor de salida
El rango de valores siguiente es admisible:
OutputUpperLimit > OutputLowerLimit ≥ LowerPointOut
Si se usa Output_PER, el límite de valor de salida -100 % se corres­
ponde con el valor Output_PER = -27648; 100 % se corresponden
con el valor Output_PER = 27648.
Si OutputPerOn = FALSE y FeedbackOn = FALSE, OutputLowerLimit y
OutputUpperLimit no se evalúan. Seguidamente, Output_UP y
Output_DN se restablecen con Actuator_H = TRUE o
Actuator_L = TRUE (si ActuatorEndStopOn = TRUE) o tras un tiempo
de desplazamiento de 110 % * [Link] (si ActuatorEndS­
topOn = FALSE).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 323
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link](1) REAL +3.40282­ Límite superior de la consigna
2e+38 Si se configura SetpointUpperLimit a un valor que se encuentre fuera
de los límites del valor real, el límite superior absoluto configurado
para el valor real se preasigna como límite superior de la consigna.
Si se configura SetpointUpperLimit a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite supe­
rior de la consigna.
[Link](1) REAL - Límite inferior de la consigna
3.402822­ Si se configura SetpointLowerLimit a un valor que se encuentre fue­
e+38 ra de los límites del valor real, el límite inferior absoluto configurado
para el valor real se preasigna como límite inferior de la consigna.
Si se configura SetpointLowerLimit a un valor que se encuentre den­
tro de los límites del valor real, este valor se utiliza como límite infe­
rior de la consigna.
[Link](1) REAL 0.0 Tiempo conexión mín.
Tiempo en segundos, que debe estar conectado como mínimo el ele­
mento final de control.
[Link] solo es efectivo si se utilizan Output_UP y
Output_DN ([Link] = FALSE).
[Link](1) REAL 0.0 Tiempo OFF mín.
Tiempo en segundos, que debe estar desconectado como mínimo el
elemento final de control.
[Link] solo es efectivo si se utilizan Output_UP y
Output_DN ([Link] = FALSE).
[Link](1) REAL 30.0 Tiempo de posicionamiento del motor
Tiempo en segundos que requiere el elemento final de control para
desplazar la válvula del estado cerrado al estado abierto.
[Link]­ REAL 27648.0 Escalado Input_PER arriba
tIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 0.0 Escalado Input_PER abajo
tIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 100.0 Valor real superior escalado
tOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 0.0 Valor real inferior escalado
tOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura InputScaling, Input_PER
se convierte en porcentaje.
[Link]­ REAL 27648.0 Escalado Feedback_PER arriba
PointIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.

Regulación PID
324 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link]­ REAL 0.0 Escalado Feedback_PER abajo
PointIn(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
[Link]­ REAL 100.0 Tope superior
PointOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
El rango de valores permitido depende de la configuración.
• FeedbackOn = FALSE:
UpperPointOut = 100.0
• FeedbackOn = TRUE:
UpperPointOut = 100.0 o 0.0
UpperPointOut ≠ LowerPointOut
[Link]­ REAL 0.0 Tope inferior
PointOut(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn y Lo­
werPointOut, LowerPointIn de la estructura FeedbackScaling,
Feedback_PER se convierte en porcentaje.
El rango de valores permitido depende de la configuración.
• FeedbackOn = FALSE:
LowerPointOut = 0.0
• FeedbackOn = TRUE:
LowerPointOut = 0.0 o -100.0
LowerPointOut ≠ UpperPointOut
[Link] BOOL FALSE Si InvertDirection = FALSE, se abre completamente la válvula para
determinar el tiempo de posicionamiento, luego se cierra y se vuelve
a abrir.
Si InvertDirection = TRUE, se cierra completamente la válvula, luego
se abre y se vuelve a cerrar.
[Link] BOOL FALSE Si SelectFeedback = TRUE, durante la medición del tiempo de posi­
cionamiento se tendrá en cuenta Feedback_PER o Feedback.
Si SelectFeedback = FALSE, durante la medición del tiempo de posi­
cionamiento se tendrán en cuenta Actuator_H y Actuator_L.
[Link] BOOL FALSE Si Start = TRUE, se inicia la medición del tiempo de posicionamiento.
[Link] INT 0 Fase actual de la medición del tiempo de posicionamiento
• State = 0: Inactivo
• State = 1: Abrir válvula completamente
• State = 2: Cerrar válvula completamente
• State = 3: Desplazar válvula a la posición de destino (NewOutput)
• State = 4: Tiempo de posicionamiento medido correctamente
• State = 5: Medición del tiempo de posicionamiento cancelada
[Link] REAL 0.0 Posición de destino para la medición del tiempo de posicionamiento
con realimentación de posición
La posición de destino debe encontrarse dentro de los topes superior
e inferior. La diferencia entre NewOutput y ScaledFeedback debe es­
tar al menos por encima del 50% del margen de ajuste admisible.
[Link] BOOL TRUE Si StartEstimation = TRUE, se inicia la medición del tiempo de mues­
treo PID_3Step. Una vez finalizada la medición, [Link]­
mation = FALSE.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 325
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link] BOOL TRUE Si EnEstimation = TRUE, se calcula el tiempo de muestreo PID_3Step.
[Link] BOOL TRUE Si EnMonitoring = TRUE, se vigila el tiempo de muestreo PID_3Step.
Si no es posible ejecutar PID_3Step dentro del tiempo de muestreo,
se emite el error 0800h y se cambia el modo de operación. El modo
de operación al que se cambie depende de ActivateRecoverMode y
de ErrorBehaviour.
Si EnMonitoring = FALSE, el tiempo de muestreo PID_3Step no se vi­
gila, el error 0800h no se emite y el modo de operación no se cam­
bia.
[Link](1) REAL 0.1 Tiempo de muestreo PID_3Step en segundos
[Link] se determina automáticamente y equivale normal­
mente al tiempo de ciclo del OB invocante.
[Link] BOOL FALSE Valor almacenado de [Link]
Los valores de la estructura CtrlParamsBackUp pueden volverse a car­
gar con [Link] = TRUE.
[Link] REAL 1.0 Ganancia proporcional almacenada
[Link] REAL 20.0 Tiempo de integración almacenado
[Link] REAL 0.0 Tiempo derivativo almacenado
[Link] REAL 0.0 Coeficiente almacenado para el retardo de la acción derivada
[Link] REAL 0.0 Ponderación almacenada de la acción P
[Link] REAL 0.0 Ponderación almacenada de la acción D
[Link] REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID
[Link]­ REAL 0.0 Ancho de zona muerta almacenado del error de regulación
Band
[Link]­ BOOL FALSE Las propiedades del sistema regulado se almacenan durante la opti­
Params mización. Si CalculateSUTParams = TRUE, se vuelven a calcular los
parámetros PID basándose en estas propiedades. Los parámetros PID
se calculan según el método ajustado en TuneRuleSUT. Calculate­
SUTParams se ajusta a FALSE después del cálculo.
[Link] INT 1 Calcular los parámetros durante la optimización inicial según el mé­
todo:
• TuneRuleSUT = 0: PID rápido I (comportamiento de regulación
más rápido con amplitudes del valor de salida mayores que las de
TuneRuleSUT = 1)
• TuneRuleSUT = 1: PID lento I (comportamiento de regulación
más lento con amplitudes del valor de salida menores que las de
TuneRuleSUT = 0)
• TuneRuleSUT = 2: PID según Chien, Hrones, Reswick
• TuneRuleSUT = 3: PI según Chien, Hrones, Reswick
• TuneRuleSUT = 4: PID rápido II (comportamiento de regulación
más rápido con amplitudes del valor de salida mayores que las de
TuneRuleSUT = 5)
• TuneRuleSUT = 5: PID lento II (comportamiento de regulación
más lento con amplitudes del valor de salida menores que las de
TuneRuleSUT = 4)
Los métodos TuneRuleSUT = 0 y 1 se diferencian únicamente en el
cálculo de la ganancia proporcional de los métodos TuneRuleSUT = 4
y 5:

Regulación PID
326 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
Con TuneRuleSUT = 0 y 1, la ganancia proporcional se calcula par­
tiendo del tiempo de compensación del proceso. Con TuneRule­
SUT = 4 y 5, se hace partiendo del tiempo de retardo del proceso.
Con TuneRuleSUT = 4 y 5, se obtiene un valor mayor para la ganan­
cia proporcional y, con ello, un comportamiento de regulación más
rápido con amplitudes del valor de salida mayores que con TuneRu­
leSUT = 0 y 1.
[Link] INT 0 La variable [Link] muestra la fase actual de la optimización ini­
cial:
[Link] BOOL FALSE • RunIn = FALSE
Si la optimización fina se inicia desde los modos de operación
Inactivo o Manual, se inicia una optimización inicial.
Si la optimización fina se inicia desde el modo automático, los
parámetros PID existentes se regulan a la consigna.
Solo entonces comienza la optimización fina. Si no es preciso
realizar la optimización inicial, PID_3Step cambia al modo de
operación "Inactivo".
• RunIn = TRUE
La optimización inicial se omite. PID_3Step intenta alcanzar la
consigna con el valor de salida mínimo o máximo, lo que puede
ocasionar una sobreoscilación muy alta. Solo entonces comienza
la optimización fina.
RunIn se ajusta a FALSE después de la optimización fina.
[Link]­ BOOL FALSE Las propiedades del sistema regulado se almacenan durante la opti­
rams mización. Si CalculateTIRParams = TRUE, se vuelven a calcular los pa­
rámetros PID basándose en estas propiedades. Los parámetros PID se
calculan según el método ajustado en TuneRuleTIR. CalculateTIRPa­
rams se ajusta a FALSE después del cálculo.
[Link] INT 0 Calcular los parámetros durante la optimización fina según el méto­
do:
• TuneRuleTIR = 0: PID automático
• TuneRuleTIR = 1: PID rápido (comportamiento de regulación más
rápido con amplitudes del valor de salida mayores que las de Tu­
neRuleTIR =  2)
• TuneRuleTIR = 2: PID lento (comportamiento de regulación más
lento con amplitudes del valor de salida menores que las de Tu­
neRuleTIR = 1)
• TuneRuleTIR = 3: PID Ziegler-Nichols
• TuneRuleTIR = 4: PI Ziegler-Nichols
• TuneRuleTIR = 5: P Ziegler-Nichols
Para poder repetir el cálculo de los parámetros PID con CalculateTIR­
Params y TuneRuleTIR = 0, 1 o 2, la optimización fina anterior debe
haberse ejecutado también con TuneRuleTIR = 0, 1 o 2.
De no ser así, se utiliza TuneRuleTIR = 3.
Siempre es posible volver a calcular los parámetros PID con Calcula­
teTIRParams y TuneRuleTIR = 3, 4 o 5.
[Link] INT 0 La variable [Link] muestra la fase actual de la "optimización fina":

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 327
Instrucciones
10.2 PID_3Step

Variable Tipo de Ajuste Descripción


datos predeter­
minado
[Link] INT 0 Si cambia el valor de [Link], se conmuta a otro modo de ope­
ración.
El siguiente modo de operación se activa al cambiar de Mode a:
• Mode = 0: Inactivo
• Mode = 1: Optimización inicial
• Mode = 2: Optimización fina
• Mode = 3: Modo automático
• Mode = 4: Modo manual
• Mode = 5: Aproximación al valor de salida sustitutivo
• Mode = 6: Medición del tiempo de posicionamiento
• Mode = 7: Monitorización de errores
• Mode = 8: Aproximación al valor de salida sustitutivo con moni­
torización de errores
Mode es remanente.
[Link](1) BOOL FALSE Si SetByUser = FALSE, los parámetros PID se determinan de forma
automática y PID_3Step funciona con una zona muerta en el valor
de salida. El ancho de la zona muerta se calcula durante la optimiza­
ción a partir de una desviación estándar del valor de salida y se alma­
cena en [Link].
Si SetByUser = TRUE, los parámetros PID se introducen manualmente
y PID_3 Step funciona sin zona muerta en el valor de [Link]­
[Link] = 0.0
SetByUser es remanente.
[Link](1) REAL 1.0 Ganancia proporcional activa
Gain es remanente.
[Link](1) REAL 20.0 • Ti > 0.0: Tiempo de integración activo
• Ti = 0.0: La acción I está desactivada
Ti es remanente.
[Link](1) REAL 0.0 • Td > 0.0: Tiempo derivativo activo
• Td = 0.0: La acción D está desactivada
Td es remanente.
[Link](1) REAL 0.0 Coeficiente activo para el retardo de la acción derivada
TdFiltRatio es remanente.
[Link](1) REAL 0.0 Ponderación activa de la acción P
PWeighting es remanente.
[Link](1) REAL 0.0 Ponderación activa de la acción D
DWeighting es remanente.
[Link](1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID en segundos que se re­
dondea a un múltiplo entero del tiempo de ciclo del OB invocante.
Cycle es remanente.
[Link]­ REAL 0.0 Ancho de zona muerta del error de regulación
Band(1) InputDeadBand es remanente.

Regulación PID
328 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Consulte
también
Parámetros State y [Link] V1 (Página 329)
Variable ActivateRecoverMode V1 (Página 336)
Cargar objetos tecnológicos en el dispositivo (Página 45)

[Link] Parámetros State y [Link] V1

Interrelación de los parámetros


El parámetro State indica el modo de operación actual del regulador PID. El parámetro State
no puede modificarse.
Para cambiar el modo de operación debe modificarse la variable [Link]. Esto también
se aplica cuando [Link] ya contiene el valor para el nuevo modo de operación. A
continuación, por ejemplo, puede ajustarse primero [Link] = 0 y, después,
[Link] = 3. Si el modo de operación actual del regulador permite este cambio, State
adopta el valor de [Link].
Cuando PID_3Step cambia automáticamente el modo de operación, se aplica lo siguiente:
State != [Link].
Ejemplos:
• Después de una optimización inicial correcta
State = 3 y [Link] = 1
• En caso de error
State = 0 y [Link] mantiene el valor que tenía hasta ahora; por ejemplo,
[Link] = 3
• ManualEnalbe = TRUE
State = 4 y [Link] mantiene el valor que tenía hasta ahora; por ejemplo,
[Link] = 3

NOTA
Por ejemplo, es posible repetir una optimización fina correcta sin tener que finalizar el
modo automático con Mode = 0.
Si en un ciclo se ajusta [Link] a un valor no válido, como p. ej. 9999, esto no afecta
en modo alguno a State. En el siguiente ciclo se ajusta Mode = 2. Es posible crear una
modificación en [Link] sin tener que cambiar primero al modo de operación
"Inactivo".

Significado de los valores

State / Re­ Descripción


[Link]
0 Inactivo
El regulador está desconectado y ya no modifica la posición de la válvula.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 329
Instrucciones
10.2 PID_3Step

State / Re­ Descripción


[Link]
1 Optimización inicial
La optimización inicial determina el comportamiento del proceso a un impulso del valor de salida y busca el
punto de inflexión. A partir de la inclinación máxima y del tiempo muerto del sistema regulado se calculan los
parámetros PID óptimos.
Requisitos para la optimización inicial:
• State = 0 o State = 4
• ManualEnable = FALSE
• El tiempo de posicionamiento del motor está configurado o medido.
• La consigna y el valor real se encuentran dentro de los límites configurados.
Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los parámetros PID. Un
ruido del valor real es aceptable siempre que la subida del valor real sea considerablemente mayor que el rui­
do.
Antes de volver a calcular los parámetros PID, se guarda una copia de seguridad de estos y es posible reacti­
varlos con [Link]. La consigna se congela en la variable CurrentSetpoint.
Una vez realizada correctamente la optimización inicial se pasa al modo automático; si dicha optimización no
se realiza correctamente, se pasa al modo de operación "Inactivo".
La fase de optimización inicial se muestra con la variable [Link].
2 Optimización fina
La optimización fina genera una oscilación constante y limitada del valor real. A partir de la amplitud y fre­
cuencia de esta oscilación se optimizan los parámetros PID. Se analizan las diferencias entre el comportamien­
to del proceso durante la optimización inicial y la optimización fina. A partir de los resultados se vuelven a cal­
cular todos los parámetros PID. Los parámetros PID existentes después de la optimización fina muestran en su
mayoría un comportamiento de guía y ante fallos mucho mejor que los parámetros PID de la optimización ini­
cial.
PID_3Step intenta generar automáticamente una oscilación que es mayor que el ruido del valor real. La esta­
bilidad del valor real ejerce tan solo una mínima influencia sobre la optimización fina.
Antes de la optimización fina se realiza una copia de seguridad de los parámetros PID. Estos pueden reactivar­
se con [Link]. La consigna se congela en la variable CurrentSetpoint.
Requisitos para la optimización fina:
• El tiempo de posicionamiento del motor está configurado o medido.
• La consigna y el valor real se encuentran dentro de los límites configurados.
• ManualEnable = FALSE
• Modo de operación Automático (State = 3), Inactivo (State = 0) o Manual (State = 4)
Al inicio, la optimización fina se desarrolla del modo siguiente:
• Modo automático (State = 3)
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la optimización fina desde el
modo automático.
PID_3Step regula con los parámetros PID existentes hasta que el lazo de regulación es estacionario y se
cumplen las condiciones para la optimización fina. Solo entonces comienza la optimización fina.
• Modo Inactivo (State = 0) o Manual (State = 4)
Se realiza primero una optimización inicial. Con los parámetros PID calculados, la regulación se realiza has­
ta que el lazo de regulación es estacionario y se han cumplido las condiciones para una optimización fina.
Si [Link] = TRUE, se omite la optimización inicial y se intenta alcanzar la consigna con el
valor de salida máximo o mínimo. lo que puede ocasionar una sobreoscilación muy alta. La optimización
fina comienza entonces automáticamente.
Una vez realizada correctamente la optimización fina, el regulador cambia al modo de operación "Automático"
y, si dicha optimización no se ejecuta correctamente, se pasa al modo de operación "Inactivo".
La fase de optimización fina se muestra con la variable [Link].

Regulación PID
330 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

State / Re­ Descripción


[Link]
3 Modo automático
En el modo automático, PID_3Step regula el sistema regulado conforme a los parámetros predefinidos.
Cuando se cumple uno de los requisitos siguientes, se cambia al modo automático:
• Optimización inicial finalizada correctamente.
• Optimización fina finalizada correctamente.
• Cambio de la variable [Link] al valor 3.
Si se conecta la CPU o se cambia de STOP a RUN, PID_3Step arranca en el último modo de operación activo.
Para dejar PID_3Step en el modo de operación "Inactivo", ajuste RunModeByStartup = FALSE.
En el modo automático se tiene en cuenta la variable ActivateRecoverMode.
4 Modo manual
En el modo manual, se especifican valores de salida manuales en los parámetros Manual_UP y Manual_DN o
ManualValue. El parámetro ErrorBits describe si el actuador se puede desplazar al valor de salida en caso de
error.
Este modo de operación se activa si [Link] = 4 o en caso de un flanco ascendente en ManualEnable.
Si ManualEnable adopta el valor TRUE, únicamente cambia State. [Link] permanece en el valor actual.
Con un flanco descendente en ManualEnable, PID_3Step regresa al modo de operación previo.
El cambio al modo automático se efectúa sin discontinuidad.
PID_3Step V1.1
En caso de error siempre se puede recurrir al modo manual.
PID_3Step V1.0
En caso de error, el modo manual depende de las variables ActivateRecoverMode.
5 Aproximar al valor de salida sustitutivo
Este modo de operación se activa en caso de error o si Reset = TRUE cuando Errorbehaviour = 1 y ActivateRe­
coverMode = FALSE..
PID_3Step desplaza el elemento final de control al valor de salida sustitutivo y cambia después al modo de
operación "Inactivo".
6 Medición del tiempo de posicionamiento
Se mide el tiempo que requiere el motor para abrir completamente la válvula a partir del estado cerrado.
Este modo de operación se activa si a su vez se activa [Link] = TRUE.
Si se utilizan señales de tope para la medición del tiempo de posicionamiento, la válvula se abre completa­
mente desde la posición actual, luego se cierra completamente y se vuelve a abrir completamente. Si Get­
[Link] = TRUE, el comportamiento se invierte.
Si se utiliza una realimentación de posición para la medición del tiempo de posicionamiento, el elemento final
de control se desplaza desde la posición actual a una posición de destino.
Los límites del valor de salida no se tienen en cuenta durante la medición del tiempo de posicionamiento. El
actuador puede desplazarse hasta el tope superior o inferior.
7 Monitorización de errores
El algoritmo de regulación está desconectado y ya no modifica la posición de la válvula.
Este modo de operación se activa en caso de error en lugar del modo de operación "Inactivo".
Deben haberse cumplido todas las condiciones siguientes:
• Mode = 3 (modo automático)
• Errorbehaviour = 0
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode (Página 336).
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.
8 Aproximar al valor de salida sustitutivo con monitorización de errores
Este modo de operación se activa en caso de error en lugar del modo de operación "Aproximar al valor de sali­
da sustitutivo". PID_3Step desplaza el elemento final de control o actuador al valor de salida sustitutivo y cam­
bia después al modo de operación "Monitorización de errores".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 331
Instrucciones
10.2 PID_3Step

State / Re­ Descripción


[Link]
Deben haberse cumplido todas las condiciones siguientes:
• Mode = 3 (modo automático)
• Errorbehaviour = 1
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode (Página 336).
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.

Cambio automático de modo de operación durante la puesta en servicio


En caso de error, PID_3Step cambia automáticamente el modo de operación. El diagrama
siguiente muestra la influencia de ErrorBehaviour en el cambio de modo desde los modos de
medición del tiempo de posicionamiento, optimización inicial y optimización fina.

,QDFWLYR  

(UURU%HKDYLRXU  (UURU%HKDYLRXU  (UURU%HKDYLRXU 

0HGLFLµQGHOWLHPSRGH 2SWLPL]DFLµQLQLFLDO  2SWLPL]DFLµQILQD  


SRVLFLRQDPLHQWR  

(UURU%HKDYLRXU  (UURU%HKDYLRXU  (UURU%HKDYLRXU 

0RGRDXWRP£WLFR  

$SUR[LPDUDOYDORUGHVDOLGDVXVWLWXWLYR  

 Cambio automático del modo de operación en caso de error

 Cambio automático del modo de operación cuando ha concluido el modo actual.

Regulación PID
332 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Cambio automático del modo de operación en el modo automático (PID_3Step V1.1)


En caso de error, PID_3Step cambia automáticamente el modo de operación. El diagrama
siguiente muestra la influencia de ErrorBehaviour y ActivateRecoverMode sobre este cambio
del modo de operación.

,QDFWLYR   0RQLWRUL]DFLµQGHHUURUHV 

(UURU%HKDYLRXU  (UURU%HKDYLRXU 


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

0RGRDXWRP£WLFR  

(UURU%HKDYLRXU  (UURU%HKDYLRXU 


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

$SUR[LPDUDOYDORUPDQLSXODGRGHVHJXULGDG   $SUR[LPDUDOYDORUPDQLSXODGRGHVHJXULGDG
FRQPRQLWRUL]DFLµQGHHUURUHV  

 Cambio automático del modo de operación en caso de error

 Cambio automático del modo de operación cuando ha concluido el modo actual.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 333
Instrucciones
10.2 PID_3Step

Cambio automático del modo de operación en el modo automático y en el modo manual


(PID_3Step V1.0)
En caso de error, PID_3Step cambia automáticamente el modo de operación. El diagrama
siguiente muestra la influencia de ErrorBehaviour y ActivateRecoverMode sobre este cambio
del modo de operación.

,QDFWLYR   0RQLWRUL]DFLµQGHHUURUHV 

(UURU%HKDYLRXU  (UURU%HKDYLRXU  (UURU%HKDYLRXU 


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

0RGRPDQXDO   0RGRDXWRP£WLFR  

$FWLYDWH5HFRYHU0RGH 758(

(UURU%HKDYLRXU  (UURU%HKDYLRXU  (UURU%HKDYLRXU 


$FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH )$/6( $FWLYDWH5HFRYHU0RGH 758(

$SUR[LPDUDOYDORUGHVDOLGDVXVWLWXWLYR   $SUR[LPDUDOYDORUGHVDOLGDVXVWLWXWLYRFRQ
PRQLWRUL]DFLµQGHHUURUHV  

 Cambio automático del modo de operación en caso de error

 Cambio automático del modo de operación cuando ha concluido el modo actual.

Cambio automático del modo de operación cuando ya no existe el error.

Consulte
también
Variable ActivateRecoverMode V1 (Página 336)
Parámetro ErrorBits V1 (Página 334)

[Link] Parámetro ErrorBits V1

Si hay varios errores presentes a la vez, los valores del código de error se muestran sumados
binariamente. Si se muestra, p. ej., el código de error 0003, significa que están presentes
simultáneamente los errores 0001 y 0002.
ErrorBits Descripción

(DW#16#...)
0000 No hay ningún error.

Regulación PID
334 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

ErrorBits Descripción

(DW#16#...)
0001 El parámetro "Input" se encuentra fuera de los límites del valor real.
• Input > [Link] o bien
• Input < [Link]
Si ActivateRecoverMode = TRUE y ErrorBehaviour = 1, el actuador se desplaza al valor de salida sustitutivo.
Si ActivateRecoverMode = TRUE y ErrorBehaviour = 0, el actuador se mantiene en la posición actual. Si Ac­
tivateRecoverMode = FALSE, el actuador se mantiene en la posición actual.
PID_3Step V1.1
En el modo manual, el actuador se puede desplazar.
PID_3Step V1.0
El modo manual no es posible en este estado. Una vez eliminado el error, el actuador se puede volver a
desplazar.
0002 Valor no válido en el parámetro "Input_PER". Compruebe si hay un error en la entrada analógica.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
0004 Error durante la optimización fina. No se ha podido mantener la oscilación del valor real.
0020 La optimización inicial no está permitida en el modo automático ni durante la optimización fina.
0080 Error durante la optimización inicial. Los límites del valor de salida no están configurados correctamente o
el valor real no responde de la forma esperada.
Compruebe si los límites del valor de salida están configurados correctamente y si encajan con el sentido
de la regulación.
Asegúrese también de que el valor real no oscile fuertemente antes de iniciar la optimización inicial.
0100 Un error en la optimización fina ha provocado parámetros no válidos.
0200 Valor no válido en el parámetro "Input": El valor no tiene un formato numérico válido.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
0400 Error al calcular el valor de salida. Compruebe los parámetros PID.
0800 Error de tiempo de muestreo: PID_3Step no se llama dentro del tiempo de muestreo del OB de alarma cí­
clica.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
Si este error se ha producido durante la simulación con PLCSIM, tenga en cuenta las indicaciones de Simu­
lación de PID_3Step V1 con PLCSIM (Página 141).
1000 Valor no válido en el parámetro "Setpoint": El valor no tiene un formato numérico válido.
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
2000 Valor no válido en el parámetro Feedback_PER.
Compruebe si hay un error en la entrada analógica.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. El modo
manual no es posible en este estado. Para poder desplazar el actuador desde este estado, es necesario de­
sactivar la realimentación de posición (Config. FeedbackOn = FALSE).
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.
4000 Valor no válido en el parámetro Feedback. El valor no tiene un formato numérico válido.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. El modo
manual no es posible en este estado. Para poder desplazar el actuador desde este estado, es necesario de­
sactivar la realimentación de posición (Config. FeedbackOn = FALSE).
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 335
Instrucciones
10.2 PID_3Step

ErrorBits Descripción

(DW#16#...)
8000 Error en la realimentación digital de posición. Actuator_H = TRUE y Actuator_L = TRUE.
El actuador no puede desplazarse al valor de salida sustitutivo y permanece en la posición actual. El modo
manual no es posible en este estado.
Para poder desplazar el actuador desde este estado, es necesario desactivar las "Señales de tope del actua­
dor" ([Link] = FALSE).
Si antes de aparecer el error estaba activo el modo automático, ActivateRecoverMode = TRUE y el error ya
no está presente, PID_3Step pasa de nuevo al modo automático.

[Link] Parámetro Reset V1

Un flanco ascendente en Reset hace que se pase al modo de operación "Inactivo" y se


desactiven los errores y las advertencias. Un flanco descendente en Reset provoca un cambio
al último modo de operación activo. Si antes estaba activo el modo automático, la
conmutación al modo automático tiene lugar sin discontinuidades.
5HVHW


W PV
0RGH


W PV
6WDWH


W PV
   

① Conexión
② Error
③ Reset

[Link] Variable ActivateRecoverMode V1

La influencia de las variables ActivateRecoverMode depende de la versión de la instrucción


PID_3Step.

Regulación PID
336 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Comportamiento en la versión 1.1


La variable ActivateRecoverMode determina en el modo automático el comportamiento en
caso de error. Durante la optimización inicial, la optimización fina y la medición del tiempo de
posicionamiento, ActivateRecoverMode no afecta.
ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_3Step pasa al modo de operación "Inactivo" o "Aproximar al valor de salida sustituti­
vo". El regulador únicamente se activa tras un rearme o después de un cambio en [Link].
TRUE Si en el modo automático se producen errores con frecuencia, este ajuste empeorará el comportamiento
de regulación. Compruebe en tal caso el parámetro ErrorBits y elimine la causa de error.
Si se produce uno o varios de los errores siguientes, PID_3Step pasa al modo operativo "Aproximar a valor
de salida sustitutivo con monitorización de errores" o "Monitorización de errores":
• 0002h: Valor no válido en el parámetro Input_PER.
• 0200h: Valor no válido en el parámetro Input.
• 0800h: Error de tiempo de muestreo
• 1000h: Valor no válido en el parámetro Setpoint.
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
Con los errores 2000h, 4000h y 8000h, PID_3Step no puede efectuar una aproximación al valor de salida
sustitutivo configurado.
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.

Comportamiento en la versión 1.0


La variable ActivateRecoverMode determina tanto en el modo automático como en el modo
manual el comportamiento en caso de error. Durante la optimización inicial, la optimización
fina y la medición del tiempo de posicionamiento, ActivateRecoverMode no afecta.
ActivateRecover­ Descripción
Mode
FALSE En caso de error, PID_3Step pasa al modo de operación "Inactivo" o "Aproximar al valor de salida sustituti­
vo". El regulador únicamente se activa tras un rearme o después de un cambio en [Link].
TRUE Error en el modo automático
Si en el modo automático se producen errores con frecuencia, este ajuste empeorará el comportamiento
de regulación. Compruebe en tal caso el parámetro ErrorBits y elimine la causa de error.
Si se produce uno o varios de los errores siguientes, PID_3Step pasa al modo operativo "Aproximar a valor
de salida sustitutivo con monitorización de errores" o "Monitorización de errores":
• 0002h: Valor no válido en el parámetro Input_PER.
• 0200h: Valor no válido en el parámetro Input.
• 0800h: Error de tiempo de muestreo
• 1000h: Valor no válido en el parámetro Setpoint.
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
Con los errores 2000h, 4000h y 8000h, PID_3Step no puede efectuar una aproximación al valor de salida
sustitutivo configurado.
En cuanto los errores dejan de estar activos, PID_3Step pasa de nuevo al modo automático.
Error en el modo manual

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 337
Instrucciones
10.2 PID_3Step

ActivateRecover­ Descripción
Mode
Si se produce uno o varios de los errores siguientes, PID_3Step permanece en el modo manual:
• 0002h: Valor no válido en el parámetro Input_PER.
• 0200h: Valor no válido en el parámetro Input.
• 0800h: Error de tiempo de muestreo
• 1000h: Valor no válido en el parámetro Setpoint.
• 2000h: Valor no válido en el parámetro Feedback_PER.
• 4000h: Valor no válido en el parámetro Feedback.
• 8000h: Error en la realimentación digital de posición.
Con los errores 2000h, 4000h y 8000h, la válvula no se puede desplazar a una posición apropiada.

Consulte
también
Variables estáticas PID_3Step V1 (Página 321)
Parámetros State y [Link] V1 (Página 329)

[Link] Variable Warning V1

Si hay varias advertencias presentes a la vez, los valores de las advertencias se muestran
sumados binariamente. Si se muestra p. ej. la advertencia 0003, significa que están presentes
simultáneamente las advertencias 0001 y 0002.
Warning Descripción
(DW#16#...)
0000 No hay advertencias pendientes.
0001 Durante la optimización inicial no se encontró el punto de inflexión.
0002 Durante la optimización fina la oscilación fue más intensa.
0004 La consigna ha sido limitada a los límites ajustados.
0008 En el método de cálculo seleccionado no se han definido todas las propiedades necesarias del sistema re­
gulado. En sustitución se calcularon los parámetros PID con el método TuneRuleTIR = 3.
0010 No se ha podido cambiar el modo de operación, pues ManualEnable = TRUE.
0020 El tiempo de muestreo del algoritmo PID está limitado por el tiempo de ciclo del OB invocante.
Para obtener mejores resultados, utilice tiempos de ciclo más cortos para el OB.
0040 El valor real ha rebasado uno de sus límites de advertencia.
0080 Valor no válido en [Link]. El modo de operación no se conmuta.
0100 El valor manual ha sido limitado a los límites de la salida del regulador.
0200 La regla utilizada para la optimización no conduce a ningún resultado correcto o bien no se soporta.
0400 En la medición del tiempo de posicionamiento se ha seleccionado un método que no encaja con el ele­
mento final de control.
El tiempo de posicionamiento no se puede medir porque los ajustes del elemento final de control no con­
cuerdan con el método de medición seleccionado.
0800 En la medición del tiempo de posicionamiento, la diferencia entre la posición actual y el nuevo valor de
salida es insuficiente. Esto puede ocasionar resultados erróneos. La diferencia entre el valor de salida ac­
tual y el nuevo valo rde salida debe ser de al menos un 50% del rango de posicionamiento total.
1000 El valor de salida sustitutivo no puede alcanzarse porque está fuera de los límites del valor de salida.

Regulación PID
338 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.2 PID_3Step

Las siguientes advertencias se eliminan en cuanto la causa se soluciona:


• 0004
• 0020
• 0040
• 0100
Todas las demás advertencias se eliminan si hay un flanco ascendente en Reset.

[Link] Variable [Link] V1

[Link] Nombre Descripción


0 SUT_INIT Iniciar la optimización inicial
50 SUT_TPDN Determinar la posición inicial sin realimentación de posición
100 SUT_STDABW Calcular desviación estándar
200 SUT_GET_POI Determinar punto de inflexión
300 SUT_GET_RISETM Determinar el tiempo de subida
9900 SUT_IO Optimización inicial correcta
1 SUT_NIO Optimización inicial no correcta

[Link] Variable [Link] V1

[Link] Nombre Descripción


-100 TIR_FIRST_SUT No es posible realizar la optimización fina. Primero se efectúa una optimización ini­
cial.
0 TIR_INIT Iniciar la optimización fina
200 TIR_STDABW Calcular desviación estándar
300 TIR_RUN_IN Intentar alcanzar la consigna con el valor de salida máximo o mínimo.
400 TIR_CTRLN Intentar alcanzar consigna con los parámetros PID existentes
(si la optimización inicial fue correcta)
500 TIR_OSZIL Determinar oscilación y calcular parámetros
9900 TIR_IO Optimización fina correcta
1 TIR_NIO Optimización fina no correcta

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 339
Instrucciones
10.3 PID_Temp

10.3 PID_Temp

10.3.1 Novedades PID_Temp

PID_Temp V1.1
• Reacción del valor de salida al cambiar del modo de operación "Inactivo" al "Modo
automático"
La nueva opción IntegralResetMode = 4 se ha agregado y se ha definido como ajuste
predeterminado. Con IntegralResetMode = 4, al cambiar del modo de operación "Inactivo"
al "Modo automático" la acción I se preasigna automáticamente de forma que un error de
regulación provoque un salto del valor de salida PID con idéntico signo.
• Inicialización de la acción integral en el modo automático
La acción integral se puede inicializar en el modo automático con ayuda de las variables
OverwriteInitialOutputValue y [Link]. Esto simplifica el uso de PID_Temp para
regulaciones de transición.

10.3.2 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de PID_Temp.

CPU FW PID_Temp
S7-1200 A partir de V4.2 V1.1
V1.0
V4.1 V1.0
S7-1500 A partir de V3.0 V1.1
V2.0 a V2.9 V1.1
V1.0
V1.7 a V1.8 V1.0

10.3.3 Tiempo de ejecución de CPU y requerimiento de memoria PID_Temp V1

Tiempo de ejecución de CPU


Tiempos de ejecución de CPU típicos del objeto tecnológico PID_Temp a partir de la versión
V1.0 en función del tipo de CPU y el modo de operación para CPU estándar, F, T y TF.

CPU FW Tiempo ejecución CPU típ. modo Tiempo ejecución CPU típ.
automático optimización inicial y
optimización fina
CPU 1211 ≥ V4.1 290 µs 450 µs
CPU 1212
CPU 1214
CPU 1215

Regulación PID
340 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

CPU 1217 ≥ V4.1 290 µs 450 µs


CPU 1510SP ≤ V2.9 85 µs 140 µs
CPU 1511
CPU 1511C
CPU 1512C
CPU 1512SP
CPU 1513
CPU 1515 80 µs 110 µs
CPU 1516
CPU 1517 ≥ V1.7 12 µs 18 µs
CPU 1518 6 µs 9 µs
CPU 1510SP ≥ V3.0 70 µs 110 µs
CPU 1511
CPU 1512SP
CPU 1513
CPU 1514SP
CPU 1515 55 µs 90 µs
CPU 1516

Memoria requerida
Memoria requerida por un DB de instancia del objeto tecnológico PID_Temp a partir de la
versión V1.0.

Memoria requerida Memoria requerida por el DB de instancia de PID_Temp V1


Memoria de carga requerida Aprox. 17000 bytes
Memoria de trabajo total requerida 1280 bytes
Memoria de trabajo remanente requeri­ 100 bytes
da

10.3.4 PID_Temp

[Link] Descripción PID_Temp

Descripción
La instrucción PID_Temp ofrece un regulador PID con optimización integrada para procesos
de temperatura. PID_Temp está indicada para aplicaciones puramente de calefacción o de
calefacción/refrigeración.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 341
Instrucciones
10.3 PID_Temp

Se dispone de los modos de operación siguientes:


• Inactivo
• Optimización inicial
• Optimización fina
• Modo automático
• Modo manual
• Valor de salida sustitutivo con monitorización de errores
Los modos de operación se describen detalladamente en el parámetro State.

Algoritmo PID
PID_Temp es un regulador PIDT1 con Anti-Windup y ponderación de las acciones P y D. El
algoritmo PID funciona de acuerdo con la siguiente fórmula (zona de regulación y zona
muerta desactivadas):
1 TD · s
y = Kp [ (b · w - x) + T · s
I
(w - x) +
a · TD · s + 1
(c · w - x) ]
La siguiente tabla muestra el significado de los símbolos utilizados en la fórmula y en las
imágenes siguientes.

Símbolo Descripción Parámetros correspondientes de la ins­


trucción PID_Temp
y Valor de salida del algoritmo PID -
Kp Ganancia proporcional [Link]
[Link]
CoolFactor
s Operador laplaciano -
b Ponderación de la acción P [Link]
[Link]
w Consigna CurrentSetpoint
x Valor real ScaledInput
TI Tiempo de integración [Link]
[Link]
TD Tiempo derivativo [Link]
[Link]
a Coeficiente para el retardo de la acción [Link]
derivada (retardo de la acción derivada [Link]
T1 = a × TD)
c Ponderación de la acción D [Link]
[Link]
DeadZone Ancho de zona muerta [Link]
[Link]
ControlZone Ancho de zona de regulación [Link]
[Link]

Regulación PID
342 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Diagrama de bloques PID_Temp


InputPEROn
Scale PV_ALRM
Input_PER InputWarning_H
1 InputWarning_L

Input 0

z -1 sgn

CtrlParams
[Link]
Heat Ti …
[Link]
[Link] ...
SubstituteSetpointOn
ScaledInput
Setpoint
Limit PIDT1
0
SubstituteSetpoint CurrentSetpoint Anti Windup
1

Disturbance
State

=3 Limit
ManualValue PidOutputSum
=4

Scale
OutputHeat

PidOutput [Link]
Scale PWM
OffsetHeat
[Link]. =1
FALSE OutputHeat_PWM
OutputOffsetHeat
≠1

Split Limit Scale

=2
0 OutputHeat_PER
≠2

[Link]
Split Limit Scale
OutputCool
-1
1
0.0
0
[Link]. [Link]
Scale PWM
OutputOffsetCool
PidOutput 1 =1
FALSE FALSE OutputCool_PWM
OffsetCool
0 ≠1

Scale

1 =2
0 0 OutputCool_PER
0 ≠2

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 343
Instrucciones
10.3 PID_Temp

Diagrama de bloques PIDT1 con Anti-Windup

&XUUHQW6HWSRLQW Z E
&RQILJ2XWSXW+HDW
 3LG8SSHU/LPLW

F '7 .S
\ 




'HDG=RQH
&RQILJ2XWSXW+HDW
3LG/RZHU/LPLW
&RQILJ2XWSXW&RRO

 3LG/RZHU/LPLW

$QWL:LQGXS
6FDOHG,QSXW [ /LPLW ,

&RQWURO=RQH





Llamada
PID_Temp se llama en una base de tiempo constante de un OB de alarma cíclica.

Cargar en dispositivo
Los valores actuales de variables remanentes solo se actualizan si se carga PID_Temp por
completo.
Cargar objeto tecnológico en el dispositivo (Página 45)

Arranque
Al arrancar la CPU, PID_Temp se inicia en el modo guardado en el parámetro de entrada/salida
Mode. Para cambiar al modo de operación "Inactivo" durante el arranque, ajuste
RunModeByStartup = FALSE.

Regulación PID
344 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Comportamiento en caso de error


El comportamiento en caso de fallo viene determinado por las variables SetSubstituteOutput
y ActivateRecoverMode. Si ActivateRecoverMode = TRUE, el comportamiento depende
además del error aparecido.
SetSubstitu­ ActivateReco­ Editor de configuración Comportamiento
teOutput verMode > Ajustes básicos de la salida
> ajustar PidOutputSum a
Irrelevante FALSE Cero (inactivo) Cambio al modo de operación "Inactivo" (State = 0)
El valor de salida del algoritmo PID y todas las sali­
das para calefacción y refrigeración se ajustan a 0.
El escalado de las salidas para calefacción y refrige­
ración no está activo.
FALSE TRUE Valor actual para la duración del Cambio al modo de operación "Valor de salida sus­
error titutivo con monitorización de errores" (State = 5)
El valor de salida actual se transfiere al elemento fi­
nal de control o actuador mientras dure el error.
TRUE TRUE Valor de salida sustitutivo mientras Cambio al modo de operación "Valor de salida sus­
dure el error titutivo con monitorización de errores" (State = 5)
El valor de SubstituteOutput se transfiere al actua­
dor mientras dure el error.

PID_Temp utiliza ManualValue como valor de salida en el modo manual, excepto si


ManualValue no es válido.
• Si ManualValue no es válido, se utiliza SubstituteOutput.
• Si ManualValue y SubstituteOutput no son válidos, se utiliza
[Link].
El parámetro Error indica si hay algún un error presente en ese momento. Si no persiste el
error, se indica Error = FALSE. El parámetro ErrorBits muestra qué errores se han producido.
ErrorBits se reinicia mediante un flanco ascendente en Reset o ErrorAck.

[Link] Funcionamiento PID_Temp

Monitorizar límites del valor real


En las variables [Link] y [Link] es posible definir un límite
superior y uno inferior del valor real. Si el valor real se encuentra fuera de estos límites, se
produce un error (ErrorBits = 0000001h).
En las variables [Link] y [Link] se definen un límite
de advertencia superior y uno inferior del valor real. Si el valor real se encuentra fuera de
estos límites de advertencia, se produce una advertencia (Warning = 0000040h) y el
parámetro de salida InputWarning_H o InputWarning_L adopta el valor TRUE.

Limitar consigna
En las variables [Link] y [Link] se debe definir un
límite superior y uno inferior de la consigna. PID_Temp limita automáticamente la consigna a
los límites del valor real. Es posible limitar la consigna a un rango más pequeño. PID_Temp
verifica si dicho rango está dentro de los límites del valor real. Si la consigna se encuentra

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 345
Instrucciones
10.3 PID_Temp

fuera de estos límites, se utilizan los límites superior e inferior como consigna y el parámetro
de salida SetpointLimit_H o SetpointLimit_L adopta el valor TRUE.
La consigna se limita en todos los modos de operación.

Consigna sustitutiva
En las variables SubstituteSetpoint es posible especificar una consigna sustitutiva y activarla
con SubstituteSetpointOn = TRUE. Esto permite, p. ej., especificar directamente la consigna
temporalmente para un regulador esclavo en una cascada sin modificar el programa de
usuario. Los límites definidos para la consigna son válidos también para la consigna
sustitutiva.

Calefacción y refrigeración
Con el ajuste predeterminado, PID_Temp utiliza solo las salidas para la calefacción
(OutputHeat, OutputHeat_PWM, OutputHeat_PER). El valor de salida del algoritmo PID
(PidOutputSum) se escala y se emite en las salidas para calefacción. Con
[Link] puede definirse si se deben calcular OutputHeat_PWM o
OutputHeat_PER. OutputHeat se calcula siempre.
Con [Link] = TRUE se activan también las salidas para refrigeración
(OutputCool, OutputCool_PWM, OutputCool_PER). Los valores de salida positivos del
algoritmo PID (PidOutputSum) se escalan y se emiten a las salidas para calefacción. Los
valores de salida negativos del algoritmo PID se escalan y se emiten a las salidas para
refrigeración. Con [Link] puede definirse si se deben calcular
OutputCool_PWM o OutputCool_PER. OutputCool se calcula siempre.
Existen dos métodos para calcular el valor de salida PID estando la refrigeración activada:
• Factor de refrigeración ([Link] = FALSE):
El valor de salida para refrigeración se calcula con los parámetros PID para calefacción
considerando el factor de refrigeración configurable [Link]. Este método está
indicado si los actuadores de calefacción y refrigeración presentan un comportamiento
temporal similar pero ganancias distintas. Si se opta por este método, no estarán
disponibles la optimización inicial, la optimización fina para refrigeración ni el juego de
parámetros PID para refrigeración. Solo pueden ejecutarse las optimizaciones para
calefacción.
• Cambio de parámetros PID ([Link] = TRUE):
El valor de salida para refrigeración se calcula mediante un juego de parámetros PID
propio. Basándose en el valor de salida calculado y el error de regulación, el algoritmo PID
decide si se utilizarán los parámetros PID para calefacción o para refrigeración. Este
método está indicado si los actuadores de calefacción y refrigeración presentan
comportamientos temporales y ganancias distintas. La optimización inicial y la
optimización fina para refrigeración solo están disponibles si se elige este método.

Límites y escalado del valor de salida


En función del modo de operación, el valor de salida PID (PidOutputSum) se calcula
automáticamente mediante el algoritmo PID o se especifica mediante el valor manual
(ManualValue) o el valor de salida sustitutivo configurado (SubstituteOutput).

Regulación PID
346 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

El valor de salida PID se limita en función de la configuración:


• Si la refrigeración está desactivada ([Link] = FALSE), se aplica el límite
superior [Link] y el límite inferior
[Link].
• Si la refrigeración está activada ([Link] = TRUE), se aplica el límite
superior [Link] y el límite inferior
[Link].
El valor de salida PID se escala y se emite a las salidas para calefacción y refrigeración. El
escalado puede especificarse por separado para cada salida y se define mediante dos pares de
valores respectivos en las estructuras [Link] y [Link]:

Salida Par de valores Parámetro


OutputHeat Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida superior escalado (calefacción) [Link]­
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida inferior escalado (calefacción) [Link]­
[Link]
OutputHeat_PWM Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida PWM superior escalado (calefacción)
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida PWM inferior escalado (calefacción)
[Link]
OutputHeat_PER Par de valores 1 Límite superior del valor de salida PID (calefacción)
[Link],
Valor de salida analógico superior escalado (calefacción)
[Link]
Par de valores 2 Límite inferior del valor de salida PID (calefacción)
[Link],
Valor de salida analógico inferior escalado (calefacción)
[Link]
OutputCool Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida superior escalado (refrigeración)
[Link]
Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida inferior escalado (refrigeración)
[Link]
Si la refrigeración está activada ([Link] = TRUE), [Link] de­
be tener el valor 0.0.
[Link] debe tener siempre el valor 0.0.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 347
Instrucciones
10.3 PID_Temp

Salida Par de valores Parámetro


OutputCool_PWM Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida PWM superior escalado (refrigeración)
[Link]
Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida PWM inferior escalado (refrigeración)
[Link]
OutputCool_PER Par de valores 1 Límite inferior del valor de salida PID (refrigeración)
[Link],
Valor de salida analógico superior escalado (refrigeración)
[Link]
Par de valores 2 Límite superior del valor de salida PID (refrigeración)
[Link],
Valor de salida analógico inferior escalado (refrigeración)
[Link]
Si la refrigeración está activada ([Link] = TRUE), [Link] de­
be tener el valor 0.0.
[Link] debe tener siempre el valor 0.0.

Ejemplo:
Escalado de salida utilizando la salida OutputHeat (refrigeración desactivada;
[Link] debe ser distinto a 0.0):
2XWSXW+HDW

&RQILJ2XWSXW+HDW
8SSHU6FDOLQJ

&RQILJ2XWSXW+HDW
/RZHU6FDOLQJ
3LG2XWSXW6XP

&RQILJ2XWSXW+HDW &RQILJ2XWSXW+HDW
3LG/RZHU/LPLW 3LG8SSHU/LPLW

Ejemplo:
Escalado de salida utilizando la salida OutputHeat_PWM y OutputCool_PER (refrigeración
activada; [Link] debe ser 0.0):
OutputCool_PER OutputHeat_PWM

[Link].
PerUpperScaling [Link].
PwmUpperScaling

[Link].
PwmLowerScaling
[Link].
PerLowerScaling PidOutputSum
[Link].
[Link]. PidLowerLimit [Link].
PidLowerLimit =[Link]. PidUpperLimit
PidUpperLimit=0.0

Exceptuando el modo de operación "Inactivo", el valor en una salida se sitúa siempre entre su
valor de salida superior escalado y su valor de salida inferior escalado; p. ej., para OutputHeat

Regulación PID
348 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

debe estar siempre entre [Link] y


[Link].
Por eso, si se desea limitar el valor en la salida correspondiente, deben modificarse también
estos valores de escalado.

Conexión en cascada
PID_Temp le ayuda si se utiliza en una regulación en cascada (ver: Creación del programa
(Página 175)).

Valor de salida sustitutivo


PID_Temp puede emitir un valor de salida sustitutivo en caso de error que se predefine en la
variable SubstituteOutput. El valor de salida sustitutivo debe situarse dentro de los límites
para el valor de salida PID. Los valores resultantes del valor de salida sustitutivo en las salidas
para calefacción y refrigeración se obtienen del escalado de salida configurado.

Vigilar la validez de las señales


Se vigila la validez de los valores de los siguientes parámetros al utilizarlos:
• Setpoint
• SubstituteSetpoint
• Input
• Input_PER
• Disturbance
• ManualValue
• SubstituteOutput
• Parámetros PID en las estructuras [Link] y [Link].

Vigilancia del tiempo de muestreo PID_Temp


En el caso ideal, el tiempo de muestreo equivale al tiempo de ciclo del OB de alarma cíclica
invocante. La instrucción PID_Temp mide en cada caso el tiempo que transcurre entre dos
llamadas. Este es el tiempo de muestreo actual. Con cada cambio de modo de operación y en
el primer arranque se calcula la media de los 10 primeros tiempos de muestreo. Si el tiempo
de muestreo actual se desvía mucho de este valor medio, ocurre un error (Error = 0000800h).
Durante la optimización, el error se produce si:
• valor medio nuevo >= 1,1 veces el valor medio antiguo
• valor medio nuevo <= 0,9 veces el valor medio antiguo
En el modo automático, el error se produce si:
• Valor medio nuevo >= 1,5 veces el valor medio antiguo
• Valor medio nuevo <= 0,5 veces el valor medio antiguo
Si se desactiva la vigilancia del tiempo de muestreo ([Link] = FALSE),
puede llamarse PID_Temp también en el OB1. En tal caso, deberá aceptarse una regulación de
menor calidad, debido a la fluctuación del tiempo de muestreo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 349
Instrucciones
10.3 PID_Temp

Tiempo de muestreo del algoritmo PID


Dado que el sistema regulado necesita cierto tiempo para responder a un cambio del valor de
salida, no es razonable calcular este valor en cada ciclo. El tiempo de muestreo del algoritmo
PID es el tiempo que transcurre entre dos cálculos del valor de salida. Este se determina
durante la optimización y se redondea a un múltiplo del tiempo de ciclo del OB de alarma
cíclica (tiempo de muestreo PID_Temp). Todas las demás funciones de PID_Temp se ejecutan
con cada llamada.
Si la refrigeración y el cambio de parámetros PID están activados, PID_Temp utiliza en cada
caso un tiempo de muestreo propio del algoritmo PID para calefacción y refrigeración. En
todas las demás configuraciones se utiliza solo el tiempo de muestreo del algoritmo PID para
calefacción.
Si se utiliza OutputHeat_PWM o OutputCool_PWM, se emplea el tiempo de muestreo del
algoritmo PID como duración del período de la modulación del ancho de impulso. La precisión
de la señal de salida viene determinada por la relación entre el tiempo de muestreo del
algoritmo PID y el tiempo de ciclo del OB. El tiempo de ciclo debería ser como máximo una
décima parte del tiempo de muestreo del algoritmo PID.
Al utilizar OutputHeat_PWM o OutputCool_PWM, si el tiempo de muestreo del algoritmo PID,
y por tanto la duración del período de la modulación del ancho de impulso, es demasiado
grande para mejorar la uniformidad del valor real, en los parámetros
[Link] y [Link] respectivamente debe
especificarse una duración del período más corta.

Sentido de regulación
PID_Temp puede utilizarse para aplicaciones de calefacción o de calefacción/refrigeración y
trabaja de forma fija en el sentido de regulación normal.
Con un aumento del valor de salida PID (PidOutputSum) debería lograrse un aumento del
valor real. Los valores resultantes del valor de salida PID en las salidas para calefacción y
refrigeración se obtienen del escalado de salida configurado.
No se admite la inversión del sentido de regulación ni la ganancia proporcional negativa.
Si para la aplicación en cuestión solo se necesita un valor de salida cuyo aumento debe
provocar una reducción del valor real (p. ej., regulación de desagües), puede utilizarse
PID_Compact con el sentido de regulación invertido.

[Link] Parámetros de entrada PID_Temp

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Parámetro Tipo de datos Ajuste prede­ Descripción
terminado
Setpoint REAL 0.0 Consigna del regulador PID en modo automático
Rango de valores admisible:
[Link] ≥ Setpoint ≥ [Link]
[Link] ≥ Setpoint ≥ [Link]
Input REAL 0.0 Una variable del programa de usuario se utiliza como origen del valor real.
Si se utiliza el parámetro Input, debe cumplirse lo siguiente: [Link]­
rOn = FALSE.

Regulación PID
350 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input_PER INT 0 Una entrada analógica se utiliza como origen del valor real.
Si se utiliza el parámetro Input_PER, debe cumplirse lo siguiente: [Link]­
PerOn = TRUE.
Disturbance REAL 0.0 Magnitud perturbadora o valor de control anticipativo
ManualEnable BOOL FALSE • El flanco FALSE -> TRUE activa el modo de operación "Modo manual", State
= 4, Mode no cambia.
Mientras se cumple ManualEnable = TRUE, no es posible cambiar el modo
de operación mediante un flanco ascendente en ModeActivate, ni utilizar el
diálogo de puesta en servicio.
• El flanco TRUE -> FALSE activa el modo de operación especificado en Mode.
Se recomienda cambiar los modos de operación solo mediante Mode y Mo­
deActivate.
ManualValue REAL 0.0 Valor manual
Este valor se utiliza en el modo manual como valor de salida PID (PidOutput­
Sum).
Los valores resultantes de este valor manual en las salidas para calefacción y
refrigeración se obtienen del escalado de salida configurado (estructuras Con­
[Link] y [Link]).
Para reguladores con salida de refrigeración activada ([Link] =
TRUE) debe indicarse:
• un valor manual positivo, para emitir el valor a las salidas para calefacción;
• un valor manual negativo, para emitir el valor a las salidas para refrigera­
ción.
El rango de valores permitido depende de la configuración.
• Salida de refrigeración desactivada ([Link] = FALSE):
[Link] ≥ ManualValue ≥ [Link]­
[Link]
• Salida de refrigeración activada ([Link] = TRUE):
[Link] ≥ ManualValue ≥ [Link]­
[Link]
ErrorAck BOOL FALSE • Flanco FALSE -> TRUE
ErrorBits y Warning se desactivan.
Reset BOOL FALSE Realiza un rearranque completo del regulador.
• Flanco FALSE -> TRUE
– Cambio al modo de operación "Inactivo".
– ErrorBits y Warning se desactivan.
• Mientras se cumpla Reset = TRUE,
– PID_Temp permanece en el modo de operación "Inactivo" (State = 0);
– no es posible modificar el modo de operación mediante Mode y Mo­
deActivate o ManualEnable;
– no es posible utilizar el diálogo de puesta en marcha.
• Flanco TRUE -> FALSE
– Si ManualEnable = FALSE, PID_Temp cambia al modo de operación que
está guardado en Mode.
– Si Mode = 3 (modo automático), la acción I se trata como se haya confi­
gurado a través de la variable IntegralResetMode.
ModeActivate BOOL FALSE • Flanco FALSE -> TRUE
PID_Temp cambia al modo de operación que se ha ajustado en la entrada
Mode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 351
Instrucciones
10.3 PID_Temp

[Link] Parámetro de salida PID_Temp

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Parámetro Tipo de Ajuste prede­ Descripción
datos terminado
ScaledInput REAL 0.0 Valor real escalado
OutputHeat REAL 0.0 Valor de salida para calefacción en el formato REAL
El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y
[Link], [Link] y se emi­
te en el formato REAL a OutputHeat.
OutputHeat se calcula siempre.
OutputCool REAL 0.0 Valor de salida para refrigeración en el formato REAL
El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y Con­
[Link], [Link] y se emite en
el formato REAL a OutputCool.
OutputCool solo se calcula si la salida de refrigeración está activada ([Link]­
tivateCooling = TRUE).
OutputHeat_PER INT 0 Valor de salida para calefacción analógico
El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y
[Link], [Link] y se
emite como valor analógico a OutputHeat_PER.
OutputHeat_PER solo se calcula si [Link] = 2.
OutputCool_PER INT 0 Valor de salida para refrigeración analógico
El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y
[Link], [Link] y se
emite como valor analógico a OutputCool_PER.
OutputCool_PER solo se calcula si la salida de refrigeración está activada (Con­
[Link] = TRUE) y [Link] = 2.
OutputHeat_PW­ BOOL FALSE Valor de salida con modulación de ancho de impulsos para calefacción
M El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y
[Link], [Link] y se
emite como valor con modulación de ancho de impulsos (tiempos de conexión
y desconexión variables) a OutputHeat_PWM.
OutputHeat_PWM solo se calcula si [Link] = 1.
OutputCool_PW­ BOOL FALSE Valor de salida con modulación de ancho de impulsos para refrigeración
M El valor de salida PID (PidOutputSum) se escala mediante los dos pares de valo­
res [Link], [Link] y
[Link], [Link] y se
emite como valor con modulación de ancho de impulsos (tiempos de conexión
y desconexión variables) a OutputCool_PWM.
OutputCool_PWM solo se calcula si la salida de refrigeración está activada
([Link] = TRUE) y [Link] = 1.
SetpointLimit_H BOOL FALSE Si SetpointLimit_H = TRUE, significa que se ha alcanzado el límite superior ab­
soluto de la consigna (Setpoint ≥ [Link] o Setpoint ≥ Con­
[Link]).
La consigna se limita hacia arriba al mínimo a partir de [Link]­
mit y [Link].

Regulación PID
352 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Parámetro Tipo de Ajuste prede­ Descripción


datos terminado
SetpointLimit_L BOOL FALSE Si SetpointLimit_L = TRUE, significa que se ha alcanzado el límite inferior abso­
luto de la consigna (Setpoint ≤ [Link] o Setpoint ≤ Con­
[Link]).
La consigna se limita hacia abajo al máximo de [Link] y
[Link].
InputWarning_H BOOL FALSE Si InputWarning_H = TRUE, significa que se ha alcanzado o rebasado el límite
superior de advertencia del valor real (ScaledInput ≥ [Link]­
ning).
InputWarning_L BOOL FALSE Si InputWarning_L = TRUE, significa que se ha alcanzado o rebasado por defec­
to el límite inferior de advertencia del valor real (ScaledInput ≤ [Link]­
werWarning).
State INT 0 El Parámetros State y Mode PID_Temp (Página 381) indica el modo de opera­
ción actual del regulador PID. El modo de operación se cambia con el paráme­
tro de entrada Mode y un flanco ascendente en ModeActivate. Para Optimiza­
ción inicial y Optimización fina, con [Link] y [Link] se
define si la optimización se ejecuta para la calefacción o para la refrigeración.
• State = 0: Inactivo
• State = 1: Optimización inicial
• State = 2: Optimización fina
• State = 3: Modo automático
• State = 4: Modo manual
• State = 5: Valor de salida sustitutivo con monitorización de errores
Error BOOL FALSE Si Error = TRUE, existe al menos un mensaje de error en el ciclo actual.
ErrorBits DWORD DW#16#0 El Parámetro ErrorBits PID_Temp (Página 387) indica qué mensajes de error
existen.
ErrorBits es remanente y se reinicia mediante un flanco ascendente en Reset o
ErrorAck.

[Link] Parámetro de entrada/salida PID_Temp

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Parámetro Tipo de da­ Ajuste pre­ Descripción
tos determina­
do
Mode INT 4 Especifique en Mode el modo de operación al que debe cambiar PID_Temp. Posi­
bilidades:
• Mode = 0: Inactivo
• Mode = 1: Optimización inicial
• Mode = 2: Optimización fina
• Mode = 3: Modo automático
• Mode = 4: Modo manual
El modo se activa mediante:
• Flanco ascendente en ModeActivate
• Flanco descendente en Reset
• Flanco descendente en ManualEnable
• Arranque en frío de la CPU si RunModeByStartup = TRUE

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 353
Instrucciones
10.3 PID_Temp

Parámetro Tipo de da­ Ajuste pre­ Descripción


tos determina­
do
Para Optimización inicial y Optimización fina, con [Link] y [Link]­
bleTuning se define si la optimización se ejecuta para la calefacción o para la refri­
geración.
Mode es remanente.
Encontrará una descripción detallada de los modos de operación en Parámetros
State y Mode (Página 381).
Master DWORD DW#16#0 Interfaz para regulación en cascada
Si esta instancia PID_Temp se utiliza como regulador esclavo en una cascada
([Link] = TRUE), asigne el parámetro Maestro en la llamada de
instrucción con el parámetro "Esclavo" del regulador maestro.
Ejemplo:
Llamada de un regulador esclavo "PID_Temp_2" con regulador maestro
"PID_Temp_1" en SCL:
----------------------------------------------------------------------------
"PID_Temp_2" (Master := "PID_Temp_1".Slave, Setpoint :=
"PID_Temp_1".OutputHeat);
----------------------------------------------------------------------------
Mediante esta interfaz los reguladores esclavos intercambian información acerca
del modo de operación, la limitación y la consigna sustitutiva con su regulador
maestro. Tenga en cuenta que la llamada del regulador maestro debe realizarse
antes de la llamada del regulador esclavo y en el mismo OB de alarma cíclica.
Asignación:
• Bits 0 a 15: no asignado
• Bits 16 a 23, contador de limitaciones:
Un regulador esclavo cuyo valor de salida se encuentra en limitación incre­
menta este contador. El regulador maestro reacciona en consecuencia según
el número configurado de esclavos ([Link]) y el modo
Anti-Windup ([Link]).
• Bit 24, modo automático de los reguladores esclavos:
TRUE, si todos los reguladores esclavos se encuentran en el Modo automático
• Bit 25, consigna sustitutiva de los reguladores esclavos:
TRUE, si un regulador esclavo ha activado la consigna sustitutiva (Substitute­
SetpointOn = TRUE)
Slave DWORD DW#16#0 Interfaz para regulación en cascada
Mediante esta interfaz los reguladores esclavos intercambian información acerca
del modo de operación, la limitación y la consigna sustitutiva con su regulador
maestro.
Ver la descripción del parámetro "Maestro"

Consulte
también
Parámetros State y Mode PID_Temp (Página 381)
Creación del programa (Página 175)
Regulación en cascada con PID_Temp (Página 173)

Regulación PID
354 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

[Link] Variables estáticas PID_Temp

NOTA
Modifique las variables marcadas con (1) solo en el modo de operación "Inactivo" para evitar
un comportamiento erróneo del regulador PID.

Los nombres de las siguientes variables se aplican tanto para el bloque de datos como para el
acceso a través de Openness API.
Variable Tipo de Ajuste pre­ Descripción
datos determina­
do
IntegralResetMode Int V1.0: 1, La Variable IntegralResetMode (Página 395)determina cómo se
A partir de preasigna la acción I [Link] al cambiar del modo de
V1.1: 4 operación "Inactivo" al "Modo automático".
Este ajuste surte efecto solo para un ciclo.
• IntegralResetMode = 0: Filtrar
• IntegralResetMode = 1: Borrar
• IntegralResetMode = 2: Mantener
• IntegralResetMode = 3: Preasignar
• IntegralResetMode = 4: Como el cambio de consigna (solo
para PID_Temp con versión ≥ 1.1)
OverwriteInitialOutputValue REAL 0.0 Si se cumple una de las siguientes condiciones, la acción inte­
gral de [Link] se preasigna automáticamente como
si en el ciclo anterior hubiese sido PIDOutputSum = OverwriteI­
nitialOutputValue:
• IntegralResetMode = 3 al cambiar del modo de operación
"Inactivo" al "Modo automático"
• IntegralResetMode = 3, flanco TRUE -> FALSE en el paráme­
tro Reset y parámetro Mode = 3
• [Link] = TRUE en el "Modo automático" (disponible
a partir de PID_Temp versión 1.1)
RunModeByStartup BOOL TRUE Activar Mode después del rearranque de la CPU
• Si RunModeByStartup = TRUE, PID_Temp se inicia después
del arranque de la CPU en el modo de operación guardado
en Mode.
• Si RunModeByStartup = FALSE, PID_Temp permanece en
modo de operación "Inactivo" después del arranque de la
CPU.
LoadBackUp BOOL FALSE Si LoadBackUp  = TRUE, se carga nuevamente el último juego
de parámetros PID de la estructura CtrlParamsBackUp. El juego
se guardó antes de la última optimización. LoadBackUp se vuel­
ve a ajustar automáticamente a FALSE. El valor se aplica sin dis­
continuidad.
SetSubstituteOutput BOOL TRUE Selección del valor de salida mientras haya un error pendiente
(State = 5):

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 355
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
• Si SetSubstituteOutput = TRUE y ActivateRecoverMo­
de = TRUE, el valor de salida sustitutivo SubstituteOutput
configurado se emite como valor de salida PID mientras ha­
ya un error pendiente.
• Si SetSubstituteOutput = FALSE y ActivateRecoverMo­
de = TRUE, el actuador permanece en el valor de salida PID
actual mientras haya un error pendiente.
• Si ActivateRecoverMode = FALSE, SetSubstituteOutput que­
da sin efecto.
• Si SubstituteOutput no es válido (ErrorBits = 0020000h), el
valor de salida sustitutivo no se puede emitir. En este caso
se utiliza el límite inferior del valor de salida PID para cale­
facción ([Link]) como valor de
salida PID.
PhysicalUnit INT 0 Unidad física del valor real y de la consigna, p. ej. ºC o ºF.
PhysicalUnit se utiliza para la visualización en los editores y no
influye en el comportamiento del algoritmo de regulación en la
CPU.
Al importar PID_Temp a través de Openness API, PhysicalUnit se
restablece al valor estándar.
PhysicalQuantity INT 0 Unidad física del valor real y de la consigna, p. ej. temperatura.
PhysicalQuantity se utiliza para la visualización en los editores y
no influye en el comportamiento del algoritmo de regulación
en la CPU.
Al importar PID_Temp a través de Openness API, PhysicalQuan­
tity se restablece al valor estándar.
ActivateRecoverMode BOOL TRUE La variable ActivateRecoverMode determina el comportamiento
en caso de fallo.
Warning DWORD 0 La variable Warning muestra las advertencias desde Reset =
TRUE o ErrorAck =TRUE. Warning es remanente.
Progress REAL 0.0 Progreso de la fase actual de optimización en porcentaje (0.0 -
 100.0)
CurrentSetpoint REAL 0.0 CurrentSetpoint muestra siempre la consigna efectiva actual.
Este valor se congela durante la optimización.
CancelTuningLevel REAL 10.0 Fluctuación admisible de la consigna durante la optimización.
La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
SubstituteOutput REAL 0.0 El valor de salida sustitutivo se utiliza como valor de salida PID
siempre que se cumplan las siguientes condiciones:
• En el modo automático hay uno o varios errores pendientes
en los que interviene ActivateRecoverMode;
• SetSubstituteOutput = TRUE
• ActivateRecoverMode = TRUE
Los valores resultantes del valor de salida sustitutivo en las sali­
das para calefacción y refrigeración se obtienen del escalado de
salida configurado (estructuras [Link] y Con­
[Link]).

Regulación PID
356 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Para reguladores con salida de refrigeración activada (Con­
[Link] = TRUE) debe indicarse:
• un valor de salida sustitutivo positivo, para emitir el valor a
las salidas para calefacción;
• un valor de salida sustitutivo negativo, para emitir el valor a
las salidas para refrigeración.
El rango de valores permitido depende de la configuración.
• Salida de refrigeración desactivada ([Link]
= FALSE):
[Link] ≥ SubstituteOutput ≥
[Link]
• Salida de refrigeración activada ([Link] =
TRUE):
[Link] ≥ SubstituteOutput ≥
[Link]
PidOutputSum REAL 0.0 Valor de salida PID
PidOutputSum muestra el valor de salida del algoritmo PID. En
función del modo de operación se calcula automáticamente o
mediante el valor manual, o bien se especifica el valor de salida
sustitutivo configurado.
Los valores resultantes del valor de salida PID en las salidas para
calefacción y refrigeración se obtienen del escalado de salida
configurado (estructuras [Link] y [Link]­
[Link]).
PidOutputSum se limita en función de la configuración.
• Salida de refrigeración desactivada ([Link]
= FALSE):
[Link] ≥ PidOutputSum ≥ Con­
[Link]
• Salida de refrigeración activada (ConfigActivateCooling =
TRUE):
[Link] ≥ PidOutputSum ≥ Con­
[Link]
PidOutputOffsetHeat REAL 0.0 Offset del valor de salida PID para calefacción
PidOutputOffsetHeat se suma al valor que resulta de PidOutput­
Sum para el circuito de calefacción. Especifique un valor positi­
vo para PidOutputOffsetHeat para obtener un offset positivo en
las salidas para calefacción.
Los valores resultantes en las salidas para calefacción se obtie­
nen del escalado de salida configurado (estructura [Link]­
[Link]).
Este offset puede utilizarse para actuadores que necesitan un
valor mínimo fijo, p. ej., ventiladores con una velocidad míni­
ma.
PidOutputOffsetCool REAL 0.0 Offset del valor de salida PID para refrigeración
PidOutputOffsetCool se suma al valor que resulta de PidOutput­
Sum para el circuito de refrigeración. Especifique un valor ne­
gativo para PidOutputOffsetCool para obtener un offset positi­
vo en las salidas para refrigeración.
Los valores resultantes en las salidas para refrigeración se ob­
tienen del escalado de salida configurado (estructura Con­
[Link]).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 357
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Este offset puede utilizarse para actuadores que necesitan un
valor mínimo fijo, p. ej., ventiladores con una velocidad míni­
ma.
SubstituteSetpointOn BOOL FALSE Activa la consigna sustitutiva como consigna del regulador.
• FALSE = se utiliza el parámetro Setpoint;
• TRUE = el parámetro SubstituteSetpoint se utiliza como con­
signa.
SubstituteSetpointOn puede utilizarse para especificar directa­
mente la consigna de un regulador esclavo en una cascada sin
tener que modificar el programa de usuario.
SubstituteSetpoint REAL 0.0 Consigna sustitutiva
Si SubstituteSetpointOn = TRUE, se utiliza la consigna sustituti­
va SubstituteSetpoint como consigna.
Rango de valores admisible:
[Link] ≥ SubstituteSetpoint ≥ [Link]­
pointLowerLimit, [Link] ≥ SubstituteSet­
point ≥ [Link]
DisableCooling BOOL FALSE Para reguladores de calefacción ([Link] =
TRUE) en Modo automático, DisableCooling = TRUE desactiva el
circuito de refrigeración limitando PidOutputSum al límite infe­
rior 0.0.
PidOutputOffsetCool y el escalado de salida para las salidas pa­
ra refrigeración permanecen activos.
DisableCooling puede utilizarse para la optimización de aplica­
ciones multizona, para desactivar temporalmente el circuito de
calefacción, mientras haya reguladores que todavía no hayan
finalizado su optimización.
Este parámetro se ajusta manualmente/reinicia por parte del
usuario y no se reinicia automáticamente con la instrucción
PID_Temp.
AllSlaveAutomaticState BOOL FALSE Si dicha instancia PID_Temp se utiliza como regulador maestro
de una cascada ([Link] = TRUE), AllSlaveAu­
tomaticState = TRUE indica que todos los reguladores esclavos
se encuentran en el modo automático.
Los modos Optimización, Manual y Automático del regulador
maestro solo pueden ejecutarse correctamente si todos los re­
guladores esclavos se encuentran en el modo automático.
AllSlaveAutomaticState solo se calcula si se han interconectado
reguladores maestros y esclavos mediante los parámetros
"Maestro" y "Esclavo".
Para conocer más detalles, ver el parámetro "Maestro".
NoSlaveSubstituteSetpoint BOOL FALSE Si dicha instancia PID_Temp se utiliza como regulador maestro
de una cascada ([Link] = TRUE), NoSlave­
SubstituteSetpoint = TRUE indica que ningún regulador esclavo
ha activado su consigna sustitutiva.
Los modos Optimización, Manual y Automático del regulador
maestro solo pueden ejecutarse correctamente si ningún regu­
lador esclavo ha activado su consigna sustitutiva.
NoSlaveSubstituteSetpoint solo se calcula si se han interconec­
tado reguladores maestros y esclavos mediante los parámetros
"Maestro" y "Esclavo".
Para conocer más detalles, ver el parámetro "Maestro".

Regulación PID
358 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] BOOL TRUE Habilitación de la optimización para calefacción
[Link] debe estar ajustado para las siguientes opti­
mizaciones (coincidiendo con el inicio o antes de este con Mo­
de y ModeActivate):
• Optimización inicial para calefacción
• Optimización inicial para calefacción y refrigeración
• Optimización fina para calefacción
Este parámetro no se reinicia automáticamente con la instruc­
ción PID_Temp.
[Link] BOOL FALSE Habilitación de la optimización para refrigeración
[Link] debe estar ajustado para las siguientes opti­
mizaciones (coincidiendo con el inicio o antes de este con Mo­
de y ModeActivate):
• Optimización inicial para refrigeración
• Optimización inicial para calefacción y refrigeración
• Optimización fina para refrigeración
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ("[Link]" = TRUE y
"[Link]" = TRUE).
Este parámetro no se reinicia automáticamente con la instruc­
ción PID_Temp.
[Link](1) BOOL TRUE Si InputPerOn = TRUE, el parámetro Input_PER se utiliza para
medir el valor real. Si InputPerOn = FALSE, se utiliza el paráme­
tro Input.
[Link](1) REAL 120.0 Límite superior del valor real
Se vigila que Input y Input_PER respeten estos límites. Si se re­
basa el límite, se emite un error y se reacciona en función de
ActivateRecoverMode.
En la entrada de periferia, el valor real puede encontrarse como
máximo un 18% por encima del rango nominal (rango de satu­
ración). Por eso, si se utiliza la entrada de periferia con el ajuste
predeterminado para el límite superior y el escalado del valor
real, no es posible rebasar el límite.
Al iniciar una optimización inicial se verifica, basándose en la
diferencia entre los límites superior e inferior del valor real, si la
distancia entre el valor de consigna y el valor real cumple los re­
quisitos necesarios.
InputUpperLimit > InputLowerLimit
[Link](1) REAL 0.0 Límite inferior del valor real
Se vigila que Input y Input_PER respeten estos límites. Si el lími­
te se rebasa por defecto, se emite un error y se reacciona en
función de ActivateRecoverMode.
InputLowerLimit < InputUpperLimit
[Link](1) REAL 3.402822e+­ Límite superior de advertencia del valor real
38

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 359
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Se vigila que Input y Input_PER respeten estos límites. Si se re­
basa el límite, se emite una advertencia al parámetro Warning.
• Si se configura InputUpperWarning a un valor que se en­
cuentra fuera de los límites del valor real, el límite superior
absoluto configurado para el valor real se utiliza como lími­
te superior de advertencia.
• Si se configura InputUpperWarning a un valor que se en­
cuentra dentro de los límites del valor real, este valor se uti­
liza como límite superior de advertencia.
InputUpperWarning > InputLowerWarning
[Link](1) REAL -3.402822e­ Límite inferior de advertencia del valor real
+38 Se vigila que Input y Input_PER respeten estos límites. Si el lími­
te se rebasa por defecto, se emite una advertencia al parámetro
Warning.
• Si se configura InputLowerWarning a un valor que se en­
cuentra fuera de los límites del valor real, el límite inferior
absoluto configurado para el valor real se utiliza como lími­
te inferior de advertencia.
• Si se configura InputLowerWarning a un valor que se en­
cuentra dentro de los límites del valor real, este valor se uti­
liza como límite inferior de advertencia.
InputLowerWarning < InputUpperWarning
[Link](1) REAL 3.402822e+­ Límite superior de la consigna
38 Se vigila que Setpoint y SubstituteSetpoint respeten estos lími­
tes. Si se rebasa el límite, se emite una advertencia al paráme­
tro Warning.
• Si se configura SetpointUpperLimit a un valor que se en­
cuentra fuera de los límites del valor real, el límite superior
absoluto configurado para el valor real se utiliza como lími­
te superior de la consigna.
• Si se configura SetpointUpperLimit a un valor que se en­
cuentra dentro de los límites del valor real, este valor se uti­
liza como límite superior de la consigna.
SetpointUpperLimit > SetpointLowerLimit
[Link](1) REAL -3.402822e­ Límite inferior de la consigna
+38 Se vigila que Setpoint y SubstituteSetpoint respeten estos lími­
tes. Si el límite se rebasa por defecto, se emite una advertencia
al parámetro Warning.
• Si se configura SetpointLowerLimit a un valor que se en­
cuentra fuera de los límites del valor real, el límite inferior
absoluto configurado para el valor real se utiliza como lími­
te inferior de la consigna.
• Si se configura SetpointLowerLimit a un valor que se en­
cuentra dentro de los límites del valor real, este valor se uti­
liza como límite inferior de la consigna.
SetpointLowerLimit < SetpointUpperLimit

Regulación PID
360 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link](1) BOOL FALSE Activación de la salida de refrigeración
• [Link] = FALSE
Solo se utilizan las salidas para calefacción.
• [Link] = TRUE
Se utilizan las salidas para calefacción y refrigeración.
Si se utiliza la salida de refrigeración, el regulador no puede es­
tar configurado como regulador maestro ([Link]­
Master debe ser FALSE).
[Link](1) BOOL TRUE Método para calefacción/refrigeración
• Factor de refrigeración ([Link] = FALSE)
El valor de salida para refrigeración se calcula con el pará­
metro PID para calefacción (estructura [Link]­
[Link]) considerando el factor de refrigeración Con­
[Link] configurable.
Este método está indicado si los actuadores de calefacción y
refrigeración presentan un comportamiento temporal simi­
lar pero ganancias distintas.
Con este método no están disponibles la optimización ini­
cial ni la optimización fina para refrigeración. Solo pueden
ejecutarse las optimizaciones para calefacción.
• Cambio de parámetros PID ([Link] =
TRUE)
El valor de salida para refrigeración se calcula mediante un
juego de parámetros PID propio (estructura [Link]­
[Link]).
Este método está indicado si los actuadores de calefacción y
refrigeración presentan comportamientos temporales y ga­
nancias distintas.
La optimización inicial y la optimización fina para refrigera­
ción solo están disponibles con este método (Mode = 1 o 2,
[Link] = TRUE).
[Link] solo es efectivo si la salida de refrige­
ración está activada ([Link] = TRUE).
[Link](1) REAL 1.0 Factor de refrigeración
Si [Link] = FALSE, [Link] se tiene
en cuenta como factor en el cálculo del valor de salida para re­
frigeración. De esta manera pueden contemplarse distintas ga­
nancias del actuador de calefacción y refrigeración.
[Link] no se ajusta automáticamente o se adapta
durante la optimización. [Link] debe configurarse a
mano correctamente con la relación "Ganancia del actuador de
calefacción / ganancia del actuador de refrigeración".
Ejemplo: [Link] = 2.0 significa que la ganancia del
actuador de calefacción es el doble de intensa que la ganancia
del actuador de refrigeración.
[Link] solo es efectivo si la salida de refrigeración
está activada ([Link] = TRUE) y se ha seleccio­
nado el factor de refrigeración como método para la calefac­
ción/refrigeración ([Link] = FALSE).
[Link] > 0.0

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 361
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link](1) REAL 27648.0 Escalado Input_PER arriba
Mediante los dos pares de valores UpperPointOut, UpperPointIn
y LowerPointOut, LowerPointIn, se escala Input_PER.
Solo es efectivo si Input_PER se utiliza para la obtención del va­
lor real ([Link] = TRUE).
UpperPointIn > LowerPointIn
[Link](1) REAL 0.0 Escalado Input_PER abajo
Mediante los dos pares de valores UpperPointOut, UpperPointIn
y LowerPointOut, LowerPointIn, se escala Input_PER .
Solo es efectivo si Input_PER se utiliza para la obtención del va­
lor real ([Link] = TRUE).
LowerPointIn < UpperPointIn
[Link] REAL 100.0 Valor real superior escalado
(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn
y LowerPointOut, LowerPointIn, se escala Input_PER.
Solo es efectivo si Input_PER se utiliza para la obtención del va­
lor real ([Link] = TRUE).
UpperPointOut > LowerPointOut
[Link] REAL 0.0 Valor real inferior escalado
(1) Mediante los dos pares de valores UpperPointOut, UpperPointIn
y LowerPointOut, LowerPointIn, se escala Input_PER.
Solo es efectivo si Input_PER se utiliza para la obtención del va­
lor real ([Link] = TRUE).
LowerPointOut < UpperPointOut
[Link](1) INT 1 Selección del valor de salida para calefacción
[Link] especifica qué salidas se utilizan pa­
ra la calefacción:
• [Link] = 0 - se utiliza OutputHeat
• [Link] = 1 - se utilizan OutputHeat y OutputHeat_PWM
• [Link] = 2 - se utilizanOutputHeat y OutputHeat_PER
Las salidas no utilizadas no se calculan y se mantiene su valor
predeterminado.
[Link](1) REAL 0.0 Duración del período de la modulación del ancho de impulso
(PWM) para calefacción (salida OutputHeat_PWM) en segun­
dos:
• [Link] = 0.0
El tiempo de muestreo del algoritmo PID para calefacción
([Link]) se utiliza como duración del
período de la PWM.
• [Link] > 0.0
El valor se redondea a un a un múltiplo entero del tiempo
de muestreo PID_Temp ([Link]) y se utiliza como
duración del período de la PWM.
Con este ajuste puede mejorarse la uniformidad del valor
real si el tiempo de muestreo del algoritmo PID es grande.
El valor debe cumplir las condiciones siguientes:
– [Link] ≤ [Link],
– [Link] > [Link]­
me
– [Link] > [Link]­
me

Regulación PID
362 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link](­ REAL 100.0 Límite superior del valor de salida PID para calefacción
1) El valor de salida PID (PidOutputSum) queda limitado a este lí­
mite superior.
[Link] forma, junto con los siguientes parámetros,
un par de valores para el escalado del valor de salida PID (Pi­
dOutputSum) en las salidas para calefacción:
• [Link] para OutputHeat
• [Link] para OutputHeat_PWM
• [Link] para OutputHeat_PER
Si se desea limitar el valor en la salida correspondiente, deben
modificarse también estos valores de escalado.
[Link] > [Link]
[Link](­ REAL 0.0 Límite inferior del valor de salida PID para calefacción
1) En aquellos reguladores cuya salida de refrigeración está
desactivada ([Link] = FALSE), el valor de sali­
da PID (PidOutputSum) queda limitado a este límite inferior.
En aquellos reguladores cuya salida de refrigeración está
activada ([Link] = TRUE), este valor debe ser
0.0.
[Link] forma, junto con los siguientes parámetros,
un par de valores para el escalado del valor de salida PID (Pi­
dOutputSum) en las salidas para calefacción:
• [Link] para OutputHeat
• [Link] para OutputHeat_PWM
• [Link] para OutputHeat_PER
Si se desea limitar el valor en la salida correspondiente, deben
modificarse también estos valores de escalado.
El rango de valores permitido depende de la configuración.
• Salida de refrigeración desactivada ([Link]
= FALSE):
[Link] < [Link]
• Salida de refrigeración activada ([Link] =
TRUE):
[Link] = 0.0
[Link](1) REAL 100.0 Valor de salida superior escalado para calefacción
[Link] y [Link] constituyen un par de
valores para el escalado del valor de salida PID (PidOutputSum)
en el valor de salida para calefacción (OutputHeat).
El valor de OutputHeat se sitúa siempre entre [Link]­
ling y [Link].
[Link] ≠ [Link]
[Link](1) REAL 0.0 Valor de salida inferior escalado para calefacción
[Link] y [Link] constituyen un par de
valores para el escalado del valor de salida PID (PidOutputSum)
en el valor de salida para calefacción (OutputHeat).
El valor de OutputHeat se sitúa siempre entre [Link]­
ling y [Link].
[Link] ≠ [Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 363
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link]­ REAL 100.0 Valor de salida PWM superior escalado para calefacción
ling(1) [Link] y [Link] constituyen un
par de valores para el escalado del valor de salida PID (PidOut­
putSum) en el valor de salida con modulación de ancho de im­
pulsos para calefacción (OutputHeat_PWM).
El valor de OutputHeat_PWM se sitúa siempre entre [Link]­
mUpperScaling y [Link].
[Link] solo es efectivo si OutputHeat_PWM es­
tá seleccionado como salida para la calefacción ([Link] =
1).
100.0 ≥ [Link] ≥ 0.0
[Link] ≠ [Link]
[Link]­ REAL 0.0 Valor de salida PWM inferior escalado para calefacción
ling(1) [Link] y [Link] constituyen un
par de valores para el escalado del valor de salida PID (PidOut­
putSum) en el valor de salida con modulación de ancho de im­
pulsos para calefacción (OutputHeat_PWM).
El valor de OutputHeat_PWM se sitúa siempre entre [Link]­
mUpperScaling y [Link].
[Link] solo es efectivo si OutputHeat_PWM es­
tá seleccionado como salida para la calefacción ([Link] =
1).
100.0 ≥ [Link] ≥ 0.0
[Link] ≠ [Link]
[Link]­ REAL 27648.0 Valor de salida analógico superior escalado para calefacción
ling(1) [Link] y [Link] constituyen un par
de valores para el escalado del valor de salida PID (PidOutput­
Sum) en el valor de salida analógico para calefacción
(OutputHeat_PER).
El valor de OutputHeat_PER se sitúa siempre entre [Link]­
perScaling y [Link].
[Link] solo es efectivo si OutputHeat_PER está
seleccionado como salida para la calefacción ([Link] = 2).
32511.0 ≥ [Link] ≥ -32512.0
[Link] ≠ [Link]
[Link]­ REAL 0.0 Valor de salida analógico inferior escalado para calefacción
ling(1) [Link] y [Link] constituyen un par
de valores para el escalado del valor de salida PID (PidOutput­
Sum) en el valor de salida analógico para calefacción
(OutputHeat_PER).
El valor de OutputHeat_PER se sitúa siempre entre [Link]­
perScaling y [Link].
[Link] solo es efectivo si OutputHeat_PER está
seleccionado como salida para la calefacción ([Link] = 2).
32511.0 ≥ [Link] ≥ -32512.0
[Link] ≠ [Link]

Regulación PID
364 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link]­ REAL 0.0 Tiempo de conexión mínimo de la modulación del ancho de im­
me(1) pulso para calefacción (salida OutputHeat_PWM)
Un impulso PWM nunca es más corto que este valor.
El valor se redondea a:
[Link] = n × [Link]
[Link] solo es efectivo si OutputHeat_PWM es­
tá seleccionado como salida para calefacción ([Link] = 1).
100000.0 ≥ [Link] ≥ 0.0
[Link]­ REAL 0.0 Tiempo de desconexión mínimo de la modulación del ancho de
me(1) impulso para calefacción (salida OutputHeat_PWM)
Una pausa PWM nunca es más corta que este valor.
El valor se redondea a:
[Link] = n × [Link]
[Link] solo es efectivo si OutputHeat_PWM es­
tá seleccionado como salida para calefacción ([Link] = 1).
100000.0 ≥ [Link] ≥ 0.0
[Link](1) INT 1 Selección del valor de salida para refrigeración
[Link] especifica qué salidas se utilizan pa­
ra la refrigeración:
• [Link] = 0 - se utiliza OutputCool
• [Link] = 1 - se utilizanOutputCooly OutputCool_PWM
• [Link] = 2 - se utilizan OutputCooly OutputCool_PER
Las salidas no utilizadas no se calculan y se mantiene su valor
predeterminado.
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
[Link](1) REAL 0.0 Duración del período de la modulación del ancho de impulso
para refrigeración (salida OutputCool_PWM) en segundos:
• [Link] = 0.0 y [Link] = FALSE:
El tiempo de muestreo del algoritmo PID para calefacción
([Link]) se utiliza como duración del
período de la PWM.
• [Link] = 0.0 y [Link] = TRUE:
El tiempo de muestreo del algoritmo PID para refrigeración
([Link]) se utiliza como duración del
período de la PWM.
• [Link] > 0.0:
El valor se redondea a un a un múltiplo entero del tiempo
de muestreo PID_Temp ([Link]) y se utiliza como
duración del período de la PWM.
Con este ajuste puede mejorarse la uniformidad del valor
real si el tiempo de muestreo del algoritmo PID es grande.
El valor debe cumplir las condiciones siguientes:
– [Link] ≤ [Link] o bien
[Link]
– [Link] >  [Link]­
me
– [Link] > [Link]­
me
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 365
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link](1) REAL 0.0 Límite superior del valor de salida PID para refrigeración
Este valor debe ser 0.0.
[Link] forma, junto con los siguientes parámetros,
un par de valores para el escalado del valor de salida PID (Pi­
dOutputSum) en las salidas para refrigeración:
• [Link] para OutputCool
• [Link] para OutputCool_PWM
• [Link] para OutputCool_PER
Estos valores de escalado también deben modificarse si se de­
sea limitar el valor en la salida correspondiente.
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
[Link] = 0.0
[Link](1­ REAL -100.0 Límite inferior del valor de salida PID para refrigeración
) En aquellos reguladores cuya salida de refrigeración está activa­
da ([Link] = TRUE), el valor de salida PID (Pi­
dOutputSum) queda limitado a este límite inferior.
[Link] forma, junto con los siguientes parámetros,
un par de valores para el escalado del valor de salida PID (Pi­
dOutputSum) en las salidas para refrigeración:
• [Link] para OutputCool
• [Link] para OutputCool_PWM
• [Link] para OutputCool_PER
Estos valores de escalado también deben modificarse si se de­
sea limitar el valor en la salida correspondiente.
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
[Link] < [Link]
[Link](1) REAL 100.0 Valor de salida superior escalado para refrigeración
[Link] y [Link] constituyen un par de
valores para el escalado del valor de salida PID (PidOutputSum)
en el valor de salida para refrigeración (OutputCool).
El valor de OutputCool se sitúa siempre entre [Link]­
ling y [Link].
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
[Link] ≠ [Link]
[Link](1) REAL 0.0 Valor de salida inferior escalado para refrigeración
[Link] y [Link] constituyen un par de
valores para el escalado del valor de salida PID (PidOutputSum)
en el valor de salida para refrigeración (OutputCool).
El valor de OutputCool se sitúa siempre entre [Link]­
ling y [Link].
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
[Link] ≠ [Link]

Regulación PID
366 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link]­ REAL 100.0 Valor de salida PWM superior escalado para refrigeración
ling(1) [Link] y [Link] constituyen un
par de valores para el escalado del valor de salida PID (PidOut­
putSum) en el valor de salida con modulación de ancho de im­
pulsos para refrigeración (OutputCool_PWM).
El valor de OutputCool_PWM se sitúa siempre entre [Link]­
mUpperScaling y [Link].
[Link] solo es efectivo si la salida de refrigera­
ción está activada ([Link] = TRUE) y
OutputCool_PWM se ha seleccionado como salida para la refri­
geración ([Link] = 1).
100.0 ≥ [Link] ≥ 0.0
[Link] ≠ [Link]
[Link]­ REAL 0.0 Valor de salida PWM inferior escalado para refrigeración
ling(1) [Link] y [Link] constituyen un
par de valores para el escalado del valor de salida PID (PidOut­
putSum) en el valor de salida con modulación de ancho de im­
pulsos para refrigeración (OutputCool_PWM).
El valor de OutputCool_PWM se sitúa siempre entre [Link]­
mUpperScaling y [Link].
[Link] solo es efectivo si la salida de refrigera­
ción está activada ([Link] = TRUE) y
OutputCool_PWM se ha seleccionado como salida para la refri­
geración ([Link] = 1).
100.0 ≥ [Link] ≥ 0.0
[Link] ≠ [Link]
[Link]­ REAL 27648.0 Valor de salida analógico superior escalado para refrigeración
ling(1) [Link] y [Link] constituyen un par
de valores para el escalado del valor de salida PID (PidOutput­
Sum) en el valor de salida analógico para refrigeración
(OutputCool_PER).
El valor de OutputCool_PER se sitúa siempre entre [Link]­
perScaling y [Link].
[Link] solo es efectivo si la salida de refrigera­
ción está activada ([Link] = TRUE) y
OutputCool_PER se ha seleccionado como salida para la refrige­
ración ([Link] = 2).
32511.0 ≥ [Link] ≥ -32512.0
[Link] ≠ [Link]
[Link]­ REAL 0.0 Valor de salida analógico inferior escalado para refrigeración
ling(1) [Link] y [Link] constituyen un par
de valores para el escalado del valor de salida PID (PidOutput­
Sum) en el valor de salida analógico para refrigeración
(OutputCool_PER).
El valor de OutputCool_PER se sitúa siempre entre [Link]­
perScaling y [Link].
[Link] solo es efectivo si la salida de refrigera­
ción está activada ([Link] = TRUE) y
OutputCool_PER se ha seleccionado como salida para la refrige­
ración ([Link] = 2).
32511.0 ≥ [Link] ≥ -32512.0
[Link] ≠ [Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 367
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link]­ REAL 0.0 Tiempo de conexión mínimo de la modulación del ancho de im­
me(1) pulso para refrigeración (salida OutputCool_PWM)
Un impulso PWM nunca es más corto que este valor.
El valor se redondea a:
[Link] = n × [Link]
[Link] solo es efectivo si OutputCool_PWM es­
tá seleccionado como salida para refrigeración ([Link] =
1).
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
100000.0 ≥ [Link] ≥ 0.0
[Link]­ REAL 0.0 Tiempo de desconexión mínimo de la modulación del ancho de
me(1) impulso para refrigeración (salida OutputCool_PWM)
Una pausa PWM nunca es más corta que este valor.
El valor se redondea a:
[Link] = n × [Link]
[Link] solo es efectivo si OutputCool_PWM es­
tá seleccionado como salida para refrigeración ([Link] =
1).
Solo es efectivo si la salida de refrigeración está activada (Con­
[Link] = TRUE).
100000.0 ≥ [Link] ≥ 0.0
Si se utiliza PID_Temp en una cascada, los reguladores maestro y esclavo intercambian información a través del parámetro
"Maestro".
La interconexión debe llevarla a cabo el usuario. Para conocer más detalles, ver el parámetro "Maestro".
[Link](1) BOOL FALSE El regulador es maestro en una cascada y proporciona la con­
signa para el esclavo.
Ajuste IsMaster = TRUE si desea utilizar esta instancia PID_Temp
como regulador maestro en una cascada.
Un regulador maestro determina la consigna de un regulador
esclavo con su salida. Una instancia PID_Temp puede ser al mis­
mo tiempo regulador maestro y regulador esclavo.
Si el regulador se utiliza como regulador maestro, la salida de
refrigeración debe estar desactivada ([Link] =
FALSE).
[Link](1) BOOL FALSE El regulador es esclavo en una cascada y recibe su consigna del
maestro.
Ajuste IsSlave = TRUE si desea utilizar esta instancia PID_Temp
como regulador esclavo en una cascada.
Un regulador esclavo recibe su consigna (parámetro Setpoint)
de la salida de su regulador maestro (parámetro OutputHeat).
Una instancia PID_Temp puede ser al mismo tiempo regulador
maestro y regulador esclavo.
[Link](1) INT 1 Comportamiento Anti-Windup en la cascada

Regulación PID
368 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Posibilidades:
• Anti-Windup = 0
La funcionalidad Anti-Windup está desactivada. El regulador
maestro no reacciona a la limitación de su regulador escla­
vo.
• Anti-Windup = 1
La acción I del regulador maestro se reduce en la relación
"Esclavos en limitación" respecto a "Número de esclavos"
(parámetro "CountSlaves"). De este modo se reducen los
efectos de la limitación sobre el comportamiento de regula­
ción.
• Anti-Windup = 2
La acción I del regulador maestro se mantiene en cuanto un
regulador esclavo se encuentra en la limitación.
Solo es efectivo si el regulador está configurado como regula­
dor maestro ([Link] = TRUE).
[Link](1) INT 1 Número de esclavos subordinados
Aquí se indica el número de reguladores esclavos directamente
subordinados que reciben su consigna de este regulador maes­
tro.
Solo es efectivo si el regulador está configurado como regula­
dor maestro ([Link] = TRUE).
255 ≥ CountSlaves ≥ 1
[Link] BOOL TRUE Si [Link] = TRUE, [Link] =
TRUE inicia la medición automática del tiempo de muestreo
PID_Temp (tiempo de ciclo del OB invocante).
Una vez finalizada la medición, se ajusta [Link]­
tion = FALSE.
[Link] BOOL TRUE Si [Link] = TRUE, el tiempo de muestreo
PID_Temp se mide automáticamente.
Si [Link] = FALSE, el tiempo de muestreo
PID_Temp no se mide automáticamente y es necesario configu­
rar correctamente [Link] a mano.
[Link] BOOL TRUE Si [Link] = FALSE, el tiempo de muestreo
PID_Temp no se vigila. Si PID_Temp no puede ejecutarse dentro
del tiempo de muestreo, no se emite ningún error
(ErrorBits=0000800h) y PID_Temp no reacciona como se ha
configurado con ActivateRecoverMode.
[Link](1) REAL 0.1 Tiempo de muestreo PID_Temp (tiempo de ciclo del OB invo­
cante) en segundos
[Link] se determina automáticamente y equivale
normalmente al tiempo de ciclo del OB invocante.
Los valores de la estructura CtrlParamsBackUp se pueden volver a cargar con LoadBackUp = TRUE.
[Link] BOOL FALSE Valor almacenado de [Link]
[Link] REAL 1.0 Ganancia proporcional almacenada para calefacción
[Link] REAL 20.0 Tiempo de integración almacenado para calefacción en segun­
dos
[Link] REAL 0.0 Tiempo derivativo almacenado para calefacción en segundos
[Link] REAL 0.2 Coeficiente almacenado del retardo derivativo para calefacción

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 369
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] REAL 1.0 Ponderación almacenada de la acción P para calefacción
[Link] REAL 1.0 Ponderación almacenada de la acción D para calefacción
[Link] REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID para cale­
facción en segundos
[Link]­ REAL 3.402822e+­ Ancho de zona de regulación almacenado para calefacción
ne 38
[Link] REAL 0.0 Ancho de zona muerta almacenado para calefacción
[Link] REAL 1.0 Ganancia proporcional almacenada para refrigeración
[Link] REAL 20.0 Tiempo de integración almacenado para refrigeración en se­
gundos
[Link] REAL 0.0 Tiempo derivativo almacenado para refrigeración en segundos
[Link] REAL 0.2 Coeficiente almacenado del retardo derivativo para refrigera­
ción
[Link] REAL 1.0 Factor de ponderación almacenado de la acción P para refrige­
ración
[Link] REAL 1.0 Factor de ponderación almacenado de la acción D para refrige­
ración
[Link] REAL 1.0 Tiempo de muestreo almacenado del algoritmo PID para refri­
geración en segundos
[Link]­ REAL 3.402822e+­ Ancho de zona de regulación almacenado para refrigeración
ne 38
[Link] REAL 0.0 Ancho de zona muerta almacenado para refrigeración
[Link]­ BOOL FALSE Las propiedades del circuito de calefacción del sistema regula­
Heat do se almacenan durante la optimización inicial para calefac­
ción. Si [Link] = TRUE, se recalculan los pa­
rámetros PID para calefacción (estructura [Link]­
[Link]) mediante estas propiedades. De este modo puede
cambiarse el método para calcular los parámetros (parámetro
[Link]) sin tener que repetir la optimi­
zación.
[Link] se ajusta a FALSE después del cálcu­
lo.
Solo es posible si la optimización inicial se ha realizado correc­
tamente ([Link] = TRUE).
[Link]­ BOOL FALSE Las propiedades del circuito de refrigeración del sistema regula­
Cool do se almacenan durante la optimización para refrigeración. Si
[Link] = TRUE, se recalculan los parámetros
PID para refrigeración (estructura [Link]) me­
diante estas propiedades. De este modo puede cambiarse el
método para calcular los parámetros (parámetro PIDSelfTu­
[Link]) sin tener que repetir la optimización.
[Link] se ajusta a FALSE después del cálculo.
Solo es posible si la optimización inicial se ha realizado correc­
tamente ([Link] = TRUE).
Solo es efectivo si [Link] = TRUE y [Link]­
vancedCooling = TRUE.

Regulación PID
370 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] INT 2 Método para calcular los parámetros PID durante la optimiza­
ción inicial para calefacción
Posibilidades:
• [Link] = 0: PID según CHR
• [Link] = 1: PI según CHR
• [Link] = 2: PID para procesos de temperatura
según CHR (provoca un comportamiento de regulación más
lento y más bien asintótico, con menos sobreoscilaciones
que con [Link] = 0)
(CHR = Chien, Hrones y Reswick)
Solo con [Link] = 2 la zona de regulación Re­
[Link] se ajusta automáticamente
durante la optimización inicial para calefacción.
[Link] INT 2 Método para calcular los parámetros PID durante la optimiza­
ción inicial para refrigeración
Posibilidades:
• [Link] = 0: PID según CHR
• [Link] = 1: PI según CHR
• [Link] = 2: PID para procesos de temperatura
según CHR (provoca un comportamiento de regulación más
lento y más bien asintótico, con menos sobreoscilaciones
que con [Link] = 0)
(CHR = Chien, Hrones y Reswick)
Solo con [Link] = 2 la zona de regulación Re­
[Link] se ajusta automáticamente
durante la optimización inicial para refrigeración.
[Link] solo es efectivo si la salida de refrigeración y
el cambio de parámetros PID están activados ([Link]­
Cooling = TRUE, [Link] = TRUE).
[Link] INT 0 La variable [Link] muestra la fase actual de la optimización
inicial:
• State = 0: Iniciar la optimización inicial
• State = 100: Calcular desviación estándar de calefacción
• State = 200: Calcular desviación estándar de refrigeración
• State = 300: Determinar punto de inflexión de calefacción
• State = 400: Determinar punto de inflexión de refrigeración
• State = 500: Tras alcanzarse el punto de inflexión de cale­
facción, calentar hasta consigna
• State = 600: Tras alcanzarse el punto de inflexión de refrige­
ración, calentar hasta consigna
• State = 700: Comparar efecto de actuadores de calefacción
y de refrigeración
• State = 800: Calefacción y refrigeración activadas
• State = 900: Refrigeración activada
• State = 1000: Calcular tiempo de retardo tras desconexión
de la calefacción
• State = 9900: Optimización inicial correcta
• State = 1: Optimización inicial no correcta

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 371
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] BOOL FALSE TRUE: los parámetros de proceso para la optimización inicial pa­
ra calefacción se han calculado correctamente.
Esta variable se ajusta durante la optimización.
Debe ser TRUE para el cálculo de los parámetros PID para cale­
facción.
[Link] BOOL FALSE TRUE: los parámetros de proceso para la optimización inicial pa­
ra refrigeración se han calculado correctamente.
Esta variable se ajusta durante la optimización.
Debe ser TRUE para el cálculo de los parámetros PID para refri­
geración.
[Link] INT 0 La variable AdaptDelayTime determina la adaptación del tiem­
po de retardo para calefacción en el punto de operación (para
"Optimización inicial para calefacción" y "Optimización inicial
para calefacción y refrigeración").
Posibilidades:
• [Link] = 0:
Ninguna adaptación del tiempo de retardo. La fase [Link]­
te = 1000 se omite. Esta opción provoca una duración de la
optimización menor que con [Link] = 1.
• [Link] = 1:
Adaptación del tiempo de retardo a la consigna en la fase
[Link] = 1000 mediante la desconexión temporal de la
calefacción.
Esta opción provoca una duración de la optimización mayor
que con [Link] = 0. La opción puede mejorar
el comportamiento de regulación en caso de que el com­
portamiento del proceso dependa fuertemente del punto
de operación (no linealidad). Esta opción no debe utilizarse
para aplicaciones multizona con fuertes acoplamientos tér­
micos.
[Link] INT 0 La variable CoolingMode determina la salida de la variable ma­
nipulada para determinar los parámetros de refrigeración (con
"Optimización inicial para calefacción y refrigeración").
Posibilidades:
• [Link] = 0:
Desconectar la calefacción y conectar la refrigeración tras
alcanzar la consigna.
La fase [Link] = 700 se omite.
A la fase [Link] = 500 le sigue la fase [Link] = 900.
Esta opción puede mejorar el comportamiento de regula­
ción si la ganancia del actuador de refrigeración es pequeña
en comparación con la ganancia del actuador de calefac­
ción. Provoca una duración de la optimización menor que
con [Link] = 1 o 2.
• [Link] = 1:
Conectar la refrigeración además de la calefacción tras al­
canzar la consigna.
La fase [Link] = 700 se omite.
A la fase [Link] = 500 le sigue la fase [Link] = 800.
Esta opción puede mejorar el comportamiento de regula­
ción si la ganancia del actuador de refrigeración es grande
en comparación con la ganancia del actuador de calefac­
ción.

Regulación PID
372 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
• [Link] = 2:
Tras calentar hasta la consigna, en la fase [Link] = 700
se decide automáticamente si se desconecta la calefacción.
A la fase [Link] = 500 le sigue la fase [Link] = 700 y
a continuación [Link] = 800 o [Link] = 900.
Esta opción requiere más tiempo que las opciones 0 y 1.
[Link] BOOL FALSE Con la variable RunIn es posible definir la secuencia de la opti­
mización fina al iniciarse desde el modo automático.
• RunIn = FALSE
Si la optimización fina se inicia desde el modo automático,
se regula hasta la consigna con los parámetros PID existen­
tes ([Link] = 500 o 600). Solo entonces comienza la opti­
mización fina.
• RunIn = TRUE
PID_Temp intenta alcanzar la consigna con el valor de salida
mínimo o máximo ([Link] = 300 o 400). lo que puede
ocasionar una sobreoscilación muy alta. La optimización fi­
na se inicia entonces automáticamente.
RunIn se ajusta a FALSE después de la optimización fina.
Al iniciarse la optimización fina desde los modos "Inactivo" o
"Manual", PID_Temp se comporta tal y como se describe en Ru­
nIn = TRUE.
[Link]­ BOOL FALSE Las propiedades del circuito de calefacción del sistema regula­
Heat do se almacenan durante la optimización fina para calefacción.
Si [Link]= TRUE, se recalculan los parámetros
PID para calefacción (estructura [Link]) me­
diante estas propiedades. De este modo puede cambiarse el
método para calcular los parámetros (parámetro PIDSelfTu­
[Link]) sin tener que repetir la optimización.
[Link] se ajusta a FALSE después del cálculo.
Solo es posible si antes se ha realizado correctamente la optimi­
zación fina para calefacción ([Link] = TRUE).
[Link]­ BOOL FALSE Las propiedades del circuito de refrigeración del sistema regula­
Cool do se almacenan durante la optimización fina para refrigera­
ción. Si [Link]= TRUE, se recalculan los pará­
metros PID para refrigeración (estructura [Link]­
[Link]) mediante estas propiedades. De este modo puede
cambiarse el método para calcular los parámetros (parámetro
[Link]) sin tener que repetir la optimi­
zación.
[Link] se ajusta a FALSE después del cálculo.
Solo es posible si antes se ha realizado correctamente la optimi­
zación fina para refrigeración ([Link] = TRUE).
Solo es efectivo si [Link] = TRUE y [Link]­
vancedCooling = TRUE.
[Link] INT 0 Método para el cálculo de parámetros durante la optimización
fina para calefacción

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 373
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Posibilidades:
• [Link] = 0: PID automático
• [Link] = 1: PID rápido (comportamiento de regu­
lación más rápido con amplitudes del valor de salida mayo­
res que las de [Link] = 2)
• [Link] = 2: PID lento (comportamiento de regu­
lación más lento con amplitudes del valor de salida meno­
res que las de [Link] = 1)
• [Link] = 3: PID ZN
• [Link] = 4: PI ZN
• [Link] = 5: P ZN
(ZN = Ziegler-Nichols)
Para poder repetir el cálculo de los parámetros PID para calefac­
ción con [Link] y [Link] = 0, 1 o
2, la optimización fina anterior debe haberse ejecutado tam­
bién con [Link] = 0, 1 o 2. De no ser así, se utiliza
[Link] = 3.
Siempre es posible volver a calcular los parámetros PID para ca­
lefacción con [Link] y [Link] = 3,
4 o 5.
[Link] INT 0 Método para el cálculo de parámetros durante la optimización
fina para refrigeración
Posibilidades:
• [Link] = 0: PID automático
• [Link] = 1: PID rápido (comportamiento de regu­
lación más rápido con amplitudes del valor de salida mayo­
res que las de [Link] = 2)
• [Link] = 2: PID lento (comportamiento de regu­
lación más lento con amplitudes del valor de salida meno­
res que las de [Link] = 1)
• [Link] = 3: PID ZN
• [Link] = 4: PI ZN
• [Link] = 5: P ZN
(ZN = Ziegler-Nichols)
Para poder repetir el cálculo de los parámetros PID para refrige­
ración con [Link] y [Link] = 0, 1 o
2, la optimización fina anterior debe haberse ejecutado tam­
bién con [Link] = 0, 1 o 2. De no ser así, se utiliza
[Link] = 3.
Siempre es posible volver a calcular los parámetros PID para re­
frigeración con [Link] y [Link] =
3, 4 o 5.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados (ConfigActivateCooling = TRUE y
[Link] = TRUE).
[Link] INT 0 La variable [Link] muestra la fase actual de la "Optimización
fina":
• State = 0: Iniciar la optimización fina
• State = 100: Calcular desviación estándar de calefacción
• State = 200: Calcular desviación estándar de refrigeración
• State = 300: Intentar alcanzar la consigna para la calefac­
ción con regulación de 2 puntos

Regulación PID
374 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
• State = 400: Intentar alcanzar la consigna para la refrigera­
ción con regulación de 2 puntos
• State = 500: Intentar alcanzar la consigna para la calefac­
ción con regulación PID
• State = 600: Intentar alcanzar la consigna para la refrigera­
ción con regulación PID
• State = 700: Calcular desviación estándar de calefacción
• State = 800: Calcular desviación estándar de refrigeración
• State = 900: Determinar oscilación y calcular parámetros
para calefacción
• State = 1000: Determinar oscilación y calcular parámetros
para refrigeración
• State = 9900: Optimización fina correcta
• State = 1: Optimización fina no correcta
[Link] BOOL FALSE TRUE: los parámetros de proceso para la optimización fina para
calefacción se han calculado correctamente.
Esta variable se ajusta durante la optimización.
Debe cumplirse para el cálculo de los parámetros PID para cale­
facción.
[Link] BOOL FALSE TRUE: los parámetros de proceso para la optimización fina para
refrigeración se han calculado correctamente.
Esta variable se ajusta durante la optimización.
Debe cumplirse para el cálculo de los parámetros PID para refri­
geración.
[Link] REAL 0.0 Offset de optimización para calefacción del valor de salida PID
[Link] se suma al valor que resulta de PidOut­
putSum para el circuito de calefacción.
Especifique un valor positivo para [Link] para
obtener un offset positivo en las salidas para calefacción.
Los valores resultantes en las salidas para calefacción se obtie­
nen del escalado de salida configurado (Struktur [Link]­
[Link])
Este offset de optimización puede utilizarse en reguladores con
salida de refrigeración activada y cambio de parámetros PID
([Link] = TRUE, [Link] =
TRUE) para la optimización fina para refrigeración. Si las salidas
para refrigeración de la consigna en la que debe realizarse la
optimización no están activas (PidOutputSum > 0.0), no es po­
sible la optimización fina para refrigeración. En ese caso, antes
de iniciar la optimización debe especificarse un valor de offset
de optimización positivo para calefacción que sea mayor que el
valor de salida PID (PidOutputSum) de la consigna en estado es­
tacionario. De este modo se incrementan los valores en las sali­
das para calefacción y se activan las salidas para refrigeración
(PidOutputSum < 0.0). Esto permite la optimización fina para
refrigeración.
Cuando la optimización fina ha finalizado, [Link]­
Heat se reinicia a 0.0.
Grandes modificaciones en [Link] en un solo
paso pueden provocar sobreoscilaciones temporales.
[Link] ≥ [Link]­
tOffsetHeat ≥ [Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 375
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] REAL 0.0 Offset de optimización para refrigeración del valor de salida PID
[Link] se suma al valor que resulta de PidOut­
putSum para el circuito de refrigeración.
Especifique un valor negativo para [Link] para
obtener un offset positivo en las salidas para refrigeración.
Los valores resultantes en las salidas para refrigeración se ob­
tienen del escalado de salida configurado (Struktur [Link]­
[Link]).
Este offset de optimización puede utilizarse en reguladores con
salida de refrigeración activada ([Link] =
TRUE) para la optimización fina para calefacción. Si las salidas
para calefacción de la consigna en la que debe realizarse la op­
timización no están activas (PidOutputSum < 0.0), no es posi­
ble la optimización fina para calefacción. En ese caso, antes de
iniciar la optimización debe especificarse un valor de offset de
optimización para refrigeración negativo menor que el valor de
salida PID (PidOutputSum) de la consigna en estado estaciona­
rio. De este modo se incrementan los valores en las salidas para
refrigeración y se activan las salidas para calefacción (PidOut­
putSum > 0.0). Esto permite la optimización fina para calefac­
ción.
Cuando la optimización fina ha finalizado, [Link]­
Cool se reinicia a 0.0.
Grandes modificaciones en [Link] en un solo pa­
so pueden provocar sobreoscilaciones temporales.
[Link] ≥ [Link]­
tOffsetCool ≥ [Link]
[Link] BOOL FALSE Esperar tras alcanzar la consigna durante la optimización fina
Durante la optimización fina, si [Link] = TRUE,
entre el alcance de la consigna ([Link] = 500 o 600) y el cál­
culo de la desviación típica ([Link] = 700 o 800) se espera
hasta que en [Link] se especifique un flanco FALSE
-> TRUE.
[Link] puede utilizarse en la optimización fina si­
multánea de varios reguladores en aplicaciones multizona con
el fin de sincronizar las optimizaciones de las distintas zonas.
De esta manera puede garantizarse que todas las zonas han al­
canzado sus consignas antes de que se inicie la optimización
propiamente dicha. Esto permite reducir cualquier influencia
que los acoplamientos térmicos entre las zonas pueda tener so­
bre la optimización.
[Link] solo es efectivo si la optimización fina se
inicia desde el modo automático con [Link] =
FALSE.
[Link] BOOL FALSE Si [Link] = TRUE, PID_Temp ajusta [Link]­
Ready = TRUE en cuanto se ha alcanzado la consigna y espera
con otros pasos de optimización hasta que se especifique un
flanco FALSE -> TRUE en [Link].
[Link] BOOL FALSE Si [Link] = TRUE, un flanco FALSE -> TRUE de
[Link] finaliza la espera y se prosigue con la opti­
mización fina.
[Link](1) REAL 0.0 Acción I en el último ciclo

Regulación PID
376 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] BOOL FALSE [Link] está disponible a partir de PID_Temp versión 1.1.
Si [Link] = TRUE en el "Modo automático", la acción in­
tegral de [Link] se preasigna automáticamente co­
mo si en el ciclo anterior hubiese sido PidOutputSum = Overw­
riteInitialOutputValue. Esto se puede utilizar para una Regula­
ción de transición con PID_Temp (Página 182).
[Link](1) BOOL FALSE Activar la introducción manual de los parámetros PID
Si [Link] = TRUE, se pueden editar los pa­
rámetros PID.
[Link] se utiliza para la configuración del
regulador en el TIA Portal y no influye en el comportamiento
del algoritmo de regulación en la CPU.
SetByUser es remanente.
[Link](1) REAL 1.0 Ganancia proporcional activa para calefacción
[Link] es remanente.
[Link] ≥ 0.0
Retain..[Link](1) REAL 20.0 Tiempo de integración activo para calefacción en segundos
Con [Link] = 0.0, la acción I para calefacción está
desconectada.
[Link] es remanente.
100000.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 0.0 Tiempo derivativo activo para calefacción en segundos
Con [Link] = 0.0, la acción D para calefacción está
desconectada.
[Link] es remanente.
100000.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 0.2 Coeficiente activo del retardo derivativo para calefacción
El efecto de la acción D se retrasa mediante el coeficiente de re­
tardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo × coeficiente
de retardo de la acción derivada
• 0.0: La acción D solo surte efecto para un ciclo y, por ello,
casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas
regulados con una constante de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el
efecto de la acción D.
[Link] es remanente.
[Link] ≥ 0.0
[Link](­ REAL 1.0 Ponderación activa de la acción P para calefacción
1) En el caso de que se modifique la consigna, es posible atenuar
la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consig­
na
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es to­
talmente efectiva.
[Link] es remanente.
1.0 ≥ [Link] ≥ 0.0

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 377
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link] REAL 1.0 Ponderación activa de la acción D para calefacción
(1) En el caso de que se modifique la consigna, es posible atenuar
la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva al cambiar la consig­
na.
• 0.0: La acción D no es efectiva al cambiar la consigna.
Si se produce una modificación del valor real, la acción D es to­
talmente efectiva.
[Link] es remanente.
1.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID para calefacción
en segundos
[Link] se determina durante la optimización y
se redondea a un múltiplo entero de [Link].
Si [Link] = 0.0, [Link] se utiliza
como duración del período de la modulación del ancho de im­
pulso para calefacción.
Si [Link] = 0.0 y [Link]­
Cooling = FALSE, [Link] se utiliza como duración del perío­
do de la modulación del ancho de impulso para refrigeración.
[Link] es remanente.
100000.0 ≥ [Link] > 0.0
[Link] REAL 3.402822e+­ Ancho de zona de regulación activo para calefacción
(1) 38 Con [Link] = 3.402822e+38, la zona de regulación
para calefacción está desconectada.
[Link] solo se ajusta automáticamente durante la
optimización inicial para calefacción o para calefacción y refri­
geración si se ha seleccionado el método para el cálculo de pa­
rámetros [Link] = 2.
Para reguladores con salida de refrigeración desactivada (Con­
[Link] = FALSE) o reguladores con salida de refri­
geración activada y factor de refrigeración ([Link]­
Cooling = FALSE), la zona de regulación se encuentra en un
punto simétrico entre Setpoint – [Link] y Setpoint +
[Link].
Para reguladores con salida de refrigeración activada y cambio
de parámetros PID ([Link] = TRUE, [Link]­
vancedCooling = TRUE), la zona de regulación se sitúa entre
Setpoint – [Link] y Setpoint + [Link].
[Link] es remanente.
[Link] > 0.0
[Link](1) REAL 0.0 Ancho de zona muerta activo para calefacción (ver Parámetros
PID (Página 158))
Con [Link] = 0.0, la zona muerta para calefacción está
desconectada.
[Link] no se ajusta automáticamente o se adapta du­
rante la optimización. [Link] debe configurarse co­
rrectamente a mano.
Si la zona muerta está conectada, es posible ajustar un error de
regulación (desviación entre consigna y valor real) permanen­
te. Esto puede tener un efecto negativo al realizar una optimi­
zación fina.

Regulación PID
378 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Para reguladores con salida de refrigeración desactivada (Con­
[Link] = FALSE) o reguladores con salida de refri­
geración activada y factor de refrigeración ([Link]­
Cooling = FALSE), la zona muerta se encuentra en un punto si­
métrico entre Setpoint – [Link] y Setpoint +
[Link].
Para reguladores con salida de refrigeración activada y cambio
de parámetros PID ([Link] = TRUE, [Link]­
vancedCooling = TRUE), la zona muerta se sitúa entre Setpoint
– [Link] y Setpoint + [Link].
[Link] es remanente.
[Link] ≥ 0.0
[Link](1) REAL 1.0 Ganancia proporcional activa para refrigeración
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
[Link] ≥ 0.0
[Link](1) REAL 20.0 Tiempo de integración activo para refrigeración en segundos
Con [Link] = 0.0, la acción I para refrigeración está
desconectada.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
100000.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 0.0 Tiempo derivativo activo para refrigeración en segundos
Con [Link] = 0.0, la acción D para refrigeración es­
tá desconectada.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
100000.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 0.2 Coeficiente activo del retardo derivativo para refrigeración
El efecto de la acción D se retrasa mediante el coeficiente de re­
tardo de la acción derivada.
Retardo de la acción derivada = Tiempo derivativo × coeficiente
de retardo de la acción derivada
• 0.0: La acción D solo surte efecto para un ciclo y, por ello,
casi no es efectiva.
• 0.5: Este valor se ha acreditado en la práctica para sistemas
regulados con una constante de tiempo dominante.
• > 1.0: Cuanto mayor sea el coeficiente, más se retrasará el
efecto de la acción D.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
[Link] ≥ 0.0

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 379
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
[Link](­ REAL 1.0 Ponderación activa de la acción P para refrigeración
1) En el caso de que se modifique la consigna, es posible atenuar
la acción P.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción P es totalmente efectiva al cambiar la consig­
na
• 0.0: La acción P no es efectiva al cambiar la consigna
Si se produce una modificación del valor real, la acción P es to­
talmente efectiva.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
1.0 ≥ [Link] ≥ 0.0
[Link] REAL 1.0 Ponderación activa de la acción D para refrigeración
(1) En el caso de que se modifique la consigna, es posible atenuar
la acción D.
Se recomiendan valores comprendidos entre 0.0 y 1.0.
• 1.0: La acción D es totalmente efectiva al cambiar la consig­
na.
• 0.0: La acción D no es efectiva al cambiar la consigna.
Si se produce una modificación del valor real, la acción D es to­
talmente efectiva.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
1.0 ≥ [Link] ≥ 0.0
[Link](1) REAL 1.0 Tiempo de muestreo activo del algoritmo PID para refrigeración
en segundos
[Link] se determina durante la optimización y
se redondea a un múltiplo entero de [Link].
Si [Link] = 0.0 y [Link]­
Cooling = TRUE, [Link] se utiliza como duración del período
de la modulación del ancho de impulso para refrigeración.
Si [Link] = 0.0 y [Link]­
Cooling = FALSE, [Link] se utiliza como duración del perío­
do de la modulación del ancho de impulso para refrigeración.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
100000.0 ≥ [Link] > 0.0
[Link] REAL 3.402822e+­ Ancho de zona de regulación activo para refrigeración
(1) 38 Con [Link] = 3.402822e+38, la zona de regulación
para refrigeración está desconectada.
[Link] solo se ajusta automáticamente durante la
optimización inicial para refrigeración o para calefacción y refri­
geración si se ha seleccionado el método para el cálculo de pa­
rámetros [Link] = 2.
[Link] es remanente.

Regulación PID
380 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Variable Tipo de Ajuste pre­ Descripción


datos determina­
do
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
[Link] > 0.0
[Link](1) REAL 0.0 Ancho de zona muerta activo para refrigeración (ver Paráme­
tros PID (Página 158))
Con [Link] = 0.0, la zona muerta para refrigeración es­
tá desconectada.
[Link] no se ajusta automáticamente o se adapta du­
rante la optimización. [Link] debe configurarse co­
rrectamente a mano.
Si la zona muerta está conectada, es posible ajustar un error de
regulación (desviación entre consigna y valor real) permanen­
te. Esto puede tener un efecto negativo al realizar una optimi­
zación fina.
[Link] es remanente.
Solo es efectivo si la salida de refrigeración y el cambio de pará­
metros PID están activados ([Link] = TRUE,
[Link] = TRUE).
[Link] ≥ 0.0

Consulte
también
Variable ActivateRecoverMode PID_Temp (Página 390)
Variable Warning PID_Temp (Página 392)
Regulación multizona con PID_Temp (Página 179)

[Link] Parámetros State y Mode PID_Temp

Interrelación de los parámetros


El parámetro State indica el modo de operación actual del regulador PID. El parámetro State
no puede modificarse.
Con un flanco ascendente en ModeActivate, PID_Temp pasa al modo guardado en el
parámetro de entrada/salida Mode.
[Link] y [Link] definen para la optimización inicial y la optimización
fina si la optimización se realiza para la calefacción o para la refrigeración.
Si se conecta la CPU o se cambia de STOP a RUN, PID_Temp se inicia en el modo de operación
guardado en Mode. Para dejar PID_Temp en el modo de operación "Inactivo", ajuste
RunModeByStartup = FALSE.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 381
Instrucciones
10.3 PID_Temp

Significado de los valores

State / Mode Descripción del modo de operación


0 Inactivo
En el modo de operación "Inactivo" se emiten los siguientes valores de salida:
• 0.0 como valor de salida PID (PidOutputSum)
• 0.0 como valor de salida para calefacción (OutputHeat) y valor de salida para refrigeración (OutputCool)
• 0 como valor de salida analógico para calefacción (OutputHeat_PER) y valor de salida analógico para refri­
geración (OutputCool_PER)
• FALSE como valor de salida PWM para calefacción (OutputHeat_PWM) y valor de salida PWM para refrige­
ración (OutputCool_PWM)
Estos valores no dependen de los límites ni del escalado del valor de salida configurados en las estructuras
[Link] y [Link].
1 Optimización inicial
La optimización inicial determina el comportamiento del proceso a un escalón del valor de salida y busca el
punto de inflexión. Los parámetros PID óptimos se calculan a partir de la pendiente máxima y el tiempo muer­
to del sistema regulado. Para obtener los mejores parámetros PID, debe efectuarse una optimización inicial y
una optimización fina.
PID_Temp ofrece distintos tipos de optimización inicial en función de la configuración:
• Optimización inicial para calefacción:
Se emite un salto en el valor de salida para calefacción, se calculan los parámetros PID para calefacción
(estructura [Link]) y a continuación se regula al valor de consigna en el modo automáti­
co.
Si el comportamiento de proceso depende en gran medida del punto de operación, con PIDSelfTu­
[Link] puede activarse una adaptación del tiempo de retardo a la consigna.
• Optimización inicial para calefacción y refrigeración:
Se emite un salto en el valor de salida para calefacción. En cuanto el valor real se encuentra cerca del de
consigna, se emite un salto en el valor de salida para refrigeración. Se calculan los parámetros PID para ca­
lefacción (estructura [Link]) y refrigeración (estructura [Link]). A conti­
nuación se regula hasta el valor de consigna en el modo automático.
Si el comportamiento de proceso depende en gran medida del punto de operación, con PIDSelfTu­
[Link] puede activarse una adaptación del tiempo de retardo a la consigna.
Dependiendo del efecto del actuador de refrigeración en comparación con el actuador de calefacción,
puede modificarse la calidad de la optimización utilizando simultáneamente o no las salidas de calefacción
y refrigeración durante la optimización. Esta circunstancia se puede definir con [Link]­
Mode.
• Optimización inicial para refrigeración:
Se emite un salto en el valor de salida para refrigeración y se calculan los parámetros PID para refrigera­
ción (Struktur [Link]). A continuación se regula hasta el valor de consigna en el modo au­
tomático.
Si se desean optimizar los parámetros PID para calefacción y refrigeración, con la ejecución de una "Optimiza­
ción inicial para calefacción" y seguidamente una "Optimización inicial para refrigeración" cabe esperar un
mejor comportamiento de regulación que con la ejecución de una "Optimización inicial para calefacción y re­
frigeración". No obstante, la ejecución de la optimización inicial en dos pasos requiere más tiempo.

Requisitos generales para la optimización inicial:


• La instrucción PID_Temp se llama en un OB de alarma cíclica.
• Modo de operación Inactivo (State = 0), Manual (State = 4) o Automático (State = 3)
• ManualEnable = FALSE
• Reset = FALSE
• La consigna y el valor real se encuentran dentro de los límites configurados.

Regulación PID
382 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

State / Mode Descripción del modo de operación


Requisitos para la optimización inicial para calefacción:
• [Link] = TRUE
• [Link] = FALSE
• El valor real no debe aproximarse demasiado a la consigna.
|Setpoint - Input| > 0.3 * |[Link] - [Link]| y
|Setpoint - Input| > 0.5 * |Setpoint|
• El valor de consigna es mayor que el valor real.
Setpoint > Input

Requisitos para la optimización inicial para calefacción y refrigeración:


• [Link] = TRUE·
• [Link] = TRUE
• La salida de refrigeración está activada ([Link] = TRUE).
• La conmutación de parámetros PID está activada ([Link] = TRUE).
• El valor real no debe aproximarse demasiado a la consigna.
|Setpoint - Input| > 0.3 * |[Link] - [Link]| y
|Setpoint - Input| > 0.5 * |Setpoint|
• El valor de consigna es mayor que el valor real.
Setpoint > Input

Requisitos para la optimización inicial para refrigeración:


• [Link] = FALSE·
• [Link] = TRUE·
• La salida de refrigeración está activada ([Link] = TRUE).
• La conmutación de parámetros PID está activada ([Link] = TRUE).
• Se ha llevado a cabo una "Optimización inicial para calefacción" o una "Optimización inicial para calefac­
ción y refrigeración" ([Link] = TRUE) correcta, a ser posible en la misma consig­
na.
• El valor real debe estar próximo a la consigna.
|Setpoint - Input| < 0.05 * |[Link] - [Link]|

Cuanto más estable es el valor real, con mayor facilidad y precisión se pueden calcular los parámetros PID. Un
ruido del valor real es aceptable siempre que la subida del valor real sea considerablemente mayor que el rui­
do. Esto tiene más probabilidades de suceder en los modos de operación "Inactivo" o "Manual".
La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:
• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel

El método para el cálculo de los parámetros PID puede definirse por separado con [Link]­
leHeat y [Link] para calefacción y refrigeración.
Antes de recalcular los parámetros PID, se guarda una copia de seguridad de estos en la estructura CtrlParams­
BackUp y es posible reactivarlos con LoadBackUp.
Una vez realizada correctamente la optimización inicial, se pasa al modo automático.
Si la optimización inicial no se ha realizado correctamente, el cambio del modo de operación depende de Acti­
vateRecoverMode.
Se muestra la fase de la optimización inicial con [Link].
Para iniciar una optimización inicial para calefacción o una optimización inicial para calefacción y refrigeración
desde el modo automático, es recomendable hacer coincidir el cambio requerido de la consigna con el flanco
ascendente en ModeActivate. Si primero se cambia la consigna y luego se inicia la optimización inicial, el valor
de salida en el modo automático varía y provoca una modificación del valor real. Esto puede tener un efecto
negativo sobre la optimización inicial subsiguiente o incluso impedir su inicio.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 383
Instrucciones
10.3 PID_Temp

State / Mode Descripción del modo de operación


2 Optimización fina
La optimización fina genera una oscilación constante y limitada del valor real. Los parámetros PID se optimi­
zan para el punto de operación a partir de la amplitud y la frecuencia. Los parámetros PID existentes después
de la optimización fina muestran en su mayoría un comportamiento de guía y ante fallos mucho mejor que
los parámetros PID de la optimización inicial. Para obtener los mejores parámetros PID, debe efectuarse una
optimización inicial y una optimización fina.
PID_Temp intenta generar automáticamente una oscilación que es mayor que el ruido del valor real. La estabi­
lidad del valor real ejerce tan solo una mínima influencia sobre la optimización fina.
PID_Temp ofrece distintos tipos de optimización fina en función de la configuración:
• Optimización fina para calefacción:
PID_Temp genera una oscilación del valor real con cambios periódicos en el valor de salida para calefac­
ción y calcula los parámetros PID para calefacción (Struktur [Link]).
• Optimización fina para refrigeración:
PID_Temp genera una oscilación del valor real con cambios periódicos en el valor de salida para refrigera­
ción y calcula los parámetros PID para refrigeración (Struktur [Link]).

Offset temporal de la optimización para el regulador de calefacción y refrigeración


Si se utiliza PID_Temp como regulador de calefacción ([Link] = TRUE), el valor de salida PID
(PidOutputSum) en la consigna debe cumplir los siguientes requisitos para que pueda generarse una oscila­
ción del valor real y para que la optimización fina pueda realizarse correctamente:
• Valor de salida PID positivo para la optimización fina para calefacción
• Valor de salida PID negativo para la optimización fina para refrigeración
Si no se cumplen estos requisitos, se puede especificar un offset temporal para la optimización fina que se
emita a la salida de acción contrapuesta:
• Offset para la salida de refrigeración ([Link]) en caso de optimización fina pa­
ra calefacción.
Antes de iniciar la optimización debe especificarse un valor de offset de optimización para refrigeración
negativo que sea menor que el valor de salida PID (PidOutputSum) de la consigna en estado estacionario.
• Offset para salida de calefacción ([Link]) en la optimización fina para refrige­
ración.
Antes de iniciar la optimización debe especificarse un valor de offset de optimización para calefacción po­
sitivo que sea mayor que el valor de salida PID (PidOutputSum) de la consigna en estado estacionario.
Entonces, el algoritmo PID compensa el offset especificado de manera que el valor real se mantenga en la
consigna. A través de la magnitud del offset, el valor de salida PID se puede adaptar para que cumpla la condi­
ción antes mencionada.
Para evitar sobreoscilaciones mayores del valor real al especificar el offset, esta también puede incrementarse
en varios pasos.
Si PID_Temp sale del modo Optimización fina, se restablece el offset de optimización.
Ejemplo de especificación de un offset para la optimización fina para refrigeración:
• Sin offset:
– Consigna (Setpoint) = valor real (ScaledInput) = 80 °C
– Valor de salida PID (PidOutputSum) = 30.0
– Valor de salida para calefacción (OutputHeat) = 30.0
– Valor de salida para refrigeración (OutputCool) = 0.0
La salida de refrigeración por si sola no permite generar una oscilación del valor real en torno a la con­
signa.
En ese caso fallaría la optimización fina.
• Con especificación de un offset para la salida de calefacción ([Link]) = 80.0
– Consigna (Setpoint) = valor real (ScaledInput) = 80 °C
– Valor de salida PID (PidOutputSum) = -50.0
– Valor de salida para calefacción (OutputHeat) = 80.0
– Valor de salida para refrigeración (OutputCool) = -50.0
Al especificar un offset para la salida de calefacción, la salida de refrigeración puede generar ahora una
oscilación del valor real alrededor de la consigna.
De este modo la optimización fina puede llevarse a cabo correctamente.

Regulación PID
384 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

State / Mode Descripción del modo de operación

Requisitos generales para la optimización fina:


• La instrucción PID_Temp se llama en un OB de alarma cíclica.
• No se esperan perturbaciones.
• La consigna y el valor real se encuentran dentro de los límites configurados.
• El lazo de regulación es estacionario en el punto de operación. El punto de operación se ha alcanzado
cuando el valor real coincide con la consigna.
Si la zona muerta está conectada, es posible ajustar un error de regulación (desviación entre consigna y
valor real) permanente. Esto puede tener un efecto negativo al realizar la optimización fina.
• ManualEnable = FALSE
• Reset = FALSE
• Modo de operación Automático (State = 3), Inactivo (State = 0) o Manual (State = 4)

Requisitos para la optimización fina para calefacción:


• [Link] = TRUE
• [Link] = FALSE
• Si PID_Temp está configurado como regulador de calefacción ([Link] = TRUE), en el pun­
to de operación en el que debe realizarse la optimización debe estar activa la salida de calefacción (Pi­
dOutputSum > 0.0 (ver "Offset de optimización")).

Requisitos para la optimización fina para refrigeración:


• [Link] = FALSE
• [Link] = TRUE
• La salida de refrigeración está activada ([Link] = TRUE).
• El cambio de parámetros PID está activado ([Link] = TRUE).
• La salida de refrigeración debe estar activa en el punto de operación en el que debe realizarse la optimiza­
ción (PidOutputSum < 0.0 (ver "Offset de optimización")).

La secuencia de la optimización fina depende del modo de operación a partir del cual se inicia:
• Modo automático (State = 3) con [Link] = FALSE (ajuste predeterminado)
Si desea mejorar los parámetros PID existentes mediante optimización, inicie la optimización fina desde el
modo automático.
PID_Temp regula con los parámetros PID existentes hasta que el lazo de regulación es estacionario y se
cumplen las condiciones para la optimización fina. Solo entonces comienza la optimización fina.
• Modo de operación Inactivo (State = 0), Manual (State = 4) o Automático (State = 3) con PIDSelfTu­
[Link] = TRUE
Se intenta alcanzar la consigna con el valor de salida mínimo o máximo:
– con el valor de salida mínimo o máximo para calefacción en la optimización fina para calefacción;
– con el valor de salida mínimo o máximo para refrigeración en caso de optimización fina para refrigera­
ción.
lo que puede ocasionar una sobreoscilación muy alta. La optimización fina comienza cuando se alcanza la
consigna.
Si no es posible alcanzar la consigna, PID_Temp no cancela automáticamente la optimización.

La consigna se congela en la variable CurrentSetpoint. La optimización se cancela cuando se cumple:


• Setpoint > CurrentSetpoint + CancelTuningLevel
o bien
• Setpoint < CurrentSetpoint - CancelTuningLevel
El método para el cálculo de los parámetros PID puede definirse por separado con [Link]­
leHeat y [Link] para calefacción y refrigeración.
Antes de recalcular los parámetros PID, se guarda una copia de seguridad de estos en la estructura CtrlParams­
BackUp y es posible reactivarlos con LoadBackUp.
Una vez realizada correctamente la optimización fina, el regulador cambia al modo automático.
Si la optimización fina no se ha realizado correctamente, el cambio del modo de operación depende de Acti­
vateRecoverMode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 385
Instrucciones
10.3 PID_Temp

State / Mode Descripción del modo de operación


La fase de la optimización fina se muestra con [Link].
3 Modo automático
En el modo automático, PID_Temp regula el sistema regulado conforme a los parámetros predefinidos.
Si se cumple uno de los requisitos siguientes, se cambia al modo automático:
• Optimización inicial finalizada correctamente.
• Optimización fina finalizada correctamente.
• Cambio del parámetro de entrada/salida Mode al valor 3 y un flanco ascendente en ModeActivate.
El cambio de modo automático a modo manual se realiza sin discontinuidad únicamente en el editor de pues­
ta de servicio.
En el modo automático se tiene en cuenta la variable ActivateRecoverMode.
4 Modo manual
En el modo manual se debe especificar un valor de salida PID manual en el parámetro ManualValue. Los valo­
res resultantes de este valor manual en las salidas para calefacción y refrigeración se obtienen del escalado de
salida configurado.
Este modo puede activarse también mediante ManualEnable = TRUE. Se recomienda cambiar los modos de
operación solo mediante Mode y ModeActivate.
El cambio de modo manual a modo automático se efectúa sin discontinuidad.
En el modo manual se tiene en cuenta la variable ActivateRecoverMode.
5 Valor de salida sustitutivo con monitorización de errores
El algoritmo de regulación está desactivado. La variable SetSubstituteOutput determina qué valor de salida
PID (PidOutputSum) se emite durante este modo de operación.
• SetSubstituteOutput = FALSE: Último valor de salida PID válido
• SetSubstituteOutput = TRUE: Valor de salida sustitutivo (SubstituteOutput)
Este modo de operación no puede activarse con Mode = 5.
Se activa en caso de error en lugar del modo de operación "Inactivo", cuando se cumplen todas las condicio­
nes siguientes:
• Modo automático (State = 3)
• ActivateRecoverMode = TRUE
• Se han producido uno o varios errores en los que interviene ActivateRecoverMode.
En cuanto los errores dejan de estar activos, PID_Temp pasa de nuevo al modo automático.

Comportamiento ENO
Si State = 0, entonces ENO = FALSE.
Si State ≠ 0, entonces ENO = TRUE.

Cambio automático de modo de operación durante la puesta en servicio


Una vez realizada correctamente la optimización inicial o la optimización fina, se activa el
modo automático. La siguiente tabla muestra cómo se modifican Mode y State durante una
optimización inicial correcta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 Optimización inicial correcta

Regulación PID
386 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

N.º de ciclo Mode State Acción


n 3 3 Se inicia el modo automático
En caso de error, PID_Temp cambia automáticamente el modo de operación.
La siguiente tabla muestra cómo se modifican Mode y State durante una optimización inicial
incorrecta.

N.º de ciclo Mode State Acción


0 4 4 Ajustar Mode = 1
1 1 4 Ajustar ModeActivate = TRUE
1 4 1 El valor de State se guarda en Mode
Se inicia la optimización inicial
n 4 1 La optimización inicial se ha cancelado
n 4 4 Se inicia el modo manual
Si ActivateRecoverMode = TRUE, se activa el modo de operación guardado en Mode. Al iniciar
la optimización inicial o fina, PID_Temp ha guardado el valor de State en el parámetro de
entrada/salida Mode. Por lo tanto, PID_Temp cambia al modo de operación desde el que se
inició la optimización.
Si ActivateRecoverMode = FALSE, se cambia al modo de operación "Inactivo".
Consulte
también
Parámetro de salida PID_Temp (Página 351)
Parámetro de entrada/salida PID_Temp (Página 353)

[Link] Parámetro ErrorBits PID_Temp

Si hay varios errores presentes a la vez, los valores del ErrorBits se muestran sumados
binariamente. Si se muestra, p. ej., ErrorBits = 0000003h, significa que están presentes
simultáneamente los errores 0000001h y 0000002h.
ErrorBits Descripción

(DW#16#...)
0000000 No hay ningún error.
0000001 El parámetro "Input" se encuentra fuera de los límites del valor real.
• Input > [Link] o bien,
• Input < [Link]
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp permanece en modo automático.
Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode = TRUE,
PID_Temp permanece en modo manual.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 387
Instrucciones
10.3 PID_Temp

ErrorBits Descripción

(DW#16#...)
0000002 Valor no válido en el parámetro "Input_PER". Compruebe si hay un error en la entrada analógica.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp emite el valor de salida sustitutivo configurado. En cuanto desaparece el error, PID_Temp
pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode = TRUE,
PID_Temp permanece en modo manual.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.
0000004 Error durante la optimización fina. No se ha podido mantener la oscilación del valor real.
Si se utiliza PID_Temp como regulador de calefacción y refrigeración ([Link] = TRUE), a
fin de generar una oscilación del valor real y realizar correctamente la optimización fina, el valor de salida
PID (PidOutputSum) en la consigna debe ser
• positivo para la optimización fina de calefacción
• negativo para la optimización fina de refrigeración
Si no se cumple esta condición, utilice el offset de optimización (variables [Link]­
Cool y [Link]), ver Optimización fina (Página 168).
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0000008 Error al iniciar la optimización inicial. El valor real está demasiado próximo a la consigna o es mayor que
esta. Inicie la optimización fina.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0000010 Se ha cambiado la consigna durante la optimización.
En la variable CancelTuningLevel puede ajustar la fluctuación admisible de la consigna.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0000020 La optimización inicial no está permitida durante la optimización fina.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp permanece en el modo
de operación Optimización fina.
0000040 Error durante la optimización inicial. La refrigeración no ha podido reducir el valor real.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0000100 Un error en la optimización fina ha provocado parámetros no válidos.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0000200 Valor no válido en el parámetro "Input": El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp emite el valor de salida sustitutivo configurado. En cuanto desaparece el error, PID_Temp
pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode = TRUE,
PID_Temp permanece en modo manual.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.
0000400 Error al calcular el valor de salida. Compruebe los parámetros PID.
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp emite el valor de salida sustitutivo configurado. En cuanto desaparece el error, PID_Temp
pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.

Regulación PID
388 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

ErrorBits Descripción

(DW#16#...)
0000800 Error de tiempo de muestreo: PID_Temp no se llama dentro del tiempo de muestreo del OB de alarma cícli­
ca.
Se recomienda llamar PID_Temp en un OB de alarma cíclica sin condiciones y activarlo o desactivarlo con
el modo de operación en el parámetro Mode. Las llamadas condicionadas o la llamada en OB1 podrían
afectar a la calidad de la regulación.
Se puede desactivar la monitorización del tiempo de muestreo con [Link] = FALSE
Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp permanece en modo automático.
Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode = TRUE,
PID_Temp permanece en modo manual.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.
Si este error se ha producido durante la simulación con PLCSIM, tenga en cuenta las indicaciones de Simu­
lación de PID_Temp con PLCSIM (Página 185).
0001000 Valor no válido en el parámetro "Setpoint" o "SubstituteSetpoint": El valor no tiene un formato numérico
válido.
Si antes de producirse el error estaba activo el modo automático y se cumplía ActivateRecoverMode =
TRUE, PID_Temp emite el valor de salida sustitutivo configurado. En cuanto desaparece el error, PID_Temp
pasa de nuevo al modo automático.
Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode = TRUE,
PID_Temp permanece en modo manual.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode.
0010000 Valor no válido en el parámetro ManualValue. El valor no tiene un formato numérico válido.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp permanece en el modo
manual y utiliza SubstituteOutput como valor de salida PID. En cuanto se especifica un valor válido en Ma­
nualValue, PID_Temp lo utiliza como valor de salida PID.
0020000 Valor no válido en la variable SubstituteOutput. El valor no tiene un formato numérico válido.
PID_Temp permanece en el modo de operación "Valor de salida sustitutivo con monitorización de errores"
o en el modo manual y utiliza el límite inferior del valor de salida PID para calefacción ([Link]­
[Link]) como valor de salida PID.
En cuanto se especifica un valor válido en SubstituteOutput, PID_Temp lo utiliza como valor de salida PID.
0040000 Valor no válido en el parámetro Disturbance. El valor no tiene un formato numérico válido.
Si antes de producirse el error estaba activo el modo automático y ActivateRecoverMode = TRUE, Distur­
bance se ajusta a cero. PID_Temp permanece en el modo automático.
Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización fina
y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en Mode. Si
en la fase actual Disturbance no influye en el valor de salida, la optimización no se cancela.
0200000 Error en el maestro de la cascada: Slaves no están en el modo automático o han activado la consigna susti­
tutiva e impiden la optimización del maestro.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0400000 La optimización inicial para calefacción no está permitida mientras esté activa la refrigeración.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
0800000 El valor real debe estar próximo a la consigna para iniciar la optimización inicial para refrigeración.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 389
Instrucciones
10.3 PID_Temp

ErrorBits Descripción

(DW#16#...)
1000000 Error al iniciar la optimización: [Link] y [Link] no están activados o no concuer­
dan con la configuración.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
2000000 Para la optimización inicial para refrigeración es imprescindible que la optimización inicial para calefacción
se haya realizado correctamente.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
4000000 Error al iniciar la optimización fina: [Link] y [Link] no pueden estar activados si­
multáneamente.
Si antes de producirse el error se cumplía ActivateRecoverMode = TRUE, PID_Temp cancela la optimización
y cambia al modo de operación guardado en Mode.
8000000 Un error durante el cálculo de los parámetros PID ha provocado parámetros no válidos.
Los parámetros no válidos se descartan y los parámetros PID originales se conservan sin cambios.
Si este error se produce durante la optimización inicial, asegúrese de lo siguiente:
• Optimización inicial de calefacción o de calefacción y refrigeración: el valor de salida PID no está limita­
do desde antes de comenzar la optimización inicial por el límite superior para calefacción.
• Optimización inicial de refrigeración: el valor de salida PID no está limitado desde antes de comenzar la
optimización inicial por el límite inferior para refrigeración.
Para iniciar una optimización inicial de calefacción o de calefacción y refrigeración desde el modo automá­
tico, se recomienda hacer coincidir el cambio requerido de la consigna con el flanco ascendente en Mo­
deActivate. Así se evita que el valor de salida PID se limite entre el cambio de consigna y el comienzo de la
optimización inicial. Esto también se logra iniciando la optimización desde el modo manual o el modo de
operación "Inactivo".
Se distingue entre los casos siguientes:
• Si antes de producirse el error estaba activo el modo automático y se cumple ActivateRecoverMode =
TRUE, PID_Temp permanece en modo automático.
• Si antes de producirse el error estaba activo el modo manual y se cumple ActivateRecoverMode =
TRUE, PID_Temp permanece en modo manual.
• Si antes de producirse el error estaba activo el modo de operación Optimización inicial u Optimización
fina y se cumplía ActivateRecoverMode = TRUE, PID_Temp pasa al modo de operación guardado en
Mode.

[Link] Variable ActivateRecoverMode PID_Temp

La variable ActivateRecoverMode determina el comportamiento en caso de error. El


parámetro Error indica si hay algún un error pendiente en ese momento. Si deja de persistir el
error, se indica Error = FALSE. El parámetro ErrorBits indica qué errores han ocurrido.

Regulación PID
390 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Modo automático y modo manual

ATENCIóN
Su instalación puede sufrir daños.
Si se cumple ActivateRecoverMode = TRUE, incluso al rebasar los límites del valor real
PID_Temp permanece en el modo automático o manual en caso de fallo.
De este modo, su instalación puede sufrir daños.
Configure un comportamiento en caso de error para su sistema regulado que proteja su
instalación de daños.

ActivateRecover­ Descripción
Mode
FALSE En caso de fallo, PID_Temp cambia al modo de operación "Inactivo". El regulador no se activa hasta que no
se detecta un flanco descendente en Reset o un flanco ascendente en ModeActivate.
TRUE Modo automático
Si en el modo automático se producen errores con frecuencia, este ajuste empeorará el comportamiento
de regulación, ya que PID_Temp alterna entre el valor de salida PID calculado y el valor de salida sustituti­
vo cada vez que se produce un error. Compruebe en tal caso el parámetro ErrorBits y elimine la causa de
error.
Si se produce uno o varios de los errores siguientes y antes de producirse el error estaba activo el modo
automático, PID_Temp permanece en el modo automático:
• 0000001h: El parámetro "Input" se encuentra fuera de los límites del valor real.
• 0000800h: Error en tiempo de muestreo
• 0040000h: Valor no válido en el parámetro Disturbance.
• 8000000h: Error durante el cálculo de los parámetros PID

Si se produce uno o varios de los errores siguientes y antes de producirse el error estaba activo el modo
automático, PID_Temp cambia al modo de operación "Valor de salida sustitutivo con monitorización de
errores":
• 0000002h: Valor no válido en el parámetro Input_PER.
• 0000200h: Valor no válido en el parámetro Input.
• 0000400h: Error al calcular el valor de salida.
• 0001000h: Valor no válido en el parámetro Setpoint o SubstituteSetpoint.

En cuanto los errores dejan de estar activos, PID_Temp pasa de nuevo al modo automático.
Si en el modo de operación "Valor de salida sustitutivo con monitorización de errores" se produce el si­
guiente error, PID_Temp ajusta el valor de salida PID mientras que este error persista en [Link]­
[Link]:
• 0020000h: Valor no válido en la variable SubstituteOutput. El valor no tiene un formato numérico váli­
do.

Este comportamiento no depende de SetSubstituteOutput.


Modo manual
Si se produce uno o varios de los errores siguientes y antes de producirse el error estaba activo el modo
manual, PID_Temp permanece en el modo manual.
Si en el modo manual se produce el siguiente error, PID_Temp ajusta el valor de salida PID mientras este
error persista en SubstituteOutput:
• 0010000h: Valor no válido en el parámetro ManualValue. El valor no tiene un formato numérico váli­
do.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 391
Instrucciones
10.3 PID_Temp

ActivateRecover­ Descripción
Mode
Si en el modo manual persiste el error 0010000h y se produce el siguiente error, PID_Temp ajusta el valor
de salida PID mientras este error persista en [Link]
• 0020000h: Valor no válido en la variable SubstituteOutput. El valor no tiene un formato numérico váli­
do.
Este comportamiento no depende de SetSubstituteOutput.

Optimización inicial y optimización fina

ActivateRecover­ Descripción
Mode
FALSE En caso de fallo, PID_Temp cambia al modo de operación "Inactivo". El regulador no se activa hasta que no
se detecta un flanco descendente en Reset o un flanco ascendente en ModeActivate.
TRUE Si se produce el siguiente error, PID_Temp permanece en el modo de operación activo:
• 0000020h: La optimización inicial no está permitida durante la optimización fina.
Los siguientes errores se omiten:
• 0010000h: Valor no válido en el parámetro ManualValue.
• 0020000h: Valor no válido en la variable SubstituteOutput.
Con todos los demás errores, PID_Temp interrumpe la optimización y cambia al modo de operación desde
el que se inició la optimización.

[Link] Variable Warning PID_Temp

Si hay varias advertencias presentes a la vez, los valores de la variable Warning se muestran
sumados en modo binario. Si se muestra p. ej. la advertencia 0000003h, significa que las
advertencias 0000001h y 0000002h están presentes simultáneamente.
Warning Descripción
(DW#16#....)
0000000 No hay ninguna advertencia.
0000001 Durante la optimización inicial no se encontró el punto de inflexión.
0000004 La consigna ha sido limitada a los límites ajustados.
0000008 En el método de cálculo seleccionado no se han definido todas las propiedades necesarias del sistema regu­
lado. En sustitución se calcularon los parámetros PID con el método [Link] = 3 o [Link]­
Cool = 3.
0000010 No se ha podido cambiar el modo de operación porque Reset = TRUE o ManualEnable = TRUE.
0000020 El tiempo de muestreo del algoritmo PID está limitado por el tiempo de ciclo del OB invocante.
Para obtener mejores resultados, utilice tiempos de ciclo más cortos para el OB.
0000040 El valor real ha rebasado por exceso uno de sus límites de advertencia.
0000080 Valor no válido en Mode. El modo de operación no se conmuta.
0000100 El valor manual se ha limitado a los límites del valor de salida PID.
0000200 No se admiten las reglas indicadas para la optimización. No se calculan parámetros PID.
0001000 El valor de salida sustitutivo no puede alcanzarse porque está fuera de los límites del valor de salida.

Regulación PID
392 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Warning Descripción
(DW#16#....)
0004000 No se admite el número indicado del valor de salida para calefacción y/o refrigeración.
Se utilizará solamente la salida OutputHeat o OutputCool.
0008000 Valor no válido en [Link]. Se utilizará el valor predeterminado 0.
0010000 Valor no válido en [Link]. Se utilizará el valor predeterminado 0.
0020000 La activación de la refrigeración (variable [Link]) no se soporta en un regulador que se utili­
ce como maestro (variable [Link]). PID_Temp funciona como regulador de calefacción.
Ajuste la variable [Link] a FALSE.
0040000 Valor no válido en [Link], [Link] o [Link]. PID_Temp
solo soporta valores positivos para la ganancia proporcional (calefacción y refrigeración) y el factor de enfria­
miento. El modo automático permanece activo con valor de salida PID 0.0. Se detiene la acción integral.

Se borrarán las siguientes advertencias en cuanto se haya solucionado la causa o se repita la


acción con parámetros válidos:
• 0000001h
• 0000004h
• 0000008h
• 0000040h
• 0000100h
Todas las demás advertencias se eliminan si hay un flanco ascendente en Reset o ErrorAck.

[Link] Variable PwmPeriode

Al utilizar OutputHeat_PWM o OutputCool_PWM, si el tiempo de muestreo del algoritmo PID


([Link] o [Link]), y por tanto la duración del
período de la modulación del ancho de impulso, es demasiado grande para mejorar la
uniformidad del valor real, en los parámetros [Link] y
[Link] respectivamente debe especificarse una duración del
período más corta.

Duración del período de la modulación del ancho de impulso en OutputHeat_PWM


Duración del período de la PWM en la salida OutputHeat_PWM en función de
[Link]:
• [Link] = 0.0 (predeterminado)
El tiempo de muestreo del algoritmo PID para calefacción ([Link])
se utiliza como duración del período de la PWM.
• [Link] > 0.0
El valor se redondea a un a un múltiplo entero del tiempo de muestreo PID_Temp
([Link]) y se utiliza como duración del período de la PWM.
El valor debe cumplir las condiciones siguientes:
– [Link] ≤ [Link]
– [Link] > [Link]
– [Link] > [Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 393
Instrucciones
10.3 PID_Temp

Duración del período de la modulación del ancho de impulso en OutputCool_PWM


Duración del período de la PWM en la salida OutputCool_PWM en función de
[Link] y del método para calefacción/refrigeración:
• [Link] = 0.0 y factor de refrigeración ([Link] = FALSE):
El tiempo de muestreo del algoritmo PID para calefacción ([Link])
se utiliza como duración del período de la PWM.
• [Link] = 0.0 y cambio de parámetros PID ([Link] = TRUE):
El tiempo de muestreo del algoritmo PID para refrigeración ([Link])
se utiliza como duración del período de la PWM.
• [Link] > 0.0:
El valor se redondea a un a un múltiplo entero del tiempo de muestreo PID_Temp
([Link]) y se utiliza como duración del período de la PWM.
El valor debe cumplir las condiciones siguientes:
– [Link] ≤ [Link] o bien: [Link]
– [Link] > [Link]
– [Link] > [Link]
[Link] solo es efectivo si la salida de refrigeración está activada
([Link] =TRUE).
Al utilizar PwmPeriode, la precisión de la señal de salida de la PWM se determina mediante la
relación de PwmPeriode respecto al tiempo de muestreo PID_Temp (tiempo de ciclo del OB).
PwmPeriode debería ser al menos 10 veces el tiempo de muestreo del algoritmo PID.
Si el tiempo de muestreo del algoritmo PID no es un número entero múltiplo de PwmPeriode,
cada último período de la PWM se prolonga correspondientemente dentro del tiempo de
muestreo del algoritmo PID.

Regulación PID
394 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.3 PID_Temp

Ejemplo de OutputHeat_PWM

2XWSXW








W PV

2XWSXWB3:0

758(

                 

)$/6(
W PV


  

① Tiempo de muestreo PID_Temp  = 100.0 ms (tiempo de ciclo del OB de alarma cíclica invocante, variable CycleTi­
[Link])
② Tiempo de muestreo del algoritmo PID = 2000.0 ms (variable [Link])
③ Duración del período de la PWM para calefacción = 600.0 ms (variable [Link])

[Link] Variable IntegralResetMode

La variable IntegralResetMode determina cómo se preasigna la acción I [Link]:


• al cambiar del modo de operación "Inactivo" al "Modo automático"
• Con flanco TRUE -> FALSE en el parámetro Reset y el parámetro Mode = 3
Este ajuste surte efecto solo para un ciclo y es solo efectivo si la acción I está activada
(variables [Link] y [Link] > 0.0)
IntegralReset­ Descripción
Mode
0 Filtrar
El valor de [Link] se preasigna de tal modo que la conmutación se realice sin discontinuidad,
es decir, el "Modo automático" se inicia partiendo del valor de salida = 0.0 (parámetro PidOutputSum) y no
se produce salto del valor de salida, con independencia del error de regulación (consigna - valor real).

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 395
Instrucciones
10.3 PID_Temp

IntegralReset­ Descripción
Mode
1 Borrar
Se recomienda ajustar la ponderación de la acción P (variables [Link] y Re­
[Link]) a 1.0 si se utiliza esta opción.
El valor de [Link] se borra. Si existe un error de regulación, se produce un salto del valor de
salida PID. La dirección del salto del valor de salida depende de la ponderación activa de la acción P (varia­
bles [Link] y [Link]) y del error de regulación:
• Ponderación activa de la acción P = 1.0:
El salto del valor de salida y el error de regulación tienen idéntico signo.
Ejemplo: si el valor real está por debajo de la consigna (error de regulación positivo), el valor de salida
PID salta a un valor positivo.
• Ponderación activa de la acción P < 1.0:
Para errores de regulación grandes, el salto del valor de salida PID y el error de regulación tienen idén­
tico signo.
Ejemplo: si el valor real es muy inferior a la consigna (error de regulación positivo), el valor de salida
PID salta a un valor positivo.
Para errores de regulación pequeños, el salto del valor de salida PID y el error de regulación tienen dis­
tinto signo.
Ejemplo: si el valor real es ligeramente inferior a la consigna (error de regulación positivo), el valor de
salida PID salta a un valor negativo. Normalmente esto no es deseable, pues da lugar a un aumento
provisional del error de regulación.
Cuanto menor esté configurada la ponderación de la acción P, mayor debe ser el error de regulación, a
fin de que el salto del valor de salida PID conserve el signo.
Se recomienda ajustar la ponderación de la acción P (variables [Link] y Re­
[Link]) a 1.0 si se utiliza esta opción. En caso contrario, esto podría provocar el
comportamiento descrito no deseado en caso de errores de regulación pequeños. Alternativamente, tam­
bién puede utilizar IntegralResetMode = 4. Esta opción garantiza que el signo del salto de la salida PID y
del error de regulación sea idéntico con independencia de la ponderación configurada de la acción P y del
error de regulación.
2 Mantener
El valor de [Link] no se modifica. Mediante el programa de usuario se puede especificar un
nuevo valor.
3 Preasignar
El valor de [Link] se preasigna automáticamente como si en el último ciclo hubiese sido Pi­
dOutputSum = OverwriteInitialOutputValue.
4 Como el cambio de consigna (solo para PID_Temp con versión ≥ 1.1)
El valor de [Link] se preasigna automáticamente de forma que se obtenga un salto del valor
de salida PID similar al de un regulador PI en modo automático en caso de cambio de consigna del valor
real actual a la consigna actual.
Si existe un error de regulación, se produce un salto del valor de salida PID. El salto del valor de salida PID
y el error de regulación tienen idéntico signo.
Ejemplo: si el valor real está por debajo de la consigna (error de regulación positivo), el valor de salida PID
salta a un valor positivo. Esto es independiente de la ponderación configurada de la acción P y del error de
regulación.

Si se asigna a IntegralResetMode un valor fuera del rango válido, PID_Temp se comportará


como con la preasignación de IntegralResetMode:
• PID_Temp hasta V1.0: IntegralResetMode = 1
• PID_Temp a partir de V1.1: IntegralResetMode = 4

Regulación PID
396 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

10.4 Funciones básicas de PID

10.4.1 CONT_C

[Link] Descripción de CONT_C

La instrucción CONT_C permite regular procesos técnicos con magnitudes continuas de


entrada y salida en los sistemas de automatización SIMATIC S7. Mediante parametrización se
pueden activar o desactivar funciones parciales del regulador PID para adaptarlo al sistema
regulado. Además de las funciones de las ramas de valor real y de consigna, la instrucción
realiza un regulador PID terminado con salida continua de magnitud manipulada y posibilidad
de controlar manualmente la variable manipulada.

Aplicación
El regulador se puede utilizar como regulador PID de valor fijo de manera individual o
también en regulaciones de varios lazos como regulador en cascada, mixto o de relación. El
modo de funcionamiento se basa en el algoritmo de regulación PID del regulador por
muestreo con señal de salida analógica, complementada dado el caso con una etapa de
formación de impulsos para generar señales de salida con modulación de ancho de impulsos
para regulaciones de dos o tres puntos con elementos finales de control proporcionales.

Llamada
La instrucción CONT_C dispone de una rutina de inicialización, que se ejecuta cuando el
parámetro de entrada COM_RST = TRUE está activado. El integrador se ajusta al valor de
inicialización I_ITVAL durante la inicialización. Todas las salidas de señal restantes se ponen a
cero. Una vez ejecutada la rutina de inicialización, debe activarse COM_RST = FALSE.
El cálculo de los valores en los bloques de regulación sólo se realiza correctamente si el
bloque se llama en intervalos regulares. Por ello, los bloques de regulación deben llamarse en
un OB de alarma cíclica (OB 30 a OB 38). El tiempo de muestreo se indica en el parámetro
CYCLE.

Información de error
El bloque no evalúa la palabra de notificación de error RET_VAL.

[Link] Funcionamiento de CONT_C

Rama de consigna
La consigna se indica en la entrada SP_INT en formato de coma flotante.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 397
Instrucciones
10.4 Funciones básicas de PID

Rama de valor real


El valor real se puede leer en formato de coma flotante o en formato de periferia. La función
CRP_IN transforma el valor de periferia PV_PER en un formato en coma flotante de -100 ...
+100 %, según la siguiente fórmula:
Salida de CRP_IN = PV_PER * 100 / 27648
La función PV_NORM normaliza la salida de CRP_IN según la siguiente norma:
Salida de PV_NORM = (salida de CRP_IN) *PV_FAC + PV_OFF
PV_FAC tiene preasignado el valor 1 y PV_OFF el valor 0.

Cálculo del error de regulación


La diferencia entre la consigna y el valor real es el error de regulación. Para suprimir una
pequeña oscilación permanente provocada por la cuantificación de las magnitudes
manipuladas (p. ej. en caso de una modulación de ancho de impulsos con PULSEGEN), el
error de regulación se deriva a través de una zona muerta (DEADBAND). Con DEADB_W = 0 la
zona muerta está desactivada.

Algoritmo PID
El algoritmo PID trabaja en el algoritmo de posición. Las acciones proporcional, integral (INT)
y derivativa (DIF) están conectadas en paralelo y pueden conectarse y desconectarse
individualmente. De esta forma pueden parametrizarse reguladores P, PI, PD y PID. Pero
también son posibles reguladores I.

Procesamiento de valores en manual


Es posible conmutar entre los modos manual y automático. En el modo manual, la magnitud
manipulada se corrige según un valor manual.
El integrador (INT) se pone internamente a LMN - LMN_P - DISV y el diferenciador (DIF) se
pone a 0 y se compensa internamente. La conmutación al modo automático se efectúa así
con suavidad.

Procesamiento de valores manipulados


La variable manipulada se limita con la función LMNLIMIT a valores especificables. El rebase
de los límites por la magnitud de entrada se señaliza mediante bits de aviso.
La función LMN_NORM normaliza la salida de LMNLIMIT según la siguiente regla:
LMN = (salida de LMNLIMIT) * LMN_FAC + LMN_OFF
LMN_FAC tiene preasignado el valor 1 y LMN_OFF el valor 0.
La variable manipulada también está disponible en formato de periferia. La función CRP_OUT
convierte el valor en coma flotante LMN en un valor de periferia según la siguiente regla:
LMN_PER = LMN * 27648 / 100

Control anticipativo
En la entrada DISV se puede aplicar una magnitud perturbadora de manera aditiva.

Regulación PID
398 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Diagrama de bloques de CONT_C

63B,17

393(5B21 *$,1

39B,1 '($'%$1'


;
&53B,1 39B1250 

39B3(5

'($'%B:
39 (5
39B)$&
39B2))

3B6(/
/01B3


,17  
,B6(/ ',69


  


7,,17B+2/' /01B,
,B,7/B21
,B,7/9$/
',)


 
/01B'
7'70B/$*
'B6(/

4/01B+/0

0$1B21 4/01B//0 /01


0$1
/01/,0,7 /01B1250 &53B287

/01B3(5



/01B+/0 /01B)$&
/01B//0 /01B2))

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 399
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetros de entrada de CONT_C

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-13  
Parámetro Tipo de Ajuste Descripción
datos prede­
termi­
nado
COM_RST BOOL FALSE La instrucción tiene una rutina de inicialización, que se ejecuta cuando está activada la en­
trada "Rearranque completo".
MAN_ON BOOL TRUE Si está activada la entrada "Conectar modo manual", el lazo de regulación está interrumpi­
do. Como variable manipulada se especifica un valor manual.
PVPER_ON BOOL FALSE Si el valor real se debe leer de la periferia, la entrada PV_PER debe estar interconectada
con la periferia, y la entrada "Activar valor real de periferia" debe estar activada.
P_SEL BOOL TRUE En el algoritmo PID las acciones PID se pueden conectar y desconectar individualmente. La
acción P está conectada si está activada la entrada "Activar acción P".
I_SEL BOOL TRUE En el algoritmo PID las acciones PID se pueden conectar y desconectar individualmente. La
acción I está conectada si está activada la entrada "Activar acción I".
INT_HOLD BOOL FALSE La salida del integrador se puede congelar. Para ello debe estar activada la entrada "Con­
gelar acción I".
I_ITL_ON BOOL FALSE La salida del integrador se puede aplicar a la entrada I_ITLVAL. Para ello, la entrada "Inicia­
lizar acción I" debe estar activada.
D_SEL BOOL FALSE En el algoritmo PID las acciones PID se pueden conectar y desconectar individualmente. La
acción D está conectada si está activada la entrada "Activar acción D".
CYCLE TIME T#1s El tiempo entre las llamadas del bloque debe ser constante. La entrada "Tiempo de mues­
treo" indica el tiempo entre las llamadas del bloque.
CYCLE >= 1ms
SP_INT REAL 0.0 La entrada "Consigna interna" sirve para preseleccionar una consigna.
Se admiten los valores de -100 a 100 % o una magnitud física 1).
PV_IN REAL 0.0 En la entrada "Valor real de la entrada" se puede parametrizar un valor de puesta en mar­
cha, o se puede conectar un valor real externo en coma flotante.
Se admiten los valores de -100 a 100 % o una magnitud física 1).
PV_PER WORD W#16#­ El valor real en formato de periferia se conecta al regulador a través de la entrada "Valor
0000 real de la periferia".
MAN REAL 0.0 La entrada "Valor manual" sirve para establecer un valor manual mediante una función de
manejo/visualización.
Se admiten los valores de -100 a 100 % o una magnitud física 2).
GAIN REAL 2.0 La entrada "Ganancia proporcional" indica la ganancia del regulador.
TI TIME T#20s La entrada "Tiempo de integración" determina el comportamiento temporal del integra­
dor.
TI >= CYCLE
TD TIME T#10s La entrada "Tiempo de acción derivada" determina el comportamiento temporal del dife­
renciador.
TD >= CYCLE

Regulación PID
400 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Parámetro Tipo de Ajuste Descripción


datos prede­
termi­
nado
TM_LAG TIME T#2s Tiempo de retardo de la acción D
El algoritmo de la acción D contiene un retardo que se puede parametrizar en la entrada
"Tiempo de retardo de la acción D".
TM_LAG >= CYCLE/2
DEADB_W REAL 0.0 El error de regulación se conduce por una zona muerta. La entrada "Ancho de zona muer­
ta" determina el tamaño de la zona muerta.
DEADB_W >= 0.0 (%) o una magnitud física 1)
LMN_HLM REAL 100.0 La variable manipulada está limitada siempre por un límite superior y uno inferior. La en­
trada "Límite superior de la variable manipulada" indica el límite superior.
Se admiten valores reales desde LMN_LLM (%) o una magnitud física 2).
LMN_LLM REAL 0.0 La variable manipulada está limitada siempre por un límite superior y uno inferior. La en­
trada "Límite inferior de la variable manipulada" indica el límite inferior.
Se admiten valores reales hasta LMN_HLM (%) o una magnitud física 2).
PV_FAC REAL 1.0 La entrada "Factor de valor real" se multiplica por el valor real. La entrada sirve para adap­
tar el rango del valor real.
PV_OFF REAL 0.0 La entrada "Offset de valor real" se suma al valor real. La entrada sirve para adaptar el ran­
go del valor real.
LMN_FAC REAL 1.0 La entrada "Factor de la variable manipulada" se multiplica por la variable manipulada. La
entrada sirve para adaptar el rango de la variable manipulada.
LMN_OFF REAL 0.0 La entrada "Offset de la variable manipulada" se suma a la variable manipulada. La entrada
sirve para adaptar el rango de la variable manipulada.
I_ITLVAL REAL 0.0 La salida del integrador se puede aplicar en la entrada I_ITL_ON. En la entrada "Valor de
inicialización de la acción I" está el valor de inicialización.
Se admiten valores desde -100 hasta 100.0 (%) o una magnitud física 2).
DISV REAL 0.0 Para realizar un control anticipativo, la magnitud perturbadora se conecta a la entrada "Va­
riable perturbadora".
Se admiten valores desde -100 hasta 100.0 (%) o una magnitud física 2).

1) Parámetros en la rama de consigna, rama de valor real, con la misma unidad


2) Parámetros en la rama de variable manipulada con la misma unidad

[Link] Parámetros de salida de CONT_C

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-14  
Parámetro Tipo de Ajuste Descripción
datos prede­
termi­
nado
LMN REAL 0.0 En la salida "Variable manipulada" se indica la variable manipulada realmente efectiva en
formato de coma flotante.
LMN_PER WORD W#16#­ La variable manipulada en formato de periferia se conecta al regulador en la salida "Varia­
0000 ble manipulada de la periferia".

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 401
Instrucciones
10.4 Funciones básicas de PID

Parámetro Tipo de Ajuste Descripción


datos prede­
termi­
nado
QLMN_HLM BOOL FALSE La variable manipulada está limitada siempre por un límite superior y uno inferior. La sali­
da "Se ha alcanzado el límite superior de la variable manipulada" indica que se ha alcanza­
do el límite superior.
QLMN_LLM BOOL FALSE La variable manipulada está limitada siempre por un límite superior y uno inferior. La sali­
da "Se ha alcanzado el límite inferior de la variable manipulada" indica que se ha alcanza­
do el límite inferior.
LMN_P REAL 0.0 La salida "Acción P" contiene la acción proporcional de la magnitud manipulada.
LMN_I REAL 0.0 La salida "Acción I" contiene la acción integral de la magnitud manipulada.
LMN_D REAL 0.0 La salida "Acción D" contiene la acción derivativa de la magnitud manipulada.
PV REAL 0.0 En la salida "Valor real" se indica el valor real que actúa efectivamente.
ER REAL 0.0 En la salida "Error de regulación" se indica el error de regulación que actúa realmente.

10.4.2 CONT_S

[Link] Descripción de CONT_S

La instrucción CONT_S permite regular procesos técnicos con señales de salida binarias de la
variable manipulada para elementos finales de control integrales en los sistemas de
automatización SIMATIC S7. Mediante parametrización es posible activar o desactivar
funciones parciales del regulador paso a paso PI para adaptarlo al sistema regulado. Junto a
las funciones de la rama de valor real, la instrucción realiza un regulador PI terminado con
salida binaria de variable manipulada y posibilidades de influir manualmente sobre la variable
manipulada. El regulador paso a paso opera sin realimentación de posición.

Aplicación
El regulador puede utilizarse como regulador PI de valor fijo, ya sea individualmente o en
lazos de regulación subordinados en regulaciones en cascada, mixtas o de relación, pero no
como regulador piloto. El modo de funcionamiento se basa en el algoritmo de regulación PI
del regulador por muestreo y se completa con los elementos funcionales que generan la
señal de salida binaria a partir de la señal manipulada analógica.

Llamada
La instrucción CONT_S dispone de una rutina de inicialización, que se ejecuta cuando el
parámetro de entrada COM_RST = TRUE está activado. Todas las salidas de señal se ponen a
cero. Una vez ejecutada la rutina de inicialización, debe activarse COM_RST = FALSE.
El cálculo de los valores en los bloques de regulación sólo se realiza correctamente si el
bloque se llama en intervalos regulares. Por ello, los bloques de regulación deben llamarse en
un OB de alarma cíclica (OB 30 a OB 38). El tiempo de muestreo se indica en el parámetro
CYCLE.

Regulación PID
402 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Información de error
El bloque no evalúa la palabra de notificación de error RET_VAL.

[Link] Funcionamiento de CONT_S

Rama de consigna
La consigna se indica en la entrada SP_INT en formato de coma flotante.

Rama de valor real


El valor real se puede leer en formato de coma flotante o en formato de periferia. La función
CRP_IN transforma el valor de periferia PV_PER en un formato en coma flotante de -100 ...
+100 %, según la siguiente fórmula:
Salida de CRP_IN = PV_PER * 100 / 27648
La función PV_NORM normaliza la salida de CRP_IN según la siguiente norma:
Salida de PV_NORM = (salida de CRP_IN) * PV_FAC + PV_OFF
PV_FAC tiene preasignado el valor 1 y PV_OFF el valor 0.

Cálculo de error de regulación


La diferencia entre la consigna y el valor real constituye el error de regulación. Para suprimir
una pequeña oscilación permanente provocada por la cuantificación de las magnitudes
manipuladas (resolución limitada de la variable manipulada por parte de la servoválvula), el
error de regulación se conduce a través de una zona muerta (DEADBAND). Con DEADB_W = 0
la zona muerta está desactivada.

Algoritmo paso a paso PI


La instrucción opera sin realimentación de posición. La acción I del algoritmo PI y la
realimentación de posición supuesta se calculan en un integrador (INT) y se comparan como
valor de realimentación con la acción P restante. La diferencia pasa a un elemento de tres
puntos (THREE_ST) y a un generador de impulsos (PULSEOUT), que genera los impulsos para
la servoválvula. Mediante una adaptación del umbral de respuesta del elemento de tres
puntos se reduce la frecuencia de conmutación del regulador.

Control anticipativo
En la entrada DISV se puede aplicar una magnitud perturbadora de manera aditiva.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 403
Instrucciones
10.4 Funciones básicas de PID

[Link] Diagrama de bloques de CONT_S

63B,17

393(5B21 *$,1

39B,1 '($'%$1'
 
;
&53B,1 39B1250 

39B3(5

'($'%B:
39 (5
39B)$&
39B2))

,17 /01/,0,7
/015B+6
/015B/6 /015B6,0

/0183 /0156B21 


/01569$/ 

/01'1
/016B21
',69
 38/6(287 $1' 4/0183
7+5((B67 $1'
DGDSWLY 
  $1' 4/01'1
$1'

38/6(B70 

%5($.B70
075B70 






25
/016B21 075B70 ;


 ,17 

7, 



;


Regulación PID
404 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetros de entrada de CONT_S

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-15  
Parámetro Tipo de Ajuste Descripción
datos prede­
termina­
do
COM_RST BOOL FALSE La instrucción tiene una rutina de inicialización, que se ejecuta cuando está activada la
entrada "Rearranque completo".
LMNR_HS BOOL FALSE La señal "Servoválvula en el tope superior" se aplica en la entrada "Señal de tope superior
de la realimentación de posición". LMNR_HS=TRUE significa: La servoválvula se encuentra
en el tope superior.
LMNR_LS BOOL FALSE La señal "Servoválvula en el tope inferior" se aplica en la entrada "Señal de tope inferior
de la realimentación de posición". LMNR_LS=TRUE significa: La servoválvula se encuentra
en el tope inferior.
LMNS_ON BOOL FALSE En la entrada "Activar el modo manual de las señales de la variable manipulada" el proce­
samiento de las señales manipuladas pasa a manual.
LMNUP BOOL FALSE En el modo manual de las señales de variable manipulada se controla la señal de salida
QLMNUP en la entrada "Señal alta de variable manipulada".
LMNDN BOOL FALSE En el modo manual de las señales de variable manipulada se controla la señal de salida
QLMNDN en la entrada "Señal baja de variable manipulada".
PVPER_ON BOOL FALSE Si se debe leer el valor real de la periferia, la entrada PV_PER debe estar interconectada
con la periferia, y la entrada "Activar valor real de periferia" debe estar activada.
CYCLE TIME T#1s El tiempo entre las llamadas del bloque debe ser constante. La entrada "Tiempo de mues­
treo" indica el tiempo entre las llamadas del bloque.
CYCLE >= 1ms
SP_INT REAL 0.0 La entrada "Consigna interna" sirve para preseleccionar una consigna.
Se admiten los valores de -100 a 100 % o una magnitud física 1).
PV_IN REAL 0.0 En la entrada "Valor real de la entrada" se puede parametrizar un valor de puesta en mar­
cha, o se puede conectar un valor real externo en coma flotante.
Se admiten los valores de -100 a 100 % o una magnitud física 1).
PV_PER WORD W#16#0­ El valor real en formato de periferia se conecta al regulador a través de la entrada "Valor
000 real de la periferia".
GAIN REAL 2.0 La entrada "Ganancia proporcional" indica la ganancia del regulador.
TI TIME T#20s La entrada "Tiempo de integración" determina el comportamiento temporal del integra­
dor.
TI >= CYCLE
DEADB_W REAL 1.0 El error de regulación se conduce por una zona muerta. La entrada "Ancho de zona muer­
ta" determina el tamaño de la zona muerta.
Se admiten los valores de 0 a 100 % o una magnitud física 1).
PV_FAC REAL 1.0 La entrada "Factor de valor real" se multiplica por el valor real. La entrada sirve para adap­
tar el rango del valor real.
PV_OFF REAL 0.0 La entrada "Offset de valor real" se suma al valor real. La entrada sirve para adaptar el ran­
go del valor real.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 405
Instrucciones
10.4 Funciones básicas de PID

Parámetro Tipo de Ajuste Descripción


datos prede­
termina­
do
PULSE_TM TIME T#3s En el parámetro "Duración mínima de impulso" se puede parametrizar una duración de
impulso mínima.
PULSE_TM >= CYCLE
BREAK_TM TIME T#3s En el parámetro "Duración mínima de pausa" se puede parametrizar una longitud de pau­
sa mínima.
BREAK_TM >= CYCLE
MTR_TM TIME T#30s En el parámetro "Tiempo de posicionamiento del motor" se introduce el tiempo de opera­
ción de la servoválvula de tope a tope.
MTR_TM >= CYCLE
DISV REAL 0.0 Para realizar un control anticipativo, la magnitud perturbadora se conecta a la entrada
"Variable perturbadora".
Se admiten los valores de -100 a 100 % o una magnitud física 2).
1) Parámetros en la rama de consigna, rama de valor real, con la misma unidad
2) Parámetros en la rama de variable manipulada con la misma unidad

[Link] Parámetros de salida de CONT_S

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-16  
Parámetro Tipo de Ajuste prede­ Descripción
datos terminado
QLMNUP BOOL FALSE Si la salida "Señal alta de variable manipulada" está activada, la servoválvula debe
abrirse.
QLMNDN BOOL FALSE Si está activada la salida "Señal baja de la variable manipulada", la servoválvula de­
be cerrarse.
PV REAL 0.0 En la salida "Valor real" se indica el valor real que actúa efectivamente.
ER REAL 0.0 En la salida "Error de regulación" se indica el error de regulación que actúa real­
mente.

10.4.3 PULSEGEN

[Link] Descripción de PULSEGEN

La instrucción PULSEGEN permite establecer un regulador PID con salida de impulsos para
actuadores proporcionales. PULSEGEN transforma la magnitud de entrada INV (= LMN del
regulador PID) mediante modulación de ancho de impulsos en una secuencia de impulsos
con duración de periodo constante, que corresponde al tiempo de ciclo con el que se
actualiza la magnitud de entrada.

Regulación PID
406 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Aplicación
La instrucción PULSEGEN permite generar reguladores PID de dos o tres puntos con
modulación de ancho de impulsos. La función se aplica casi siempre en combinación con el
regulador continuo CONT_C.

&217B& 38/6(*(1

/01 ,19

Llamada
La instrucción PULSEGEN dispone de una rutina de inicialización, que se ejecuta cuando el
parámetro de entrada COM_RST = TRUE está activado. Todas las salidas de señal se ponen a
cero. Una vez ejecutada la rutina de inicialización, debe activarse COM_RST = FALSE.
El cálculo de los valores en los bloques de regulación sólo se realiza correctamente si el
bloque se llama en intervalos regulares. Por ello, los bloques de regulación deben llamarse en
un OB de alarma cíclica (OB 30 a OB 38). El tiempo de muestreo se indica en el parámetro
CYCLE.

Comportamiento en caso de error


El bloque no evalúa la palabra de notificación de error RET_VAL.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 407
Instrucciones
10.4 Funciones básicas de PID

[Link] Funcionamiento de PULSEGEN

Modulación de ancho de impulsos


La duración de un impulso por duración de período es proporcional a la magnitud de entrada.
El ciclo parametrizado con PER_TM no es idéntico al ciclo de ejecución de la instrucción
PULSEGEN. Es más, un ciclo PER_TM está compuesto por varios ciclos de ejecución de la
instrucción PULSEGEN, y la cantidad de llamadas de PULSEGEN por ciclo PER_TM representa
una medida para la precisión del ancho de impulso.

,19 
/01








 W

4326B3


 W

&LFOR38/6(*(1

3(5B70 FLFOR&217B&

Así, una magnitud de entrada del 30 % y 10 llamadas de PULSEGEN por PER_TM significan:
• "uno" en la salida QPOS_P para las tres primeras llamadas de PULSEGEN (30% de 10
llamadas)
• "cero" en la salida QPOS_P para otras siete llamadas de PULSEGEN (70% de 10 llamadas)

Regulación PID
408 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Diagrama de bloques
326B3B21

1(*B3B21
6<1B21
67(3B21 0$1B21
67%,B21

 

4326B3

,19
41(*B3



3(5B70
3B%B70
5$7,2)$&

Precisión de variable manipulada


En este ejemplo, con una "relación de muestreo" de 1:10 (llamadas de CONT_C respecto a
llamadas de PULSEGEN) la precisión de la variable manipulada se reduce al 10%, es decir, los
valores de entrada predeterminados INV sólo se pueden representar en intervalos del 10% en
una duración de impulso en la salida QPOS_P.
Del mismo modo aumenta la precisión con la cantidad de llamadas de PULSEGEN por cada
llamada de CONT_C.
Si por ejemplo PULSEGEN se llama con una frecuencia 100 veces mayor que CONT_C, se
consigue una resolución del 1% del rango de la variable manipulada.

NOTA
La desmultiplicación de la frecuencia de llamada debe ser programada por el usuario.

Sincronización automática
Existe la posibilidad de sincronizar automáticamente la salida de impulsos con la instrucción
que actualiza la magnitud de entrada INV (p. ej. CONT_C). De este modo se garantiza que una
magnitud de entrada cambiante también se pueda emitir como impulso con la mayor rapidez
posible.
El formador de impulsos evalúa siempre la magnitud de entrada INV en el intervalo
correspondiente a la duración de período PER_TM y transforma el valor en una señal de
impulso con la correspondiente duración.
Pero como INV se calcula casi siempre en un nivel de alarma cíclica más lento, el formador de
impulsos debería iniciar la transformación del valor discreto en una señal de impulso con la
máxima rapidez posible tras la actualización de INV.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 409
Instrucciones
10.4 Funciones básicas de PID

Para ello, el bloque puede sincronizar él mismo el inicio del período según el siguiente
procedimiento:
Si INV ha cambiado y la llamada de bloque no se encuentra en el primer ciclo de llamada o en
los dos últimos ciclos de un período, se realiza una sincronización. La duración de impulso se
calcula de nuevo, y en el siguiente ciclo se inicia la emisión con un nuevo periodo.
/01 ,19  /01 ,19  /01 ,19 

3URFHVDPLHQWRGH&217B&
W

&<&/(YRQ&217B&

,QLFLRGHOSHU¯RGR

                     

3(5B70 3(5B70
&<&/(YRQ
38/6(*(1
6LQFURQL]DFLµQGHO 6LQVLQFURQL]DFLµQ
LQLFLRGHOSHU¯RGR QHFHVDULR

38/6(*(1GHWHFWD 38/6(*(1GHWHFWD
,19KDFDPELDGR\ODOODPDGDQR ,19KDFDPELDGRDR\OD
VHHQFXHQWUDHQHOSULPHUFLFORQL OODPDGDVHHQFXHQWUDHQHOSULPHU
HQQLQJXQRGHORVGRV¼OWLPRV FLFORRHQORVGRV¼OWLPRVFLFORVGHO
FLFORVGHOSHU¯RGR SHU¯RGR

3URFHVDPLHQWRGH38/6(*(1 3URFHVDPLHQWRGH38/6(*(1HQHOSULPHUFLFORRHQORVGRV
¼OWLPRVFLFORVGHOSHU¯RGR

La sincronización automática se desactiva con SYN_ON = FALSE.

NOTA
Con el inicio del periodo nuevo, el valor antiguo de INV (es decir, de LMN) se representa en la
señal de impulso de manera más o menos precisa una vez concluida la sincronización.

Regulación PID
410 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Modos de operación de PULSEGEN

Modos de operación
Dependiendo de la parametrización del formador de impulsos, los reguladores PID se pueden
configurar con comportamiento de tres puntos o con salida de dos puntos bipolar o unipolar.
La siguiente tabla contiene los ajustes de las combinaciones de conmutadores para los modos
de operación posibles.
Modo de operación MAN_ON STEP3_ON ST2BI_ON
Regulación de tres puntos FALSE TRUE cualquiera
Regulación de dos puntos con rango de valores FALSE FALSE TRUE
manipulados bipolar (-100 % ... 100 %)
Regulación de dos puntos con rango de valores FALSE FALSE FALSE
manipulados unipolar (0 % ... 100 %)
Modo manual TRUE cualquiera cualquiera

Modo manual en la regulación de dos o de tres puntos


En el modo manual (MAN_ON = TRUE) las salidas binarias del regulador de tres puntos o del
regulador de dos puntos pueden activarse independientemente de INV a través de las señales
POS_P_ONy NEG_P_ON.
Regulación POS_P_ON NEG_P_ON QPOS_P QNEG_P
Regulación de tres pun­ FALSE FALSE FALSE FALSE
tos
TRUE FALSE TRUE FALSE
FALSE TRUE FALSE TRUE
TRUE TRUE FALSE FALSE
Regulación de dos pun­ FALSE cualquiera FALSE TRUE
tos
TRUE cualquiera TRUE FALSE

[Link] Regulación de tres puntos

Regulación de tres puntos


En el modo de operación "Regulación de tres puntos" se pueden generar tres estados de la
señal de salida. Para ello se asignan los valores de estado de las señales binarias de salida
QPOS_P y QNEG_P a los correspondientes estados operativos del actuador. La tabla muestra
el ejemplo de una regulación de temperatura:

Señales de salida Calentar OFF Enfriar


QPOS_P TRUE FALSE FALSE
QNEG_P FALSE FALSE TRUE

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 411
Instrucciones
10.4 Funciones básicas de PID

A partir de la magnitud de entrada se calcula la duración del impulso mediante una


característica. La forma de esta característica está definida por la duración mínima de impulso
o de pausa y por el factor de relación. El valor normal del factor de relación es 1.
Los puntos escalonados de las características son originados por la duración mínima de
impulso o de pausa.
Duración mínima de impulso o de pausa
La correcta parametrización de la duración mínima de impulso o de pausa P_B_TM evita
tiempos de conexión o desconexión breves, que merman la vida útil de los elementos de
contacto y de los elementos de control final. Se suprimen valores absolutos pequeños de la
magnitud de entrada LMN que generarían una duración de impulso inferior a P_B_TM. Los
valores de entrada grandes que generarían una duración de impulso superior a PER_TM -
P_B_TM se ajustan a 100 % o a -100 %.
La duración de los impulsos positivos o negativos se calcula multiplicando la magnitud de
entrada (en %) por la duración del período:
Duración de impulso = INV / 100 * PER_TM
La siguiente figura muestra una característica simétrica del regulador de tres puntos (factor
de relación = 1)
'XUDFLµQGHOLPSXOVR
SRVLWLYR FRQWLQXDPHQWHFRQHFWDGR

3(5B70
3(5B703B%B70

 3B%B70


FRQWLQXDPHQWHGHVFRQHFWDGR

'XUDFLµQGHOLPSXOVRQHJDWLYR

Regulación de tres puntos asimétrica


A través del factor de relación RATIOFAC puede modificarse la relación de la duración de
impulsos positivos respecto a los negativos. Durante un lazo de regulación de temperatura,
ello permite tener en cuenta p. ej. constantes temporales de proceso distintas para calentar y
refrigerar.
Factor de relación < 1
La duración de impulso obtenida de la multiplicación de la magnitud de entrada por la
duración del período en la salida de impulsos negativa se multiplica por el factor de relación.
Duración de impulso positiva = INV /100 * PER_TM

Regulación PID
412 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Duración de impulso negativa = INV / 100 * PER_TM * RATIOFAC


La siguiente figura muestra una característica asimétrica del regulador de tres puntos (factor
de relación = 0.5)
'XUDFLµQGHOLPSXOVRSRV

3(5B70
3(5B703B%B70

 3B%B70

3B%B70 

 3(5B70

'XUDFLµQGHOLPSXOVRQHJ

Factor de relación > 1


La duración de impulso obtenida de la multiplicación de la magnitud de entrada por la
duración del período en la salida de impulsos positiva se divide por el factor de relación.
Duración de impulso positiva = INV / 100 * PER_TM / RATIOFAC
Duración de impulso negativa = INV / 100 * PER_TM

[Link] Regulación de dos puntos

En la regulación de dos puntos sólo se conecta la salida de impulsos positiva QPOS_P de


PULSEGEN al actuador de conexión/desconexión en cuestión. Según cuál sea el rango
utilizado de la variable manipulada, el regulador de dos puntos tiene un rango bipolar o
unipolar.
Regulación de dos puntos con rango de variable manipulada bipolar (-100% ... 100%)
'XUDFLµQGHOLPSXOVRSRVLWLYR
FRQWLQXDPHQWH
FRQHFWDGR
3(5B70
3(5B703B%B70

FRQWLQXDPHQWH
GHVFRQHFWDGR
3B%B70

  

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 413
Instrucciones
10.4 Funciones básicas de PID

Regulación de dos puntos con rango de variable manipulada unipolar (0%...100%)


'XUDFLµQGHOLPSXOVRSRVLWLYR

3(5B70
3(5B703B%B70

3B%B70

 

En QNEG_P está disponible la señal de salida negada, si la interconexión del regulador de dos
puntos en el lazo de regulación exige una señal binaria invertida lógicamente para los
impulsos de la señal manipulada.

Impulso Actuador ON Actuador OFF


QPOS_P TRUE FALSE
QNEG_P FALSE TRUE

[Link] Parámetros de entrada de PULSEGEN

Los valores de los parámetros de entrada no se limitan en el bloque; no tiene lugar una
comprobación de los parámetros.
Tabla 10-17  
Parámetro Tipo de Ajuste Descripción
datos prede­
termi­
nado
INV REAL 0.0 En el parámetro de entrada "Variable de entrada" se aplica una variable manipulada ana­
lógica.
Se admiten valores entre -100 y 100 %.
PER_TM TIME T#1s En el parámetro "Duración de período" se introduce la duración de período constante de
la modulación de ancho de impulsos. La duración corresponde al tiempo de muestreo del
regulador. La relación entre el tiempo de muestreo del formador de impulsos respecto al
tiempo de muestreo del regulador determina la precisión de la modulación de ancho de
impulsos.
PER_TM >=20*CYCLE
P_B_TM TIME T#50ms En el parámetro "Duración mínima de impulso" o "Duración mínima de pausa" se puede
parametrizar una duración de pausa o de impulso mínima.
P_B_TM >= CYCLE
RATIOFAC REAL 1.0 Con el parámetro de entrada "Factor de relación" puede modificarse la relación de la dura­
ción de impulsos negativos a impulsos positivos. De ese modo, en un lazo de regulación
de temperatura se pueden compensar constantes temporales distintas para calentar y re­
frigerar (p. ej. proceso con calefacción eléctrica y refrigeración por agua).
Se admiten valores comprendidos entre 0.1 y 10.0.

Regulación PID
414 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Parámetro Tipo de Ajuste Descripción


datos prede­
termi­
nado
STEP3_ON BOOL TRUE En el parámetro de entrada "Activar la regulación de tres puntos" se activa el correspon­
diente modo de operación. En la regulación de tres puntos trabajan ambas señales de sa­
lida.
ST2BI_ON BOOL FALSE En el parámetro de entrada "Activar la regulación de dos puntos para el rango de valores
manipulados bipolar" puede elegirse entre los modos de operación "Regulación de dos
puntos para rango de valores manipulados bipolar" y "Regulación de dos puntos para el
rango de valores manipulados unipolar". Para ello es necesario que STEP3_ON = FALSE.
MAN_ON BOOL FALSE La activación del parámetro de entrada "Activar modo manual" permite ajustar las señales
de salida manualmente.
POS_P_ON BOOL FALSE En el modo manual Regulación de tres puntos se puede controlar la señal de salida
QPOS_P en el parámetro de entrada "Activar impulso positivo". En modo manual Regula­
ción de dos puntos QNEG_P siempre está invertido respecto a QPOS_P.
NEG_P_ON BOOL FALSE En el modo manual Regulación de tres puntos se puede controlar la señal de salida
QNEG_P en el parámetro de entrada "Activar impulso negativo". En modo manual Regula­
ción de dos puntos QNEG_P siempre está invertido respecto a QPOS_P.
SYN_ON BOOL TRUE La activación del parámetro de entrada "Activar sincronización" permite sincronizar auto­
máticamente la salida de impulsos con el bloque que actualiza la magnitud de entrada
INV. De ese modo se garantiza que una magnitud de entrada cambiante también se pue­
da emitir como impulso con la mayor rapidez posible.
COM_RST BOOL FALSE La instrucción tiene una rutina de inicialización que se ejecuta cuando está activada la en­
trada de rearranque completo.
CYCLE TIME T#10ms El tiempo entre las llamadas del bloque debe ser constante. La entrada "Tiempo de mues­
treo" indica el tiempo entre las llamadas del bloque.
CYCLE >= 1ms

[Link] Parámetros de salida de PULSEGEN

Tabla 10-18  
Parámetro Tipo de datos Ajuste predetermi­ Descripción
nado
QPOS_P BOOL FALSE El parámetro de salida "Señal de salida del impulso positivo" está
activado cuando debe emitirse un impulso. En la regulación de
tres puntos es el impulso positivo. En la regulación de dos pun­
tos, QNEG_P se ajusta siempre invertido respecto a QPOS_P.
QNEG_P BOOL FALSE El parámetro de salida "Señal de salida de impulso negativo" está
activado cuando debe emitirse un impulso. En la regulación de
tres puntos es el impulso negativo. Durante la regulación de dos
puntos, QNEG_P se ajusta siempre invertido respecto a QPOS_P.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 415
Instrucciones
10.4 Funciones básicas de PID

10.4.4 TCONT_CP

[Link] Descripción de TCONT_CP

La instrucción TCONT_CP sirve para regular procesos de temperatura con control continuo o
por impulsos. El funcionamiento se basa en el algoritmo de regulación PID, que está dotado
de funciones adicionales para procesos de temperatura. Para mejorar el comportamiento de
regulación en procesos de temperatura, el bloque dispone de una zona de regulación y de
una reducción de la acción P en caso de que haya escalones en la consigna.
La instrucción puede ajustar por sí misma los parámetros PI/PID mediante la optimización del
regulador.

Aplicación
A cada regulador le corresponde un solo actuador, es decir, con un solo regulador se podrá o
bien calentar o bien enfriar. Si se va a utilizar para un proceso de refrigeración, hay que
parametrizar GAIN con un valor negativo. La inversión que es parametrizada de esta manera
provoca que p. ej. en caso de aumento de la temperatura, aumente la variable manipulada
LMN, y con ello la potencia de refrigeración.

Llamada
La instrucción TCONT_CP debe llamarse de forma equidistante. Utilice para ello un nivel de
alarmas cíclicas (p. ej. OB35 en S7-300).
La instrucción TCONT_CP tiene una rutina de inicialización, que se ejecuta cuando el
parámetro de entrada COM_RST = TRUE está activado. El integrador se ajusta al valor de
inicialización I_ITVAL durante la inicialización. Todas las salidas de señal restantes se ponen a
cero. El bloque vuelve a ajustarse a FALSE después de ejecutar la rutina de inicialización
COM_RST. Si desea realizar una inicialización con un rearranque completo de la CPU, llame el
bloque en el OB 100 con COM_RST = TRUE.
Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

[Link] Funcionamiento de TCONT_CP

Rama de consigna
La consigna se introduce en la entrada SP_INT en formato de coma flotante, ya sea físico o
porcentual. La consigna y el valor real deben indicarse con la misma unidad en la formación
del error de regulación.

Regulación PID
416 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Selección del valor real (PVPER_ON)


El valor real se puede leer en formato de coma flotante o en formato de periferia en función
de PVPER_ON.

PVPER_ON Entrada del valor real


TRUE El valor real se lee a través de la periferia analógica
(PEW xxx) en la entrada PV_PER.
FALSE El valor real se lee en formato de coma flotante en
la entrada PV_IN.

Conversión del formato del valor real CRP_IN (PER_MODE)


La función CRP_IN convierte el valor de periferia PV_PER dependiendo del conmutador
PER_MODE en un valor en coma flotante según la siguiente regla:

PER_MODE Salida de CRP_IN Tipo de entrada analó­ Unidad


gica
0 PV_PER * 0.1 Termopares; °C;°F
PT100/NI100; Estándar
1 PV_PER * 0.01 PT100/NI100; Climatiza­ °C;°F
ción;
2 PV_PER * 100/27648 Tensión/intensidad %

Normalización del valor real PV_NORM (PF_FAC, PV_OFFS)


La función PV_NORM calcula la salida de CRP_IN según la siguiente norma:
"Salida de PV_NORM" = "salida de CRP_IN" * PV_FAC + PV_OFFS
Se puede utilizar para los siguientes propósitos:
• Adaptación del valor real con PV_FAC como factor del valor real y PV_OFFS como offset del
valor real
• Normalización de la temperatura en porcentajes
Desea indicar la consigna en porcentajes y ahora debe convertir el valor de temperatura
medido en un valor porcentual.
• Normalización de los valores porcentuales a temperaturas
Desea indicar la consigna en la magnitud física Temperatura y ahora debe convertir el
valor de tensión/intensidad medido en una temperatura.
Cálculo de los parámetros:
• PV_FAC = rango de PV_NORM/ rango de CRP_IN;
• PV_OFFS = UG(PV_NORM) - PV_FAC * UG(CRP_IN);
con UG: límite inferior

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 417
Instrucciones
10.4 Funciones básicas de PID

Con los valores predeterminados (PV_FAC = 1.0 y PV_OFFS = 0.0) la normalización está


desactivada. El valor real con efectos reales se emite en la salida PV.

NOTA
Durante la regulación de impulsos, el valor real se debe transferir al bloque en una llamada
de impulso rápida (motivo: filtración de valores medios). De lo contrario puede disminuir la
calidad de la regulación.

Ejemplo de normalización del valor real


Para preseleccionar la consigna en porcentajes con un rango de temperatura de -20 a 85 °C
en CRP_IN, normalice el rango de temperatura a valores porcentuales.
En la siguiente figura encontrará un ejemplo para la adaptación de un rango de temperatura
de entre -20 y 85 °C a valores de 0 a 100 %:
39B1250 >@





39B)$&   







39B2))6  




      &53B,1>r&@

Cálculo de error de regulación


La diferencia entre la consigna y el valor real constituye el error de regulación antes de la
zona muerta.
La consigna y el valor real deben indicarse con la misma unidad.

Regulación PID
418 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Zona muerta (DEADB_W)


Para suprimir una pequeña oscilación permanente debida a la cuantificación de la magnitud
manipulada (p. ej. en una modulación de ancho de impulsos con PULSEGEN), el error de
regulación se conduce por una zona muerta (DEADBAND). Con DEADB_W = 0.0 la zona
muerta está desactivada. El error de regulación efectivo se muestra en el parámetro ER.
(5

(5  63B,1739 '($'B: (5  63B,1739 '($'B:

63B,1739

'($'%B:

Algoritmo PID
En la siguiente figura se representa el diagrama de bloques del algoritmo PID.
/01B3
63B,17 I

3)$&B63

*$,1 ',69
,17
/01B6XP
;  
,17B+326
/01B,
(5 ,17B+1(*
7,,B,7/B21
,B,7/9$/

',)

/01B'

7''B)

Interfaz de parametrización
Interfaz de llamada de instrucción

Algoritmo PID (GAIN, TI, TD, D_F)


El algoritmo PID trabaja en el algoritmo de posición. Las acciones proporcional, integral (INT)
y derivativa (DIF) están conectadas en paralelo y pueden activarse y desactivarse por
separado. De este modo se pueden parametrizar reguladores P, PI, PD y PID.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 419
Instrucciones
10.4 Funciones básicas de PID

La optimización del regulador es compatible con los reguladores PI y PID. La inversión del
regulador se efectúa mediante un parámetro GAIN negativo (regulador de refrigeración).
Si pone TI y TD a 0.0, obtendrá un regulador P puro en el punto de operación.
La respuesta indicial en el rango de tiempo es:
W
 7''B)
/01B6XP W  *$,1y(5  y  yW'B) yH
7,

Donde:
LMN_Sum(t) es la magnitud manipulada en modo automático del regulador
ER (0) es la amplitud del escalón del error de regulación normalizado
GAIN es la ganancia del regulador
TI es el tiempo de acción integral
TD es el tiempo de la acción derivada
D_F es el factor de acción derivativa

(5
/01B6XP

*$,1 'B)(5 /01B6XP W

*$,1 (5 
(5 W
*$,1 (5 
W

7''B)

7,

Integrador (TI, I_ITL_ON, I_ITLVAL)


En modo Manual, se corrige según: LMN_I = LMN - LMN_P - DISV.
Si se limita la variable manipulada, la acción I se detiene. En caso de un error de regulación
que mueva la acción I en el sentido del margen de corrección interno, la acción I se habilitará
de nuevo.
Con las siguientes medidas se producen más modificaciones de la acción I:
• Desconexión de la acción I del regulador con TI = 0.0
• Atenuación de la acción P en caso de modificaciones de la consigna
• Zona de regulación
• Los límites de la variable manipulada se pueden modificar online

Regulación PID
420 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Atenuación de la acción P en caso de modificaciones de la consigna (PFAC_SP)


Para evitar sobreoscilaciones, es posible atenuar la acción P a través del parámetro "Ganancia
proporcional al cambiar la consigna" (PFAC_SP). Mediante PFAC_SP se puede elegir
continuamente la intensidad - entre 0.0 y 1.0 - con la que debe actuar la acción P en caso de
modificaciones de la consigna:
• PFAC_SP = 1.0: la acción P actúa plenamente al cambiar la consigna
• PFAC_SP = 0.0: la acción P no actúa en caso de modificaciones de la consigna
La atenuación de la acción P se logra mediante una compensación en la acción I.

Diferenciador (TD, D_F)


• Desconexión de la acción D del regulador con TD = 0.0.
• Cuando la acción D está conectada, debe cumplirse la siguiente ecuación:
TD = 0.5 * CYCLE * D_F

Parametrización de un regulador P o PD con punto de operación


En la interfaz de parametrización, desconecte la acción I (TI = 0.0) y, si es necesario, la acción
D (TD = 0.0). Además, efectúe la siguiente parametrización:
• I_ITL_ON = TRUE
• I_ITLVAL = punto de operación;

Control anticipativo (DISV)


En la entrada DISV se puede aplicar una magnitud perturbadora de forma aditiva.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 421
Instrucciones
10.4 Funciones básicas de PID

Cálculo de la variable manipulada


En la siguiente figura se representa el diagrama de bloques del cálculo de la variable
manipulada:

4/01B+/0
0$1 0$1B21 4/01B//0
/01

&21=21( /01/,0,7 /01B1250 &53B287


/01B6XP 

 /01B3(5
(5 
/PQ1
&21=B21 /01B+/0 /01B)$&
&21B=21( /01B//0 /01B2))6

38/6(*(1

Interfaz de parametrización
Interfaz de llamada de instrucción
Interfaz de parametrización, interfaz de llamada de instrucción

Zona de regulación (CONZ_ON, CON_ZONE)


Si CONZ_ON = TRUE, el regulador trabaja con una zona de regulación. Esto significa que el
regulador se controla según el siguiente algoritmo:
• Si el valor real PV rebasa la consigna SP_INT en más de CON_ZONE, se emite el valor
LMN_LLM como magnitud manipulada.
• Si el valor real PV se encuentra por debajo de la consigna SP_INT en más de CON_ZONE, se
emite el valor LMN_HLM.
• Si el valor real PV se mueve dentro de la zona de regulación (CON_ZONE), la variable
manipulada adopta el valor del algoritmo PID LMN_Sum.

NOTA
El cambio de la magnitud manipulada de LMN_LLM o LMN_HLM a LMN_Sum se realiza
manteniendo una histéresis del 20 % de la zona de regulación.

Regulación PID
422 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

7HPSHUDWXUD

QRFDOHQWDUFRQ/01 /01B//0

63B,17&21B=21(

=RQDGHUHJXODFLµQVXSHULRU

63B,17

=RQDGHUHJXODFLµQLQIHULRU

63B,17&21B=21(

QRFDOHQWDUFRQ/01 /01B+/0

7HPSRUL]DGRU

NOTA
Antes de activar a mano la zona de regulación, deberá asegurarse de no ajustar un ancho
de zona de regulación demasiado pequeño. Si el ancho de la zona de regulación ajustado
fuera insuficiente, se producirán oscilaciones en las curvas de la magnitud manipulada y
del valor real.

Ventaja de la zona de regulación


Al entrar en la zona de regulación, la acción D activada provocará una reducción muy rápida
de la magnitud manipulada. Por lo tanto, se recomienda utilizar la zona de regulación sólo
cuando la acción D esté conectada. Sin zona de regulación, básicamente sólo reduciría la
magnitud manipulada la acción P en reducción. La zona de regulación provoca un régimen
transitorio rápido sin sobreoscilaciones ni posteriores infraoscilaciones en caso de que la
magnitud manipulada mínima o máxima emitida esté a mucha distancia de la magnitud
manipulada necesaria para el nuevo punto de operación.

Procesamiento de valores en manual (MAN_ON, MAN)


Es posible conmutar entre modo Manual y modo Automático. En el modo Manual, la
magnitud manipulada se corrige según el valor que se ajuste manualmente.
El integrador (INT) se pone internamente a LMN - LMN_P - DISV y el diferenciador (DIF) a 0 y
se compensa internamente. La conmutación al modo Automático se efectúa así sin
discontinuidad.

NOTA
Durante una optimización, el parámetro MAN_ON no tiene efecto alguno.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 423
Instrucciones
10.4 Funciones básicas de PID

Limitación de la variable manipulada LMNLIMIT (LMN_HLM, LMN_LLM)


La variable manipulada se limita con la función LMNLIMIT a los límites de la variable
manipulada LMN_HLM y LMN_LLM. Los bits de aviso QLMN_HLM y QLMN_LLM indican que se
han alcanzado los límites.
Si se limita la variable manipulada, la acción I se detiene. En caso de un error de regulación
que mueva la acción I hacia el margen de corrección interno, se volverá a habilitar la acción.

Modificación online de los límites de la variable manipulada


Si se reduce el rango de la variable manipulada y la nueva variable manipulada se encuentra
fuera de los límites, se desplaza la acción I, y por tanto, la variable manipulada.
La variable manipulada se reduce en la diferencia entre el límite anterior y el nuevo límite de
la variable manipulada. Si la variable manipulada no estaba limitada antes de la modificación,
se ajustará exactamente al nuevo límite (en el ejemplo aquí descrito utiliza el límite superior).

Normalización de la variable manipulada LMN_NORM (LMN_FAC, LMN_OFFS)


La función LMN_NORM normaliza la variable manipulada según la siguiente regla:
LMN = LmnN * LMN_FAC + LMN_OFFS
Se puede utilizar para los siguientes propósitos:
• Adaptación de la variable manipulada con LMN_FAC como factor de la variable
manipulada y LMN_OFFS como offset de la variable manipulada
La variable manipulada también está disponible en formato de periferia. La función CRP_OUT
convierte el valor en coma flotante LMN en un valor de periferia según la siguiente regla:
LMN_PER = LMN * 27648/100
Con los valores predeterminados (LMN_FAC = 1.0 y LMN_OFFS = 0.0) la normalización está
desactivada. La variable manipulada que actúa verdaderamente se obtiene en la salida LMN.

Guardar parámetros del regulador SAVE_PAR


Si los parámetros actuales del regulador se consideran válidos, pueden guardarse antes de
modificarse manualmente en parámetros de estructura propios previstos para tal fin en el DB
de instancia de la instrucción TCONT_CP. En caso de optimización del regulador, los
parámetros guardados se sobrescriben con los valores válidos antes de la optimización.
PFAC_SP, GAIN, TI, TD, D_F, CONZ_ON y CONZONE se escriben en la estructura PAR_SAVE.

Cargar de nuevo parámetros de regulador guardados UNDO_PAR


Esta función permite volver a activar los últimos parámetros guardados del regulador (sólo en
modo Manual).

Regulación PID
424 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Cambio entre parámetros PI y PID LOAD_PID (PID_ON)


Tras una optimización, los parámetros PI y PID se depositan en las estructuras PI_CON y
PID_CON. Con LOAD_PID en función de PID_ON se pueden escribir los parámetros PI o PID en
modo manual en los parámetros activos del regulador.

Parámetros PID PID_ON = TRUE Parámetros PI PID_ON = FALSE


• GAIN = PID_CON.GAIN • GAIN = PI_CON.GAIN
• TI = PID_CON.TI • TI = PI_CON.TI
• TD = PID_CON.TD

NOTA
Los parámetros del regulador sólo se rescriben con UNDO_PAR o LOAD_PID si la ganancia del
regulador no es igual a cero:
Con LOAD_PID se copian los parámetros sólo si GAIN <> 0 (ya sea del registro de parámetros
PI o PID). Con ello se tiene en cuenta el caso de que no se haya realizado ninguna
optimización o de que falte algún parámetro PID. Si PID_ON = TRUE y [Link] = FALSE,
PID_ON se pone en FALSE y los parámetros PI se copian.
• D_F, PFAC_SP se preajustan con la optimización. Posteriormente pueden ser modificados
por el usuario. LOAD_PID no modifica estos parámetros.
• La zona de regulación se vuelve a calcular siempre con LOAD_PID
(CON_ZONE = 250/GAIN), incluso si CONZ_ON = FALSE.

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 425
Instrucciones
10.4 Funciones básicas de PID

[Link] Funcionamiento del generador de impulsos

La función PULSEGEN cambia la variable manipulada analógica LmnN mediante una


modulación de ancho de impulsos en una secuencia de impulsos con la duración de período
PER_TM. PULSEGEN se activa con PULSE_ON = TRUE y se procesa en el ciclo CYCLE_P.
/PQ1









 W

438/6(

 W

&<&/(B3

3(5B70

Una variable manipulada LmnN = 30 % y 10 llamadas de PULSEGEN por PER_TM suponen:


• TRUE en la salida QPULSE para las tres primeras llamadas de PULSEGEN
(30 % de 10 llamadas)
• FALSE en la salida QPULSE para las otras siete llamadas de PULSEGEN
(70 % de 10 llamadas)
La duración de un impulso por período es proporcional a la magnitud manipulada y se calcula
del modo siguiente:
Duración de impulso = PER_TM * LmnN /100
Debido a la supresión de la duración mínima de impulso o pausa, se forman niveles
escalonados en el área inicial o final de la característica de conversión.

Regulación PID
426 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

La figura siguiente representa la regulación a dos puntos con rango unipolar de la variable
manipulada
(de 0 % a 100 %):
'XUDFLµQGHOLPSXOVRSRVLWLYR

3(5B70
3(5B703B%B70

3B%B70

 

Duración mínima del impulso o duración mínima de pausa (P_B_TM)


Los tiempos de conexión o desconexión breves merman la vida útil de los elementos finales
de control y los dispositivos de control. Esto puede evitarse parametrizando una duración
mínima de impulso y pausa P_B_TM.
Se suprimen valores absolutos pequeños de la magnitud de entrada LmnN que pudieran
generar una duración de impulso menor que P_B_TM.
Los valores de entrada grandes, que generarían una duración de impulso mayor que
PER_TM - P_B_TM, se ajustan a 100 %. De este modo se reduce la dinámica de la formación de
impulsos.
Para la duración mínima de impulso o pausa se recomiendan valores de ajuste
P_B_TM ≤ 0,1 * PER_TM.
Los niveles escalonados en las características que aparecen en la figura anterior son
originados por la duración mínima de impulso o por la duración mínima de pausa.
En la siguiente figura se representa el comportamiento de conmutación de la salida de
impulso:

3B%B70 3B%B70

3(5B70 3(5B70 3(5B70

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 427
Instrucciones
10.4 Funciones básicas de PID

Precisión de la formación de impulsos


Cuanto menor sea el ancho de la base de impulso CYCLE_P en comparación con el tiempo de
período PER_TM, más exacta será la modulación de ancho de impulsos. Para una regulación
con una precisión suficiente sirve la relación siguiente:
CYCLE_P ≤ PER_TM/50
Entonces se cambia la variable manipulada con una resolución de ≤ 2 % en impulsos.

NOTA
Si se llama el regulador en el ciclo del generador de impulsos hay que tener en cuenta lo
siguiente:
Al llamar el regulador en el ciclo del generador de impulsos se toma el promedio del valor
real. Como consecuencia, es posible que en la salida PV haya valores distintos a la entrada
PV_IN o PV_PER. Si debe corregirse la consigna, hay que guardar el valor real del parámetro
de entrada PV_IN en los tiempos de llamada del procesamiento global del regulador
((QC_ACT = TRUE)). En las llamadas intermedias del generador de impulsos, los parámetros
de entrada PV_IN y SP_INT se suministran con el valor real guardado.

Consulte
también
Descripción de TCONT_CP (Página 415-416)
Funcionamiento de TCONT_CP (Página 416)
Diagrama de bloques TCONT_CP (Página 428)
Parámetros de entrada de TCONT_CP (Página 430)
Parámetros de salida de TCONT_CP (Página 430)
Parámetros de entrada/salida de TCONT_CP (Página 431)
Variables estáticas de TCONT_CP (Página 432)
Parámetro STATUS_H (Página 436)
Parámetro STATUS_D (Página 437)

Regulación PID
428 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Diagrama de bloques TCONT_CP

63B,17
393(5B21 *$,1
'($'%$1'
39B,1   ;

&53B,1 39B1250  '($'%B:
r& (5
39B3(5 39


3(5B02' 39B)$&
39B2))6

63B,17 /01B3
I

3)$&B63
',69
,17
/01B6XP
 
,17B+326 3)$&B63
,17B+1(* /01B, 3,'B781( *$,17,
7,,B,7/9$/ 7''B)
39
&21=B21
3,' &21=21(
/PQ1
',)
781B21
/01B' 781B67E]Z
3,'B21
7''B) 781B'/0

4/01B+/0
0$1 0$1B21 4/01B//0 /01
&21=21(  /01/,0,7
/01B1250 &53B287
 /01B3(5
 /PQ1
(5

/01B+/0 /01B)$&
&21=B21 38/6(*(1
/01B//0 /01B2))
&21B=21
438/6(

38/6(B21
3(5B70
%5($.B70

0$1B21 3)$&B63 0$1B21


*$,1
3,'B&21 3,'B21 /2$'B3,' 6$9(B3$5 81'2B3$5 3)$&B63
7,
 *$,1
 *$,1 7'   7,
7, 'B)
3,B&21 3$5B6$9 3$5B6$9 7'
 7' &21=B21  
 'B)
&21=21( &21=21(
&21=B21
&21=21(

Consulte
también
Descripción de TCONT_CP (Página 415-416)
Funcionamiento de TCONT_CP (Página 416)
Funcionamiento del generador de impulsos (Página 425)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 429
Instrucciones
10.4 Funciones básicas de PID

Parámetros de entrada de TCONT_CP (Página 430)


Parámetros de salida de TCONT_CP (Página 430)
Parámetros de entrada/salida de TCONT_CP (Página 431)
Variables estáticas de TCONT_CP (Página 432)
Parámetro STATUS_H (Página 436)
Parámetro STATUS_D (Página 437)

[Link] Parámetros de entrada de TCONT_CP

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-19  
Parámetro Direc­ Tipo de Ajuste Descripción
ción datos prede­
termi­
nado
PV_IN 0.0 REAL 0.0 En la entrada "Valor real de la entrada" se puede parametrizar un valor de puesta
en marcha, o se puede conectar un valor real externo en coma flotante. Los valores
válidos dependen de los sensores utilizados.
PV_PER 4.0 INT 0 El valor real en formato de periferia se conecta al regulador a través de la entrada
"Valor real de la periferia".
DISV 6.0 REAL 0.0 Para realizar un control anticipativo, la magnitud perturbadora se conecta a la en­
trada "Variable perturbadora".
INT_HPOS 10.0 BOOL FALSE La salida del integrador se puede bloquear en sentido positivo. Para ello, la entrada
INT_HPOS debe estar ajustada a TRUE. En caso de regulación en cascada, se conec­
ta INT_HPOS del regulador piloto a QLMN_HLM del regulador secuencial.
INT_HNEG 10.1 BOOL FALSE La salida del integrador se puede bloquear en sentido negativo. Para ello, la entra­
da INT_HNEG debe estar ajustada a TRUE. En caso de regulación en cascada, se co­
necta INT_HNEG del regulador piloto a QLMN_LLM del regulador secuencial.
SELECT 12.0 INT 0 Si el formador de impulsos está conectado, existen varias posibilidades de llamar el
algoritmo PID y el formador de impulsos:
• SELECT = 0: El regulador se llama en un nivel de alarmas cíclicas rápido y se pro­
cesan el algoritmo PID y el formador de impulsos.
• SELECT = 1: El regulador se llama en el OB1 y solo se procesa el algoritmo PID.
• SELECT = 2: El regulador se llama en un nivel de alarmas cíclicas rápido y solo se
procesa el formador de impulsos.
• SELECT = 3: El regulador se llama en un nivel de alarmas cíclicas lento y solo se
procesa el algoritmo PID.

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

Regulación PID
430 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetros de salida de TCONT_CP

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-20  
Parámetro Direc­ Tipo de Ajuste Descripción
ción datos prede­
termi­
nado
PV 14.0 REAL 0.0 En la salida "Valor real" se indica el valor real que actúa efectivamente.
Los valores válidos dependen de los sensores utilizados.
LMN 18.0 REAL 0.0 En la salida "Variable manipulada" se indica la variable manipulada realmente
efectiva en formato de coma flotante.
LMN_PER 22.0 INT 0 La variable manipulada en formato de periferia se conecta al regulador en la sali­
da "Variable manipulada de la periferia".
QPULSE 24.0 BOOL FALSE La variable manipulada se emite con modulación de ancho de impulsos por la sali­
da QPULSE.
QLMN_HLM 24.1 BOOL FALSE La variable manipulada está limitada siempre por un límite superior y uno inferior.
La salida QLMN_HLM notifica que se ha alcanzado el límite superior.
QLMN_LLM 24.2 BOOL FALSE La variable manipulada está limitada siempre por un límite superior y uno inferior.
La salida QLMN_LLM notifica que se ha alcanzado el límite inferior.
QC_ACT 24.3 BOOL TRUE El parámetro indica si se va a procesar la acción del regulador continuo en la si­
guiente llamada de bloque (sólo relevante si SELECT tiene el valor 0 ó 1).

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)
Parámetro STATUS_H (Página 436)
Parámetro STATUS_D (Página 437)

[Link] Parámetros de entrada/salida de TCONT_CP

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.
Tabla 10-21  
Parámetro Direc­ Tipo de Ajuste Descripción
ción datos prede­
termi­
nado
CYCLE 26.0 REAL 0.1 s Valor predeterminado del tiempo de muestreo para el algoritmo PID. El optimiza­
dor calcula el tiempo
de muestreo en la fase 1 y lo deposita en CYCLE.
CYCLE > 0.001 s

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 431
Instrucciones
10.4 Funciones básicas de PID

Parámetro Direc­ Tipo de Ajuste Descripción


ción datos prede­
termi­
nado
CYCLE_P 30.0 REAL 0.02 s En esta entrada se indica el tiempo de muestreo para la acción del formador de
impulsos. La instrucción TCONT_CP calcula el tiempo de muestreo en la fase 1 y lo
deposita en CYCLE_P.
CYCLE_P > 0.001 s
SP_INT 34.0 REAL 0.0 La entrada "Consigna interna" sirve para preseleccionar una consigna.
Los valores válidos dependen de los sensores utilizados.
MAN 38.0 REAL 0.0 La entrada "Valor manual" sirve para predeterminar un valor manual. En modo au­
tomático, se corrige según la variable manipulada.
COM_RST 42.0 BOOL FALSE El bloque tiene una rutina de inicialización, que se ejecuta cuando se activa la en­
trada COM_RST.
MAN_ON 42.1 BOOL TRUE Si está activada la entrada "Conectar modo manual", el lazo de regulación está in­
terrumpido. Como variable manipulada se especifica el valor manual MAN.

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

[Link] Variables estáticas de TCONT_CP

Los nombres de las siguientes variables se aplican tanto para el bloque de datos como para el
acceso a través de Openness API.
Tabla 10-22  
Parámetro Dirección Tipo de Ajuste Descripción
datos prede­
termi­
nado
DEADB_W 44.0 REAL 0.0 El error de regulación se conduce por una zona muerta. La entrada "Ancho de zo­
na muerta" determina el tamaño de la zona muerta.
Los valores válidos dependen de los sensores utilizados.
I_ITLVAL 48.0 REAL 0.0 La salida del integrador se puede aplicar en la entrada I_ITL_ON. En la entrada "Va­
lor de inicialización para la acción I" está el valor de inicialización. Durante el rea­
rranque completo COM_RST = TRUE, la acción I se ajusta al valor de inicialización.
Se admiten valores entre -100 y 100 %.
LMN_HLM 52.0 REAL 100.0 La variable manipulada está limitada siempre por un límite superior y uno inferior.
La entrada "Límite superior de la variable manipulada" indica el límite superior.
LMN_HLM > LMN_LLM
LMN_LLM 56.0 REAL 0.0 La variable manipulada está limitada siempre por un límite superior y uno inferior.
La entrada "Límite inferior de la variable manipulada" indica el límite inferior.
LMN_LLM < LMN_HLM
PV_FAC 60.0 REAL 1.0 La entrada "Factor de valor real" se multiplica por "Valor real de la periferia". La en­
trada sirve para adaptar el rango del valor real.
PV_OFFS 64.0 REAL 0.0 La entrada "Offset de valor real" se suma a "Valor real de periferia". La entrada sir­
ve para adaptar el rango del valor real.

Regulación PID
432 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Parámetro Dirección Tipo de Ajuste Descripción


datos prede­
termi­
nado
LMN_FAC 68.0 REAL 1.0 La entrada "Factor de la variable manipulada" se multiplica por la variable manipu­
lada. La entrada sirve para adaptar el rango de la variable manipulada.
LMN_OFFS 72.0 REAL 0.0 La entrada "Offset de la variable manipulada" se suma a la variable manipulada. La
entrada sirve para adaptar el rango de la variable manipulada.
PER_TM 76.0 REAL 1.0 s En el parámetro PER_TM se introduce la duración del periodo de la modulación de
ancho de impulsos. La relación entre duración de periodo y tiempo de muestreo
del formador de impulsos determina la precisión de la modulación de ancho de
impulsos.
PER_TM ≥ CYCLE
P_B_TM 80.0 REAL 0.02 s En el parámetro "Duración mínima de impulso" o "Duración mínima de pausa" se
puede parametrizar una duración de pausa o de impulso mínima. P_B_TM se limi­
ta internamente a > CYCLE_P.
TUN_DLMN 84.0 REAL 20.0 La excitación del proceso para la optimización del regulador se realiza mediante
un salto de la variable manipulada de TUN_DLMN.
Se admiten valores entre -100 y 100 %.
PER_MODE 88.0 INT 0 En este conmutador se puede indicar el tipo del módulo E/S. El valor real de la en­
trada PV_PER se normaliza así en la salida PV de la siguiente manera.
• PER_MODE = 0: Termopares; PT100/NI100; Estándar
PV_PER * 0.1
Unidad: °C, °F
• PER_MODE = 1: PT100/NI100; Climatización
PV_PER * 0.01
Unidad: °C, °F
• PER_MODE = 2: Intensidad/tensión
PV_PER * 100/27648
Unidad: %
PVPER_ON 90.0 BOOL FALSE Si se debe leer el valor real de la periferia, la entrada PV_PER debe estar interco­
nectada con la periferia, y la entrada "Activar valor real de periferia" debe estar ac­
tivada.
I_ITL_ON 90.1 BOOL FALSE La salida del integrador se puede aplicar a la entrada I_ITLVAL. Para ello debe estar
activada la entrada "Inicializar acción I".
PULSE_ON 90.2 BOOL FALSE Con PULSE_ON = TRUE se activa el formador de impulsos.
TUN_KEEP 90.3 BOOL FALSE No se pasa al modo automático hasta que TUN_KEEP sea FALSE.
ER 92.0 REAL 0.0 En la salida "Error de regulación" se indica el error de regulación que actúa real­
mente.
Los valores válidos dependen de los sensores utilizados.
LMN_P 96.0 REAL 0.0 La salida "Acción P" contiene la acción proporcional de la magnitud manipulada.
LMN_I 100.0 REAL 0.0 La salida "Acción I" contiene la acción integral de la magnitud manipulada.
LMN_D 104.0 REAL 0.0 La salida "Acción D" contiene la acción derivativa de la magnitud manipulada.
PHASE 108.0 INT 0 En la salida PHASE se indica la fase de ejecución actual de la optimización del re­
gulador.
• PHASE = 0: No hay modo de optimización; modo automático o manual
• PHASE = 1: Disponibilidad para la optimización; comprobar parámetros, espe­
rar excitación, medir los tiempos de muestreo

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 433
Instrucciones
10.4 Funciones básicas de PID

Parámetro Dirección Tipo de Ajuste Descripción


datos prede­
termi­
nado
• PHASE = 2: Optimización propiamente dicha: Búsqueda de punto de inversión
con variable manipulada constante. Entrada del tiempo de muestreo en el DB
de instancia.
• PHASE = 3: Calcular los parámetros del proceso. Guardar los parámetros del re­
gulador válidos antes de la optimización.
• PHASE = 4: Diseño del regulador
• PHASE = 5: Corregir el regulador a la nueva magnitud manipulada
• PHASE = 7: Verificar el tipo de sistema
STATUS_H 110.0 INT 0 STATUS_H indica un valor de diagnóstico a través de la búsqueda del punto de in­
versión en el proceso de calentamiento.
STATUS_D 112.0 INT 0 STATUS_D indica un valor de diagnóstico a través del diseño del regulador en el
proceso de calentamiento.
QTUN_RUN 114.0 BOOL 0 La optimización se ha iniciado mediante la aplicación de la magnitud manipulada
de optimización y en estos momentos se encuentra en la fase 2 (búsqueda del
punto de inversión).
PI_CON 116.0 STRUCT Parámetros PI del regulador
GAIN +0.0 REAL 0.0 Ganancia PI del regulador
%/Unidad fís.
TI +4.0 REAL 0.0 s Tiempo de integración PI [s]
PID_CON 124.0 STRUCT Parámetros PID del regulador
GAIN +0.0 REAL 0.0 Ganancia PID del regulador
TI +4.0 REAL 0.0s Tiempo de integración PID [s]
TD +8.0 REAL 0.0s Tiempo de acción derivada PID [s]
PAR_SAVE 136.0 STRUCT En esta estructura se guardan los parámetros PID.
PFAC_SP +0.0 REAL 1.0 Ganancia proporcional al cambiar la consigna
Se admiten valores comprendidos entre 0.0 y 1.0.
GAIN +4.0 REAL 0.0 Ganancia del regulador
%/Unidad fís.
TI +8.0 REAL 40.0 s Tiempo de integración [s]
TD +12.0 REAL 10.0 s Tiempo de acción derivada [s]
D_F +16.0 REAL 5.0 Factor de acción derivada
Se admiten valores comprendidos entre 5.0 y 10.0.
CON_ZONE +20.0 REAL 100.0 Ancho de zona de regulación
Si el error de regulación es mayor que el ancho de la zona de regulación, se emite
el límite superior de la variable manipulada como variable manipulada. Si el error
de regulación es menor que el ancho de la zona de regulación negativa, se emite
el límite inferior de la variable manipulada como variable manipulada.
CON_ZONE ≥ 0.0
CONZ_ON +24.0 BOOL FALSE Activar zona de regulación

Regulación PID
434 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Parámetro Dirección Tipo de Ajuste Descripción


datos prede­
termi­
nado
PFAC_SP 162.0 REAL 1.0 PFAC_SP indica la acción P efectiva en caso de modificación de la consigna. Se
ajusta entre 0 y 1.
• 1: La acción P también está completamente operativa en caso de modificacio­
nes de la consigna.
• 0: La acción P no está operativa en caso de modificaciones de la consigna.
Se admiten valores comprendidos entre 0.0 y 1.0.
GAIN 166.0 REAL 2.0 La entrada "Ganancia proporcional" indica la ganancia del regulador. El sentido de
actuación del regulador se invierte mediante el signo negativo de GAIN.
%/Unidad fís.
TI 170.0 REAL 40.0 s La entrada "Tiempo de integración" (tiempo de acción integral) determina el com­
portamiento temporal del integrador.
TD 174.0 REAL 10.0 s La entrada "Tiempo de acción derivada" (tiempo de anticipación) determina el
comportamiento temporal del diferenciador.
D_F 178.0 REAL 5.0 El factor de acción derivada determina el retardo de la acción D.
D_F = tiempo de acción derivada/"Retardo de la acción D"
Se admiten valores comprendidos entre 5.0 y 10.0.
CON_ZONE 182.0 REAL 100.0 Si el error de regulación es mayor que el ancho de la zona de regulación, se emite
el límite superior de la variable manipulada como variable manipulada.
Si el error de regulación es menor que el ancho de la zona de regulación negativa,
se emite el límite inferior de la variable manipulada como variable manipulada.
Los valores válidos dependen de los sensores utilizados.
CONZ_ON 186.0 BOOL FALSE Con CONZ_ON =TRUE se puede activar la zona de regulación.
TUN_ON 186.1 BOOL FALSE Si TUN_ON=TRUE se toma el promedio de la variable manipulada hasta que se
aplica la excitación de la variable manipulada TUN_DLMNmediante un salto de
consigna o TUN_ST=TRUE.
TUN_ST 186.2 BOOL FALSE Si la consigna debe permanecer constante durante la optimización del regulador
en el punto de operación, se aplica un salto de la variable manipulada de
TUN_DLMN mediante TUN_ST=1.
UNDO_PAR 186.3 BOOL FALSE Carga los parámetros del regulador PFAC_SP, GAIN, TI, TD, D_F CONZ_ON y
CON_ZONE desde la estructura de datos PAR_SAVE (sólo en modo manual).
SAVE_PAR 186.4 BOOL FALSE Guarda los parámetros del regulador PFAC_SP, GAIN, TI, TD, D_F, CONZ_ON y
CON_ZONE en la estructura de datos PAR_SAVE.
LOAD_PID 186.5 BOOL FALSE Carga los parámetros del regulador GAIN, TI, TD en función de PID_ON desde la es­
tructura de datos PI_CON o bien PID_CON (sólo en modo manual)
PID_ON 186.6 BOOL TRUE En la entrada PID_ON se puede determinar si el regulador optimizado debe traba­
jar como regulador PI o PID.
• Regulador PID: PID_ON = TRUE
• Regulador PI: PID_ON = FALSE
Puede ocurrir que en algunos tipos de proceso sólo se diseñe un regulador PI a pe­
sar de PID_ON = TRUE.
GAIN_P 188.0 REAL 0.0 Ganancia del proceso identificada. En el tipo de sistema I, se tiende a estimar un
valor demasiado bajo para GAIN_P.
TU 192.0 REAL 0.0 Tiempo de retardo identificado del proceso.
TU ≥ 3*CYCLE
TA 196.0 REAL 0.0 Tiempo de compensación identificado del proceso. En el tipo de sistema I, se tien­
de a estimar un valor demasiado bajo para TA.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 435
Instrucciones
10.4 Funciones básicas de PID

Parámetro Dirección Tipo de Ajuste Descripción


datos prede­
termi­
nado
KIG 200.0 REAL 0.0 Subida máxima del valor real con una excitación de la variable manipulable de 0 a
100 % [1/s]
GAIN_P = 0.01 * KIG * TA
N_PTN 204.0 REAL 0.0 El parámetro indica el orden del proceso. También se pueden utilizar "valores no
enteros".
Se admiten valores comprendidos entre 1.01 y 10.0.
TM_LAG_P 208.0 REAL 0.0 Constante temporal de un modelo PTN (valores significativos sólo para
N_PTN >= 2).
T_P_INF 212.0 REAL 0.0 Tiempo desde la excitación del proceso hasta el punto de inversión.
P_INF 216.0 REAL 0.0 Modificación del valor real desde la excitación del proceso hasta el punto de inver­
sión.
Los valores válidos dependen de los sensores utilizados.
LMN0 220.0 REAL 0.0 Variable manipulada al principio de la optimización
Se calcula en la fase 1 (valor medio).
Se admiten valores entre 0 y 100 %.
PV0 224.0 REAL 0.0 Valor real al principio de la optimización
PVDT0 228.0 REAL 0.0 Subida del valor real al iniciar la optimización [1/s]
Con adaptación de signo.
PVDT 232.0 REAL 0.0 Subida momentánea del valor real [1/s]
Con adaptación de signo.
PVDT_MAX 236.0 REAL 0.0 Modificación máx. del valor real por segundo [1/s]
Derivación máxima del valor real en el punto de inversión (con adaptación de sig­
no, siempre > 0); se utiliza para calcular TU y KIG.
NOI_PVDT 240.0 REAL 0.0 Nivel de ruido en PVDT_MAX en %
Cuanto mayor sea el nivel de ruido, menos precisos (de efecto más suave) serán
los parámetros del regulador.
NOISE_PV 244.0 REAL 0.0 Ruido absoluto en el valor real
Diferencia entre el valor real máximo y mínimo en la fase 1.
FIL_CYC 248.0 INT 1 Número de ciclos del filtro de valores medios
Se calcula un valor medio del valor real a partir de FIL_CYC ciclos. En caso necesa­
rio, FIL_CYC se aumenta automáticamente entre 1 y máx. 1024.
POI_CMAX 250.0 INT 2 N.º máximo de ciclos tras el punto de inversión
Este tiempo se utiliza para encontrar otro punto de inversión (es decir, uno mejor)
en caso de ruidos de medición. Sólo entonces concluye la optimización.
POI_CYCL 252.0 INT 0 Número de ciclos tras el punto de inversión

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

Regulación PID
436 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetro STATUS_H

STATUS_H Descripción Solución


0 Parámetros del regulador predetermi­
nados, ningún parámetro o ninguno
nuevo
10000 Optimización finalizada + parámetros
adecuados encontrados para el regu­
lador
2xxxx Optimización finalizada + parámetros
del regulador inseguros
2xx2x Punto de inversión no alcanzado (sólo Si el regulador oscila, atenuar los parámetros del
en caso de excitación mediante salto regulador o repetir el ensayo con una diferencia
de consigna) menor de la variable manipulada TUN_DLMN.
2x1xx Error de estimación (TU < 3*CYCLE) Reducir CYCLE y repetir el ensayo.
Caso excepcional proceso PT1 puro: No repetir el
ensayo, atenuar los parámetros del regulador si
procede.
2x3xx Error de estimación TU demasiado Repetir el ensayo con mejores condiciones.
grande
21xxx Error de estimación N_PTN < 1 Repetir el ensayo con mejores condiciones.
22xxx Error de estimación N_PTN > 10 Repetir el ensayo con mejores condiciones.
3xxxx Optimización cancelada en fase 1 de­
bido a parametrización errónea:
30002 Diferencia efectiva de la variable ma­ Corregir la diferencia de la variable manipulada
nipulada < 5 % TUN_DLMN.
30005 Los tiempos de muestreo CYCLE y Compare CYCLE y CYCLE_P con el tiempo de ciclo
CYCLE_P difieren en más del 5% de los del nivel de alarmas cíclicas y considere los posi­
valores medidos. bles distribuidores de llamada.
Compruebe el grado de utilización de la CPU.
Una CPU con una carga excesiva conlleva tiem­
pos de muestreo excesivos, que no concuerdan
con CYCLE ni CYCLE_P.

NOTA
Si se cancela la optimización en la fase 1 ó 2, entonces STATUS_H = 0. Sin embargo,
STATUS_D sigue indicando el estado del último cálculo del regulador.
Cuanto mayor sea el valor de STATUS_D, mayor será el orden del proceso regulado, mayor la
relación TU/TA y más suaves los parámetros del regulador.

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 437
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetro STATUS_D

STATUS_D Descripción
0 No se han calculado parámetros del regulador
110 N_PTN <= 1.5 Tipo de sistema I rápido
121 N_PTN > 1.5 Tipo de sistema I
200 N_PTN > 1.9 Tipo de sistema II (rango de transición)
310 N_PTN >= 2.1 Tipo de sistema III rápido
320 N_PTN > 2.6 Tipo de sistema III
111, 122, 201, 311, 321 Los parámetros se han corregido en la fase 7.

NOTA
Cuanto mayor sea el valor de STATUS_D, mayor será el orden del proceso regulado, mayor la
relación TU/TA y más suaves los parámetros del regulador.

Consulte
también
Funcionamiento del generador de impulsos (Página 425)
Diagrama de bloques TCONT_CP (Página 428)

10.4.5 TCONT_S

[Link] Descripción de TCONT_S

La instrucción TCONT_S permite regular lazos de temperatura técnicos con señales de salida
binarias de la variable manipulada para actuadores integrantes en los sistemas de
automatización SIMATIC S7. El funcionamiento se basa en el algoritmo de regulación PI del
regulador de muestreo. El regulador paso a paso opera sin realimentación de posición.

Aplicación
El regulador también se puede utilizar en una cascada de reguladores como posicionador
subordinado. La entrada de la consigna SP_INT predetermina la posición del actuador. En este
caso, tanto la entrada de valor real como el parámetro TI tienen que estar a 0 (tiempo
integral). Un ejemplo de aplicación sería una regulación de la temperatura con regulación de
la potencia calorífica a través de un control pulso/pausa y con regulación de la potencia
frigorífica a través de una válvula de mariposa. Para cerrar completamente la válvula, la
magnitud manipulada debe pasar a ser negativa (ER*GAIN).

Regulación PID
438 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Llamada
La instrucción TCONT_S debe llamarse de forma equidistante. Utilice para ello un nivel de
alarmas cíclicas (p. ej., OB35 en S7-300). El tiempo de muestreo se predetermina en el
parámetro CYCLE.

Tiempo de muestreo CYCLE


El tiempo de muestreo CYCLE debe coincidir con la diferencia de tiempo entre dos llamadas
(tiempo de ciclo del OB de alarma cíclica observando los factores de ciclo).
El tiempo de muestreo del regulador no debería exceder más del 10 % del tiempo integral
determinado para el regulador (TI). Sin embargo, normalmente se debe ajustar un tiempo de
muestreo mucho menor para garantizar la precisión exigida del regulador paso a paso.

Precisión exigida G MTR_TM CYCLE = MTR_TM*G Comentario


0.5 % 10 s 0,05 s El tiempo de muestreo viene deter­
minado por la precisión exigida del
regulador paso a paso.

Arranque
La instrucción TCONT_S incluye una rutina de inicialización, que se ejecuta cuando el
parámetro de entrada COM_RST = TRUE está activado. El bloque vuelve a ajustarse a FALSE
después de ejecutar la rutina de inicialización COM_RST. Todas las salidas se ajustan a sus
respectivos valores iniciales. Si desea realizar una inicialización con un rearranque completo
de la CPU, llame la instrucción en el OB 100 con COM_RST = TRUE.
Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

[Link] Funcionamiento de TCONT_S

Rama de consigna
La consigna se introduce en la entrada SP_INT en formato de coma flotante, ya sea físico o
porcentual. La consigna y el valor real deben tener la misma unidad en la formación del error
de regulación.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 439
Instrucciones
10.4 Funciones básicas de PID

Selección del valor real (PVPER_ON)


El valor real se puede leer en formato de coma flotante o en formato de periferia en función
de PVPER_ON.

PVPER_ON Introducción del valor real


TRUE El valor real se lee a través de la periferia analógica (PEW xxx) en la entrada
PV_PER.
FALSE El valor real se lee en formato de coma flotante en la entrada PV_IN.

Conversión del formato del valor real CRP_IN (PER_MODE)


La función CRP_IN convierte el valor de periferia PV_PER dependiendo del conmutador
PER_MODE en un valor en coma flotante según la siguiente regla:

PER_MODE Salida de CRP_IN Tipo de entrada analó­ Unidad


gica
0 PV_PER * 0.1 Termopares; °C;°F
PT100/NI100; Estándar
1 PV_PER * 0.01 PT100/NI100; Climatiza­ °C;°F
ción;
2 PV_PER * 100/27648 Tensión/intensidad %

Normalización del valor real PV_NORM (PF_FAC, PV_OFFS)


La función PV_NORM calcula la salida de CRP_IN según la siguiente norma:
"Salida de PV_NORM" = "salida de CRP_IN" * PV_FAC + PV_OFFS
Se puede utilizar para los siguientes propósitos:
• Adaptación del valor real con PV_FAC como factor del valor real y PV_OFFS como offset del
valor real
• Normalización de la temperatura en porcentajes
Desea indicar la consigna en porcentajes y ahora debe convertir el valor de temperatura
medido en un valor porcentual.
• Normalización de los valores porcentuales a temperaturas
Desea indicar la consigna en la magnitud física Temperatura y ahora hay que convertir el
valor de tensión/intensidad medido en una temperatura.
Cálculo de los parámetros:
• PV_FAC = rango de PV_NORM/ rango de CRP_IN;
• PV_OFFS = LI(PV_NORM) - PV_FAC * LI(CRP_IN);
siendo LI: límite inferior
Con los valores predeterminados (PV_FAC = 1.0 y PV_OFFS = 0.0) la normalización está
desactivada. El valor real con efectos reales se emite en la salida PV.

Regulación PID
440 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Ejemplo de normalización del valor real


Para preseleccionar la consigna en porcentajes con un rango de temperatura de -20 a 85 °C
en CRP_IN, normalice el rango de temperatura a valores porcentuales.
En la siguiente figura encontrará un ejemplo para la adaptación de un rango de temperatura
de entre -20 y 85 °C a valores de 0 a 100 %:
39B1250 >@





39B)$&   







39B2))6  




      &53B,1>r&@

Cálculo de error de regulación


La diferencia entre la consigna y el valor real constituye el error de regulación antes de la
zona muerta.
La consigna y el valor real deben estar indicados con la misma unidad.

Zona muerta (DEADB_W)


Para suprimir una pequeña oscilación permanente debida a la cuantificación de la magnitud
manipulada (p. ej. en una modulación de ancho de impulsos con PULSEGEN), el error de
regulación se conduce por una zona muerta (DEADBAND). Con DEADB_W = 0.0 la zona
muerta está desactivada.
(5

(5  63B,1739 '($'B: (5  63B,1739 '($'B:

63B,1739

'($'%B:

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 441
Instrucciones
10.4 Funciones básicas de PID

Algoritmo del regulador paso a paso PI


La instrucción TCONT_S opera sin realimentación de posición. La acción I del algoritmo PI y la
realimentación de posición estimada se calculan en un integrador (INT) y se comparan como
valor de realimentación con la acción P restante. La diferencia pasa a un elemento de tres
puntos (THREE_ST) y a un generador de impulsos (PULSEOUT), que genera los impulsos para
la servoválvula. Mediante una adaptación del umbral de respuesta del elemento de tres
niveles se reduce la frecuencia de conmutación del regulador.

Atenuación de la acción P en caso de modificaciones de la consigna


Para evitar sobreoscilaciones, es posible atenuar la acción P a través del parámetro "Ganancia
proporcional al cambiar la consigna" (PFAC_SP). Mediante PFAC_SP se puede elegir entonces
continuamente la intensidad - entre 0.0 y 1.0 - con la que debe actuar la acción P en caso de
modificaciones de la consigna:
• PFAC_SP = 1.0: la acción P actúa plenamente al cambiar la consigna
• PFAC_SP = 0.0: sin acción P en caso de modificación de la consigna
Un valor de PFAC_SP < 1.0 puede reducir las sobreoscilaciones como en el caso de un
regulador continuo si el tiempo de funcionamiento del motor MTR_TM es corto con respecto
al tiempo de compensación TA, y la relación es TU/TA < 0.2. Si MTR_TM alcanza el 20 % de TA,
sólo se puede lograr una pequeña mejora.

Control anticipativo
En la entrada DISV se puede aplicar una magnitud perturbadora de manera aditiva.

Procesamiento de valores en manual (LMNS_ON, LMNUP, LMNDN)


LMNS_ON permite conmutar entre los modos manual y automático. En el modo manual, el
elemento final de control se detiene y el integrador (INT) se pone a 0 de forma interna.
Mediante LMNUP y LMNDN se puede mover el elemento final de control ARRIBA y ABAJO. La
conmutación al modo Automático se efectúa con discontinuidad. El error de regulación
existente conduce, a través de GAIN, a una modificación en forma de salto de la magnitud
manipulada interna. Mediante el elemento final de control de acción integral sólo se obtiene
un control del proceso en forma de rampa.
Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

Regulación PID
442 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Diagrama de bloques de TCONT_S

63B,17 *$,1
393(5B21
'($'%$1'
39B,1   ;

&53B,1 39B1250  '($'%B:
39B3(5 r& (5
39


3(5B02'( 39B)$&
39B2))6
63B,17
I
3)$&B63
/015B+6

/015B/6

/0183

/01'1

/016B21
 38/6(287
7+5((B6 4/0183
',69  $1' $1'
DGDSWLY
 4/01'1
 $1' $1'


38/6(B70
075B70 %5($.B70  






/016B21
 ;
25  075B70
  ,17 

7, 
  
;


Interfaz de parametrización
Interfaz de llamada de instrucción
Interfaz de parametrización, interfaz de llamada de instrucción

Consulte
también
Descripción de TCONT_S (Página 438)
Funcionamiento de TCONT_S (Página 439)
Parámetros de entrada de TCONT_S (Página 444)
Parámetros de salida de TCONT_S (Página 444)
Parámetros de entrada/salida de TCONT_S (Página 445)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 443
Instrucciones
10.4 Funciones básicas de PID

Variables estáticas de TCONT_S (Página 445)

[Link] Parámetros de entrada de TCONT_S

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.

Tabla 10-23  
Parámetro Direc­ Tipo Ajus­ Descripción
ción de da­ te
tos pre­
deter­
mina­
do
CYCLE 0.0 REAL 0.1 s En esta entrada se indica el tiempo de muestreo para el regulador.
CYCLE ≥ 0.001
SP_INT 4.0 REAL 0.0 La entrada "Consigna interna" sirve para preseleccionar una consig­
na.
Los valores válidos dependen de los sensores utilizados.
PV_IN 8.0 REAL 0.0 En la entrada "Valor real de la entrada" se puede parametrizar un va­
lor de puesta en marcha, o se puede conectar un valor real externo
en coma flotante.
Los valores válidos dependen de los sensores utilizados.
PV_PER 12.0 INT 0 El valor real en formato de periferia se conecta al regulador a través
de la entrada "Valor real de la periferia".
DISV 14.0 REAL 0.0 Para realizar un control anticipativo, la magnitud perturbadora se co­
necta a la entrada "Variable perturbadora".
LMNR_HS 18.0 BOOL FALSE La señal "Servoválvula en el tope superior" se aplica en la entrada
"Señal de tope superior de la realimentación de posición".
• LMNR_HS=TRUE: La servoválvula se encuentra en el tope supe­
rior.
LMNR_LS 18.1 BOOL FALSE La señal "Servoválvula en el tope inferior" se aplica en la entrada "Se­
ñal de tope inferior de la realimentación de posición".
• LMNR_LS=TRUE:
La servoválvula se encuentra en el tope inferior.
LMNS_ON 18.2 BOOL TRUE En la entrada "Activar el modo manual de las señales de la variable
manipulada" el procesamiento de las señales manipuladas pasa a
manual.
LMNUP 18.3 BOOL FALSE En el modo manual de las señales de la variable manipulada se con­
trola la señal de salida QLMNUP en la entrada "Señal alta de variable
manipulada".
LMNDN 18.4 BOOL FALSE En el modo manual de las señales de la variable manipulada se con­
trola la señal de salida QLMNDN en la entrada "Señal baja de variable
manipulada".

Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

Regulación PID
444 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

[Link] Parámetros de salida de TCONT_S

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.

Tabla 10-24  
Parámetro Direc­ Tipo Ajus­ Descripción
ción de da­ te
tos pre­
deter­
mina­
do
QLMNUP 20.0 BOOL FALSE Si la salida "Señal alta de variable manipulada" está activada, la vál­
vula de control debe abrirse.
QLMNDN 20.1 BOOL FALSE Si está activada la salida "Señal baja de la variable manipulada", la
válvula de control debe cerrarse.
PV 22.0 REAL 0.0 En la salida "Valor real" se indica el valor real que actúa efectivamen­
te.
ER 26.0 REAL 0.0 En la salida "Error de regulación" se indica el error de regulación que
actúa realmente.

Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

[Link] Parámetros de entrada/salida de TCONT_S

Los nombres de los siguientes parámetros se aplican tanto para el bloque de datos como para
el acceso a través de Openness API.

Tabla 10-25  
Parámetro Direc­ Tipo Ajus­ Descripción
ción de da­ te
tos pre­
deter­
mina­
do
COM_RST 30.0 BOOL FALSE El bloque tiene una rutina de inicialización, que se ejecuta cuando
está activa la entrada COM_RST.

Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 445
Instrucciones
10.4 Funciones básicas de PID

[Link] Variables estáticas de TCONT_S

Los nombres de las siguientes variables se aplican tanto para el bloque de datos como para el
acceso a través de Openness API.
Tabla 10-26  
Parámetro Direc­ Tipo de Ajuste Descripción
ción datos prede­
termi­
nado
PV_FAC 32.0 REAL 1.0 La entrada "Factor de valor real" se multiplica por el valor real. La entrada sirve para
adaptar el rango del valor real.
PV_OFFS 36.0 REAL 0.0 La entrada "Offset de valor real" se suma al valor real. La entrada sirve para adaptar
el rango del valor real.
Los valores válidos dependen de los sensores utilizados.
DEADB_W 40.0 REAL 0.0 El error de regulación se conduce por una zona muerta. La entrada "Ancho de zona
muerta" determina el tamaño de la zona muerta.
DEADB_W ≥ 0.0
PFAC_SP 44.4 REAL 1.0 PFAC_SP indica la acción P efectiva en caso de modificación de la consigna.
• 1: La acción P está completamente operativa en caso de modificaciones de la
consigna.
• 0: La acción P no está operativa en caso de modificaciones de la consigna.
Se admiten valores comprendidos entre 0.0 y 1.0.
GAIN 48.0 REAL 2.0 La entrada "Ganancia proporcional" indica la ganancia del regulador. El sentido de
actuación del regulador se invierte mediante el signo negativo de GAIN.
%/Unidad fís.
TI 52.0 REAL 40.0 s La entrada "Tiempo de integración" (tiempo de acción integral) determina el com­
portamiento temporal del integrador.
MTR_TM 56.0 REAL 30 s En el parámetro "Tiempo de posicionamiento del motor" se introduce el tiempo de
operación de la servoválvula de un tope al otro.
MTR_TM ≥ CYCLE
PULSE_TM 60.0 REAL 0.0 s En el parámetro "Duración mínima de impulso" se puede parametrizar una dura­
ción de impulso mínima.
BREAK_TM 64.0 REAL 0.0 s En el parámetro "Duración mínima de pausa" se puede parametrizar una longitud
de pausa mínima.
PER_MODE 68.0 INT 0 En este conmutador se puede indicar el tipo del módulo E/S. El valor real de la en­
trada PV_PER se normaliza así en la salida PV de la siguiente manera.
• PER_MODE = 0: Termopares; PT100/NI100; Estándar
PV_PER * 0.1
Unidad: °C, °F
• PER_MODE = 1: PT100/NI100; Climatización
PV_PER * 0.01
Unidad: °C, °F
• PER_MODE = 2: Intensidad/tensión
PV_PER * 100/27648
Unidad: %
PVPER_ON 70.0 BOOL FALSE Si se debe leer el valor real de la periferia, la entrada PV_PER debe estar interconec­
tada con la periferia, y la entrada "Activar valor real de periferia" debe estar activa­
da.

Regulación PID
446 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.4 Funciones básicas de PID

Consulte
también
Diagrama de bloques de TCONT_S (Página 442)

10.4.6 Funciones de sistema integradas

[Link] CONT_C_SF

CONT_C_SF
La instrucción CONT_C_SF está integrada en las CPU S7-300 Compact. No es necesario
transmitir la instrucción al cargar en la CPU S7-300. Las funciones corresponden a la
instrucción CONT_C.
Consulte
también
Descripción de CONT_C (Página 397)
Funcionamiento de CONT_C (Página 397)
Diagrama de bloques de CONT_C (Página 399)
Parámetros de entrada de CONT_C (Página 399)
Parámetros de salida de CONT_C (Página 401)

[Link] CONT_S_SF

CONT_S_SF
La instrucción CONT_S_SF está integrada en las CPU S7-300 Compact. No es necesario
transmitir la instrucción al cargar en la CPU S7-300. Las funciones corresponden a la
instrucción CONT_S.
Consulte
también
Descripción de CONT_S (Página 402)
Funcionamiento de CONT_S (Página 403)
Diagrama de bloques de CONT_S (Página 403)
Parámetros de entrada de CONT_S (Página 404)
Parámetros de salida de CONT_S (Página 406)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 447
Instrucciones
10.5 Polyline

[Link] PULSEGEN_SF

PULSEGEN_SF
La instrucción PULSEGEN_SF está integrada en las CPU S7-300 Compact. No es necesario
transmitir la instrucción al cargar en la CPU S7-300. Las funciones corresponden a la
instrucción PULSEGEN.
Consulte
también
Descripción de PULSEGEN (Página 406)
Funcionamiento de PULSEGEN (Página 407)
Modos de operación de PULSEGEN (Página 410)
Regulación de tres puntos (Página 411)
Regulación de dos puntos (Página 413)
Parámetros de entrada de PULSEGEN (Página 414)
Parámetros de salida de PULSEGEN (Página 415)

10.5 Polyline

10.5.1 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de Polyline:

CPU FW Polyline
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

10.5.2 Descripción de Polyline

Descripción
La instrucción Polyline reproduce el valor de entrada Input mediante una característica en el
valor de salida Output. La característica se define como línea poligonal con 50 nodos como
máximo. Entre estos nodos se efectúa una interpolación lineal. La línea poligonal puede
ajustarse a la característica deseada por medio del número y la configuración de los nodos.
La instrucción Polyline puede utilizarse, por ejemplo, para linealizar un comportamiento no
lineal de sensores o actuadores.

Regulación PID
448 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.5 Polyline

Cálculo de interpolación
Polyline calcula el valor de salida del parámetro Output para el valor de entrada del parámetro
Input, el cual se sitúa entre los valores de los nodos xi y xi+1 con una interpolación lineal. La
interpolación lineal se calcula con la siguiente fórmula:
(Input - xi )
Output = (yi+1 - yi ) + yi
(xi+1 - xi )
Con el parámetro Reset = TRUE también puede especificarse un valor de salida alternativo
mediante el parámetro SubstituteOutput.

Datos de línea poligonal


Los pares de valores de la línea poligonal se encuentran en la sección Static de la instrucción.

NOTA
• Número mínimo de pares de valores que deben configurarse: 2.
• Número máximo de pares de valores que deben configurarse: 50.
• Para que la configuración sea válida, los valores x deben indicarse en orden ascendente.

Para poder modificar los datos de la línea poligonal sin que los cambios tengan efecto
inmediato, se han duplicado los pares de valores de la línea poligonal y se han incluido en las
siguientes estructuras:
• UserData
En esta estructura, los datos de la línea poligonal pueden editarse.
Utilice esta estructura para definir o modificar los datos de la línea poligonal. Las
modificaciones que se realicen en esta estructura no afectarán al cálculo de interpolación
hasta que no se inicien los procesos de comprobación y copia de los datos en la estructura
WorkingData. Esto se realiza ajustando Validate = TRUE o automáticamente durante la
primera ejecución de Polyline tras cambiar el estado operativo de la CPU de STOP a RUN.
El ajuste predeterminado de los valores de esta estructura no es una configuración válida.
Para utilizar los valores en el cálculo de interpolación, asigne valores válidos a las
variables.
• WorkingData
En esta estructura, los datos de la línea poligonal no pueden editarse. Estos datos se
utilizan para el cálculo de interpolación. No modifique los datos manualmente en esta
estructura.
Ambas estructuras tienen el mismo tipo de datos y, por lo tanto, el mismo contenido:
• NumberOfUsedPoints
Número de nodos utilizados para el cálculo de interpolación.
• Point
La matriz con 50 elementos contiene pares de valores de los nodos Point[i].x y Point[i].y
con el índice "i" de 1 a 50.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 449
Instrucciones
10.5 Polyline

La figura siguiente muestra una línea poligonal con cuatro nodos:


Output

Point[4].y
Point[4]

Point[3].y
Point[3]

Point[2].y
Point[2]
Point[1].y
Point[1]

Point[1].x Point[2].x Point[3].x Point[4].x Input

Llamada
En un OB, Polyline se llama como DB de instancia individual; en un FC, Polyline se llama como
DB de instancia individual o como DB de instancia de parámetro; y en un FB, Polyline puede
llamarse como DB de instancia individual, como DB multiinstancia o como DB de instancia de
parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. La configuración
Polyline está disponible en la ventana de inspección del editor de programación.

Arranque
Las variables de las estructuras UserData y WorkingData no son remanentes. Estas variables
se inicializan con los valores de arranque después de cada cambio del estado operativo de la
CPU de STOP a RUN.
Si modifica los valores actuales de la estructura UserData en el modo online y desea conservar
estos valores tras cambiar el estado operativo de la CPU de STOP a RUN, guarde estos valores
en los valores de arranque del bloque de datos.
La primera vez que se llame la instrucción Polyline después de cambiar el estado operativo de
la CPU de STOP a RUN, se comprobará automáticamente la validez de los datos de la
estructura UserData. Si la comprobación es satisfactoria, los datos se transmitirán a la
estructura WorkingData.

Comportamiento en caso de error


La instrucción Polyline detecta diversos errores que pueden producirse durante el cálculo de
la interpolación. Pese a la presencia de errores, el resultado del cálculo de la interpolación
puede emitirse en la salida. Si debido a un error no es posible calcular correctamente el
resultado de la interpolación, en la salida se emitirá un valor de salida sustitutivo.

Regulación PID
450 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.5 Polyline

Si se produce un error que no permite calcular correctamente el resultado de la interpolación,


en la variable ErrorMode deberá definir el valor de salida sustitutivo de la siguiente manera:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último resultado válido del cálculo de interpolación
0.0 en caso de que no haya ningún resultado válido
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emite 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores del tipo de datos REAL. Solo
entonces se emite el valor de salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si está
ajustado el parámetro Reset = TRUE, el valor del parámetro SubstituteOutput se emite en
el parámetro Output.
El parámetro Error indica si hay algún un error presente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits indica qué errores se han
producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro
Reset o ErrorAck.

10.5.3 Funcionamiento de Polyline

Datos de línea poligonal


Para modificar los datos de la línea poligonal, los valores deben editarse en la estructura
UserData. A continuación, se comprueba la validez de los valores y se transmiten a la
estructura WorkingData. Una vez que se encuentran en la estructura WorkingData, los valores
se utilizan para calcular la interpolación.
Los valores se comprueban y se transfieren en los siguientes casos:
• Cuando el parámetro Validate se ajusta a TRUE, mientras que el parámetro Reset está
ajustado a FALSE.
• Cuando se llama por primera vez Polyline tras haber cambiado el estado operativo de la
CPU de STOP a RUN, mientras el parámetro Reset está ajustado a FALSE.
Si Polyline ya se ha llamado, p. ej., en el OB100, en las siguientes llamadas no se repetirá
la comprobación automática de los valores.
Si los datos de la línea poligonal de la estructura UserData no son válidos, no se modificarán
los datos anteriores de la línea poligonal de la estructura WorkingData y se emitirá un
mensaje de error correspondiente. Si la comprobación se efectúa por primera vez, no hay
valores válidos disponibles en la estructura WorkingData y se emite un mensaje de error al
efecto. En este caso, el parámetro Output se definirá con el valor de salida sustitutivo que se
configura con la variable ErrorMode.
La comprobación y la transmisión de los valores de la estructura UserData requiere más
tiempo de ejecución de CPU que el cálculo de interpolación. En aplicaciones en las que el
tiempo es un factor crítico, la primera ejecución de Polyline puede hacerse en el OB de
arranque 100. De este modo, el laborioso proceso de comprobación y transmisión de datos

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 451
Instrucciones
10.5 Polyline

de la línea poligonal que debe realizarse una vez, concluirá antes que las secciones de
programa de aplicación cíclicas.

Validez de los datos de la línea poligonal


Cuando se comprueban los valores de la estructura UserData, los valores deben cumplir las
siguientes condiciones para que exista una línea poligonal válida que permita calcular la
interpolación:
• 2 ≤ [Link] ≤ 50
• [Link][j].x < [Link][j+1].x con índice j =
1..([Link] – 1)
• -3.402823e+38 ≤ [Link][i].x ≤ 3.402823e+38 con índice i =
1..[Link]
• -3.402823e+38 ≤ [Link][i].y ≤ 3.402823e+38 con índice i =
1..[Link]
• [Link][i].x and [Link][i].y son valores REAL válidos (≠ NaN) con índice i =
1..[Link]
Si durante la comprobación no se cumplen una o varias condiciones, los valores de la
estructura UserData no se aplicarán en la estructura WorkingData. En el parámetro ErrorBits
(Página 456) se emite un mensaje de error al efecto.
El ajuste predeterminado de los valores de la estructura UserData no es una configuración
válida. Para utilizar las variables en el cálculo de interpolación, asigne valores válidos a las
variables.

NOTA
Si la aplicación necesita más del número máximo de 50 nodos, utilice dos o más instancias de
Polyline.

Regulación PID
452 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.5 Polyline

Cálculo del valor de salida


Si el valor de entrada del parámetro Input se sitúa por debajo del primer valor x o por encima
del último valor x de los nodos utilizados, configure la asignación del parámetro Output con
los ajustes siguientes en la variable OutOfRangeMode:
• OutOfRangeMode = 0
El valor de salida se extrapola con la pendiente del primer nodo o de los dos últimos
nodos.
Output

Point[4].y
Point[4]

Point[3].y
Point[3]

Point[2].y
Point[2]
Point[1].y
Point[1]

Point[1].x Point[2].x Point[3].x Point[4].x Input


Si la variable OutOfRangeMode se encuentra fuera del rango de valores admisible de 0 a
1, se hará efectivo el ajuste predeterminado 0.
• OutOfRangeMode = 1
El valor de salida se limita al valor y del primer nodo o del último.
Output

Point[4].y
Point[4]

Point[3].y
Point[3]

Point[2].y
Point[2]
Point[1].y
Point[1]

Point[1].x Point[2].x Point[3].x Point[4].x Input

El parámetro Output tiene un rango de valores admisible de un tipo de datos REAL de entre
-3.402823e+38 y 3.402823e+38. La validez del valor de salida del parámetro Output se
comprueba cada vez que se ejecuta la instrucción Polyline. Si el cálculo de interpolación da
como resultado un valor REAL no válido, el valor de salida se sustituye con el ajuste de la
variable ErrorMode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 453
Instrucciones
10.5 Polyline

Comportamiento de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a
FALSE:
• La entrada de habilitación EN está ajustada a TRUE y el parámetro Output se ha definido
con un valor de salida sustitutivo en caso de mensajes de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Nodos utilizados actualmente

La variable NextXIndex emite el índice del valor x inmediatamente superior para el valor de
entrada actual. Esto permite determinar los nodos utilizados para el cálculo de interpolación
actual.
[Link][NextXIndex-1].x < Input ≤ [Link][NextXIndex].x
Ejemplo:
• Si el valor del parámetro Input se sitúa entre [Link][3].x y
[Link][4].x, la variable NextXIndex tendrá el valor 4.
• Si el valor del parámetro Input es menor que [Link][1].x, la variable
NextXIndex tendrá el valor 1.
• Si el valor del parámetro Input es mayor que
[Link][[Link]].x y, por consiguiente, mayor que
el último valor x de la línea poligonal, la variable NextXIndex tendrá el valor de la variable
[Link] + 1. Por consiguiente, el máximo valor admisible de la
variable NextXIndex es 51.

10.5.4 Parámetros de entrada de Polyline

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo en los siguientes ca­
teOutput sos:
• Reset = TRUE
o bien
• Si no es posible calcular correctamente el resultado de la interpolación debi­
do a un error con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode
está ajustado al valor 1 .
Validate BOOL FALSE Si Validate está ajustado a TRUE, se comprobará la validez de los datos de la lí­
nea poligonal en UserData y se aplicarán a WorkingData.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva

Regulación PID
454 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.5 Polyline

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo de interpola­
ción.

10.5.5 Parámetros de salida de Polyline

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 456) muestra qué mensajes de error existen.
ErrorBits es remanente y se desactiva con un flanco ascendente en Reset o Erro­
rAck .

10.5.6 Variables estáticas de Polyline

Variable Tipo de datos Ajuste predeter­ Descripción


minado
UserData AuxFct_PointTabl­ - Rango de entrada de datos de la línea poligonal
e Los datos de la línea poligonal de la estructura
UserData pueden editarse.
Las modificaciones que se realicen en esta estruc­
tura no afectarán al cálculo de interpolación has­
ta que no se inicien los procesos de comproba­
ción y copia de los datos en la estructura Wor­
kingData.
[Link] INT 0 Número de nodos utilizados para el cálculo de in­
terpolación
Rango de valores admisible: de 2 a 50
[Link] Array[1..50] of - Nodos para el cálculo de interpolación
AuxFct_Point La matriz con 50 elementos del tipo de datos
AuxFct_Point contiene los pares de valores de los
nodos.
[Link][i] AuxFct_Point - Nodo para el cálculo de interpolación
Un elemento con índice "i" de la matriz "Point".
[Link][i].x REAL 0.0 Valor x del nodo
Rango de valores admisible: Point[i].x <
Point[i+1].x
[Link][i].y REAL 0.0 Valor y del nodo

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 455
Instrucciones
10.5 Polyline

Variable Tipo de datos Ajuste predeter­ Descripción


minado
WorkingData AuxFct_PointTabl­ - Rango de visualización de los datos de la línea po­
e ligonal activos actualmente
Los datos de la línea poligonal de la estructura
WorkingData no pueden editarse. Se utilizan para
calcular la interpolación.
[Link] INT 0 Número de nodos utilizados para el cálculo de in­
terpolación
Rango de valores admisible: de 2 a 50
[Link] Array[1..50] of - Nodos para el cálculo de interpolación
AuxFct_Point La matriz con 50 elementos del tipo AuxFct_Point
contiene los pares de valores de los nodos.
[Link][i] AuxFct_Point - Nodo para el cálculo de interpolación
Un elemento con índice "i" de la matriz "Point".
[Link][i].x REAL 0.0 Valor x del nodo
Rango de valores admisible: Point[i].x <
Point[i+1].x
[Link][i].y REAL 0.0 Valor y del nodo
ErrorMode INT 0 Selección del valor de salida sustitutivo en caso
de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida válido
Rango de valores admisible: de 0 a 2
OutOfRangeMode INT 0 Selección del valor de salida cuando el valor de
entrada se encuentra fuera de los valores x defi­
nidos
• 0 = mantener pendiente
• 1 = valor y del primer/último nodo
Rango de valores admisible: de 0 a 1
NextXIndex INT 2 Índice del siguiente valor x
Sirve para observar el índice de los nodos que se
utilizan en el cálculo de interpolación actual.
Se aplica la siguiente condición:
[Link][NextXIndex-1].x < Input ≤
[Link][NextXIndex].x
No modifique este valor manualmente.

10.5.7 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.
Con Polyline, los errores que se emiten en el parámetro ErrorBits se dividen en dos categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Regulación PID
456 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.5 Polyline

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
Polyline reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula la interpolación.
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si el valor de interpolación se emite en la salida (Reset = FALSE y ErrorBits < 16#0001_0000), compruebe
las siguientes variables utilizadas en el cálculo de interpolación:
• Input
• [Link][i].x
• [Link][i].y
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• Input
• SubstituteOutput
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.
0000_0002 Causa del error:
Hay una o varias variables con valores no válidos en la estructura UserData mientras se comprueban los
datos de la línea poligonal (Validate = TRUE y Reset = FALSE).
Reacción a errores:
Los datos de la línea poligonal de la estructura UserData no se transfieren a la estructura WorkingData, por
lo que los cambios realizados en la estructura UserData no se aplican.
FB Polyline continúa el cálculo de interpolación con los datos no modificados y válidos de la línea poligo­
nal de la estructura WorkingData.
Solución:
Asegúrese de que se cumplen las siguientes condiciones si el parámetro Validate está ajustado a TRUE:
• 2 ≤ [Link] ≤ 50
• [Link][j].x < [Link][j+1].x con índice j = 1..([Link] - 1)
• -3.402823e+38 ≤ [Link][i].x ≤ 3.402823e+38 con índice i =1..[Link]
• -3.402823e+38 ≤ [Link][i].y ≤ 3.402823e+38 con índice i = 1..[Link]­
Points
• [Link][i].x y [Link][i].y son valores REAL válidos (≠ NaN) con índice i = 1..UserDa­
[Link]

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 457
Instrucciones
10.5 Polyline

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
Polyline reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, Polyline
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula la interpolación.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
Los parámetros SubstituteOutput o Input, que se utilizan como valor de salida, no tienen ningún valor
REAL válido.
Reacción a errores:
La salida se ajusta a 0.0.
Solución:
Asegúrese de que el parámetro que se utiliza como valor de salida sea un valor REAL válido (≠ NaN, p. ej.,
16#7FFF_FFFF). El parámetro que se utiliza como valor de salida depende de Reset y ErrorMode:
Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo de interpolación (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
La variable NextXIndex no se actualizará mientras el parámetro Input tenga un valor REAL no válido.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠ NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Causa del error:
El cálculo de interpolación da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
La variable NextXIndex puede tener un valor no válido mientras esté presente este error.
Solución:
Compruebe la validez de los valores REAL de la estructura WorkingData.
Información adicional:
Si desea modificar los datos de la línea poligonal, edite primero la estructura UserData y a continuación
ajuste el parámetro Validate = TRUE. No modifique los datos de la estructura WorkingData manualmente.

Regulación PID
458 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.6 SplitRange

ErrorBits Descripción

(DW#16#...)
0008_0000 Causa del error:
Hay una o varias variables con valores no válidos en la estructura UserData mientras se comprueban los
datos de la línea poligonal.
Reacción a errores:
Los datos de la línea poligonal de la estructura UserData no se transfieren a la estructura WorkingData, por
lo que los valores de la estructura UserData no se aplican.
FB Polyline no emite el valor de interpolación en el parámetro Output, ya que la estructura WorkingData
no contiene datos de línea poligonal válidos. En el parámetro Output se emite el valor de salida sustitutivo
configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones si se ejecuta la comprobación de los datos de la
línea poligonal:
• 2 ≤ [Link] ≤ 50
• [Link][j].x < [Link][j+1].x con índice j = 1..([Link] – 1)
• -3.402823e+38 ≤ [Link][i].x ≤ 3.402823e+38 con índice i = 1..[Link]­
Points
• -3.402823e+38 ≤ [Link][i].y ≤ 3.402823e+38 con índice i = 1..[Link]­
Points
• [Link][i].x y [Link][i].y son valores REAL válidos (≠ NaN) con índice i = 1..UserDa­
[Link]
Información adicional:
Los datos de la línea poligonal de la estructura UserData se comprueban si:
• El parámetro Validate está ajustado a TRUE mientras el parámetro Reset está ajustado a FALSE.
o bien
• Polyline se llama por primera vez con el parámetro Reset = FALSE después de cambiar el estado opera­
tivo de la CPU de STOP a RUN.
Tenga en cuenta que todas las variables de las estructuras UserData y WorkingData son no remanentes.
Estas variables se inicializan con los valores de arranque después de cada cambio del estado operativo de
la CPU de STOP a RUN.

10.6 SplitRange

10.6.1 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de SplitRange:

CPU FW SplitRange
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 459
Instrucciones
10.6 SplitRange

10.6.2 Descripción de SplitRange

Descripción
La instrucción SplitRange convierte el valor de entrada en un valor de salida. El valor de
entrada está en el rango de valores limitado por Points.x1 y Points.x2. El valor de salida está
en el rango de valores limitado por Points.y1 y Points.y2.
La figura siguiente muestra la característica de un ejemplo de configuración de la instrucción
SplitRange:
Output

Points.y2

Points.y1

Points.x1 Points.x2 Input


Use SplitRange si necesita regular un proceso que es influenciado por varios actuadores.
SplitRange divide el rango de valores de salida del regulador PID en varios subrangos. Asigne
a cada actuador un subrango. El programa de usuario llama el bloque una vez por subrango.
El valor de entrada de cada instancia de SplitRange está conectado con el valor de salida del
regulador PID.
La figura siguiente muestra a modo de ejemplo un lazo de regulación con dos instancias de
SplitRange y dos actuadores:

3,'B 6SOLW5DQJHB
,QSXW 2XWSXW ,QSXW 2XWSXW
$FWXDWRUB
6HWSRLQW

6SOLW5DQJHB
,QSXW 2XWSXW
$FWXDWRUB

Validez de los datos de SplitRange


Las parejas de valores de la estructura Points definen el rango de valores de entrada y salida
de SplitRange. Las dos parejas de valores están en el rango estático del bloque SplitRange.

Regulación PID
460 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.6 SplitRange

SplitRange comprueba en cada llamada si se cumplen las condiciones siguientes para que los
valores válidos estén disponibles para el cálculo del valor de salida:
• Points.x1 < Points.x2
• Points.x1, Points.y1, Points.x2 y Points.y2 están dentro del rango de valores admisible
-3.402823e+38 a 3.402823e+38
• Points.x1, Points.y1, Points.x2 y Points.y2 son valores REAL válidos (≠ NaN [Link].
16#7FFF_FFFF)
Si no se cumplen una o varias condiciones no es posible calcular de forma correcta el valor de
salida. En el parámetro ErrorBits se emite un mensaje de error al efecto.
El ajuste predeterminado de los valores x e y con 0.0 no es una configuración válida. Para
utilizar las variables para el cálculo del valor de salida, asigne valores válidos a las variables.

Comportamiento de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se pone a FALSE:
• La entrada de habilitación EN está puesta a TRUE y el parámetro Output se ha definido con
un valor de salida sustitutivo en caso de mensajes de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está puesta a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Llamada
En un OB o FC, SplitRange se llama como DB de instancia individual. En un FB, SplitRange
puede llamarse como DB de instancia individual, como DB multiinstancia o como DB de
instancia de parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de
interfaz de parametrización o puesta en marcha. SplitRange se parametriza directamente
mediante el DB de instancia y se pone en marcha por medio de una tabla de observación del
programa de usuario en la CPU o HMI.

Arranque
La variables en el rango estático de SplitRange no son remanentes. Estas variables se
inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU
de STOP a RUN.
Si modifica los valores actuales en la estructura Points en el modo online, y desea conservar
estos valores tras cambiar el estado operativo de la CPU de STOP a RUN, guarde estos valores
en los valores de arranque del bloque de datos.

Comportamiento en caso de error


La instrucción SplitRange detecta diversos errores que pueden producirse durante el cálculo
del valor de salida. Pese a la presencia de errores, el resultado del cálculo puede emitirse en la
salida. Si debido a un error no es posible calcular correctamente el valor de salida, en la salida
se emitirá un valor de salida sustitutivo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 461
Instrucciones
10.6 SplitRange

Si se produce un error que no permite calcular correctamente el valor de salida, en la variable


ErrorMode deberá definir el valor de salida sustitutivo de la siguiente manera:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último resultado válido del cálculo del valor de salida
0.0 en caso de que no haya ningún resultado válido
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emite 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores del tipo de datos REAL. Solo
entonces se emite el valor de salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si el
parámetro Reset = TRUE está activado, el valor del parámetro SubstituteOutput se emite
en el parámetro Output.
El parámetro Error indica si hay algún un error pendiente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits muestra qué errores se han
producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro
Reset o ErrorAck.

10.6.3 Parámetros de entrada SplitRange

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo en los siguientes ca­
teOutput sos:
• Reset = TRUE
o bien
• si no es posible calcular correctamente el valor de salida debido a un error
con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode está puesto al
valor 1.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo del valor de sa­
lida.

Regulación PID
462 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.6 SplitRange

10.6.4 Parámetros de salida SplitRange

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 463) muestra qué mensajes de error existen.
ErrorBits es remanente y se desactiva con un flanco ascendente en Reset o Erro­
rAck .
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.

10.6.5 Variables estáticas SplitRange

Variable Tipo de datos Ajuste predeter­ Descripción


minado
Points AuxFct_SplitRang­ - Datos de nodo
e_Points
Points.x1 REAL 0.0 Valor x del nodo 1
Rango admisible: Points.x1 < Points.x2
Points.y1 REAL 0.0 Valor y del nodo 1
Points.x2 REAL 0.0 Valor x del nodo 2
Rango admisible: Points.x1 < Points.x2
Points.y2 REAL 0.0 Valor y del nodo 2
ErrorMode INT 0 Selección del valor de salida sustitutivo en caso de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida válido
Rango admisible: de 0 a 2

10.6.6 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.
En SplitRange, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 463
Instrucciones
10.6 SplitRange

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
SplitRange reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida.
– Si Reset = TRUE, se emite la SubstituteOutput
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• Input
• SubstituteOutput
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
SplitRange reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar, se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, SplitRange
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
Los parámetros SubstituteOutput o Input, que se utilizan como valor de salida, no tienen ningún valor
REAL válido.
Reacción a errores:
La salida se ajusta a 0.0.
Solución:
Asegúrese de que el parámetro que se utiliza como valor de salida sea un valor REAL válido (≠ NaN, p. ej.,
16#7FFF_FFFF). El parámetro que se utiliza como valor de salida depende de Reset y ErrorMode:

Regulación PID
464 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

ErrorBits Descripción

(DW#16#...)
0001_0000 Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Posibles causas de error:
• Hay una o varias variables con valores no válidos en la estructura Points.
• El cálculo del valor de salida da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
1. Points.x1 < Points.x2
2. Points.x1, Points.y1, Points.x2 y Points.y2 están en el rango de valores admisible de -3.402823e+38 a
3.402823e+38
3. Points.x1, Points.y1, Points.x2 y Points.y2 son valores REAL válidos (≠ NaN [Link]. 16#7FFF_FFFF)
Información adicional:
Tenga en cuenta que todas las variables de la estructura Points no son remanentes. Estas variables se ini­
cializan con los valores de arranque después de cada cambio del estado operativo de la CPU de STOP a
RUN.

10.7 RampFunction

10.7.1 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de RampFunction:

CPU FW RampFunction
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

10.7.2 Descripción de RampFunction

Descripción
La instrucción RampFunction limita la velocidad de cambio de una señal. RampFunction emite
un salto de señal en la entrada como función de rampa del valor de salida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 465
Instrucciones
10.7 RampFunction

Use RampFunction para evitar saltos de señal en los casos siguientes, por ejemplo:
• Entre la fuente de consigna y la entrada de consigna del regulador, para alcanzar una
respuesta de regulación más suave sin influir en la respuesta a perturbaciones.
• Entre la salida del regulador y la entrada del actuador, para proteger el actuador, por
ejemplo un motor con engranaje, o el proceso.
Pueden ajustarse los siguientes valores límite para la velocidad de modificación:
• Velocidad de modificación ascendente en el rango de valores positivo
• Velocidad de modificación descendente en el rango de valores positivo
• Velocidad de modificación ascendente en el rango de valores negativo
• Velocidad de modificación descendente en el rango de valores negativo
Adicionalmente, la instrucción RampFunction limita el valor de salida al valor límite inferior y
superior.
Cuando se alcanza el límite de la velocidad de cambio o el límite inferior o superior,
RampFunction pone el bit de salida correspondiente a TRUE.

Regulación PID
466 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

Diagrama de funcionamiento
La figura siguiente muestra la instrucción RampFunction y a modo de ejemplo un diagrama
de funcionamiento:

5DPS)XQFWLRQ

,QSXW 2XWSXW
6XEVWLWXWH2XWSXW
3RVLWLYH5LVLQJ6OHZ5DWHB$FWLYH
(UURU$FN
5HVHW 3RVLWLYH)DOOLQJ6OHZ5DWHB$FWLYH

1HJDWLYH5LVLQJ6OHZ5DWHB$FWLYH

1HJDWLYH)DOOLQJ6OHZ5DWHB$FWLYH

8SSHU/LPLWB$FWLYH

/RZHU/LPLWB$FWLYH

(UURU%LWV

(UURU


5HVHW


8SSHU/LPLWB 
$FWLYH 

/RZHU/LPLWB 
$FWLYH 
3RVLWLYH5LVLQJ 
6OHZ5DWHB$FWLYH 

3RVLWLYH)DOOLQJ 
6OHZ5DWHB$FWLYH 

1HJDWLYH5LVLQJ 
6OHZ5DWHB$FWLYH 

1HJDWLYH)DOOLQJ 
6OHZ5DWHB$FWLYH

W

,QSXW
8SSHU/LPLW
6XEVWLWXWH2XWSXW


W
2XWSXW
/RZHU/LPLW

Llamada
En un OB o FC, RampFunction se llama como DB de instancia individual. En un FB,
RampFunction puede llamarse como DB de instancia individual, como DB multiinstancia o
como DB de instancia de parámetro.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 467
Instrucciones
10.7 RampFunction

Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de


interfaz de parametrización o puesta en marcha. RampFunction se parametriza directamente
mediante el DB de instancia y se pone en marcha por medio de una tabla de observación del
programa de usuario en la CPU o HMI.

Arranque
La variables en el rango estático de RampFunction no son remanentes. Estas variables se
inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU
de STOP a RUN.
Si modifica los valores actuales de los valores límite en el modo online, y desea conservar
estos valores tras cambiar el estado operativo de la CPU, guarde estos valores en los valores
de arranque del bloque de datos.
En la variable StartMode determine el valor de inicialización para el parámetro Output.
El valor de inicialización se emite durante la primera llamada de RampFunction tras el
• cambio de estado operativo de la CPU.
o bien
• tras ejecutar "Cargar valores de arranque como valores actuales" (solo con la opción
"Todos los valores", no con la opción "Solo valores de ajuste")
en el parámetro Output.
Durante las siguientes llamadas, RampFunction calcula el valor de salida a partir de este valor
de inicialización, sobre la base del valor de entrada y de los valores límite para la velocidad de
cambio.
La tabla siguiente muestra la dependencia entre la variable StartMode y el parámetro Output.
Los valores de la columna Output se emiten en el parámetro Output tras el cambio de estado
operativo de la CPU:

StartMode Output Ejemplo


0 Valor del parámetro Input ,QSXW

2XWSXW

&38 &38 W
6723 581

1 Valor del parámetro SubstituteOutput ,QSXW 6XEVWLWXWH2XWSXW

2XWSXW

&38 &38 W
6723 581

2 Permanece inalterado. El parámetro Out­ ,QSXW


put es remanente. 2XWSXW

&38 &38 W
6723 581

Regulación PID
468 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

StartMode Output Ejemplo


3 0.0 ,QSXW

2XWSXW

&38 &38 W
6723 581

4 Valor de la variable LowerLimit.


,QSXW

2XWSXW

/RZHU/LPLW

&38 &38 W
6723 581

5 Valor de la variable UpperLimit. 8SSHU/LPLW


,QSXW

2XWSXW

&38 &38 W
6723 581

Lo siguiente es válido adicionalmente para todos los valores de la variable StartMode:


• Si los valores de las variables UpperLimit y LowerLimit son válidos, el valor de inicialización
se limita al rango de valores de dichas variables. En este caso se emite el valor de
inicialización en el parámetro Output.
• Si el valor de inicialización no es un valor REAL válido, se emite el valor de salida
sustitutivo en el parámetro Output. El valor de salida sustitutivo se configura con la
variableErrorMode. El valor de salida sustitutivo se limita mediante el rango de valores de
las variables UpperLimit y LowerLimit. Si el valor de salida sustitutivo tampoco es un valor
REAL válido, se emite 0.0 en el parámetro Output. En las siguientes llamadas, la
instrucción calcula el valor de salida a partir de este valor de salida sustitutivo.
• La variable StartMode solo es efectiva si durante la primera llamada de la instrucción está
ajustado el parámetro Reset = FALSE y al mismo tiempo no hay ningún error con el
mensaje de error ErrorBits ≥ 16#0002_0000. Si el parámetro Reset = TRUE está activado,
el valor del parámetro SubstituteOutput se emite en el parámetro Output. Si está presente
un error con el mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se
emite el valor de salida sustitutivo configurado en la variable ErrorMode.

Comportamiento en caso de error


La instrucción RampFunction detecta diversos errores que pueden producirse durante el
cálculo del valor de salida. Pese a la presencia de errores, el resultado del cálculo puede
emitirse en la salida. Si debido a un error no es posible calcular correctamente el valor de
salida, en la salida se emitirá un valor de salida sustitutivo.
Si se produce un error que no permite calcular correctamente el valor de salida, en la variable
ErrorMode deberá definir el valor de salida sustitutivo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 469
Instrucciones
10.7 RampFunction

La tabla siguiente muestra la dependencia entre el valor de la variable ErrorMode y el valor de


salida sustitutivo, que RampFunction emite en el parámetro Output:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último valor de salida válido en el parámetro Output
3 0.0
4 Valor de la variable LowerLimit.
5 Valor de la variable UpperLimit.
Lo siguiente es válido adicionalmente para todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emitirá 0.0 como valor de
salida.
• Si los valores de las variables UpperLimit y LowerLimit son válidos, el valor de salida
sustitutivo se limita al rango de valores de estas variables. En este caso se emite el valor de
salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si el
parámetro Reset = TRUE está activado, el valor del parámetro SubstituteOutput se emite
en el parámetro Output.
• Si hay pendiente un error que impide un cálculo correcto del valor de salida,
RampFunction cambia en el parámetro Output el valor de salida calculado por el valor de
salida sustitutivo. Dependiendo del valor de la variable ErrorMode puede aparecer un salto
en el valor de salida.
El parámetro Error indica si hay algún un error pendiente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits muestra qué errores se han
producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro
Reset o ErrorAck.

10.7.3 Funcionamiento de la RampFunction

Limitar la velocidad de cambio


Es posible configurar cuatro valores límite para la velocidad de cambio de la señal de entrada.
El valor límite momentáneamente activo depende de los factores siguientes:
• Signo del valor de salida en el parámetro Output
• Sentido de cambio del importe del valor de salida en el parámetro Output
La tabla siguiente muestra las variables efectivas para el valor límite de la velocidad de
cambio en función del parámetro Output:

Output Variable efectiva


Output ≥ 0 y |Output| ascendente PositiveRisingSlewRate
Output ≥ 0 y |Output| descendente PositiveFallingSlewRate
Output < 0 y |Output| ascendente NegativeRisingSlewRate
Output < 0 y |Output| descendente NegativeFallingSlewRate

Regulación PID
470 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

El importe de los valores límite de la velocidad de cambio define el cambio máximo del valor
de salida por segundo.
Ejemplo:
Para este ejemplo rige el escenario siguiente:
• PositiveRisingSlewRate = 10.0
• Tiempo de llamada de RampFunction = 0.1 s
• Input > Output ≥ 0.0
Resultado:
El valor de salida Output aumenta en 1.0 por llamada (10.0 por segundo), hasta que se ha
alcanzado el valor del parámetro Input.
Para desactivar la limitación de la velocidad de cambio para una o varias áreas, fije la variable
correspondiente al valor 3.402823e+38.
Si el valor de salida Output está limitado actualmente por un valor límite de la velocidad de
cambio, RampFunction fija el bit de salida correspondiente a TRUE:
• PositiveRisingSlewRate_Active
• PositiveFallingSlewRate_Active
• NegativeRisingSlewRate_Active
• NegativeFallingSlewRate_Active
Si el parámetro Reset está fijado a TRUE, los valores límite de la velocidad de cambio no son
efectivos. De este modo los saltos en el parámetro SubstituteOutput conducen a saltos en el
parámetro Output.
RampFunction comprueba en cada llamada si se cumplen las condiciones siguientes para las
variables PositiveRisingSlewRate, PositiveFallingSlewRate, NegativeRisingSlewRate y
NegativeFallingSlewRate:
• Los valores están dentro del rango de valores admisible, por encima de 0.0 hasta
3.402823e+38
• Los valores son valores REAL válidos (≠ NaN p. ej. 16#7FFF_FFFF)
Si no se cumplen una o varias condiciones, se emite el valor de salida sustitutivo en el
parámetro Output. En el parámetro ErrorBits se emite el mensaje de error al efecto.

Limitar el valor de salida


El valor de salida Output está limitado siempre al rango de valores de las variables UpperLimit
y LowerLimit, siempre y cuando dichas variables tengan valores válidos.
Si el valor de salida Output está limitado actualmente por este rango de valores,
RampFunction pone el bit de salida correspondiente a TRUE:
• UpperLimit_Active
• LowerLimit_Active
La limitación del valor de salida tiene mayor prioridad que la limitación de la velocidad de
cambio. Por consiguiente, los cambios en las variables UpperLimit y LowerLimit provocan
saltos en el valor de salida Output cuando es necesario para mantener los valores límite de las
variables UpperLimit y LowerLimit. En este caso no se tiene en cuenta la limitación de la
velocidad de cambio.
Ejemplo:
Si el valor límite UpperLimit se reduce de 100.0 a 80.0 mientras los valores de los parámetros
Input y Output están a 90.0, el valor de salida Output salta a 80.0. El valor de salida Output

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 471
Instrucciones
10.7 RampFunction

salta a 80.0 independientemente de si con ello se infringe el valor límite configurado para la
velocidad de cambio.
RampFunction comprueba en cada llamada si se cumplen las condiciones siguientes:
• LowerLimit < UpperLimit
• LowerLimit y UpperLimit están dentro del rango de valores admisible -3.402823e+38 a
3.402823e+38
• LowerLimit y UpperLimit son valores REAL válidos (≠ NaN [Link]. 16#7FFF_FFFF)
Si no se cumplen una o varias condiciones, se emite el valor de salida sustitutivo en el
parámetro Output. En el parámetro ErrorBits se emite el mensaje de error al efecto.
Adicionalmente, RampFunction comprueba en cada llamada si el valor de salida Output tiene
el rango de valores admisible de un tipo de datos REAL, que es de -3.402823e+38 a
3.402823e+38. Si el cálculo del valor de salida da como resultado un valor REAL no válido, en
el parámetro Output se emite el valor de salida sustitutivo. El valor de salida sustitutivo se
configura en la variable ErrorMode.

Comportamiento de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a
FALSE:
• La entrada de habilitación EN está puesta a TRUE y el parámetro Output se ha definido con
un valor de salida sustitutivo en caso de mensajes de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Medición automática del tiempo de ciclo


Para calcular la velocidad de cambio del valor de salida, RampFunction necesita el tiempo que
ha transcurrido desde la última llamada de RampFunction.
En el ajuste predeterminado, el tiempo de ciclo se mide automáticamente y se emite en la
variable [Link] a partir de la segunda llamada. RampFunction mide el tiempo de
ciclo en cada llamada de la instrucción, con lo que puede utilizarse en ciclos de llamada que
no son equidistantes, p. ej. en el OB1.
Tenga en cuenta que las llamadas condicionadas de la instrucción, los puntos de parada
activos o la carga de instantáneas como valores actuales con medición automática del tiempo
de ciclo hacen aumentar el valor del tiempo de ciclo.
Si la medición del tiempo de ciclo no proporciona ningún resultado válido, RampFunction
calcula el valor de salida actual con el último tiempo de ciclo válido. Adicionalmente,
RampFunction emite un mensaje de error en el parámetro ErrorBits.
Si se desactiva la medición automática del tiempo de ciclo poniendo la variable
[Link] = FALSE, hay que especificar manualmente el tiempo de ciclo
en la variable [Link]. RampFunction comprueba la validez de la variable
[Link] en cada llamada.

Regulación PID
472 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

Medición automática del tiempo de ciclo con puntos de parada


Si hay puntos de parada activos entre dos llamadas de RampFunction, la medición automática
del tiempo de ciclo da como resultado el tiempo real que ha transcurrido entre dos llamadas.
Si hay un punto de parada activo, la CPU está en estado operativo PARADA.

NOTA
Los puntos de parada activos prolongan la distancia temporal entre dos llamadas de
RampFunction.
Con una mayor distancia temporal entre dos llamadas aumenta también el cambio máximo
permitido del valor de salida en el parámetro Output.

Ejemplo:
Para este ejemplo rige el escenario siguiente:
• PositiveRisingSlewRate = 10.0
• Tiempo de llamada de RampFunction = 0.1 s
• Input > Output ≥ 0.0
Resultado sin puntos de parada:
El valor de salida Output aumenta en 1.0 por llamada, hasta que se ha alcanzado el valor del
parámetro Input.
Resultado con un punto de parada activo durante diez segundos:
En la próxima llamada, el valor de salida Output aumenta en 100.0.
Si no se requiere el cálculo del valor de salida basado en el tiempo real con puntos de parada
activos, ejecute los pasos siguientes:
• Desactive la medición automática del tiempo de ciclo poniendo la variable
[Link] = FALSE.
• Introduzca el tiempo de ciclo manualmente en la variable [Link].

10.7.4 Parámetros de entrada RampFunction

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo en los siguientes ca­
teOutput sos:
• Reset = TRUE
o bien
• si no es posible calcular correctamente el valor de salida debido a un error
con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode está puesto al
valor 1.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 473
Instrucciones
10.7 RampFunction

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo del valor de sa­
lida.

10.7.5 Parámetros de salida RampFunction

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
PositiveRisingSlewRa­ BOOL FALSE Si PositiveRisingSlewRate_Active = TRUE, el valor de salida está limitado
te_Active actualmente por PositiveRisingSlewRate .
PositiveFallingSlewR­ BOOL FALSE Si PositiveFallingSlewRate_Active = TRUE, el valor de salida está limitado
ate_Active actualmente por PositiveFallingSlewRate.
NegativeRisingSlewR­ BOOL FALSE Si NegativeRisingSlewRate_Active = TRUE, el valor de salida está limita­
ate_Active do actualmente por NegativeRisingSlewRate.
NegativeFallingSlew­ BOOL FALSE Si NegativeFallingSlewRate_Active = TRUE, el valor de salida está limita­
Rate_Active do actualmente por NegativeFallingSlewRate.
UpperLimit_Active BOOL FALSE Si UpperLimit_Active = TRUE, el valor de salida está limitado actualmen­
te por UpperLimit.
LowerLimit_Active BOOL FALSE Si LowerLimit_Active = TRUE, el valor de salida está limitado actualmen­
te por LowerLimit.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 475) muestra qué mensajes de error exis­
ten. ErrorBits es remanente y se desactiva con un flanco ascendente en
Reset o ErrorAck .
Error BOOL FALSE Si Error = TRUE, actualmente hay al menos un error pendiente.

10.7.6 Variables estáticas RampFunction

Variable Tipo de datos Ajuste predeter­ Descripción


minado
PositiveRisingSlewRate REAL 10.0 Valor límite para la velocidad de cambio del valor de salida por
segundo en el rango positivo con valor absoluto ascendente.
Con PositiveRisingSlewRate = 3.402823e+38, esta limitación
de la velocidad de cambio está desactivada.
Rango de valores admisible: > 0.0
PositiveFallingSlewRate REAL 10.0 Valor límite para la velocidad de cambio del valor de salida por
segundo en el rango positivo con valor absoluto descendente.
Con PositiveFallingSlewRate = 3.402823e+38, esta limitación
de la velocidad de cambio está desactivada.
Rango de valores admisible: > 0.0

Regulación PID
474 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

Variable Tipo de datos Ajuste predeter­ Descripción


minado
NegativeRisingSlewRate REAL 10.0 Valor límite para la velocidad de cambio del valor de salida por
segundo en el rango negativo con valor absoluto ascendente.
Con NegativeRisingSlewRate = 3.402823e+38, esta limitación
de la velocidad de cambio está desactivada.
Rango de valores admisible: > 0.0
NegativeFallingSlewRa­ REAL 10.0 Valor límite para la velocidad de cambio del valor de salida por
te segundo en el rango negativo con valor absoluto descenden­
te.
Con NegativeFallingSlewRate = 3.402823e+38, esta limita­
ción de la velocidad de cambio está desactivada.
Rango de valores admisible: > 0.0
UpperLimit REAL 100.0 Límite superior del valor de salida
Rango de valores admisible: > LowerLimit
LowerLimit REAL 0.0 Límite inferior del valor de salida
Rango de valores admisible: < UpperLimit
ErrorMode INT 2 Selección del valor de salida sustitutivo en caso de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida válido
• 3 = 0.0
• 4 = LowerLimit
• 5 = UpperLimit
Rango admisible: 0 a 5
StartMode INT 2 Selección del valor de salida para la primera llamada de la ins­
trucción
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida
• 3 = 0.0
• 4 = LowerLimit
• 5 = UpperLimit
Rango admisible: 0 a 5
CycleTime AuxFct_CycleTime - Datos del tiempo de ciclo
[Link] REAL 0.1 Distancia temporal entre dos llamadas de la instrucción en se­
gundos
Rango de valores admisible: > 0.0
[Link]­ BOOL TRUE Medición automática del tiempo de ciclo
surement • FALSE = desactivada
• TRUE = activada

10.7.7 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 475
Instrucciones
10.7 RampFunction

Con RampFunction, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
RampFunction reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida.
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0002 Causa del error:
La medición del tiempo de ciclo da como resultado un valor no válido mientras se ejecuta el cálculo del va­
lor de salida (Reset = FALSE).
Reacción a errores:
Si ya se ha medido un valor válido del tiempo de ciclo, RampFunction calcula el valor de salida a partir de
este último valor de la variable [Link].
Si previamente no se ha medido ningún valor válido del tiempo de ciclo, RampFunction sigue emitiendo
en el parámetro Output el valor de salida que se ha configurado con la variable StartMode.

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
RampFunction reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar, se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
• La limitación del valor de salida sigue siendo efectivo mientras las variables LowerLimit y
UpperLimit tengan valores válidos.
• La limitación de la velocidad de cambio deja de ser efectiva. En uno de los escenarios
siguientes pueden darse saltos en el valor de salida:
– En el momento en que se detecta el error, RampFunction cambia del valor de salida
calculado al valor de salida sustitutivo. La posibilidad de que en tal caso se produzca un
salto depende del valor de la variable ErrorMode.
– El valor de salida sustitutivo se modifica mientras es efectivo.

Regulación PID
476 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.7 RampFunction

En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000,


RampFunction reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
El parámetro SubstituteOutput u otra variable que se utiliza como valor de salida, no tiene ningún valor
REAL válido.
Reacción a errores:
La salida se pone a 0.0 y queda limitada por las variables LowerLimit y UpperLimit.
Solución:
Asegúrese de que la variable que se utiliza como valor de salida sea un valor REAL válido (≠ NaN, p. ej.,
16#7FFF_FFFF). La variable que se utiliza como valor de salida depende de Reset y ErrorMode:
Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
FALSE 4 LowerLimit
FALSE 5 UpperLimit
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode y que­
da limitado por las variables UpperLimit y LowerLimit.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠ NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Causa del error:
El cálculo del valor de salida da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode y que­
da limitado por las variables UpperLimit y LowerLimit.
Solución:
Compruebe todas las variables implicadas en el cálculo del valor de salida:
• Input
• PositiveRisingSlewRate
• PositiveFallingSlewRate
• NegativeRisingSlewRate
• NegativeFallingSlewRate
• [Link]
Estas variables tienen valores válidos. El cálculo del valor de salida falla en esta combinación de variables.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 477
Instrucciones
10.7 RampFunction

ErrorBits Descripción

(DW#16#...)
0008_0000 Causa del error:
La variable LowerLimit o UpperLimit no tiene ningún valor válido.
Reacción a errores:
En el parámetro Output se emite el valor siguiente en función del parámetro Reset:
• Reset = FALSE
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
• Reset = TRUE
En el parámetro Output se emite el valor del parámetro SubstituteOutput.
En ambos casos, el parámetro Ouput se limita al rango de valores del tipo de datos REAL, que va de
-3.402823e+38 a 3.402823e+38.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
1. LowerLimit < UpperLimit
2. LowerLimit y UpperLimit están dentro del rango de valores admisible -3.402823e+38 a 3.402823e+38
3. LowerLimit y UpperLimit son valores REAL válidos (≠ NaN [Link]. 16#7FFF_FFFF)
0010_0000 Causa del error:
Como mínimo una de las siguientes variables tiene valores no válidos mientras se ejecuta el cálculo del va­
lor de salida (Reset = FALSE):
1. PositiveRisingSlewRate
2. PositiveFallingSlewRate
3. NegativeRisingSlewRate
4. NegativeFallingSlewRate
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode y que­
da limitado por las variables UpperLimit y LowerLimit.
Solución:
Asegúrese de que se cumplen las siguientes condiciones para las cuatro variables citadas anteriormente:
• Los valores están dentro del rango de valores admisible, por encima de 0.0 hasta 3.402823e+38
• Los valores son valores REAL válidos (≠ NaN p. ej. 16#7FFF_FFFF)
0020_0000 Causa del error:
La variable (configurada con StartMode) para la inicialización del parámetro Output en la primera llamada
de la instrucción no tiene ningún valor REAL válido.
Reacción a errores:
En la primera llamada de la instrucción se emite en el parámetro Output el valor de salida sustitutivo con­
figurado en la variable ErrorMode y queda limitado por las variables LowerLimit y UpperLimit. En las si­
guientes llamadas, RampFunction calcula el valor de salida a partir de este valor de salida sustitutivo.
Solución:
Asegúrese de que la variable para la inicialización del parámetro Output sea un valor REAL válido (≠ NaN,
p. ej., 16#7FFF_FFFF). Si está ajustado Reset = FALSE, la inicialización será efectiva la primera vez que se
llame la instrucción después de cambiar el estado operativo de la CPU de STOP a RUN. La variable que se
utiliza para la inicialización del parámetro Output depende de StartMode:
• StartMode = 1: Substitute Output
• StartMode = 2: Output
0040_0000 Causa del error:
La variable [Link] no tiene ningún valor válido mientras se ejecuta el cálculo del valor de salida
(Reset = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode y que­
da limitado por las variables UpperLimit y LowerLimit.
Solución:

Regulación PID
478 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

ErrorBits Descripción

(DW#16#...)
Asegúrese de que se cumplen las siguientes condiciones:
• 0.0 < [Link] ≤ 3.402823e+38
• [Link] es un valor REAL válido (≠ NaN [Link]. 16#7FFF_FFFF)
Información adicional:
Para un cálculo automático del valor de la variable [Link], ponga la variable [Link]­
Measurement a TRUE.

10.8 RampSoak

10.8.1 Compatibilidad con CPU y FW


La siguiente tabla indica en qué CPU puede usarse qué versión de RampSoak:

CPU FW RampSoak
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

10.8.2 Descripción de RampSoak

Descripción
Con la instrucción RampSoak se genera un valor de salida que sigue un perfil configurable en
función del tiempo. Cada punto de este perfil tiene un valor de destino y un valor de tiempo.
Cuando se ejecuta el perfil, se alcanza el valor de destino del punto actual dentro del valor de
tiempo.
La figura siguiente muestra un perfil con 4 puntos:

1PJOU<>7BMVF

0VUQVU
1PJOU<>7BMVF
U

1PJOU<>7BMVF
1PJOU<>7BMVF

1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<>


5JNF 5JNF 5JNF 5JNF


&OBCMF


La instrucción RampSoak puede utilizarse, por ejemplo, para preparar un perfil de consigna


para la regulación de un proceso de temperatura.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 479
Instrucciones
10.8 RampSoak

Cálculo del valor de salida


El valor de salida se calcula con una interpolación entre el punto actual y el punto anterior de
acuerdo con la siguiente fórmula:
3FNBJOJOH5JNF@1PJOU
0VUQVU U
1PJOU<J>7BMVF‫ ܢ‬1PJOU<J>7BMVF‫ܢ‬1PJOU<J‫>ܢ‬7BMVF

1PJOU<J>5JNF

La i representa el valor del parámetro CurrentPoint.


A partir del tiempo transcurrido, se determina qué puntos del perfil se utilizan actualmente
para calcular el valor de salida.

Llamada
En un OB o FC, RampSoak se llama como DB de instancia individual. En un FB, RampSoak
puede llamarse como DB de instancia individual, como DB multiinstancia o como DB de
instancia de parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de
interfaz de parametrización o puesta en marcha. RampSoak se parametriza directamente con
el DB de instancia y se pone en marcha por medio de una tabla de observación del programa
de usuario en la CPU o HMI.

Arranque
Las variables en el rango estático de RampSoak y, por tanto, los datos de perfil de las
estructuras UserData y WorkingData no son remanentes. Estas variables se inicializan con los
valores de arranque después de cada cambio del estado operativo de la CPU de STOP a RUN.
Si modifica los valores actuales de la estructura UserData en el modo online, y desea
conservar estos valores tras cambiar el estado operativo de la CPU de STOP a RUN, guarde
estos valores en los valores de arranque del bloque de datos.
La primera vez que se llame la instrucción RampSoak después de cambiar el estado operativo
de la CPU de STOP a RUN, se comprobará automáticamente la validez de los datos de la
estructura UserData. Si la comprobación es satisfactoria, los datos se transmitirán a la
estructura WorkingData.
Con la variable StartMode (Página 488) se define el comportamiento de arranque de la
instrucción RampSoak en la primera llamada después de cambiar el estado operativo de la
CPU de STOP a RUN.

Regulación PID
480 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

Comportamiento en caso de error


Si el valor inicial no se puede calcular correctamente, en su lugar la instrucción RampSoak
emite un valor de salida sustitutivo y un error con el mensaje de error ErrorBits >=
16#0002_0000. La variable ErrorMode (Página 497) permite definir el valor de salida
sustitutivo de la manera siguiente:

ErrorMo­ Output
de
0 Valor de la variable [Link]
Asegúrese de que los datos de perfil de UserData se han comprobado con el parámetro Vali­
date y se han transferido a WorkingData. Si los datos de perfil nunca se han comprobado ni
transferido, se utiliza el valor predeterminado 0.0 de [Link].
1 Valor del parámetro SubstituteOutput
2 El último de valor de salida válido de la ejecución de perfil.
0.0 si no hay ningún valor de salida válido para la ejecución de perfil.
3 0.0
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emitirá 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores –3.402823e+38 ..
+3.402823e+38 del tipo de datos REAL. Solo entonces se emite el valor de salida
sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si el
ajuste del parámetro es Reset = TRUE, en el parámetro Output se emite el valor del
parámetro SubstituteOutput o bien 0.0.
El parámetro Error indica si hay algún un error presente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits muestra qué errores se han
producido. ErrorBits es remanente y solo se resetea con un flanco positivo en el parámetro
Reset o ErrorAck.

10.8.3 Funcionamiento de RampSoak

[Link] Configuración y comprobación de los datos de perfil

Configuración de los datos de perfil


El perfil se configura en la estructura estática UserData.
Esta contiene los elementos siguientes:
• NumberOfUsedPoints
Número de nodos utilizados para el perfil.
• StartValue
Valor de salida opcional si la ejecución de perfil se inicia (Página 488), se para (Página
491) o finaliza.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 481
Instrucciones
10.8 RampSoak

• Point
La matriz con 50 elementos contiene pares de valores de los nodos Point[i].Value y
Point[i].Time:
– Point[i].Value
El valor de salida cambia gradualmente a este valor mientras el punto esté activo, y
alcanza este valor dentro del tiempo Point[i].Time.
– Point[i].Time
Este valor define la duración del punto en segundos.
La figura siguiente muestra un perfil con 6 puntos. El punto número 5 tiene una duración de
0 segundos, lo cual provoca un salto del valor de salida.

5PUBM5JNF

3FNBJOJOH5JNF@5PUBM

3FNBJOJOH5JNF@1PJOU

1PJOU<>7BMVF
1PJOU<>7BMVF 0VUQVU
1PJOU<>7BMVF

1PJOU<>7BMVF

U
1PJOU<>7BMVF

1PJOU<>7BMVF

1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<>


5JNF 5JNF 5JNF 5JNF 5JNFT 5JNF

Comprobación de los datos de perfil


Antes de utilizar los datos de perfil para la ejecución del perfil, es necesario comprobar los
datos de perfil en la estructura UserData.
La comprobación se inicia de la manera siguiente:
• Cuando el parámetro Validate se ajusta a TRUE.
• Cuando el parámetro Enable se ajusta por primera vez a TRUE después de cambiar el
estado operativo de la CPU de STOP a RUN y antes no se ha realizado una comprobación
de los datos de perfil.
Para los datos de perfil de la estructura UserData se comprueban las siguientes condiciones:
• 1 ≤ [Link] ≤ 50
• NextPoint ≤ [Link]

Regulación PID
482 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

• Si la ejecución de perfil está activada (Enable = TRUE):


– CurrentPoint ≤ [Link]
• -3.402823e+38 ≤ [Link] ≤ 3.402823e+38
• -3.402823e+38 ≤ [Link][i].Value ≤ 3.402823e+38 con índice i =
1..[Link]
• 0.0 ≤ [Link][i].Time ≤ 3.402823e+38 con índice i =
1..[Link]
• 0.0 < [Link][1].Time + [Link][2].Time +…+
[Link][[Link]].Time ≤ 3.402823e+38

Efectos de la ejecución del perfil y posibles mensajes de error


Si se cumplen las condiciones, los nuevos datos de perfil de la estructura UserData se
transfieren a la estructura WorkingData y se utilizan para la ejecución del perfil. El parámetro
TotalTime se actualiza. El parámetro RemainingTime_Total se actualiza cuando se ejecuta el
perfil.

NOTA
El valor y la duración del punto actual se guardan temporalmente y, aunque se comprueben
nuevos datos de perfil, no cambian hasta que el punto actual ha terminado. Los nuevos datos
de perfil se utilizan desde el comienzo del siguiente punto.

Si una de las condiciones no se cumple, los datos de perfil que había hasta ese momento en
la estructura WorkingData no cambian. Hay un error con el mensaje de error ErrorBits =
16#0000_0004 (Página 497).
Si el parámetro Enable o el parámetro Next se ajusta a TRUE pero en la estructura
WorkingData no hay datos de perfil válidos, se produce un error con el mensaje de error
ErrorBits = 16#0008_0000 (Página 497).

NOTA
Si los valores predeterminados que hay en la estructura UserData no se modifican antes de la
comprobación, la comprobación de los datos de perfil falla.

NOTA
Los valores offline de la estructura WorkingData no se pueden modificar. Si desea modificar
los datos de perfil, edite primero la estructura UserData y a continuación ajuste el parámetro
Validate = TRUE.

[Link] Ejecución del perfil

Para ejecutar un perfil y calcular su valor de salida se necesitan datos de perfil comprobados y
un flanco positivo en el parámetro Enable.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 483
Instrucciones
10.8 RampSoak

Iniciar y detener la ejecución del perfil: Parámetro Enable


La ejecución del perfil y el cálculo del valor de salida se inician con un flanco positivo en el
parámetro Enable. La ejecución del perfil comienza con el punto indicado en el parámetro de
entrada/salida NextPoint.
La ejecución del perfil se detiene con un flanco negativo en el parámetro Enable.
Si el perfil se detiene o se ejecuta en su totalidad, el parámetro de entrada/salida NextPoint se
ajusta automáticamente a 1. Así pues, la siguiente ejecución de perfil comienza desde el
primer punto del perfil si el parámetro de entrada/salida NextPoint no se modifica.
El comportamiento de inicio, parada y finalización de la ejecución del perfil se puede
configurar con las variables estáticas StartMode (Página 488) y StopMode (Página 491).
La ejecución del perfil únicamente determina el valor de salida en el parámetro Output
cuando Reset = FALSE. Si se ha ajustado RESET = TRUE, una ejecución de perfil ya activada
prosigue en segundo plano.
La siguiente figura muestra cómo los parámetros de entrada Enable, Reset y Hold definen la
ejecución del perfil:

5PUBM5JNF
3FNBJOJOH5JNF@5PUBM

3FNBJOJOH5JNF@1PJOU

4VCTUJUVUF0VUQVU
1PJOU<>7BMVF


0VUQVU
1PJOU<>7BMVF
U

1PJOU<>7BMVF
1PJOU<>7BMVF

1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<> 1PJOU<>


5JNF 5JNF 5JNF 5JNF 5JNF 5JNF
$VSSFOU1PJOU         
/FYU1PJOU         

&OBCMF


)PME


3FTFU


Regulación PID
484 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

En este ejemplo se muestra el comportamiento de inicio y parada de la ejecución del perfil


(identificada con *) con el ajuste predeterminado StartMode = StopMode = 2 (comenzar
desde el último valor de salida / mantenerlo).

Pausar la ejecución del perfil: Parámetro Hold


Con el parámetro Hold = TRUE se pone en pausa la ejecución de perfil activada.
El parámetro Hold = TRUE tiene el efecto siguiente:
• Los parámetros Output, CurrentPoint, NextPoint, RemainingTime_Total y
RemainingTime_Point no cambian.
• Un flanco en los parámetros Enable o Next se retarda y no surte efecto hasta que Hold =
FALSE.
• Si el parámetro Reset cambia de TRUE a FALSE, el parámetro Hold repercute los cambios al
parámetro Output. Encontrará más información en la descripción del parámetro Reset.
El parámetro Hold no influye en el procesamiento de los parámetros Validate y ErrorAck.

Sobrescribir el valor de salida: Parámetro Reset


El parámetro Reset = TRUE restablece la instrucción y sobrescribe el valor de salida del
parámetro Output con el valor del parámetro SubstituteOutput.
Una ejecución de perfil activada prosigue en segundo plano. Continúa siendo posible utilizar
los parámetros Enable, Hold y Next.
Si la ejecución de perfil todavía está activa (Enable=TRUE y el perfil todavía no se ha ejecutado
completamente) y el parámetro Reset cambia de TRUE a FALSE, el comportamiento del
parámetro Hold depende de lo siguiente:
• Hold = FALSE
El parámetro Output cambia gradualmente de SubstituteOutput al valor del punto actual,
que se alcanza durante el tiempo restante del punto actual (RemainingTime_Point).
• Hold = TRUE
El parámetro Output pasa de SubstituteOutput al valor de la ejecución de perfil pausada.
Si la ejecución de perfil ya no está activa (Enable=FALSE o el perfil se ha ejecutado
completamente) y el parámetro Reset cambia de TRUE a FALSE, el parámetro Output adquiere
el último valor de la ejecución de perfil.

Proseguir la ejecución de perfil con un determinado punto: Parámetro Next


Con un flanco positivo en el parámetro Next, la ejecución del perfil prosigue con
Point[NextPoint].
Si la ejecución de perfil está desactivada, el parámetro Next = TRUE tiene el siguiente efecto:
• El parámetro Output adopta el valor de Point[NextPoint].Value.
• El parámetro CurrentPoint adopta el valor de NextPoint.
• El parámetro NextPoint se incrementa. Si NextPoint es el último punto del perfil, el valor
de NextPoint será 1.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 485
Instrucciones
10.8 RampSoak

Si la ejecución de perfil está activada, el parámetro Next = TRUE tiene el siguiente efecto:
• El parámetro Output cambia gradualmente de su valor actual al valor de
Point[NextPoint].Value, el cual se alcanza durante Point[NextPoint].Time.
• El parámetro RemainingTime_Point adopta el valor de Point[NextPoint].Time.
• El parámetro RemainingTime_Total se actualiza según corresponda.
• El parámetro CurrentPoint adopta el valor de NextPoint.
• El parámetro NextPoint se incrementa. Si NextPoint es el último punto del perfil, el nuevo
valor depende de StopMode. Encontrará más información en la descripción del parámetro
NextPoint.

NOTA
La primera vez que se llama la instrucción RampSoak después de cambiar el estado operativo
de la CPU de STOP a RUN, el comportamiento está determinado por StartMode. El parámetro
Next únicamente surte efecto con las llamadas subsiguientes.

Encontrará un ejemplo con el parámetro Next en el apartado siguiente "Proseguir la ejecución


de perfil con un determinado punto: Parámetro NextPoint".

Proseguir la ejecución de perfil con un determinado punto: Parámetro NextPoint


El parámetro NextPoint define con qué punto se prosigue la ejecución del perfil.
Si el punto actual ha finalizado, la instrucción RampSoak actualiza el valor del parámetro
NextPoint automáticamente al siguiente punto del perfil.
Modificando el valor del parámetro NextPoint se puede especificar que la ejecución del perfil
prosiga con otro punto.
El parámetro NextPoint puede influir en el comportamiento de la ejecución del perfil de la
manera siguiente cuando está desactivada:
• Con un flanco positivo en el parámetro Next, el parámetro Output adopta el valor de
Point[NextPoint].Value.
• Cuando se inicia la ejecución del perfil, NextPoint representa el primer CurrentPoint. El
parámetro Output cambia gradualmente del valor definido por StartMode al valor de
Point[NextPoint].Value, el cual se alcanza durante Point[NextPoint].Time.
El parámetro NextPoint puede influir en el comportamiento de la ejecución del perfil de la
manera siguiente cuando está activada:
• Sin flanco positivo en el parámetro Next:
Cuando el punto actual ha finalizado, se prosigue con NextPoint.
• Con flanco positivo en el parámetro Next:
Se prosigue directamente con NextPoint.

Regulación PID
486 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

Mientras el último punto de la ejecución del perfil está activo (CurrentPoint =


[Link]), StopMode determina de la siguiente manera cómo el
valor de NextPoint se actualiza automáticamente:
• StopMode <> 4
Mientras el último punto está activo: NextPoint = CurrentPoint =
[Link].
La ejecución del perfil ha finalizado después del último punto.
• StopMode = 4
Mientras el último punto está activo: NextPoint = 1.
La ejecución del perfil comienza de nuevo después del último punto.
Si el perfil se detiene o se ejecuta en su totalidad, el parámetro de entrada/salida NextPoint se
ajusta automáticamente a 1. Así pues, la siguiente ejecución de perfil comienza desde el
primer punto del perfil si el parámetro de entrada/salida NextPoint no se modifica.
La siguiente figura muestra cómo los parámetros Next y NextPoint definen la ejecución del
perfil. El símbolo → indica que el cambio automático de NextPoint se sobrescribe con una
entrada de usuario:

5PUBM5JNF
3FNBJOJOH5JNF@5PUBM

3FNBJOJOH5JNF@1PJOU

1PJOU<>7BMVF

1PJOU<>7BMVF
0VUQVU U

1PJOU<>7BMVF
1PJOU<>7BMVF

<>5JNF <>5JNF <>5JNF


<>5JNF <>5JNF <>5JNF <>5JNF
$VSSFOU1PJOU            
/FYU1PJOU   ࠞ     ࠞ  ࠞ  

&OBCMF 


/FYU 

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 487
Instrucciones
10.8 RampSoak

En este ejemplo se muestra el comportamiento de parada de la ejecución del perfil con


StopMode <> 4.

[Link] Configurar el comportamiento de arranque: Variable estática StartMode

Con la variable StartMode se define el comportamiento de la instrucción RampSoak en los


casos siguientes:
• Cuando la instrucción RampSoak se ejecuta por primera vez después de cambiar el estado
operativo de la CPU de STOP a RUN (Reiniciar).
• Se inicia la ejecución del perfil.
• Al ejecutar "Cargar valores de arranque como valores actuales" (solo con la opción "Todos
los valores", no con la opción "Solo valores de ajuste")
Son posibles los siguientes ajustes de la variable StartMode:
• StartMode = 0
El parámetro Output adopta el valor de [Link].
La ejecución del perfil comienza desde este valor cuando después de un reinicio de la CPU
está ajustado Enable = TRUE o cuando Enable cambia de FALSE a TRUE.
La figura siguiente muestra el inicio de la ejecución del perfil y el reinicio de la CPU con
StartMode = 0:

8PSLJOH%BUB4UBSU7BMVF

 
0VUQVU

 

4VCTUJUVUF0VUQVU

&OBCMF
$16 $16 $16 $16 U
4501 36/ 4501 36/

NOTA
Con este ajuste, los datos del perfil se deben comprobar al producirse la primera llamada
de la instrucción después de reiniciarse la CPU y se deben aplicar según WorkingData. De
lo contrario, se utiliza el valor predeterminado 0.0 de [Link].

Regulación PID
488 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

• StartMode = 1
El parámetro Output adopta el valor de SubstituteOutput.
La ejecución del perfil comienza desde este valor cuando después de un reinicio de la CPU
está ajustado Enable = TRUE o cuando Enable cambia de FALSE a TRUE.
La figura siguiente muestra el inicio de la ejecución del perfil y el reinicio de la CPU con
StartMode = 1:

8PSLJOH%BUB4UBSU7BMVF

 
0VUQVU

 

4VCTUJUVUF0VUQVU

&OBCMF
$16 $16 $16 $16 U
4501 36/ 4501 36/

• StartMode = 2
El parámetro Output no cambia.
La ejecución del perfil comienza desde el valor inalterado del parámetro Output cuando
después de un reinicio de la CPU está ajustado Enable = TRUE o cuando Enable cambia de
FALSE a TRUE.
La figura siguiente muestra el inicio de la ejecución del perfil y el reinicio de la CPU con
StartMode = 2:

8PSLJOH%BUB4UBSU7BMVF

 
0VUQVU

 

4VCTUJUVUF0VUQVU

&OBCMF
$16 $16 $16 $16 U
4501 36/ 4501 36/

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 489
Instrucciones
10.8 RampSoak

• StartMode = 3
El parámetro Output adopta el valor 0.0.
La ejecución del perfil comienza desde este valor cuando después de un reinicio de la CPU
está ajustado Enable = TRUE o cuando Enable cambia de FALSE a TRUE.
La figura siguiente muestra el inicio de la ejecución del perfil y el reinicio de la CPU con
StartMode = 3:

8PSLJOH%BUB4UBSU7BMVF

 
0VUQVU

 

4VCTUJUVUF0VUQVU

&OBCMF
$16 $16 $16 $16 U
4501 36/ 4501 36/

• StartMode = 4
El parámetro Output no cambia.
La ejecución del perfil prosigue cuando después de reiniciarse la CPU continúa estando
ajustado Enable = TRUE y la ejecución del perfil estaba activada antes del reinicio.
La ejecución del perfil comienza desde el valor inalterado del parámetro Output cuando
después de un reinicio de la CPU está ajustado Enable = TRUE y la ejecución del perfil
estaba desactivada antes del reinicio, o cuando Enable cambia de FALSE a TRUE.
La figura siguiente muestra el inicio de la ejecución del perfil y el reinicio de la CPU con
StartMode = 4:

8PSLJOH%BUB4UBSU7BMVF


0VUQVU

  4VCTUJUVUF0VUQVU

&OBCMF
$16 $16 $16 $16 U
4501 36/ 4501 36/

Lo siguiente se aplica además a todos los valores de la variable StartMode:


• El parámetro Enable, la variable StartMode y los datos de perfil de las estructuras UserData
y WorkingData no son remanentes. Estas variables se inicializan con los valores de
arranque después de cada cambio del estado operativo de la CPU de STOP a RUN.
Asegúrese de que la primera vez que se llama la instrucción RampSoak después de
cambiar el estado operativo de la CPU de STOP a RUN, estas variables presentan los valores
adecuados para obtener el comportamiento deseado.
• El valor seleccionado mediante StartMode se limita al rango de valores del tipo de datos
REAL. Solo entonces se emite dicho valor en el parámetro Output.

Regulación PID
490 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

• Si el valor seleccionado mediante StartMode no es un valor REAL válido, se emite el valor


de salida sustitutivo en el parámetro Output. El valor de salida sustitutivo se configura
mediante la variable ErrorMode y se limita al rango de valores del tipo de datos REAL. Si la
ejecución del perfil está activada, comienza desde este valor de salida sustitutivo.
• La variable StartMode solo afecta al parámetro Output si está ajustado el parámetro Reset
= FALSE y al mismo tiempo no hay ningún error con el mensaje de error ErrorBits ≥
16#0002_0000. Si está ajustado el parámetro Reset = TRUE, el valor del parámetro
SubstituteOutput se emite en el parámetro Output. Si está presente un error con el
mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se emite el valor de
salida sustitutivo configurado en la variable ErrorMode.

[Link] Configurar el comportamiento de parada: Variable estática StopMode

Con la variable StopMode se define el comportamiento de la instrucción RampSoak en los


casos siguientes:
• La ejecución del perfil ha finalizado y se ha alcanzado el último punto.
• La ejecución del perfil se ha detenido mediante reseteo de Enable.
El valor que se ajusta con StopMode se utiliza como valor de salida hasta que se inicia una
nueva acción, p. ej., el inicio de la ejecución del perfil.
Son posibles los siguientes ajustes de la variable StopMode:
• StopMode = 0
El parámetro Output adopta el valor de [Link].
La siguiente figura muestra cómo la ejecución de un perfil de 5 puntos termina con
StopMode = 0 y se detiene:

8PSLJOH%BUB4UBSU7BMVF

0VUQVU  


4VCTUJUVUF0VUQVU
  &OBCMF

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 491
Instrucciones
10.8 RampSoak

• StopMode = 1
El parámetro Output adopta el valor de SubstituteOutput.
La siguiente figura muestra cómo la ejecución de un perfil de 5 puntos termina con
StopMode = 1 y se detiene:

8PSLJOH%BUB4UBSU7BMVF

0VUQVU  

  &OBCMF 4VCTUJUVUF0VUQVU

• StopMode = 2
El parámetro Output adopta el último valor válido de la ejecución del perfil.
La siguiente figura muestra cómo la ejecución de un perfil de 5 puntos termina con
StopMode = 2 y se detiene:

8PSLJOH%BUB4UBSU7BMVF

0VUQVU  

  &OBCMF 4VCTUJUVUF0VUQVU

• StopMode = 3
El parámetro Output adopta el valor 0.0.
La siguiente figura muestra cómo la ejecución de un perfil de 5 puntos termina con
StopMode = 3 y se detiene:

8PSLJOH%BUB4UBSU7BMVF

0VUQVU  

  &OBCMF 4VCTUJUVUF0VUQVU

Regulación PID
492 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

• StopMode = 4
Si la ejecución del perfil termina con el último punto, se reinicia automáticamente y
prosigue con [Link][1]. La ejecución del perfil se repite mientras no se resetee
Enable.
Si la ejecución del perfil se detiene con Enable = FALSE, el parámetro Output adopta el
último valor válido de la ejecución del perfil.
La siguiente figura muestra cómo la ejecución de un perfil de 5 puntos termina con
StopMode = 4 y se detiene:

8PSLJOH%BUB4UBSU7BMVF

0VUQVU    

 

  &OBCMF   4VCTUJUVUF0VUQVU

Lo siguiente se aplica además a todos los valores de la variable StopMode:


• El valor seleccionado mediante StopMode se limita al rango de valores del tipo de datos
REAL. Solo entonces se emite dicho valor en el parámetro Output.
• Si el valor seleccionado mediante StopMode no es un valor REAL válido, se emite y luego
se mantiene el valor de salida sustitutivo en el parámetro Output. El valor de salida
sustitutivo se configura mediante la variable ErrorMode y se limita al rango de valores del
tipo de datos REAL.
• La variable StopMode solo afecta al parámetro Output si está ajustado el parámetro Reset
= FALSE y al mismo tiempo no hay ningún error con el mensaje de error ErrorBits ≥
16#0002_0000. Si está ajustado el parámetro Reset = TRUE, el valor del parámetro
SubstituteOutput se emite en el parámetro Output. Si está presente un error con el
mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se emite el valor de
salida sustitutivo configurado en la variable ErrorMode.

[Link] Medición del tiempo de ciclo

Medición automática del tiempo de ciclo


Para calcular el valor de salida, RampSoak necesita el tiempo que ha transcurrido desde la
última llamada de RampSoak.
En el ajuste predeterminado, el tiempo de ciclo se mide automáticamente y se emite en la
variable [Link] a partir de la segunda llamada. RampSoak mide el tiempo de ciclo
en cada llamada de la instrucción, con lo que puede utilizarse en ciclos de llamada que no son
equidistantes, p. ej., en el OB1.
Tenga en cuenta que las llamadas condicionadas de la instrucción, los puntos de parada
activos o la carga de instantáneas como valores actuales con medición automática del tiempo
de ciclo hacen aumentar el valor del tiempo de ciclo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 493
Instrucciones
10.8 RampSoak

Si la medición del tiempo de ciclo no da ningún resultado válido, RampSoak calcula el valor de


salida actual con el último tiempo de ciclo válido. Además, RampSoak emite un mensaje de
error en el parámetro ErrorBits.
Si se desactiva la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE, hay que especificar manualmente el tiempo de ciclo
en la variable [Link]. RampSoak comprueba la validez de la variable
[Link] en cada llamada.

Medición automática del tiempo de ciclo con puntos de parada


Si hay puntos de parada activos entre dos llamadas de RampSoak, la medición automática del
tiempo de ciclo da como resultado el tiempo transcurrido realmente entre dos llamadas. Si
hay un punto de parada activo, la CPU está en estado operativo PARADA.

NOTA
Los puntos de parada activos hacen aumentar la distancia temporal entre dos llamadas
de RampSoak.
Cuanto mayor sea la distancia temporal entre dos llamadas, mayor será el cambio del valor de
salida en el parámetro Output. En función del tiempo transcurrido y los datos de perfil
configurados, pueden omitirse puntos.

Si no se requiere el cálculo del valor de salida basado en el tiempo real con puntos de parada
activos, ejecute los pasos siguientes:
• Desactive la medición automática del tiempo de ciclo ajustando la
variable [Link] = FALSE.
• Introduzca el tiempo de ciclo manualmente en la variable [Link].

[Link] Comportamiento de habilitación EN/ENO

Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a


FALSE:
• La entrada de habilitación EN está ajustada a TRUE y hay un error presente con el mensaje
de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
En todos los demás casos, la salida de habilitación ENO se ajusta a TRUE.

10.8.4 Parámetros de entrada de RampSoak

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Enable BOOL FALSE La ejecución del perfil y el cálculo del valor de salida se inician con un flanco po­
sitivo en el parámetro Enable.
La ejecución del perfil se detiene con un flanco negativo en el parámetro Ena­
ble.
Hold BOOL FALSE Si Hold está ajustado a TRUE, se pone en pausa la ejecución del perfil. El valor
de salida se mantiene constante.

Regulación PID
494 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Next BOOL FALSE La ejecución del perfil continúa con Point[NextPoint] con un flanco positivo en
el parámetro Next.
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo si actualmente está
teOutput activo Reset = TRUE o uno de los siguientes modos:
• ErrorMode = 1
• StartMode = 1
• StopMode = 1
Validate BOOL FALSE Si Validate está ajustado a TRUE, se comprueba la validez de los datos de perfil
de UserData y dichos datos se transfieren a WorkingData.
ErrorAck BOOL FALSE Borra los mensajes de error.
• Flanco FALSE -> TRUE
ErrorBits se resetea.
Reset BOOL FALSE Resetea la instrucción.
• Flanco FALSE -> TRUE
ErrorBits se resetea.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida. Si al mismo tiempo se ejecuta el perfil, pro­
sigue en segundo plano.
• Mientras Reset esté ajustado a FALSE, se determinará el valor de salida de la
ejecución del perfil.

10.8.5 Parámetros de salida de RampSoak

Parámetro Tipo de da­ Ajuste prede­ Descripción


tos terminado
Output REAL 0.0 Valor de salida
El valor de salida es remanente.
CurrentPoint INT 0 Número del punto que se está utilizando actualmente para la ejecución del per­
fil y el cálculo del valor de salida.
TotalTime REAL 0.0 Tiempo total del perfil (suma de los tiempos de todos los puntos utilizados) en
segundos.
RemainingTi­ REAL 0.0 Tiempo restante del perfil en segundos.
me_Total
RemainingTi­ REAL 0.0 Tiempo restante del punto actual en segundos.
me_Point
ErrorBits DWORD 16#0 El parámetro ErrorBits muestra qué mensajes de error existen.
ErrorBits es remanente y se restablece en caso de flanco positivo en Reset o
ErrorAck.
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.

Consulte
también
Parámetro ErrorBits (Página 497)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 495
Instrucciones
10.8 RampSoak

10.8.6 Parámetros de entrada/salida de RampSoak

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
NextPoint Int 1 Número del siguiente punto utilizado.
Rango de valores admisible: 1 a [Link]

10.8.7 Variables estáticas de RampSoak

Variable Tipo de datos Ajuste predeter­ Descripción


minado
UserData AuxFct_RampSoa­ - En la estructura UserData se introducen los datos del perfil.
k_Profile Los datos del perfil de la estructura UserData pueden editarse.
Las modificaciones que se realicen en esta estructura no afectarán a
la ejecución del perfil hasta que se inicien los procesos de compro­
bación y copia de los datos en la estructura WorkingData.
[Link]­ INT 0 Número de nodos utilizados del perfil.
rOfUsedPoints Rango de valores admisible: de 1 a 50
[Link]­ REAL 0.0 StartValue se utiliza como valor de salida opcional si actualmente es­
lue tá activo uno de los siguientes modos:
• ErrorMode = 0
• StartMode = 0
• StopMode = 0
[Link] Array[1..50] of - Nodos del perfil.
AuxFct_RampSoa­
k_Point
UserDa­ REAL 0.0 Valor de salida de este punto.
[Link][i].Value
UserDa­ REAL 0.0 Duración de este punto en segundos.
[Link][i].Time Rango de valores admisible: Point[i].Time ≥ 0.0
WorkingData AuxFct_RampSoa­ - En la estructura WorkingData se muestran los datos de perfil actual­
k_Profile mente efectivos.
Los datos de perfil de la estructura WorkingData no pueden editarse.
WorkingDa­ INT 0 Número de nodos utilizados del perfil.
[Link]­ Rango de valores admisible: de 1 a 50
sedPoints
WorkingDa­ REAL 0.0 [Link] se utiliza como valor de salida opcional si
[Link] actualmente está activo uno de los siguientes modos:
• ErrorMode = 0
• StartMode = 0
• StopMode = 0
WorkingDa­ Array[1..50] of - Nodos del perfil.
[Link] AuxFct_RampSoa­
k_Point
WorkingDa­ REAL 0.0 Valor de salida de este punto.
[Link][i].Value
WorkingDa­ REAL 0.0 Duración de este punto en segundos.
[Link][i].Time Rango de valores admisible: Point[i].Time ≥ 0.0

Regulación PID
496 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

Variable Tipo de datos Ajuste predeter­ Descripción


minado
ErrorMode INT 2 Selección del valor de salida sustitutivo en caso de error
• 0 = [Link]
• 1 = SubstituteOutput
• 2 = último valor de salida válido de la ejecución del perfil
• 3 = 0.0
Rango de valores admisible: de 0 a 3
Si el valor de ErrorMode no está dentro del rango admisible, enton­
ces ErrorMode = 2.
StartMode INT 2 Selección del comportamiento de arranque
• 0 = [Link]
• 1 = SubstituteOutput
• 2 = comenzar desde el último valor de salida
• 3 = 0.0
• 4 = continuar desde el último valor de salida
Rango de valores admisible: de 0 a 4
Si el valor de StartMode no está dentro del rango admisible, enton­
ces StartMode = 2.
StopMode 2 Selección del comportamiento de parada
• 0 = [Link]
• 1 = SubstituteOutput
• 2 = último valor de salida válido de la ejecución del perfil
• 3 = 0.0
• 4 = modo cíclico
Rango de valores admisible: de 0 a 4
Si el valor de StopMode no está dentro del rango admisible, enton­
ces StopMode = 2.
CycleTime AuxFct_CycleTime - Datos del tiempo de ciclo
[Link] REAL 0.1 Tiempo de ciclo en segundos (intervalo entre 2 llamadas)
Rango de valores admisible: [Link] > 0.0
[Link]­ BOOL TRUE Medición automática del tiempo de ciclo
bleMeasurement • FALSE = desactivada
• TRUE = activada

10.8.8 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.
Con RampSoak, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
Se puede calcular el valor de salida a pesar del error.
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000
El error impide el cálculo del valor de salida. Se emite un valor de salida sustitutivo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 497
Instrucciones
10.8 RampSoak

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
RampSoak reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida mediante la ejecución del perfil
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si ErrorBits < 16#0001_0000 y Reset = FALSE, el valor de salida se limita mientras es determinado por
StartMode o StopMode. En ese caso, compruebe los siguientes parámetros dependiendo del valor ajusta­
do en las variables StartMode o StopMode:
• [Link]
• SubstituteOutput
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• [Link]
• SubstituteOutput
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.
Información adicional:
Si desea modificar [Link], edite primero [Link] y a continuación ajuste el
parámetro Validate = TRUE. No modifique los datos de la estructura WorkingData manualmente.
0000_0002 Causa del error:
La medición del tiempo de ciclo da como resultado un valor no válido mientras la ejecución del perfil está
activada (Enable = TRUE).
Reacción a errores:
Si ya se ha medido un valor válido del tiempo de ciclo, RampSoak prosigue la ejecución del perfil desde es­
te último valor de la variable [Link].
Si previamente no se ha medido ningún valor válido del tiempo de ciclo, RampSoak sigue emitiendo en el
parámetro Output el valor de salida que se ha configurado con la variable StartMode.
0000_0004 Causa del error:
Una o más variables de la estructura UserData tienen valores no válidos mientras se comprueban los datos
del perfil.
Reacción a errores:
Los datos de perfil de la estructura UserData no se transfieren a la estructura WorkingData, por lo que los
cambios realizados en la estructura UserData no se aplican.
Solución:
Asegúrese de que se cumplen las siguientes condiciones cuando se ejecuta la comprobación de los datos
de perfil:
• 1 ≤ [Link] ≤ 50
• -3.402823e+38 ≤ [Link][i].Value ≤ 3.402823e+38 con índice i = 1..[Link]­
Points
• 0.0 ≤ [Link][i].Time ≤ 3.402823e+38 con índice i = 1..[Link]
• -3.402823e+38 ≤ [Link] ≤ 3.402823e+38
• NextPoint ≤ [Link]

Regulación PID
498 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.8 RampSoak

ErrorBits Descripción

(DW#16#...)
• 0.0 < [Link][1].Time + [Link][2].Time +…+ [Link][[Link]­
Points].Time ≤ 3.402823e+38
• Si está activada la ejecución del perfil: CurrentPoint ≤ [Link]
Información adicional:
Los datos de perfil de la estructura UserData se comprueban en los siguientes casos:
• Cuando el parámetro Validate está ajustado a TRUE.
• O cuando RampSoak se llama por primera vez con el parámetro Enable = TRUE después de cambiar el es­
tado operativo de la CPU de STOP a RUN y previamente no se ha realizado ninguna comprobación de los
datos de perfil.
Tenga en cuenta que todas las variables de las estructuras UserData y WorkingData son no remanentes.
Estas variables se inicializan con los valores de arranque después de cada cambio del estado operativo de
la CPU de STOP a RUN.
0000_0008 Causa del error:
El parámetro NextPoint tiene un valor no válido.
Reacción a errores:
NextPoint se restablece al último valor válido.
Solución:
Asegúrese de que se cumple la siguiente condición:
• 1 ≤ NextPoint ≤ [Link]

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
RampSoak reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. La tabla siguiente muestra la
reacción del parámetro Output y la ejecución del perfil.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, RampSoak
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se determina el valor de salida mediante la ejecución del perfil
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
El parámetro SubstituteOutput o la variable [Link] se está utilizando actualmente para de­
terminar el valor de salida, pero no tiene un valor REAL válido.
Reacción a errores:
Si Reset = TRUE y SubstituteOutput es un valor REAL válido, en el parámetro Output se continúa emitiendo
SubstituteOutput.
En el resto de los casos, el parámetro Output se ajusta a 0.0.
Solución:
Asegúrese de que el parámetro SubstituteOutput y la variable [Link] sean valores REAL váli­
dos (≠NaN, p. ej., 16#7FFF_FFFF). La variable que se utiliza depende de Reset, los errores presentes y Error­
Mode:

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 499
Instrucciones
10.8 RampSoak

ErrorBits Descripción

(DW#16#...)
0001_0000 Reset ErrorBits ErrorMode Variable utilizada
- >= 16#0002_0000 0 [Link]
- >= 16#0002_0000 1 SubstituteOutput
TRUE - - SubstituteOutput
Información adicional:
Si desea modificar [Link], edite primero [Link] y a continuación ajuste el pa­
rámetro Validate = TRUE. No modifique los datos de la estructura WorkingData manualmente.
0004_0000 Causa del error:
El cálculo durante la ejecución del perfil da como resultado un valor REAL no válido.
Reacción a errores:
La ejecución del perfil se cancela.
Si Reset = FALSE, en el parámetro Output se emite y luego se mantiene el valor de salida sustitutivo que se
haya configurado en la variable ErrorMode.
Si Reset = TRUE, en el parámetro Output se continúa emitiendo SubstituteOutput.
Solución:
Compruebe la validez de los valores REAL de la estructura WorkingData y, si es necesario, inicie de nuevo la
ejecución del perfil.
Información adicional:
Si desea modificar los datos de perfil, edite primero la estructura UserData y a continuación ajuste el paráme­
tro Validate = TRUE. No modifique los datos de la Struktur WorkingData manualmente.
0008_0000 Causa del error:
El parámetro Enable o el parámetro Next está ajustado a TRUE pero en la estructura WorkingData no hay da­
tos de perfil válidos.
Reacción a errores:
El parámetro Enable y el parámetro Next no tienen efecto.
Si Reset = FALSE, en el parámetro Output se emite el valor de salida sustitutivo que se haya configurado en la
variable ErrorMode.
Si Reset = TRUE, en el parámetro Output se continúa emitiendo SubstituteOutput.
Solución:
Introduzca datos de perfil válidos en la estructura UserData y a continuación ajuste el parámetro Validate =
TRUE. De este modo, los datos de perfil se transfieren a la estructura WorkingData después de una comproba­
ción.
Información adicional:
Si el parámetro Enable o el parámetro Next todavía están ajustados a TRUE, pasan a tener efecto en cuanto
haya datos de perfil válidos en la estructura WorkingData. No se necesita otro flanco positivo.
Tenga en cuenta que todas las variables de las estructuras UserData y WorkingData son no remanentes. Estas
variables se inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU de
STOP a RUN.
0010_0000 Causa del error:
La variable (configurada con StopMode) que determina el valor de salida cuando la ejecución del perfil ha fi­
nalizado o se ha parado no tiene un valor REAL válido.
Reacción a errores:
Si Reset = FALSE, en el parámetro Output se emite y luego se mantiene el valor de salida sustitutivo que se
haya configurado en la variable ErrorMode.
Si Reset = TRUE, en el parámetro Output se continúa emitiendo SubstituteOutput.
Solución:
Asegúrese de que la variable sea un valor REAL válido (≠ NaN, p. ej., 16#7FFF_FFFF). La variable que se utiliza
depende de StopMode:
• StopMode = 0: [Link]
• StopMode = 1: SubstituteOutput
Información adicional:

Regulación PID
500 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

ErrorBits Descripción

(DW#16#...)
Si desea modificar [Link], edite primero [Link] y a continuación ajuste el pa­
rámetro Validate = TRUE. No modifique los datos de la estructura WorkingData manualmente.
0020_0000 Causa del error:
La variable (configurada con StartMode) que determina el valor de salida cuando se llama la instrucción por
primera vez o se inicia la ejecución del perfil no tiene un valor REAL válido.
Reacción a errores:
Si Reset = FALSE, en el parámetro Output se emite y luego se mantiene el valor de salida sustitutivo que se
haya configurado en la variable ErrorMode.
Si la ejecución del perfil está activada (Enable = TRUE), se comienza a partir de este valor de salida sustitutivo.
Si Reset = TRUE, en el parámetro Output se continúa emitiendo SubstituteOutput.
Solución:
Asegúrese de que la variable sea un valor REAL válido (≠ NaN, p. ej., 16#7FFF_FFFF). La variable que se utiliza
depende de StartMode:
• StartMode = 0: [Link]
• StartMode = 1: SubstituteOutput
• StartMode = 2: Output
Información adicional:
Si desea modificar [Link], edite primero [Link] y a continuación ajuste el pa­
rámetro Validate = TRUE. No modifique los datos de la estructura WorkingData manualmente.
0040_0000 Causa del error:
La variable [Link] tiene un valor no válido mientras la ejecución del perfil está activada (Enable =
TRUE).
Reacción a errores:
La ejecución del perfil se pone en pausa.
Si Reset = FALSE, en el parámetro Output se emite el valor de salida sustitutivo que se haya configurado en la
variable ErrorMode.
Si Reset = TRUE, en el parámetro Output se continúa emitiendo SubstituteOutput.
La ejecución del perfil prosigue en cuanto este error deja de estar presente. Si la ejecución del perfil se detie­
ne previamente, el valor de salida sustitutivo se mantiene.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
• 0.0 < [Link] ≤ 3.402823e+38
• [Link] es un valor REAL válido (≠ NaN p. ej., 16#7FFF_FFFF)
Información adicional:
Para un cálculo automático del valor de la variable [Link], ajuste la variable [Link]­
surement a TRUE.

10.9 Filter_PT1

10.9.1 Compatibilidad con CPU y FW


La siguiente tabla indica en qué CPU puede usarse qué versión de Filter_PT1:

CPU FW Filter_PT1
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 501
Instrucciones
10.9 Filter_PT1

10.9.2 Descripción Filter_PT1

Descripción
La instrucción Filter_PT1 es un elemento de transferencia proporcional con un retardo de
primer orden, también denominado elemento PT1.
Filter_PT1 se puede utilizar para los siguientes fines:
• Filtro paso bajo para atenuar las frecuencias más altas de una señal, como, por ejemplo, el
ruido.
• Elemento de retardo para filtrar saltos de señal, por ejemplo de la consigna o el valor de
salida de un regulador.
• Bloque de simulación de proceso para implementar un lazo de regulación cerrado en la
CPU. Esto permite, por ejemplo, probar reguladores antes de la puesta en marcha.
Se pueden especificar los siguientes parámetros de filtro:
• Ganancia proporcional (Gain)
• Constante de tiempo de retardo (Lag)

NOTA
Diferencias entre un elemento PT1 de tiempo continuo y Filter_PT1
Dado que Filter_PT1 se ejecuta en un programa de PLC, Filter_PT1 constituye una
implementación de tiempo discreto de un elemento PT1. Los sistemas de tiempo discreto no
pueden presentar las mismas características que su correspondiente modelo de tiempo
continuo. Sin embargo, en función del tiempo de ciclo, los sistemas de tiempo discreto
pueden imitar correctamente un sistema de tiempo continuo: Cuanto más breve y constante
es el tiempo de ciclo, menor es la diferencia entre las características de Filter_PT1 y las
características de un elemento PT1 de tiempo continuo. Las características de un elemento
PT1 de tiempo continuo son la función de transferencia que se describe más adelante, la
respuesta en el tiempo y la respuesta de frecuencia.
Para una reproducción correcta de la respuesta de frecuencia se recomienda un tiempo de
ciclo máximo de una décima parte de la duración de periodo mínima de los componentes de
la señal de entrada. Por ejemplo, una señal con componentes de frecuencia de hasta 50 Hz
tiene una duración de periodo mínima de 20 ms. Para obtener una reproducción correcta de
la respuesta de frecuencia se recomienda un tiempo de ciclo máximo de 2 ms para este
ejemplo.

Función de transferencia de un elemento PT1


La siguiente fórmula muestra la función de transferencia de un elemento PT1, siendo s igual
al operador laplaciano:
2XWSXW V *DLQ
G(s) = ,QSXW V /DJyV

Respuesta en el tiempo de un elemento PT1


La respuesta a un salto es la reacción del valor de salida a un salto del valor de entrada.

Regulación PID
502 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

La respuesta a un salto del valor de entrada de 0 a ΔInput puede calcularse con la siguiente
fórmula:
W
 /DJ
Output(t) = ∆Input · Gain · (1 - e
La figura siguiente muestra la respuesta a un salto de un elemento PT1:

ΔInput·Gain
99.3%·ΔInput·Gain

Output(t)

63.2%·ΔInput·Gain

Input(t)
ΔInput

Lag 5·Lag t

Respuesta de frecuencia de un elemento PT1


La respuesta de frecuencia de un elemento de transferencia se describe por medio de la
respuesta de amplitud y la respuesta de fase.
La respuesta de amplitud describe la ganancia de una señal a través del elemento de
transferencia en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de amplitud de un elemento PT1:
*DLQ
|G(ω)| =
෭ ˶y/DJ t
|G(ω)| Ganancia de una señal en función de la frecuencia de circuito
ω Frecuencia de circuito

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 503
Instrucciones
10.9 Filter_PT1

La figura siguiente muestra la respuesta de amplitud de un elemento PT1:

GaindB+20dB

|G(ω)|dB

GaindB

GaindB-20dB

GaindB-40dB
0.01/Lag 0.1/Lag 1/Lag 10/Lag ω 100/Lag

La respuesta de fase describe el desfase de una señal a través del elemento de transferencia
en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de fase de un elemento PT1:
φ(ω) = -tan-1 ˶y/DJ 

φ(ω) Desfase en función de la frecuencia de circuito


ω Frecuencia de circuito

Regulación PID
504 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

La figura siguiente muestra la respuesta de fase de un elemento PT1:

90°

ϕ(ω)

45°

-45°

-90°
0.01/Lag 0.1/Lag 1/Lag 10/Lag ω 100/Lag

Llamada
En un OB o FC, Filter_PT1 se llama como DB de instancia individual. En un FB, Filter_PT1
puede llamarse como DB de instancia individual, como DB multiinstancia o como DB de
instancia de parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de
interfaz de parametrización o puesta en marcha. Filter_PT1 se parametriza directamente
mediante el DB de instancia y se pone en marcha por medio de una tabla de observación del
programa de usuario en la CPU o HMI.

Arranque
Las variables en el rango estático de Filter_PT1 no son remanentes. Estas variables se
inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU
de STOP a RUN. Si modifica los valores actuales en modo online, y desea conservar estos
valores tras cambiar el estado operativo de la CPU, guarde estos valores en los valores de
arranque del bloque de datos.
En la variable StartMode se determina el valor de inicialización para el parámetro Output.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 505
Instrucciones
10.9 Filter_PT1

El valor de inicialización se emite durante la primera llamada de Filter_PT1 tras el


• Cambio de estado operativo de la CPU
o bien
• Al ejecutar "Cargar valores de arranque como valores actuales" (solo con la opción "Todos
los valores", no con la opción "Solo valores de ajuste")
en el parámetro Output.
En las siguientes llamadas, Filter_PT1 calcula el valor de salida a partir de este valor de
inicialización, sobre la base del valor de entrada y de la configuración del filtro.
La tabla siguiente muestra la dependencia entre la variable StartMode y el parámetro Output.
Los valores de la columna Output se emiten en el parámetro Output tras el cambio de estado
operativo de la CPU:

StartMode Output Ejemplo


0 Valor del parámetro Input Input * Gain

Output
Input

CPU CPU t
STOP RUN

1 Valor del parámetro SubstituteOutput Input * Gain

Output SubstituteOutput
Input

CPU CPU t
STOP RUN

2 No cambia Input * Gain


El parámetro Output es remanente.
Ajuste estándar Output
Input
Se utiliza cuando el StartMode no está
en el rango 0...4. CPU CPU CPU CPU t
STOP RUN STOP RUN

3 0.0 Input * Gain

Output
Input

CPU CPU t
STOP RUN

4 Valor del producto Input * Gain Input * Gain

Output
Input

CPU CPU CPU CPU t


STOP RUN STOP RUN

Regulación PID
506 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

Lo siguiente se aplica además a todos los valores de la variable StartMode:


• El valor de inicialización se limita al rango de valores del tipo de datos REAL. Solo entonces
se emite el valor de inicialización en el parámetro Output.
• Si el valor de inicialización no es un valor REAL válido, se emite el valor de salida
sustitutivo en el parámetro Output. El valor de salida sustitutivo se configura con la
variable ErrorMode. El valor de salida sustitutivo se limita al rango de valores del tipo de
datos REAL antes de emitirse en el parámetro Output. Si el valor de salida sustitutivo
tampoco es un valor REAL válido, se emite 0.0 en el parámetro Output. En las siguientes
llamadas, la instrucción calcula el valor de salida a partir de este valor de salida sustitutivo.
• La variable StartMode solo es efectiva si durante la primera llamada de la instrucción está
ajustado el parámetro Reset = FALSE y al mismo tiempo no hay ningún error con el
mensaje de error ErrorBits ≥ 16#0002_0000. Si está ajustado el parámetro Reset = TRUE,
el valor del parámetro SubstituteOutput se emite en el parámetro Output. Si está presente
un error con el mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se
emite el valor de salida sustitutivo configurado en la variable ErrorMode.

Comportamiento en caso de error


La instrucción Filter_PT1 detecta diversos errores que pueden producirse durante el cálculo
del valor de salida. El resultado del cálculo puede emitirse en la salida aunque haya un error
presente. Si, debido a un error, no es posible calcular correctamente el valor de salida, en la
salida se emitirá un valor de salida sustitutivo.

Si se produce un error que no permite calcular correctamente el valor de salida, se deberá


definir el valor de salida sustitutivo en la variable ErrorMode.
La tabla siguiente muestra la dependencia entre el valor de la variable ErrorMode y el valor de
salida sustitutivo que Filter_PT1 emite en el parámetro Output:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último valor de salida de filtro válido
0.0 si no hay ningún valor de salida de filtro válido
Ajuste estándar
Se utiliza cuando ErrorMode no está en el rango 0...4
3 0.0
4 Valor del producto Input * Gain
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emite 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores del tipo de datos REAL. Solo
entonces se emite el valor de salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si está
ajustado el parámetro Reset = TRUE, el valor del parámetro SubstituteOutput se emite en
el parámetro Output.
El parámetro Error indica si hay algún un error presente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits indica qué errores se han

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 507
Instrucciones
10.9 Filter_PT1

producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro


Reset o ErrorAck.

10.9.3 Funcionamiento de Filter_PT1

Respuesta de Reset
Filter_PT1 se comporta de la siguiente manera en función del parámetro Reset:
• Si el parámetro Reset =TRUE está activado, el valor del parámetro SubstituteOutput se
emite en el parámetro Output.
• Si el parámetro Reset = FALSE está activado, el valor que se emite en el parámetro Output
se calcula por medio del algoritmo del filtro.
• Si se cambia el parámetro Reset de FALSE a TRUE, el valor del parámetro Output cambia
directamente al valor del parámetro SubstituteOutput. Este cambio puede ser brusco.
Además se restablece el parámetro ErrorBits.
• Si se cambia el parámetro Reset de TRUE a FALSE, se ajusta el algoritmo del filtro de
manera que el cambio se produce sin saltos.

Respuesta de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a
FALSE:
• La entrada de habilitación EN está ajustada a TRUE y el parámetro Output se ha definido
con un valor de salida sustitutivo en caso de mensajes de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Medición automática del tiempo de ciclo


Para calcular el valor de salida, Filter_PT1 necesita el tiempo que ha transcurrido desde la
última llamada de Filter_PT1.
En el ajuste predeterminado, el tiempo de ciclo se mide automáticamente y se emite en la
variable [Link] a partir de la segunda llamada. Filter_PT1 mide el tiempo de ciclo en
cada llamada de la instrucción, con lo que puede utilizarse en ciclos de llamada que no son
equidistantes, p. ej., en el OB1.
Tenga en cuenta que las llamadas condicionadas de la instrucción, los puntos de parada
activos o la carga de instantáneas como valores actuales con medición automática del tiempo
de ciclo hacen aumentar el valor del tiempo de ciclo. Un tiempo de ciclo excesivo se detecta
como error con el mensaje de error ErrorBits = 16#0008_0000.
Si la medición del tiempo de ciclo no da ningún resultado válido, Filter_PT1 calcula el valor de
salida actual con el último tiempo de ciclo válido. Además, Filter_PT1 emite un mensaje de
error en el parámetro ErrorBits.
Si se desactiva la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE, hay que especificar manualmente el tiempo de ciclo
en la variable [Link]. Filter_PT1 comprueba la validez de la variable
[Link] en cada llamada.

Regulación PID
508 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

Medición automática del tiempo de ciclo con puntos de parada


Si hay puntos de parada activos entre dos llamadas de Filter_PT1, la medición automática del
tiempo de ciclo da como resultado el tiempo transcurrido realmente entre dos llamadas. Si
hay un punto de parada activo, la CPU está en estado operativo PARADA.

NOTA
Los puntos de parada activos hacen aumentar la distancia temporal entre dos llamadas de
Filter_PT1.
Cuanto mayor sea la distancia temporal entre dos llamadas tanto mayor será el cambio del
valor de salida en el parámetro Output.
Por lo demás, es posible que, debido a la mayor distancia temporal, se vulnere la condición
Lag ≥ [Link]/2 y por ello se detecte un error con el mensaje de error
ErrorBits = 16#0008_0000.

Si no se requiere el cálculo del valor de salida basado en el tiempo real con puntos de parada
activos, ejecute los pasos siguientes:
• Desactive la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE.
• Introduzca el tiempo de ciclo manualmente en la variable [Link].

10.9.4 Parámetros de entrada Filter_PT1

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo si:
teOutput • Reset = TRUE
o bien
• Si no es posible calcular correctamente el valor de salida debido a un error
con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode está ajustado
al valor 1.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo del valor de sa­
lida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 509
Instrucciones
10.9 Filter_PT1

10.9.5 Parámetros de salida Filter_PT1

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
El valor de salida es remanente.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 510) indica qué mensajes de error existen. Error­
Bits es remanente y se restablece con un flanco ascendente en Reset o ErrorAck.
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.

10.9.6 Variables estáticas Filter_PT1

Variable Tipo de datos Ajuste predeter­ Descripción


minado
Gain REAL 1.0 Ganancia proporcional
Lag REAL 25.0 Constante de tiempo de retardo en segundos
Rango admisible: Lag ≥ [Link]/2
ErrorMode INT 2 Selección del valor de salida sustitutivo en caso de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida de filtro válido
• 3 = 0.0
• 4 = Input * Gain
Rango admisible: de 0 a 4
StartMode INT 2 Selección del valor de salida para la primera llamada de la instruc­
ción
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida
• 3 = 0.0
• 4 = Input * Gain
Rango admisible: de 0 a 4
CycleTime AuxFct_CycleTime - Datos del tiempo de ciclo
[Link] REAL 0.1 Tiempo de ciclo en segundos (intervalo entre 2 llamadas)
Rango admisible: [Link] > 0.0
[Link]­ BOOL TRUE Medición automática del tiempo de ciclo
bleMeasurement • FALSE = desactivada
• TRUE = activada

10.9.7 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.

Regulación PID
510 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

Con Filter_PT1, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
Filter_PT1 reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si el valor determinado por la función de filtro se emite en la salida (Reset = FALSE y ErrorBits <
16#0001_0000), compruebe las siguientes variables utilizadas en el cálculo del filtro:
• Input
• Gain
• Lag
• [Link]
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• Input
• SubstituteOutput
• El producto de Input y Gain
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.
0000_0002 Causa del error:
La medición del tiempo de ciclo da como resultado un valor no válido mientras se ejecuta el cálculo del va­
lor de salida (Reset = FALSE).
Reacción a errores:
Si ya se ha medido un valor válido del tiempo de ciclo, Filter_PT1 calcula el valor de salida a partir de este
último valor de la variable [Link].
Si previamente no se ha medido ningún valor válido del tiempo de ciclo, Filter_PT1 sigue emitiendo en el
parámetro Output el valor de salida que se ha configurado con la variable StartMode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 511
Instrucciones
10.9 Filter_PT1

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
Filter_PT1 reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, Filter_PT1
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
El parámetro SubstituteOutput u otra variable que se utiliza como valor de salida no tiene ningún valor
REAL válido.
Reacción a errores:
La salida se ajusta a 0.0.
Solución:
Asegúrese de que la variable que se utiliza como valor de salida sea un valor REAL válido (≠NaN, p. ej.,
16#7FFF_FFFF). La variable que se utiliza como valor de salida depende de Reset y ErrorMode:
Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
FALSE 4 Producto de Input y Gain
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Causa del error:
El cálculo del valor de salida da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Compruebe todas las variables implicadas en el cálculo del valor de salida:
• Input
• Gain
• Lag
• [Link]
Estas variables tienen valores válidos. El cálculo del valor de salida falla en esta combinación de variables.

Regulación PID
512 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.9 Filter_PT1

ErrorBits Descripción

(DW#16#...)
0008_0000 Causa del error:
La variable Gain o Lag tiene un valor no válido mientras se ejecuta el cálculo del valor de salida (Reset =
FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones para los valores de las variables Gain y Lag:
• -3.402823e+38 ≤ Gain ≤ 3.402823e+38
• [Link]/2 ≤ Lag ≤ 3.402823e+38
• Los valores son valores REAL válidos (≠ NaN, p. ej., 16#7FFF_FFFF).
Información adicional:
Tenga en cuenta que la condición [Link]/2 ≤ Lag puede vulnerarse en los siguientes supuestos:
• El intervalo entre dos llamadas de Filter_PT1 es mayor que 2 * Lag, p. ej., debido a llamadas condicio­
nadas durante la ejecución del programa o a puntos de parada activos.
• Una instantánea del DB de instancia de Filter_PT1 se carga como valores actuales en la CPU y desde la
creación de la instantánea ha transcurrido un plazo mayor que 2 * Lag.
En estos supuestos, si está activada la medición automática del tiempo de ciclo, se detecta un error con el
mensaje de error ErrorBits = 16#0008_0000.
0020_0000 Causa del error:
La variable (configurada con StartMode) para la inicialización del parámetro Output en la primera llamada
de la instrucción no tiene ningún valor REAL válido.
Reacción a errores:
En la primera llamada de la instrucción se emite en el parámetro Output el valor de salida sustitutivo con­
figurado en la variable ErrorMode. En las siguientes llamadas, Filter_PT1 calcula el valor de salida a partir
de este valor de salida sustitutivo.
Solución:
Asegúrese de que la variable para la inicialización del parámetro Output sea un valor REAL válido (≠ NaN,
p. ej., 16#7FFF_FFFF). Si está ajustado Reset = FALSE, la inicialización será efectiva la primera vez que se
llame la instrucción después de cambiar el estado operativo de la CPU de STOP a RUN. La variable que se
utiliza para la inicialización del parámetro Output depende de StartMode:
• StartMode = 1: SubstituteOutput
• StartMode = 2: Output
• StartMode = 4: Producto de Input y Gain
0040_0000 Causa del error:
La variable [Link] tiene un valor no válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
• 0.0 < [Link] ≤ 3.402823e+38
• [Link] es un valor REAL válido (≠ NaN p. ej., 16#7FFF_FFFF)
Información adicional:
Para un cálculo automático del valor de la variable [Link], ajuste la variable [Link]­
Measurement a TRUE.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 513
Instrucciones
10.10 Filter_PT2

10.10 Filter_PT2

10.10.1 Compatibilidad con CPU y FW


La siguiente tabla indica en qué CPU puede usarse qué versión de Filter_PT2:

CPU FW Filter_PT2
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

10.10.2 Descripción Filter_PT2

Descripción
La instrucción Filter_PT2 es un elemento de transferencia proporcional con un retardo de
segundo orden, también denominado elemento PT2.
Filter_PT2 se puede utilizar para los siguientes fines:
• Filtro paso bajo para atenuar las frecuencias más altas de una señal, como, por ejemplo, el
ruido.
• Elemento de retardo para filtrar saltos de señal, por ejemplo de la consigna o el valor de
salida de un regulador.
• Bloque de simulación de proceso para implementar un lazo de regulación cerrado en la
CPU. Esto permite, por ejemplo, probar reguladores antes de la puesta en marcha.
Se pueden especificar los siguientes parámetros de filtro:
• Ganancia proporcional (Gain)
• Constante de tiempo (TimeConstant)
• Atenuación (Damping)

NOTA
Diferencias entre un elemento PT2 de tiempo continuo y Filter_PT2
Dado que Filter_PT2 se ejecuta en un programa de PLC, Filter_PT2 constituye una
implementación de tiempo discreto de un elemento PT2. Los sistemas de tiempo discreto no
pueden presentar las mismas características que su correspondiente modelo de tiempo
continuo. Sin embargo, en función del tiempo de ciclo, los sistemas de tiempo discreto
pueden imitar correctamente un sistema de tiempo continuo: Cuanto más corto y constante
es el tiempo de ciclo, menor es la diferencia entre las características de Filter_PT2 y las
características de un elemento PT2 de tiempo continuo. Las características de un elemento
PT2 de tiempo continuo son la función de transferencia que se describe más adelante, la
respuesta en el tiempo y la respuesta de frecuencia.
Para una reproducción correcta de la respuesta de frecuencia se recomienda un tiempo de
ciclo máximo de una décima parte de la duración de periodo mínima de los componentes de
la señal de entrada. Por ejemplo, una señal con componentes de frecuencia de hasta 50 Hz
tiene una duración de periodo mínima de 20 ms. Para obtener una reproducción correcta de
la respuesta de frecuencia se recomienda un tiempo de ciclo máximo de 2 ms para este
ejemplo.

Regulación PID
514 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

Función de transferencia de un elemento PT2


La siguiente fórmula muestra la función de transferencia de un elemento PT2, siendo s igual
al operador laplaciano:
2XWSXW V *DLQ
G(s) = ,QSXW V  
y'DPSLQJy7LPH&RQVWDQWyV7LPH&RQVWDQWyV
Si Damping ≥ 1, el elemento PT2 se puede describir como dos elementos PT1 conectados en
serie:
2XWSXW V *DLQ
G(s) = ,QSXW V /DJyV y /DJyV
 

Las constantes de tiempo de retardo de los dos elementos PT1 conectados en serie se
calculan de la siguiente manera:

Lag = TimeConstant ∙ Damping ± ෭Damping


 

-1

Respuesta en el tiempo de un elemento PT2


La respuesta a un salto es la reacción del valor de salida a un salto del valor de entrada.
La respuesta a un salto del valor de entrada de 0 a ΔInput puede calcularse con las siguientes
fórmulas:
Para Damping < 1 se aplica la siguiente fórmula:

(
Output(t) = ∆Input · Gain · 1 - e
'DPSLQJ
 7LPH&RQVWDQW yW
> ෭1- Damping
y FRV 7LPH&RQVWDQW ∙ t +


෭1- Damping
Damping
∙ sin 7LPH&RQVWDQW ∙ t ෭1- Damping

@)
Para Damping = 1 se aplica la siguiente fórmula:
W W
 7LPH&RQVWDQW  7LPH&RQVWDQW
Output(t) = ∆Input · Gain · 1 - e ( 
t
TimeConstant ∙e )
Para Damping > 1 se aplica la siguiente fórmula con los Lag1 y Lag2 calculados anteriormente:

 W  W
Output(t) = ∆Input · Gain · 1 - ( Lag1
Lag1- Lag2 ∙ e /DJ 1
+
Lag2
Lag1- Lag2 ∙ e /DJ2
)

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 515
Instrucciones
10.10 Filter_PT2

La figura siguiente muestra la respuesta a un salto de un elemento PT2 con distintos valores
para la atenuación:

Damping = 0.5

ΔInput·Gain Damping = 1.0

Damping = 2.0

Output(t)

ΔInput
Input(t)

Respuesta de frecuencia de un elemento PT2


La respuesta de frecuencia de un elemento de transferencia se describe por medio de la
respuesta de amplitud y la respuesta de fase.
La respuesta de amplitud describe la ganancia de una señal a través del elemento de
transferencia en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de amplitud de un elemento PT2:
*DLQ
|G(ω)| =
෭ >˶y7LPH&RQVWDQW@t t ˶ʷʷ'DPSLQJʷ7LPH&RQVWDQW t
|G(ω)| Ganancia de una señal en función de la frecuencia de circuito
ω Frecuencia de circuito

Regulación PID
516 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

La figura siguiente muestra la respuesta de amplitud de un elemento PT2 con una atenuación
de 0,4 y 1,0:

GaindB+20dB

|G(ω)|dB

Damping = 0.4

GaindB

Damping = 1.0

GaindB-20dB

GaindB-40dB
0.01/ 0.1/ 1/ 10/ ω 100/
TimeConstant TimeConstant TimeConstant TimeConstant TimeConstant

NOTA
Si Damping < 1/√2, aparece un aumento de la resonancia en la respuesta de amplitud.

La respuesta de fase describe el desfase de una señal a través del elemento de transferencia
en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de fase de un elemento PT2:

φ(ω) = -tan-1 ˶yy'DPSLQJy7LPH&RQVWDQW



 ˶y7LPH&RQVWDQW


φ(ω) Desfase en función de la frecuencia de circuito


ω Frecuencia de circuito

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 517
Instrucciones
10.10 Filter_PT2

La figura siguiente muestra la respuesta de fase de un elemento PT2:


Damping = 0.4

ϕ(ω)

Damping = 1.0
-45°

-90°

-135°

-180°
0.01/ 0.1/ 1/ 10/ ω 100/
TimeConstant TimeConstant TimeConstant TimeConstant TimeConstant

Llamada
En un OB o FC, Filter_PT2 se llama como DB de instancia individual. En un FB, Filter_PT2
puede llamarse como DB de instancia individual, como DB multiinstancia o como DB de
instancia de parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de
interfaz de parametrización o puesta en marcha. Filter_PT2 se parametriza directamente
mediante el DB de instancia y se pone en marcha por medio de una tabla de observación del
programa de usuario en la CPU o HMI.

Arranque
Las variables en el rango estático de Filter_PT2 no son remanentes. Estas variables se
inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU
de STOP a RUN. Si modifica los valores actuales en modo online, y desea conservar estos
valores tras cambiar el estado operativo de la CPU, guarde estos valores en los valores de
arranque del bloque de datos.
En la variable StartMode se determina el valor de inicialización para el parámetro Output.

Regulación PID
518 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

El valor de inicialización se emite durante la primera llamada de Filter_PT2 tras el


• Cambio de estado operativo de la CPU
o bien
• Al ejecutar "Cargar valores de arranque como valores actuales" (solo con la opción "Todos
los valores", no con la opción "Solo valores de ajuste")
en el parámetro Output.
En las siguientes llamadas, Filter_PT2 calcula el valor de salida a partir de este valor de
inicialización, sobre la base del valor de entrada y de la configuración del filtro.
La tabla siguiente muestra la dependencia entre la variable StartMode y el parámetro Output.
Los valores de la columna Output se emiten en el parámetro Output tras el cambio de estado
operativo de la CPU:

StartMode Output Ejemplo


0 Valor del parámetro Input Input * Gain

Output
Input

CPU CPU t
STOP RUN

1 Valor del parámetro SubstituteOutput Input * Gain

Output SubstituteOutput
Input

CPU CPU t
STOP RUN

2 No cambia Input * Gain


El parámetro Output es remanente.
Ajuste estándar Output
Input
Se utiliza cuando el StartMode no está
en el rango 0...4. CPU CPU CPU CPU t
STOP RUN STOP RUN

3 0.0 Input * Gain

Output
Input

CPU CPU t
STOP RUN

4 Valor del producto Input * Gain Input * Gain

Output
Input

CPU CPU CPU CPU t


STOP RUN STOP RUN

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 519
Instrucciones
10.10 Filter_PT2

Lo siguiente se aplica además a todos los valores de la variable StartMode:


• El valor de inicialización se limita al rango de valores del tipo de datos REAL. Solo entonces
se emite el valor de inicialización en el parámetro Output.
• Si el valor de inicialización no es un valor REAL válido, se emite el valor de salida
sustitutivo en el parámetro Output. El valor de salida sustitutivo se configura con la
variable ErrorMode. El valor de salida sustitutivo se limita al rango de valores del tipo de
datos REAL antes de emitirse en el parámetro Output. Si el valor de salida sustitutivo
tampoco es un valor REAL válido, se emite 0.0 en el parámetro Output. En las siguientes
llamadas, la instrucción calcula el valor de salida a partir de este valor de salida sustitutivo.
• La variable StartMode solo es efectiva si durante la primera llamada de la instrucción está
ajustado el parámetro Reset = FALSE y al mismo tiempo no hay ningún error con el
mensaje de error ErrorBits ≥ 16#0002_0000. Si está ajustado el parámetro Reset = TRUE,
el valor del parámetro SubstituteOutput se emite en el parámetro Output. Si está presente
un error con el mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se
emite el valor de salida sustitutivo configurado en la variable ErrorMode.

Comportamiento en caso de error


La instrucción Filter_PT2 detecta diversos errores que pueden producirse durante el cálculo
del valor de salida. El resultado del cálculo puede emitirse en la salida aunque haya un error
presente. Si, debido a un error, no es posible calcular correctamente el valor de salida, en la
salida se emitirá un valor de salida sustitutivo.
Si se produce un error que no permite calcular correctamente el valor de salida, se deberá
definir el valor de salida sustitutivo en la variable ErrorMode.
La tabla siguiente muestra la dependencia entre el valor de la variable ErrorMode y el valor de
salida sustitutivo que Filter_PT2 emite en el parámetro Output:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último valor de salida de filtro válido
0.0 si no hay ningún valor de salida de filtro válido
Ajuste estándar
Se utiliza cuando ErrorMode no está en el rango 0...4
3 0.0
4 Valor del producto Input * Gain
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emite 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores del tipo de datos REAL. Solo
entonces se emite el valor de salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si está
ajustado el parámetro Reset = TRUE, el valor del parámetro SubstituteOutput se emite en
el parámetro Output.
El parámetro Error indica si hay algún un error presente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits indica qué errores se han

Regulación PID
520 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro


Reset o ErrorAck.

10.10.3 Funcionamiento de Filter_PT2

Respuesta de Reset
Filter_PT2 se comporta de la siguiente manera en función del parámetro Reset:
• Si el parámetro Reset =TRUE está activado, el valor del parámetro SubstituteOutput se
emite en el parámetro Output.
• Si el parámetro Reset = FALSE está activado, el valor que se emite en el parámetro Output
se calcula por medio del algoritmo del filtro.
• Si se cambia el parámetro Reset de FALSE a TRUE, el valor del parámetro Output cambia
directamente al valor del parámetro SubstituteOutput. Este cambio puede ser brusco.
Además se restablece el parámetro ErrorBits.
• Si se cambia el parámetro Reset de TRUE a FALSE, se ajusta el algoritmo del filtro de
manera que el cambio se produce sin saltos.

Respuesta de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a
FALSE:
• La entrada de habilitación EN está ajustada a TRUE y el parámetro Output se ha definido
con un valor de salida sustitutivo en caso de mensajes de error ErrorBits ≥ 16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Medición automática del tiempo de ciclo


Para calcular el valor de salida, Filter_PT2 necesita el tiempo que ha transcurrido desde la
última llamada de Filter_PT2.
En el ajuste predeterminado, el tiempo de ciclo se mide automáticamente y se emite en la
variable [Link] a partir de la segunda llamada. Filter_PT2 mide el tiempo de ciclo en
cada llamada de la instrucción, con lo que puede utilizarse en ciclos de llamada no
equidistantes, p. ej., en el OB1.
Tenga en cuenta que las llamadas condicionadas de la instrucción, los puntos de parada
activos o la carga de instantáneas como valores actuales con medición automática del tiempo
de ciclo hacen aumentar el valor del tiempo de ciclo. Un tiempo de ciclo excesivo se detecta
como error con el mensaje de error ErrorBits = 16#0008_0000.
Si la medición del tiempo de ciclo no da ningún resultado válido, Filter_PT2 calcula el valor de
salida actual con el último tiempo de ciclo válido. Además, Filter_PT2 emite un mensaje de
error en el parámetro ErrorBits.
Si se desactiva la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE, hay que especificar manualmente el tiempo de ciclo
en la variable [Link]. Filter_PT2 comprueba la validez de la variable
[Link] en cada llamada.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 521
Instrucciones
10.10 Filter_PT2

Medición automática del tiempo de ciclo con puntos de parada


Si hay puntos de parada activos entre dos llamadas de Filter_PT2, la medición automática del
tiempo de ciclo da como resultado el tiempo transcurrido realmente entre dos llamadas. Si
hay un punto de parada activo, la CPU está en estado operativo PARADA.

NOTA
Los puntos de parada activos hacen aumentar la distancia temporal entre dos llamadas de
Filter_PT2.
Cuanto mayor sea la distancia temporal entre dos llamadas tanto mayor será el cambio del
valor de salida en el parámetro Output.
Por lo demás, es posible que, debido a la mayor distancia temporal, se vulnere la condición
TimeConstant ≥ [Link]/2 y por ello se detecte un error con el mensaje de error
ErrorBits = 16#0008_0000.

Si no se requiere el cálculo del valor de salida basado en el tiempo real con puntos de parada
activos, ejecute los pasos siguientes:
• Desactive la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE.
• Introduzca el tiempo de ciclo manualmente en la variable [Link].

10.10.4 Parámetros de entrada Filter_PT2

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo si:
teOutput • Reset = TRUE
o bien
• si no es posible calcular correctamente el valor de salida debido a un error
con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode está ajustado
al valor 1.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo del valor de sa­
lida.

Regulación PID
522 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

10.10.5 Parámetros de salida Filter_PT2

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
El valor de salida es remanente.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 523) indica qué mensajes de error existen. Error­
Bits es remanente y se restablece con un flanco ascendente en Reset o ErrorAck.
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.

10.10.6 Variables estáticas Filter_PT2

Variable Tipo de datos Ajuste predeter­ Descripción


minado
Gain REAL 1.0 Ganancia proporcional
TimeConstant REAL 25.0 Constante de tiempo en segundos
Rango admisible: TimeConstant ≥ [Link]/2
Damping REAL 1.0 Atenuación
Rango admisible: Damping > 0.0
ErrorMode INT 2 Selección del valor de salida sustitutivo en caso de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida de filtro válido
• 3 = 0.0
• 4 = Input * Gain
Rango admisible: de 0 a 4
StartMode INT 2 Selección del valor de salida para la primera llamada de la instruc­
ción
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida
• 3 = 0.0
• 4 = Input * Gain
Rango admisible: de 0 a 4
CycleTime AuxFct_CycleTime - Datos del tiempo de ciclo
[Link] REAL 0.1 Tiempo de ciclo en segundos (intervalo entre 2 llamadas)
Rango admisible: [Link] > 0.0
[Link]­ BOOL TRUE Medición automática del tiempo de ciclo
bleMeasurement • FALSE = desactivada
• TRUE = activada

10.10.7 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 523
Instrucciones
10.10 Filter_PT2

Con Filter_PT2, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
Filter_PT2 reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si el valor determinado por la función de filtro se emite en la salida (Reset = FALSE y ErrorBits <
16#0001_0000), compruebe las siguientes variables utilizadas en el cálculo del filtro:
• Input
• Gain
• TimeConstant
• Damping
• [Link]
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• Input
• SubstituteOutput
• El producto de Input y Gain
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.
0000_0002 Causa del error:
La medición del tiempo de ciclo da como resultado un valor no válido mientras se ejecuta el cálculo del va­
lor de salida (Reset = FALSE).
Reacción a errores:
Si ya se ha medido un valor válido del tiempo de ciclo, Filter_PT2 calcula el valor de salida a partir de este
último valor de la variable [Link].
Si previamente no se ha medido ningún valor válido del tiempo de ciclo, Filter_PT2 sigue emitiendo en el
parámetro Output el valor de salida que se ha configurado con la variable StartMode.

Regulación PID
524 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.10 Filter_PT2

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
Filter_PT2 reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, Filter_PT2
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
El parámetro SubstituteOutput u otra variable que se utiliza como valor de salida no tiene ningún valor
REAL válido.
Reacción a errores:
La salida se ajusta a 0.0.
Solución:
Asegúrese de que la variable que se utiliza como valor de salida sea un valor REAL válido (≠NaN, p. ej.,
16#7FFF_FFFF). La variable que se utiliza como valor de salida depende de Reset y ErrorMode:
Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
FALSE 4 Producto de Input y Gain
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Causa del error:
El cálculo del valor de salida da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Compruebe todas las variables implicadas en el cálculo del valor de salida:
• Input
• Gain
• TimeConstant
• Damping
• [Link]
Estas variables tienen valores válidos. El cálculo del valor de salida falla en esta combinación de variables.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 525
Instrucciones
10.10 Filter_PT2

ErrorBits Descripción

(DW#16#...)
0008_0000 Causa del error:
La variable Gain, TimeConstant o Damping tiene un valor no válido mientras se ejecuta el cálculo del valor
de salida (Reset = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones para los valores de las variables Gain, TimeCons­
tant y Damping:
• -3.402823e+38 ≤ Gain ≤ 3.402823e+38
• [Link]/2 ≤ TimeConstant ≤ 3.402823e+38
• 0.0 < Damping ≤ 3.402823e+38
• Los valores son valores REAL válidos (≠ NaN, p. ej., 16#7FFF_FFFF).
Información adicional:
Tenga en cuenta que la condición [Link]/2 ≤ TimeConstant puede vulnerarse en los siguientes
supuestos:
• El intervalo entre dos llamadas de Filter_PT2 es mayor que 2 * TimeConstant, p. ej., debido a llamadas
condicionadas durante la ejecución del programa o a puntos de parada activos.
• Una instantánea del DB de instancia de Filter_PT2 se carga como valores actuales en la CPU y desde la
creación de la instantánea ha transcurrido un plazo mayor que 2 * TimeConstant.
En estos supuestos, si está activada la medición automática del tiempo de ciclo, se detecta un error con el
mensaje de error ErrorBits = 16#0008_0000.
0020_0000 Causa del error:
La variable (configurada con StartMode) para la inicialización del parámetro Output en la primera llamada
de la instrucción no tiene ningún valor REAL válido.
Reacción a errores:
En la primera llamada de la instrucción se emite en el parámetro Output el valor de salida sustitutivo con­
figurado en la variable ErrorMode. En las siguientes llamadas, Filter_PT2 calcula el valor de salida a partir
de este valor de salida sustitutivo.
Solución:
Asegúrese de que la variable para la inicialización del parámetro Output sea un valor REAL válido (≠ NaN,
p. ej., 16#7FFF_FFFF). Si está ajustado Reset = FALSE, la inicialización será efectiva la primera vez que se
llame la instrucción después de cambiar el estado operativo de la CPU de STOP a RUN. La variable que se
utiliza para la inicialización del parámetro Output depende de StartMode:
• StartMode = 1: SubstituteOutput
• StartMode = 2: Output
• StartMode = 4: producto de Input y Gain
0040_0000 Causa del error:
La variable [Link] no tiene ningún valor válido mientras se ejecuta el cálculo del valor de salida
(Reset = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
• 0.0 < [Link] ≤ 3.402823e+38
• [Link] es un valor REAL válido (≠ NaN p. ej., 16#7FFF_FFFF)
Información adicional:
Para un cálculo automático del valor de la variable [Link], ajuste la variable [Link]­
Measurement a TRUE.

Regulación PID
526 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

10.11 Filter_DT1

10.11.1 Compatibilidad con CPU y FW


La siguiente tabla muestra en qué CPU puede usarse cada versión de Filter_DT1:

CPU FW Filter_DT1
S7-1200 A partir de V4.2 V1.0
CPU basadas en S7-1500 A partir de V2.0 V1.0

10.11.2 Descripción Filter_DT1

Descripción
La instrucción Filter_DT1 es un elemento diferenciador con un retardo de primer orden,
también denominado elemento DT1.
Filter_DT1 se puede utilizar para los siguientes fines:
• Filtro paso alto para atenuar las frecuencias más bajas de una señal.
• Elemento diferenciador para calcular la derivada de una señal, como, por ejemplo, la
velocidad a partir de valores de posición.
• Control anticipativo para paliar los efectos de fallos mensurables en el proceso.
Se pueden especificar los siguientes parámetros de filtro:
• Tiempo derivativo (Td)
• Constante de tiempo de retardo (Lag)

NOTA
Diferencias entre un elemento DT1 de tiempo continuo y Filter_DT1
Dado que Filter_DT1 se ejecuta en un programa de PLC, Filter_DT1 constituye una
implementación de tiempo discreto de un elemento DT1. Los sistemas de tiempo discreto no
pueden presentar las mismas características que su correspondiente modelo de tiempo
continuo. Sin embargo, en función del tiempo de ciclo, los sistemas de tiempo discreto
pueden imitar correctamente un sistema de tiempo continuo: Cuanto más corto y constante
es el tiempo de ciclo, menor es la diferencia entre las características de Filter_DT1 y las
características de un elemento DT1 de tiempo continuo. Las características de un elemento
DT1 de tiempo continuo son la función de transferencia que se describe más adelante, la
respuesta en el tiempo y la respuesta de frecuencia.
Para una reproducción correcta de la respuesta de frecuencia se recomienda un tiempo de
ciclo máximo de una décima parte de la duración de periodo mínima de los componentes de
la señal de entrada. Por ejemplo, una señal con componentes de frecuencia de hasta 50 Hz
tiene una duración de periodo mínima de 20 ms. Para obtener una reproducción correcta de
la respuesta de frecuencia se recomienda un tiempo de ciclo máximo de 2 ms para este
ejemplo.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 527
Instrucciones
10.11 Filter_DT1

Función de transferencia de un elemento DT1


La siguiente fórmula muestra la función de transferencia de un elemento DT1, siendo s igual
al operador laplaciano:
2XWSXW V 7GyV
G(s) = ,QSXW V /DJyV

Respuesta en el tiempo de un elemento DT1


La respuesta a un salto es la reacción del valor de salida a un salto del valor de entrada.
La respuesta a un salto del valor de entrada de 0 a ΔInput puede calcularse con la siguiente
fórmula:
W
7G  /DJ
Output(t) = ∆Input · Lag · e
La figura siguiente muestra la respuesta a un salto de un elemento DT1:

Td
ΔInput·
Lag

Input(t)
ΔInput

36.8%·ΔInput·Td/Lag

Output(t)
0.7%·ΔInput·Td/Lag

Lag 5·Lag t

Para desactivar el retardo, ajuste el parámetro Lag al valor mínimo [Link] / 2. En


ese caso, los cambios del valor de entrada se multiplican por Td / [Link] y se emiten
en el parámetro Output. Después de un ciclo, el valor de salida es 0.0.

Regulación PID
528 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

La figura siguiente muestra la respuesta a un salto en el caso Lag = [Link] / 2:

Td
ΔInput·
[Link]

Input(t)
ΔInput

Output(t)

[Link] t

Respuesta de frecuencia de un elemento DT1


La respuesta de frecuencia de un elemento de transferencia se describe por medio de la
respuesta de amplitud y la respuesta de fase.
La respuesta de amplitud describe la ganancia de una señal a través del elemento de
transferencia en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de amplitud de un elemento DT1:
ω ∙ Td
|G(ω)| =
෭ ˶y/DJ t
|G(ω)| Ganancia de una señal en función de la frecuencia de circuito
ω Frecuencia de circuito

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 529
Instrucciones
10.11 Filter_DT1

La figura siguiente muestra la respuesta de amplitud de un elemento DT1:

|G(ω)|dB

Td
Lag dB

0dB

1/Td 1/Lag ω
La respuesta de fase describe el desfase de una señal a través del elemento de transferencia
en función de la frecuencia de circuito de dicha señal.
La siguiente ecuación describe la respuesta de fase de un elemento DT1:
φ(ω) = tan ωy/DJ 
-1

φ(ω) Desfase en función de la frecuencia de circuito


ω Frecuencia de circuito

Regulación PID
530 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

La figura siguiente muestra la respuesta de fase de un elemento DT1:

90°

ϕ(ω)

45°

-45°

-90°
0.01/Lag 0.1/Lag 1/Lag 10/Lag ω 100/Lag

Llamada
En un OB o FC, Filter_DT1 se llama como DB de instancia individual. En un FB, Filter_DT1
puede llamarse como DB de instancia individual, como DB multiinstancia o como DB de
instancia de parámetro.
Cuando se llama la instrucción, no se crea ningún objeto tecnológico. No se dispone de
interfaz de parametrización o puesta en marcha. Filter_DT1 se parametriza directamente
mediante el DB de instancia y se pone en marcha por medio de una tabla de observación del
programa de usuario en la CPU o HMI.

Arranque
Las variables en el rango estático de Filter_DT1 no son remanentes. Estas variables se
inicializan con los valores de arranque después de cada cambio del estado operativo de la CPU
de STOP a RUN. Si modifica los valores actuales en modo online, y desea conservar estos
valores tras cambiar el estado operativo de la CPU, guarde estos valores en los valores de
arranque del bloque de datos.
En la variable StartMode se determina el valor de inicialización para el parámetro Output.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 531
Instrucciones
10.11 Filter_DT1

El valor de inicialización se emite durante la primera llamada de Filter_DT1 tras el


• Cambio de estado operativo de la CPU
o bien
• Al ejecutar "Cargar valores de arranque como valores actuales" (solo con la opción "Todos
los valores", no con la opción "Solo valores de ajuste")
en el parámetro Output.
En las siguientes llamadas, Filter_DT1 calcula el valor de salida a partir de este valor de
inicialización, sobre la base del valor de entrada y de la configuración del filtro.
La tabla siguiente muestra la dependencia entre la variable StartMode y el parámetro Output.
Los valores de la columna Output se emiten en el parámetro Output tras el cambio de estado
operativo de la CPU:

StartMode Output Ejemplo


0 Valor del parámetro Input
Input

Output

CPU CPU t
STOP RUN

1 Valor del parámetro SubstituteOutput Input

Output SubstituteOutput

CPU CPU t
STOP RUN

2 No cambia
Input
El parámetro Output es remanente.
Ajuste estándar
Se utiliza cuando el StartMode no está Output
en el rango 0...3. CPU CPU t
STOP RUN

3 0.0
Input

Output
CPU CPU t
STOP RUN

Lo siguiente se aplica además a todos los valores de la variable StartMode:


• El valor de inicialización se limita al rango de valores del tipo de datos REAL. Solo entonces
se emite el valor de inicialización en el parámetro Output.
• Si el valor de inicialización no es un valor REAL válido, se emite el valor de salida
sustitutivo en el parámetro Output. El valor de salida sustitutivo se configura con la
variable ErrorMode. El valor de salida sustitutivo se limita al rango de valores del tipo de
datos REAL antes de emitirse en el parámetro Output. Si el valor de salida sustitutivo
tampoco es un valor REAL válido, se emite 0.0 en el parámetro Output. En las siguientes
llamadas, la instrucción calcula el valor de salida a partir de este valor de salida sustitutivo.

Regulación PID
532 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

• La variable StartMode solo es efectiva si durante la primera llamada de la instrucción está


ajustado el parámetro Reset = FALSE y al mismo tiempo no hay ningún error con el
mensaje de error ErrorBits ≥ 16#0002_0000. Si está ajustado el parámetro Reset = TRUE,
el valor del parámetro SubstituteOutput se emite en el parámetro Output. Si está presente
un error con el mensaje de error ErrorBits ≥ 16#0002_0000, en el parámetro Output se
emite el valor de salida sustitutivo configurado en la variable ErrorMode.

Comportamiento en caso de error


La instrucción Filter_DT1 detecta diversos errores que pueden producirse durante el cálculo
del valor de salida. El resultado del cálculo puede emitirse en la salida aunque haya un error
presente. Si, debido a un error, no es posible calcular correctamente el valor de salida, en la
salida se emitirá un valor de salida sustitutivo.
Si se produce un error que no permite calcular correctamente el valor de salida, se deberá
definir el valor de salida sustitutivo en la variable ErrorMode.
La tabla siguiente muestra la dependencia entre el valor de la variable ErrorMode y el valor de
salida sustitutivo que Filter_DT1 emite en el parámetro Output:

ErrorMode Output
0 Valor del parámetro Input
1 Valor del parámetro SubstituteOutput
2 Último valor de salida de filtro válido
0.0 si no hay ningún valor de salida de filtro válido
Ajuste estándar
Se utiliza cuando ErrorMode no está en el rango 0...3
3 0.0
Lo siguiente se aplica además a todos los valores de la variable ErrorMode:
• Si el valor de salida sustitutivo no es un valor REAL válido, se emite 0.0 como valor de
salida.
• El valor de salida sustitutivo se limita al rango de valores del tipo de datos REAL. Solo
entonces se emite el valor de salida sustitutivo en el parámetro Output.
• La variable ErrorMode solo es efectiva si está ajustado el parámetro Reset = FALSE. Si está
ajustado el parámetro Reset = TRUE, el valor del parámetro SubstituteOutput se emite en
el parámetro Output.
El parámetro Error indica si hay algún un error presente en ese momento. Cuando el error
desaparece, Error se ajusta a FALSE. El parámetro ErrorBits indica qué errores se han
producido. ErrorBits es remanente y solo se borra con un flanco ascendente en el parámetro
Reset o ErrorAck.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 533
Instrucciones
10.11 Filter_DT1

10.11.3 Funcionamiento de Filter_DT1

Respuesta de Reset
Filter_DT1 se comporta de la siguiente manera en función del parámetro Reset:
• Si el parámetro Reset =TRUE está activado, el valor del parámetro SubstituteOutput se
emite en el parámetro Output.
• Si el parámetro Reset = FALSE está activado, el valor que se emite en el parámetro Output
se calcula por medio del algoritmo del filtro.
• Si se cambia el parámetro Reset de FALSE a TRUE, el valor del parámetro Output cambia
directamente al valor del parámetro SubstituteOutput. Este cambio puede ser brusco.
Además se restablece el parámetro ErrorBits.
• Si se cambia el parámetro Reset de TRUE a FALSE, se ajusta el algoritmo del filtro de
manera que el cambio se produce sin saltos.

Respuesta de habilitación EN/ENO


Si se cumple una de las siguientes condiciones, la salida de habilitación ENO se ajusta a
FALSE:
• La entrada de habilitación EN está ajustada a TRUE y el parámetro Output se ha definido
con un valor de salida sustitutivo en caso de los mensajes de error ErrorBits ≥
16#0001_0000.
• La entrada de habilitación EN está ajustada a FALSE.
De lo contrario, la salida de habilitación ENO se ajusta a TRUE.

Medición automática del tiempo de ciclo


Para calcular el valor de salida, Filter_DT1 necesita el tiempo que ha transcurrido desde la
última llamada de Filter_DT1.
En el ajuste predeterminado, el tiempo de ciclo se mide automáticamente y se emite en la
variable [Link] a partir de la segunda llamada. Filter_DT1 mide el tiempo de ciclo
en cada llamada de la instrucción, con lo que puede utilizarse en ciclos de llamada no
equidistantes, p. ej., en el OB1.
Tenga en cuenta que las llamadas condicionadas de la instrucción, los puntos de parada
activos o la carga de instantáneas como valores actuales con medición automática del tiempo
de ciclo hacen aumentar el valor del tiempo de ciclo. Un tiempo de ciclo excesivo se detecta
como error con el mensaje de error ErrorBits = 16#0008_0000.
Si la medición del tiempo de ciclo no da ningún resultado válido, Filter_DT1 calcula el valor de
salida actual con el último tiempo de ciclo válido. Además, Filter_DT1 emite un mensaje de
error en el parámetro ErrorBits.
Si se desactiva la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE, hay que especificar manualmente el tiempo de ciclo
en la variable [Link]. Filter_DT1 comprueba la validez de la variable
[Link] en cada llamada.

Regulación PID
534 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

Medición automática del tiempo de ciclo con puntos de parada


Si hay puntos de parada activos entre dos llamadas de Filter_DT1, la medición automática del
tiempo de ciclo da como resultado el tiempo transcurrido realmente entre dos llamadas. Si
hay un punto de parada activo, la CPU está en estado operativo PARADA.

NOTA
Los puntos de parada activos hacen aumentar la distancia temporal entre dos llamadas de
Filter_DT1.
Cuanto mayor sea la distancia temporal entre dos llamadas tanto mayor será el cambio del
valor de salida en el parámetro Output.
Por lo demás, es posible que, debido a la mayor distancia temporal, se vulneren las
condiciones Lag ≥ [Link]/2 o Td ≥ [Link]. Esto da lugar a la detección de
un error con el mensaje de error ErrorBits = 16#0008_0000 .

Si no se requiere el cálculo del valor de salida basado en el tiempo real con puntos de parada
activos, ejecute los pasos siguientes:
• Desactive la medición automática del tiempo de ciclo ajustando la variable
[Link] = FALSE.
• Introduzca el tiempo de ciclo manualmente en la variable [Link].

10.11.4 Parámetros de entrada Filter_DT1

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Input REAL 0.0 Valor de entrada
Substitu­ REAL 0.0 SubstituteOutput se utiliza como valor de salida sustitutivo si:
teOutput • Reset = TRUE
o bien
• si no es posible calcular correctamente el valor de salida debido a un error
con mensaje de error ErrorBits ≥ 16#0001_0000 y ErrorMode está ajustado
al valor 1.
ErrorAck BOOL FALSE Borra los mensajes de error
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
Reset BOOL FALSE Reinicia la instrucción por medio de:
• Flanco FALSE -> TRUE
ErrorBits se desactiva.
• Mientras Reset esté ajustado a TRUE, el valor de salida sustitutivo Substitu­
teOutput se emitirá en la salida.
• Mientras Reset esté ajustado a FALSE, se efectuará el cálculo del valor de sa­
lida.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 535
Instrucciones
10.11 Filter_DT1

10.11.5 Parámetros de salida Filter_DT1

Parámetro Tipo de datos Ajuste prede­ Descripción


terminado
Output REAL 0.0 Valor de salida
El valor de salida es remanente.
ErrorBits DWORD DW#16#0 El parámetro ErrorBits (Página 536) indica qué mensajes de error existen. Error­
Bits es remanente y se restablece con un flanco ascendente en Reset o ErrorAck.
Error BOOL FALSE Si Error está ajustado a TRUE, actualmente hay al menos un error presente.

10.11.6 Variables estáticas Filter_DT1

Variable Tipo de datos Ajuste predeter­ Descripción


minado
Td REAL 25.0 Tiempo derivativo en segundos
Rango admisible: Td ≥ [Link]
Lag REAL 5.0 Constante de tiempo de retardo en segundos
Rango admisible: Lag ≥ [Link]/2
ErrorMode INT 2 Selección del valor de salida sustitutivo en caso de error
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida de filtro válido
• 3 = 0.0
Rango admisible: de 0 a 3
StartMode INT 2 Selección del valor de salida para la primera llamada de la instruc­
ción
• 0 = Input
• 1 = SubstituteOutput
• 2 = último valor de salida
• 3 = 0.0
Rango admisible: de 0 a 3
CycleTime AuxFct_CycleTime - Datos del tiempo de ciclo
[Link] REAL 0.1 Tiempo de ciclo en segundos (intervalo entre 2 llamadas)
Rango admisible: [Link] > 0.0
[Link]­ BOOL TRUE Medición automática del tiempo de ciclo
bleMeasurement • FALSE = desactivada
• TRUE = activada

10.11.7 Parámetro ErrorBits


Si hay varios errores presentes a la vez, los valores de ErrorBits se muestran sumados
binariamente. Por ejemplo, si se muestra ErrorBits = 16#0000_0003, significa que los errores
16#0000_0001 y 16#0000_0002 están pendientes simultáneamente.

Regulación PID
536 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

Con Filter_DT1, los errores que se emiten en el parámetro ErrorBits se dividen en dos
categorías:
• Errores con mensajes de error ErrorBits < 16#0001_0000
• Errores con mensajes de error ErrorBits ≥ 16#0001_0000

Errores con mensajes de error ErrorBits < 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits < 16#0001_0000,
Filter_DT1 reacciona de la siguiente manera:
• Pese a este error, el valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO no cambia.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0000_0000 No hay ningún error presente.
0000_0001 Causa del error y reacción a errores:
El parámetro Output se ha limitado a -3.402823e+38 o a +3.402823e+38.
Solución:
Si el valor determinado por la función de filtro se emite en la salida (Reset = FALSE y ErrorBits <
16#0001_0000), compruebe las siguientes variables utilizadas en el cálculo del filtro:
• Input
• Td
• Lag
• [Link]
Si ErrorBits ≥ 16#0001_0000 y Reset = FALSE, el valor de salida sustitutivo se limitará al emitirse. En ese
caso, compruebe los siguientes parámetros dependiendo del valor ajustado en la variable ErrorMode:
• Input
• SubstituteOutput
Si Reset = TRUE, compruebe el parámetro SubstituteOutput.
0000_0002 Causa del error:
La medición del tiempo de ciclo da como resultado un valor no válido mientras se ejecuta el cálculo del va­
lor de salida (Reset = FALSE).
Reacción a errores:
Si ya se ha medido un valor válido del tiempo de ciclo, Filter_DT1 calcula el valor de salida a partir de este
último valor de la variable [Link].
Si previamente no se ha medido ningún valor válido del tiempo de ciclo, Filter_DT1 sigue emitiendo en el
parámetro Output el valor de salida que se ha configurado con la variable StartMode.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 537
Instrucciones
10.11 Filter_DT1

Errores con mensajes de error ErrorBits ≥ 16#0001_0000


Si están presentes uno o varios errores con mensajes de error ErrorBits ≥ 16#0001_0000,
Filter_DT1 reacciona de la siguiente manera:
• El valor de salida no puede determinarse del modo previsto. En su lugar se emite el valor
de salida sustitutivo.
• Se activa el parámetro de salida Error.
• La salida de habilitación ENO se pone a FALSE.
En cuanto deja de haber errores con mensajes de error ErrorBits ≥ 16#0001_0000, Filter_DT1
reacciona de la siguiente manera:
• El valor de salida se determina del modo siguiente:
– Si Reset = FALSE, se calcula el valor de salida por medio del algoritmo del filtro.
– Si Reset = TRUE, se emite la SubstituteOutput.
• La salida de habilitación ENO se pone a TRUE.
El parámetro de salida Error se borra en cuanto no hay errores.
ErrorBits Descripción

(DW#16#...)
0001_0000 Causa del error:
El parámetro SubstituteOutput u otra variable que se utiliza como valor de salida no tiene ningún valor
REAL válido.
Reacción a errores:
La salida se ajusta a 0.0.
Solución:
Asegúrese de que la variable que se utiliza como valor de salida sea un valor REAL válido (≠NaN, p. ej.,
16#7FFF_FFFF). La variable que se utiliza como valor de salida depende de Reset y ErrorMode:
Reset ErrorMode Valor de salida
FALSE 0 Input
FALSE 1 SubstituteOutput
TRUE - SubstituteOutput
0002_0000 Causa del error:
El parámetro Input no tiene ningún valor REAL válido mientras se ejecuta el cálculo del valor de salida (Re­
set = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Si ErrorMode = 0, se emite 0.0 como valor de salida.
Solución:
Asegúrese de que el parámetro Input sea un valor REAL válido (≠NaN, p. ej., 16#7FFF_FFFF).
0004_0000 Causa del error:
El cálculo del valor de salida da como resultado un valor REAL no válido para el parámetro Output.
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Compruebe todas las variables implicadas en el cálculo del valor de salida:
• Input
• Td
• Lag
• [Link]
Estas variables tienen valores válidos. El cálculo del valor de salida falla en esta combinación de variables.

Regulación PID
538 Manual de funciones, 11/2022, A5E35300231-AF
Instrucciones
10.11 Filter_DT1

ErrorBits Descripción

(DW#16#...)
0008_0000 Causa del error:
La variable Td o Lag tiene un valor no válido mientras se ejecuta el cálculo del valor de salida (Reset = FAL­
SE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones para los valores de las variables Td y Lag:
• [Link] ≤ Td ≤ 3.402823e+38
• [Link]/2 ≤ Lag ≤ 3.402823e+38
• Los valores son valores REAL válidos (≠ NaN, p. ej., 16#7FFF_FFFF).
Información adicional:
Tenga en cuenta que las condiciones [Link] ≤ Td y [Link]/2 ≤ Lag pueden vulnerarse
en los siguientes supuestos:
• El intervalo entre dos llamadas de Filter_DT1 es mayor que 2 * Lag o Td, p. ej., debido a llamadas con­
dicionadas durante la ejecución del programa o a puntos de parada activos.
• Una instantánea del DB de instancia de Filter_DT1 se carga como valores actuales en la CPU y desde la
creación de la instantánea ha transcurrido un plazo mayor que 2 * Lag o Td.
En estos supuestos, si está activada la medición automática del tiempo de ciclo, se detecta un error con el
mensaje de error ErrorBits = 16#0008_0000.
0020_0000 Causa del error:
La variable (configurada con StartMode) para la inicialización del parámetro Output en la primera llamada
de la instrucción no tiene ningún valor REAL válido.
Reacción a errores:
En la primera llamada de la instrucción se emite en el parámetro Output el valor de salida sustitutivo con­
figurado en la variable ErrorMode. En las siguientes llamadas, Filter_DT1 calcula el valor de salida a partir
de este valor de salida sustitutivo.
Solución:
Asegúrese de que la variable para la inicialización del parámetro Output sea un valor REAL válido (≠ NaN,
p. ej., 16#7FFF_FFFF). Si está ajustado Reset = FALSE, la inicialización será efectiva la primera vez que se
llame la instrucción después de cambiar el estado operativo de la CPU de STOP a RUN. La variable que se
utiliza para la inicialización del parámetro Output depende de StartMode:
• StartMode = 1: SubstituteOutput
• StartMode = 2: Output
0040_0000 Causa del error:
La variable [Link] no tiene ningún valor válido mientras se ejecuta el cálculo del valor de salida
(Reset = FALSE).
Reacción a errores:
En el parámetro Output se emite el valor de salida sustitutivo configurado en la variable ErrorMode.
Solución:
Asegúrese de que se cumplen las siguientes condiciones:
• 0.0 < [Link] ≤ 3.402823e+38
• [Link] es un valor REAL válido (≠ NaN p. ej., 16#7FFF_FFFF)
Información adicional:
Para un cálculo automático del valor de la variable [Link], ajuste la variable [Link]­
Measurement a TRUE.

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 539
Índice alfabético

C PID_Compact
Parámetros de entrada, 232
CONT_C
Parámetros de salida, 233
Funcionamiento, 397
Parámetros de entrada/salida, 234
Diagrama de bloques, 399
Instrucción, 259
Parámetros de entrada, 400
Parámetros de entrada, 262
Parámetros de salida, 401
Parámetros de salida, 263
CONT_S Variables estáticas, 264
Instrucción, 402
PID_Temp
Funcionamiento, 403
Conexión en cascada, 173
Diagrama de bloques, 404
Aplicaciones multizona, 179
Parámetros de entrada, 405
Funcionamiento, 345
Parámetros de salida, 406
Parámetros de entrada, 350
Parámetros de salida, 352
F Parámetros de entrada/salida, 353
Modo, 353
Filter_DT1, 527
Cascada, 353
Filter_PT1, 501 Parámetros State y Mode PID_Temp, 381
Filter_PT2, 514 Parámetro ErrorBits, 387
Variable ActivateRecoverMode, 390
Variable Warning, 392
O PwmPeriode, 393
Objetos tecnológicos Polyline, 448
PID_Compact, 71 PULSEGEN
PID_3Step, 107 Instrucción, 406
PID_Temp, 143 Funcionamiento, 408
CONT_C, 187
PULSEGEN
CONT_S, 191
Parámetros de entrada, 414
TCONT_CP, 193
Parámetros de salida, 415
TCONT_S, 214

P R
PID_3Step RampFunction, 465
Instrucción, 278 RampSoak, 479
Parámetros de entrada, 287 Reguladores de software
Parámetros de salida, 289 Configuración, 40
Parámetros de entrada/salida, 291
Instrucción, 311
Parámetros de entrada, 318
Parámetros de salida, 320
Variables estáticas, 321

Regulación PID
540 Manual de funciones, 11/2022, A5E35300231-AF
Índice alfabético

S
Símbolo
Para comparación de valores, 49
SplitRange, 459

T
TCONT_CP
Instrucción, 416
Funcionamiento, 416
Parámetros de entrada, 430
Parámetros de salida, 431
Parámetros de entrada/salida, 431
Variables estáticas, 432
TCONT_S
Instrucción, 438
Funcionamiento, 439
Parámetros de entrada, 444
Parámetros de salida, 445
Parámetros de entrada/salida, 445
Variables estáticas, 446

V
Valores
Comparar, 49

Regulación PID
Manual de funciones, 11/2022, A5E35300231-AF 541

También podría gustarte