## ACS712 Current Sensor - Problem with simulation

6 posts / 0 new
Author
Message

Hello,

I'm currently developing my graduation thesis of a project for a power monitoring system and i chose to use the Allegro ACS712-30A for the AC current measurement. I'm using Proteus 8.6 to simulate the circuit.

I'm using an optocoupler to get the "zero-crossing" and measure the sensor output voltage at its peak. This is working fine. If I connect a 5V 60Hz alternator to the ADC Port, it gets me 1024 bits, as it should. So the problem is not about programming.

So here is the issue:

When I put a 220V 60Hz with a 7.33333 ohms resistance, it gives me a 30 amps current (according to previous ohm's law calculations and Proteus measurement).

Connecting that load to the 1/2 and 3/4 inputs of the ACS712, the IC outputs only 4.9V. It should output 5.0V

I would appreciate if someone could help.

ACS712 Datasheet: http://www.allegromicro.com/~/me...

Circuit:

Output measured with Osciloscope

- Arthur Perez
- Control and Automation Engineering Student
- Home 360 (Home Theater and Smart Home Dealer)

Last Edited: Sun. Oct 1, 2017 - 10:13 PM

The datasheet says the output is 66mV/A. That doesn't equate to 5V. Besides, being an analog device, the outputs rarely will go to rail. Accept you are not going to get your full range of the ADC. There's also noise to consider and these devices are noisy. do the math.

Even if your 5V figure were correct, 4.9V is then only 2% low.

Are both your 220V and 7.33333 ohms really significantly better than 2% ... ?

Thanks for the help. I read the datasheet and tried to use the 66mV/A, but it was not working.

I just realized that the ac ammeter shows the RMS current and not the peak. So I have to change the resistance to 10.37Ohms to get a 30A peak current and a 21.21A rms current.

Now the circuit is giving me exactly 1.98V, which is "30A (peak) x 66mV/A"

- Arthur Perez
- Control and Automation Engineering Student
- Home 360 (Home Theater and Smart Home Dealer)