Author Topic: Python etc for Fluke 5700a control and calibration of equipment  (Read 1151 times)

0 Members and 2 Guests are viewing this topic.

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
I happened to buy a Fluke 5700a. Its from 1989 so an early edition. Its in extremely good shape, and both displays are very good, but probably a ticking bomb to self destruct with all carbon resistors, tantalum capacitors and electrolytic capacitors. I will work though board by board to have all these replaced.

Its so early that it came with a "Preliminary Service Manual" and a card to fill out to request the final service manual free of charge. This offer have no expiration date, so I may do a try :). The manual, and even more the service manual with all schematics is a piece of art!

2544044-0

Now to the purpose of this thread. The 5700a/5720a is pretty easy to control over GPIB, but its quite tedious task to program calibration routines etc for different equipment. So good is that whoever have done any program share it here. Programming language, method of communicating over GPIB can be whatever, as the provided code can be ported to whoever may want to use it. I have not seem to much 5700a control programming published here.

My initial plans for calibration scrips:
- Keysight 34461A calibration performance check.
- Fluke 8845a calibration and performance check
- Keithley DMM6500 calibration and performance check. DMM6500 do not allow to enter actual resistance value for resistance calibration, so may have to do resistance separateley.
- 3458a "performance check". 5700a may not really be up to the task, but will give some indication, and I can use it to relative compare the different 3458a I have
- 5700A as generator of voltages for general linearity check using actual measurements from 3458a.
- and lots of other ideas.

There may be input signals 5700A can not generate without amplifier, and I may then have to do some workarounds for that.

My programming will be done in python (which i think is a terrible programming lanauge, but is widely used with packages etc, so i will have to live with that), VXI11. Once i get my programs complete i will post them here.

 

Offline CalibrationGuy

  • Supporter
  • ****
  • Posts: 137
  • Country: us
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #1 on: April 11, 2025, 02:05:43 pm »
Don't forget the venerable and widely used HP34401a, HP34970a, Keithley 2000, 2001, 2002, Keysight's 34460/65/70. This is a lot of work, but a really useful effort.

A repository and volunteer gatekeeper would help greatly. I will help as time permits with code reviews and/or testing of scripts.

TomG.
 
The following users thanked this post: aronake

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #2 on: April 12, 2025, 03:36:13 am »
Don't forget the venerable and widely used HP34401a, HP34970a, Keithley 2000, 2001, 2002, Keysight's 34460/65/70. This is a lot of work, but a really useful effort.

A repository and volunteer gatekeeper would help greatly. I will help as time permits with code reviews and/or testing of scripts.

TomG.

My ambition was intended to be a bit lower, just a thread for 5700A/5720A code sharing. But making this more structured is a good idea. So if anybody upload something, good if you write if you are OK that your code is edited and reposted, either here or say github or what may be suitable.
 

Offline CalibrationGuy

  • Supporter
  • ****
  • Posts: 137
  • Country: us
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #3 on: April 12, 2025, 03:47:06 am »
+1 for Github.

TomG.
 

Offline mendip_discovery

  • Super Contributor
  • ***
  • Posts: 1034
  • Country: gb
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #4 on: April 12, 2025, 08:39:39 am »
Why not write some scripts that either work with @MiDi setup or @e61_phil https://github.com/PhilippCo/meas_rpi and https://github.com/PhilippCo/testgear

IIRC TiN over on xDevs has a bunch of cal scripts etc. Though I have never delved into them that deeply.

From my list of many things to do, I would like to get a script for doing a regular check between multimeter and calibrator and saving it to an ongoing log/graphs etc.
Motorcyclist, Nerd, and I work in a Calibration Lab :-)
--
So everyone is clear, Calibration = Taking Measurement against a known source, Verification = Checking Calibration against Specification, Adjustment = Adjusting the unit to be within specifications.
 

Offline CalibrationGuy

  • Supporter
  • ****
  • Posts: 137
  • Country: us
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #5 on: April 12, 2025, 04:09:32 pm »
Has anyone tried this code with a 5700a and say a 34401a?

TomG.
 

Offline D.Burnette

  • Contributor
  • Posts: 11
  • Country: us
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #6 on: April 15, 2025, 11:44:59 pm »
Awesome score!

Sounds like you are dancing around something similar to a MET/CAL procedure in Python, which is really neat. If I had a 57xx, I would definitely play with some PyVISA and GPIB...

You might be interested in the NCSLI MII github (https://github.com/NCSLI-MII): They are defining a taxonomy for measurement automation. Could use that and XML instead of having to create your own schema for measurement points.

 

Offline LorenzoDL

  • Newbie
  • Posts: 9
  • Country: it
    • delucalabs.com
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #7 on: April 16, 2025, 08:31:36 am »
Great score!

I was in the past few months looking around to acquire one myself but the price online is crazy.

Can you share the price you paid for yours as a reference for the commercial price in the used market for a nice and functioning machine?

Thank you
 

Offline CalibrationGuy

  • Supporter
  • ****
  • Posts: 137
  • Country: us
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #8 on: April 16, 2025, 07:58:03 pm »
Not that the thread is about prices, but expect to pay $21,000 for a decent shape 5700a.

TomG.
 
The following users thanked this post: LorenzoDL

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #9 on: April 18, 2025, 11:05:01 am »
Great score!

I was in the past few months looking around to acquire one myself but the price online is crazy.

Can you share the price you paid for yours as a reference for the commercial price in the used market for a nice and functioning machine?

Thank you

I paid around 13K USD.

Benefit of the unit I have: It looks pretty much like new both outside and inside. The VFD display have very limited burn in. Total runtime around 1 year. Since the unit is 36 years old, it has not seem much "on %". From the stored calibration data it was calibrated in 2019 and in 2021, so a hint that its been taken care of and had recurring calibrations. From the 2021 calibration to now, i just did a calibration with F732B, F742A-1 and SR104 straight from the national standard laboratory, the internal 6.5V has moved 0 PPM, the 13V references has moved 0.2 PPM and the 10K reference has move 0.14 PMM. So it seems extremely stable. The calibration resistors, except for the far ends (less than 100R, above 190K) have drifted less than 0.5 ppm.

The negatives: It was built in 1989 or possible 1990 so a very early 5700a. I could see that they figured things out in the early production runs with some few improvements. But just speculation as from what I see the one I have is extremely stable.

Straight out of calibration it measures around 0.3 PPM on 10V using a couple of 3458A (calibrated at the same time with same freshly calibrated standard) who all agree on this with +/- 0.1 PPM. I believe this is also very good. Probably a component of luck, as 0.1PPM is very low to detect even for a 3458a.

So seems this was a lucky purchase. Quite much money for a toy though.... It will probably maintain value quite ok. But pretty difficult to transport in case deciding to sell it later....

With only 1 year run time I am debating how to do with capacitor and carbon composition resistors. They all look good and way less runtime than capacitors are specified for. Keeping them is a risk, swapping them is also a risk. Ill probably leave them as they are for a couple of month at least.

Some month ago I googled 1 day late and missed a government surplus auction where an "out of service" 5720A and 732B plus some other less exciting gear was sold for 4K USD. Grrrrr! I suspect they were not very much out of service and should be quite easily repairable, particularly the 732B.

Im working in my 5700A vs 3458a python compare program now.
 

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #10 on: April 18, 2025, 11:11:43 am »
Here is a printout from latest version of the 5700A vs 3458a compare program.

The 5700a is not capable of calibrating a 3458a on its own without characterization. But as I have 6 different 3458a, it should at least give a hint on how well the different 3458a are performing. And if the 3458a is in good agreement on something where there is a significant measurement error, then this be a hint that the 5700a is not doing so well at that output point.


Starting Fluke 5700a HPAK 3458a comparator
Start time: 2025-04-18 17:23:01
DCV
Input=      +0.1 Freq =  0  Measure= +0.1000001  Err PPM= -1.29 Range= .1 Stdev= 0.421 ActR =   0.1
Input=      -0.1 Freq =  0  Measure= -0.09999928 Err PPM= +7.15 Range= .1 Stdev= -0.619 ActR =  -0.1
Input=        +1 Freq =  0  Measure= +1          Err PPM= -0.33 Range= 1.0 Stdev= 0.100 ActR =     1
Input=        -1 Freq =  0  Measure= -0.9999997  Err PPM= +0.34 Range= 1.0 Stdev= -0.082 ActR =    -1   
Input=        +1 Freq =  0  Measure= +1          Err PPM= -0.27 Range= 10 Stdev= 0.240 ActR =     1   
Input=        -1 Freq =  0  Measure= -0.9999995  Err PPM= +0.50 Range= 10 Stdev= -0.253 ActR =    -1   
Input=       +10 Freq =  0  Measure= +10         Err PPM= -0.12 Range= 10 Stdev= 0.033 ActR =    10   
Input=       -10 Freq =  0  Measure= -10         Err PPM= -0.23 Range= 10 Stdev= -0.034 ActR =   -10   
Input=      +100 Freq =  0  Measure= +100        Err PPM= -0.13 Range= 100 Stdev= 0.165 ActR =   100   
Input=      -100 Freq =  0  Measure= -99.99996   Err PPM= +0.39 Range= 100 Stdev= -0.155 ActR =  -100   
Input=        +1 Freq =  0  Measure= +1          Err PPM= +0.02 Range= 10 Stdev= 0.248 ActR =     1   
Input=        +2 Freq =  0  Measure= +2          Err PPM= +0.20 Range= 10 Stdev= 0.109 ActR =     2   
Input=        +3 Freq =  0  Measure= +3.000001   Err PPM= -0.39 Range= 10 Stdev= 0.130 ActR =     3   
Input=        +4 Freq =  0  Measure= +4.000001   Err PPM= -0.22 Range= 10 Stdev= 0.088 ActR =     4   
Input=        +5 Freq =  0  Measure= +5.000001   Err PPM= -0.28 Range= 10 Stdev= 0.056 ActR =     5   
Input=        +6 Freq =  0  Measure= +6.000001   Err PPM= -0.24 Range= 10 Stdev= 0.066 ActR =     6   
Input=        +7 Freq =  0  Measure= +7.000002   Err PPM= -0.24 Range= 10 Stdev= 0.053 ActR =     7   
Input=        +8 Freq =  0  Measure= +8.000002   Err PPM= -0.27 Range= 10 Stdev= 0.043 ActR =     8   
Input=        +9 Freq =  0  Measure= +9.000003   Err PPM= -0.28 Range= 10 Stdev= 0.048 ActR =     9   
Input=       +10 Freq =  0  Measure= +10         Err PPM= -0.19 Range= 10 Stdev= 0.040 ActR =    10   
Input=       +11 Freq =  0  Measure= +11         Err PPM= -0.16 Range= 10 Stdev= 0.068 ActR =    11   
Resistance
Input=        +1 Freq =  0  Measure= +1.000018   Err PPM= +29.46 Range= 10 Stdev= 19.441 ActR = 1.0000472   
Input=       +10 Freq =  0  Measure= +9.999714   Err PPM= -1.11 Range= 10 Stdev= 2.372 ActR = 9.999703   
Input=      +100 Freq =  0  Measure= +99.99408   Err PPM= +0.40 Range= 100 Stdev= 2.273 ActR = 99.99412   
Input=     +1000 Freq =  0  Measure= +999.9419   Err PPM= +0.77 Range= 1.0E3 Stdev= 0.287 ActR = 999.9427   
Input=    +10000 Freq =  0  Measure= +9999.366   Err PPM= +1.12 Range= 1.0E4 Stdev= 0.596 ActR = 9999.377   
Input=   +100000 Freq =  0  Measure= +99993.66   Err PPM= +4.90 Range= 1.0E5 Stdev= 0.341 ActR = 99994.15   
DCI
Input=    +1E-07 Freq =  0  Measure= +1.002715E-07 Err PPM= -2714.58 Range= 1.0E-6 Stdev= 288.250 ActR = 1E-07   
Input=    -1E-07 Freq =  0  Measure= -9.972756E-08 Err PPM= +2724.41 Range= 1.0E-7 Stdev= -306.881 ActR = -1E-07   
Input=    +1E-06 Freq =  0  Measure= +1.000234E-06 Err PPM= -234.11 Range= 1.0E-5 Stdev= 43.916 ActR = 1E-06   
Input=    -1E-06 Freq =  0  Measure= -9.997363E-07 Err PPM= +263.68 Range= 1.0E-5 Stdev= -62.031 ActR = -1E-06   
Input=    +1E-05 Freq =  0  Measure= +1.000013E-05 Err PPM= -13.39 Range= 1.0E-5 Stdev= 3.446 ActR = 1E-05   
Input=    -1E-05 Freq =  0  Measure= -9.999608E-06 Err PPM= +39.25 Range= 1.0E-5 Stdev= -5.250 ActR = -1E-05   
Input=   +0.0001 Freq =  0  Measure= +9.999895E-05 Err PPM= +10.50 Range= 1.0E-4 Stdev= 1.792 ActR = 0.0001   
Input=   +0.0001 Freq =  0  Measure= +9.999896E-05 Err PPM= +10.37 Range= 1.0E-4 Stdev= 1.701 ActR = 0.0001   
Input=   -0.0001 Freq =  0  Measure= -9.999846E-05 Err PPM= +15.42 Range= 1.0E-4 Stdev= -1.131 ActR = -0.0001   
Input=    +0.001 Freq =  0  Measure= +0.000999996 Err PPM= +4.00 Range= 1.0E-3 Stdev= 1.267 ActR = 0.001   
Input=    -0.001 Freq =  0  Measure= -0.000999991 Err PPM= +8.97 Range= 1.0E-3 Stdev= -1.097 ActR = -0.001   
Input=     +0.01 Freq =  0  Measure= +0.009999963 Err PPM= +3.67 Range= .01 Stdev= 0.900 ActR =  0.01   
Input=     -0.01 Freq =  0  Measure= -0.009999955 Err PPM= +4.55 Range= .01 Stdev= -0.880 ActR = -0.01   
Input=      +0.1 Freq =  0  Measure= +0.1000015  Err PPM= -15.25 Range= .1 Stdev= 2.217 ActR =   0.1   
Input=      -0.1 Freq =  0  Measure= -0.1000016  Err PPM= -15.87 Range= .1 Stdev= -0.678 ActR =  -0.1   
Input=        +1 Freq =  0  Measure= +0.9999173  Err PPM= +82.70 Range= 1.0 Stdev= 3.675 ActR =     1   
Input=        -1 Freq =  0  Measure= -1.000037   Err PPM= -36.60 Range= 1.0 Stdev= -2.532 ActR =    -1   
ACV Sync
Input=        +1 Freq = 5E+01  Measure= +1.00001    Err PPM= -10.02 Range= 1.0 Stdev= 4.750 ActR =     1   
Input=        +1 Freq = 1E+03  Measure= +1.000021   Err PPM= -20.76 Range= 1.0 Stdev= 3.448 ActR =     1   
Input=        +1 Freq = 1E+04  Measure= +0.9999503  Err PPM= +49.72 Range= 1.0 Stdev= 3.379 ActR =     1   
Input=        +1 Freq = 3E+05  Measure= +1.001562   Err PPM= -1562.09 Range= 1.0 Stdev= 8.620 ActR =     1   
Input=       +10 Freq = 5E+01  Measure= +10.00014   Err PPM= -14.29 Range= 10 Stdev= 3.603 ActR =    10   
Input=       +10 Freq = 1E+03  Measure= +10.00033   Err PPM= -33.29 Range= 10 Stdev= 2.647 ActR =    10   
Input=       +10 Freq = 1E+04  Measure= +10.00009   Err PPM= -8.74 Range= 10 Stdev= 2.700 ActR =    10   
Input=       +10 Freq = 3E+05  Measure= +9.999868   Err PPM= +13.17 Range= 10 Stdev= 9.818 ActR =    10   
ACV Ana
Input=        +1 Freq = 5E+01  Measure= +0.9999016  Err PPM= +98.36 Range= 1.0 Stdev= 4.203 ActR =     1   
Input=        +1 Freq = 1E+03  Measure= +1.000038   Err PPM= -37.51 Range= 1.0 Stdev= 2.317 ActR =     1   
Input=        +1 Freq = 1E+04  Measure= +0.9999715  Err PPM= +28.45 Range= 1.0 Stdev= 1.536 ActR =     1   
Input=       +10 Freq = 5E+01  Measure= +9.999651   Err PPM= +34.86 Range= 10 Stdev= 7.092 ActR =    10   
Input=       +10 Freq = 1E+03  Measure= +10.00052   Err PPM= -52.18 Range= 10 Stdev= 1.690 ActR =    10   
Input=       +10 Freq = 1E+04  Measure= +10.00042   Err PPM= -42.38 Range= 10 Stdev= 1.222 ActR =    10   
Input=       +10 Freq = 3E+05  Measure= +9.978738   Err PPM= +2126.18 Range= 10 Stdev= 0.662 ActR =    10   
ACV Random
Input=        +1 Freq = 1E+03  Measure= +0.9998604  Err PPM= +139.59 Range= 1.0 Stdev= 426.008 ActR =     1
Input=        +1 Freq = 1E+04  Measure= +0.999744   Err PPM= +256.05 Range= 1.0 Stdev= 848.331 ActR =     1
Input=       +10 Freq = 5E+01  Measure= +9.9973     Err PPM= +269.97 Range= 10 Stdev= 555.454 ActR =    10
Input=       +10 Freq = 1E+03  Measure= +9.997369   Err PPM= +263.13 Range= 10 Stdev= 489.000 ActR =    10
Input=       +10 Freq = 1E+04  Measure= +9.998775   Err PPM= +122.51 Range= 10 Stdev= 1226.083 ActR =    10
Input=       +10 Freq = 3E+05  Measure= +9.998691   Err PPM= +130.89 Range= 10 Stdev= 1429.296 ActR =    10
ACI
Input=     +0.01 Freq = 5E+01  Measure= +4.384965E-08 Err PPM= +999995.62 Range= 1.0E-4 Stdev= 49499.949 ActR =  0.01
Input=     +0.01 Freq = 1E+03  Measure= +0.01000109 Err PPM= -108.61 Range= .01 Stdev= 10.016 ActR =  0.01
Input=     +0.01 Freq = 1E+04  Measure= +0.01000461 Err PPM= -461.30 Range= .01 Stdev= 3.504 ActR =  0.01
Input=      +0.1 Freq = 5E+01  Measure= +0.1000076  Err PPM= -75.69 Range= .1 Stdev= 10.890 ActR =   0.1
Input=      +0.1 Freq = 1E+03  Measure= +0.1000173  Err PPM= -172.82 Range= .1 Stdev= 1.520 ActR =   0.1
Input=      +0.1 Freq = 1E+04  Measure= +0.1001535  Err PPM= -1535.20 Range= .1 Stdev= 6.225 ActR =   0.1
Input=        +1 Freq = 5E+01  Measure= +0.9999388  Err PPM= +61.22 Range= 1.0 Stdev= 9.825 ActR =     1
Input=        +1 Freq = 1E+03  Measure= +1.000198   Err PPM= -197.70 Range= 1.0 Stdev= 1.429 ActR =     1
Input=        +1 Freq = 1E+04  Measure= +1.012067   Err PPM= -12066.79 Range= 1.0 Stdev= 1.820 ActR =     1
End Time: 2025-04-18 18:29:39
Calibration completed in 66.6 minutes
 

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
Re: Python etc for Fluke 5700a control and calibration of equipment
« Reply #11 on: April 24, 2025, 12:43:14 am »
Would anyone have some list of replacement components for 5700a, like capacitors and carbon composition resistors including size and lead spacing of capacitors? Maybe some cut and paste from some old order of components? The service manual is of course very helpful, but does not say size of capacitors, and does not give ideas on what resistors to use to replace carbon composition resistors.
 

Offline Arhigos

  • Regular Contributor
  • *
  • Posts: 99
  • Country: gr
There is soooo many board revisions for 5700a, so even if you get someone's list of components, values and sizes it may not work for you..
So the only way is to do it board by board manually  :-//

(but i think, there is youtuber who did a full recap on one of those calibrators, you may ask him for his BOM)

« Last Edit: Today at 11:51:51 am by Arhigos »
 
The following users thanked this post: aronake

Offline aronakeTopic starter

  • Frequent Contributor
  • **
  • Posts: 317
  • Country: se
There is soooo many board revisions for 5700a, so even if you get someone's list of components, values and sizes it may not work for you..
So the only way is to do it board by board manually  :-//


Thats a good point, but likely very much is same, and also helpful to see what resistors etc someone else have chosen to replace the carbon componstion resistors and tantalum caps.

Marco Reps didnt have his list anymore unfortunateley.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf