Procesar proporcional + integral + derivativo (Process Proportional + Integral + Derivative, PPID)

Esta información corresponde a los controladores CompactLogix 5380P, ControlLogix 5580P y ControlLogix 5590.
Utilice la instrucción Procesar proporcional + integral + derivativo (PPID) para manipular la variable de control (CV) en lazos de control reguladores en respuesta a las lecturas de la variable de proceso (PV) y a las configuraciones del punto de ajuste (Setpoint [SP], la PV de destino).
La CV se utiliza normalmente como un punto de ajuste en cascada para un lazo de control secundario o interno, o se envía a un canal de salida analógica en una tarjeta de E/S (I/O).
La instrucción PPID integra las funciones de las PID, PIDE y P_PIDE AOI existentes en una sola instrucción integrada y agrega funciones adicionales.
La instrucción PPID:
  • Calcula la CV con el algoritmo PID de velocidad. El algoritmo de velocidad también se conoce como algoritmo incremental. El algoritmo de velocidad calcula el valor de la CV sumando
    D
    PTerm,
    D
    ITerm,
    D
    DTerm,
    D
    FF, y la CV de la ejecución anterior de la instrucción. Cuando Inp_UseCVPrev está establecida, la CV anterior se establece igual a Inp_CVPrev. Si Inp_UseFFPrev está establecida, el FF anterior se establece igual a Inp_FFPrev. Esto le permite predeterminar la CV en un valor especificado antes de que se calcule el valor de la CV de salida, CV = CV anterior +
    D
    PTerm +
    D
    ITerm +
    D
    DTerm +
    D
    FF. La forma de velocidad del algoritmo PID admite la transferencia sin perturbaciones en el cambio de parámetro.
  • Proporciona una opción para suprimir la transferencia sin perturbaciones en el cambio de ganancia. Cuando se selecciona esta opción, el cálculo PID se comporta como un algoritmo PID de posición en el que los cambios de la acción de control con error de lazo y sin error cambian.
  • Utiliza una fórmula PID de dos grados de libertad para calcular la CV con la acción PTerm proporcional derivada de la diferencia ponderada de la SP y la PV (b*SP-PV), la acción ITerm integral derivada del error de control (SP-PV) y la acción DTerm derivativa derivada del cambio en la diferencia ponderada de SP y PV (c*SP-PV). El cambio de la configuración de ponderación en el tiempo de ejecución no tiene perturbaciones.
  • Utiliza un algoritmo de error cuadrático (opción) con una CV más agresiva cuando surge un error. El uso del error cuadrático está restringido a PTerm.
  • Proporciona una acción Directa/Inversa (opción). La acción es Directa cuando la CV aumenta con el aumento de la PV (Cfg_CtrlAction=1). La acción es Inversa si la CV disminuye con el aumento de la PV (Cfg_CtrlAction=0).
  • Permite la banda muerta de desviación. La CV no es sensible a la variación del error de lazo cuando está dentro de la banda alrededor del error cero. Los niveles de banda configurados permiten una histéresis adicional. El nivel de banda muerta para la PV que se acerca al SP (Cfg_DevDBEnter) se puede establecer por debajo del nivel de banda muerta para la PV que se aleja del SP (Cfg_DevDB). El estado de banda muerta activa se establece para la PV dentro de la banda muerta. Proporciona una opción para detener los movimientos de la CV o simplemente detener la integración dejando una acción proporcional y derivativa en tiempo real cuando está en banda muerta (Cfg_UseIntegDevDB).
  • Muestra unidades de ingeniería en la interfaz de la aplicación
    Logix Designer
    . Los valores del SP y de la PV se muestran e introducen en unidades de ingeniería de PV. Val_CVSet para el destino de la CV y Val_CVOut para la salida de la CV se muestran e introducen en unidades de ingeniería de CV. El algoritmo PID utiliza todas las variables escaladas al porcentaje de extensión internamente y estos valores también están disponibles como salidas Val_PVPercent, Val_SPPercent, Val_EPercent y Val_CVPercent.
  • Se puede configurar para ganancias Independientes y Dependientes. La interpretación de los valores almacenados en las etiquetas PGain, IGain y DGain depende de la configuración de la instrucción.
    • Configuración de ganancias independientes: PGain = Kp ... ganancia proporcional, IGain = Ki ... ganancia integral [1/minuto], DGain = Kd ... ganancia derivativa [minutos].
    • Configuración de ganancias dependientes: PGain = K ... ganancia de controlador, IGain = Ti ... tiempo de restablecimiento [minutos], DGain = Td ... tiempo de régimen [minutos].
      Utilizar ganancias independientes cuando se desee que las tres ganancias para los términos proporcionales, integrales y derivativos funcionen de manera independiente. Utilizar ganancias dependientes cuando desee una ganancia del controlador general que afecte a los tres términos (P, I y D).
  • Proporciona uniformidad derivativa opcional (límite de derivativo a frecuencias altas). Un derivativo puro proporciona una amplificación muy grande del ruido de medición. Se pueden configurar los algoritmos PID dependientes e independientes para limitar la ganancia del término derivativo a frecuencias altas.
  • Garantías anti-windup. El algoritmo PID está equipado con una prevención (restablecer retroalimentación) de windup integral (restablecimiento). El windup interno se trata automáticamente cuando se satura la CV. El windup externo del lazo interno indicado por Inp_WindupHi o por Inp_WindupLo también se trata si las entradas están en uso.
  • Permite el seguimiento de las CV externas (opción). Cuando se ha establecido Cfg_UseCVTrack o el lazo interno no está disponible para la instrucción PPID (Inp_InnerAvailable es falso), la CV realiza un seguimiento del valor Inp_CVTrack. La opción es útil cuando el lazo interno (secundario) en cascada no es capaz de seguir el valor de la CV calculado por este PID de lazo externo (primario) y Inp_WindupHi o Inp_WindupLo no se utilizan o no son verdaderos. El seguimiento se permite con dinámicas configuradas y especificadas en Cfg_CVTrackGain. CVTrackGain se trata como ganancia de seguimiento Kt (1/minuto) para ganancias independientes o como una constante de tiempo de seguimiento Tt (minutos) para ganancias dependientes.
  • Proporciona la fijación y la progresión lineal del SP configuradas: fijación (en PVEU) y progresión lineal (en PVEU/segundos) del punto de ajuste en límites especificados (aumento y reducción independientes de los límites del índice de cambio).
  • Proporciona la fijación y la progresión lineal de la CV configuradas: fijación (en CVEU) y progresión lineal (en CVEU/segundos) de la CV en límites especificados (aumento y reducción independientes de los límites del índice de cambio).
  • Habilita la retroalimentación de mano de la CV.
  • Admite el funcionamiento desde estos orígenes de comandos: Mano, mantenimiento, anulación y control de lazo completo (Cascada, Automático con punto de ajuste, Manual con CV) de externo, programa y operador.
  • Admite tres modos de lazo automático (Automático, Cascada, Cascada/Relación) y un modo de lazo manual (Manual).
  • En el modo de lazo automático, el punto de ajuste (SP) en unidades de ingeniería (PVEU) se lee desde la entrada de programa, operador, anulación o externo. También puede introducir un destino de punto de ajuste en unidades de ingeniería de la PV (PVEU) y tiempo de aumento de progresión lineal (segundos) y usar un comando para activar una progresión lineal de punto de ajuste integrada.
  • En el modo de lazo manual, la variable de control (CV) en unidades de ingeniería se lee desde la entrada de programa, operador, anulación o externo.
  • Monitoriza las condiciones de enclavamiento que provocan que las salidas de la CV y del SP se restrinjan. La restricción de la CV se puede configurar para retener el último valor correcto de la CV o para usar el valor seguro configurado. El SP se restringe a la PV actual.
  • Monitoriza los fallos de comunicación de E/S (I/O).
  • Admite las operaciones de Encendido e Inicialización. En el Encendido, el SP, la CV y los modos de Lazo se establecen en valores configurados.
  • Monitoriza las condiciones de alarma para la Activación del enclavamiento, el Fallo de lazo, la Desviación Alta Alta, la Desviación Alta, la Desviación Baja y la Desviación Baja-Baja desde el punto de ajuste.
    • El estado Desviación alta-alta se activa cuando la diferencia entre el punto de ajuste y la variable de proceso calculada como PV-SP supera los umbrales configurados.
    • El estado Desviación alta se activa cuando la diferencia entre el punto de ajuste y la variable de proceso calculada como PV-SP supera los umbrales configurados.
    • El estado Desviación baja se activa cuando la diferencia entre el punto de ajuste y la variable de proceso calculada como PV-SP supera los umbrales configurados.
    • El estado Desviación baja-baja se activa cuando la diferencia entre el punto de ajuste y la variable de proceso calculada como PV-SP supera los umbrales configurados.
    • El estado de Fallo de lazo se activa cuando la PPID indica un error grave de configuración, como límites de fijación inválidos, límites de escalado y bandas muertas. Este estado también se activa cuando la calidad de la PV no es lo suficientemente buena para que el lazo PID funcione, y cuando el estado/entrada de Fallo de E/S (I/O) es verdadero. Este estado también se activa cuando se informa sobre una entrada de retroalimentación de mano incorrecta.
    • El estado de activación de enclavamiento se activa cuando una condición incorrecta de enclavamiento hace que la CV de salida cambie al valor de la CV de enclavamiento configurado o retenga su último valor. Si los enclavamientos no se han evitado, la condición incorrecta de un enclavamiento evitable o de un enclavamiento no evitable inicia una activación del enclavamiento. Si se evitan los enclavamientos, solo una condición incorrecta de un enclavamiento no evitable inicia una activación de enclavamiento.
Idiomas disponibles
Diagrama de lógica de escalera
PPID_avail_ladder_v33
Diagrama de bloque de funciones
PPID_avail_fbd_v33
Texto estructurado
PPID(PPID tag, BusObj);
Operandos
IMPORTANTE: Puede ocurrir un funcionamiento inesperado si:
  • Los operandos de etiqueta de salida se sobrescriben.
  • Los miembros de un operando de estructura se sobrescriben.
  • A no ser que se especifica, los operandos de estructura son compartidos por varias instrucciones.
