1
\$\begingroup\$

I want to measure the power consumed by my design ranging from uW to tenths of mW. Power values I wish could be recorded digitally so that I can use them for analysis later. May be another form is also fine. But I don't intend to write them down.

The design has about three levels of power consumption. Deep Sleep, Processing and Transmission.

The reason I want to do this is because I want to analyze my own design and get to see if I can further its power efficiency. Another reason is I want to include the same in the conference paper I wish to publish later.

There is only one power input for the whole design. working voltage is 3.3V. Current bursts range from 2A (ms range) to uA (minutes range). One cycle includes Acquisition, Processing and Transmission which takes about 1.5 minutes.

\$\endgroup\$
3
  • \$\begingroup\$ Does your power supply display this current range? \$\endgroup\$
    – Andy aka
    Commented Oct 4, 2014 at 16:00
  • 2
    \$\begingroup\$ Do you have oscilloscope? If you do - what kind? Analog? Digital? It has USB or something? I know thats dumb question, but... you didn't mentioned anything about available tools. \$\endgroup\$
    – Kamil
    Commented Oct 4, 2014 at 16:18
  • \$\begingroup\$ Although I dont have one, I have access to a USB capable Agilent Digital Oscilloscope in the lab. I think it costs over some thousands of dollars, so I believe it should have good functionality. Im sorry I dont remember it model no. Although I could check and update. The lab also has Analog CROs. I was trying to mention all aspects related to my question but I completely forgot this aspect. \$\endgroup\$
    – Denis
    Commented Oct 5, 2014 at 14:59

2 Answers 2

3
\$\begingroup\$

An important question you need to ask yourself is: Do I want the solution to be included in my board design/electronics and stored in my micro-controller?

The solutions given by Kamil are quite universally applicable for any electronic design, and may be reused for other projects, which may make an initial investment in time and money a threshold, but you can "write it off" over many projects.

If you want to include the measurements in your own system for indefinite measurements and logging you will need to make some good decisions about the power-cycle.

First: Your micro-controller will never be using that much current: Ah! Create a measurement path that monitors all the low-current devices and one that monitors the high-current devices. I am, after all, assuming that you will actively shut down the high-power electronics with very, very low leakage.

If you can do that, reliably make the high-current path go down to absolutely negligible current, you can add a second part of intelligence, powered before the current measurements of course, which monitors all the other device's consumption. As your main controller cannot measure in deep sleep, as the ADC will not be running and if it is that will be 90% or more of your entire consumption.

Then you just need to be able to turn on or off the current measurement device with the main controller to do measurements over given time periods, while allowing minimum sleep-current over the remaining time spans.


Alternatively it has to be said, that 24bit accuracy ADCs at low frequency and low unity-gain, but also high precision amplification need not be costing you gold, so a complete curve can be ascertained if you want to, at such rates as 1kSps it may even be affordable, allowing an audio-frequency (>36kSps, <112kSps) ADC to settle and convert over a long period.

\$\endgroup\$
3
  • \$\begingroup\$ Well, Yes, I am indeed cutting down the high power devices using a P-MOSFET controlled by the MCU. I am seriously considering the ADC technique. I have access to higher resolution ADCs. So how about a 0.1 or 0.01 ohms resister in series with the system power which will provide me a proportional voltage to system power? I can then use a differential amplifier with gain 10. But I'm scared I might be having trouble if I would be required to step into the noise region. And its a nice idea to have two different measurement circuits. I guess that too is something I must look into. Its a nice idea \$\endgroup\$
    – Denis
    Commented Oct 5, 2014 at 15:16
  • 1
    \$\begingroup\$ @QwertyCoolGuy The easiest (low tweaking andcost) is, since you have the PMOST path already, to put a low resistance in the PMOST's path and a higher resistance in your low power path. By continuously monitoring them both and adding their current consumption together on a fixed interval with reasonable accuracy you can then calculate power real-time or afterwards. To "sample" VCC the easiest/smallest method is get a precision reference and sample that with the ADC at running at VCC, you can back-calculate VCC from the reference reading. Or run off a precision 2.048V and divide VCC with 0.1% Rs \$\endgroup\$
    – Asmyldof
    Commented Oct 5, 2014 at 15:26
  • 1
    \$\begingroup\$ @QwertyCoolGuy The other option is to get yourself a device such as: ADA4528-1 and see how much reliability you can squeeze out of that. It has low noise and low offset values, is rail to rail, but also 4.5V minimum, if you can fix that 'little problem', you can test with a 10 Ohm 0.1% and a 10milliOhm (low % as possible) resistor, the ADA over the 10milliOhm, something good enough across the 10Ohm and test low currents through or low voltages over the pair. \$\endgroup\$
    – Asmyldof
    Commented Oct 5, 2014 at 15:46
2
\$\begingroup\$

Just split your measurements and make them with diffrent tools.

For deep sleep and processing - you can use/build something like this (as very low current-voltage converter):

uCurrent (connected to digital oscilloscope) - it's open hardware and really good for purposes like this

For transmission (2A range) - oscilloscope and some shunt resistor.


If you want to measure 2A with 1uA resolution and reasonable acurracy - just forget it.

Something like this will cost probably more than your whole design. You would need at least 21-bit ADC, very very low noise amplifier and expensive equipment in workshop (to measure how inacurrate your measurement device is).

\$\endgroup\$
1
  • \$\begingroup\$ Wont a 24 bit ADC work with a differential amplifier gain - 10? Although I dont have experience in making such amplifiers, I was under the impression that I could put in a series 0.1 ohm resister and have a large measurement range from uA to A. What sort of hurdles are possible in creating such a design. It would be nice to know as knowledge too! And yes, I will try your method. It sounds legit for now. I can obtain a rough idea although the records are discrete. \$\endgroup\$
    – Denis
    Commented Oct 5, 2014 at 15:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.