Sensor de corrente 30A ACS712

Informações sobre o sensor de corrente 30A ACS712

Especificações

  • Alimentação de 5V
  • Led alimentação on board
  • Leituras bidirecionais até 30 Amperes
  • Saida analógica com sensitividade de 66 mV/A

Ligações

Sensor – Arduino

  • Gnd – GND
  • Oot – A0
  • Vcc – 5V

Exemplo de ligações do sensor de corrente ACS712

 

Exemplo de programa para o sensor de corrente ACS712

/*
Measuring AC Current Using ACS712
*/
const int sensorIn = A0;
int mVperAmp = 185; // use 100 for 20A Module and 66 for 30A Module


double Voltage = 0;
double VRMS = 0;
double AmpsRMS = 0;

void setup(){ 
Serial.begin(9600);
}

void loop(){


Voltage = getVPP();
VRMS = (Voltage/2.0) *0.707; 
AmpsRMS = (VRMS * 1000)/mVperAmp;
Serial.print(AmpsRMS);
Serial.println(" Amps RMS");

}

float getVPP()
{
float result;

int readValue; //value read from the sensor
int maxValue = 0; // store max value here
int minValue = 1024; // store min value here

uint32_t start_time = millis();
while((millis()-start_time) < 1000) //sample for 1 Sec
{
readValue = analogRead(sensorIn);
// see if you have a new maxValue
if (readValue > maxValue) 
{
/*record the maximum sensor value*/
maxValue = readValue;
}
if (readValue < minValue) 
{
/*record the maximum sensor value*/
minValue = readValue;
}
}

// Subtract min from max
result = ((maxValue - minValue) * 5.0)/1024.0;

return result;
}

 

Datashet e fornecedor

ACS712-datasheet

https://www.botnroll.com/pt/corrente-/2826-sensor-de-corrente-30a-acs712.html