34 lines
1015 B
Python
34 lines
1015 B
Python
ENERGIES = [845.0, 852.0]
|
|
ACC_TIME = 1.0
|
|
ACC_SAMPLES = 100
|
|
|
|
cadc1_av = create_averager(CADC1, ACC_SAMPLES, interval = ACC_TIME/100, name = "CADC1", monitored=-1)
|
|
cadc2_av = create_averager(CADC2, ACC_SAMPLES, interval = ACC_TIME/100, name = "CADC2", monitored=-1)
|
|
cadc3_av = create_averager(CADC3, ACC_SAMPLES, interval = ACC_TIME/100, name = "CADC3", monitored=-1)
|
|
|
|
class TeyNorm(Readable):
|
|
def read(self):
|
|
return cadc1_av.take().doubleValue() / cadc2_av.take().doubleValue()
|
|
|
|
class DiodeNorm(Readable):
|
|
def read(self):
|
|
return cadc3_av.take().doubleValue() / cadc2_av.take().doubleValue()
|
|
|
|
|
|
sensors = [cadc1_av, cadc2_av, cadc3_av, TeyNorm(),DiodeNorm(), energy_readback,Temperature]
|
|
|
|
|
|
def after_readout(record, scan):
|
|
pass
|
|
|
|
def before_pass(pass_num):
|
|
print "pass: ",pass_num
|
|
en = ENERGIES[((pass_num-1)%2)]
|
|
set_energy(en)
|
|
time.sleep(ACC_TIME)
|
|
|
|
|
|
|
|
ret= tscan(sensors, 1, 0, passes = 1000, before_pass = before_pass, after_read=after_readout)
|
|
|