Tutorial sensor de corriente ACS712 (2024)

251384

El sensor de corriente ACS712 es una solución económica para medir corriente, internamente trabaja con un sensor de efecto Hall que detecta el campo magnético que se produce por inducción de la corriente que circula por la línea que se está midiendo. EL sensor nos entrega una salida de voltaje proporcional a la corriente, dependiendo la aplicación podemos usar el ACS712-05A, ACS712-20A o el ACS712-30A, para rangos de 5, 20 o 30 amperios respectivamente

El ACS712 podemos encontrarlo en módulos, los cuales nos facilitan sus conexión, traen una bornera para conectar la línea que queremos medir y 3 pines, dos para conectar la alimentación y un pin para la salida analógica.

Tutorial sensor de corriente ACS712 (2)

El rango de corriente que podemos medir y sensibilidad varían dependiendo del modelo del integrado, existen tres modelos los cuales detallamos a continuación:

Modelo

Rango

Sensibilidad

ACS712ELCTR-05B-T

-5 a 5 A

185 mV/A

ACS712ELCTR-20A-T

-20 a 20 A

100 mV/A

ACS712ELCTR-30A-T

-30 a 30 A

66 mV/A

El sensor nos entrega un valor de 2.5 voltios para una corriente de 0A y a partir de allí incrementa proporcionalmente de acuerdo a la sensibilidad, teniendo una relación lineal entre la salida de voltaje del sensor y la corriente.
Dicha relación es una línea recta en una gráfica Voltaje vs Corriente donde la pendiente es la sensibilidad y la intersección en el eje Y es 2.5 voltios. La ecuación de la recta seria la siguiente

Tutorial sensor de corriente ACS712 (3)

Donde la pendiente es m y equivale a laSensibilidad

Despejando tendremos la ecuación para hallar la corriente a partir de la lectura del sensor:

Tutorial sensor de corriente ACS712 (4)

Con esta ecuación podemos pasar a realizar los ejemplos con Arduino:

Conexiones entre Arduino y módulo ACS712

Tutorial sensor de corriente ACS712 (5)

Para las conexiones en el módulo guiarse por los nombres de los pines, en algunos modelos vienen en diferente orden, en la bornera ingresa la línea de la cual se desea medir, para medir la corriente se debe conectar en serie con el dispositivo o carga, nunca conectar en paralelo a la fuente de voltaje.

Ej.1 Realizando medidas de corriente con el ACS712

Para realizar la lectura de corriente simplemente se necesita leer la entrada analógica y con la formula antes expuesta obtener la corriente.

A continuación se muestra el código para un realizar la lectura de corriente:

float Sensibilidad=0.185; //sensibilidad en Voltios/Amperio para sensor de 5Avoid setup() { Serial.begin(9600);}void loop() { float voltajeSensor= analogRead(A0)*(5.0 / 1023.0); //lectura del sensor  float I=(voltajeSensor-2.5)/Sensibilidad; //Ecuación para obtener la corriente Serial.print("Corriente: "); Serial.println(I,3); delay(200); }

En nuestro caso estamos trabajando con un sensor de 5A por eso usamos el valor de sensibilidad de 0.185V/A que es el equivalente 185mV/A que nos da el fabricante, si están trabajando con el sensor de 20A, reemplazar el valor de la sensibilidad por 0.100 V/A.

A continuación mostramos los resultados obtenidos del monitor serial:

Tutorial sensor de corriente ACS712 (6)

La Imagen anterior es para una lectura de una corriente de 0A, notar que existe ruido en la lectura, si para su aplicación el ruido presente no tiene mucha importancia, podrían trabajar con el programa de este ejercicio, sino se tendrá que aplicar un filtro, que se muestra a continuación.

Ej.2 Aplicando Filtro a las lecturas del ACS712

Existen varios tipos de filtros, que dependiendo de la complejidad pueden consumir recursos en la programación de nuestro Arduino, en nuestro caso simplemente usaremos la media aritmética de varias lecturas consecutivas, implementar el promedio de las lecturas en Arduino es sencillo y fácil de entender, simplemente hay quesumar la lecturas y dividirlas en el número de muestras.
La cantidad de muestras para calcular el promedio depende del nivel de ruido que tengan.

EL programa seria el siguiente:

float Sensibilidad=0.185; //sensibilidad en Voltios/Amperio para sensor de 5Avoid setup() { Serial.begin(9600);}void loop() { float I=get_corriente(200);//obtenemos la corriente promedio de 500 muestras  Serial.print("Corriente: "); Serial.println(I,3); delay(100); }float get_corriente(int n_muestras){ float voltajeSensor; float corriente=0; for(int i=0;i<n_muestras;i++) { voltajeSensor = analogRead(A0) * (5.0 / 1023.0);////lectura del sensor corriente=corriente+(voltajeSensor-2.5)/Sensibilidad; //Ecuación para obtener la corriente } corriente=corriente/n_muestras; return(corriente);}

En nuestro caso debido a que hay bastante ruido trabajamos con 200 muestras, mientras mayor sea la cantidad de muestras obtendremos un mejor resultado pero también mayor será el tiempo que se demora el Arduino para realizar la medición, para 200 muestras Arduino se demora alrededor de 35 milisegundos que se lo puede considerar despreciable en la mayoría de aplicaciones.

Tutorial sensor de corriente ACS712 (7)

Notar que ahora el ruido es de amplitud 10mA en comparación al ejemplo anterior que era superior a 100mA, No confundir el ruido con el error del offset que en este caso es de aproximadamente +150 mA , este último error si es representativo podemos restar al resultado en la ecuación de la corriente.

El siguiente resultado es para una carga de aproximadamente 1.2A

Tutorial sensor de corriente ACS712 (8)

Del sensor obtenemos una medida de 1.02A aproximadamente, pero si medimos con un multitester o amperímetro el valor de la corriente es de 1.15, en nuestro caso esto nos da un error de -130 mA que es diferente aloffset o el error para una corriente de 0A. Si sus resultados también son como el nuestro, significa que la ecuación que estamos usando para calcular la corriente no es la adecuada, para corregir esto es necesarios calibrar nuestro sensor y hallar los nuevos valores de sensibilidad y el voltaje equivalente a los 0A, valores que necesitamos para la ecuación.

Ej.3 Calibrando nuestro ACS712

Si el error que obtenemos con los ejemplos anteriores es grande, debemos de recalibrar y hallar los valores reales puesto que los valores que nos da el fabricante no son exactos.

Recordemos la ecuación que usamos para hallar la corriente:

Tutorial sensor de corriente ACS712 (9)

En esta ecuación solo tenemos dos constantes: los 2.5 que es el voltaje del sensor cuando la corriente es 0V y la sensibilidad, que equivale a la pendiente de la recta Voltaje Vs Corriente; tenemos que calcular los valores reales de estas dos constantes.


Al ser una recta, basta con obtener dos puntos y con estos podemos calcular constantes. Para esto necesitamos un multitester o amperímetro, el cual debe ser de buena precisión, ya que este será la herramienta para calibrar. El amperímetro, el ACS712 y la carga deben de conectarse en serie.

Después de conectar el amperímetro y el sensor, debemos de tomar lecturas de voltaje del sensor, esto se hace con el siguiente programa.

void setup() { Serial.begin(9600);}void loop() { float voltajeSensor =get_voltage(10000);//obtenemos voltaje del sensor(10000 muestras)  Serial.print("Voltaje del sensor: "); Serial.println(voltajeSensor ,3); }float get_voltage(int n_muestras){ float voltage=0; for(int i=0;i<n_muestras;i++) { voltage =voltage+analogRead(A0) * (5.0 / 1023.0); } voltage=voltage/n_muestras; return(voltage);}

El primer punto que debemos medir es para una corriente de 0 amperios:

Tutorial sensor de corriente ACS712 (10)

Esta es una de las constantes, en nuestro caso 2.527, que corresponde al punto P1(2.527,0)

Para hallar la segunda constante necesitamos una segunda medida, se recomienda que no sea cercano al valor de la primera medida, en nuestro caso usaremos una carga cuya corriente es superior a 1 amperio.

Tutorial sensor de corriente ACS712 (11)

Como se observa el sensor tiene un voltaje de 2.687, y en el amperímetro medimos 1.155A, este sería nuestro segundo punto P2(2.687,1.155) , para calcular la sensibilidad simplemente calculamos la pendiente.

Teniendo estos dos valores la ecuación para calcular la corriente es:

Tutorial sensor de corriente ACS712 (12)

Donde sensibilidad=0.139 V/A

Con estos nuevos valores debemos trabajar los ejemplos anteriores

Tener en cuenta que cada sensor tiene su propia característica

Otra forma puede ser en tomar varios puntos y al final aplicar regresión y hallara la ecuación de la recta.

Ej.4 Vatímetro y Amperímetro de corriente alterna usando el módulo ACS712

En este ejemplo realizaremos mediciones de intensidad corriente alterna y con esto calcular la potencia.

Cuando realizamos una lectura del ACS712 obtenemos el valor de la corriente en ese instante, dicho valor estará oscilando a una frecuencia de 60Hz, los valores máximo en los que oscila son las corrientes picos, nuestro programa entonces deberá poder obtener los valores pico de la onda de corriente, Teniendo el valor de la corriente Pico podemos calcular la corriente eficaz o RMS y con esto la potencia.

A continuación mostramos el código de este ejemplo:

float Sensibilidad=0.139; //sensibilidad en V/A para nuestro sensorfloat offset=0.100; // Equivale a la amplitud del ruidovoid setup() { Serial.begin(9600);}void loop() { float Ip=get_corriente();//obtenemos la corriente pico float Irms=Ip*0.707; //Intensidad RMS = Ipico/(2^1/2) float P=Irms*220.0; // P=IV watts Serial.print("Ip: "); Serial.print(Ip,3); Serial.print("A , Irms: "); Serial.print(Irms,3); Serial.print("A, Potencia: "); Serial.print(P,3); Serial.println("W"); delay(500); }float get_corriente(){ float voltajeSensor; float corriente=0; long tiempo=millis(); float Imax=0; float Imin=0; while(millis()-tiempo<500)//realizamos mediciones durante 0.5 segundos { voltajeSensor = analogRead(A0) * (5.0 / 1023.0);//lectura del sensor corriente=0.9*corriente+0.1*((voltajeSensor-2.527)/Sensibilidad); //Ecuación para obtener la corriente if(corriente>Imax)Imax=corriente; if(corriente<Imin)Imin=corriente; } return(((Imax-Imin)/2)-offset);}

El algoritmos consiste en realizar mediciones durante medio segundo, lo cual equivale a realizar medidas durante 30 ciclos (señal de 60Hz), durante este tiempo obtenemos las lecturas máximas y minimas que corresponden a +Ip y –Ip, la correinte Ip será el promedio de estas. A este resultado le restamos la amplitud del ruido que está presente cuando la corriente es 0.

Notar que para disminuir un poco el ruido aplicamos un filtro pasa bajos, que es similar a realizar un promedio de 10 muestras.

 corriente=0.9*corriente+0.1*((voltajeSensor-2.527)/Sensibilidad); //Ecuación para obtener la corriente

Con estos pesos amortiguamos un poco el ruido sin afectar la señal de 60Hz

A continuación se muestra el resultado cundo no tenemos ningunacarga conectada (0 amperios)

Tutorial sensor de corriente ACS712 (13)

En nuestro caso la Corriente Ip es cercano a 0, puesto que nosotros ya hemos calculado el offset, en su caso deberán poner el offset en 0, y relizar la lectura sin carga, el valor del Ip será el valor del offset que deben remmplazar en su código.


Para ver si su amperímetro está bien calibrado deben contrastar con un amperímetro, vatímetro, o verificar con una carga conocida. Por ejemplo en continuación mostramos el resultado al trabajar con una carga de 20W (foco ahorrador)

Tutorial sensor de corriente ACS712 (14)

Si su resultado no son los adecuados deberán de volver a calibrar su sensor, primero con corriente DC y encontrar la ecuación correcta para calura la corriente usando los ejemplos anteriores y posteriormente trabajarlo con AC.

Productos relacionados

Vista rápida Ver más

En stock

Sensor de Corriente ACS712T-20A

SKU: 000065

S/15,00

El módulo ACS712ST-20A es una sensor analógico que te permite medir corriente de hasta 20 amperios utilizando el efecto Hall y sin disipar energía.

Añadir al carrito
Vista rápida

Compartir

Vista rápida Ver más

En stock

Sensor de Corriente ACS712T-5A

SKU: 000229

S/12,00

El módulo ACS712ST-5A es una sensor analógico que te permite medir corriente de hasta5 amperios utilizando el efecto Hall y sin disipar energía.

Añadir al carrito
Vista rápida

Compartir

Vista rápida Ver más

En stock

Monitor de corriente voltaje, high side INA219

SKU: 000559

S/25,00

Para medir tanto corriente como voltaje DC, se conecta en el lado positivo de la carga.

Añadir al carrito
Vista rápida

Compartir

Vista rápida Ver más

Agotado

Monitor de corriente voltaje, high/low side INA226

SKU: 000560

S/29,00

Para medir tanto corriente como voltaje DC, se puede conectar tanto en el lado positivo como en el lado negativo de la carga.

Ver más
Vista rápida

Compartir

Vista rápida Ver más

En stock

Sensor de Corriente AC 30A no invasivo - SCT-013-030

SKU: 000154

S/40,00

El sensor SCT-013-030 permite medir corriente alterna de hasta 30A, se instala fácilmente como una pinza alrededor de un cable conductor.

Añadir al carrito
Vista rápida

Compartir

Artículos relacionados

Arduino y ESP8266 como cliente web

76 148087

Tutorial RTC DS1307 y EEPROM AT24C

25 79007

Tutorial sensor de corriente AC no invasivo SCT-013

95 211731

Tutorial sensor de flujo de agua

55 560000

Tutorial sensor de temperatura y humedad DHT11 y DHT22

25 287884

83Comentarios

  • Tutorial sensor de corriente ACS712 (32)

    Fe****** 14/12/2023 Responder

    Buenas tardes a todos! Quisiera saber si este sensor puede medir corrientes en un rango de 0,01 a 0,06 A. Teniendo en cuenta la sensibilidad y el modelo, cual podría ajustarse o ser mas preciso en cuando a la medición de corriente. Muchas gracias

  • Tutorial sensor de corriente ACS712 (33)

    So* 29/12/2022 Responder

    Hola.
    Qué debo hacer cuando, yo solo estoy haciendo pruebas de manera analógica, conecto el sensor en serie con la carga y alimento el sensor respectivamente y entonces en el pin de salida del sensor conecto un multímetro y si no hay carga obtengo 2.45 v aprox. Ahora si cambio el valor de la carga, este valor no cambia.
    De ante mano gracias por tu ayuda.

  • Tutorial sensor de corriente ACS712 (34)

    Jo* 14/08/2022 Responder

    Si implementó 5 o más sensores, como sería la programación, para Arduino mega

  • Tutorial sensor de corriente ACS712 (35)

    Fe****** 24/05/2021 Responder

    Hola muy buen material, sin embargo tengo una duda como puedo usar el mismo sensor en la ESP8266, porque he probado el código usando en vez de 5 he puesto 3.3v/1024 y la mitad 1.65v, pero no me funciona, Sabe que podría ser?

    • Tutorial sensor de corriente ACS712 (36)

      ca*********** 07/04/2022 Responder

      hola mi amigo el ADC del ESP es de 1V y la salida del sensor es de 5V yo creo que ya dañaste tu ESP

  • Tutorial sensor de corriente ACS712 (37)

    Fe****** 09/09/2020 Responder

    ¿Qué sucede, si se produce un cortocircuito en el circuito monitorizado y la corriente sube de forma exagerada por encima de los Amperios para los que está dimensionado el circuito?
    Por ejemplo, en el caso de un motor que se trilla el cable de fase con el de tierra o neutro y se produce un sobreconsumo de muchos amperios hasta que saltan las protecciones, fusibles, guardamotor, limitadores de cuadro, etc.
    ¿Se puede dañar el sensor de efecto hall o también el chip, ACS712-20A/100A?
    Saludos y gracias por vuestra formación accesible de forma libre :))

  • Tutorial sensor de corriente ACS712 (38)

    Ca**** ********ne 14/06/2020 Responder

    Geniooo!!! Por fin alguien en la web que explica Bien y Calro como calibrar este módulo. Excelente información.
    Felicitaciones!!!!!

  • Tutorial sensor de corriente ACS712 (39)

    Jo** 05/06/2020 Responder

    Lo mas conveniente es usa un amplificador de señal análogo que permita ajustar mejor la señal, 185mv/Amp para 5 amperios son 0.925 voltios.. si el conversor del ardunio es de 1024 pasos a 5 voltios.. quiere decir que en 0.925 voltios solo hay 189 pasos.. es decir 5amp/189 escalones cada escala es de 0.026 amperios una resolución muy mala. ahora si se una un ADC tipo ADS1115 ( 65535 16 BITS) todo cambia serian 12124 escalones para 5 amperios es decir cada paso equivale a 0.0004 amperios. algo mucho mas decente. Yo usaria un modulo LM358

  • Tutorial sensor de corriente ACS712 (40)

    ce*** 09/04/2020 Responder

    disculpe amigo como puedo hacer un limitador de corriente para un celular

  • Tutorial sensor de corriente ACS712 (41)

    Ru* 04/12/2019 Responder

    Como podría usarlo con Raspberry pi 3?

  • Tutorial sensor de corriente ACS712 (42)

    Om** *ay 10/07/2019 Responder

    ¡hola!
    Estoy trabajando con este sensor y estoy tiniendo algunos problemas. Quiero minimizar el ruido pero de manera más robusta usando la mediana, pero no encuentro la manera de guardar los datos medidos en un mismo vector. Con la media era más sencillo ya que simplemente se sumaban. ¿Alguno puede auxiliarme?

    GRACIAS

  • Tutorial sensor de corriente ACS712 (43)

    Ja*** *****es 01/07/2019 Responder

    hola alguien podria mandar una foto de alguna prueba la conexion debe ser en serie o en paralelo ?

  • Tutorial sensor de corriente ACS712 (44)

    Da*** 03/06/2019 Responder

    Creo que para obtener el mínimo debería inicializar (float Imin=1024;) nó =0
    de otra forma no se detectan los valores

  • Tutorial sensor de corriente ACS712 (45)

    Ju** ***go 20/05/2019 Responder

    ¿Se puede utilizar en un motor trifasico de 440VAC?

  • Tutorial sensor de corriente ACS712 (46)

    fe**** 08/05/2019 Responder

    el ultimo codigo quedi calibrado en mi caso a 0.110 0.534 mi voltimetro0 .531 a 0.537 fluctuando entre esas cifras y con picos de 0.529 a 0.543 ocasional mente para ser de 20 ampr lo considero mi modulo considero muy buen resultado para ser enviado por cayenne via ethernet
    muchas gracias desde queretaro mexico

  • Tutorial sensor de corriente ACS712 (47)

    Ag**** **is 29/03/2019 Responder

    Quisiera saber como se obtuvo este filtro paso bajo, el cual hace mención "corriente=0.9*corriente+0.1*((voltajeSensor-2.527)/Sensibilidad);"???

  • Tutorial sensor de corriente ACS712 (48)

    JU** 26/02/2019 Responder

    el mejor tutorial que he encontrado excelente gracias y felicitaciones

  • Tutorial sensor de corriente ACS712 (49)

    Mi**** 05/01/2019 Responder

    Antes que nada felicitarte por este tutoríal muy completo y bien explicado. Mi pregunta es . Podría usar este sensor para medir la corriente consumida por un motor 220vac de un compresor ?

  • Tutorial sensor de corriente ACS712 (50)

    Di*** 04/06/2018 Responder

    Hola muy buen tutorial me gustaria saber como puedo agregar 3 leds indicadores con los cuales tenga como verde un estado natural de operacion (de 0A a 2A) y un amarillo cuando la corriente sea (>2A) y un rojo que nos muestre cuando es (>10A)

  • Tutorial sensor de corriente ACS712 (51)

    Fe****** 23/05/2018 Responder

    Amigo como es el proceso de calibración que mencionas, que se hace primero con DC y luego en AC..

  • Tutorial sensor de corriente ACS712 (52)

    Vi**** ***ez 21/05/2018 Responder

    Buenas tarde podria ayudarme poniendo el sensor el voltaje a referencia de 3.3V

  • Tutorial sensor de corriente ACS712 (53)

    Vi**** 30/04/2018 Responder

    Buenas amigo como estas,
    ¿Como podría hacer para qué el sensor me mande una alerta de cuando hay cambios de corriente debido a cortes de electricidad?

  • Tutorial sensor de corriente ACS712 (54)

    jo** *****do 05/04/2018 Responder

    Buenas tardes mi estimado una pregunta si quiero instalar elsensor de 30 amp. solo tengo que cambiar el valor de sensibilidad al programa solo eso o algo mas

  • Tutorial sensor de corriente ACS712 (55)

    Ca**** ****ia 02/03/2018 Responder

    Estimado leyendo tu articulo yo tengo este sensor ACS712-30 y estoy corriendo una prueba que durara 30 dias y necesito medir la corriente, tengo un shut en la medición de corriente y tengo oscilaciones debidas a la temperatura. La adquisición de la medición la estoy haciendo por medio de registrador de señales analógicas en mV de CD.
    La pregunta es posible realizar esta medición por medio del ACS712-30 .
    Gracias

  • Tutorial sensor de corriente ACS712 (56)

    Jo***** 21/02/2018 Responder

    Hola, soy de argentina y la alimentacion es 220v a 50hz y esto haciendo un medidor de consumo y mi problema es el siguiente cuando lo mido sin cargar osea no conecto nada a ip+ y ip- me da una lectura cercana a 1 (0,991 , 0,890, 1,02 etc)
    como soluciono eso ??'

  • Tutorial sensor de corriente ACS712 (57)

    DA*** ***AS 14/02/2018 Responder

    Disculpa, a que te refieres en el Amperimetro con
    if(corriente>Imax)Imax=corriente;
    if(corriente

    Como saber cuando es Imax o Imin,
    Gracias.

  • Tutorial sensor de corriente ACS712 (58)

    Al**** 30/01/2018 Responder

    Excelente tutorial!

  • Tutorial sensor de corriente ACS712 (59)

    lo* 11/01/2018 Responder

    tu explicacion no sirve ni para limpiarse el culo, es como explicarle a un mono como se folla a un elefante. tonta besos <3

  • Tutorial sensor de corriente ACS712 (60)

    Os*** 31/12/2017 Responder

    Cpn este sensor puedo medir corriente en dc de tension entre 60 y 600 voltios?

  • Tutorial sensor de corriente ACS712 (61)

    JO** 29/11/2017 Responder

    Disuculpa, tendras la libreria del sensor para poder hacer la simulacion con un microcontrolador en PROTEUS?

  • Tutorial sensor de corriente ACS712 (62)

    Jo*** ******es 10/11/2017 Responder

    porque se multiplica *5/1023 el valor de la entrada analogica A0 ?
    Lo correcto no sería 5/1024 ?
    Muy buen proyecto

  • Tutorial sensor de corriente ACS712 (63)

    re**** 18/10/2017 Responder

    hola quiero hacer un proyecto, consiste en como saber si las luces de mi casa estan encendidas o si estan malogradas las bombillas, pero todo esto via wifi, osea yo encontrandome en un lugar lejos de casa como por decir controlar esto desde mi centro de trabajo. como seria la coneccion'

  • Tutorial sensor de corriente ACS712 (64)

    An**** 07/09/2017 Responder

    Quisiera saber como se obtuvo este filtro paso bajo, el cual hace mención "corriente=0.9*corriente+0.1*((voltajeSensor-2.527)/Sensibilidad);"???

  • Tutorial sensor de corriente ACS712 (65)

    el** 07/08/2017 Responder

    hola muy buenas, quiero medir la coriente a un panel solar sin carga con este sensor, el panel genera su propio voltaje como haria en este caso para medirlo con este sensor.

    • Tutorial sensor de corriente ACS712 (66)

      Na***** 29/08/2017 Responder

      Hola Elio, sin carga la corriente del panel siempre va a ser 0mA, Si lo que deseas es medir su voltaje usa un simple divisor de voltaje con dos resistencias para estar a un rango de 5V y conéctalo a un pin analógico de tu arduino.

  • Tutorial sensor de corriente ACS712 (67)

    Wi* 27/07/2017 Responder

    hola buenas noches tengo un sensor ACS712 y necesito mirar la corriente que genera un panel solar de 5V. ¿ como hago para conectar el panel solar ?

    • Tutorial sensor de corriente ACS712 (68)

      Na***** 29/08/2017 Responder

      Hola Wil, la corriente del panel va a depender de la carga que tengas conectada al panel, lo que va a variar en el panel va a ser la corriente máxima. Salvo quieras medir la corriente en Corto puedes conectar ambas líneas del sensor al panel, sino tienes que conectar en serie con una carga, si quieres medir la corriente máxima tiene que ser una carga grande.

  • Tutorial sensor de corriente ACS712 (69)

    Ge**** 21/07/2017 Responder

    Conectar el sensor para medir es a un brazo de la línea de 220 vac

  • Tutorial sensor de corriente ACS712 (70)

    Gi**** 14/06/2017 Responder

    Amigo, estoy midiendo corriente con el sensor ACS712 de 5A, pero antes de conectar una carga en sensor ya me mide una corriente de 0.12, cual seria el inconveniente o que estoy haciendo mal. Agradezco mucho por su ayuda.

    • Tutorial sensor de corriente ACS712 (71)

      Na***** 23/06/2017 Responder

      Hola Gilber, si es por ruido con el ejemplo 2 debe de disminuir o desaparecer los 0.12, sino tienes que calibrar tu sensor usando el ejemplo 3.

  • Tutorial sensor de corriente ACS712 (72)

    Fa**** 06/06/2017 Responder

    Hola amigo, te felicito por el tutorial, excelente pagina!

    Sabes estaba guiandome de tu ejemplo numero 4 y quería saber si utilizaste una diferente sensibilidad, ya que veo que tienes 0.139... Y en la tabla que definiste al principio no corresponde esa sensibilidad a ninguno de los 3 sensores hechos.

    Quizas me estoy perdiendo de algo que no se, tienes alguna razon para utilizar esa sensibilidad?

    Yo trato de realizarlo con lecturas del ACS712 de 30 Amps para leer corriente en A.

    Muchas gracias

    • Tutorial sensor de corriente ACS712 (73)

      Na***** 23/06/2017 Responder

      Hola Fabián en el Ejemplo 3 calculamos el valor de la sensibilidad de 0.139.

  • Tutorial sensor de corriente ACS712 (74)

    Ju** F 23/05/2017 Responder

    hola, primero felicitarlos por el excelente tutorial, pero he tenido unos problemas con la calibración del sensor, sin carga a veces me da 2.5V otras veces 2.7V .. etc quisiera que me ayuden con ese problema por favor

    • Tutorial sensor de corriente ACS712 (75)

      Na***** 30/05/2017 Responder

      Hola Juan, Lo más probable es que se trate ruido, aumenta las muestras unas 10 veces más, si disminuye la variación entonces es ruido. Agrega un condensador a tu fuente y de igual manera en el Vcc y GND del módulo.

  • Tutorial sensor de corriente ACS712 (76)

    Jh******* ** ** *oz 10/05/2017 Responder

    Muy buenas, he hecho lo que el tutorial recomienda realizar, necesito medir unas cargas en AC, tengo un sensor de 20A pero sólo requiero medir cargas de 1A para abajo, pero no puedo utilizar el sensor de 5A porque las cargas que pasan por el cable son de hasta 15 amperios por lo que podría dañar el sensor. He hecho la respectiva calibración pero el valor del cálculo me dió bastante cerca al ya establecido 0.104 para ser exactos y ps aún así cuando mido cargas en AC me mide un consumo de 600 miliamperios aproximadamente y en realidad está consumiendo 800 miliamperios, entonces el error es bastante grande. Hay otra posibilidad para arreglar esto?.

    Muchas gracias.

    • Tutorial sensor de corriente ACS712 (77)

      Na***** 30/05/2017 Responder

      Hola Jhonathan, en el caso de AC, nuestro método es válido si la carga es resistiva, o que la corriente mantenga su forma sinusoidal, para que la fórmula del Irms sea válido. También nosotros calculamos el Ipico midiendo la corriente mayor, pero si hay algún ruido o pico de corriente tendremos lecturas incorrectas, sobre todo si estamos midiendo corrientes pequeñas. Lo mejor es integrar y calcular el Irms. Similar a como lo hacemos en nuestro Tutorial sensor de corriente AC no invasivo SCT-013

  • Tutorial sensor de corriente ACS712 (78)

    Ma***** 20/04/2017 Responder

    Buenas tardes, he realizado el experimento de medir el voltaje de la salida del sensor con tu código para calibrarlo, mi problema es que en una corriente de 0A, el multímetro me arroja 2.48V (lo cual es teóricamente correcto, ya que el voltaje de entrada es exactamente 4.96V), sin embargo, en el monitor serial me arroja 2.58V. Pensé que quizá era un problema con el código, pero al medir el voltaje de entrada, el monitor serial me arroja exactamente los 4.96V, después intenté medir un voltaje de 3.33V, y el monitor arroja 3.56V. Cambié de pin y seguía igual.

    • Tutorial sensor de corriente ACS712 (79)

      Na***** 30/04/2017 Responder

      Hola Marisol, en el ejemplo tomamos 1000 muestras y sacamos el promedio, si durante la toma de las muestras desconectas el sensor o conectas el multímetro podría afectar la lectura, Puedes también probar el ejemplo del arduino en Archivo>Ejemplos>Basics>ReadAnalogVoltage, si allí las lecturas también son incorrectas, podría ser que los 5V de tu arduino no sean estables.

  • Tutorial sensor de corriente ACS712 (80)

    lu** 15/03/2017 Responder

    buenas noches como puedo comprar en colombia este producto ACS712T

  • Tutorial sensor de corriente ACS712 (81)

    Wi*** 20/02/2017 Responder

    Hola Naylamp!.
    Gracias por tu respuesta ya pude solucionar los problemas que tenia con los dos censores.
    Ahora tengo otra consulta Tengo Conectados a un Arduino UNO. (un lector RFID, un RELE, un sensor de paso de corriente, y un modulo LAN, la coneccion física no es problema, mi consulta esta mas dirigida a la parte lógica de programación en saber si es viable)
    lo que deberia hacer mi codigo es reconocer la tarjeta RFID y comprobar si esta dades de alta en la base de datos de usuarios de ser asi pasar de OFF a ON al RELE, y asi iniciar el paso de corriente por el sensor y esta medicion enviarla a la base de datos de consumo mientras que se muestra mediante grafias en el sistema en Visual Basic.

    • Tutorial sensor de corriente ACS712 (82)

      Na***** 23/03/2017 Responder

      Hola Wirtz, la aplicación que plateas es totalmente viable, primero prueba la comunicación arduino y base de datos, y también por separado el RFID, después de tener funcionando ambas partes será más fácil integrarlas.

      • Tutorial sensor de corriente ACS712 (83)

        Al** ***** *****ka 29/03/2017 Responder

        Hola Naylamp sisi eso que me dices lo hice y todo funciona bien por separado el asunto que me esta costando hoorroores es la combinacion de el codigo para todos los modulos juntos.te recuerdo la secuencia:
        1°Modulo lan debe estar enlazado siempre, 2° paso mi tarjeta rfid y esta info debe viajar hasta una base de datos en SQL ara verificar su validez tanto del codigo de la rfd como de la IP, de estar validadas para ese modulo, regresa una orden que, 3° activa el RELE de Of a On. 4° esto inicia el paso de energia y el sensor de paso de corriente comienxa a leer y enviar esa lectura a la Base de datos de SQL para su lectura por el sistema en Visual Basic 2015

  • Tutorial sensor de corriente ACS712 (84)

    wi*** 11/02/2017 Responder

    hola necesito a modo de controlador, poder medir la generación de energía en voltios de un panel solar con el sensor ACS712-30A esta se puede hacer?? como seria le suplico que desburren Gracias

    • Tutorial sensor de corriente ACS712 (85)

      Na***** 17/02/2017 Responder

      Wirtz, para medir el voltaje es mejor usar un sensor de voltaje, que puede ser desde un simple divisor de voltaje o con un CI Amplificador Operacional. Con el sensor ACS712 solo puedes medir la corriente, que va a depender de la carga que tengas conectado al panel.

  • Tutorial sensor de corriente ACS712 (86)

    Ma*** 10/02/2017 Responder

    Muy buena explicación, solamente tengo un par de preguntas, en tu código haces la siguiente división:

    voltajeSensor = analogRead(A0) * (5.0 / 1023.0);

    En el denominador no debería ir 1024.0 en vez de 1023.0 porque son 1024 valores del ADC (del 0 al 1023)?

    Y la otra pregunta, para un foco de 12 V a 50 mA al cuál quiero medir la corriente, en qué interfiere que mi fuente de poder sea de 12 V DC a 1.1 A ?

    Muchas gracias!

    • Tutorial sensor de corriente ACS712 (87)

      Na***** 17/02/2017 Responder

      Hola Marco, En el denominador debe ir (2^n -1) hazte la idea que el adc fuese de 1 bit (0 y 1) en el denominador la relación debería ser adc*5/1 para tener 0V y 5V correspondientes a 0 y 1.
      Con respecto a tu Fuente no habría ningún problema, pues los 1.1A es la corriente máxima que puede suministrar.

  • Tutorial sensor de corriente ACS712 (88)

    Wi*** 07/02/2017 Responder

    hola muy bueno los ejemplos me ayudaron muchisimo pero sigo con algunos problemas estoy trabajando con el sensor que tienes de ejemplo en la publicacion de 30A y tengo en la misma placa arduino conectado 2 sensores uno para medir amperaje en paneles solares y otro para medir amperaje de bateria. He aqui mi problema necesito leer los dos al mismo tiempo, y ahi se genera los erroes en el codigo del ejemplo 4, y la otra consulta es si tengo que poner alguna resistencia previa al sensor o puedo poner el cable del panel directo al sensor.

    • Tutorial sensor de corriente ACS712 (89)

      Na***** 17/02/2017 Responder

      Hola Wirtz, si puedes usar dos sensores en el mismo arduino, conecta el segundo sensor al pin A1 y crear nuevas variables para el segundo sensor, de igual forma con las funciones. Dúplica el código pero con nuevas variables. Ten en cuenta que para medir corriente se conectan en serie, si conectas en paralelo vas a malograr el sensor.

      • Tutorial sensor de corriente ACS712 (90)

        Wi*** 20/02/2017 Responder

        Gracias!!! te tengo una nueva consulta,
        tengo conectado a un arduino UNO, un lector RFID, un RELE, un Sensor de paso de corriente, y un modulo LAN para que se comunique con un servidor en el edificio que controlaría la base de datos de logueo del RFID y recibiría los datos de consumo de corriente, esto es viable? la coneccion se que si porque ya lo hice y todos responen, pero mi duda esta mas orientada a la logica de programacion. Si tienes algun consejo te lo agradeceria.

  • Tutorial sensor de corriente ACS712 (91)

    Ri***** 28/01/2017 Responder

    Les comento. Pueden medir mas de lo que da el sensor. Si tenes que medir 60A podes sacar un cable (bypass paralelo) de menor diametro (supone 1/5 del que esta puesto) asi tendrias 5 original +1 del sensor y pasaria 60A/6 = 10A que si puede medir el sensor. Ademas si falla la parte electronica por algun motivo o la tenes que sacar, el equipo sigue funcionando por el cable original. Despues en la programacion calibras el resultado porque acuerdense que miden una fraccion de la corriente. Slds.

  • Tutorial sensor de corriente ACS712 (92)

    Fr******* *****ll 24/01/2017 Responder

    Hola, tengo un modulo de ASC714 con sensibilidad de 66 mv/A,
    se puede usar el mismo procedimiento para este modulo que con el ASC712.

    Gracias

    • Tutorial sensor de corriente ACS712 (93)

      Na***** 03/02/2017 Responder

      Hola francisco, solo cambia las variables correspondientes a tu sensor, que en tu caso sería la sensibilidad de 66mV/A

  • Tutorial sensor de corriente ACS712 (94)

    Fe* 16/01/2017 Responder

    Hola , muy bueno el tutorial , gracias or compartirlo . Tengo una lampara led con un driver CC , se le puede ajustar la potencia entre 0.5 / 2a y 220v , me gustaria saber si podria implementar este sensor para , a traves del potenciometro (que ya lleva) saber el consumo de la lampara por el puerto serie o un display .

  • Tutorial sensor de corriente ACS712 (95)

    Jh***** 12/01/2017 Responder

    Hola una pregunta cual seria el rango de salida del sensor de 30A, cuando esta censando corriente alterna por que La grafica de Output Voltage versus Sensed Current que proporciona el data sheet dice que el rango es de 2.5v a 4.5v cuando esta censando de 0a 30A pero es para DC y quiero trabajar en corriente alterna pero no tengo información.

    • Tutorial sensor de corriente ACS712 (96)

      Na***** 03/02/2017 Responder

      Hola Jhorman, para 0A el voltaje de salida es de 2.5V, una corriente positiva o negativa hará que el voltaje aumente o disminuya respectivamente en proporción a la sensibilidad, llegando a un voltaje cercano a 5V para los 30A o cercano a 0V para corrientes -30A

  • Tutorial sensor de corriente ACS712 (97)

    An****** 24/12/2016 Responder

    La imprecisión en CA también puede deberse a la variabilidad del voltaje de la línea. Aquí llegan 210-220 V de 230 V que tendría que llegar. También depende de la instalación de casa, así que en diferentes puntos también varía.

  • Tutorial sensor de corriente ACS712 (98)

    Gu******* 22/12/2016 Responder

    Hola, hay posibilidad de hacer funcionar un relay a partir del resultado de la medicion de voltaje?
    por ejemplo, si el voltaje es menor a 4 volts que se active el relay.
    gracias!

  • Tutorial sensor de corriente ACS712 (99)

    Ri***** 05/12/2016 Responder

    Hola, muy buen aporte, pero mi inquietud esos cálculos realizados es solo para medir la potencia de 1 foco, me ayudaría cual seria el proceso para medir 4 focos o bombillos

    • Tutorial sensor de corriente ACS712 (100)

      Na***** 14/12/2016 Responder

      Hola Ricardo, EL procedimiento que mostramos es para medir potencia, independiente a lo que tengas conectado, sea un foco, 4 focos o cualquier carga, Si quieres medir de forma impendiéndote diferentes cargas tendrías que usar varios sensores y básicamente repetir el código del programa para los otros.

  • Tutorial sensor de corriente ACS712 (101)

    Jo**** **az 17/11/2016 Responder

    Hola, esta muy bueno el tutorial! muchas gracias! ... Mi consulta es, como puedo medir la frecuencia en una red AC ? Gracias!

    • Tutorial sensor de corriente ACS712 (102)

      Na***** 01/12/2016 Responder

      Hola Johnny, para medir la frecuencia tienes que convertir la señal sinusoidal en una cuadrada y luego medir el tiempo entre flancos, es mejor usar otro tipo de sensor para esto, pues la amplitud en un sensor de corriente es variable.

  • Tutorial sensor de corriente ACS712 (103)

    Ja*** 14/11/2016 Responder

    Hola, consulta, puedo hacer mediciones en circuitos con cargas conectadas a C/A de 240v?

    • Tutorial sensor de corriente ACS712 (104)

      Na***** 16/11/2016 Responder

      Hola Jaime, si es posible, en el ejemplo 4 trabajamos con 220AC.

  • Tutorial sensor de corriente ACS712 (105)

    Ki* 11/11/2016 Responder

    Hola! Super tus explicaciones!
    Tengo un sensor de voltaje? Como programo para que solo me de cuanto voltaje genera?

    • Tutorial sensor de corriente ACS712 (106)

      Na***** 16/11/2016 Responder

      Hola Kim, te refieres a un sensor de corriente? Qué modelo de sensor tienes?

  • Tutorial sensor de corriente ACS712 (107)

    Ja*** 06/11/2016 Responder

    Hola, consulta, cual es el maximo voltaje que puedo medir con este sensor?

    • Tutorial sensor de corriente ACS712 (108)

      Na***** 16/11/2016 Responder

      Hola Jaime, según el datasheet tiene un aislamiento de 2.1KV (rms), Nosotros lo hemos probado con cargas de 220v y 110v y trabaja normal, pero siempre teniendo en cuenta de no exceder la corriente máxima.

      • Tutorial sensor de corriente ACS712 (109)

        Ju** ***** R. 20/05/2019 Responder

        ¿Entonces lo puedo utilizar en un motor trifasico de 440VAC?

  • Tutorial sensor de corriente ACS712 (110)

    fe****** 26/10/2016 Responder

    Hola, Excelente tutorial. Me podrías ayudar por favor explicandome que interpretación tienen estas lineas:
    1. float I=get_corriente(200);
    2. float get_corriente(int n_muestras);
    3. return(corriente);

    Saludos

    • Tutorial sensor de corriente ACS712 (111)

      ma*** 07/02/2018 Responder

      comment on peut determiner la vitesse de rotation d un moteur a l Aide d un genitachy et un capteur ACS712 ET une carte arduino !

    • Tutorial sensor de corriente ACS712 (112)

      Na***** 06/11/2016 Responder

      Hola Joel, el valor de 1023 es el que corresponde a una lectura analógica para un voltaje de 5V, la función analogRead() devuelve un valor entre 0 y 1023 (correspondientes a 0V y 5V). En el ejmplo de Read Analog Voltage de la página de arduino puedes encontrar una mejor explicación.

    • Tutorial sensor de corriente ACS712 (113)

      Jo** 05/11/2016 Responder

      Hola, el tutorial es muy bueno, pero tengo un inconveniente, al probar el sensor con corriente cero, me da valores de 3 , me podría explicar esta linea de código: "float voltajeSensor= analogRead(A0)*(5.0 / 1023.0); //lectura del sensor ", especialmente me interesa saber como obtuvo el 1023, gracias.

    • Tutorial sensor de corriente ACS712 (114)

      Na***** 28/10/2016 Responder

      Estimado Fernando, en I=get_corriente(200); llamamos a la función get_corriente la cual nos entrega el promedio de 200 muestras. La línea float get_corriente(int n_muestras) {…} se usa para implementar la función. Y return(corriente); se usa para indicar el valor del resultado de la función.

Dejar un comentario

Deja su comentario

Tutorial sensor de corriente ACS712 (2024)

FAQs

How do you calibrate the sensor ACS712? ›

To calibrate, first set the output offset to the desired level (with zero current on the sense lines, read output with a DVM). Then with a known current input (a 100mA limited supply works well for this), set the output deflection with the gain pot. Sensitivity is then calculated as (Vref - Vdeflect)/(current input).

What is the sensitivity of ACS712 current sensor? ›

ACS712 20A Current Sensor IC (ACS712ELCTR-20A-T)

1.2 mΩ internal conductor resistance. 2.1 kV RMS minimum isolation voltage from pins 1-4 to pins 5-8. 5.0 V, single-supply operation. 66 to 185 mV/A output sensitivity.

What is the output of ACS712 current sensor? ›

The output of the ACS712 is analog Vout can be measured using any ADC. At no load the output of the current sensor is 2.5 volts and as the current increases and depending on the direction of the measured current the output voltage Increases or Decreases. At no load the output voltage will be 2.5 volts.

How do you calculate the current sensor? ›

When you connect a low ohm resistor in parallel with a circuit, the current flows through the shunt resistor -R- and generates a voltage drop. We can measure this drop and apply Ohm's law to calculate the current. So if we know the voltage (drop) and resistance, we can calculate the current using I = V/R.

What is the maximum voltage for ACS712 current sensor? ›

The ACS712 is a 5V device, and must be connected to the VU pin on the MBED. The 5 amp version of the ACS712 has an output range of 1.5-3.4 volts. The MBED analog input has a range of 0-3.3V, therefore, the ACS712 should be used with a voltage divider in order to achieve the full range of values.

What happens if A sensor is not calibrated? ›

This can cause the sensor to misalign or not function correctly. ADAS calibration is necessary to ensure the sensor is in the right position and to get the best accuracy possible. ADAS is a highly complex system. Its components tie into a central computer system to provide a variety of functions.

How do you calibrate A sensor? ›

Prepare the zero oxygen solution: Ensure that the solution is prepared correctly and that it is at the appropriate temperature. Calibrate the zero point: Immerse the DO meter sensor into the zero oxygen solution. Allow the meter to stabilize and adjust according to the solution's temperature.

What is sensor calibration error? ›

Calibration error is the difference between the actual value of a physical quantity and the value measured by a sensor. It can result from various factors, such as sensor drift, nonlinearity, hysteresis, noise, interference, or environmental conditions.

Can ACS712 measure voltage? ›

The ACS712 cannot detect voltage, just current. And the quiescent output voltage is Vcc/2, which will be modulated by the pattern of the current, like with +/- x mV, 50Hz. With a few mA on a 30A range sensor, you will always read Vcc/2 and some noise.

What is low current sensor breakout ACS712? ›

SparkFun Low Current Sensor Breakout - ACS712

The ACS712 sensor uses a Hall effect sensor to output a voltage relative to the current flowing through the IP+ and IP- pins. The advantage of using a Hall effect sensor is that the circuit being sensed and the circuit reading the sensor are electrically isolated.

What is the current measurement of ACS712? ›

ACS712 is a Hall Effect-Based Linear Current Sensor it can measure both DC(Direct Current) and AC(Alternating Current). The sensor chip is made by Allegro www.allegromicro.com. Pin out and Pin description of the chip is below. Connect the sensor in series to the system whose current you want to measure.

Is ACS712 analog or digital? ›

The ACS712 outputs an analog signal, VOUT . that varies linearly with the uni- or bi-directional AC or DC primary sampled current, IP , within the range specified.

What are the different versions of ACS712? ›

Part Number Specifications and Availability
SamplesPart NumberPackage
Buy NowACS712ELCTR-05B-T8-Pin SOIC
Buy NowACS712ELCTR-20A-T8-Pin SOIC
Buy NowACS712ELCTR-30A-T8-Pin SOIC

How do you use AC current sensor? ›

Just zip-tie the sensor to a power cord, and safely read the current proportional to the DC output. The sensor only has three connections 3.3 or 5 volts, GND and the linear voltage output that goes directly into a microcontroller ADC (analog pin).

What is the current sensor in Arduino ACS712? ›

ACS712 is a Hall Effect-Based Linear Current Sensor it can measure both DC(Direct Current) and AC(Alternating Current). The sensor chip is made by Allegro www.allegromicro.com. Pin out and Pin description of the chip is below. Connect the sensor in series to the system whose current you want to measure.

How does A current sensor work? ›

What is a Current Sensor? A current sensor detects and measures the electric current passing through a conductor. It turns the current into a quantifiable output, such as a voltage, current, or digital signal, which may be utilised in a variety of applications for monitoring, control, or protection.

How does A current transformer sensor work? ›

Almost all Current Sensors work by threading a current carrying wire through a relatively large hole, or aperture, in the center of the device. The Current Sensor reads the current then converts the data into a usable form for the device that is receiving the data.

Top Articles
Latest Posts
Article information

Author: Moshe Kshlerin

Last Updated:

Views: 6067

Rating: 4.7 / 5 (57 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Moshe Kshlerin

Birthday: 1994-01-25

Address: Suite 609 315 Lupita Unions, Ronnieburgh, MI 62697

Phone: +2424755286529

Job: District Education Designer

Hobby: Yoga, Gunsmithing, Singing, 3D printing, Nordic skating, Soapmaking, Juggling

Introduction: My name is Moshe Kshlerin, I am a gleaming, attractive, outstanding, pleasant, delightful, outstanding, famous person who loves writing and wants to share my knowledge and understanding with you.