Author Topic: Open Source Multimeter - My stab at it  (Read 8095 times)

0 Members and 1 Guest are viewing this topic.

HLA-27b

  • Guest
Open Source Multimeter - My stab at it
« on: July 27, 2011, 01:54:43 pm »
Alright I'm pretty much learning as I go here. Also I am well aware that most of you guys can make this a lot batter than I can. But anyway here goes...


Full Size

Currently this thing consists of:


-  some protection circuitry which can be improved a great deal
- A range switching ladder driven by reed relays. These better be latching type to conserve battery life and decrease thermal differences. Instead of precision resistors, I opted for averaging multiple less precise resistors and possibly some trimming in situ.
- A function selector again using reed relays. No details yet. Presumably some constant current supply as an ohms converter, a RMS chip for AC etc.
- A chopper amplifier for the ADC. This is straight from the datasheet of the ADC.
- An ADC - 24 bit is probably optimistic at this stage. Some error budget analysis will be necessary in order to determine reasonable bit depth.
- A precision voltage reference. A heated type may be good for a bench type instrument but this one is the best one I could find for battery operation based on front page specs.

What is needed:

Everything so far can be done better basically. But for the record:
- A robust protection circuitry capable of protecting the user and the circuit against numerous events without degrading the measurement performance.
- A method of constructing a range ladder which is precise enough using cheap off the shelf components. A way of characterizing it on board.
- A good method of converting ohms to volts. 2 and 4 wire sensing.
- selecting an optimum RMS chip
- Optimizing the ADC and its amplifier price/performance/availability wise
- MCU
- Isolation

So yes these scribblings are posted not because I now how to do it but in order to provide a starting point upon which you guys can improve. Therefore feel free to criticize and improve. The schematic is attached so hopefully some of you will take it, modify, improve and post back so by and by this thing starts to look like business.

Cheers
HAL
 

alm

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #1 on: July 27, 2011, 05:37:27 pm »
Re averaging multiple resistors to increase the accuracy, don't forget about drift and tempco. Depending on the material, resistors usually have either a positive or negative tempco, so the tempco of multiple resistors in parallel will be close to the tempco of a single resistor (minus any temperature gradients).

For decent metal film resistors with a tempco of 50 ppm/K, assuming the standard commercial temperature range of 0-70 degrees Celsius, the tempco will cause about 0.35% change in resistance. For a divider, things are better since the TC of the series resistors will compensate each other to some degree, but differences in tempco and temperature gradients can still screw things up.

All resistors will drift over time. I don't know of the top of my head what kind of numbers to expect for cheap metal film or thin film resistors, and whether it's likely for multiple resistors to have similar drift.
 

HLA-27b

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #2 on: July 27, 2011, 07:00:12 pm »
Foil resistors have reasonably low drift over time. To prevent temp. differences, these should have a solid ground plane behind them as a means of temperature equalizing medium, so that no resistor is hotter than the others. Also some sort of a protective can like those used for RF should prevent air draft effects. Maybe resistors can also be aged artificially before mounting, and then screened and graded  into groups according to their actual value. This is of course a job for the amateur, no assembly house will do it. Probably there should be a temp sensor right next to the resistors to aid in post processing compensation.
I wonder whether some sort of inversion principle or something like that can be implemented so that the processor switches and measures each block automatically to create a sort of compensation table. Just like the ECU's in cars create compensation tables as they go trough different regimes of operation.
 

Offline KuchateK

  • Regular Contributor
  • *
  • Posts: 78
  • Country: us
Re: Open Source Multimeter - My stab at it
« Reply #3 on: July 27, 2011, 10:01:04 pm »
Do you have any candidates for RMS converter? Any detailed circuit for resistance?
 

Offline Zad

  • Super Contributor
  • ***
  • Posts: 1013
  • Country: gb
    • Digital Wizardry, Analogue Alchemy, Software Sorcery
Re: Open Source Multimeter - My stab at it
« Reply #4 on: July 27, 2011, 10:14:40 pm »
Don't worry about ultra precision resistors, most of the accuracy can be regained with careful voltage and temperature profile calibration. You might like to put some over-voltage protection on the input to the chopper amplifiers (back-to-back zeners etc).

Offline ejeffrey

  • Super Contributor
  • ***
  • Posts: 3932
  • Country: us
Re: Open Source Multimeter - My stab at it
« Reply #5 on: July 27, 2011, 10:21:39 pm »
Quote
Maybe resistors can also be aged artificially before mounting, and then screened and graded  into groups according to their actual value. This is of course a job for the amateur, no assembly house will do it.

It is better to just calibrate in-situ.  For dual-slope ADCs, extra digits cost time, and you don't want more digits than your actual noise-free resolution.  Thus, in order to avoid weird quantization effects like missing codes, you want to trim it so that one count == 1 display digit.  With a sigma-delta ADC, you can add extra noisy bits fairly easily.  A 24 bit sigma-delta with 20 -21 noise-free bits makes a great 6-digit meter and can easily be corrected for the actual resistor values by in-situ software calibration.  This assumes of course you actually have a good enough calibration instrument: most hobbyists will simply have to buy precision resistors and live with what they get.  You would obviously cross check multiple copies against each other to make sure you haven't screwed up your precision resistors by thermal or mechanical stress during assembly.
 

Offline Fox

  • Regular Contributor
  • *
  • Posts: 54
  • Country: de
  • Electronics Engineer
Re: Open Source Multimeter - My stab at it
« Reply #6 on: July 27, 2011, 11:32:00 pm »
Do you have any candidates for RMS converter? Any detailed circuit for resistance?

For TrueRMS LTC1968, easy to use needs only cap and a lowpassfilter.

@ HAL-42b
the Voltagedivider you as you have drawn will not work, the last resistor o your ladder has to be connected to ground or you wouldn't have a Divider.
As for the Reedrelais, they can come rather expensive if you want to use this type of Inputdivder and inputvoltages greater than about 300V.

What type of Multimeter do you have in mind Handheld or Benchtype.

For a Benchtype Multimeter the LTC2440 ADC would be a good choice but for a handheld meter it is not as good, cause it needs 5V supply Voltage and draws 8mA of current.

And you have no Levelshifting in your circuit (something that shifts your inputvoltage of the ADC from e.g +-1V to 0-2V) because most of the ADCs are singlesupply. A dualsupply one would be an ADS1258 from TI for example.

I added a few things too your schematic, also its of course not a complete schematic of a meter, that would need more time.
A closed Switch should have zero Ohms or less!
 

HLA-27b

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #7 on: July 28, 2011, 03:09:24 am »
Do you have any candidates for RMS converter? Any detailed circuit for resistance?

RMS converters are mostly one chip affairs. Fox mentioned one, there are many others.

For OHM conversion I saw a circuit in an Intersil application note.
http://www.intersil.com/support/techdocs.asp?x=AppNote


I didn't include it in the schematic because I don't know how it works. So I leave it to somebody who knows what he (she) is doing. Jeri Ellsworth hear my voice? You are an Intersil girl now  ;)

Don't worry about ultra precision resistors, most of the accuracy can be regained with careful voltage and temperature profile calibration. You might like to put some over-voltage protection on the input to the chopper amplifiers (back-to-back zeners etc).

Yeah you're right. I mentioned artificial aging (i.e. cycling the resistors in an oven a few times) because I think it will weed out stray ones. Also it may have some good effect on drift over time.

It is better to just calibrate in-situ.  For dual-slope ADCs, extra digits cost time, and you don't want more digits than your actual noise-free resolution.  Thus, in order to avoid weird quantization effects like missing codes, you want to trim it so that one count == 1 display digit.  With a sigma-delta ADC, you can add extra noisy bits fairly easily.  A 24 bit sigma-delta with 20 -21 noise-free bits makes a great 6-digit meter and can easily be corrected for the actual resistor values by in-situ software calibration.  This assumes of course you actually have a good enough calibration instrument: most hobbyists will simply have to buy precision resistors and live with what they get.  You would obviously cross check multiple copies against each other to make sure you haven't screwed up your precision resistors by thermal or mechanical stress during assembly.

I am glad you mentioned calibration instruments. A few days ago I found a serie of magazine articles about building a Metrology Lab at home! I immediately sent p.m. to the writer, Mr. Conrad Hoffman, asking for a permission to post the articles here. Mr Hoffman was very kind and showed interest in what we are trying to do. What is most amazing is that he joined our forum and contributed with his ideas. I am sure that he is in position to answer some of our questions. But before that I should refer to the articles.

http://conradhoffman.com/mini_metro_lab.html

Very interesting reading people, don't miss out.

 

HLA-27b

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #8 on: July 28, 2011, 03:16:53 am »
@ HAL-42b
the Voltagedivider you as you have drawn will not work, the last resistor o your ladder has to be connected to ground or you wouldn't have a Divider.
As for the Reedrelais, they can come rather expensive if you want to use this type of Inputdivder and inputvoltages greater than about 300V.

What type of Multimeter do you have in mind Handheld or Benchtype.

For a Benchtype Multimeter the LTC2440 ADC would be a good choice but for a handheld meter it is not as good, cause it needs 5V supply Voltage and draws 8mA of current.

And you have no Levelshifting in your circuit (something that shifts your inputvoltage of the ADC from e.g +-1V to 0-2V) because most of the ADCs are singlesupply. A dualsupply one would be an ADS1258 from TI for example.

I added a few things too your schematic, also its of course not a complete schematic of a meter, that would need more time.


Thanks for the input mate! This is exactly why I started this post in the first place. So thanks a bunch.
I see that you added another input for the low amp ranges. I also see some switching for low current shunts, just like Dave's uAmp. Great job!
 

Offline bobski

  • Contributor
  • Posts: 37
  • Country: us
Re: Open Source Multimeter - My stab at it
« Reply #9 on: July 29, 2011, 08:20:43 pm »
Could an analog switch/multiplexer chip be useful rather than reed relays?
 

alm

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #10 on: July 29, 2011, 08:52:32 pm »
If the impedance is >> 10Mohm and it can withstand the full input voltage.
 

HLA-27b

  • Guest
Re: Open Source Multimeter - My stab at it
« Reply #11 on: July 30, 2011, 02:37:24 pm »
A few changes for a003


https://picasaweb.google.com/lh/photo/KlH9ylJEunIRK8XWF29wM86tPIIjjFpjS5Y2I_q7q0Q?feat=directlink

- I added a 90M resistor to increase the total impedance to 100M as suggested by alm
- Some tidying up on the schematic

After increasing the impedance to 100M i tried to analyze thermal noise. The results are quite interesting.

Here is a video on how to calculate thermal noise:Noise in Op Amp Circuits Part 1
and another one Noise of a Non-inverting Operational Amplifier Circuit

According to the first video the thermal noise is calculated as follows



After the number crunching the following picture appears


The colored graphs show how much noise each resistor is contributing. As can be seen, both impedance and bandwidth are heavily penalized. Therefore for minimal thermal noise we want minimal resistance values and the lowest possible bandwidth. Since we want both of these to be high, there must be a good trade-off somewhere.

What comes to mind is that all resistors in the decade ladder are always connected to the circuit, therefore always contributing noise. So maybe switching them off when not used will decrease noise. This would improve the noise floor at least for the lower range measurements. On the other hand extra switches mean extra seebeck noise.

Any suggestions are welcome.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf