Nota práctica Conectar, escalar un transmisor 4–20 mA y usar la lectura en la lógica (CompactLogix / PLC en general)



1. Escenario de referencia

Supongamos:

  • Transmisor de nivel en tanque.

  • Rango de proceso: 0–3 m de nivel.

  • Señal: 4–20 mA.

  • PLC: CompactLogix con módulo analógico de corriente (ej. 1769-IF4 / 5069-IF8).

  • Fuente: 24 Vcc.

Objetivo:

  1. Cablear el transmisor al módulo.

  2. Configurar el canal como 4–20 mA.

  3. Escalar la lectura a unidades de ingeniería (m o %).

  4. Usar esa lectura en la lógica (alarmas, arranques, PID, HMI).


2. Conexión física del transmisor 4–20 mA (2 hilos)

2.1. Lazo típico de 2 hilos

FUENTE 24 Vcc +24V ─────────────▶ (+) TX_NIVEL (borne + del transmisor) 0V ─────────────▶ AI- / COM_AI (referencia del módulo analógico) TRANSMISOR 4–20 mA (2 hilos) (+) ─────────────▶ desde +24Vcc (–) ─────────────▶ AI_CH0+ (entrada de corriente del módulo) MÓDULO AI CH0+ ─────────────▶ (–) del transmisor CH0- / RTN / COM ─▶ 0 Vcc (común de la fuente DC)

El lazo de corriente es:

+24 V → transmisor → AI_CH0+ → AI_CH0- (0 V)

Puntos clave:

  • 0 V de la fuente debe ser el mismo 0 V que usa el módulo analógico (COM / RTN).

  • Revisa siempre el manual del módulo: algunos piden AI– al 0 V, otros ya internamente referencian.


3. Configuración básica del canal analógico

En Studio 5000 / Logix:

  1. Abrir propiedades del módulo AI (1769-IFx / 5069-IFx).

  2. Para el canal CH0 elegir:

    • Tipo de señal: Current.

    • Rango: 4–20 mA.

    • Formato de datos:

      • Raw/Proportional Data si vas a escalar en lógica.

      • O Engineering Units si quieres que el módulo te entregue directamente el valor escalado (no todos los módulos tienen esto).

Voy a suponer el modo Raw/Proportional Data, que es el más clásico.

Valores típicos (ejemplo muy usado en Rockwell):

  • 4 mA ≈ 3277

  • 20 mA ≈ 16383

(Compruebas en el manual del módulo: ahí indica Raw_Min y Raw_Max para 4–20 mA).


4. Escalado en lógica (de cuentas crudas a metros o %)

4.1. Datos de partida

Supongamos:

  • Raw_Min = 3277 (equivale a 4 mA → 0 m).

  • Raw_Max = 16383 (equivale a 20 mA → 3 m).

Queremos:

  • LT101_m = nivel en metros (0.00–3.00).

  • LT101_pct = nivel en % (0–100).

La fórmula genérica es:

Ingeniería = (Raw – Raw_Min) × (EU_Max – EU_Min) / (Raw_Max – Raw_Min) + EU_Min

Para nuestro ejemplo, en metros:

LT101_m = (Raw – 3277) × (3.0 – 0.0) / (16383 – 3277)

En %:

LT101_pct = (Raw – 3277) × (100.0 – 0.0) / (16383 – 3277)

4.2. Implementarlo en Ladder (CPT o escalado equivalente)

Versión sencilla con CPT (Compute) en Logix:

Tag de entrada cruda del módulo: AI_CH0_Raw (INT o DINT, p.ej. Local:3:I.Ch0Data) Tags de ingeniería: LT101_m (REAL) LT101_pct (REAL)

Rung – Escalar a metros

CPT Destination: LT101_m Expression: ((AI_CH0_Raw - 3277.0) * 3.0) / (16383.0 - 3277.0)

Rung – Escalar a %

CPT Destination: LT101_pct Expression: ((AI_CH0_Raw - 3277.0) * 100.0) / (16383.0 - 3277.0)

Notas:

  • Usa punto decimal en los números para que el cálculo sea en REAL (3277.0, 3.0, etc.).

  • Puedes meter Raw_Min, Raw_Max, EU_Min, EU_Max como constantes en tags (configurables) en lugar de números fijos.


5. Uso de la lectura en la lógica

5.1. Ejemplo 1 – Alarmas de nivel alto / bajo

Supongamos:

  • ALM_LL (nivel muy bajo) < 10 %.

  • ALM_LH (nivel alto) > 90 %.

Rungs simples:

Rung – Alarma nivel muy bajo LT101_pct 10.0 ----[ LES ]------------------------( OTE ALM_LL ) Rung – Alarma nivel alto LT101_pct 90.0 ----[ GRT ]------------------------( OTE ALM_LH )

Si quieres las alarmas latched, haces lo que ya vimos:

  • OTL ALM_LL_LAT cuando ALM_LL = 1.

  • OTU ALM_LL_LAT con pulsador de reset y condición normal.

5.2. Ejemplo 2 – Control on/off según nivel

  • Arrancar bomba cuando el nivel > 80 %.

  • Parar bomba cuando baja de 30 %.

Rung – Arranque por nivel alto LT101_pct 80.0 P_101_RUN ----[ GRT ]-----------[ XIO ]----------------( OTE P_101_CMD ) Rung – Parada por nivel bajo LT101_pct 30.0 ----[ LES ]------------------------( OTU P_101_CMD ) ; o lógicas equivalentes

O mejor, un solo rung con histeresis usando bits internos, pero la idea es: usas LT101_pct ya en %.

5.3. Ejemplo 3 – Usarla como PV de un PID

En un bloque PID de Logix:

  • PVLT101_pct (o en metros si quieres).

  • SPLT101_SP (tag REAL ajustable desde HMI).

  • CVLV101_OUT (salida 0–100 %, que luego escalas a 4–20 mA en un AO).

Dibujo conceptual:

LT101_m / LT101_pct ──▶ [PID LEVEL] ──▶ LV101_OUT (0–100%)

6. Resumen rápido (receta)

  1. Cableado

    • +24 Vdc → (+) transmisor.

    • (–) transmisor → AI_CH+.

    • AI_CH– → 0 Vdc (común).

  2. Configuración del módulo

    • Canal como Current 4–20 mA.

    • Formato Raw/Proportional (si vas a escalar tú).

  3. Escalado en PLC

    • Identificar Raw_Min y Raw_Max del módulo.

    • Aplicar fórmula de escala en CPT (o AOI tipo SCALE).

    • Sacar PV en unidades útiles (m, bar, %, etc.).

  4. Uso en lógica

    • Comparaciones para alarmas y protecciones.

    • Condiciones de arranque/paro.

    • Entrada PV para PID.

    • Envío directo al HMI (tendencias, indicadores).

by IA. .