El circuito que presento es un interface bucle de corriente 4-20mA que entrega una salida de 1-5V para Arduino o cualquier microcontrolador que trabaje en un rango de 0 a 5V de entrada analógica.
Muchos transductores de presión y otros instrumentos de campo utilizan el bucle de corriente de 4-20 mA de dos cables tanto para la alimentación como para la señal. El bucle de corriente de 4-20 mA es económico de instalar y es ideal para enviar una señal a largas distancias, hasta 1000 metros o más, con alta resistencia al ruido.
El módulo Interface bucle de corriente 4-20mA
El sensor transmisor en bucle de corriente
Un transmisor típico de 4-20 mA recibe energía de una fuente de alimentación externa. La fuente de alimentación debe poder proporcionar suficiente voltaje y corriente para alimentar el transmisor en todas las condiciones de funcionamiento. El transmisor requerirá algo de voltaje solo para producir una señal y la fuente de alimentación debe proporcionar esto más cualquier energía necesaria para superar cualquier resistencia colocada en el bucle de corriente. La cantidad máxima de corriente requerida por el transmisor será de al menos 20 mA, pero es mejor seleccionar una fuente de alimentación que proporcione 25 o 30 mA a través del lazo para permitir una indicación de sobrerrango por parte del transmisor.
El estándar de la industria trabaja a 24 voltios y muchos transmisores de conexión a 2 hilos admiten un rango desde 12 a 24 voltios.
La imagen anterior muestra un caso típico en la industria. Interfaz para Sensor de Temperatura RTD PT100 con Salida 4-20mA
El estándar de 4-20 mA
Disposición general de una interfaz de 4-20 mA. El receptor es simplemente cualquier dispositivo que pueda medir el voltaje a través de una resistencia, y puede ser analógico o digital. La resistencia de detección suele estar entre 100 y 500 ohmios, pero en muchos casos 250 ohmios se considera «estándar». 125 ohmios también es un valor de resistencia de sentido común, pero realmente depende de la electrónica del receptor.
El circuito del transmisor es la interfaz entre el sensor y el lazo de 4-20 mA. Ya sea discreto o usando un IC especializado, el transmisor toma una señal (típicamente un voltaje de un sensor, pero la resistencia también es común) y la convierte en corriente. La corriente es directamente proporcional a la entrada. Sin señal o en el límite inferior del sensor, la corriente es de 4 mA, aumentando hasta el máximo de 20 mA en el límite superior del sensor. La corriente permanente de 4 mA es una compensación que permite que el transmisor funcione y proporciona una señal de confianza para mostrar que el lazo está operativo.
La parte final es la fuente de alimentación. Esto puede estar dentro de la unidad receptora en algunos casos, pero no es nada raro que esté completamente separado. El suministro de voltaje solo necesita ser capaz de suministrar un máximo de 20 mA para tantos sensores que alimenta. El voltaje puede oscilar entre 12 V y 36 V, aunque es posible que en ocasiones se utilicen 48 V. 24 V es el más común y se adapta bien a la mayoría de las aplicaciones. Es importante comprender que el voltaje en realidad no importa, siempre que sea suficiente para superar la pérdida en la resistencia de detección y la resistencia del cableado, y aún así dejar suficiente voltaje en el transmisor para permitir que funcione.
Interface simple de 4-20mA a 1-5 voltios
Antes de comentar el interface les voy a enseñar que para convertir una señal de corriente de 4-20mA y conectarla al Arduino no es necesario más de 5 componentes.
Conexión de un sensor de corriente de 4..20 mA al Arduino
No tiene aislamiento galvánico pero sí protección de entrada. El diodo Zener protege las entradas del microcontrolador de voltajes superiores a 5,1 V y polaridad inversa. En el diagrama, el diodo Zener y la resistencia RX1 se calculan para un microcontrolador con un nivel de ADC de 5 voltios como es el caso del Arduino.
Cuando en la entrada tenemos 4mA, en la salida se obtiene 1V y la corriente más alta que puede haber que son 20mA da un valor de 5V como máximo, incluso circulando una corriente de 25mA, el valor se mantendrá en 5V.
El circuito anterior funciona muy bien y podemos medir cualquier sensor con salida de bucle de corriente siempre que se ajuste al circuito siguiente.
En realidad la medición es;
Corriente de entrada: 0..20 mA
Tensión de salida: 0..5 Voltios
La medición es completamente lineal, pero como la mayoría de sensores de bucle de corriente y así lo dice la estandarización trabajan en un rango de 4..20 mA, la salida es 1..5 Voltios. El valor desde 0 a 1 voltio nos puede servir para identificar por ejemplo el bucle abierto y podemos actuar una alarma en el equipo de control.
Todo lo anterior es muy simple y funciona bien. El problema es que necesitemos conectar un sensor con entrada flotante, entonces ya no nos sirve el circuito anterior.
Esquema del módulo Interface para Bucle de Corriente 4..20 mA
El amplificador diferencial es el circuito más simple para recibir señales de 4-20 mA, donde un flujo de fuente de señal a una resistencia de 250 ohmios creará voltaje si ambos terminales están polarizados a varios voltios sobre masa o GND, es necesario amplificar la diferencia entre los terminales. ¿Qué pasa con el ruido que agrega un voltaje no deseado por igual a ambos terminales de un sensor?
El amplificador diferencial rechaza el ruido y rescata la señal.
El filtrado se realiza para eliminar el contenido no deseado en la señal Se puede formar un filtro de paso bajo colocando un condensador en el
circuito de retroalimentación de una ganancia de etapa de ganancia de amplificador diferencial = R4 / R3
El circuito aquí comentado es ideal para estas aplicaciones con entrada de señal flotante o derivada a masa. Observen el puente JP1, este si está cerrado el amplificador funciona con entrada derivada a masa y abierto es entrada flotante.
En este circuito el operacional se usa más como filtro y estabilidad que como amplificador, pero recuerden que si la entrada del bucle de corriente es flotante no tenemos otra opción que usarlo.
Otra ventaja del circuito es que si necesitamos una salida mayor a 5 voltios, ejemplo los 10 voltios típicos de muchas entradas de PLC industriales, solamente con unos pequeños cambios adaptamos el módulo manteniendo la resistencia de entrada a los 250 ohmios.
Protección eléctrica del módulo
El diodo TVS nos eliminará ruidos indeseable e interferencias de la línea y altos voltajes.
A la salida del amplificador he puesto un diodo zener de 5.1 voltios para proteger la entrada del Arduino o cualquier otro microcontrolador de posibles subidad de tensión, me explico. Si a la entrada del interface llegan por ejemplo 25 mA, el operacional dejará salir por el pin 1 una tensión equivalente a 6.25 voltios, esto sin luagr a dudas quemaría el microcontrolador alimentado a 5 voltios. Por tal motivo siempre es mejor prevenir y esta es la función del diodo zener.
El módulo se alimenta a 12 voltios en modo masa común y el led d3 indicará que loa alimentación está correcta cuando detectemos que se ilumina. Tenga en cuenta de no invertir la polaridad de la fuente de alimentación, podrá dañar el IC LM358 que es el que controla la salida de tensión hacia el Arduino.
No hay mucha cosa más que comentar, el circuito es fácil de montar y tiene un buen rendimiento incluso a nivel industrial.
Arriba, imagen del módulo interface conversor de 4..20 mA a 1..5 voltios. Si desean comprar el PCB pueden obtenerlo a unos precios muy competitivos y casi regalado en pcbway.com.
Por último tenga en cuenta la posición del puente JP1 que podrá soldar las conexiones y no poner los terminales si usa en módulo en una instalación definitiva y evita problemas con el uso del tiempo y falsos contactos.
Este módulo no funciona con un ESP8266, pero si necesita uno, le puedo modificar añadiendo la otra mitad del LM385 y modificando algunos valores para que funcione correctamente.
Si optan por hacer su PCB y montarlo ustedes mismo, les felicito por la opción y si tienen dudas pueden dejar comentarios e intentaremos entre todos ayudarles.
Muy buen trabajo!, me interesaría ver el circuito aplicado a esp32.
Me gustaría saber cómo aplicarlo para configurar la salida de 0 a 10 v y si tienes un ejemplo de como es un sistema «flotante»