Author Topic: Beginner level: DIY an accurate picoammeter (measure picoamps!)  (Read 30470 times)

0 Members and 2 Guests are viewing this topic.

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 9502
  • Country: gb
Damn, yes sorry. I meant 1 Meg. I sized it to limit the current through the LMC662 input protection diodes at reasonable overload.

I selected a 1W Carbon film part for its large body size and 500V rating (hence the 500V warning on my label).


P.S. Yes it's scary how efficient LEDs can be these days, particularly deep green and blue.
« Last Edit: May 28, 2020, 05:36:43 pm by Gyro »
Best Regards, Chris
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Which solder flux do you recommend for this situation?  I presume a flux that's easy to remove afterward rather than a "no clean" that you simply leave on?

Edit: Or maybe no flux at all?  i.e. just solid core solder with no flux?
« Last Edit: May 28, 2020, 06:54:14 pm by NeverDie »
 

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 9502
  • Country: gb
Use ordinary 60/40 or 63/37 with rosin based flux. No clean flux definitely has no place in a high impedance situation. You don't need to remove the rosin flux if it isn't near the package.

If you solder to the tips of the pins, then flux contamination of the package is going to be minimal anyway. It's only really critical for the high impedance input pin.

Don't get IPA on the Polystyrene capacitor (I found that its leakage eventually recovers to normal, but it takes a couple of days).
« Last Edit: May 28, 2020, 06:55:55 pm by Gyro »
Best Regards, Chris
 
The following users thanked this post: NeverDie

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Don't get IPA on the Polystyrene capacitor (I found that its leakage eventually recovers to normal, but it takes a couple of days).

Thanks to your warning I used acetone to clean off the flux in that area and thereby, hopefully, dodged this complication.

I finished all the necessary repairs and even made a few improvements.

Firstly, I realized there was an easier way to electrically internconnect the four pieces of the shell: by grinding off the coating on the end-plates where the screws are used to attach them to the upper and lower pieces of the box.  Simple.  Here's the before and after on the grinding:

998142-0

998144-1

In turn, that allowed me to do a quick (temporary) hack to electrically connect the enclosure to input-GND:

998146-2

After I received my drill-taps (hopefully today), I'll accomplish essentially the same enclosure to input-GND connection, but in a way that's inconspicuous and with a nicer aesthetic.

Here's the hole in the case I drilled so that I can slide a screwdriver into the trim-pot to zero the circuit prior to measurements:
998148-3
If you were to zoom in on the drilled hole shown in the photo, you can see the trim-pot.  :)
« Last Edit: May 29, 2020, 02:02:41 pm by NeverDie »
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
On the inside I
(1) corrected the placement of the gigaohm resistor.
(2) removed the solder flux on the critical input pin of the opamp.
(3) re-positioned the LED so that it would shine up, out of the drilled hole, thereby leveraging the narrow optics of the LED and making it easier to see when the enclosure is sealed up,
(4) Replaced the el-cheapo reed switch with a few of the same el-cheapo's in parallel.  I aligned the reed switches randomly, so that there'd be less need for a particular orientation of the magnet when switching on the circuit.  What happened instead was a surprise: it appears that when configured in  this parallel way, the reed switches act as a latch--they turn-on when excited by a magnet and stay turned on even after the magnet has been removed.  I don't understand why.  Maybe they're oscillating instead of simply turning on?  I don't know.  Fortunately, if I wipe the magnet in a particular direction over the reed switches, the latching stops and the system turns off.

998158-0
998160-1
998162-2
« Last Edit: May 29, 2020, 01:51:00 pm by NeverDie »
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Seems to be working.  I took a 3.3v voltage source, passed it through a 10 gigaohm resistor and then into the picoammeter and then to ground.  Hooking up my DMM to the picoammeter and setting it into millivolt mode, the number shown was about 300.  i.e. 300 picoamps, which is a plausible value given the 25% tolerance of the 10G resistor.   8)

