ACS712 Module Measures Currents up to 30A for as Low as $1 Shipped

Usually, if I buy a high power electric appliance, I like to double check it power consumption either with a Kill-a-watt when possible, and when not, e.g. cable directly hooked to the device or current intensity is too high, I use a digital electric clamp meter. Both methods are quite convenient as you don’t need to cut any wire to measure the current and determine the power consumption, but they don’t allow for data gathering since they don’t connect to the network. Earlier this week, I’ve come across a projects using ESP8266 for a mains energy monitor for a solar panel setup, and measuring mains current, electric meter, and gas meter. They use a photosensor to measure power consumption on their electric meter, which works, but may be problematic if the meter is on the street, and iSnail current sensor, using hall effect just like clamp meter, but instead of showing the current on a display the sensor output 0 to 5V, meaning you can connect it to a micro-controller to handle the data however your like. That’s nice, but while a clamp meter costs about $10, the 25A version of iSnail goes for $40, so I looked for alternatives. I wanted to find an always-on connected hall effect current sensor that either harvest energy or works of a fews with a battery, but did not find any, an instead discovered cheap current sensor modules based on Allegro Systems ACS712 supporting either 5A, 20A or 30A , working easily with analog inputs of Arduino boards, and selling for as low as $1 shipped on eBay for the 5A, while the 20A & 30A versions usually sell for less than $2.

ACS712The hardware specifications are pretty basic:

  • ACS712 Hall-Effect-Based Linear Current Sensor IC (Datasheet)
  • 2-pole terminal for DC or AC load
  • 3-pin header with VCC (5V), GND and OUT pins
  • Input Current and Sensitivity (measurement scale)
    • -/+ 5A – 185 mV/A
    • -/+ 20A – 100 mV/A
    • -/+ 30 A – 66 mv/A
  • Dimensions – 31 x 13mm

Since the IC can measure in both direction, OUT pin outputs VCC/2 (2.5v) when there’s no current, and other values which may be lower and greater than VCC/2 depending on current direction to report the actual current.

ASC712_ArduinoMeasuring DC current is very easily as you just need to take one measurement, subtract VCC/2, and divide this by the sensitivity. Alternative current is only a little more complicated as you have to take many measurement to find the RMS value as explained on Henry’s bench website. If you are playing with high voltage (110V/220V) be very careful, and using non-invasive current sensor might be a better idea, especially if you are a beginner.

Since the board had been available for a few years, there’s plenty of documentation on the web for Arduino. One person (Julian) did a pretty good video showing how it works.

ACS712 current sensor can also be interfaced with ESP8266, but since the wireless chip’s analog input only takes 0 to 1V, ACS712 output must be reduced leading to a lower accuracy, unless used via an external ADC chip. ESP32 won’t have this problem however as the analog input supports up to 0 to 4V range, although I understand ESP32 may has some built-in functions for energy monitoring.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
7 Comments
oldest
newest
jn
jn
8 years ago

hmm I will definitely not let my main AWG7 AC power line go through this :). there are better & safer – non invasive – options for measuring higher AC currents – measuring transformers: popular SCT-013-xxx family or others “google: Precision Current Transformer Coil”

Mitek
8 years ago

Intersting to see 30A through 2 SOIC pin. I think good fire.

deets
deets
8 years ago

@Mitek
If you like that check out the 60a qfn version

Squa0L
Squa0L
8 years ago

What makes you think the chip on the Chinese board are authentic and not a copycat? Accuracy aside, I’d be concerned about the isolation failing.

gicho
gicho
8 years ago

The chip might be fine, but look at the PCB traces of the board! No way this could pass any certification. In fact, it is quite dangerous, definately Arduino beginners should stay away from it.
Please put a note in the article that there are high voltage circuits involved and it is not recommended for DIY.

Boardcon Rockchip and Allwinner SoM and SBC products