Exemple #1
0
from agilentmultimeter import AgilentMultimeter

# Config settings
countergpib = 5
multigpib = None
vrange = 1
vresolution = 0.0001
gatetime = 0.1 # in seconds

# Setting up frequency counter
counter = AgilentCounter(gpib = countergpib)
if (counter == None):
    exit
counter.reset()
counter.setupFast()
counter.write(":FUNC 'FREQ 1'")
counter.setupGating(gatetime)

# Setting up multimeter
multi = AgilentMultimeter(gpib = multigpib) if multigpib else None

if multi:
    multi.reset()
    # 5-1/2 digits fast
    multi.write("CONF:VOLT:DC %d" %(vrange))
    multi.write("VOLT:DC:NPLC 0.2")
    multi.write("TRIG:SOUR IMM")
    # Need to do one reading to set up Wait-For-Trigger state!
    multi.ask("READ?")

# Setting up output file
Exemple #2
0
countergpib = config.getint('Setup','counter_GPIB')
measureconf = config.items('Measurements')

## Convert measurement parameters into numbers
measureconfarray = []
for m in measureconf:
    measureconfarray += [[float(m[0]), int(m[1])]]
measureconfarray.sort()

# Setting up frequency counter
counter = AgilentCounter(gpib = countergpib)
if (counter == None):
    exit
counter.reset()
counter.setupFast()
counter.write(":FUNC 'FREQ 1'")
counter.write(":FREQ:ARM:STAR:SOUR IMM")
counter.write(":FREQ:ARM:STOP:SOUR TIM")

for measure in measureconfarray:
    gatetime = measure[0]
    repeats = measure[1]

    counter.write(":FREQ:ARM:STOP:TIM %f" %(gatetime))
    counter.write(":INIT:CONT ON")
    counter.write(":INIT")

    print "Averaging time: %g" %(gatetime)

    # # Setting up output file
    datafile = "allan_%s_%g.log" %(strftime("%y%m%d_%H%M%S"), gatetime)