What's a better test to measure in more detail the accuracy of the particular picoammeter that I built?  Is there a particular benchmark test that "everybody" uses?
« Last Edit: May 29, 2020, 04:14:27 pm by NeverDie »
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
Seems to be working.  I took a 3.3v voltage source, passed it through a 10 gigaohm resistor and then into the picoammeter and then to ground.  Hooking up my DMM to the picoammeter and setting it into millivolt mode, the number shown was about 300.  i.e. 300 picoamps, which is a plausible value given the 25% tolerance of the 10G resistor.   8)

What's a better test to measure in more detail the accuracy of the particular picoammeter that I built?  Is there a particular benchmark test that "everybody" uses?

Nice one!

To calibrate the device, maybe make a much lower source voltage (10mV ?) out of a couple of resistors,  so you can use smaller and more precise resistors instead of the 10G one?
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
I was thinking along similar lines except using a very accurately calibrated millivolt voltage source and then coupling that with some affordable ultra-precise resistors.  I think (?) there may be voltage reference chips/modules that someone with a fancy NIST traceable 8 digit DMM then certifies as having a particular voltage, which he then writes onto the module.

However, your idea has merit as well.  Maybe yours would be more cost effective.  Not sure: there must be a reason why people prefer having/using a calibration voltage module over only using just their Fluke 87V and some precision resistors to create a voltage divider.

Edit1: I remember now that mjlorton did quite a number of youtube videos on the topic of precision voltage sources.  That guy seems genuinely obsessed with accurately measuring voltage.   I guess maybe I should go see what he recommends,... unless one of you guys knows of a good reference module to recommend for this picoammeter scenario? 
« Last Edit: May 29, 2020, 05:22:34 pm by NeverDie »
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
Because your device uses so little current, you can get away with a voltage divider as the source.   For example, bleeding 100 picoamps off a current of 10mA flowing in a divider is very little error.

The biggest sources of error is going to be the precision of the resistors.  -  But you can use whatever reasonable resistors you have, and just measure the voltage of the voltage divider you make of them with your multimeter. 

Then you just calculate how much current should be flowing into your picoammeter based on the measured voltage and the size of the resistor going to the Picoammeter (including its input resistance), using Ohm's Law.
« Last Edit: May 29, 2020, 05:51:30 pm by SilverSolder »
 
The following users thanked this post: NeverDie

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 9502
  • Country: gb
Seems to be working.  I took a 3.3v voltage source, passed it through a 10 gigaohm resistor and then into the picoammeter and then to ground.  Hooking up my DMM to the picoammeter and setting it into millivolt mode, the number shown was about 300.  i.e. 300 picoamps, which is a plausible value given the 25% tolerance of the 10G resistor.   8)

What's a better test to measure in more detail the accuracy of the particular picoammeter that I built?  Is there a particular benchmark test that "everybody" uses?

Looking good.  :-+

Yes, a resistor and a voltage source is the normal way to check the accuracy. The picoammeter feedback maintains the input at virtual ground, so there shouldn't be any significant voltage burden at low source voltages (as long as you don't go too low). Picoammeters, in the form of SMUs (Source Measurement Units) are often used to measure very high resistances at high voltage - hence the generous overload voltage rating I put on mine.

I'm not sure if I already mentioned it in this thread (it's in the Picoammeter thread), but the way to adjust the zero pot for the opamp offset voltage is to link the input to the negative output (not ground). The mV reading you get after removing the link is then the input bias current of the picoammeter itself.
Best Regards, Chris
 
The following users thanked this post: NeverDie

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00

I did some more tests with the uCurrent this morning.  Using A/C at 400Hz, I was able to measure 600pA with reasonable accuracy.   I was able to "see" 60pA, but the accuracy was out the window.

https://www.eevblog.com/forum/testgear/ucurrent-minimum-measurable-current/msg3084525/#msg3084525
 
The following users thanked this post: NeverDie

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
That's interesting. 

From just a quick and dirty experiment that I did this morning, I'm getting a great result with Gyro's picoameter.

I put together a simple voltage divider consisting of two resistors: 10ohm and 10kohm.  So, a 1000x voltage reduction there.

To make the math easy to check and follow along, I'll express the figures using power of ten exponents.  i.e. a (10^-3) voltage reduction.

Then, I put a 1Mohm (10^6)  resistor at the divider junction to feed the picoameter.

I fed the voltage divider with 100milliohm (10^-1) DC voltage.
Hence, the voltage at the resistor divider should be (10^-4).
So, the current entering the picoammeter, by ohm's law, should be (10^-4)/(10^6) = (10^-10) = 100 picoammeters.

I turned it on and then walked out of the room to view the voltmeter from the doorway.  The last digit bounces around, but with some eyeball averaging it looks to read about 94 millivolts, which corresponds to 94 picoamps. 

I'm not at all bothered that it's not on the nose, because this was just a quick and dirty test with 1% tolerance resistors, with long wires everywhere, a number of Chinese alligator clip connections, and no meaningful static shielding external to the picoammeter.  And, if anything, I'd expect a slightly lower number anyway from some leakage through the superglue that I mounted the opamp with, so the results are consistent with that possibility as well.

One test is hardly definitive, but I'm impressed!   :clap:

I guess the next step would be to put something a little more rigorous together and then stick the whole enchilada inside a shielded enclosure, similar to one of the earlier pictures in this thread.

« Last Edit: May 30, 2020, 06:05:12 pm by NeverDie »
 
The following users thanked this post: SilverSolder

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 9502
  • Country: gb
@Neverdie: Once you've screened it etc.  if you find that it consistently reads slightly low, you can tweak it by adding a resistor in series with the 1G one.

If the were to read high, then you really wouldn't have any options but to swap the 1G resistor and cross your fingers that you get a higher value one, but with a slightly low reading you have padding opportunity. If it reads 6% low, then something like a 56M in series would probably get you very close.
Best Regards, Chris
 
The following users thanked this post: NeverDie

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
I tried hooking up the picoammeter to my Rigol oscilliscope.  Unfortunately, the scope image is too polluted by 60hz artifacts to be useful, so I guess I either need better shielded probes, a differential probe, or a battery powered oscilloscope if I am to get a worthwhile scope image. 

Anyone using a scope with their picoammeter and solved this issue already?  I'm debating whether to punt on an oscilloscope altogether and just use an arduino's ADC to collect data and play it back after the fact, especially if everything external to the picoammeter needs to sit inside a secondary enclosure anyway.
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
This is how I ended up digging into our ancestors' use of AC for sensitive measurements...  it is much easier to filter out noise.

Is there any way the thing you are trying to measure can be made to use AC instead of DC?
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Not sure, but aren't we up against a hard limit of around  0.5Hz that we can feed into the picoammeter if we expect to get anything recognizable at the output?  Or did you mean using an extremely low frequency AC signal and filtering out whatever is above it?  I guess it could be done like AM radio, but with just a very low frequency carrier signal?

This has got to be a common problem, so it seems like there should be ready-to-hand solutions for it. 
 

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 9502
  • Country: gb
The 0.5Hz isn't a hard limit - it's a first order 3dB/Octave roll off (so it should still be a fair way down by 60Hz).

If you're getting lots of 60Hz hum, it suggests that there's either something not grounded to the scope ground, or you have multiple grounds, causing a ground loop. Try the picoammeter itself just connected to the scope and sitting on a piece of card or something if on a conductive surface. Then work your way forward - connect the negative of the current sourcing setup, etc. to see when the hum starts.
« Last Edit: May 31, 2020, 09:26:38 am by Gyro »
Best Regards, Chris
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
Not sure, but aren't we up against a hard limit of around  0.5Hz that we can feed into the picoammeter if we expect to get anything recognizable at the output?  Or did you mean using an extremely low frequency AC signal and filtering out whatever is above it?  I guess it could be done like AM radio, but with just a very low frequency carrier signal?

This has got to be a common problem, so it seems like there should be ready-to-hand solutions for it.

I meant extremely low frequency AC.   Your scope, when set to do Averaging,  will clean it up nicely and leave you with a measurable signal.  It is like a "ghetto lock-in amplifier".

Lock-in amplifiers are sensitive to exactly one frequency, and extremely good at rejecting noise. They are used for many scientific experiments where signals are buried deep in the noise.  However, they may struggle go down as low as 0.5Hz, so here the "ghetto" solution with a scope will beat the pros!

 
The following users thanked this post: NeverDie

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Or maybe the oscilloscopes you and I are using are obsolete rubbish?  I thought it was impressive how picotechnology is able to pull a clear human heartbeat signal out of the noise, including 50/60hz mains noise:  https://www.picotech.com/library/oscilloscopes/rejecting-common-mode-noise-in-oscilloscope-measurements

Compared to that it's like we're trying to get clear crisp oscilloscope measurements using only stone knives and bearskins.
« Last Edit: May 31, 2020, 05:50:36 pm by NeverDie »
 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Problem mostly solved:   I just now tried this guy's solution, which is both cheap and easy, for the mains noise problem, and for me it eliminated 95% of the problem:



 :clap:

I suspect switching to a battery powered oscilloscope would probably improve it even further.

FWIW, from what I've read on one of the EEVBLOG threads, you can actually power the Rigol 1054Z oscilloscope by applying 48VDC directly to the plug from four  lead-acid batteries in series.   I'm sure there must be a more elegant way, but for quick and dirty it reportedly works.  Just hold on to your still good but time-to-replace 12v UPS batteries and the setup cost would be "free."





 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00

Looks like a winner!  Can your experiment be battery powered?  That way only the scope would run on A/C...
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
Or maybe the oscilloscopes you and I are using are obsolete rubbish?  I thought it was impressive how picotechnology is able to pull a clear human heartbeat signal out of the noise, including 50/60hz mains noise:  https://www.picotech.com/library/oscilloscopes/rejecting-common-mode-noise-in-oscilloscope-measurements

Compared to that it's like we're trying to get clear crisp oscilloscope measurements using only stone knives and bearskins.


The "secret sauce" for the Picoscope is the use of a differential probe (which you can add to any oscilloscope, but they are typically not cheap!).   Basically you take the signal at the two points in the circuit as usual, and subtract them from each other.  Most of the noise disappears (it is the same on both) leaving you with pure, beautiful signal!

 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
Or maybe the oscilloscopes you and I are using are obsolete rubbish?  I thought it was impressive how picotechnology is able to pull a clear human heartbeat signal out of the noise, including 50/60hz mains noise:  https://www.picotech.com/library/oscilloscopes/rejecting-common-mode-noise-in-oscilloscope-measurements

Compared to that it's like we're trying to get clear crisp oscilloscope measurements using only stone knives and bearskins.

The "secret sauce" for the Picoscope is the use of a differential probe (which you can add to any oscilloscope, but they are typically not cheap!).   Basically you take the signal at the two points in the circuit as usual, and subtract them from each other.  Most of the noise disappears (it is the same on both) leaving you with pure, beautiful signal!

The commercial ones seem aimed at measuring high voltages, so I'm guessing that's why they're expensive.  However, for low voltages, there seem to be a large number of inexpensive DIY designs:  https://www.google.com/search?q=differential%20probe%20gerber&tbm=isch&tbs=rimg%3ACWeciPUQwj_1uImCeGH5BJHQbPPW0L_1DhPxAygrLOQpin3YQ0ELk3teP4Iu_1r6j3sD_1SBWt8NQNtM-2F44aBtmkX0diHXK2dPmMIFnrhp25pKxs9HMVYlQDYlx9qMC3CRxEUBA32q5JxZ_1R0qEgmeGH5BJHQbPBFIJvnsVGGJoCoSCfW0L_1DhPxAyEbAPRD3iDVyUKhIJgrLOQpin3YQRAdZXgLy1CSwqEgk0ELk3teP4IhGZhwLTi9hrrioSCe_1r6j3sD_1SBEfM-bHWtpY3LKhIJWt8NQNtM-2ERuPJqwlBQvdMqEgl44aBtmkX0dhGwhV7mT1jK9CoSCSHXK2dPmMIFEbAPRD3iDVyUKhIJnrhp25pKxs8RFxczlJzTtuIqEglHMVYlQDYlxxEq5N5S9qTNbyoSCdqMC3CRxEUBEa7J-cdzD1zUKhIJA32q5JxZ_1R0Rc90D_15XAwGhh1DKYrO9W2L0&rlz=1C1CHBF_enUS872US872&hl=en&ved=0CB0QuIIBahcKEwiY_6mt-t_pAhUAAAAAHQAAAAAQBw&biw=1087&bih=535

If we can find an already vetted project that has gerber files, I'd be very interested in putting one together.  I'm pretty sure Elektor may have some like that, though it may require becoming a member to access them.

Edit1: I found an open source one that looks fairly complete:  https://github.com/nostradomus/LabTools_100MHz-Differential-Probe#printed-circuit-board
It has gerber files for the PCB, a complete BOM, a schematic, and some articles documenting it.

Is there anything better?  If not, then I may order the board and the parts.

Edit2:  Because the picoammeter has low bandwidth, maybe it can't really leverage a fast oscilloscope anyway.  Maybe something as simple as logging voltages, and perhaps published via either bluetooth or wi-fi, similar to a pockit (https://www.amazon.com/gp/product/B07PSFQ2Z6/ref=ox_sc_act_title_3?smid=A2805HGTJEJ4ZY&th=1), is all that's really needed: 
« Last Edit: June 01, 2020, 08:01:21 am by NeverDie »
 

Offline SilverSolder

  • Super Contributor
  • ***
  • Posts: 6126
  • Country: 00
Yes, some way of logging the readings is probably the way to go.  Maybe your next investment could be a bench DMM with logging?  That would also give you averaging and other cool things that might help you with what you are doing.

What's the lowest usable (acceptably stable) reading you can get out of the picoammeter you just built?


Sometimes I use the scope for logging,  but obviously you only have about one minute of history at the slowest sweep speed (I don't know, maybe your scope does more?).

 

Offline NeverDieTopic starter

  • Regular Contributor
  • *
  • Posts: 152
  • Country: us
What's the lowest usable (acceptably stable) reading you can get out of the picoammeter you just built?

Good question.  That partly depends on what you mean by stable.  For instantaneous readings without a secondary shielding enclosure , the measurements are stable at the 10's digits, while the 1's digits do tend to move around.  If one were to do a long-term average, then I'd expect even single digits might be stable.  I have a hunch that a secondary shielding enclosure will help, but since I haven't actually tried it yet, your guess is as good as mine.


Sometimes I use the scope for logging,  but obviously you only have about one minute of history at the slowest sweep speed (I don't know, maybe your scope does more?).
My scope can show at most 10 minutes of history on one screen.
------------------------------------------


I'm finding that a big culprit for 60hz noise is AC-DC switched mode power supplies.  I tested 6 of them, and they were all noisy.  Even just plugging one in was enough for a large ripple to show up on the oscilloscope.  In contrast, DC-DC switched mode power supplies don't seem to be a problem.

Based on current findings, I'd recommend removing all AC-DC switched mode power supplies from whatever room you're doing your measurements in.
« Last Edit: June 01, 2020, 12:57:44 pm by NeverDie »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf