# AC current sensing using micro-controller and suitable circuit

I'm working on the project in which I need to measure AC current. The main problem I am facing is small current amplitude. I have to obtain the current waveform(I need complete waveform not just RMS value) of amplitude ranging from 100$\mu$A to 600mA and frequency ranging from 500Hz to 10KHz. But, I can't afford to have voltage drop more than 4V across sensing resistor. Do I have to use relays and set of different sensing resistors? Any other better alternatives to relays?

• What kind of voltage levels does your AC current have? Feb 6 '17 at 18:56
• What measurement precision is needed? Feb 6 '17 at 23:47
• @Douwe66 Voltage ranges from few mili volts peak to peak to 20Vpp. Feb 7 '17 at 5:25

If you have two ADC channels avalable you could run a scheme like this:

simulate this circuit – Schematic created using CircuitLab

This avoids switching and allows you to have options on your dynamic range.

If you only have one ADC channel you can get an analog mux and use it to select between the low and high gain and that way you don't have to do anything to your sensitive current signal.

Basically you have a 6000:1 difference, which means you need a clean 13 bits of ADC, which is doable but not completely trivial. You'd need to keep the noise right down, because you'll have to have no more than a 6.7ohm resistor, which is only giving you 670uV at your low current end.

Personally I think I'd switch a different shunt resistor in at the low end.

• Thank you Will. I'm planning to use 16 Bit 1 MSPS ADC. By the way, which is the best way to switch between resistors? Do relays introduce too much noise? Feb 6 '17 at 19:23
• Relays appear in the signal path of lots of instruments - you need to make sure you're using an appropriate one with gold contacts, but you should be OK. There is more to getting 16 bits of precision than just buying the ADC - make sure all your supplies, references, layout etc are OK too.
– user1844
Feb 6 '17 at 19:48

I'd suggest there is a ready made solution to your measurement problem front end. Made for the hobby/professional tools market the uCurrent can measure down to pA. The design uses a MAX4239 bridge/instrumentation amplifier, and I think could be easily modified or the design adapted to meet your needs. There was a complete design description of the first version here.

Redesigning the burden resistors would appear to be a simple task with the only real problem being that of achieving the lowest contact resistance for your burden switches. Getting higher output voltage could be achieved by raising the supply voltage. If you want to auto range your input I'd suggest that you should consider Au/Ag or Mercury wetted reed relays which have about the lowest contact resistance you can get. Though I'd suggest you include one set of contacts that shorts out all your burden resistors while you select a range.