Author Topic: Hacking the Siglent SDM3055 Bench DMM  (Read 5077 times)

0 Members and 1 Guest are viewing this topic.

Offline Nornand

  • Contributor
  • Posts: 7
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #50 on: August 31, 2019, 08:52:04 pm »
Gainsetting seems to be 8 for the PGA.
Vref/8=0.3125V
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #51 on: September 01, 2019, 02:04:09 am »
Yes the PGA is used... Shame.
The DMM is not an internal 240.000 points because it's possible to have up to 312500 points.

I've done a continuous decimation with a sinc function over 4096 samples captured with speed=FALSE. The result is similar to the speed=SLOW with 30sec statistics.
I confirm the fact that it's possible to have a super fast (with a low resolution) bar meter and a high precision (slow) display number simultaneously.

I'll try to enable a more faster tranfert between ADC, FPGA and ARM (4800SPS). I'll need to check if the current onboard Linux is compatible with critical realtime processing (or change to another Linux).

I've found the LT6657 voltage reference... Better than the LT6655...
Probably a stupid idea (or not) : If I'll build a LTZ1000AH voltage reference to supply multiple LT6657A-2.5. Does the final output voltage have a lower drift than a standard low-noise 5V voltage regulator powering multiple LT6657A-2.5 ?
« Last Edit: September 01, 2019, 02:12:39 am by alexvg »
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #52 on: September 02, 2019, 03:44:38 pm »
A standard 5 V regulator (if not getting too much heat and variable current) is good enough to supply a LT6655 or similar reference. The next step up would be a bootstrapped supply - though it should not be needed here.

In many aspects the LT6657 is not better than LT6655 (especially the LS8 version). Both are lower noise than the max6325, but the TC may be higher.
The big weakness of all these reference is not so much the noise, but the drift, hysteresis and sensitivity to humidity. So the difference between the MSOP and LS8 case may be significant.  Anyway for a 5.5 digit meter they should be good enough.
As the ADC needs the 2.5 V reference level, there are not that many better references to choose from. Several in parallel help with noise, but only little with long term drift rate.

The other limitation of the DMM design is that it is only +- 2.5 V (may be a little more, but not much) with high impedance.
So there are limitations to the design, that can not be circumvented.
 
The following users thanked this post: alexvg

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #53 on: September 02, 2019, 08:07:59 pm »
The LTC6655 (LTC6655BHLS8-2.5) and LTC6657 (LT6657AHMS8-2.5) have a better long term drift than MAX6425 after more than 1000Hr and the noise is lower : the ADC used does not like the noise into its reference.
It's possible to use a LTZ1000A into the SDM3055 with a programmable voltage divisor (based on Vishay high precision low drift resistances). It's simple to do.
I study all possibility : After some little modifications on the device, I would like to know what level of precision it is possible to reach.
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #54 on: September 04, 2019, 07:26:46 pm »
A standard 5 V regulator (if not getting too much heat and variable current) is good enough to supply a LT6655 or similar reference. The next step up would be a bootstrapped supply - though it should not be needed here.

In many aspects the LT6657 is not better than LT6655 (especially the LS8 version). Both are lower noise than the max6325, but the TC may be higher.
The big weakness of all these reference is not so much the noise, but the drift, hysteresis and sensitivity to humidity. So the difference between the MSOP and LS8 case may be significant.  Anyway for a 5.5 digit meter they should be good enough.
As the ADC needs the 2.5 V reference level, there are not that many better references to choose from. Several in parallel help with noise, but only little with long term drift rate.

The other limitation of the DMM design is that it is only +- 2.5 V (may be a little more, but not much) with high impedance.
So there are limitations to the design, that can not be circumvented.

You're right ! Using the LT6657 will provide lower performance than the LT6655 (LT6655BHLS) with the AD7190.
So what to do ?
1. I could try to use up to 6x LT6655 ? (with a thermal isolation)
2. I could try to use up to 4x LM399A ? (but with a voltage conversion adding drift and low pass filter)
3. I could try to use one LTZ1000A ? (like LM399 with a similar voltage conversion adding drift and low pass filter)

Don't know what to do...
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #55 on: September 04, 2019, 08:40:41 pm »
The rest of the DMM (like gain stage and input divider - already used for the 20 V range) are still more suitable for 5.5 digits. So there is limited use in replacing just a a few points and hope to get much better performance.
It starts with having high impedance up to some 2.5 V only.
At some point is would be more like building your own DMM from scratch.

