Objetivo:
Medir la corriente dc y mostrarla en una lcd, usando un sensor ACS712 y un Arduino Uno
Material:
ACS712
Arduino uno
Desarrollo:
Diagrama de conexión:

Codigo:
#include <LiquidCrystal.h>
/*
Measuring Current Using ACS712
*/
LiquidCrystal lcd(7, 8, 9, 10, 11 , 12);
// pin 4 de la LCD (RS)---> pin 7 del arduino (salida digital, PWM)
// pin 5 de la LCD (RW) --> GND de la breadboard (fila -)
// pin 6 de la LCD (E)--> pin 8 de la placa Arduino UNO (PWM)
// pin 11 de la LCD (D4)--> pin 9 de la placa Arduino UNO (PWM)
// pin 12 de la LCD (D5)--> pin 10 de la placa Arduino UNO (PWM)
// pin 13 de la LCD (D6)--> pin 11 de la placa Arduino UNO (PWM)
// pin 14 de la LCD (D7)--> pin 12 de la placa Arduino UNO (PWM)
int m = 185; // pendiente use 100 for 20A Module and 66 for 30A Module mV/A
int LD= 0; /// lectura digital
int b = 2500; // ordenada al origen en mV es cuando I=0
double voltaje = 0;
double corriente = 0;
void setup(){
lcd.begin(16, 2);
Serial.begin(9600);
}
void loop(){
LD = analogRead(A0); // lectura digital
voltaje = (LD / 1023.0) * 5000.0; // voltaje en mV
corriente = ((voltaje - b) / m);
lcd.setCursor(0,0);
lcd.print(voltaje);
lcd.setCursor(0,1);
lcd.write(corriente);
serial.print(voltaje);
serial.println();
serial.print(corriente);
delay(2500);
}