Existen reglas de conversión de datos para utilizar diversos tipos de datos numéricos en una instrucción. Consulte
Conversiones de datos
.
Operandos de configuración
Operando
Tipo
Formato
Descripción
PlantPAx Control
P_PID
etiqueta
Estructura de datos requerida para el funcionamiento adecuado de la instrucción.
BusObj
BUS_OBJ
etiqueta
Componente de bus. Puede ser nulo.
Estructura de P_PID
Los miembros públicos son miembros de etiqueta estándar y visible que son accesibles mediante programación. Los miembros privados u ocultos se usan en las plantillas de HMI y no son accesibles mediante programación. Los miembros privados se muestran en tablas independientes luego de los miembros públicos.
Miembro de entrada pública
Tipo de datos
Valor predeterminado
Descripción
EnableIn
BOOL
Verdadera
Habilita la entrada.
Diagrama de lógica de escalera:
Corresponde a la condición del renglón.
El valor predeterminado es verdadero.
Inp_InitializeReq
BOOL
Verdadera
1 = Solicita la inicialización de la instrucción. Normalmente, la instrucción se inicializa en la primera ejecución de la instrucción. Utilice esta solicitud para reinicializar. Cuando Inp_InitializeReq = 1, se utilizan los valores de configuración del encendido. La instrucción borra este operando automáticamente.
El valor predeterminado es verdadero.
Inp_OwnerCmd
DINT
0
Comando del dispositivo propietario:
0 = Ninguno,
Inp_OwnerCmd.10 = Bloqueo de operador,
Inp_OwnerCmd.11 = Desbloqueo de Operador,
Inp_OwnerCmd.12 = Bloqueo de Programa,
Inp_OwnerCmd.13 = Desbloqueo de programa,
Inp_OwnerCmd.14 = Adquirir mantenimiento,
Inp_OwnerCmd.15 = Liberar Mantenimiento,
Inp_OwnerCmd.16 = Adquirir Externo,
Inp_OwnerCmd.17 = Liberar Externo,
Inp_OwnerCmd.29 = Eco.
El valor predeterminado es 0.
Inp_PV
REAL
0,0
Variable de proceso (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_CascSP
REAL
0,0
SP en modo de lazo en cascada, PV independiente en modo de lazo de relación (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_FF
REAL
0,0
Término de proalimentación (CVEU).
Cualquier flotante válido entre -(Cfg_CVEUMax-Cfg_CVEUMin) y (Cfg_CVEUMax-Cfg_CVEUMin).
El valor predeterminado es 0,0.
Inp_FFPrev
REAL
0,0
Escaneado de proalimentación anterior (CVEU) cuando Inp_UseFFPrev = 1.
Cualquier flotante válido entre -(Cfg_CVEUMax-Cfg_CVEUMin) y (Cfg_CVEUMax-Cfg_CVEUMin).
El valor predeterminado es 0,0.
Inp_CVTrack
REAL
0,0
CV para realizar seguimiento si Cfg_UseCVTrack = 1 o si Inp_InnerAvailable = 0 (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_CVInitialVal
REAL
0,0
Valor para inicializar la CV por solicitud Inp_UseCVInitialVal=1 (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_CVPrev
REAL
0,0
Escaneado anterior de CV, Val_CVOut (CVEU).
Cualquier flotante válido entre Cfg_CVEUMin y Cfg_CVEUMax.
El valor predeterminado es 0,0.
Inp_UseFFPrev
BOOL
Falsa
1 = Utilizar Inp_FFPrev como valor de FF anterior,
0 = Utilizar el valor de Inp_FF de la última exploración como valor FF anterior.
El valor predeterminado es falso.
Inp_UseCVInitialVal
BOOL
Falsa
1 = Inicializar la CV para Inp_CVInitialVal.
El valor predeterminado es falso.
Inp_UseCVPrev
BOOL
Falsa
1 = Utilizar Inp_CVPrev como valor de CV anterior,
0 = Utilizar el valor de la última exploración.
El valor predeterminado es falso.
Inp_WindupHi
BOOL
Falsa
Señal de Windup alta. Si es verdadero, la CV no se puede integrar en una dirección positiva. Normalmente, la señal se obtiene de la salida Windup alta de un lazo interno.
El valor predeterminado es falso.
Inp_WindupLo
BOOL
Falsa
Señal de Windup baja. Si el valor es verdadero, la CV no se puede integrar en una dirección negativa. Normalmente, la señal se obtiene de la salida windup baja de un lazo interno.
El valor predeterminado es falso.
Inp_InnerAvailable
BOOL
Verdadera
1 = El lazo interno está disponible.
0 = El lazo interno no está disponible, PPID realiza un seguimiento de Inp_CVTrack, normalmente SP de lazo interno o posición del accionador.
El valor predeterminado es verdadero.
Inp_IntlkOK
BOOL
Verdadera
1 = Enclavamientos evitables correctos, se puede establecer la CV.
El valor predeterminado es verdadero.
Inp_NBIntlkOK
BOOL
Verdadera
1 = Enclavamientos no evitables correctos, se puede establecer la CV.
El valor predeterminado es verdadero.
Inp_IntlkAvailable
BOOL
Falsa
1 = Disponibilidad de enclavamiento correcta.
El valor predeterminado es falso.
Inp_IntlkTripInh
BOOL
Falsa
1 = Estado de activación de enclavamiento inhibido.
El valor predeterminado es falso.
Inp_RdyReset
BOOL
Falsa
1 = El objeto relacionado, restablecido por este objeto, está listo para ser restablecido. Listo para ORdy_Reset, habilita el botón de HMI.
El valor predeterminado es falso.
Inp_CVIOFault
BOOL
Falsa
1 = Estado incorrecto de las comunicaciones de E/S (I/O) de la CV,
0 = Correcto.
El valor predeterminado es falso.
Inp_PVBad
BOOL
Falsa
1 = Estado incorrecto de las comunicaciones de E/S (I/O) de la PV o de calidad de la PV,
0 = Correcto.
El valor predeterminado es falso.
Inp_PVUncertain
BOOL
Falsa
1 = Valor de PV no confiable,
0 = Correcto.
El valor predeterminado es falso.
Inp_PVSrcQ
SINT
0
Estado y calidad del origen de Inp_PV:
0 = Correcto, en directo, correcto confirmado,
1 = Correcto, en directo, se asume correcto,
2 = Correcto, sin retroalimentación, se asume correcto,
8 = Prueba, simulada,
9 = Prueba, lazo invertido,
10 = Prueba, introducido manualmente,
16 = Incierto, en directo, especificación desactivada,
17 = Incierto, sustituido en el dispositivo,
18 = Incierto, sustituido en la instrucción,
19 = Incierto, usando el último valor correcto conocido,
20 = Incierto, usando el valor de reemplazo,
32 = Incorrecto, fallo de señal,
33 = Incorrecto, fallo de canal,
34 = Incorrecto, fallo del módulo/comunicación,
35 = Incorrecto, configuración inválida.
El valor predeterminado es 0.
Inp_PVNotify
SINT
0
Estado de prioridad y confirmación de la alarma del objeto de la PV relacionada:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
El valor predeterminado es 0.
Inp_CVNotify
SINT
0
Estado de prioridad y confirmación de la alarma del objeto de la CV relacionada:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
El valor predeterminado es 0.
Inp_CascSPNotify
SINT
0
Estado de prioridad y confirmación de la alarma del objeto del SP en cascada relacionado:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
El valor predeterminado es 0.
Inp_HiHiDevGate
BOOL
Verdadera
Entrada de compuerta utilizada para la detección del estado de desviación alta alta:
1 = La monitorización del umbral de entrada analógica correspondiente está habilitada,
0 = La detección está deshabilitada y la salida del estado correspondiente está desactivada de manera forzada.
El valor predeterminado es verdadero.
Inp_HiDevGate
BOOL
Verdadera
Entrada de compuerta utilizada para la detección del estado de desviación alta:
1 = La monitorización del umbral de entrada analógica correspondiente está habilitada,
0 = La detección está deshabilitada y la salida del estado correspondiente está desactivada de manera forzada.
El valor predeterminado es verdadero.
Inp_LoDevGate
BOOL
Verdadera
Entrada de compuerta utilizada para la detección del estado de desviación baja:
1 = La monitorización del umbral de entrada analógica correspondiente está habilitada,
0 = La detección está deshabilitada y la salida del estado correspondiente está desactivada de manera forzada.
El valor predeterminado es verdadero.
Inp_LoLoDevGate
BOOL
Verdadera
Entrada de compuerta utilizada para la detección del estado de desviación baja baja:
1 = La monitorización del umbral de entrada analógica correspondiente está habilitada,
0 = La detección está deshabilitada y la salida del estado correspondiente está desactivada de manera forzada.
El valor predeterminado es verdadero.
Inp_Hand
BOOL
Falsa
1 = Adquirir mano,
0 = Liberar mano.
El valor predeterminado es falso.
Inp_HandFdbk
REAL
0,0
Retroalimentación de la CV utilizada cuando el propietario es mano (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_HandFdbkBad
BOOL
Falsa
1 = Estado incorrecto de la calidad de la retroalimentación de mano de la CV o de las comunicaciones de E/S (I/O),
0 = Correcto.
El valor predeterminado es falso.
Inp_Ovrd
BOOL
Falsa
1 = Adquirir anulación (lógica de programa de mayor prioridad),
0 = Liberar anulación.
El valor predeterminado es falso.
Inp_OvrdCmd
SINT
0
Comando de modo de lazo en anulación:
0 = Ninguno,
1 = Manual,
2 = Automático,
3 = Cascada,
4 = Normal,
5 = Iniciar la progresión lineal del SP,
6 = Detener la progresión lineal del SP.
El valor predeterminado es 0.
Inp_OvrdSP
REAL
0,0
SP automático de lazo en anulación (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_OvrdSPTarget
REAL
0,0
Configuración de anulación del destino del SP en el asistente de progresión lineal (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_OvrdSPRampTime
REAL
0,0
Configuración de anulación del tiempo para alcanzar el destino del SP en el asistente de progresión lineal (segundos).
Válido = de 0,0 a 28800,0 segundos.
El valor predeterminado es 0,0.
Inp_OvrdRatio
REAL
1,0
Relación de lazo en anulación (sin unidades).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,0.
Inp_OvrdCV
REAL
0,0
CV Manual de lazo en anulación (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Inp_ExtInh
BOOL
Falsa
1 = Inhibir la adquisición de externo,
0 = Permitir la adquisición de externo.
El valor predeterminado es falso.
Inp_Reset
BOOL
Falsa
1 = Restablecer enclavamientos de restricción y alarmas retenidas cuyas condiciones han vuelto a la normalidad.
El valor predeterminado es falso.
Cfg_AllowDisable
BOOL
Verdadera
1 = Permite que el mantenimiento deshabilite las alarmas.
El valor predeterminado es verdadero.
Cfg_AllowShelve
BOOL
Verdadera
1 = Permite al operador archivar alarmas.
Cfg_HasRatio
BOOL
Falsa
1 = El modo de lazo de cascada es Relación,
0 = El modo de lazo de cascada es Cascada.
El valor predeterminado es falso.
Cfg_HasCasc
BOOL
Falsa
1 = Permitir que el lazo sea ubicado en modo Cascada/Relación.
El valor predeterminado es falso.
Cfg_HasAuto
BOOL
Verdadera
1 = Habilitar el lazo para que sea ubicado en modo Automático.
El valor predeterminado es verdadero.
Cfg_HasMan
BOOL
Verdadera
1 = Habilitar el lazo para que sea ubicado en modo Manual.
El valor predeterminado es verdadero.
Cfg_HasSPRamp
BOOL
Falsa
1 = Habilitar la función del asistente de progresión lineal del SP.
El valor predeterminado es falso.
Cfg_ExecTime
REAL
0,0
Período de ejecución del algoritmo PID (segundos).
Configurar la instrucción para el período de ejecución = 0,0 (predeterminado) o un período más corto que el tiempo de escaneado de la instrucción no tiene ningún efecto y el algoritmo PID se ejecuta en cada escaneado. Para el período de ejecución real compruebe Val_ExecTime.
Válido = de 0,0 a 2147483,0 segundos.
El valor predeterminado es 0,0.
Cfg_PGain
REAL
0,0
Ganancia proporcional Kp para ganancias independientes o ganancia de lazo Kc para ganancias dependientes (sin unidades).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_IGain
REAL
0,0
Ganancia integral Ki (1/minuto) para ganancias independientes o un tiempo de restablecimiento Ti (minutos/repetición) para ganancias dependientes.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_DGain
REAL
0,0
Ganancia derivada Kd (minutos) para ganancias independientes o tiempo de régimen Td (minutos) para ganancias dependientes.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_CVTrackGain
REAL
0,0
Ganancia de seguimiento Kt (1/minuto) para ganancias independientes o constante de tiempo de seguimiento Tt (minutos) para ganancias dependientes para la CV con el fin de realizar un seguimiento de Inp_CVTrack si Cfg_UseCVTrack = 1.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_UseCVTrack
BOOL
Falsa
1 = Utilizar la retroalimentación de restablecimiento Inp_CVTrack en el seguimiento, por ejemplo, si la salida PPID es considerablemente más rápida que el accionador o el lazo interno, o en el control de la selección de anulación.
Cfg_PSPWeight
REAL
1,0
Ponderación en el SP en término proporcional en 2DOF PID, ganancia beta.
Válido = de 0,0 a 1,5.
El valor predeterminado es 1,0.
Cfg_DSPWeight
REAL
0,0
Ponderación en el SP en término derivativo en 2DOF PID, ganancia gamma.
Válido = de 0,0 a 1,5.
El valor predeterminado es 0,0.
Cfg_PVTrack
BOOL
Falsa
1 = SP realiza un seguimiento de PV en manual.
0 = Sin seguimiento de PV.
El valor predeterminado es falso.
Cfg_GainBumpless
BOOL
Verdadera
1 = La respuesta de la CV al cambio de PGain y DGain no tiene perturbaciones,
0 = La respuesta de la CV a los cambios de PGain y DGain no es sin perturbaciones (como en el algoritmo de posición).
El valor predeterminado es verdadero.
Cfg_PositionBump
BOOL
Falsa
1 = Forma de posición del algoritmo PD sin una transferencia sin perturbaciones de Manual a Automático o Cascada. Solo está habilitado cuando Cfg_IGain = 0. El cambio de la ganancia proporcional no está exento de perturbaciones.
0 = Forma de velocidad del algoritmo PID con transferencia sin perturbaciones de Manual a Automático o Cascada.
El valor predeterminado es falso.
Cfg_UseESquared
BOOL
Falsa
1 = Se usa error cuadrático para la acción proporcional.
El valor predeterminado es falso.
Cfg_CtrlAction
BOOL
Falsa
1 = Acción de control en E = PV-SP, acción directa
0 = Acción de control en E = SP-PV, acción inversa.
El valor predeterminado es falso.
Cfg_Dependent
BOOL
Falsa
1 = Ecuación de ganancias dependientes,
0 = Ecuación de ganancias independientes.
El valor predeterminado es falso.
Cfg_UseDSmoothing
BOOL
Falsa
1 = Usar uniformidad derivativa.
El valor predeterminado es falso.
Cfg_DevDB
REAL
0,0
Banda muerta de desviación de la PV para PV que se aleja del SP (PVEU).
Válido = de 0,0 a flotante positivo máximo.
Cfg_DevDBEnter
REAL
0,0
Banda muerta de desviación de la PV para PV que se acerca al SP (PVEU).
Válido = de 0,0 a Cfg_DevDB.
Cfg_UseIntegDevDB
BOOL
Falsa
1 = Solo el término integral se suspende cuando el estado de banda muerta de la desviación de la PV está activo, los términos proporcionales y derivativos siguen operativos,
0 = Todos los términos PID se suspenden y la CV no se mueve cuando está activo el estado de banda muerta de la desviación de la PV.
El valor predeterminado es falso.
Cfg_SkipCVManLim
BOOL
Verdadera
1 = Omitir la fijación de la CV en modo Lazo manual y omite la restricción de la CV,
0 = Aplicar siempre fijación de CV.
Cfg_SkipCVManRoC
BOOL
Verdadera
1 = Omitir la limitación del régimen de cambio de la CV en modo Lazo manual y omite la restricción de la CV,
0 = Aplicar siempre limitación del régimen de cambio de CV.
Cfg_InitializeToMan
BOOL
Falsa
1 = Ir al modo Lazo manual cuando se solicita la inicialización (Inp_UseCVInitialVal=1).
El valor predeterminado es falso.
Cfg_SetTrack
BOOL
Verdadera
1 = Seguimiento de la configuración de programa/operador/externo,
0 = Sin seguimiento de configuración.
El valor predeterminado es verdadero.
Cfg_SetTrackOvrdHand
BOOL
Falsa
1 = La configuración de programa/operador/externo hace el seguimiento de las entradas de anulación/mano (CV, SP, Relación).
El valor predeterminado es falso.
Cfg_HasIntlkObj
BOOL
Falsa
1 = Indica al HMI que hay un objeto de enclavamiento (PINTLK) conectado a Inp_IntlkOK, InpNBIntlkOK, Inp_IntlkAvailable, Inp_IntlkTripInh e Inp_RdyReset.
El valor predeterminado es falso.
Cfg_HasMoreObj
BOOL
Falsa
1 = Indica al HMI que un objeto con más información está disponible.
El valor predeterminado es falso.
Cfg_HasHistTrend
SINT
0
Tiene tendencia histórica. Esto permite la navegación a la plantilla de tendencia histórica del dispositivo desde el HMI.
0 = Sin tendencia histórica externa,
1 = Tendencia histórica de registro de datos,
2 = Tendencia histórica de Historian.
El valor predeterminado es 0.
Cfg_HasCascSPNav
BOOL
Falsa
1 = Indica a HMI que habilite la navegación a un objeto del SP en cascada conectado.
El valor predeterminado es falso.
Cfg_HasPVNav
BOOL
Falsa
1 = Indica a HMI que habilite la navegación a un objeto de la PV conectado.
El valor predeterminado es falso.
Cfg_HasCVNav
BOOL
Falsa
1 = Indica a HMI que habilite la navegación a un objeto de CV conectado.
El valor predeterminado es falso.
Cfg_HasOper
BOOL
Verdadera
1 = Existe un operador (desbloqueado), se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_HasOperLocked
BOOL
Verdadera
1 = Existe un operador bloqueado, se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_HasProg
BOOL
Verdadera
1 = Existe un programa (desbloqueado), se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_HasProgLocked
BOOL
Verdadera
1 = Existe un programa bloqueado, se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_HasExt
BOOL
Falsa
1 = Existe un externo, se puede seleccionar.
El valor predeterminado es falso.
Cfg_HasMaint
BOOL
Verdadera
1 = Existe un mantenimiento, se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_HasMaintOoS
BOOL
Verdadera
1 = Existe un mantenimiento fuera de servicio, se puede seleccionar.
El valor predeterminado es verdadero.
Cfg_OvrdOverLock
BOOL
Verdadera
1 = Anulación reemplaza a Bloqueo de programa/operador,
0 = No anular el bloqueo.
El valor predeterminado es verdadero.
Cfg_ExtOverLock
BOOL
Falsa
1 = Externo reemplaza el bloqueo de programa/operador,
0 = No anular el bloqueo.
El valor predeterminado es falso.
Cfg_eKeepLM
SINT
0
Propiedad del modo Lazo:
0 = Sigue el origen del comando,
1 = Operador,
2 = Programa,
3 = Externo.
El valor predeterminado es 0.
Cfg_eKeepCV
SINT
0
Propiedad de la CV:
0 = Sigue el origen del comando,
1 = Operador,
2 = Programa,
3 = Externo.
El valor predeterminado es 0.
Cfg_eKeepSP
SINT
0
Propiedad del SP:
0 = Sigue el origen del comando,
1 = Operador,
2 = Programa,
3 = Externo.
El valor predeterminado es 0.
Cfg_eKeepRatio
SINT
0
Propiedad de la Relación:
0 = Sigue el origen del comando,
1 = Operador,
2 = Programa,
3 = Externo.
El valor predeterminado es 0.
Cfg_ProgPwrUp
BOOL
Falsa
1 = Encendido de programa,
0 = Encendido de operador.
El valor predeterminado es falso.
Cfg_ProgNormal
BOOL
Falsa
Origen normal:
1 = Programa si no hay solicitudes,
0 = Operador si no hay solicitudes.
El valor predeterminado es falso.
Cfg_PCmdPriority
BOOL
Falsa
Prioridad de comando:
1 = Los comandos de programa ganan,
0 = Los comandos de operador ganan.
El valor predeterminado es falso.
Cfg_PCmdProgAsLevel
BOOL
Falsa
1 = PCmd_Prog utilizado como Nivel (1 = Prog, 0 = Oper).
El valor predeterminado es falso.
Cfg_PCmdLockAsLevel
BOOL
Falsa
1 = PCmd_Lock utilizado como Nivel (1 = Bloquear, 0 = Desbloquear).
El valor predeterminado es falso.
Cfg_ExtAcqAsLevel
BOOL
Falsa
1 = XCmd_Acq utilizado como Nivel (XCmd_Acq = 1 adquirir comando externo, XCmd_Acq = 0 liberar comando externo).
El valor predeterminado es falso.
Cfg_OvrdIntlk
BOOL
Falsa
1 = La anulación evita (ignora) los enclavamientos evitables.
0 = La anulación permanece junto a todas las condiciones de enclavamiento.
El valor predeterminado es falso.
Cfg_SPFailLatch
BOOL
Falsa
1 = Enclavar en la acción de restricción del fallo del SP hasta restablecer,
0 = Retornar cuando el SP sea correcto.
El valor predeterminado es falso.
Cfg_PVFailLatch
BOOL
Falsa
1 = Enclavar en la acción de restricción del fallo de la PV hasta restablecer,
0 = Retornar cuando la PV sea correcta.
El valor predeterminado es falso.
Cfg_CVFailLatch
BOOL
Falsa
1 = Enclavar en la acción de restricción del fallo de la CV hasta restablecer,
0 = Retornar cuando la CV sea correcta.
El valor predeterminado es falso.
Cfg_LockLM
BOOL
Falsa
Modo de lazo de bloqueo:
1 = Bloqueado en modo de bucle configurado como Normal (consultar Cfg_NormLM),
0 = No bloqueado.
El valor predeterminado es falso.
Cfg_NormLM
SINT
1
Modo de lazo definido como Normal:
0 = Deshabilitar la selección de Normal,
1 = Manual,
2 = Automático,
3 = Cascada.
El valor predeterminado es 1.
Cfg_PwrUpLM
SINT
4
Modo de lazo definido para el Encendido:
0 = Sin cambio: modo de bucle, la CV y el SP se inicializan utilizando los últimos valores (de apagado),
1 = Manual,
2 = Automático,
3 = Cascada,
4 = Normal.
El valor predeterminado es 4.
Cfg_PVFailTrigger
SINT
1
Respuesta del estado de fallo de la PV sobre la calidad de la PV:
0 = Respuesta de fallo de la PV en Inp_PVBad O Inp_PVSrcQ >= 32 (PV incorrecta),
1 = Respuesta de fallo de la PV en Inp_PVBad O Inp_PVSrcQ >= 17 Y Inp_PVSrcQ <> 18,
2 = Respuesta de fallo de la PV en Inp_PVBad O Inp_PVUncertain O Inp_PVSrcQ >= 16 Y Inp_PVSrcQ <> 18.
El valor predeterminado es 1.
Cfg_IntlkTripSPAction
SINT
0
Acción del SP sobre la Activación de enclavamiento:
0 = Ninguno,
1 = Retener el último correcto,
2 = Usar Cfg_SPIntlk,
3 = Establecer el SP en la PV actual.
El valor predeterminado es 0.
Cfg_SPFailSPAction
SINT
1
Fallo de SP acción de SP:
1 = Retener el último correcto,
2 = Usar Cfg_SPIntlk,
3 = Establecer el SP en la PV actual.
El valor predeterminado es 1.
Cfg_PVFailSPAction
SINT
0
PV Fail SP action:
0 = Ninguno,
1 = Retener el último correcto,
2 = Usar Cfg_SPIntlk.
El valor predeterminado es 0.
Cfg_CVFailSPAction
SINT
0
Fallo de CV acción de SP:
0 = Ninguno,
1 = Retener el último correcto,
2 = Usar Cfg_SPIntlk,
3 = Establecer el SP en la PV actual.
El valor predeterminado es 0.
Cfg_IntlkTripCVAction
SINT
2
Acción de la CV sobre la Activación de enclavamiento:
0 = Ninguno,
1 = Retener el último correcto,
2 = Usar Cfg_CVIntlk.
El valor predeterminado es 2.
Cfg_SPFailCVAction
SINT
1
Fallo de SP acción de CV:
0 = Ninguno,
1 = Retener el último correcto,
2 = Usar Cfg_CVIntlk.
El valor predeterminado es 1.
Cfg_PVFailCVAction
SINT
1
Fallo de PV acción de CV:
1 = Retener la última CV,
2 = Usar Cfg_CVIntlk.
El valor predeterminado es 1.
Cfg_CVFailCVAction
SINT
1
CV Fail CV action:
1 = Retener el último correcto,
2 = Usar Cfg_CVIntlk.
El valor predeterminado es 1.
Cfg_IntlkTripLMAction
SINT
0
Acción del modo de lazo sobre la Activación de enclavamiento:
0 = Ninguno,
1 = Solo Manual,
2 = Solo Automático o Manual.
El valor predeterminado es 0.
Cfg_SPFailLMAction
SINT
0
Acción del modo de lazo sobre el Fallo del SP:
0 = Ninguno,
1 = Solo Manual,
2 = Solo Automático o Manual.
El valor predeterminado es 0.
Cfg_PVFailLMAction
SINT
0
Acción del modo de lazo sobre el Fallo del PV:
0 = ninguno,
1 = Solo Manual,
2 = Solo Automático o Manual.
El valor predeterminado es 0.
Cfg_CVFailLMAction
SINT
0
Acción del modo de lazo sobre el Fallo del CV:
0 = Ninguno,
1 = Solo Manual,
2 = Solo Automático o Manual.
El valor predeterminado es 0.
Cfg_PVDecPlcs
SINT
2
Número de posiciones decimales para la visualización de PV/SP (hasta seis).
El valor predeterminado es 2.
Cfg_CVDecPlcs
SINT
2
Número de posiciones decimales para la visualización de la CV (hasta seis).
El valor predeterminado es 2.
Cfg_RatioDecPlcs
SINT
2
Número de posiciones decimales para la visualización de Relación (hasta seis).
El valor predeterminado es 2.
Cfg_RatioLoLim
REAL
0,0
Valor mínimo permitido de Relación (sin unidades).
Válido cualquier flotante inferior o igual a Cfg_RatioHiLim.
El valor predeterminado es 0,0.
Cfg_RatioHiLim
REAL
1,0
Valor máximo permitido de Relación (sin unidades).
Válido cualquier flotante superior o igual a Cfg_RatioLoLim.
El valor predeterminado es 1,0.
Cfg_SPLoLim
REAL
0,0
Valor SP mínimo permitido (PVEU).
Válido cualquier flotante inferior o igual a Cfg_SPHiLim y superior o igual a Cfg_PVEUMin.
El valor predeterminado es 0,0.
Cfg_SPHiLim
REAL
100,0
Valor máximo permitido del SP (PVEU).
Válido cualquier flotante superior o igual a Cfg_SPLoLim e inferior o igual a Cfg_PVEUMax.
El valor predeterminado es 100,0.
Cfg_SPRoCIncrLim
REAL
0,0
Valor en aumento máximo permitido del índice de cambio del SP (PVEU/segundo). El índice de cambio del SP es ilimitado cuando aumenta si Cfg_SPRoCIncrLim = 0,0.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_SPRoCDecrLim
REAL
0,0
Valor en disminución máximo permitido del índice de cambio del SP (PVEU/segundo). El índice de cambio del SP es ilimitado cuando disminuye si Cfg_SPRoCDecrLim = 0,0.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_SkipSPRoCLim
BOOL
Falsa
1 = Omitir la limitación del régimen de cambio del punto de ajuste en enclavamiento, mantenimiento y anulación.
El valor predeterminado es falso.
Cfg_SPRampMaxDev
REAL
100,0
Si el valor absoluto de desviación supera este valor, pausar la progresión lineal del SP, 0,0 = Nunca pausar (PVEU).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 100,0.
Cfg_PVEUMin
REAL
0,0
Valor mínimo de la PV para el escalado de unidades de ingeniería a %, PV al 0% (PVEU).
Válido cualquier flotante inferior a Cfg_PVEUMax.
El valor predeterminado es 0,0.
Cfg_PVEUMax
REAL
100,0
Valor máximo de la PV para el escalado de unidades de ingeniería a %, PV al 100 % (PVEU).
Válido = cualquier flotante mayor que Cfg_PVEUMin.
El valor predeterminado es 100,0.
Cfg_CVEUMin
REAL
0,0
Valor mínimo de la CV para el escalado de % a unidades de ingeniería (CVEU).
Válido cualquier flotante inferior a Cfg_CVEUMax.
El valor predeterminado es 0,0.
Cfg_CVEUMax
REAL
100,0
Valor máximo de la CV para el escalado de % a unidades de ingeniería (CVEU).
Válido = cualquier flotante mayor que Cfg_CVEUMin.
Cfg_CVLoLim
REAL
0,0
Valor mínimo de la CV permitido (CVEU).
Valida cualquier flotante menor o igual que Cfg_CVHiLim y mayor o igual que Cfg_CVEUMin.
El valor predeterminado es 0,0.
Cfg_CVHiLim
REAL
100,0
Valor máximo de la CV permitido (CVEU).
Valida cualquier flotante mayor o igual que Cfg_CVLoLim y menor o igual que Cfg_CVEUMax.
El valor predeterminado es 100,0.
Cfg_CVRoCIncrLim
REAL
0,0
Valor de aumento del índice de cambio de la CV máximo permitido (EU de la CV/segundo). El índice de cambio de la CV es ilimitado cuando aumenta si Cfg_CVRoCIncrLim = 0,0
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_CVRoCDecrLim
REAL
0,0
Valor en descenso máximo permitido del índice de cambio de la CV (CVEU/segundo). El índice de cambio de la CV es ilimitado cuando disminuye si Cfg_CVRoCDecrLim = 0,0.
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 0,0.
Cfg_MaxInactiveCV
REAL
0,0
Cuando Val_CVOut es mayor que este valor, configure Sts_Active para HMI (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
Cfg_SPIntlk
REAL
0,0
Valor SP para usar con enclavamiento/acción de SP de valor incorrecto (PVEU). Válido cualquier flotante entre Cfg_PVEUMin y Cfg_PVEUMax.
Cfg_CVIntlk
REAL
0,0
Valor del CV para utilizar con enclavamiento / acción del CV por valor incorrecto (CVEU). Cualquier flotante válido entre Cfg_CVEUMin y Cfg_CVEUMax.
Cfg_SPPwrUp
REAL
0,0
SP de lazo en el Encendido (PVEU) que se utiliza cuando Cfg_PwrUpLM no es 0. El valor se fija al rango del SP (Cfg_SPLoLim, Cfg_SPHiLim).
Válido cualquier flotante entre Cfg_PVEUMin y Cfg_PVEUMax.
Cfg_CVPwrUp
REAL
0,0
CV de lazo durante el encendido (CVEU) usado cuando Cfg_PwrUpLM no es 0. El valor se puede fijar a los límites configurados (Cfg_CVLoLim, CfgHiLim) en cascada o en automático y en manual si está configurado de ese modo.
Cualquier flotante válido entre Cfg_CVEUMin y Cfg_CVEUMax.
Cfg_CVPwrUpSel
SINT
0
Selección de la CV de Encendido (primera ejecución) en automático o cascada.
0 = Ignorar Inp_InnerAvailable y utilizar siempre Cfg_CVPwrUp o la última CV (de apagado) (si Cfg_PwrpUpLM = 0),
1 = Procesar Inp_InnerAvailable.
El valor predeterminado es falso.
Cfg_HiHiDevLim
REAL
1,5e+38
Umbral del estado de desviación Alta-Alta de la PV (PVEU).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,5e+38.
Cfg_HiHiDevDB
REAL
0,0
Banda muerta del estado de desviación Alta-Alta de la PV (PVEU).
Válido = de 0,0 a Cfg_HiHiDevLim.
El valor predeterminado es 0,0.
Cfg_HiHiDevGateDly
REAL
0,0
Retardo de compuerta del estado de desviación Alta-Alta de la PV (segundo).
Válido = de 0,0 a 2147483,0 segundos.
El valor predeterminado es 0,0.
Cfg_HiDevLim
REAL
1,5e+38
Umbral del estado de desviación Alta de la PV (PVEU).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,5e+38.
Cfg_HiDevDB
REAL
0,0
Banda muerta del estado de desviación Alta de la PV (PVEU).
Válido = de 0,0 a Cfg_HiDevLim.
El valor predeterminado es 0,0.
Cfg_HiDevGateDly
REAL
0,0
Retardo de compuerta del estado de desviación Alta de la PV (segundo).
Válido = de 0,0 a 2147483,0 segundos.
El valor predeterminado es 0,0.
Cfg_LoDevLim
REAL
-1,5e+38
Umbral del estado de desviación Baja de la PV (PVEU).
Válido = -flotante positivo máximo a 0,0.
El valor predeterminado es -1,5e+38.
Cfg_LoDevDB
REAL
0,0
Banda muerta del estado de desviación Baja de la PV (PVEU).
Válido = de 0,0 a abs(Cfg_LoDevLim).
El valor predeterminado es 0,0.
Cfg_LoDevGateDly
REAL
0,0
Retardo de compuerta del estado de la PV Baja (segundo).
Válido = de 0,0 a 2147483,0 segundos.
El valor predeterminado es 0,0.
Cfg_LoLoDevLim
REAL
-1,5e+38
Umbral del estado de desviación Baja-Baja de la PV (PVEU).
Válido = -flotante positivo máximo a 0,0.
El valor predeterminado es -1,5e+38.
Cfg_LoLoDevDB
REAL
0,0
Banda muerta del estado de desviación Baja-Baja de la PV (PVEU).
Válido = de 0,0 a abs(Cfg_LoLoDevLim).
El valor predeterminado es 0,0.
Cfg_LoLoDevGateDly
REAL
0,0
Retardo de compuerta del estado de desviación Baja-Baja de la PV (segundo).
Válido = de 0,0 a 2147483,0 segundos.
El valor predeterminado es 0,0.
Cfg_CnfrmReqd
SINT
0
Se requiere confirmación del comando de operador. Representa el tipo de confirmación de comando requerido.
0 = Ninguno,
1 = Se requiere confirmación de comando,
2 = Se requiere una firma electrónica del ejecutante,
3 = Se requiere la firma electrónica del ejecutor y del aprobador.
El valor predeterminado es 0.
PSet_Ratio
REAL
1,0
Configuración de programa para relación, modo de lazo cascada/relación y relación habilitados (sin unidades).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,0.
PSet_SP
REAL
0,0
Configuración de programa para el SP, modo de lazo automático (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
PSet_SPTarget
REAL
0,0
Configuración de programa para el destino del SP en el asistente de progresión lineal (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
PSet_SPRampTime
REAL
0,0
Configuración de programa para el tiempo para alcanzar el destino del SP en el asistente de progresión lineal (segundo).
Válido = de 0,0 a 28800,0 segundos.
El valor predeterminado es 0,0.
PSet_CV
REAL
0,0
Configuración de programa para la CV cuando el modo de lazo está en manual (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
PSet_Owner
DINT
0
El propietario del programa solicita el ID (distinto a cero) o su liberación (cero).
El valor predeterminado es 0.
XSet_Ratio
REAL
1,0
Configuración de externo para relación, modo de lazo cascada/relación y relación habilitados (sin unidades).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,0.
XSet_SP
REAL
0,0
Configuración de externo para el SP, modo de lazo automático (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
XSet_SPTarget
REAL
0,0
Configuración de externo para el destino del SP en el asistente de progresión lineal progresión lineal (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
XSet_SPRampTime
REAL
0,0
Configuración de externo para el tiempo para alcanzar el destino del SP en el asistente de progresión lineal (segundos).
Válido = de 0,0 a 28800,0 segundos.
El valor predeterminado es 0,0.
XSet_CV
REAL
0,0
Configuración de externo para la CV, modo de lazo Manual (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
PCmd_Casc
BOOL
Falsa
Comando de programa para seleccionar el modo de lazo cascada/relación. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Auto
BOOL
Falsa
Comando de programa para seleccionar el modo de lazo automático. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Man
BOOL
Falsa
Comando de programa para seleccionar el modo de lazo manual. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_NormLM
BOOL
Falsa
Comando de programa para seleccionar el modo de lazo definido como Normal, consultar Cfg_NormLM. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_SPRampStart
BOOL
Falsa
Comando de programa para iniciar la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_SPRampStop
BOOL
Falsa
Comando de programa para detener la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Oper
BOOL
Falsa
Comando de programa para seleccionar el operador (de programa a operador). La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Prog
BOOL
Falsa
Comando de programa para seleccionar el programa (de operador a programa). La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Lock
BOOL
Falsa
Comando de programa para bloquear el programa (inhabilitar al operador). La instrucción borra este operando automáticamente si Cfg_PCmdLockAsLevel = 0.
El valor predeterminado es falso.
PCmd_Unlock
BOOL
Falsa
Comando de programa para desbloquear programa (permitir que se pueda adquirir el operador). La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Normal
BOOL
Falsa
Comando de programa para seleccionar el origen de comando normal (operador o programa). La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
PCmd_Reset
BOOL
Falsa
Comando de programa para borrar todas las alarmas y las condiciones de restricción enclavada que deben ser restablecidas. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_Casc
BOOL
Falsa
Comando externo para seleccionar el modo de lazo Cascada/Relación. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_Auto
BOOL
Falsa
Comando externo para seleccionar el modo de lazo Automático. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_Man
BOOL
Falsa
Comando externo para seleccionar el modo de lazo Manual. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_NormLM
BOOL
Falsa
Comando externo para seleccionar el modo de lazo definido como Normal, consultar Cfg_NormLM. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_SPRampStart
BOOL
Falsa
Comando externo para iniciar la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_SPRampStop
BOOL
Falsa
Comando externo para detener la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_Acq
BOOL
Falsa
Comando externo para adquirir la propiedad (de operador/programa/anulación/mantenimiento a externo). La instrucción borra este operando automáticamente si Cfg_ExtAcqAsLevel = 0.
El valor predeterminado es falso.
XCmd_Rel
BOOL
Falsa
Comando externo para liberar la propiedad si Cfg_ExtAcqAsLevel = 0 (de externo a operador/programa/anulación/mantenimiento). La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_Reset
BOOL
Falsa
Comando externo para restablecer todas las alarmas y las condiciones enclavadas que se pierden. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
XCmd_ResetAckAll
BOOL
Falsa
Comando externo para confirmar y restablecer todas las alarmas y las condiciones enclavadas que se pierden. La instrucción borra este operando automáticamente.
El valor predeterminado es falso.
Miembro de salida público
Tipo de datos
Descripción
EnableOut
BOOL
Habilita la salida. Este estado de salida siempre refleja el estado de la entrada EnableIn.
Val_PV
REAL
Valor de la PV de lazo (PVEU).
Val_Ratio
REAL
Valor de la Relación de lazo (sin unidades).
Val_SPSet
REAL
Valor del SP seleccionado después de la fijación y antes de la progresión lineal (PVEU).
Val_SP
REAL
Valor del SP que se está utilizando después de la fijación y de la progresión lineal (PVEU).
Val_SPTarget
REAL
Configuración aceptada para el destino de la progresión lineal de SP, punto de conexión para el asistente de progresión lineal (PVEU).
Val_SPRampTime
REAL
Configuración aceptada para el tiempo de progresión lineal de SP, tiempo para alcanzar el destino en el asistente de progresión lineal (segundo).
Val_SPRampRoC
REAL
Valor calculado del índice de cambio del SP para la progresión lineal, desde el asistente de progresión lineal (PVEU/segundo).
Val_SPRoCIncr
REAL
Valor actual del límite del índice de cambio del SP en aumento (PVEU/segundo). 0,0 = índice de cambio ilimitada.
Val_SPRoCDecr
REAL
Valor actual del límite del índice de cambio del SP en descenso (PVEU/segundo). 0,0 = índice de cambio ilimitada.
Val_E
REAL
Error de lazo, SP-PV para la acción inversa Cfg_CtrlAction = 0, PV-SP para la acción directa Cfg_CtrlAction = 1 (PVEU).
Val_CVSet
REAL
CV de lazo después de la fijación y antes de la progresión lineal (CVEU).
Val_CVOut
REAL
CV de lazo después de la fijación y de la progresión lineal (CVEU).
Val_PVPercent
REAL
PV de lazo (porcentaje de extensión).
Val_SPPercent
REAL
SP de lazo (porcentaje de extensión).
Val_EPercent
REAL
Error de lazo, SP-PV para la acción inversa Cfg_CtrlAction = 0, PV-SP para la acción directa Cfg_CtrlAction = 1 (porcentaje de extensión).
Val_CVOutPercent
REAL
CV de lazo después de la fijación y de la progresión lineal (porcentaje de extensión).
Val_ExecTime
REAL
Período de ejecución del algoritmo PID real (segundo).
Out_Reset
BOOL
1 = El comando Restablecer (Reset) se ha recibido y aceptado.
Out_OwnerSts
DINT
Estado del origen del comando, handshake del comando del propietario y estado de preparado:
0 = Ninguno,
.10 = Bloqueo de operador,
.11 = Desbloqueo de operador,
.12 = Bloqueo de programa,
.13 = Desbloqueo de programa,
.14 = Adquirir mantenimiento,
.15 = Liberar mantenimiento,
.16 = Adquirir externo,
.17 = Liberar externo,
.18 = Tiene mantenimiento,
.19 = Bloqueo de anulación de externo,
.20 = Tiene externo,
.21 = Tiene operador,
.22 = Tiene operador bloqueado,
.23 = Tiene programa,
.24 = Tiene programa bloqueado,
.29 = Eco,
.30 = No está listo.
Sts_Initialized
BOOL
1 = La instrucción se inicializa. Utilice Inp_InitializeReq para reinicializar.
SrcQ_IO
SINT
Origen y calidad de la calidad de la PV de E/S (I/O) primaria (enumerado):
0 = Correcto, en directo, correcto confirmado,
1 = Correcto, en directo, se asume correcto,
2 = Correcto, sin retroalimentación, se asume correcto,
8 = Prueba, virtualizada,
9 = Prueba, lazo invertido,
10 = Prueba, introducido manualmente,
16 = Incierto, en directo, especificación desactivada,
17 = Incierto, sustituido en el dispositivo o bus,
18 = Incierto, sustituido en la instrucción,
19 = Incierto, usando el último valor correcto conocido,
20 = Incierto, usando el valor de reemplazo,
32 = Incorrecto, fallo de señal,
33 = Incorrecto, fallo de canal,
34 = Incorrecto, fallo del módulo o de la comunicación,
35 = Incorrecto, configuración inválida.
SrcQ
SINT
Origen y calidad del valor o del estado de la PV y de la CV primarias (enumerado):
0 = Correcto, en directo, confirmado como correcto
1 = Correcto, en directo, se asume correcto
2 = Correcto, sin retroalimentación, se asume correcto
8 = Prueba, virtualizada
9 = Prueba, bucle invertido
10 = Prueba, introducido manualmente
16 = Incierto, en directo, fuera de especificación
17 = Incierto, sustituido en el dispositivo o en el bus
18 = Incierto, sustituido en la instrucción
19 = Incierto, usando el último valor correcto conocido
20 = Incierto, usando el valor de reemplazo
32 = Incorrecto, fallo de señal
33 = Incorrecto, fallo de canal
34 = Incorrecto, fallo del módulo o de la comunicación
35 = Incorrecto, configuración no válida
Sts_eSts
SINT
Modo de lazo:
0 = Desconocido,
1 = Manual,
2 = Automático,
3 = Cascada (sin relación),
4 = Relación.
Sts_eFault
SINT
Fallo de lazo:
0 = ninguno,
1 = PV incierta,
2 = Desviación de PV Baja,
3 = Desviación de PV Alta,
4 = Desviación de PV Baja-Baja,
5 = Desviación de PV Alta-Alta,
6 = PV sustituida,
7 = Activación del enclavamiento,
8 = Fallo del SP,
9 = Fallo de PV,
10 = Fallo de CV,
11 = Error de configuración.
Sts_eState
SINT
Estado de lógica interna para animar el diagrama de estado en la plantilla.
0 = Manual,
1 = Desviación de PV en banda muerta,
2 = Desviación de la PV fuera de la banda muerta,
3 = SP en progresión lineal,
4 = CV en progresión lineal,
5 = Relación fijada,
6 = SP fijado,
7 = CV fijado,
8 = Windup bajo,
9 = Windup alto,
10 = SP retenido,
11 = SP establecido en IntlkSP,
12 = CV retenido,
13 = CV establecido en IntlkCV,
14 = Manual,
15 = Inicializando.
Sts_eNotify
SINT
Estado de alarma de máxima gravedad. Todos los valores enumerados de estado de la alarma:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyAll
SINT
Estado de alarma de máxima gravedad. Todos los valores enumerados de estado de la alarma que incluyen objetos relacionados para CV, PV, SP, CascSP:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyHiHiDev
SINT
Valores enumerados del estado de la alarma de desviación Alta-Alta de la PV:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyHiDev
SINT
Valores enumerados del estado de la alarma de desviación Alta de la PV:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyLoDev
SINT
Valores enumerados del estado de la alarma de desviación Baja de la PV:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyLoLoDev
SINT
Valores enumerados del estado de la alarma de desviación Baja-Baja de la PV:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyFail
SINT
Valores enumerados del estado de la alarma Fallo:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_eNotifyIntlkTrip
SINT
Valores enumerados de estado de alarma de activación de enclavamiento:
0 = No en la alarma, confirmado,
1 = No en la alarma, no confirmada o se requiere restablecimiento,
2 = Alarma de gravedad baja, confirmada,
3 = Alarma de gravedad baja, no confirmada,
4 = Alarma de gravedad media, confirmada,
5 = Alarma de gravedad media, no confirmada,
6 = Alarma de gravedad alta, confirmada,
7 = Alarma de gravedad alta, no confirmada,
8 = Alarma de gravedad urgente, confirmada,
9 = Alarma de gravedad urgente, no confirmada.
Sts_UnackAlmCount
DINT
Conteo de alarmas no confirmadas.
Sts_Casc
BOOL
1 = El lazo está en modo cascada/relación.
Sts_Auto
BOOL
1 = El lazo está en modo automático.
Sts_Man
BOOL
1 = El lazo está en modo manual.
Sts_NormLM
BOOL
1 = El lazo está en el modo de lazo Normal configurado en Cfg_NormLM.
Sts_Initializing
BOOL
1 = La CV se está inicializando debido a la solicitud de Inp_UseCVInitialVal o cuando Inp_InnerAvailable=0.
Sts_WindupHi
BOOL
1 = Este lazo con windup Alto normalmente se conecta a Inp_WindupHi de lazo externo.
Sts_WindupLo
BOOL
1 = Este lazo con windup Bajo normalmente se conecta a Inp_WindupLo de lazo externo.
Sts_RatioClamped
BOOL
1 = La relación seleccionada se está fijando para la animación de la plantilla.
Sts_IntlkSP
BOOL
1 = El valor del SP se establece por una restricción al SP actual.
Sts_SPHeld
BOOL
1 = La restricción ha establecido el valor de SP para retener el último SP correcto.
Sts_SPShedPV
BOOL
1 = El valor del SP se establece por una restricción a la PV actual.
Sts_SPShed
BOOL
1 = Valor del SP de restricción, 0 = SP de programa y operador, anulación (automática), entrada del SP en cascada o seguimiento de PV (manual).
Sts_SPTrackPV
BOOL
1 = El valor del SP se establece por el seguimiento de la PV en modo de lazo Manual.
Sts_SPHiClamped
BOOL
1 = El SP seleccionado se está fijando en el límite alto.
Sts_SPLoClamped
BOOL
1 = El SP seleccionado se está fijando en el límite bajo.
Sts_SPClamped
BOOL
1 = El SP seleccionado se está fijando, para la animación de la plantilla.
Sts_SPRampingUp
BOOL
1 = El SP está en progresión lineal ascendente hacia Val_SPSet.
Sts_SPRampingDown
BOOL
1 = El SP está en progresión lineal descendente hacia Val_SPSet.
Sts_SPRamping
BOOL
1 = El SP está en progresión lineal hacia Val_SPSet, 0 = Progresión lineal completa.
Sts_SPRampWizardInProgress
BOOL
1 = El SP está en progresión lineal hacia el destino de SP establecido por el propietario en el asistente de progresión lineal, 0 = Progresión lineal completa.
Sts_SkipSPRoCLim
BOOL
1 = La limitación del régimen del SP se está omitiendo para la animación de la plantilla.
Sts_DevDBAct
BOOL
1 = La banda muerta de la desviación de la PV está activa.
Sts_PVUncertain
BOOL
1 = La calidad del valor de entrada de la PV es incierta.
Sts_PVBad
BOOL
1 = El valor, las comunicaciones, la calidad o el límite de EU de la entrada de la PV son incorrectas.
Sts_SPBad
BOOL
1 = La calidad del valor de entrada del SP de cascada es incorrecta.
Sts_FFBad
BOOL
1 = El valor del término de proalimentación Inp_FF es inválido.
Sts_FFPrevBad
BOOL
1 = El valor del término de proalimentación Inp_FFPrev es inválido.
Sts_CVInfNaN
BOOL
1 = Se ha detectado un valor de CV igual a +/- infinito o NaN.
Sts_CVBad
BOOL
1 = La calidad del valor de la CV es mala, inválida o hay un fallo de comunicación de la CV.
Sts_CVPrevBad
BOOL
1 = El valor Inp_CVPrev es inválido.
Sts_HandFdbkBad
BOOL
1 = La calidad del valor del FB de mano (valor retenido) es incorrecta o inválida, o hay un fallo de comunicación.
Sts_IntlkCV
BOOL
1 = El valor de la CV se establece por una restricción a la CV de enclavamiento.
Sts_CVHeld
BOOL
1 = El valor de la CV se establece por una restricción para mantener la última CV buena.
Sts_CVShed
BOOL
1 = CV de restricción, 0 = CV de programa, operador, anulación (manual) o PID (automático, cascada).
Sts_CVHiClamped
BOOL
1 = La CV se está fijando en el límite alto.
Sts_CVLoClamped
BOOL
1 = La CV se está fijando en el límite bajo.
Sts_CVClamped
BOOL
1 = La CV seleccionada se está fijando para la animación de la plantilla.
Sts_CVRampingUp
BOOL
1 = La CV está en progresión lineal ascendente hacia Val_CVSet.
Sts_CVRampingDown
BOOL
1 = La CV está en progresión lineal descendente hacia Val_CVSet.
Sts_CVRamping
BOOL
1 = La CV está en progresión lineal hacia Val_CVSet, 0 = Progresión lineal completa.
Sts_Active
BOOL
1 = La CV es mayor que Cfg_MaxInactiveCV, se muestra el símbolo gráfico como activo.
Sts_Available
BOOL
1 = El lazo PID puede ser adquirido por programa y está disponible para control.
Sts_CascAvailable
BOOL
1 = El lazo interno PID está disponible para control en cascada con un lazo externo. 0 = El lazo interno PID no está disponible, inicializar el lazo externo a Val_SP.
Sts_ExtAvailable
BOOL
1 = PID está disponible para control externo. 0 = PID no está disponible, inicializar el lazo externo a Val_SP.
Sts_IntlkAvailable
BOOL
1 = Disponibilidad de enclavamiento correcta. Programa puede adquirir el dispositivo y está disponible para el control cuando los enclavamientos son correctos.
Sts_Bypass
BOOL
1 = Los enclavamientos evitables se evitan.
Sts_BypActive
BOOL
1 = Omisión de enclavamiento activa (evitada o mantenimiento).
Sts_NotRdy
BOOL
1 = PPID no está lista, consultar los bits de detalles para conocer el motivo.
Sts_NrdyCfgErr
BOOL
1 = PPID no está lista: Error de configuración.
Sts_NrdyInit
BOOL
1 = PPID no está lista mientras la CV está siendo inicializada (Inp_UseCVInitVal = 1).
Sts_NrdyIntlk
BOOL
1 = PPID no está lista: Enclavamiento incorrecto (es necesario restablecer la restricción).
Sts_NrdyFail
BOOL
1 = PPID no está lista: El estado de Fallo está activado (es necesario restablecer la restricción).
Sts_NrdyCVFail
BOOL
1 = PPID no está lista: Fallo del CV (Restricción requiere restablecimiento).
Sts_NrdyPVFail
BOOL
1 = PPID no está lista: Fallo del PV (Restricción requiere restablecimiento).
Sts_NrdySPFail
BOOL
1 = PPID no está lista: Fallo del SP (Restricción requiere restablecimiento).
Sts_NrdyOoS
BOOL
1 = PPID no está lista: Fuera de servicio.
Sts_MaintByp
BOOL
1 = El dispositivo tiene una función de Omisión de mantenimiento activa.
Sts_NrdyInner
BOOL
1 = El objeto de lazo interno no está disponible (Inp_InnerAvailable = 0) para este PPID.
Sts_Err
BOOL
1 = Error en la configuración de PPID: consultar los bits de error para conocer el motivo.
Sts_ErrRatioLim
BOOL
1 = Error en la configuración de PPID: Límites de fijación de la relación no válidos.
Cfg_RatioLoLim > Cfg_RatioHiLim.
Sts_ErrSPLim
BOOL
1 = Error en la configuración de PPID: Límites de fijación de SP no válidos.
Cfg_SPLoLim < Cfg_PVEUMin o
Cfg_SPHiLim > Cfg_PVEUMax o
Cfg_SPLoLim > Cfg_SPHiLim.
Sts_ErrCVLim
BOOL
1 = Error en la configuración de PPID: Límites de fijación de la CV inválidos.
Cfg_CVLoLim < Cfg_CVEUMin o
Cfg_CVHiLim > Cfg_CVEUMax o
Cfg_CVLoLim > Cfg_CVHiLim.
Sts_ErrPVEU
BOOL
1 = Error en la configuración de PPID: Límites de escalado de la PV inválidos. Cfg_PVEUMin >= Cfg_PVEUMax o Cfg_PVEUMin es +-Inf.
Sts_ErrCVEU
BOOL
1 = Error en la configuración de PPID: Límites de escalado de CV no válidos. Cfg_CVEUMin >= Cfg_CVEUMax o Cfg_CVEUMin es +-Inf.
Sts_ErrDevDB
BOOL
1 = Error en la configuración de PPID: Banda muerta de desviación de la PV inválida. Cfg_DevDBEnter > Cfg_DevDB, o Cfg_DevDB < 0 o Cfg_DevDBEnter < 0.
Sts_ErrExecTime
BOOL
1 = Error en la configuración de PPID: Tiempo de ejecución inválido, Cfg_ExecTime < 0,0 o Cfg_ExecTime > 2147483,0 segundos.
Sts_ErrPGain
BOOL
1 = Error en la configuración de PPID: PGain inválido, Cfg_PGain < 0.
Sts_ErrIGain
BOOL
1 = Error en la configuración de PPID: IGain inválido, Cfg_IGain < 0.
Sts_ErrDGain
BOOL
1 = Error en la configuración de PPID: DGain inválido, Cfg_DGain < 0.
Sts_ErrCVTrackGain
BOOL
1 = Error en la configuración de PPID: TrackGain de la CV inválido, Cfg_CVTrackGain < 0.
Sts_ErrPSPWeight
BOOL
1 = Error en la configuración de PPID: Ponderación del SP en el término proporcional no válida, Cfg_PSPWeight < 0 o Cfg_PSPWeight > 1,5.
Sts_ErrDSPWeight
BOOL
1 = Error en la configuración de PPID: Ponderación del SP en el término derivativo no válida, Cfg_DSPWeight < 0 o Cfg_DSPWeight > 1,5.
Sts_ErrSPRoCIncrLim
BOOL
1 = Error en la configuración de PPID: Valor de aumento del índice de cambio del SP máximo permitido inválido, Cfg_SPRoCIncrLim < 0.
Sts_ErrSPRoCDecrLim
BOOL
1 = Error en la configuración de PPID: Valor de descenso del índice de cambio del SP máximo permitido inválido, Cfg_SPRoCDecrLim < 0.
Sts_ErrCVRoCIncrLim
BOOL
1 = Error en la configuración de PPID: Valor de aumento del índice de cambio de la CV máximo permitido inválido, Cfg_CVRoCIncrLim < 0.
Sts_ErrCVRoCDecrLim
BOOL
1 = Error en la configuración de PPID: Valor de descenso del índice de cambio de la CV máximo permitido inválido, Cfg_CVRoCDecrLim < 0.
Sts_ErrSPIntlk
BOOL
1 = Error en la configuración de PPID: El valor de SP que se va a utilizar con el enclavamiento o valor incorrecto de acción de SP no son válidos, valor fuera de escala, Cfg_SPIntlk > Cfg_PVEUMax o < Cfg_PVEUMin.
Sts_ErrCVIntlk
BOOL
1 = Error en la configuración de PPID: El valor de CV que se va a utilizar con el enclavamiento o valor incorrecto de acción de CV no son válidos, valor fuera de escala, Cfg_CVIntlk > Cfg_CVEUMax o < Cfg_CVEUMin.
Sts_ErrSPPwrUp
BOOL
1 = Error en la configuración de PPID: El valor de SP que se va a utilizar en el encendido no es válido, valor fuera de escala, Cfg_SPPwrUp > Cfg_PVEUMax o < Cfg_PVEUMin.
Sts_ErrCVPwrUp
BOOL
1 = Error en la configuración de PPID: El valor de la CV que se va a utilizar en el encendido no es válido, valor fuera de escala, Cfg_CVIntlk > Cfg_CVEUMax o < Cfg_CVEUMin.
Sts_ErrAlm
BOOL
1 = Error en la configuración de PPID: Al menos una alarma basada en etiquetas de Logix tiene una configuración no válida.
Sts_ErrHiHiDevLim
BOOL
1 = Error en la configuración de PPID: El umbral de desviación Alta-Alta de la PV no es válido, Cfg_HiHiDevLim < 0.
Sts_ErrHiHiDevGateDly
BOOL
1 = Error en la configuración de PPID: Se ha preestablecido un temporizador de retardo de compuerta de desviación de PV alta-alta no válido (use de 0,0 a 2147483,0).
Sts_ErrHiHiDevDB
BOOL
1 = Error en la configuración de PPID: La banda muerta de desviación Alta-Alta de la PV no es válida, Cfg_HiHiDevDB < 0 o Cfg_HiHiDevDB > Cfg_HiHiDevLim.
Sts_ErrHiDevLim
BOOL
1 = Error en la configuración de PPID: El umbral de desviación Alta de la PV no es válido, Cfg_HiDevLim < 0,0.
Sts_ErrHiDevGateDly
BOOL
1 = Error en la configuración de PPID: Se ha preestablecido un temporizador de retardo de compuerta de desviación de PV alta no válido: use de 0,0 a 2147483,0.
Sts_ErrHiDevDB
BOOL
1 = Error en la configuración de PPID: La banda muerta de la desviación Alta de la PV no es válida, Cfg_HiDevDB < 0 o Cfg_HiDevDB > Cfg_HiDevLim.
Sts_ErrLoDevLim
BOOL
1 = Error en la configuración de PPID: El umbral de desviación Baja de la PV no es válido, Cfg_LoDevLim > 0.
Sts_ErrLoDevGateDly
BOOL
1 = Error en la configuración de PPID: Se ha preestablecido un temporizador de retardo de compuerta de desviación de PV bajo no válido (use de 0,0 a 2147483,0).
Sts_ErrLoDevDB
BOOL
1 = Error en la configuración de PPID: La banda muerta de la desviación Baja de la PV no es válida, Cfg_LoDevDB < 0, o > -Cfg_LoDevLim.
Sts_ErrLoLoDevLim
BOOL
1 = Error en la configuración de PPID: El umbral de desviación Baja-Baja de la PV no es válido, Cfg_LoLoDevLim > 0,0.
Sts_ErrLoLoDevGateDly
BOOL
1 = Error en la configuración de PPID: Se ha preestablecido un temporizador de retardo de compuerta de desviación de PV bajo-bajo no válido (use de 0,0 a 2147483,0).
Sts_ErrLoLoDevDB
BOOL
1 = Error en la configuración de PPID: La banda muerta de desviación Baja-Baja de la PV no es válida, Cfg_LoLoDevDB < 0, o > -Cfg_LoLoDevLim.
Sts_eSrc
INT
Valores enumerados del origen del comando actual:
0 = La lógica no se está usando,
4 = Mano,
8 = Mantenimiento,
16 = Anulación,
32 = Programa,
33 = Programa bloqueado,
34 = Programa predeterminado (Normal),
64 = Operador,
65 = Operador bloqueado,
66 = Operador predeterminado (Normal),
128 = Mantenimiento fuera de servicio,
129 = Fuera de servicio programado (falso para renglón),
256 = Externo.
Sts_bSrc
INT
Activa la selección del mapa de bits (para tótem de HMI con selección de solicitud de origen de comando):
Sts_bSrc.0: Mano,
Sts_bSrc.1: Fuera de servicio programado (falso para renglón),
Sts_bSrc.2: Mantenimiento fuera de servicio,
Sts_bSrc.3: Mantenimiento,
Sts_bSrc.4: Anulación,
Sts_bSrc.5: Externo,
Sts_bSrc.6: Programa bloqueado,
Sts_bSrc.7: Programa,
Sts_bSrc.8: Operador bloqueado,
Sts_bSrc.9: Operador.
Sts_Hand
BOOL
1 = Se selecciona mano, reemplaza a fuera de servicio, mantenimiento, anulación, externo, programa, operación.
Sts_OoS
BOOL
1 = Se selecciona fuera de servicio, reemplaza a mantenimiento, anulación, externo, programa, operador.
Sts_Maint
BOOL
1 = Se selecciona mantenimiento, reemplaza a anulación, externo, programa, operador.
Sts_Ovrd
BOOL
1 = Se selecciona anulación, reemplaza a externo, programa, operador.
Sts_Ext
BOOL
1 = Externo está seleccionado, reemplaza a programa, operación.
Sts_Prog
BOOL
1 = Se selecciona programa.
Sts_ProgLocked
BOOL
1 = Se selecciona programa y se bloquea.
Sts_Oper
BOOL
1 = Operador está seleccionado.
Sts_OperLocked
BOOL
1 = Se selecciona operador y se bloquea.
Sts_ProgOperSel
BOOL
Estado de la selección de programa/operador (enclavamiento): 1 = Programa, 0 = Operador.
Sts_ProgOperLock
BOOL
Estado de bloqueo de programa/operador (enclavamiento): 1 = Bloqueado, 0 = Desbloqueado.
Sts_Normal
BOOL
1 = La selección del propietario iguala a lo configurado como Normal (programa u operador).
Sts_ExtReqInh
BOOL
1 = Solicitud de externo inhibida.
Sts_ProgReqInh
BOOL
1 = La solicitud de programa está inhibida, no se puede obtener programa desde el propietario actual.
Sts_MAcqRcvd
BOOL
1 = El comando de adquisición de mantenimiento ha recibido este escaneado.
Sts_Alm
BOOL
1 = Una alarma está activa.
Sts_AlmInh
BOOL
1 = Una alarma se archiva o se deshabilita.
Sts_HiHiDevCmp
BOOL
1 = La desviación de la PV está por encima del límite Alto-Alto >Cfg_HiHiDevLim (Val_PV-Val_SP).
Sts_HiHiDevGate
BOOL
1 = La compuerta de desviación Alta-Alta de la PV está abierta.
Sts_HiHiDev
BOOL
1 = La desviación de la PV está por encima del límite Alto-Alto, (Val_PV-Val_SP)>Cfg_HiHiDevLim, para compuerta abierta.
Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_HiHiDev.AlarmElement
Sts_HiDevCmp
BOOL
1 = La desviación de la PV está por encima del límite Alto, (Val_PV-Val_SP)>Cfg_HiDevLim.
Sts_HiDevGate
BOOL
1 = La compuerta de desviación Alta de la PV está abierta.
Sts_HiDev
BOOL
1 = La desviación de la PV está por encima del límite Alto, (Val_PV-Val_SP)>Cfg_HiDevLim, para compuerta abierta.
Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_HiDev.AlarmElement
Sts_LoDevCmp
BOOL
1 = La desviación de la PV está por debajo del límite Bajo, (Val_PV-Val_SP)<Cfg_LoDevLim.
Sts_LoDevGate
BOOL
1 = La compuerta de desviación Baja de la PV está abierta.
Sts_LoDev
BOOL
1 = La desviación de la PV (error de bucle) está por debajo del límite Bajo, (Val_PV-Val_SP)<Cfg_LoDevLim, para compuerta abierta.
Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_LoDev.AlarmElement
Sts_LoLoDevCmp
BOOL
1 = La desviación de la PV está por debajo del límite Bajo-Bajo, (Val_PV-Val_SP)<Cfg_LoLoDevLim.
Sts_LoLoDevGate
BOOL
1 = La compuerta de desviación Baja-Baja de la PV está abierta.
Sts_LoLoDev
BOOL
1 = La desviación de la PV (error de bucle) está por debajo del límite Bajo-Bajo, (Val_PV-Val_SP)<Cfg_LoLoDevLim, para compuerta abierta.
Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_LoLoDev.AlarmElement
Sts_Fail
BOOL
1 = Fallo de lazo: Los estados incorrectos de PV, SP, CV o retroalimentación de mano están activados o enclavados sin restablecimiento. Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_Fail.AlarmElement
Sts_IntlkTrip
BOOL
1 = Enclavamiento incorrecto causó que la salida de lazo se retenga o que cambie. Hay una alarma discreta predefinida basada en etiquetas para el estado. Establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato:
PPIDTag.@Alarms.Alm_IntlkTrip.AlarmElement
Sts_RdyReset
BOOL
1 = Una condición de alarma enclavada o restringida está lista para ser restablecida.
Sts_RdyAck
BOOL
1 = Una alarma está lista para confirmarse.
XRdy_Acq
BOOL
1 = Listo para XCmd_Acq, habilitar el botón de HMI.
XRdy_Rel
BOOL
1 = Listo para XCmd_Rel, habilitar el botón de HMI.
XRdy_Casc
BOOL
1 = Listo para XCmd_Casc, habilitar botón de HMI.
XRdy_Auto
BOOL
1 = Listo para XCmd_Auto, habilitar botón de HMI.
XRdy_Man
BOOL
1 = Listo para XCmd_Man, habilitar botón de HMI.
XRdy_NormLM
BOOL
1 = Listo para XCmd_NormLM, habilitar botón de HMI.
XRdy_SPRampStart
BOOL
1 = Listo para XCmd_SPRampStart, habilitar botón de HMI.
XRdy_SPRampStop
BOOL
1 = Listo para XCmd_SPRampStop, habilitar botón de HMI.
XRdy_Reset
BOOL
1 = Listo para XCmd_Reset, habilitar el botón de HMI.
XRdy_ResetAckAll
BOOL
1 = Listo para XCmd_ResetAckAll, habilitar el botón de HMI.
Val_Owner
DINT
ID del propietario del objeto actual, 0 = Sin propietario.
Miembro de entrada privado
Tipo de datos
Valor predeterminado
Descripción
CmdSrc
P_COMMAND_SOURCE
Selección del origen del Comando o Control.
OCmd_SPRampStart
BOOL
0
Comando de operador para iniciar la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_SPRampStop
BOOL
0
Comando de operador para detener la progresión lineal de SP. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OSet_Ratio
REAL
1,0
Configuración de operador para relación, modo de lazo cascada/relación y relación habilitados (sin unidades).
Válido = de 0,0 a flotante positivo máximo.
El valor predeterminado es 1,0.
OSet_SP
REAL
0,0
Configuración de operador para el punto de ajuste, modo de lazo automático (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
OSet_SPTarget
REAL
0,0
Configuración de operador para el destino de progresión lineal del punto de ajuste, extremo del asistente de progresión lineal (PVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
OSet_SPRampTime
REAL
0,0
Configuración de operador para el tiempo de progresión lineal del punto de ajuste, tiempo para alcanzar el destino en el asistente de progresión lineal (segundos).
Válido = de 0,0 a 28800,0 segundos.
El valor predeterminado es 0,0.
OSet_CV
REAL
0,0
Configuración de operador para la CV, modo de lazo manual (CVEU).
Válido cualquier flotante.
El valor predeterminado es 0,0.
MCmd_Bypass
BOOL
0
Comando de mantenimiento para evitar todos los enclavamientos evitables. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
MCmd_Check
BOOL
0
Comando de mantenimiento para comprobar, no omitir, todos los enclavamientos. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
MCmd_OoS
BOOL
0
Comando de mantenimiento para seleccionar fuera de servicio. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
MCmd_IS
BOOL
0
Comando de mantenimiento para seleccionar en servicio. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
MCmd_Acq
BOOL
0
Comando de mantenimiento para adquirir la propiedad (de operador/programa/externo/anulación a mantenimiento). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
MCmd_Rel
BOOL
0
Comando de mantenimiento para liberar la propiedad (de mantenimiento a operador/programa/externo/anulación). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Oper
BOOL
0
Comando de operador para seleccionar operador (de programa a operador). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Prog
BOOL
0
Comando de operador para seleccionar programa (de operador a programa). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Lock
BOOL
0
Comando de operador para bloquear al operador (inhabilitar programa). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Unlock
BOOL
0
Comando de operador para desbloquear o liberar (permitir que se pueda adquirir programa) la propiedad. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Normal
BOOL
0
Comando de operador para seleccionar Normal (operador o programa). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Auto
BOOL
0
Comando de operador para seleccionar el modo de lazo automático. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Casc
BOOL
0
Comando de operador para seleccionar el modo de lazo cascada/relación. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Man
BOOL
0
Comando de operador para seleccionar el modo de lazo manual. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_NormLM
BOOL
0
Comando de operador para seleccionar el modo de lazo configurado como Normal (ver Cfg_NormLM). La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_Reset
BOOL
0
Comando de operador para restablecer todas las alarmas y las condiciones de restricción enclavada. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
OCmd_ResetAckAll
BOOL
0
Comando de operador para confirmar y restablecer todas las alarmas y condiciones de restricción enclavada. El uso de OCmd_ResetAckAll está restringido a HMI. La instrucción borra este operando automáticamente.
El valor predeterminado es 0.
Miembro de salida privado
Tipo de datos
Descripción
HMI_BusObjIndex
DINT
Régimen de objeto de bus HMI.
El valor predeterminado es 0.
MRdy_Bypass
BOOL
1 = Listo para MCmd_Bypass, habilitar botón de HMI.
MRdy_Check
BOOL
1 = Listo para MCmd_Check, habilitar botón de HMI.
MRdy_OoS
BOOL
1 = Listo para MCmd_OoS, habilitar el botón de HMI.
MRdy_IS
BOOL
1 = Listo para MCmd_IS, habilitar el botón de HMI.
MRdy_Acq
BOOL
1 = Listo para MCmd_Acq, habilitar el botón de HMI.
MRdy_Rel
BOOL
1 = Listo para MCmd_Rel, habilitar el botón de HMI.
ORdy_Oper
BOOL
1 = Listo para OCmd_Oper, habilitar el botón de HMI.
ORdy_Prog
BOOL
1 = Listo para OCmd_Prog, habilitar el botón de HMI.
ORdy_Lock
BOOL
1 = Listo para OCmd_Lock, habilitar el botón de HMI.
ORdy_Unlock
BOOL
1 = Listo para OCmd_Unlock, habilitar el botón de HMI.
ORdy_Normal
BOOL
1 = Listo para OCmd_Normal, habilitar el botón de HMI.
ORdy_Auto
BOOL
1 = Listo para OCmd_Auto, habilitar el botón de HMI.
ORdy_Casc
BOOL
1 = Listo para OCmd_Casc, habilitar el botón de HMI.
ORdy_CV
BOOL
1 = Listo para OSet_CV, habilitar los campos de entrada de datos.
ORdy_Man
BOOL
1 = Listo para OCmd_Man, habilitar el botón de HMI.
ORdy_NormLM
BOOL
1 = Listo para OCmd_NormLM, habilitar el botón de HMI.
ORdy_Ratio
BOOL
1 = Listo para OSet_Ratio, habilitar los campos de entrada de datos.
ORdy_SP
BOOL
1 = Listo para la OSet_SP, habilitar los campos de entrada de datos.
ORdy_SPRampStart
BOOL
1 = Listo para OCmd_SPRampStart, habilitar el botón de HMI.
ORdy_SPRampStop
BOOL
1 = Listo para OCmd_SPRampStop, habilitar el botón de HMI.
ORdy_SPTarget
BOOL
1 = Listo para la OSet_SPTarget, habilitar el campo de entrada de datos.
ORdy_SPRampTime
BOOL
1 = Listo para la OSet_SPRampTime, habilitar el campo de entrada de datos.
ORdy_Reset
BOOL
1 = Listo para OCmd_Reset, habilitar el botón de HMI.
ORdy_ResetAckAll
BOOL
1 = Hay al menos una alarma o una condición de restricción enclavada que es necesario restablecer o confirmar.
Miembro InOut público
Tipo de datos
Descripción
BusObj
BUS_OBJ
Componente de bus
Estructura de BUS_OBJ
La estructura BUS_OBJ enlaza la instrucción PID de proceso con otras instrucciones de una estrategia de control compleja, normalmente en una jerarquía. Un objeto de bus activa la información de estado y alarma de dispositivos de nivel inferior a dispositivos de mayor nivel, y genera ventiladores de comandos de control de mayor nivel a instrucciones de menor nivel. Los elementos se vinculan con el bus haciendo referencia a un solo miembro de la matriz BUS_OBJ asociada con el bus.
Este parámetro vincula la instrucción a una etiqueta externa que contiene los datos necesarios para que la instrucción funcione. La etiqueta externa debe ser del tipo de datos mostrado o debe ser NULA. Si es NULO (NULL), las funciones de Bus de esta instrucción no están disponibles.
Miembros
Tipo de datos
Descripción
Inp_Cmd
DINT
Entrada para afirmar los comandos
Out_Cmd
DINT
Comandos resultantes
Inp_CmdLLH
DINT
Entrada de comandos de nivel normalmente alto
Out_CmdLLH
DINT
Comandos altos de nivel de línea resultantes
Inp_Sts
DINT
Entrada para afirmar los estados
Out_Sts
DINT
Estado resultante
Inp_CmdAck
DINT
Entrada para afirmar una confirmación de comando
Out_CmdAck
DINT
Confirmaciones de comandos resultantes
Inp_SeverityMax
DINT
Entrada: gravedad de alarma máxima
Out_SeverityMax
DINT
Resultantes de la gravedad de alarma máxima
Cfg_CmdMask
DINT
Máscara de propagación para los comandos
Cfg_CmdLLHMask
DINT
Máscara de propagación para los comandos altos de nivel de línea
Cfg_StsMask
DINT
Máscara de propagación para el estado
Ref_Index
DINT
Índice de matriz de bus
Alarmas
Las alarmas basadas en etiquetas discretas se definen para estos miembros.
Miembro
Nombre de alarma
Descripción
Sts_Fail
Alm_Fail
Fallo de instrucción.
Se activa cuando la instrucción PPID informa de un Fallo de instrucción. El Fallo se informa bajo cualquiera de las siguientes condiciones:
  • Mala calidad del punto de ajuste (SP), Sts_SPBad = 1,
  • Calidad incorrecta de la variable de proceso (PV), Sts_PVBad = 1,
  • Mala calidad de la variable de control (CV), Sts_CVBad = 1,
  • Mala calidad de la retroalimentación de mano (HandFdbk), Sts_HandFdbkBad = 1.
Sts_IntlkTrip
Alm_IntlkTrip
Alarma de activación de enclavamiento.
Se activa cuando los enclavamientos no evitables son incorrectos o los enclavamientos evitables son incorrectos cuando no se evitan. NAND(Inp_NBIntlkOK,(OR(Inp_IntlkOK,Stst_BypActive))).
Sts_HiHiDev
Alm_HiHiDev
Desviación Alta-Alta.
Se activa cuando la cantidad por la que la PV supera el punto de ajuste o la referencia se encuentra por encima del umbral de Desviación Alta-Alta. El umbral, la banda muerta, las compuertas y la temporización se establecen en la configuración.
Sts_HiDev
Alm_HiDev
Desviación Alta.
Se activa cuando la cantidad por la que la PV supera el punto de ajuste o la referencia se encuentra por encima del umbral de Desviación Alta. El umbral, la banda muerta, las compuertas y la temporización se establecen en la configuración.
Sts_LoDev
Alm_LoDev
Desviación Baja.
Se activa cuando la cantidad por la que la PV supera el punto de ajuste o la referencia se encuentra por encima del umbral de Desviación Baja. (Dado que el umbral es un número negativo, esta lectura es la cantidad en la que la PV recae por debajo del punto de ajuste o de la referencia). El umbral, la banda muerta, las compuertas y la temporización se establecen en la configuración.
Sts_LoLoDev
Alm_LoLoDev
Desviación Baja-Baja.
Se activa cuando la cantidad por la que la PV supera el punto de ajuste o la referencia se encuentra por encima del umbral de Desviación Baja-Baja. (Dado que el umbral es un número negativo, esta lectura es la cantidad en la que la PV recae por debajo del punto de ajuste o de la referencia). El umbral, la banda muerta, las compuertas y la temporización se establecen en la configuración.
Marque la alarma como usada o no usada y establezca los miembros de configuración estándar de la alarma discreta basada en etiquetas. Acceda a los elementos de alarma utilizando este formato: PPIDTag.@Alarms.AlarmName.AlarmElement.
Hay comandos de programa, operador y externo que habilitan la opción de Restablecer y Restablecer y confirmar de todas las alarmas de la instrucción (Grupo de alarmas) al mismo tiempo. Este diagrama muestra cómo interactúa la condición de alarma con el comando de alarma.
PPID_alarmoperation1_v33
Estos diagramas explican cómo se derivan las condiciones de alarma de desviación alta-alta, desviación alta, desviación baja, desviación baja-baja, activación de enclavamiento y fallo.
PPID_alarmoperation2_v33
PPID_alarmoperation3_v33
PPID_alarmoperation4_v33
PPID_alarmoperation5_v33
PPID_alarmoperation6_v33
PPID_alarmoperation7_v33
Operación
En principio, el algoritmo núcleo de PID calcula la CV con una fórmula configurada para ganancias dependientes,
PPID_equation5_v33
donde K es la ganancia del controlador [-], Ti es el tiempo de restablecimiento [minutos], Td es el tiempo del régimen [minutos]. Alternativamente, la instrucción se configura para ganancias independientes,
PPID_equation6_v33
donde K
P
es ganancia proporcional [-], K
I
es ganancia integral [1/minuto] y K
D
es ganancia derivativa [minutos]. Utilizar ganancias independientes cuando se desee que las tres ganancias para los términos proporcionales, integrales y derivativos funcionen de manera independiente.
Este diagrama ilustra las opciones de configuración adicionales con uniformidad de derivada y el punto de ajuste ponderado utilizados en los cálculos de error que ingresan términos proporcionales y derivados, y el error cuadrático en el término proporcional y el seguimiento de la CV:
PPID_operation1_v33
La siguiente sección usa nombres de etiquetas exactos de la estructura P_PID. Las variables sin un prefijo, como SP, PV, CVPrev, CVTrack, FF, FFPrev y CtrlAction, son variables internas que se utilizan en el cálculo. Las variables con prefijo Inp_, Val_, con tipo de datos REAL se encuentran en unidades de ingeniería. Las variables sin prefijo con tipo de datos REAL se expresan en % de extensión.
Ts [segundo] es un período actual de ejecución del algoritmo PID, es decir, el tiempo transcurrido desde el escaneado anterior de la instrucción PPID.
d es un operador de retardo de un escaneado. Por ejemplo:
PPID_operation2_v33
Las variables que se ingresan a la fórmula PID deben estar expresadas en porcentaje de extensión, de modo que las ganancias de PID no dependan de las unidades de ingeniería utilizadas para la PV y la CV. El escalado de estos parámetros se calcula como Perc=min(100,max(0,(EU-EUMin)/(EUMax-EUMin)*100)).
  • Val_SP,
  • Inp_PV,
  • Inp_CVPrev,
  • Inp_CVTrack,
  • Cfg_CVHiLim,
  • Cfg_LoLim,
  • Cfg_CVRoCIncrLim,
  • Cfg_CVRoCDecrLim
El escalado de Inp_FF y Inp_FFPrev se calcula como Perc=min(100,max(-100,(EU-EUMin)/(EUMax-EUMin)*100)).
La acción de control Inversa/Directa afecta al signo del error de lazo que será utilizado en los próximos cálculos:
PPID_operation4_v33
Cálculos de Error de lazo:
PPID_operation5_v33
Algoritmo PID de velocidad
Este diagrama del algoritmo PID de velocidad describe el cálculo de la CV. Los diagramas detallados adicionales de esta sección describen todas las opciones de configuración de PPID.
PPID_operation6_v33
PPID_operation7_v33
PPID_operation8_v33
Cálculo del término derivativo:
Cálculo del error modificado:
E
c
(k)
= Cfg_DSPCoef(k) *
SP(k)
–
PV(k)
E
c
(k)
= Cfg_DSPCoef(k) *
SP(k
–
1)
–
PV(k
–
1)
∆E
c
(k)
=
E
c
(k)
–
E
c
(k
–
1)
= (Cfg_DSPCoef(k) *
SP(k)
–
PV(k))
–
(Cfg_DSPCoef(k) *
SP(k
–
1)
–
PV(k
–
1))
∆E
c
(k
–
1) = E
c
(k
–
1)
–
E
c
(k
–
2)
=
(Cfg_DSPCoef(k) *
SP(k
–
1)
–
PV(k
–
1))
–
(Cfg_DSPCoef(k) *
SP(k
–
2)
–
PV(k
–
2))
Contribución del término derivativo si Cfg_UseDSmooting=0, Cfg_Dependent=1 y Cfg_GainBumpless=1.
dD(k)
= Cfg_PGain(k) * Cfg_DGain(k) * (∆
E
c
(k)
– ∆
E
c
(k
–
1))
Contribución del término derivativo si Cfg_UseDSmooting=0, Cfg_Dependent=1 y Cfg_GainBumpless=0.
dD(k)
= Cfg_PGain(k) * Cfg_DGain(k) * ∆
E
c
(k)
– Cfg_PGain(k–1) * Cfg_DGain(k–1) * ∆
E
c
(k
–
1)
Contribución del término derivativo si Cfg_UseDSmooting=0, Cfg_Dependent=0 y Cfg_GainBumpless=1.
dD(k)
= Cfg_DGain(k) * (∆
Ec(k)
– ∆
E
c
(k
–
1))
–
Contribución del término derivativo si Cfg_UseDSmooting=0, Cfg_Dependent=0 y Cfg_GainBumpless=0.
dD(k)
= Cfg_DGain(k) * ∆
Ec(k)
– Cfg_DGain(k–1) * ∆
Ec(k–1)
Si el filtro derivativo está habilitado (Cfg_UseDSmooting=1), el cálculo es el siguiente.
Parámetro
DCoef
para ganancias dependientes Cfg_Dependent=1.
PPID_equation1_v33
Para ganancias independientes Cfg_Dependent=0.
PPID_equation2_v33
Contribución del término derivativo si Cfg_UseDSmooting=1 y Cfg_GainBumpless=1.
PPID_equation3_v33
Contribución del término derivativo si Cfg_UseDSmooting=1 y Cfg_GainBumpless=0.
PPID_equation4_v33
Término de proalimentación.
PPID_operation9_v33
PPID_operation10_v33
PPID_operation11_v33
El mecanismo de prevención de windup monitoriza el valor de la CV interna y acciona el término integral. El mecanismo de prevención de windup utiliza las siguientes reglas:
  • Si la CV interna está por encima del límite superior aplicado actualmente, no integrar hacia arriba.
  • Si la CV interna está dentro de los límites aplicados actualmente, integrar pero no violar los límites.
  • Si la CV interna está por debajo del límite inferior aplicado actualmente, no integrar hacia abajo.
PPID_operation12_v33
Algoritmo PID de posición
La instrucción PPID está configurada para el formulario de posiciones del algoritmo PD sin una transferencia sin perturbaciones de Manual a Automático o Cascada si Cfg_PositionBump = 1. Esta opción está seleccionada cuando Cfg_PositionBump = 1 y Cfg_IGain = 0 y el cambio de la ganancia proporcional no se realiza sin perturbaciones, incluso si Cfg_GainBumpless = 1. Esta función también se puede aplicar al algoritmo PID de velocidad para que se comporte como lo haría en un cambio con error y sin error.
CONSEJO: La proalimentación es relativa a CVEUMin, aunque si Cfg_PositionBump = 1, la acción de control se calcula internamente según Val_CVOutPercent = Cfg_PGain*Val_EPercent+Inp_FF/(Cfg_CVEUMax-Cfg_CVEUMin)*100 más término derivativo opcional.
Banda muerta de desviación
La CV no es sensible a la variación del error de lazo cuando está dentro de la banda alrededor del error cero. Los niveles de banda configurados permiten una histéresis adicional. El nivel de banda muerta para la PV que se acerca al SP (Cfg_DevDBEnter) se puede establecer por debajo del nivel de banda muerta para la PV que se aleja del SP (Cfg_DevDB). El estado de banda muerta activa (Sts_DevDBAct) se establece para la PV dentro de la banda muerta. Existe una opción para detener los movimientos de la CV o simplemente detener la integración y dejar una acción proporcional y derivativa en tiempo real cuando la banda muerta está activa (Cfg_UseIntegDevDB).
PPID_deviationdeadband_v33
Manipulación del SP
La instrucción PPID comprueba la validez del punto de ajuste antes de que se entregue el SP al algoritmo PID para su procesamiento. El SP falla si:
  • Los límites de fijación del SP son inválidos (Sts_ErrSPLim=1), o
  • Los límites de escalado de la PV son inválidos (Sts_ErrPVEU=1), o
  • El modo de lazo es Cascada y el SP en cascada es NaN o Inf, o
  • Cascada es Relación (Cfg_HasRatio =1) y los límites de fijación de Relación son inválidos.
El valor del SP (Val_SPSet) se restringe al valor del punto de ajuste configurado Cfg_SPIntlk y se establece el indicador de estado (Sts_IntlkSP=1) si:
  • La activación del enclavamiento y la acción de seguimiento utilizan Cfg_SPIntlk como el valor del punto de ajuste (Cfg_IntlkTripSPAction=2), o
  • El SP falla y la instrucción se configura para seguir utilizando Cfg_SPIntlk como punto de ajuste (Cfg_SPFailSPAction=2), o
  • La PV falla y la instrucción se configura para utilizar Cfg_SPIntlk como el valor del punto de ajuste (Cfg_PVFailSPAction=2), o
  • La CV falla y la instrucción se configura para utilizar Cfg_SPIntlk como el valor del punto de ajuste (Cfg_CVFailSPAction=2).
PPID_SPhandling1_v33
El valor del SP se mantiene, se restringe al valor del SP actual y se establece el indicador de estado (Sts_SPHeld=1), si:
  • La activación del enclavamiento y la acción de seguimiento no modifican el valor (Cfg_IntlkTripSPAction=1), o
  • El SP falla y la instrucción se configura para seguir sin modificar el punto de ajuste (Cfg_SPFailSPAction=1), o
  • La PV falla y la instrucción se configura para seguir sin modificar el punto de ajuste (Cfg_PVFailSPAction=1), o
  • La CV falla y la instrucción se configura para seguir sin modificar el punto de ajuste (Cfg_CVFailSPAction=1) y no se aplica la prioridad de restricción más alta (Sts_IntlkSP=0).
PPID_SPhandling2_v33
El valor del SP se configura en el valor de la PV actual (Val_SPSet=Val_PV) y se establece el indicador de estado (Sts_SPShedPV=1) si:
  • La activación del enclavamiento y la acción de seguimiento no modifican el valor (Cfg_IntlkTripSPAction=3), o
  • El SP falla y la instrucción se configura para seguir sin modificar el punto de ajuste (Cfg_SPFailSPAction=3), o
  • La CV falla y la instrucción se configura para seguir sin modificar el punto de ajuste (Cfg_CVFailSPAction=3), no se aplica la prioridad de restricción más alta (Sts_IntlkSP=0 & Sts_SPHeld=0) y la PV es buena (Sts_PVBad=0).
PPID_SPhandling3_v33
Las condiciones de restricción prevalecen sobre otras selecciones del SP, en el modo automático desde programa, operador, anulación del SP, en cascada desde CascSP, en manual desde PV para seguimiento.
Si el SP no proviene de una restricción y los límites de fijación del SP son válidos, se comprueban otros orígenes del valor del SP.
Si el lazo no es cascada y operador tiene SP, se utiliza OSet_SP.
Si el lazo no es Cascada y programa tiene SP, se utiliza PSet_SP.
Si el lazo no es Cascada y externo tiene SP, se utiliza XSet_SP.
Si el lazo no es cascada y anulación está seleccionado, se utiliza Inp_OvrdSP.
Para el lazo en Cascada se utiliza Inp_CascSP × Val_Ratio. Si Cascada no es Relación Val_Ratio=1.
La instrucción está lista para recibir un nuevo SP del operador (ORdy_SP) si:
  • El seguimiento no está habilitado (Cfg_SetTrack=0), o
  • El operador tiene el modo de lazo en automático, u operador tiene el modo de lazo en manual y el SP no hace el seguimiento de la PV en manual (Cfg_PVTrack=0), o
  • El origen del comando es mano en automático, o el origen del comando es mano en manual y el SP no hace el seguimiento de la PV en manual (Cfg_PVTrack=0), o
  • El origen del comando es anulación y el SP no está configurado para realizar un seguimiento en anulación (Cfg_SetTrackOvrdHand=0).
El SP realiza el seguimiento del valor de la PV (Val_PV) y establece el estado de seguimiento Sts_SPTrackPV=1 si el modo de lazo es Manual, la instrucción está configurada para realizar un seguimiento en Manual (Cfg_PVTrack=1), no hay ninguna condición de restricción del SP activa (Sts_SPShed=0) y la PV no es incorrecta (Sts_PVBad=0).
El SP se fija en Cfg_SPHiLim y Cfg_SPLoLim y el estado de fijación se establece cuando se realiza la fijación (Sts_SPClamped=1) si el SP no está retenido por la restricción (Sts_SPHeld=0), el SP no está establecido en el enclavamiento del SP por restricción (Sts_IntlkSP=0) y los límites de fijación del SP son válidos (Sts_ErrSPLim=0).
Asistente de progresión lineal del SP
El asistente de progresión lineal del SP permite a operador/programa/externo/anulación introducir el destino del SP y el tiempo para alcanzar el destino (tiempo de progresión lineal) y calcular los movimientos del SP para alcanzar el destino introducido en el tiempo introducido cuando se parte desde el SP actual cuando el asistente recibe el comando de inicio. La característica de progresión lineal está definida por el destino de progresión lineal del SP (SPTarget) y el tiempo de progresión lineal del SP (SPRampTime), tal como se describe a continuación.
La entrada de destino y de tiempo de progresión lineal del SP está permitida (ORdy_SPTarget=1, ORdy_SPRampTime=1) y Val_SPTarget se copia en Val_SPSet si:
  • El Asistente de progresión lineal del punto de ajuste está permitido (Cfg_HasSPRamp=1), no se realiza el seguimiento de la configuración de programa/operador/externo (Cfg_SetTrack=0), o
  • El operador tiene el SP en automático o el origen del comando es mano en el modo de lazo automático.
PPID_SPrampwizard1_v33
PPID_SPrampwizard2_v33
Progresión lineal del SP
La progresión lineal del punto de ajuste evita que se produzcan picos y perturbaciones en la CV mediante la eliminación de cambios repentinos del punto de ajuste. Aunque la progresión lineal del punto de ajuste puede ser una ventaja para el control de lazo simple o para el controlador primario (externo) de una configuración en cascada, la progresión lineal del punto de ajuste y la acción proporcional sobre la PV no deben utilizarse en el controlador secundario (interno) de un lazo en cascada dado que podrían degradar la capacidad de respuesta del lazo secundario.
Se omite la progresión lineal del SP, el destino del SP (Val_SPSet) se utiliza directamente para el punto de ajuste final (Val_SP), se establece el estado de omisión Sts_SkipSPRoCLim=1 y la progresión lineal se notifica como completa Sts_SPRamping=0 en estas condiciones:
  • Los límites de fijación del punto de ajuste son inválidos, Sts_ErrSPLim=1, o
  • PPID está fuera de servicio, o
  • PPID está configurada para omitir la limitación del régimen de cambio Cfg_SkipSPRoCLim=1 y PPID está en enclavamiento/mantenimiento/anulación, o
  • El valor del SP realiza un seguimiento del valor de la PV en modo de lazo Manual (Sts_SPTrackPV=1), o
  • El valor actual del límite del índice de cambio del SP en aumento es cero (Val_SPRoCIncr=0) y el destino del SP actual (Val_SPSet) es mayor que el SP actual, o
  • El valor actual del límite del índice de cambio del SP en descenso es cero (Val_SPRoCDecr= 0) y el destino del SP actual (Val_SPSet) es inferior al SP actual.
La progresión lineal del SP se ejecuta si estas condiciones son verdaderas:
  • no omitido (Sts_SkipSPRoCLim=0),
  • el punto de ajuste no ha alcanzado su Val_SPSet de destino,
  • el valor absoluto de desviación del lazo (|Val_E|) no supera la desviación de progresión lineal máxima configurada, |Val_E|≤ Cfg_SPRampMaxDev.
Si |Val_E|> Cfg_SPRampMaxDev, los límites del régimen de cambio reales Val_SPRoCDecr y Val_SPRoCIncr se establecen en cero y el SP no cambia.
PPID_SPramping2_v33
Escalado del SP
Si los límites de escalado de la PV son válidos (Sts_ErrPVEU=0), el SP en PVEU se escala al porcentaje utilizado en el cálculo PID, SP = (SPEU-Cfg_PVEUMin)/(Cfg_PVEUMax-Cfg_PVEUMin)×100.
Selección y fijación de Relación
La instrucción PPID está lista para que operador introduzca una relación si el modo del lazo en cascada es relación (Cfg_HasRatio=1), los límites de fijación de la relación son inválidos y la instrucción PPID no está configurada para realizar seguimiento, o el operador tiene relación o está en el modo mano.
Si la instrucción PPID permite Cascada-Relación (Cfg_HasRatio=1) y los límites de fijación de la relación no son inválidos, el origen de la Relación se selecciona en función del origen del comando:
  • PSet_Ratio si programa tiene Relación,
  • OSet_Ratio si operador tiene relación,
  • XSet_Ratio si Externo tiene Relación,
  • Inp_OvrdRatio si anulación está seleccionado.
Si la instrucción PPID permite Cascada-Relación (Cfg_HasRatio=1) y los límites de fijación de la relación no son inválidos, Relación se fija en Cfg_RatioHiLim y Cfg_RatioLoLim. Si la fijación está activa se establece Sts_RatioClamped.
Si el lazo no tiene Relación o los límites de fijación de Relación son inválidos, la Relación se establece en 1,0 (Val_Ratio = 1,0).
Seguimiento del SP y de Relación para una transferencia sin perturbaciones
Val_SPSet se copia nuevamente en todas las configuraciones del SP inactivas para permitir una transferencia sin perturbaciones cuando cambia el propietario del SP.
Se aplica el seguimiento del SP si PPID se ha configurado para ello (Cfg_SetTrack=1) y:
  • El modo de lazo no está en anulación ni en mano, o
  • El modo de lazo está en anulación o en mano, y PPID se ha configurado para realizar el seguimiento en modo de lazo de anulación y de mano (Cfg_SetTrackOvrdHand=1), o
  • El modo de lazo está en Cascada, o
  • El modo de lazo está en Manual y Cfg_PVTrack=1.
Este diagrama muestra los pasos principales en el procesamiento del SP antes de que el valor del SP ingrese en la fórmula PID para calcular la CV.
PPID_SPscaling_v33
Manipulación de la CV
Selección de la CV en Manual
En modo de lazo Manual, si los límites de fijación de la CV son válidos, se selecciona la CV del origen activo (programa/operador/externo/anulación). Si programa tiene CV, se selecciona PSet_CV, etc. La instrucción PPID está lista para OSet_CV (ORdy_CV=1) bajo las siguientes condiciones: la entrada de operador no se ha configurado para realizar seguimiento en programa/operador/externo (Cfg_SetTrack=0), o el origen del comando es mano o anulación y la entrada de operador no está configurada para realizar el seguimiento en mano o en anulación (Cfg_SetTrackOvrdHand=0).
Restricción de la CV
Val_CVSet mantiene el último valor correcto de la CV y se establece el estado de reemplazo del valor de la CV (Sts_CVHeld=1) cuando
  • Se activa el enclavamiento y la acción de la CV se configura para el último valor correcto de la CV (Cfg_IntlkTripCVAction=1), o
  • El SP falla y la acción de seguimiento de la CV se ha configurado para el último valor correcto de la CV (Cfg_SPFailCVAction=1) y el modo de lazo es automático o cascada o el SP no falló en el escaneado anterior (límite ascendente del fallo de la SP), o
  • La PV falla y la acción de seguimiento de la CV se ha configurado para el último valor correcto de la CV (Cfg_PVFailCVAction=1) y el modo de lazo es automático o cascada o la PV no falló en el escaneado anterior (límite ascendente del fallo de la PV), o
  • La PV se sustituye en PAI (Inp_PVSrcQ=18) y el modo de lazo es Automático o Cascada, o
  • La CV falla y la acción de seguimiento de la CV se ha configurado para el último valor correcto de la CV (Cfg_CVFailCVAction=1) y el modo de lazo es automático o cascada o la CV no falló en el escaneado anterior (límite ascendente del fallo de la CV).
Cuando Sts_CVHeld=1, la CV no se actualiza.
CONSEJO: Si falla la PV, la CV o el SP, el último valor correcto de la CV permanece en la salida pero aún se puede sobrescribir en modo de lazo Manual.
PPID_CVshed1_v33
Val_CVSet se establece en Cfg_CVIntlk y el estado de reemplazo del valor de la CV se establece (Sts_IntlkCV=1) cuando:
  • Se activa el enclavamiento y la acción de la CV se configura para Cfg_CVIntlk (Cfg_IntlkTripCVAction=2), o
  • El SP falla y la acción de seguimiento de la CV se ha configurado para Cfg_CVIntlk (Cfg_SPFailCVAction=2) y el modo de lazo es automático o cascada o el SP no falló en el escaneado anterior (límite ascendente del fallo de la SP), o
  • La PV falla y la acción de seguimiento de la CV se ha configurado para Cfg_CVIntlk (Cfg_PVFailCVAction=2) y el modo de lazo es automático o cascada o la PV no falló en el escaneado anterior (límite ascendente del fallo de la PV), o
  • La CV falla y la acción de seguimiento sobre la CV se ha configurado para Cfg_CVIntlk (Cfg_CVFailCVAction=2) y el modo de lazo es automático o cascada o la PV no falló en el escaneado anterior (límite ascendente del fallo de la CV), o
  • PPID está fuera de servicio.
    CONSEJO: Si falla la PV, la CV o el SP, el valor Cfg_CVIntlk permanece en la salida pero aún se puede sobrescribir en el modo de lazo Manual.
PPID_CVshed2_v33
Si el valor de la CV se establece por una restricción, para enclavar la CV o para mantener el último valor correcto de la CV, Sts_CVShed=1.
Fijación de CV
Si los límites de fijación de la CV son válidos (Sts_ErrCVLim=0) y el modo de lazo no es Manual, o es Manual pero la configuración se establece para no omitir la fijación de la CV (Cfg_SkipCVManLim=0), el valor calculado o establecido de la CV (CVSet) se fija en Cfg_CVHiLim y en Cfg_CVLoLim. Los bits de estado correspondientes (Sts_CVHiClamped, Sts_CVLoClamped y Sts_CVClamped) se establecen si se ha fijado la CV.
Limitación de índice de cambio de CV
Si la instrucción PPID no está configurada para omitir el régimen de cambio de la CV en Manual (Cfg_SkipCVManRoC=0), el modo de lazo es Manual, PPID se ha configurado para la limitación del régimen de cambio (Cfg_CVRoCIncrLim>0, Cfg_CVRoCDecrLim>0) y el valor de destino de la CV es mayor que CVOut_previous+Cfg_CVRoCIncrLim*Ts (Ts es el tiempo actual de escaneado de PPID), CVOut se calcula como CVOut= CVOut_previous+Cfg_CVRoCIncrLim*Ts. Si el valor de destino de la CV es inferior a CVOut_previous-Cfg_CVRoCDecrLim*Ts (Ts es el tiempo actual de escaneado de PPID), entonces CVOut= CVOut_previous-Cfg_CVRoCDecrLim*Ts. Si la progresión lineal está activa, se establecen los bits de estado (Sts_CVRampingUp/Sts_CVRampingDown=1, Sts_CVRamping=1). Los bits de estado se borran si CVOut alcanza el destino. Si la progresión lineal no está activa, el destino de la CV se copia en CVOut.
Salida de la CV en porcentaje
CVOut, que se calcula en Automático/Cascada o se introduce desde varios orígenes en Manual, se escala al porcentaje y está disponible como Val_CVOutPercent. Val_CVOutPercent=0 si los límites de escalado de la CV son inválidos.
Este diagrama muestra los pasos principales del procesamiento de la CV.
PPID_CVclamping_v33
Manipulación de enclavamientos
Se procesan los comandos de mantenimiento para omitir o revisar los enclavamientos que pueden omitirse. La omisión de los enclavamientos está activa si se solicita (MCmd_Bypass=1). La solicitud de omisión permanece activa (Sts_Bypass=1) hasta que se recibe un comando de mantenimiento para revisar las alarmas que pueden omitirse (MCmd_Check=1). La omisión está activa, (Sts_BypActive=1) si se solicita (Sts_Bypass=1), en mantenimiento (Sts_Maint=1) o en anulación (Sts_Ovrd) si la instrucción está configurada para omitir los enclavamientos en anulación (Cfg_OvrdIntlk). Si un enclavamiento es incorrecto (tanto si es evitable como si no) y si se configura alguna acción en el enclavamiento, se restringe la retención del enclavamiento incorrecto.
Inicialización y encendido
La instrucción se debe inicializar para ser ejecutada correctamente. Normalmente, la instrucción se inicializa automáticamente en la primera ejecución de la instrucción (por ejemplo, después del encendido). La reinicialización se puede solicitar en cualquier momento configurando Inp_InitializeReq = 1. Este operando es borrado automáticamente en la instrucción. Para que la inicialización sea correcta, al añadir la instrucción mientras realiza una edición en línea del código, asegúrese de que Inp_InitializeReq = 1 (valor predeterminado). Acción realizada en la inicialización:
  • Comando Propietario (Owner) se configura en Ninguno,
  • Comando de anulación establecido en Ninguno,
  • Se borran los comandos de mantenimiento para omitir y revisar los enclavamientos,
  • Se borran los comandos de operador, programa y externo,
  • se borran los fallos de restricción enclavada,
  • se restablecen todos los temporizadores.
Esta sección define las acciones de PPID en modo de lazo, el SP y la CV en la inicialización (Encendido).
Manipulación del modo de lazo en Encendido Normal:
  • Se deshabilita el modo de lazo Normal (Cfg_NormLM=0) si el modo de lazo definido como normal es inválido (Cfg_NormLM <0 | > 3) o si el modo de lazo normal se establece en Cascada pero la instrucción no permite Cascada en la configuración (Cfg_HasCasc ≠ 1 &Cfg_NormLM = 3),
  • El modo de lazo se establece en Manual si el modo de lazo para el Encendido (Cfg_PwrUpLM) es Normal y el modo de lazo normal es Manual, o si el modo de lazo para el Encendido es Manual,
  • El modo de lazo se establece en Automático si el modo de lazo normal para el Encendido es Normal y el modo de lazo normal es Automático, o si el modo de lazo para el Encendido es Automático,
  • El modo de lazo se establece en Cascada si el modo de lazo normal para el Encendido es Normal y el modo de lazo normal es Cascada, o si el modo de lazo para el encendido es Cascada.
Manipulación del SP en Cascada durante el Encendido:
  • Inp_CascSP = Cfg_SPPwrUp si el modo de lazo en el Encendido (Cfg_PwrUpLM) se proporciona explícitamente como Manual/Automático/Cascada/Normal y el modo del lazo en Cascada no es Relación, o Val_Ratio = 0,
  • Inp_CascSP = Cfg_SPPwrUp × Val_Ratio si el modo de lazo en el Encendido se proporciona explícitamente como Manual/Automático/Cascada/Normal y el modo del lazo en Cascada es Relación y Val_Ratio ≠ 0.
Manipulación del SP durante el Encendido. El valor del SP configurado para el Encendido sobrescribirá todas las entradas del SP, los valores del SP del intervalo y los valores del SP de salida:
  • Cfg_SPPwrUp → PSet_SP, OSet_SP, XSet_SP, Inp_OvrdSP,
  • Cfg_SPPwrUp → PSet_SPTarget, OSet_SPTarget, XSet_SPTarget, Inp_OvrdSPTarget,
  • Cfg_SPPwrUp → Val_SPTarget, Val_SPSet Val_SP.
PPID_interlockhandling1_v33
Manipulación de la CV en el Encendido. El valor de la CV configurado para el Encendido sobrescribirá todas las entradas de CV, los valores de la CV del intervalo y los valores de la CV de salida:
  • Cfg_CVPwrUp → PSet_CV, OSet_CV, XSet_CV, Inp_OvrdCV, Inp_CVPrev, Val_CVSet, Val_CVOut.
La CV de encendido, la fijación de CV y la limitación del índice de cambio de CV funcionan conjuntamente. Si la CV de encendido se establece por debajo del límite mínimo de fijación de CV, la CV comenzará desde el valor Cfg_CVPwrUp y aumentará gradualmente hasta el límite mínimo de fijación de CV durante el encendido.
PPID_interlockhandling2_v33
Cuando está activado el modo Automático o Cascada, la CV se puede inicializar mediante la CV de lazo interno establecida en Inp_CVTrack si Inp_InnerAvailable=0 y Cfg_CVPwrupSel=1. Si Cfg_CVPwrupSel=0, Inp_InnerAvailable se ignora en la primera ejecución y Cfg_CVPwrup se utiliza como CV inicial.
Si el modo de lazo no era cero al momento del Encendido (Cfg_PwrUpLM) y se habían establecido internamente varios modos de lazo, la instrucción se asegura de que solo se establezca un modo de lazo a la vez con este orden de prioridad: Manual, luego Automático y luego Cascada. Si el modo de lazo de Encendido es 0, el modo de lazo, la CV y el SP permanecen en sus últimos estados (Apagado). Una vez que se haya completado la inicialización, la solicitud de inicialización se borra y se notifica que la instrucción se ha inicializado (Sts_Initialized = 1).
Informe de errores de configuración
Los parámetros seleccionados con prefijo Cfg_ y con tipo de datos REAL se examinan en una comprobación de validez para evitar acciones falsas. Si el valor es inválido, se establece un bit de error específico en un parámetro particular. Si se establece un bit de error, se notifica el error global (Sts_Err) y se activa una alarma de Fallo.
PPID_interlockhandling3_v33
La instrucción PPID asegura un número válido de posiciones decimales para la visualización de la PV y la CV en HMI. Cfg_xxDecPlcs =2 si se ha introducido un número inválido. La instrucción PPID asegura una acción válida en caso de fallo de SP/PV/CV. Cfg_SPFailSPAction = 1, Cfg_PVFailPVAction = 1 y Cfg_CVFailCVAction = 1 para cualquier número inválido introducido. La instrucción PPID asegura una configuración Mantener (Keep) válida en eKeepLM, CV, Relación y SP. Cfg_eKeepxx = 0 (sigue al origen del comando) si se introduce un valor inválido.
Propiedad de la CV, el SP, Relación
Propiedad de operador
CV es propiedad de Operador si:
  • El origen del comando actual es operador (Sts_Oper=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepCV=0), o
  • el origen del comando es operador/programa/externo y la configuración mantiene la CV para operador (Cfg_eKeepCV=1),
  • o el origen de comando es Mantenimiento (Sts_Maint=1).
El modo de lazo es propiedad de operador si:
  • El propietario actual es operador (Sts_Oper=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepLM=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el modo de lazo para operador (Cfg_eKeepLM=1), o
  • el propietario es mantenimiento (Sts_Maint=1).
Relación es propiedad de operador si:
  • El propietario actual es operador (Sts_Oper=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepRatio=0), o
  • el propietario es operador/programa/externo y la configuración mantiene la relación con el operador (Cfg_eKeepRatio=1), o
  • el propietario es mantenimiento (Sts_Maint=1).
El SP es propiedad de operador si:
  • El propietario actual es operador (Sts_Oper=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepSP=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el SP para operador (Cfg_eKeepSP=1), o
  • el propietario es mantenimiento (Sts_Maint=1).
Propiedad de programa
CV es propiedad de Programa si:
  • El propietario actual es programa (Sts_Prog=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepCV=0), o
  • el propietario es operador/programa/externo y la configuración mantiene la CV para programa (Cfg_eKeepCV=2).
El modo de lazo es propiedad de programa si:
  • El propietario actual es programa (Sts_Prog=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepLM=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el modo de lazo para programa (Cfg_eKeepLM=2).
Relación es propiedad de programa si:
  • El propietario actual es programa (Sts_Prog=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepRatio=0), o
  • el propietario es operador/programa/externo y la configuración mantiene la relación para programa (Cfg_eKeepRatio=2).
El SP es propiedad de programa si:
  • El propietario actual es programa (Sts_Prog=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepSP=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el SP para programa (Cfg_eKeepSP=2).
Propiedad de externo
La CV es propiedad de externo si:
  • El propietario actual es externo (Sts_Ext=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepCV=0), o
  • el propietario es operador/programa/externo y la configuración mantiene la CV para externo (Cfg_eKeepCV=3).
El modo de lazo es propiedad de externo si:
  • El propietario actual es externo (Sts_Ext=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepLM=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el modo de lazo para externo (Cfg_eKeepLM=3).
La relación es propiedad de externo si:
  • El propietario actual es externo (Sts_Ext=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepRatio=0), o
  • el propietario es operador/programa/externo y la configuración mantiene la relación para externo (Cfg_eKeepRatio=3).
SP es propiedad de Externo si:
  • El propietario actual es programa (Sts_Prog=1) y la configuración se establece para seguir el origen del comando (Cfg_eKeepSP=0), o
  • el propietario es operador/programa/externo y la configuración mantiene el SP para externo (Cfg_eKeepSP=3).
Estados de PPID
Estado incorrecto de la PV
La variable de proceso falla en caso de que los límites de escalado de la PV no sean válidos y se informa de la calidad incorrecta de la PV en el origen mediante la entrada Inp_PVBad o el índice de calidad Inp_PVSrcQ. La PV no puede ser utilizada en los cálculos de PID si la calidad de origen es mala. La PV también se considera fallida si la PV está activa pero se reporta como incierta o simplemente está fuera de especificación y PPID se configura para tratar esta situación como inaceptable (Cfg_PVFailTrigger=1 o 2).
PPID_PVbadstatus_v33
Estado incorrecto de SP
El punto de ajuste falla si:
  • Los límites de fijación del SP son inválidos (Sts_ErrSPLim=1), o
  • Los límites de la PV utilizados en el escalado son inválidos (Sts_ErrPVEU=1, Máx<=Mín).
El fallo se produce porque el SP se deriva de la PV si el modo de lazo es Relación o si los límites de fijación de Relación son inválidos cuando el modo de lazo es Relación (Sts_ErrRatioLim=1, Cfg_HasRatio=1 y el modo de lazo es Cascada).
PPID_SPbadstatus_v33
Estado incorrecto de CV
La CV es incorrecta si:
  • Inp_CVIOFault=1, o
  • Los límites de fijación de la CV son inválidos (Sts_ErrCVLim=1), o
  • Los límites de escalado de la CV son inválidos (Sts_ErrCVEU=1), o
  • La retroalimentación de mano es incorrecta y PPID está en modo mano.
PPID_CVbadstatus_v33
Estado de fallo de lazo
El fallo de lazo (Sts_Fail) se establece si el SP, la PV o la CV fallan y la restricción del fallo está enclavada. Si Sts_Fail está establecido, el lazo no puede funcionar con normalidad.
PPID_LoopFailStatus_v33
Estado de windup
El estado windup Alto (Sts_WindupHi) se establece si:
  • El SP seleccionado se fija en el límite alto (Sts_SPHiClamped=1), o
  • La CV se fija en el límite alto (Sts_CVHiClamped=1) si PPID está configurada para una acción de control inverso (Cfg_CtrlAction=0), o
  • La CV se fija en el límite bajo (Sts_CVLoClamped=1) si PPID está configurada para una acción de control directo (Cfg_CtrlAction=1).
PPID_windupstatus_v33
El estado de windup Bajo (Sts_WindupLo) se establece si:
  • El SP seleccionado se fija en el límite bajo (Sts_SPLoClamped=1), o
  • La CV se fija en el límite bajo (Sts_CVLoClamped=1) si PPID está configurada para una acción de control inverso (Cfg_CtrlAction=0), o
  • La CV se fija en el límite alto (Sts_CVHiClamped=1) si la PPID está configurada para una acción de control directo (Cfg_CtrlAction=1).
PPID_windupstatus2_v33
Estado activo
El estado activo de la CV (Sts_Active) se establece si Val_CVOut es mayor que Cfg_MaxInactiveCV. El símbolo gráfico de HMI, por ejemplo, válvula abierta, se muestra cuando Sts_Active=1, y el símbolo gráfico de HMI inactivo, por ejemplo, válvula cerrada, se muestra cuando Sts_Active=0.
Estado No está listo
La instrucción PPID no está lista (Sts_NotRdy=1) bajo las siguientes condiciones:
  • PPID está fuera de servicio (Sts_NrdyOoS=1), o
  • La CV de este PPID se está inicializando (Sts_NrdyInit=1), o
  • error de configuración de PPID (Sts_NRdyCfgErr=1), o
  • enclavamiento incorrecto (Sts_NrdyIntlk=1), o
  • el objeto interno para este PPID, normalmente PID del bucle secundario, no está disponible (Inp_InnerAvailable=0) para este PPID, o
  • el lazo falla (Sts_NrdyFail=1) debido a un valor incorrecto o a un fallo de comunicación de PV/SP/CV, o debido a que el valor de retroalimentación de mano no es válido.
Estados disponibles
La instrucción PPID está disponible (Sts_Available=1) para otros objetos cuando se encuentra en el modo programa, no durante el primer escaneado, y generalmente está lista para el control.
El lazo interno está disponible para el control en cascada (Sts_CascAvailable=1) cuando se encuentra en el modo Cascada, no durante el primer escaneado, y generalmente está listo para el control.
El lazo interno está disponible para el control externo (Sts_ExtAvailable=1) cuando se encuentra en el modo externo, no durante el primer escaneado, y generalmente está listo para el control.
Este diagrama muestra las condiciones necesarias para que la instrucción, por lo general, esté lista para el control.
PPID_availablestatuses_v33
Configuración de cadenas para HMI
Configure las cadenas de las plantillas de HMI, como se ve en
FactoryTalk View
, y para el cuadro de diálogo de configuración
Logix Designer
. Las cadenas están establecidas para las propiedades extendidas de los elementos de etiqueta. Configurar cadenas solo en la aplicación
Logix Designer
.
  • Descripción
  • Etiqueta para el símbolo gráfico
  • Biblioteca de visualización para la llamada de presentación de la plantilla de HMI
  • Nombre de la instrucción
  • Nombre del área
  • Enlace URL
  • Ruta de acceso a un objeto con más información
  • Ruta de acceso a un objeto que proporciona un SP en Cascada
  • Ruta de acceso a un objeto que proporciona una PV
  • Ruta de acceso a un objeto que consume una CV
  • Unidades de ingeniería de PV/SP
  • Unidades de ingeniería de la CV
Origen de comando
La instrucción usa estos orígenes de comando. Los orígenes de comando se priorizan del más alto al más bajo en esta tabla.
Origen de comando
Descripción
Mano
La lógica cableada u otra lógica fuera de la instrucción tiene el control del dispositivo. La instrucción hace el seguimiento del estado del dispositivo para una transferencia sin perturbaciones hasta uno de los otros orígenes de comando.
Cuando se encuentra en modo mano, el algoritmo PID no calcula el cambio en la CV.
Val_CVOut = Inp_HandFdbk (Inp_Tieback), independientemente del modo de control. El modo mano se suele usar para indicar que una estación mano/automática de campo tomó el control del elemento de control final.
Se establece Inp_Hand para solicitar la activación del modo mano. Este valor se suele leer como una entrada digital procedente de una estación de mano/automática.
(Origen de comando de prioridad máxima)
Fuera de servicio
La instrucción está deshabilitada y no tiene propietario.
Mantenimiento
Mantenimiento es propietario del control del dispositivo y reemplaza el control de operador, programa, externo y anulación. Se aceptan los comandos y las configuraciones del operador del HMI. Los enclavamientos que pueden omitirse se omiten y las comprobaciones del tiempo de espera del dispositivo no se procesan.
Anulación
La lógica de prioridad posee el control del dispositivo y reemplaza el control de operador, programa y externo. Se acepta la entrada de anulación (Inp_OvrdCmd). Si está configurado de este modo, se omiten los enclavamientos que pueden omitirse.
Externo
La lógica de externo posee el control del dispositivo. Se aceptan comandos externos (XCmd_).
Programa bloqueado
La lógica del programa posee el control del dispositivo. Se aceptan los comandos del programa (PCmd_). Operador no puede tomar de programa. La anulación no puede tomar de programa a menos que Cfg_OvrdOverLock = 1.
Programa
La lógica del programa posee el control del dispositivo. Se aceptan los comandos del programa (PCmd_).
Operador bloqueado
El operador posee el control del dispositivo. Se aceptan los comandos del operador (OCmd_) desde el HMI. Programa no puede tomar de operador. La anulación no puede tomar de operador a menos que Cfg_OvrdOverLock = 1.
Operador
El operador posee el control del dispositivo. Se aceptan los comandos del operador (OCmd_) desde el HMI.
(Origen de comando de prioridad más baja)
La instrucción habilita o deshabilita estas operaciones:
  • Existe un mantenimiento fuera de servicio
  • Existe un mantenimiento
  • Existe un externo
  • Existe un programa (desbloqueado)
  • Existe un programa (bloqueado)
  • Existe un operador (desbloqueado)
  • Existe un operador bloqueado
  • PCmd_Lock utilizado como Nivel (1 = Bloquear, 0 = Desbloquear)
  • XCmd_Acq utilizado como un Nivel (1 = Adquirir externo, 0 = Liberar externo)
La instrucción comprueba si hay configuraciones de control inválidas y fuerza la configuración válida más cercana.
El modelo de control de núcleo arbitra el origen de los comandos y los parámetros que acepta la función receptora. El modelo de control del núcleo determina si el origen es:
  • Una entidad programática que reside completamente en el entorno de procesamiento, o
  • Una entidad de interfaz externa que emite comandos y parámetros externa y asincrónicamente al entorno de procesamiento.
El bloqueo de un origen de control impide que el otro origen de control adquiera privilegio.
Modelo de origen de comando de núcleo
El modelo del origen del comando de núcleo consta de estos orígenes de control:
  • Oper
  • OperLocked
  • Prog
  • ProgLocked
El modelo de control se establece de forma predeterminada en esta configuración. Es posible que haya otros orígenes de control presentes en el modelo, pero actúan como orígenes de control de anulación que actúan de manera independiente de la máquina de estados del operador/programa base.
Habilitar orígenes de control en la configuración
Los orígenes de control individual pueden ser habilitados o deshabilitados por el usuario. La configuración predeterminada utiliza el modelo base completo; al encender el entorno de procesamiento, el origen del control será la opción predeterminada designada. Algunas combinaciones de orígenes de control habilitados se muestran desautorizadas, ya que son innecesarias o pueden crear cambios no deseados.
Valor predeterminado y prioridad de la propiedad
La configuración permite a un usuario especificar si operador o programa serán el valor predeterminado del encendido y establecer cuál de los comandos de operador o programa prevalecerá cuando estos se confirman simultáneamente.
Restablecimiento automático de los comandos
Todos los comandos se consideran enclavados por única vez. Esto significa que todos los comandos se borran automáticamente cuando la instrucción los ejecuta y los procesa.
Cambiar los estados de destino
Bajo ciertas configuraciones, el origen del comando de destino para algunos comandos puede cambiar. Esto concuerda con la intención del comando. Por ejemplo, si Prog está deshabilitado, el destino del comando OCmd_Prog se direcciona al estado ProgLocked en lugar de al estado Prog. Esto mantiene la intención del comando OCmd_Prog: la entidad del operador desea que la función esté en control del programa. Si se eliminara el comando, no habría forma de lograrlo. Esto solo se hace en configuraciones en las que esto no causaría ningún conflicto ni condición de carrera, pero sirve para conservar toda la funcionalidad del usuario que sea práctica.
Orígenes de comando de mayor prioridad
Estos orígenes de comando de mayor prioridad funcionan de manera independiente dentro del modelo: Externo, anulación, mantenimiento, fuera de servicio, en servicio y mano.
Procesamiento del origen del comando y arbitraje de propiedad
Los comandos mantenimiento y operador (MCmd_OoS, MCmd_IS, MCmd_Acq, MCmd_Rel, OCmd_Oper, OCmd_Prog, Ocmd_Lock, OCmd_Unlock, OCmd_Normal) se reenvían a la instrucción PCmdSrc contenida.
Los bits de mantenimiento y los bits listos (MRdy_OoS, MRdy_IS, MRdy_Acq, MRdy_Rel, ORdy_Oper, ORdy_Prog, ORdy_Lock, ORdy_Unlock, ORdy_Normal) se copian de la instrucción PCmdSrc contenida como respuesta.
La instrucción establece la propiedad (Val_Owner) según el orden en el que se reciben las solicitudes. Si el solicitador suministra un ID de propietario distinto de cero (PSet_Owner) y no existe ningún propietario actual (Val_Owner = 0), la instrucción asigna la propiedad al ID que lo solicita.
Monitorizar la instrucción PPID
Utilice la plantilla del operador de la biblioteca de procesos PlantPAx para la monitorización.
Afecta a las marcas de estado matemáticas
No.
Fallos mayores/menores
No es específico para esta instrucción. Consulte el Índice a través de matrices para ver si hay fallos de indexación de matrices.
Ejecución
El algoritmo PID solo se escanea en el régimen de ejecución Cfg_ExecTime. Configurar la instrucción para un período de ejecución = 0,0 (valor predeterminado) o para un periodo más corto que el tiempo de escaneado de la instrucción no tiene ningún efecto y el algoritmo PID se ejecutará en cada escaneado. Para el período de ejecución real compruebe Val_ExecTime.
Diagrama de lógica de escalera
Condición/estado
Acción realizada
Pre-escaneado
La condición de salida de renglón se borra a falsa.
Sts_eSrc está configurado en 0. Sts_bSrc está establecido en 0.
Primera ejecución de instrucción
Todos los comandos que se borran automáticamente en cada ejecución son borrados e ignorados.
La selección de programa/operador se establece en la configuración (Cfg_ProgPwrUp).
La selección de bloqueo de programa u operador está configurada como desbloqueada.
El modo de lazo se establece de acuerdo con la configuración (Cfg_PwrUpLM). Los valores iniciales del SP y de la CV se establecen de acuerdo con Cfg_SPPwrUp y Cfg_CVPwrUp y con el modo de lazo seleccionado. Si Cfg_PwrUpLM=0 (sin cambio), los valores iniciales del SP y de la CV son iguales a los valores del último escaneado (por ejemplo, antes del apagado).
PSet_Owner y Sts_Owner están configurados en 0.
La condición de entrada de renglón es falsa
La instrucción está fuera de servicio si Inp_Hand=0. La salida está desactivada. Se han restablecido todas las alarmas.
El procesamiento de la selección del origen del comando procede de forma normal, excepto que todos los bits de estado de propiedad (Sts_Maint, Sts_Ovrd, Sts_Ext, Sts_Prog y Sts_Oper) se borran a 0. Cuando la condición de entrada de renglón se convierte en verdadera, la instrucción toma en cuenta los comandos recibidos y establece el origen del comando activo según corresponda.
La condición de entrada de renglón es verdadera
Establecer la condición de salida de renglón a condición de entrada de renglón.
La instrucción se ejecuta.
Post-escaneado
La condición de salida de renglón se borra a falsa.
Diagrama de bloque de funciones
Condición/estado
Acción realizada
Pre-escaneado
Consultar Pre-escaneado en la tabla Diagrama de lógica de escalera.
Primera ejecución de instrucción
Consultar la primera ejecución de la instrucción en la tabla Diagrama de lógica de escalera.
Primer escaneado de instrucción
Consulte la primera ejecución de la instrucción en la tabla Diagrama de bloque de funciones.
EnableIn es falso
Consultar si la condición de entrada de renglón es falsa en la tabla Diagrama de lógica de escalera.
EnableIn es verdadero
Consultar La condición de entrada de reglón es verdadera en la tabla Diagrama de escalera.
Post-escaneado
Los bits EnableIn y EnableOut se establecen en falsos.
Texto estructurado
En Texto estructurado, EnableIn siempre es verdadero durante un escaneado normal. La instrucción se ejecuta cuando se encuentra en la ruta de control activada por la lógica.
Condición/estado
Acción realizada
Pre-escaneado
Consultar Pre-escaneado en la tabla Diagrama de lógica de escalera.
Primera ejecución de instrucción
Consultar la primera ejecución de la instrucción en la tabla Diagrama de lógica de escalera.
EnableIn es verdadero
Consultar La condición de entrada de reglón es verdadera en la tabla Diagrama de escalera.
Post-escaneado
Los bits EnableIn y EnableOut se establecen en falsos.
Ejemplos
Ejemplo 1: Control de retroalimentación PID
Este ejemplo demuestra el cableado de instrucciones de entrada analógica y salida analógica con una instrucción PPID.
El control del nivel del tanque del sistema de presión se considera un ejemplo de cableado de instrucciones de entrada analógica y salida analógica con una instrucción PPID. Considere una sección del sistema de distribución de agua con una estación que bombea agua de un tanque colector a un tanque manteniendo la presión del sistema en los nodos de distribución. Debido a la variación de la demanda, el nivel de agua fluctúa, por lo que la presión del sistema varía. La instrucción PPID ayuda a estabilizar la presión a través de la medición y del procesamiento del nivel de agua como una variable de proceso. PPID calcula la velocidad de referencia de un motor que acciona una bomba para compensar las variaciones de la demanda. Las rpm reales del motor se miden y se retroalimentan en el controlador. Esta retroalimentación permite que el esquema de control lea la velocidad del motor real cuando el personal de servicio toma el control y manipula la bomba directamente desde el panel de control (motor está en modo mano). Los componentes del lazo PID deben realizar un seguimiento de las rpm reales y estar listos para asumir el control sin perturbaciones.
El módulo de entrada analógica proporciona un nivel en unidades sin procesar y señales de fallos procesadas por la instrucción PAI (LI_30). El nivel en unidades de ingeniería (LI_30.Val), la calidad de la señal del nivel (LI_30.SrcQ) y la notificación de alarma (LI_30.Sts_eNotifyAll) se conectan a las entradas correspondientes de una PPID (LIC_31.Inp_PV, LIC_31.Inp_PVSrcQ, LIC_31.Inp_PVNotify). PPID se configura para que la respuesta correcta ocurra cuando la señal de nivel no es confiable y para no tener que ingresar la fórmula PID para calcular la CV. Se establece Cfg_PVFailTrigger para clasificar correctamente la calidad del origen de la PV. Utilice Cfg_PVFailSPAction, Cfg_PVFailCVAction y Cfg_PVFailLMAction para especificar el valor del punto de ajuste, el valor de la variable de control y el modo de lazo que la instrucción PPID debe utilizar si la calidad del origen de la PV se notifica como mala.
La instrucción PPID debería recibir una señal que indica si el objeto descendente accionado por PPID (la instrucción de salida analógica SZ_31 al accionar un motor) está activo y si responde correctamente a la CV de la instrucción PPID. En otras palabras, la instrucción PPID debería recibir una señal si el lazo de control no está abierto.
Si la salida de la CV de SZ_31 se satura (SZ_31.Sts_WindupHi=1 o SZ_31.Sts_WindupLo=1), la instrucción PPID se sale de control. Para evitar el windup, SZ_31.Sts_WindupHi y SZ_31.Sts_WindupLo se conectan a LIC_31.Inp_WindupHi y LIC_31.Inp_WindupLo.
Si el motor de la bomba, el dispositivo accionado por SZ_31, falla (M31_Fail=1), el lazo también estará abierto y tanto SZ_31 como LIC_31 deben seguir el estado real del dispositivo para evitar cualquier perturbación al volver a ponerse en control. Se miden las rpm del motor real, la señal sin procesar de rpm se escala a unidades de ingeniería por medio de una instrucción de entrada analógica SI_31 y el valor escalado de rpm (SI_31.Ei) se conecta como una señal de retroalimentación a SZ_31.Inp_PosFdbk.
Si el personal de servicio tiene el motor de la bomba en modo mano (M31_Hand=1), la velocidad real se proporcionará por separado en la etiqueta M31_Fdbk, conectada a SZ_31.Inp_HandFdbk.
El estado del dispositivo se recopila en una instrucción de salida analógica SZ_31 y se comunica a la instrucción PPID en sentido ascendente. Se debe informar a la instrucción PPID que el lazo de control está abierto en algún lugar descendente y, por lo tanto, el SZ_31 no está disponible para LIC_31. Conecte SZ_31.Sts_Available a LIC_31.Inp_InnerAvailable para pasar la información a PPID. Para realizar un seguimiento, es necesario que PPID reciba la referencia de velocidad real cuando se abra el lazo de control. Conecte SZ_31.Val_CVOut a LIC_31.Inp_CVTrack. Otros problemas descendentes, como los fallos de comunicación o los fallos del dispositivo, también deberían retroalimentarse al PPID para que la instrucción pueda llevar a cabo una acción configurada como respuesta. Combine SZ_31.Sts_IOFault con SZ_31.Sts_DeviceFault, conecte el resultado a LIC_31.Inp_CVIOFault y use LIC_31.Cfg_CVFailSPAction y LIC_31.Cfg_CVFailCVAction para configurar PPID para la acción de seguimiento.
Finalmente, actualice la notificación de alarma para PPID y propague la notificación de gravedad más alta desde SZ_31 en sentido ascendente. Wire SZ_31.Sts_eNotifyAll to LIC_31.Inp_CVNotify.
PPID_example1diagram_v33
El ejemplo se muestra en los editores de los tres idiomas.
Diagrama de lógica de escalera
PPID_example1ladder1_v33
PPID_example1ladder2_v33
PPID_example1ladder3_v33
Diagrama de bloque de funciones
PPID_example1FBD_v33
Texto estructurado
LI_30.Inp_PVData := LI_30_raw;
LI_30.Inp_ModFault := LevelAnalogModuleFault;
LI_30.Inp_OutOfSpec := LevelOutOfSpec;
PAI(LI_30,0);
LIC_31.Inp_PV := LI_30.Val;
LIC_31.Inp_CVTrack := SZ_31.Val_CVOut;
LIC_31.Inp_PVSrcQ := LIC_31.Inp_PVSrcQ;
LIC_31.Inp_PVNotify := LI_30.Sts_eNotifyAll;
LIC_31.Inp_CVNotify := SZ_31.Sts_eNotifyAll;
LIC_31.PSet_SP := LIC_31_SP;
LIC_31.Inp_WindupHi := SZ_31.Sts_WindupHi;
LIC_31.Inp_WindupLo := SZ_31.Sts_WindupLo;
LIC_31.Inp_CVIOFault := SZ_31.Sts_IOFault OR SZ_31.Sts_DeviceFault;
PPID(LIC_31,0);
SI_31.Inp_PVData := SI_31_raw;
PAI(SI_31,0);
SZ_31.PSet_CV := LIC_31.Val_CVOut;
SZ_31.Inp_PosFdbk := SI_31.Val;
SZ_31.Inp_HandFdbk := M31_Fdbk;
SZ_31.Inp_DeviceFault := M31_Fail;
SZ_31.Inp_Hand := M31_Hand;
PAO(SZ_31,0);
SZ_31_raw := SZ_31.Out_CVData;
Ejemplo 2: Control en Cascada
El control en cascada es útil cuando se producen a menudo y por causas externas cambios de estado de la variable controlada, que a su vez producen cambios de estado de la variable de proceso que está intentando controlar. Por ejemplo, intente controlar la temperatura del líquido de un tanque cambiando la cantidad de vapor introducida en una cubierta de calentamiento que rodee el tanque. Si el flujo de vapor se reduce de manera repentina debido a un proceso ascendente, la temperatura del líquido en el tanque cae eventualmente y a continuación la instrucción PPID abre la válvula de vapor para compensar la caída de temperatura.
PPID_example2diagram_v33
En este ejemplo, un lazo en cascada proporciona un mejor control mediante la apertura de la válvula de vapor cuando el flujo de vapor cae antes de que caiga la temperatura del líquido en el tanque. Para implementar un lazo en cascada, use una instrucción PPID para controlar la apertura de la válvula de vapor a partir de una señal de variable de proceso procedente de un transmisor de flujo de vapor. Este es el lazo interno del par en cascada. Una segunda instrucción PPID (denominada lazo externo o primario) usa la temperatura del líquido como variable de proceso y envía su salida de CV al punto de ajuste del lazo interno. De este modo, el lazo de temperatura externo solicita una determinada cantidad de flujo de vapor desde el lazo de flujo de vapor interno. Por lo tanto, el lazo de flujo de vapor es responsable de proporcionar la cantidad de vapor solicitada por el lazo de temperatura para mantener una temperatura de líquido constante.
Para que un par de lazos en cascada funcione correctamente, el lazo interno debe tener una respuesta de proceso más rápida que el lazo primario. Esto se debe a que el proceso del lazo interno debe ser capaz de compensar cualquier cambio de estado antes de que estos cambios de estado afecten al proceso del lazo externo. En este ejemplo, si cae el flujo de vapor, este deberá ser capaz de aumentar como resultado de la acción del controlador interno antes de que se vea afectada la temperatura del líquido.
Para establecer un par de instrucciones PPID en cascada, establezca el parámetro de entrada Cfg_HasCasc en el lazo interno. Esto permite poner el lazo interno en modo Cascada/Relación. A continuación, conecte el Val_CVOut desde el lazo externo en el parámetro Inp_CascSP en el lazo interno. El valor de Inp_CascSP se utiliza como el SP en el lazo interno cuando este se pone en modo Cascada/Relación. El rango de unidades de ingeniería de Val_CVOut en el lazo externo debe coincidir con el rango de unidades de ingeniería de la PV en el lazo interno. Esto permite al lazo externo escalar su valor 0-100% de la CV en las mismas unidades de ingeniería utilizadas para el punto de ajuste del lazo interno.
La instrucción PPID cuenta con muchas otras funciones para admitir de manera más efectiva el control en cascada. Conecte la salida Sts_CascAvailable del lazo interno PPID con la entrada Inp_InnerAvailable del lazo externo y conecte la salida Val_SP del lazo interno con la entrada Inp_CVTrack del lazo externo. Esto establece el valor Val_CVOut del lazo externo para realizar un seguimiento del SP del lazo interno cuando el lazo interno deja de estar en el modo Cascada/Relación. Esto permite realizar una transferencia sin perturbaciones al volver a poner el lazo interno en el modo Cascada/Relación. Asimismo, conecte las salidas Sts_WindupHi y Sts_WindupLo del lazo interno con las entradas Inp_WindupHi y Inp_WindupLo del lazo externo. Esto hace que el lazo externo deje de aumentar o disminuir, según corresponda, su valor Val_CVOut si el lazo interno alcanza un límite del SP o de la CV y elimina cualquier windup en el lazo externo si se dan estas condiciones.
El ejemplo se muestra en FBD en dos versiones, con cableado mínimo y con cableado extendido. El cableado extendido muestra la notificación de alarma transitorias entre la PID externa e interna y hace visibles los pines de entrada de calidad de señal para su uso inmediato en la aplicación.
Diagrama de bloque de funciones
PPID_example2FBD1_v33
PPID_example2FBD2_v34
Ejemplo 3: Control de Relación
El control de la relación se utiliza por lo general para añadir un fluido a otro fluido en una proporción establecida. Por ejemplo, si desea añadir dos reactivos (digamos A y B) a un tanque con una relación constante y el flujo del reactivo A podría cambiar con el tiempo debido a ciertas perturbaciones de proceso ascendente, puede utilizar un controlador de relación para ajustar automáticamente el régimen de adición del reactivo B. En este ejemplo, el reactivo A es a menudo denominado flujo no controlado dado que no es controlado por la instrucción PPID. Por este motivo, el flujo del reactivo B es denominado flujo controlado.
PPID_example3diagram_v33
Para realizar un control de relación con una instrucción PPID, establezca los parámetros de entrada Cfg_HasCasc y Cfg_HasRatio. Conecte el flujo no controlado en el parámetro de entrada Inp_CascSP. Cuando esté en el modo cascada/relación, el flujo no controlado se multiplica mediante OSet_Ratio, al estar bajo el control de operador, o mediante PSet_Ratio, al estar bajo el control de programa, y la instrucción PPID utiliza el valor resultante como punto de ajuste.
El ejemplo se muestra en FBD.
Diagrama de bloque de funciones
PPID_example3FBD_v33
Ejemplo 4: Control de proalimentación
El control de proalimentación es una estrategia de rechazo de perturbaciones para abordar el cambio de carga. En lugar de basarse en la retroalimentación para realizar cambios correctivos en un proceso solo después de que algún cambio en la carga haya alejado la variable de proceso del punto de ajuste, los esquemas de control con proalimentación monitorizan las cargas relevantes y utilizan esa información para realizar cambios de estabilización preventivos en el elemento de control final de forma que la variable de proceso no se vea afectada.
Considere un sistema de control que manipula el flujo de vapor en el intercambiador de calor para mantener la temperatura de descarga del aceite en un valor de punto de ajuste constante. La temperatura de salida sufrirá desviaciones temporales del punto de ajuste si cambian las condiciones de carga. Puede que el sistema de control de retroalimentación sea capaz de llevar finalmente la temperatura de salida del aceite al punto de ajuste, pero no puede iniciar una acción correctiva hasta que una carga provoque que la temperatura del aceite salga del punto de ajuste. Para mejorar el control, incorpore la acción de proalimentación y la acción de retroalimentación en el diseño. La acción de proalimentación permite al sistema de control realizar acciones correctivas en respuesta a los cambios de carga antes de que se vea afectada la variable de proceso.
En este ejemplo, la carga dominante en el sistema es el régimen de flujo del aceite, causada por los cambios en la demanda en el horno de combustión donde el aceite es utilizado como combustible. Para adaptar este sistema de control e incluir la proalimentación, es necesario instalar un transmisor de flujo de aceite y una función de ganancia/polarización que proporcione una acción de proalimentación al controlador PID para mantener la temperatura. Con la acción de control de proalimentación en curso, el régimen de flujo del vapor cambia inmediatamente con el régimen de flujo del aceite y compensa preventivamente el aumento o la reducción de la demanda de calor del aceite. La constante de tiempo del proceso con respecto a los cambios del flujo de vapor es mayor que la constante de tiempo del proceso con respecto a los cambios del flujo de aceite.
El flujo de aceite es una variable no controlada. El sistema de control de proalimentación solo puede manipular la posición de la válvula de vapor como respuesta al flujo de aceite. El mejor método para controlarla es acelerar la constante de tiempo de la variable del flujo de vapor, en la que el sistema puede influir. La solución es conectar la salida de la función de adelanto FY_32 especificada por el usuario a Inp_FF del PPID.
PPID_example4diagram_v33
Ahora, cuando el régimen de flujo del aceite hacia este intercambiador de calor aumenta de repente, la función de adelanto añadirá una sobrecarga en la señal de proalimentación que abrirá rápidamente la válvula de vapor y enviará una sobrecarga de vapor al intercambiador para ayudar a superar la respuesta lenta natural de la temperatura del aceite a los cambios en el flujo de vapor. Con esta función de adelanto la acción de proalimentación no será perfecta pero el resultado será bastante mejor que si no se agregara ninguna compensación dinámica a la señal de proalimentación.
El ejemplo se muestra en FBD.
Diagrama de bloque de funciones
PPID_example4FBD_v33
Ejemplo 5: Control de rango dividido
El control de rango dividido permite usar una sola variable de control PID para accionar más de un elemento de control final. En el ejemplo de aplicación se muestra la siguiente figura.
PPID_example5diagram_v33
En CV=0 (Val_CVOut=0), las dos válvulas se cierran. Cuando la CV es positiva, la válvula de presurización está abierta y la válvula de ventilación permanece cerrada. Si la instrucción PPID se configura con límites de escala de CV Cfg_CVEUMax=100 y Cfg_CVEUMin=-100, en CV=100 la válvula de presurización está totalmente abierta. Cuando la CV es negativa, la válvula de ventilación está abierta y la válvula de presurización está cerrada. En CV=-100, el motor está abierto. La división de CV se realiza con la instrucción Procesar Despliegue Analógico (PFO).
Configure PPID con Cfg_CVEUMin=-100, Cfg_CVEUMax=100 y PFO con Cfg_CVEUMin=-100, Cfg_CVEUMax=100, Cfg_CV1Ratio=1, Cfg_CV1Offset=0, Cfg_CV1HiLim=100, Cfg_CV1LoLim=0, Cfg_CV2Ratio=-1, Cfg_CV2Offset=0, Cfg_CV2HiLim=100, Cfg_CV2LoLim=0.
La instrucción PPID debe recibir una indicación si su objeto descendente se puede controlar. Si el objeto descendente no está preparado para la instrucción PPID, la instrucción debe realizar el seguimiento de lo que define el bloque descendente para la situación. Conecte la negación de la solicitud de inicialización (Out_CVInitializeReq) recibida por la instrucción PFO desde su objeto descendente a Inp_InnerAvailable de la instrucción PPID. Además, conecte el Out_CVInitializationVal de la instrucción PFO a Inp_CVTrack de la instrucción PPID. La instrucción PPID realizará un seguimiento de este valor cuando el bloque descendente no esté preparado para el control PPID. La instrucción PPID vuelve a control sin perturbaciones si el objeto descendente vuelve a estar disponible.
El ejemplo se muestra en FBD.
Diagrama de bloque de funciones
PPID_example5FBD_v33
Ejemplo 6: Control de selección de anulación
Considere la estación de bomba de depósito de aceite en la figura siguiente. En este ejemplo, el sistema mide la presión de succión (41) y descarga la presión (73) y la corriente del motor (60). Para controlar la presión de descarga, utilice el variador de velocidad variable de la bomba. Se establece que si la presión de succión es baja, la bomba se pone en tornillo. Si la corriente del motor es demasiado alta, el variador se desplaza y el estado de presión se envía hacia abajo la línea. Ambas limitaciones actúan en la misma dirección. Si la presión de succión es baja, la bomba deberá reducir la velocidad hasta que se recupere. Si la corriente del motor es alta, la bomba reduce la potencia, lo que reduce la corriente del motor.
PPID_example6diagram_v33
El lazo primario es la presión de descarga de la estación. La presión de succión y la corriente del motor son lazos de anulación. La selección baja elige la CV más baja que se va a enviar a la referencia de velocidad del variador. Los puntos de ajuste del lazo de corriente del motor y la presión de succión se establecen en el umbral de limitación (donde empezar a actuar). Cuando se aproxima a una limitación, el error de lazo se reduce, su salida cae y se selecciona. La CV seleccionada se retroalimenta a los tres lazos. El esquema de control se aprovecha de usar Inp_CVTrack para el seguimiento de CV final.
Configuración recomendada del parámetro de seguimiento:
  • Ganancias dependientes (Cfg_Dependent = 1). Establecido Cfg_CVTrackGain = Cfg_IGain.
  • Ganancias independientes (Cfg_Dependent = 0). Establecido Cfg_CVTrackGain = Cfg_IGain/Cfg_PGain.
Este ajuste provoca una diferencia de estado estable entre CV seleccionado (activo) y CV no seleccionado (seguimiento) igual a Cfg_PGain x Error, lo que mantiene una adecuada tolerancia para que el controlador seleccionado controle sin necesidad de cambiar innecesariamente a otro controlador.
El ejemplo se muestra en FBD.
Diagrama de bloque de funciones
PPID example 6 FBD
Ejemplo 7: Programación de ganancias de PID
Considere la estación de bomba de depósito de aceite en la figura siguiente. En este ejemplo, el sistema mide la presión de succión (41) y descarga la presión (73) y la corriente del motor (60). Para controlar la presión de descarga, utilice el variador de velocidad variable de la bomba. Se establece que si la presión de succión es baja, la bomba se pone en tornillo. Si la corriente del motor es demasiado alta, el variador se desplaza y el estado de presión se envía hacia abajo la línea. Ambas limitaciones actúan en la misma dirección. Si la presión de succión es baja, la bomba deberá reducir la velocidad hasta que se recupere. Si la corriente del motor es alta, la bomba reduce la potencia, lo que reduce la corriente del motor.
En este ejemplo, se utiliza la técnica de programación de ganancias para compensar los cambios en la dinámica de proceso sobre la marcha. El controlador de temperatura estándar TIC_41 lee la temperatura de salida TT_41 (PV) y calcula la referencia del lazo de control de flujo de vapor (CV) para mantener la temperatura del producto en el punto de ajuste. PPID se configura con ganancias dependientes (TIC_41.Cfg_Dependent=1) y la ganancia global TIC_41.Cfg_PGain cambia con el flujo de producto FT_40. La fórmula para el cálculo de PGain es específica de la aplicación. En este ejemplo, se calcula PGain en PIDGainScheduler AOI como una función lineal de caudal de producto con polarización.
PPID_example7diagram_v33
El ejemplo se muestra en FBD.
Diagrama de bloque de funciones
PPID_example7FBD_v33
Entregue su opinión
¿Tiene dudas o comentarios acerca de esta documentación? Por favor deje su opinión aquí.
Normal