So I would consider anything more like a single LT6655 (with maybe some simple thermal regulation) overkill. 
The main advantage of an LM399 would be better long term stability - still needs a very stable divider stage. It would also mainly help the 2 V range. The divider (+ buffer)  from a 7 V level down to a 2.5 V (maybe 3.5 V ?) level is probably more tricky than the LTC6655.
One also has to keep in mind that the power supply and thermal design may not allow much more power.

A change in the HW would mainly make sense if there is a simple, easy upgrade possible because of something like a design fault (could be a cost driven decision)  causing an isolated weak spot. Not sure if there is one such weak point -  chances are multiple source of similar size add up.

So a first point would be an in depth analysis of the performance of the original hardware. So how much of the noise is due to the input amplifier, possibly the input buffer, the ADC and the reference ?
For the drift this is more tricky as the result is valid for the one unit only.
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #56 on: September 05, 2019, 06:19:27 am »
The rest of the DMM (like gain stage and input divider - already used for the 20 V range) are still more suitable for 5.5 digits. So there is limited use in replacing just a a few points and hope to get much better performance.
It starts with having high impedance up to some 2.5 V only.
At some point is would be more like building your own DMM from scratch.

So I would consider anything more like a single LT6655 (with maybe some simple thermal regulation) overkill. 
The main advantage of an LM399 would be better long term stability - still needs a very stable divider stage. It would also mainly help the 2 V range. The divider (+ buffer)  from a 7 V level down to a 2.5 V (maybe 3.5 V ?) level is probably more tricky than the LTC6655.
One also has to keep in mind that the power supply and thermal design may not allow much more power.

A change in the HW would mainly make sense if there is a simple, easy upgrade possible because of something like a design fault (could be a cost driven decision)  causing an isolated weak spot. Not sure if there is one such weak point -  chances are multiple source of similar size add up.

So a first point would be an in depth analysis of the performance of the original hardware. So how much of the noise is due to the input amplifier, possibly the input buffer, the ADC and the reference ?
For the drift this is more tricky as the result is valid for the one unit only.
You're right, it's possible to use a 5V voltage reference but I need to check if this voltage is compatible with the analog input (AD7190 is compatible).
It's also possible to change the ADC... But I don't want to do this.
I'll need to check the noise from the input to the ADC (I'll need to build a LF amplifier probe).

I've also successfully set to 4800Hz the ADC and done a sinc filter to enhance the final resolution, the result is better than the original "Speed - Slow" (or 5 SPS)

« Last Edit: September 05, 2019, 07:18:25 am by alexvg »
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #57 on: September 05, 2019, 09:14:32 am »
I don't think a 5 V reference would be practica, as it's too far of the original 2.5 Vl. However a 3 V or 3.5 V (7 V / 2) ref. level could be working.

For checking the noise source, much can be done with the meter itself, reading data and look at the noise under different conditions. With s short, there should be no reference noise (at least not the normal one). With high gain in front chances are the amplifier noise would be dominant.
With the SD ADC there is however the ADC internal "gain"  (Usually actually only more frequent input sampling), that can make the analysis more complicated.

Is there an analog gain stage, or are they only using the ADC internal PGA stage for the 0.2 V range ?
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #58 on: September 05, 2019, 07:13:03 pm »
It's possible to use a +5V voltage reference with the AD7190, but with the design of the SDM3055, I don't know...

Using VDC mode :
- 200mV - PGA = x8
- 2V - PGA = x1
- 20V - PGA = x8
- 200V - PGA = x1
- 1000V - PGA = x1

When I finish the logic analysis, I think I'll do an in-deep inspection of the analog part, and do lots of measurements.

At the moment I'm having trouble understanding the measurement of resistance of very large values (10M to 120M).
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #59 on: September 05, 2019, 09:32:10 pm »
For very large resistors a common method is to add some resistance like 10 M in parallel. This allow to measure very large resistors, though with reduced accuracy and a nonlinear function to convert from the raw reading to resistance.
As the SDM3055 is more like a budget instrument, I would expect this method.
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #60 on: September 06, 2019, 09:17:31 am »
For very large resistors a common method is to add some resistance like 10 M in parallel. This allow to measure very large resistors, though with reduced accuracy and a nonlinear function to convert from the raw reading to resistance.
As the SDM3055 is more like a budget instrument, I would expect this method.
Yes, I've tested multiple methods without the correct results (I need to find the exact value displayed by the original DMM software). I continue my investigations.
 

Offline Nornand

  • Contributor
  • Posts: 7
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #61 on: September 06, 2019, 10:46:39 am »
Datasheet says
Range:  100 MΩ              200 nA || 10 MΩ

 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #62 on: September 07, 2019, 03:01:28 am »
