Keithley 2000 benchmeter

Model 2000

 

Deze meter heb ik nieuw gekocht om een goede referentie te hebben mbt de calibrators. hij kwam NIST tracable gecalibreerd via Keithley Nederland direct uit Amerika. Daarna gelijk de calibrators goed gezet en de standaardcellen gemeten. Die cellen zijn in 20 jaar stilstaan maar 16uV verlopen dus voorlopig zit ik voor een amateur calibrator en volt-nut wel goed.

Ik twijfelde tussen de Fluke 8846 en de Agilent 34410. Maar omdat ik op zoek was naar info over nano volt meten en net dit boek (aanrader)  aan het lezen was. Kwam ik op de site van Keithley terecht en zag daar de 2000. Gezien mijn goede ervaring met de 199 was ik wel benieuwd.

low level measurements

Er was echter geen prijs van te vinden. Een mailtje naar Keithley resulteerde in een snel antwoord terug en een offerte. Ik werd als particulier heel netjes geholpen en de prijs was blijkbaar pas verlaagd en nu zelfs gunstiger in prijs dan de twee andere. Hij wordt al dik 10 jaar gemaakt en dat is ook wel een goed teken. Dit is het simpelste model, ze maken verder alleen heel specialistisch en heel spul.

Hij mist twee dingen die ik interessant vond aan de andere twee. Een tweede meet regel en een internet aansluiting ivm loggen. De meetsnoertjes zijn kwalitatief uitermate goed en degelijk, maar zien er wel erg “lullig” en simpel uit. Je eerste idee is: ehh, hoort dit niet bij een bouwmarkt meter.  Een donker rode beetje paarsige kleur van de pluskabel, alsof hij net zo oud is als mijn AVO8 en redelijk antiek ogende probes. In tegenstelling tot bv mijn Agilent multimeter, modern ogende soepele siliconekabel met hele mooie probes waar een hele set met extra probes, klemmetjes en clips bij zat.

De Agilent heeft een doorpieper die pas vanaf 30 ohm piept en een diode stand die maar van 0,3 tot 1V werkt. Deze functie gebruik ik ivm reparaties erg veel. de Fluke had wel een instelbare functie tot 10V. net als de 2000. De 2000 heeft de accuratie die ik zocht, een instelbare pieper (en supersnel), diodetest tot 10V, handig voor kleine zeners. Is TRMS en heeft in het 100mV bereik een resolutie van 100nV en dan ook nog een paar honderd euro goedkoper. dus de keus was snel gemaakt en na een weekje wachten stond er een enorme doos op de stoep,  over veilig verpakken gesproken.

Hij kan via RS232 en een linux programma als cutecom via usb-RS232 kabel worden bestuurd. Er is ook software van de meter zelf maar helaas werkt Windhoos7 niet met mijn usb-rs232 kabel samen.

RS232 communicatie

I wrote a very crude program to use the 2000 for logging. It is written in Python. You can choose an interval time and a total duration. The data is saved in a file. You have to change the path for your system. It also draws a graph but I’m no programmer so that part is not like it should. If a real programmer can use the idea and knows how to improve it I would like to hear.  The data logging part works. I read the file in open office spreathsheet and plot a graph. It reads the full resolution of the ADC and that are a lot of digits….(see graph)

An allmost empty 9V battery , heating up while the evening sun passed over it

An allmost empty 9V battery , heating up while the evening sun passed over it

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#

import serial
import matplotlib.pyplot as plt
import numpy as np
import time
import datetime

tijd=datetime.datetime.now()

print(tijd)

# vraag om de instellingen
filename=raw_input(“Filename: “)
filename=filename +”.dat”
tijd=input(“Time between measurements in minutes: “)  # or part of a minute. I tested down to 0.2 minutes
duur=input(“Total time in minutes: “)

duur=float(duur)
duurMetingMinuten=int(duur)
tijd=float(tijd)
pauzeSeconde=int(tijd)
spacingMinuten=tijd*60

samples=duur/tijd
samples=abs(samples)
samples=int(samples)

out=”
bestand=”

print ‘Every measurement is logged during ‘ +str(duur)+’ minutes, each ‘+str(tijd)+ ‘ minutes ‘+filename

 

Dir=’/home/fred/data/’ #Full path to file where data is saved to
logfile = Dir + filename
print “%s”%(logfile)

def teken(y):
plt.figure() #new graph
x=np.arange(0, samples, 0.01)
y=y+x-x
plt.plot(x,y,’r-‘)# rode baselijn
plt.title(‘Log van Keithley 2000’)
plt.xlabel(‘samples’)
plt.ylabel(‘Volt’)
plt.show()
return

ser = serial.Serial(
port=’/dev/ttyUSB0′,
baudrate=9600,
bytesize=serial.EIGHTBITS,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
xonxoff = 1,
timeout =1 )

ser.open()
ser.isOpen()

# returns type and serialnumber meter
ser.write(‘*IDN?\r\n’)
time.sleep(1)
naam = ser.read(50)
naam=naam.rstrip()
print “%s”%(naam)

for teller in range(0,samples):
out=”
ser.write(‘:FETCH?\r\n’) # geeft typenummer etc
time.sleep(2)
out = ser.read(25) # reads 25 bytes , that is one measurement
out = str(out)
out = out[:16]
tijd=datetime.datetime.now()
tijdnu=str(tijd)
tijdnu=tijdnu[11:19]
if teller > 0:
print “%s %s %s”%(teller, tijdnu, out)
bestand = bestand + out
#open that file append mode
with open(logfile,”a”) as file_a:
file_a.write(str(teller) + ‘ ‘+ tijdnu +’ ‘+str(out)+’\n’)
time.sleep(spacingMinuten)

file_a.close
ser.close()

for teller1 in range(0,len(bestand)):
yt=”
van=teller1
tot=teller1+14
yt=bestand[van:tot]
y=float(yt)
print(y)
teken(y)
if teller1 << len(bestand)-14:
teller1=teller1+14
else:
teller1== len(bestand)

This entry was posted in Measurement gear, Multimeters. Bookmark the permalink.

Comments are closed.