# current sensor for small currents?

I'm using an ACS712 +-5A to measure DC current, but my current never goes above 1A. This causes lost resolution in the sensor, since it never measures above 1A.

What are some options for me to measure low values of current at a higher resolution (~1 mA)? 1A or 2A version of the ACS712 would have been ideal, but unfortunately they don't exist. It should be isolated.

• Does it need to be isolated? Are you measuring AC or DC current? What accuracy/precision do you need? – Oli Glaser Nov 3 '12 at 2:41

Update: Subsequent to posting this answer, I switched to a Melexis MLX91206 linear Hall effect current sensor, with the current to be measured being passed through a coil with the sensor at its core. This permitted measuring currents down to 100 mA, with isolation. See this answer for more details.

One of my projects required high side current sensing of up to 500 mA full-scale at a voltage of 24 volts unregulated. We could not find any integrated device with isolated current sensing like the Allegro ACS parts for that current range.

A non-isolated solution using Analog Devices AD8217 Current Shunt Monitor ($2.44 single unit at Digikey) was chosen, based on this article which provided useful insight into the several options we were considering. • Disadvantage: Unidirectional current sensing, not suitable for AC • Advantages: Minimum part count, and device contains internal LDO so unregulated Vcc was fine. For sensing bidirectional current flow we did consider using an AD8210 Bidirectional Shunt Monitor (nearly$5 each!), but eventually just went with current sensing before the coupling capacitor stage. This does introduce some error, but it was approximately linear error within our range of interest, hence eliminated in software.

An useful background reference was Linear's Current Sense Circuit application note.

Also, if someone does identify, or introduce, a hall effect isolated current sensor like Allegro's range, but for low currents, we would happily change over to it.

• Thanks. It's too bad allegro doesn't make a sensor with a smaller range. – waspinator Nov 3 '12 at 19:33
• There's a constraint: The Hall effect loses strength as the current drops - and increasing the sensing length would increase resistance and thus heat generated within the part, as well. I'm sure it'll happen, though, in time. – Anindo Ghosh Nov 3 '12 at 20:06

Note that those ACS devices for different current ranges only differ in the internal amplification stage. Therefore, I think it's well worth a try to simply put another op-amp behind the ACS to stretch its expected output range to the desired.

This will, of course, introduce some extra noise in the measurement but this may be neglectable at the low amplification of 1:5 in your case.

The current sensors are very sensitive for external magnetic fields, and you can use them as such. Take a ringcore, saw a slit where the ACS just fits in (flux concentrator) and wind a number of turns on the core where the current to be measured passes through. You can make it as sensitive as you like by increasing the number of turns. There are also small hall sensors from ASlegro available very well suited for this puropose with the same output characteristics as your ACS712 wich are also low cost.

A little expensive, but very effective option is to use isolated power supply (like R0.25S-0505) and isolated delta-sigma modulator (like AD7400AYRWZ). With some additional peripherals, or if FPGA is used- with a digital LPF, it will provide nice current sensing with high resolution and bandwidth. I had such circuit with like 16 bit, 64kHz, 80dB SNR... But- for about $10 per channel. If you would like to integrate the sensor to MCU system, maybe INA219 module is a good choice. It outputs the data thru I2C, so you don't need to ADC an analog voltage. It costs$10 on AdaFruit but only $2 or$3 on eBay.

Other specs:

• Voltage: 26 V
• Max Current: ±3.2 A
• Max resolution: 0.1 mA