Datasheet says
Range:  100 MΩ              200 nA || 10 MΩ
Yes it's a current generator.
But I could not find the exact result.

Edit: I think I've found it... I need to do multiple checks.
« Last Edit: September 09, 2019, 08:35:16 am by alexvg »
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #63 on: September 13, 2019, 02:30:46 pm »
I've finally found 2-wire and 4-wire measurement method.
I'm working to found how calibration work...
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #64 on: September 14, 2019, 07:47:45 pm »
I'ts ok !!!
I've successfully found the method used for 2-wire and 4-wire resistance measurement.

I've discovered 2 problems with 2-wire and 4-wire 100M measurements :
- I've measured 144mV p-p 50Hz at the input of the ADC (with open input but with LO/Losense shorted)
- The XML calibration is not fully used : 0-50M segment is used for 0-120M and 50-120M is not used at all !!!

A interresting information :
- I've success fully generate a 0V ADC input with 0x800000 output data (with +/-1LSB precision during more than a minute- 7FFFFF to 800001)

I've done my measurements with :
- 10K to 130M with 0,01% 0,1% or 1% resistance value (for 2-wire and 4-wire)
- I use a Rigol DG4102 with filtered output and 20dB or 40dB attenuation for simulate resistance (only 4-wire)
« Last Edit: September 14, 2019, 07:59:04 pm by alexvg »
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #65 on: September 14, 2019, 08:15:00 pm »
It is not a surprise to find some hum for the high resistance values. Normally the high Ohms ranges should use relatively high voltage ranges. Here this seem to be the 2 V range. It may take some shielding to get good readings. Ideally the DMM would detect if there is too much AC background (e.g. to cause clipping in peaks).

144 mV_pp is not too bad, less than some 5% for the full range.  For a good measurement one may need to use a shield to keep hum away and maybe avoid using long unshielded cables.

For the 10 M range 4 wire Ohms measurement does not make much sense.
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #66 on: September 14, 2019, 10:57:45 pm »
It is not a surprise to find some hum for the high resistance values. Normally the high Ohms ranges should use relatively high voltage ranges. Here this seem to be the 2 V range. It may take some shielding to get good readings.
The voltage range could go up to 2V, it's current generator of (around) 200nA

For the 10 M range 4 wire Ohms measurement does not make much sense.
I think you're right :
- Right because it's a nonsense to mesure high resistance value.

But I need to add something I'm thinking :
- Using a 4-wire cables it's possible to use shielded cables and differential input (for sense wires) for a more precise measurement.
But I could be wrong with this, I'm not sure (never tested, never simulated...)


I've also notice a strange math simplification inside the original software :

You could write :
f1(x) = 1/(1/x)
f2(x) = x
It's okay to say f1(x) = f2(x)
But it's false for a CPU !

Original Siglent Software uses a function like f1(x) that could cause a "divide by zero". But without simplifying the function, it's possible to avoid the "divide by zero" like f2(x). I don't understand why Siglent have done this...

 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #67 on: September 15, 2019, 07:49:53 am »
The capacitive coupled mains hum during the high ohms measurement is present at the DUT and the hum is thus directly added to the voltage to measure.  So a differential measurement does not help here. The main things that helps is the usually good suppression of mains hum by the ADC, because it is integrating over a multiple of mains periods.
Shielding for the high ohms measurement can be tricky, as there may be more leakage. Some high end DMMs offer a special driven shield for ohms shielding, that reduced the voltage over the isolation and also help a little with settling.

I sometimes makes sense to measure high resistors, but in the MOhms range one does not really care about cable resistance and could thus use a 2 wire measurement.  Some meters only offer 4 wire Ohms for the lower ranges.

Using only 2 wire ohms reduces the cables to 2 and thus less leakage and less surface to pick up . So there is a point at high resistors when 2 wire ohms is more accurate than 4 wire ohms. It is not just the external leakage, but also leakage at the input protection.

 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #68 on: September 16, 2019, 09:28:37 am »
Measuring using 100M range with this device is a joke (using 4-w and 2-w).
The precision is awful (even with 50 and 60Hz filter)
« Last Edit: September 16, 2019, 10:51:28 am by alexvg »
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 6210
  • Country: de
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #69 on: September 16, 2019, 03:19:09 pm »
The accuracy gets worse with high resistors already due to leakage and bias currents (e.g. at the protection). With only a 2 V range (compared to often 5-10 V for other 6 digit DMMs) this also makes things more tricky. 4 Wire resistance is likely worse than 2 wire. The 100 M range is about 10 times less accurate than the 10 M range as there is the 10 M in parallel and thus only a relatively small change used.  Anyway getting 1% or so accuracy is not that bad with such high resistors.

A really accurate measurement would need a special instrument, more like an electrometer. This usually is with applying a fixed (e.g. 20 V or 100 V) voltage and than measure the current. This also need shielding and special, short cables. Also touching the resistors with the hand can change things from contamination.
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #70 on: September 16, 2019, 07:02:15 pm »
My Applent AT2816 is more precise for high value... But it's a specific device.

I ve done 2 simple tests (with 2-wire and 4-wire)
- a 110M resistance measurement with 4-wire display 111,7M to 112,5M over a minute
- a 110M resistance measurement with 2-wire display 111,84M to 111,87M over a minute



A funny thing I see each time...
Code: [Select]
===============================================
|SIGLENT SDG800 project        /dev/pts/0
===============================================
SIGLENT Project http://         (none)
(none) login: root
Password:

Processing /etc/profile... Done
(SDG800 app and data are present inside the SDM3055 firmware)
« Last Edit: September 16, 2019, 07:04:19 pm by alexvg »
 
The following users thanked this post: exe

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #71 on: September 18, 2019, 05:53:06 am »
I'm currently working on the frequency counter... It works up to 2,2MHz... Very limited ! My UNI-T181A (half the price) works up to 60MHz.

Now I could use the frequency counter.

I've measured a maximum frequency of :
- 1Vpp : 3,1MHz square and 2,9MHz sine (Range 200mV)
- 5Vpp : 4,1MHz square and 3,9MHz sine (Range 200mV)
- 10Vpp : 5,0MHz square and 3,7MHz sine (Range 2V)
- 20Vpp : 5,0MHz square and 5,0MHz sine (Range 2V)

« Last Edit: September 21, 2019, 09:13:38 pm by alexvg »
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #72 on: September 22, 2019, 06:33:09 pm »
Now I've got the Capacitance measurement process.
It's possible to display a value with 5, 6, 7 or 8 digits... But the accuracy is very low...

To check capacitors, I use a LCR Applent AT2816 at 100Hz / 2V


I've done 34 measures with a list of 18 capacitors from 100pF to 10000uF.
All capacitors have been checked before and after the measure of the SDM3055 with the LCR.

Minimal error : 0,04%
Maximal error : 10,2%
Average error : 2,2%
Std Deviation : 0,0228%

The capacitance measurement of the SDM3055 is not very useful than a real LCR.
I've also checked all capacitors using a low-cost LCR (Peaktech 2170). The results are always better than the SDM3055 !
 

Offline alexvg

  • Regular Contributor
  • *
  • Posts: 82
  • Country: fr
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #73 on: September 23, 2019, 06:23:20 am »
I've selected some components to build a pre-regulated power supply.
- A couple of LM2991/LM2941 is used to create the +/-18V (regulated later for +/-15V)
- A single BA80BC0WT is used to to create the +8V (regulated later for +5V)
- A 100V/2A/0.7V Schottky bridge rectifier (+/-15V line)
- A 40V/2A/0.5V Schottky bridge rectifier (+5V live)

The main goal is to decrease the noise of these power lines and to reduce the heat of the main regulators.
The selected LDO regulators have a switch pin which will be connected to the internal switch signal.

I also need an additionnal power supply because I'll use a LTZ1000ACH instead of the MAX6325 for the ADC voltage reference.
 

Online CDaniel

  • Regular Contributor
  • *
  • Posts: 234
  • Country: ro
Re: Hacking the Siglent SDM3055 Bench DMM
« Reply #74 on: September 23, 2019, 06:54:50 am »
Now I've got the Capacitance measurement process.
It's possible to display a value with 5, 6, 7 or 8 digits... But the accuracy is very low...

To check capacitors, I use a LCR Applent AT2816 at 100Hz / 2V


I've done 34 measures with a list of 18 capacitors from 100pF to 10000uF.
All capacitors have been checked before and after the measure of the SDM3055 with the LCR.

Minimal error : 0,04%
Maximal error : 10,2%
Average error : 2,2%
Std Deviation : 0,0228%

The capacitance measurement of the SDM3055 is not very useful than a real LCR.
I've also checked all capacitors using a low-cost LCR (Peaktech 2170). The results are always better than the SDM3055 !

If the big error is for high value electrolytic caps it is fairly normal for a multimeter ... even two different Fluke don't display the same value and could be easily 10% off . For the simple method  of charging/discharging the cap the time is dependent on losses and current used ...
« Last Edit: September 23, 2019, 07:03:05 am by CDaniel »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf