Programmable Decade Resistor: Improved results

After the modification described in the previous post I let the the “adjustment”/calibration procedure run again. Five days later I repeated the calibration (not the adjustment). As before, all measurements are performed with an Agilent 34401A 6.5 digit multimeter.

Accuracy of the resistance

First up is a diagram that shows the absolute value of the deviation of the measurement value from the setpoint. The tested values are grouped as follows:

  • Calibration points: There are 55 calibration points (0, 1, 2, .., 9; 10, 20, .., 90; 100, 200, .., 900; 1k, 2k, .., 9k; 10k, 20k, .., 90k; 100k, 200k, .., 900k). In the diagram, all calibration points are connected via lines for visual purposes only. This does NOT imply that we can estimate the deviation for setpoints between two calibration points by looking at this line.
  • Validation points: These are 9 randomly selected values per decade for the upper five decades. All values of the first decade are already included in the calibration points. This results in 45 additional points. Validation points are not connected by a line

The diagram includes curves for the following scenarios:

  • UNCAL@4W: The unit is used in its uncalibrated mode, where the user selectable setpoint equals the hardware setpoint. If, for example, the user enters \(130\text{ k}\Omega\), the 6th decade would be in the \(100\text{ k}\Omega\), the 5th decade in the \(30\text{ k}\Omega\) and all lower decades in the shorted position. Also, the display logic ignores the calibration constants and shows \(130.000\text{ k}\Omega\). (The input LED switches to red in order to indicate the uncalibrated mode.) For the diagram shown, the measurement was performed using a four-wire resistance measurement
  • 2W: In the calibrated two-wire mode, the unit uses the two-wire calibration constants to optimize the hardware setpoint so that the actual resistance value is as close to the setpoint as possible. The calibration in this scenario is also performed using two-wire measurements
  • 4W: In the calibrated four-wire mode, the unit uses the four-wire calibration constants to optimize the hardware setpoint so that the actual resistance value is as close to the setpoint as possible. The calibration in this scenario is also performed using four-wire measurements

There are two curves to asses whether/which specifications can be fulfilled:

  • In order to compare the results with the requirements defined in the first post, the diagram shows a curve where the absolute value of the deviation would be equal to \(0.5\% \text{ of value}+ 0.3\text{ }\Omega\)
  • A second curve narrows the spec down to \(0.1\% \text{ of value} + 0.15\text{ }\Omega\)

The test setup isn’t perfect either. Three curves characterize the accuracy we can expect from the Agilent 34401A multimeter (absolute value; measured values could deviate in positive as well as negative direction). These are based on a Keysight datasheet (published in USA, July 8, 2022).

Absolute value of the deviation between the setpoint and the value indicated by the Agilent 34401A multimeter. Connecting lines between data points for visual purposes only

There are multiple observations we can make:

  • With very high confidence, the absolute deviation is significantly below \(0.5\% + 0.3\text{ }\Omega\), hence I consider the requirement fulfilled
  • The randomly selected validation points show deviations that are close to deviations seen for calibration points close by
  • The 34401A is not necessarily multiple orders of magnitude more accurate than the resistors used, especially if not calibrated 24h beforehand. So evaluating the absolute accuracy using this setup seems to be a bit difficult
  • I adjusted the unit so that it complies with the measurement results of the 34401A as good as possible. The strong improvements seen for higher setpoint values indicate that the algorithm actually does what it is supposed to do: For setpoints \(\ge 50\text{ k}\Omega\) the deviation can be reduced by an order of magnitude or thereabouts. There is no point in trying to adjust the resistance manually, the algorithm takes care of it well enough, when it’s possible to improve something
  • Assuming the 34401A measures the resistance perfectly (it doesn’t) the deviation is below \(0.1\% + 0.15\text{ }\Omega\) for all tested setpoints

Accuracy of the calculated resistance value

The second diagram is similar to some extent, but instead of comparing the setpoint with the actual (measured) resistance, now we compare the calculated resistance (estimate based on the calibration values) with the actual (measured) resistance. This answers the question of whether we have to measure the resistance each time we select a value, or whether it’s ok to just look at the unit and trust that the value displayed is the resistance at the input.

Absolute value of the deviation between the calculated resistance (estimate based on calibration values) and the value indicated by the Agilent 34401A multimeter. Connecting lines between data points for visual purposes only

Like with the accuracy, for really low resistance values there is some significant deviation* (worst case about 2% for 2W and 1% for 4W at \(1\text{ }\Omega\)). However, the deviation drops really quickly. For resistance values above \(10\text{ }\Omega\) we’re looking at about 0.1% deviation or less, for \(100\text{ }\Omega\) and up at a deviation of about 0.01% or less which I consider irrelevant in almost any situation the unit could be used in. In other words: In most cases the estimate is roughly one order of magnitude more accurate than the accuracy of the resistance. This leads me to the conclusion that the calculated resistance can be relied upon, with certain caveats for really low values (however, those also apply for the accuracy too).

* This deviation could likely be reduced further with a software update that also stores the calibration data for the lowest decade without any compensation for the contact resistance etc. that is only required for higher decades.

More data

Applied value
(\(\Omega\))
Calculated value
(\(\Omega\))
Indicated value
(\(\Omega\))
Previous indicated value
(\(\Omega\))
Deviation
(\(\%\))
Previous Deviation
(\(\%\))
00.0790.0710.070
11.0621.0531.0525.2635333335.2383
22.0332.0282.0741.4088166673.7170
33.0123.0063.0520.20791.7271
44.0334.0264.0730.6620333331.8132
55.0125.0055.0500.095041.0041
66.0336.0256.0720.4127166671.1936
77.0117.0037.0490.0439428570.7020
88.0318.0228.0690.28063750.8623
99.0099.0019.0470.0083666670.5178
1010.12210.10710.1081.0733033331.0764
2020.08220.07420.1230.371110.6164
3030.06830.05930.1070.1972744440.3557
4040.08440.07740.1250.1927091670.3127
5050.07050.06250.1090.123390.2172
6060.08060.07260.1200.1201416670.2001
7070.06570.05770.1030.080750.1478
8080.07680.06880.1160.0849229170.1446
9090.06090.05390.0990.0584529630.1101
100100.073100.061100.0610.0611166670.0609
200200.010200.002200.0030.0010850.0014
300299.896299.891299.891-0.03625-0.0363
400399.859399.860399.860-0.0351175-0.0351
500499.744499.747499.748-0.050556-0.0504
600599.633599.636599.639-0.06065-0.0602
700699.518699.523699.527-0.06814619-0.0676
800799.431799.434799.440-0.070715417-0.0700
900900.300900.304900.3100.0337344440.0345
10001000.2001000.1621000.1610.016220.0161
20002000.3832000.3192000.2760.0159466670.0138
30003000.2733000.2063000.1360.0068822220.0045
40004000.6614000.6794000.6050.01697250.0151
50005000.5395000.5525000.4710.0110460.0094
60006001.0606001.1246001.0560.0187305560.0176
70007000.9297000.9856999.0940.014064762-0.0129
80008001.0348001.0937998.9580.013662083-0.0130
90009000.9009000.9518999.0830.010567778-0.0102
100009998.8909998.8359998.949-0.011650333-0.0105
2000020000.36820001.16820001.2050.005840.0060
3000029999.82929999.14029999.199-0.002866667-0.0027
4000040000.39339999.80439998.617-0.000489167-0.0035
5000050000.46849999.62749998.765-0.000746-0.0025
6000060000.02359999.57559999.367-0.000708889-0.0011
7000070000.23870000.22370000.3720.0003180950.0005
8000079999.62579999.48179999.635-0.000648333-0.0005
9000090000.01589999.84590000.060-0.0001718520.0001
100000100000.28099999.54099999.994-0.0004596670.0000
200000200000.086199999.253200001.770-0.0003733330.0009
300000300000.414300000.953300004.1400.0003177780.0014
400000400000.057400001.630400007.1600.00040750.0018
500000499999.939500001.013500009.0000.0002026670.0018
600000599999.505600003.553600015.1900.0005922220.0025
700000700000.073700001.357700015.1900.000193810.0022
800000799999.583799999.317800017.240-8.54167E-050.0022
900000899999.680899997.450900018.830-0.0002833330.0021
Calibration results for four-wire measurement

Conclusion

With the fairly stable resistors used and also great calibration results I think it’s fair to call it a precision instrument. Hence the label Programmable Precision Resistor on the front panel. That being said: If you’re looking at an accuracy in the ppm range, things like EMF and the isolation material of the binding posts matter. Those effects were not considered.

Also, there are some other topics that could be very interesting like temperature and long term drift (e. g. 30 days, 90 day, 1 year). I don’t have a climate chamber, but running the automated calibration procedure would certainly be an option.


Posted

in

by

WordPress Cookie Notice by Real Cookie Banner