Actual Resolution of ACS712: How small can we measure


The ACS712 is very popular ic used to measure alternating current (ac). It comes in three variants which can measure ±5, ±20 and ±30 peak to peak current. Following specifications are important for calculation of minimum current that can be measured by ACS712.

 Part Number Optimized Range, Ip (A) Sensitivity (Typ) (mV/A)
 ACS712ELCTR-05B-T ±5 185
 ACS712ELCTR-20A-T  ±20 100
 ACS712ELCTR-30A-T  ±30 66

Here, consider ADC resolution of an Arduino 10-bit, which is 1024 in decimal.
Mostly, ADC reference voltage for Arduino is set to 5V.

So, minimum voltage can be measured by Arduino is,

5/1024 = 4.88mV

Therefore, actual minimum current can be measured by Arduino (considering ACS712ELCTR-20A-T) is,

(4.88) / (100) = 0.0488 A peak-peak = 48.8 mA peak-peak

The RMS value of minimum current can be measured by Arduino (considering ACS712ELCTR-20A-T) is,

(48.8 mA peak-peak) / (√2) = 34.5 mA

Results: 

Table: minimum peak-peak current can be measured using ACS712 for different ADC resolutions.

 Sensitivity
(mV/A)
 For
12-bit ADC
(mA)
For
10-bit ADC

(mA) 
For
8-bit ADC

(mA) 
1856.626.4105.6 
10012.248.8 195.3 
6618.573.9295.9

The maximum RMS value for optimized range can be calculated from following equation:

RMS = optimized peak value / √2

Comments

Popular posts from this blog

Serial Monitor - great tool for developers

C library for true RMS using sliding window technique