Procesar HART analógico (Process Analog HART, PAH)
Esta información se aplica a los controladores CompactLogix 5380P, ControlLogix 5580P y ControlLogix 5590P.
La instrucción Procesar HART analógico (PAH) se utiliza para proporcionar datos digitales de HART a un dispositivo analógico inteligente junto con la instrucción Procesar entrada analógica (PAI) o salida analógica (PAO) para dicho dispositivo. Proporciona:
- Valores de variables dinámicas HART (PV, SV, TV y QV) con unidades de ingeniería y estado de variable, y el valor digital de la corriente de lazo analógica del dispositivo (en miliamperios de CC).
- Rango analógico (mínimo a 4 mA y máximo a 20 mA).
- Unidades analógicas de medida.
- Información del dispositivo como texto de etiqueta y descripción.
- Estado adicional del dispositivo (matriz de bits "Estado adicional del Comando 48" de HART).
- Búsqueda del mensaje de diagnóstico y la gravedad en función de los bits establecidos del Comando 48 (para los primeros tres diagnósticos encontrados en la matriz).
- Información de estado adicional recibida desde el dispositivo a través de HART, como los bits del Estado del dispositivo de campo.
Idiomas disponibles
Diagrama de lógica de escalera

Diagrama de bloque de funciones

Texto estructurado
PAH(PAH_tag, Ref_HARTData, Ref_DiagTable, Ref_UnitsTable)
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 ControlPlantPAx Control | P_ANALOG_HART | etiqueta | Estructura de datos requerida para el funcionamiento adecuado de la instrucción. |
Ref_HARTData | PAX_HART_DEVICE:I:0 | etiqueta | Datos de dispositivo HART para PlantPAx. |
Ref_DiagTable | P_HART_CODE_DESC_STATUS[2] | etiqueta | Tabla de búsqueda para el número de bit de diagnóstico (para el mensaje y el estado). |
Ref_UnitsTable | RAC_CODE_DESCRIPTION[2] | etiqueta | Tabla de búsqueda para el código de las unidades de medida (al texto de las unidades). |
El tipo de datos del PAX_HART_DEVICE:I:0 está asociado con el perfil adicional para los módulos HART altamente integrados como el 5094-IF8IH.
Estructura de P_ANALOG_HART
Los miembros públicos son miembros de etiqueta estándar y visible que son accesibles mediante programación. Los miembros privados y 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.
Miembros de entrada pública | Tipo de datos | Visibilidad predeterminada del FBD | Cableado FBD requerido | Uso | Descripción |
|---|---|---|---|---|---|
EnableIn | BOOL | No visible | No requerido | Entrada | 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 | No visible | No requerido | Entrada | 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. La instrucción borra este operando automáticamente. El valor predeterminado es verdadero. |
Cfg_HasHARTPV | BOOL | No visible | No requerido | Entrada | 1 = Tiene un PV digital HART, se muestra en la plantilla; 0 = PV digital HART no usado. El valor predeterminado es falso. |
Cfg_HasHARTSV | BOOL | No visible | No requerido | Entrada | 1 = Tiene un SV digital HART, se muestra en la plantilla; 0 = SV digital HART no usado. El valor predeterminado es falso. |
Cfg_HasHARTTV | BOOL | No visible | No requerido | Entrada | 1 = Tiene un TV digital HART, se muestra en la plantilla; 0 = TV digital HART no usado. El valor predeterminado es falso. |
Cfg_HasHARTQV | BOOL | No visible | No requerido | Entrada | 1 = Tiene un QV digital de HART, visualización en las plantillas; 0 = QV digital de HART no utilizada. El valor predeterminado es falso. |
Cfg_UseHARTVarSts | BOOL | No visible | No requerido | Entrada | 1 = Utilice el estado de comunicación de HART para generar SrcQ, 0 = se asume correcto. El valor predeterminado es verdadero. |
Cfg_UseHARTText | BOOL | No visible | No requerido | Entrada | 1 = Usa el texto recibido del dispositivo HART, 0 = usa propiedades extendidas para el texto. El valor predeterminado es falso. |
Cfg_HARTPVDecPlcs | SINT | No visible | No requerido | Entrada | Número de posiciones decimales para la pantalla de la PV de HART. Válido = 0,1,2,3,4,5,6. El valor predeterminado es 2. |
Cfg_HARTSVDecPlcs | SINT | No visible | No requerido | Entrada | Número de posiciones decimales para la pantalla de la SV de HART. Válido = 0,1,2,3,4,5,6. El valor predeterminado es 2. |
Cfg_HARTTVDecPlcs | SINT | No visible | No requerido | Entrada | Número de posiciones decimales para la pantalla de la TV de HART. Válido = 0,1,2,3,4,5,6. El valor predeterminado es 2. |
Cfg_HARTQVDecPlcs | SINT | No visible | No requerido | Entrada | Número de posiciones decimales para la pantalla de la QV de HART. Válido = 0,1,2,3,4,5,6. El valor predeterminado es 2. |
Cfg_HasMoreObj | BOOL | No visible | No requerido | Entrada | 1 = Indica a HMI que hay un objeto con más información disponible para la navegación. El valor predeterminado es falso. |
Cfg_HasNav | BOOL | No visible | No requerido | Entrada | 1 = Indica a HMI que hay un objeto de entrada o salida analógica relacionado y disponible para la navegación. El valor predeterminado es falso. |
Set_VirtualHARTPV | REAL | No visible | No requerido | Entrada | PV de HART utilizada en Virtual (cuando Sts_Virtual = 1) (unidades de ingeniería de la PV). El valor predeterminado es 0,0. |
Set_VirtualHARTSV | REAL | No visible | No requerido | Entrada | SV de HART utilizada en Virtual (cuando Sts_Virtual = 1) (unidades de ingeniería de la SV). El valor predeterminado es 0,0. |
Set_VirtualHARTTV | REAL | No visible | No requerido | Entrada | TV de HART utilizada en Virtual (cuando Sts_Virtual = 1) (unidades de ingeniería de la TV). El valor predeterminado es 0,0. |
Set_VirtualHARTQV | REAL | No visible | No requerido | Entrada | QV de HART utilizada en Virtual (cuando Sts_Virtual = 1) (unidades de ingeniería de la QV). El valor predeterminado es 0,0. |
PCmd_Virtual | BOOL | No visible | No requerido | Entrada | Comando de programa para seleccionar la operación del dispositivo Virtual (simulado). La instrucción borra este operando automáticamente. El valor predeterminado es falso. |
PCmd_Physical | BOOL | No visible | No requerido | Entrada | Comando de programa para seleccionar la operación del dispositivo Físico (no simulado). La instrucción borra este operando automáticamente. El valor predeterminado es falso. |
Miembros de salida públicos | Tipo de datos | Visibilidad predeterminada del FBD | Cableado FBD requerido | Uso | Descripción |
|---|---|---|---|---|---|
EnableOut | BOOL | No visible | No requerido | Salida | Este estado de salida siempre refleja el estado de la entrada EnableIn. |
Val_HARTPV | REAL | Visible | No requerido | Salida | Valor de la PV de HART digital en unidades de ingeniería de la PV (después de la sustitución, si se utiliza). |
Val_HARTSV | REAL | Visible | No requerido | Salida | Valor de la SV de HART digital en unidades de ingeniería de la SV (después de la sustitución, si se utiliza). |
Val_HARTTV | REAL | Visible | No requerido | Salida | Valor de la TV de HART digital en unidades de ingeniería de la TV (después de la sustitución, si se utiliza). |
Val_HARTQV | REAL | Visible | No requerido | Salida | Valor de la QV de HART digital en unidades de ingeniería de la QV (después de la sustitución, si se utiliza). |
Val_HARTLoopCurrent | REAL | Visible | No requerido | Salida | Valor de HART digital para corriente de lazo en miliamperios. |
Val_InpRawMinFromHART | REAL | No visible | No requerido | Salida | Señal de entrada analógica sin escala mínima desde el módulo HART (en unidades del módulo). |
Val_InpRawMaxFromHART | REAL | No visible | No requerido | Salida | Señal de entrada analógica sin escala máxima desde el módulo HART (en unidades del módulo). |
Val_PVEUMinFromHART | REAL | No visible | No requerido | Salida | Rango con escala de entrada analógica mínimo desde el dispositivo HART (en unidades de ingeniería). |
Val_PVEUMaxFromHART | REAL | No visible | No requerido | Salida | Rango con escala de entrada analógica máximo desde el dispositivo HART (en unidades de ingeniería). |
Sts_eHARTDiagCode1 | INT | No visible | No requerido | Salida | Código de diagnóstico HART 1 (número de bit en el Comando 48, 255 = ninguno). |
Sts_eHARTDiagCode2 | INT | No visible | No requerido | Salida | Código de diagnóstico HART 2 (número de bit en el Comando 48, 255 = ninguno). |
Sts_eHARTDiagCode3 | INT | No visible | No requerido | Salida | Código de diagnóstico HART 3 (número de bit en el Comando 48, 255 = ninguno). |
Sts_bHARTDiagSts | SINT | No visible | No requerido | Salida | Estado de diagnóstico HART general, .0 = Información, .1 = Se requiere mantenimiento, .2 = Especificación desactivada, .3 = Comprobación de función, .4 = Fallo. |
Sts_bHARTDiagSts1 | SINT | No visible | No requerido | Salida | Estado de diagnóstico del código de diagnóstico HART 1, .0 = Información, .1 = Se requiere mantenimiento, .2 = Especificación desactivada, .3 = Comprobación de función, .4 = Fallo. |
Sts_bHARTDiagSts2 | SINT | No visible | No requerido | Salida | Estado de diagnóstico del código de diagnóstico HART 2, .0 = Información, .1 = Se requiere mantenimiento, .2 = Especificación desactivada, .3 = Comprobación de función, .4 = Fallo. |
Sts_bHARTDiagSts3 | SINT | No visible | No requerido | Salida | Estado de diagnóstico del código de diagnóstico HART 3, .0 = Información, .1 = Se requiere mantenimiento, .2 = Especificación desactivada, .3 = Comprobación de función, .4 = Fallo. |
Sts_Initialized | BOOL | No visible | No requerido | Salida | 1 = La instrucción se inicializa. Utilice Inp_InitializeReq para reinicializar. |
Sts_Virtual | BOOL | No visible | No requerido | Salida | 1 = Usa la PV virtual en lugar de la entrada del dispositivo (Inp_PVData) para calcular la salida. 0 = La instrucción usa los parámetros de entrada Inp_PVData para calcular la salida. Sts_Virtual es una copia de Inp_Virtual. |
Sts_ConnectionFault | BOOL | No visible | No requerido | Salida | 1 = Fallo de conexión de entrada de datos de HART, 0 = conexión correcta. |
Sts_DvcMalfunction | BOOL | No visible | No requerido | Salida | 1 = El dispositivo HART informa de que tiene un funcionamiento defectuoso. |
Sts_CurrentSaturated | BOOL | No visible | No requerido | Salida | 1 = HART informa de que la corriente analógica es limitada. |
Sts_CurrentFixed | BOOL | No visible | No requerido | Salida | 1 = Corriente de lazo establecida en valor fijo mediante comando HART. |
Sts_CurrentMismatch | BOOL | No visible | No requerido | Salida | 1 = Corriente de lazo reportada mediante HART no coincide con la señal analógica. |
Sts_DiagnosticActive | BOOL | No visible | No requerido | Salida | 1 = Diagnóstico de entrada de datos de HART activo. |
Val_DiagnosticSeqCount | SINT | No visible | No requerido | Salida | Conteo de secuencias de diagnóstico de entrada de datos de HART (por cambio en los datos de diagnóstico, vueltas). |
SrcQ_IO | SINT | No visible | No requerido | Salida | Origen y calidad de la entrada o de la salida primaria (enumerada): 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 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 |
SrcQ | SINT | No visible | No requerido | Salida | Origen y calidad del valor o del estado primario (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 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 |
SrcQ_HARTPV | SINT | No visible | No requerido | Salida | Origen y calidad de la PV digital de HART (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 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 |
SrcQ_HARTSV | SINT | No visible | No requerido | Salida | Origen y calidad de la SV digital de HART (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 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 |
SrcQ_HARTTV | SINT | No visible | No requerido | Salida | Origen y calidad de la TV digital de HART (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 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 |
SrcQ_HARTQV | SINT | No visible | No requerido | Salida | Origen y calidad de la QV digital de HART (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 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 |
SrcQ_HARTLoopCurrent | SINT | No visible | No requerido | Salida | Origen y calidad del valor de la corriente de lazo de HART (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 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 | No visible | No requerido | Salida | Estado confirmado del dispositivo: 0 = En directo, 1 = información de diagnóstico, 2 = Se requiere mantenimiento, 3 = especificación desactivada (incierto), 4 = comprobación de función (sustituido), 5 = fallo, 6 = pérdida de comunicación de HART, 7 = Virtualizado. |
Sts_eFault | INT | No visible | No requerido | Salida | Estado de fallo del dispositivo: 0 = Ninguno, 1 = una variable dinámica es incorrecta, 2 = el diagnóstico del dispositivo indica un fallo, 3 = pérdida de comunicación de HART, 4 = fallo de conexión del módulo, 5 = el dispositivo informa un funcionamiento defectuoso. |
Val_HARTRevision | SINT | No visible | No requerido | Salida | Se ha recibido una revisión principal de especificaciones de HART del dispositivo. |
Miembros de entrada privados | Tipo de datos | Descripción |
|---|---|---|
MCmd_Physical | BOOL | Comando de mantenimiento para seleccionar la operación del dispositivo Físico (no simulado). La instrucción borra este operando automáticamente. El valor predeterminado es falso. |
MCmd_Virtual | BOOL | Comando de mantenimiento para seleccionar la operación del dispositivo Virtual (simulado). La instrucción borra este operando automáticamente. El valor predeterminado es falso. |
Miembros de salida privados | Tipo de datos | Descripción |
|---|---|---|
MRdy_Physical | BOOL | 1 = Listo para MCmd_Physical, habilitar botón de HMI. |
MRdy_Virtual | BOOL | 1 = Listo para MCmd_Virtual, habilitar botón de HMI. |
Sts_sHARTDesc | String_16 | Texto de descripción del dispositivo HART. |
Sts_sHARTDiagMsg1 | String_32 | Mensaje de diagnóstico del dispositivo HART 1. |
Sts_sHARTDiagMsg2 | String_32 | Mensaje de diagnóstico del dispositivo HART 2. |
Sts_sHARTDiagMsg3 | String_32 | Mensaje de diagnóstico del dispositivo HART 3. |
Sts_sHARTPVEU | String_16 | Texto de las unidades de ingeniería de la PV digital de HART. |
Sts_sHARTQVEU | String_16 | Texto de las unidades de ingeniería de la QV digital de HART. |
Sts_sHARTSVEU | String_16 | Texto de las unidades de ingeniería de la SV digital de HART. |
Sts_sHARTTag | String_32 | Texto de etiqueta del dispositivo HART. |
Sts_sHARTTVEU | String_16 | Texto de las unidades de ingeniería de la TV digital de HART. |
Sts_sPVEU | String_16 | Texto de las unidades de ingeniería de la PV analógica. |
Miembros InOut públicos | Tipo de datos | Visibilidad predeterminada del FBD | Cableado FBD requerido | Uso | Descripción |
|---|---|---|---|---|---|
Ref_HARTData | PAX_HART_DEVICE:I:0 | Visible | Requerido | InOut | Datos de HART del ensamblaje del módulo de E/S (I/O). |
Ref_DiagTable | P_HART_CODE_DESC_STATUS[2] | Visible | Requerido | InOut | Tabla de búsqueda para el número de bit de diagnóstico (para el mensaje y el estado). |
Ref_UnitsTable | RAC_CODE_DESCRIPTION[2] | Visible | Requerido | InOut | Tabla de búsqueda para el código de las unidades de medida (al texto de las unidades). |
Estructura del PAX_HART_DEVICE:I:O
La estructura del PAX_HART_DEVICE:I:O es el subtipo de ensamblaje de entrada utilizado por los módulos E/S (I/O) HART altamente integrados para proporcionar todos los datos de HART necesarios para esta instrucción:
Miembros | Tipo de datos | Descripción |
|---|---|---|
RunMode | BOOL | Siempre 0, no es utilizado por esta instrucción |
ConnectionFaulted | BOOL | La conexión de red con el módulo de E/S (I/O) se ha perdido |
DiagnosticActive | BOOL | El módulo de E/S (I/O) tiene al menos un diagnóstico disponible |
DiagnosticSequenceCount | SINT | Este conteo aumenta cada vez que cambia la información de diagnóstico del módulo de E/S (I/O). Cuenta hasta +127, luego vuelve a -128 y omite el cero. |
CurrentSaturated | BOOL | La señal analógica ha alcanzado su valor mínimo o máximo y no representa la variable de proceso real |
CurrentFixed | BOOL | La señal analógica ha sido fijada por comando y no representa la variable de proceso real |
MoreStatusAvailable | BOOL | Se establece al menos un bit del Comando 48 (otro estado del dispositivo) y los diagnósticos deben mostrarse |
CurrentMismatch | BOOL | El módulo de E/S (I/O) informa de que el valor digital para la corriente de lazo y para la corriente del lazo analógica real están significativamente en desacuerdo |
ConfigurationChanged | BOOL | El dispositivo informa de que los datos de configuración (escalado, texto, unidades) han cambiado |
Malfunction | BOOL | El dispositivo informa de que ha detectado un funcionamiento defectuoso |
LoopCurrent | CHANNEL_AI:I:O | Valor digital HART para la corriente (mA CC) de lazo analógica del dispositivo |
PV | CHANNEL_AI_HART:I:O | Variable Primaria dinámica HART con unidades y estado |
SV | CHANNEL_AI_HART:I:O | Variable Secundaria dinámica HART con unidades y estado |
TV | CHANNEL_AI_HART:I:O | Variable Terciaria dinámica HART con unidades y estado |
QV | CHANNEL_AI_HART:I:O | Variable Cuaternaria dinámica HART con unidades y estado |
Static | AB_5000_HART_Static_Struct:I:O | Datos "estáticos" HART, como el rango de escala del dispositivo, las unidades de medida de señal analógica y las cadenas de texto del dispositivo para la descripción y nombre de la etiqueta |
ChDataAtSignal4 | REAL | El valor proporcionado por el canal analógico del módulo de E/S (I/O) cuando se recibe una señal de CC de 4,0 mA, proporcionado para el uso escalado por una instrucción PAI o PAO asociada |
ChDataAtSignal20 | REAL | El valor proporcionado por el canal analógico del módulo de E/S (I/O) cuando se recibe una señal de CC de 20,0 mA, proporcionado para el uso escalado por una instrucción PAI o PAO asociada |
Estructura de P_HART_CODE_DESC_STATUS
La estructura de P_HART_CODE_DESC_STATUS se utiliza para buscar el texto de diagnóstico y el estado del dispositivo asociados con un determinado bit de diagnóstico del Comando 48. El dispositivo proporciona una matriz de datos de 200 bits (25 bytes), donde cada conjunto de bits indica una condición de diagnóstico particular. Se utiliza una matriz de miembros de este tipo para permitir que la instrucción muestre una descripción de texto y un estado para un bit determinado.
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 NULA, no se realiza la función de búsqueda de bits de diagnóstico.
Miembros | Tipo de datos | Descripción |
|---|---|---|
Código | DINT | Código de diagnóstico. Este es el número de bits de diagnóstico (de 0 a 199) en la matriz de 200 bits devueltos en el Comando 48 HART (Estado del dispositivo adicional), o -1 si no se establece ningún bit de diagnóstico. |
Desc | STRING_32 | Texto de diagnóstico. |
bSts | SINT | Estado del dispositivo (asignado a bits): .0 = Información .1 = Se requiere mantenimiento .2 = Especificación desactivada .3 = Comprobación de función .4 = Fallo |
Estructura de RAC_CODE_DESCRIPTION[x]
La estructura RAC_CODE_DESCRIPTION[x] es una matriz de números de código de las unidades de ingeniería y los pares de texto de las unidades de ingeniería correspondientes, usados como tabla de búsqueda. La instrucción busca la tabla para el código de unidades de ingeniería recibido de parte del dispositivo y muestra el texto de la unidad de ingeniería correspondiente para la variable. 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 NULA, no se realiza la función de búsqueda de código de unidad.
Miembros | Tipo de datos | Descripción |
|---|---|---|
Código | DINT | Código para el que se buscará la descripción. |
Desc | STRING | Descripción para un código determinado. |
Operación
Este diagrama muestra la funcionalidad de la instrucción PAH:

Virtualización
Utilice la virtualización para poner a prueba la instrucción y la formación del operador. Comando para una operación virtual mediante el comando de programa PCmd_Virtual o el comando de mantenimiento MCmd_Virtual. Después de completar la operación virtual, utilice el comando de programa PCmd_Physical o el comando de mantenimiento MCmd_Physical para volver a la operación física normal del dispositivo.
Cuando la virtualización está activa, los valores de las variables de salida dinámicas (PV, SV, TV, QV) de la instrucción PAH se establecen utilizando las configuraciones de los valores virtuales (Set_VirtualPV, etc.) y se ignoran los fallos de E/S (I/O). Manipule la instrucción para operar como si estuviera presente un dispositivo de proceso HART en funcionamiento.
Inicialización
Normalmente, la instrucción se inicializa en la primera ejecución de la instrucción. Solicite la reinicialización estableciendo Inp_InitializeReq = 1. 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).
Configuración de cadenas para HMI
Configure las cadenas de las plantillas de HMI (vista FT) y del cuadro de diálogo de configuración de Logix Designer. Las cadenas están establecidas para las propiedades extendidas de los elementos de etiqueta.
- 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
- Unidades de ingeniería para señal analógica sin procesar
- Unidades de ingeniería para la PV de señal analógica
- Unidades de ingeniería para la PV de HART
- Unidades de ingeniería para la SV de HART
- Unidades de ingeniería para la TV de HART
- Unidades de ingeniería para la QV de HART
- Etiqueta para la PV de HART
- Etiqueta para la SV de HART
Monitorizar la instrucción PAH
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
Diagrama de lógica de escalera
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Instrucción marcada para la inicialización en el primer escaneado / primera ejecución |
Primera ejecución de instrucción | Se inicializan los datos internos como los punteros y los temporizadores |
La condición de entrada de renglón es falsa | Establecer la condición de salida de renglón a condición de entrada de renglón. La instrucción se ejecuta. Se proporcionan datos, unidades y estado HART. |
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. Se proporcionan datos, unidades y estado HART. |
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 | Instrucción marcada para la inicialización en el primer escaneado / primera ejecución |
Primera ejecución de instrucción | Se inicializan los datos internos como los punteros y los temporizadores |
Primer escaneado de instrucción | Se inicializan los datos internos como los punteros y los temporizadores |
EnableIn es falso | EnableOut se establece como falso. La instrucción se ejecuta. Se proporcionan datos, unidades y estado HART. |
EnableIn es verdadero | El valor de EnableOut se establece en verdadero. La instrucción se ejecuta. Se proporcionan datos, unidades y estado HART. |
Post-escaneado | Los bits EnableIn y EnableOut se establecen en falsos. |
Texto estructurado
En Texto estructurado, EnableIn siempre es verdadero durante un escaneado normal. Por tanto, si la instrucción se encuentra en la ruta de control activada por la lógica, se ejecutará.
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Consulte Pre-escaneado en la tabla Diagrama de bloque de funciones. |
Primera ejecución de instrucción | Consulte la primera ejecución de la instrucción en la tabla Diagrama de bloque de funciones. |
EnableIn es verdadero | Consultar EnableIn es verdadero en la tabla Diagrama de bloque de funciones. |
Post-escaneado | Consulte Post-escaneado en la tabla Diagrama de bloque de funciones. |
Ejemplo
En el siguiente ejemplo, la instrucción PAH se utiliza junto con una instrucción PAI. La instrucción PAI proporciona el procesamiento de la señal analógica (de 4 a 20 mA CC) desde el módulo de entrada analógica HART, y la instrucción PAH proporciona el procesamiento de los datos digitales HART superpuestos a la señal analógica, recibidos desde el mismo dispositivo de campo. Como resultado, se proporciona una señal analógica en tiempo real para el control de lazo cerrado (no se muestra) y se proporcionan cuatro variables dinámicas digitales para monitorizar el proceso adicional.
Diagrama de lógica de escalera

Diagrama de bloque de funciones

Texto estructurado
PAH(TI_301_Dvc, ProMag400_I:I.PAxDevice, HART_DiagTable_Flow, HART_EUTable_Generic);
TI_301.Cfg_InpRawMin:=TI_301_Dvc.Val_InpRawMinFromHART;
TI_301.Cfg_InpRawMax:=TI_301_Dvc.Val_InpRawMaxFromHART;
TI_301.Cfg_PVEUMin:=TI_301_Dvc.Val_PVEUMinFromHART;
TI_301.Cfg_PVEUMax:=TI_301_Dvc.Val_PVEUMaxFromHART;
TI_301.Inp_PVData:=TI_301_Inp_PVData;
TI_301.Inp_ModFault:=TI_301_Inp_ModFault;
TI_301.Inp_ChanFault:=TI_301_Inp_ChanFault;
TI_301.Inp_PVUncertain:=TI_301_Inp_PVUncertain;
PAI(TI_301, 0);
Entregue su opinión