Files
x12sa/script/local.py_orig
2016-10-11 08:09:42 +02:00

73 lines
5.5 KiB
Plaintext

###################################################################################################
# Deployment specific global definitions - executed after startup.py
###################################################################################################
import ch.psi.pshell.device.Stoppable as Stoppable
class PicoAmp(DeviceBase, Stoppable):
def __init__(self, name, prefix):
DeviceBase.__init__(self, name)
self.prefix = prefix
self.array_data = create_channel_device(prefix+"image1:ArrayData", type='[d', size=None, deviceName=name + " ArrayData")
self.ts_total = create_channel_device(prefix+"Current1:TSTotal", type='[d', size=None, deviceName=name + " Cur1 TSTotal")
self.ts_net = create_channel_device(prefix+"Current1:TSNet", type='[d', size=None, deviceName=name + " Cur1 TSNet")
self.ts_min = create_channel_device(prefix+"Current1:TSMinValue", type='[d', size=None, deviceName=name + " Cur1 TSMin")
self.ts_max = create_channel_device(prefix+"Current1:TSMaxValue", type='[d', size=None, deviceName=name + " Cur1 TSMax")
self.ts_minx = create_channel_device(prefix+"Current1:TSMinX", type='[d', size=None, deviceName=name + " Cur1 TSMaxX")
self.ts_maxx = create_channel_device(prefix+"Current1:TSMeanValue", type='[d', size=None, deviceName=name + " Cur1 TSMean")
self.ts_sigma = create_channel_device(prefix+"Current1:TSSigma", type='[d', size=None, deviceName=name + " Cur1 TSSigma")
self.ts_total2 = create_channel_device(prefix+"Current2:TSTotal", type='[d', size=None, deviceName=name + " Cur2 TSTotal")
self.ts_net2 = create_channel_device(prefix+"Current2:TSNet", type='[d', size=None, deviceName=name + " Cur2 TSNet")
self.ts_min2 = create_channel_device(prefix+"Current2:TSMinValue", type='[d', size=None, deviceName=name + " Cur2 TSMin")
self.ts_max2 = create_channel_device(prefix+"Current2:TSMaxValue", type='[d', size=None, deviceName=name + " Cur2 TSMax")
self.ts_minx2 = create_channel_device(prefix+"Current2:TSMinX", type='[d', size=None, deviceName=name + " Cur2 TSMaxX")
self.ts_maxx2 = create_channel_device(prefix+"Current2:TSMeanValue", type='[d', size=None, deviceName=name + " Cur2 TSMean")
self.ts_sigma2 = create_channel_device(prefix+"Current2:TSSigma", type='[d', size=None, deviceName=name + " Cur2 TSSigma")
self.ts_total3 = create_channel_device(prefix+"Current3:TSTotal", type='[d', size=None, deviceName=name + " Cur3 TSTotal")
self.ts_net3 = create_channel_device(prefix+"Current3:TSNet", type='[d', size=None, deviceName=name + " Cur3 TSNet")
self.ts_min3 = create_channel_device(prefix+"Current3:TSMinValue", type='[d', size=None, deviceName=name + " Cur3 TSMin")
self.ts_max3 = create_channel_device(prefix+"Current3:TSMaxValue", type='[d', size=None, deviceName=name + " Cur3 TSMax")
self.ts_minx3 = create_channel_device(prefix+"Current3:TSMinX", type='[d', size=None, deviceName=name + " Cur3 TSMaxX")
self.ts_maxx3 = create_channel_device(prefix+"Current3:TSMeanValue", type='[d', size=None, deviceName=name + " Cur3 TSMean")
self.ts_sigma3 = create_channel_device(prefix+"Current3:TSSigma", type='[d', size=None, deviceName=name + " Cur3 TSSigma")
self.ts_total4 = create_channel_device(prefix+"Current4:TSTotal", type='[d', size=None, deviceName=name + " Cur4 TSTotal")
self.ts_net4 = create_channel_device(prefix+"Current4:TSNet", type='[d', size=None, deviceName=name + " Cur4 TSNet")
self.ts_min4 = create_channel_device(prefix+"Current4:TSMinValue", type='[d', size=None, deviceName=name + " Cur4 TSMin")
self.ts_max4 = create_channel_device(prefix+"Current4:TSMaxValue", type='[d', size=None, deviceName=name + " Cur4 TSMax")
self.ts_minx4 = create_channel_device(prefix+"Current4:TSMinX", type='[d', size=None, deviceName=name + " Cur4 TSMaxX")
self.ts_maxx4 = create_channel_device(prefix+"Current4:TSMeanValue", type='[d', size=None, deviceName=name + " Cur4 TSMean")
self.ts_sigma4 = create_channel_device(prefix+"Current4:TSSigma", type='[d', size=None, deviceName=name + " Cur4 TSSigma")
self.setChildren([self.array_data, self.ts_total,self.ts_net, self.ts_min, self.ts_max, self.ts_minx, \
self.ts_maxx, self.ts_sigma, \
self.ts_total2,self.ts_net2, self.ts_min2, self.ts_max2, self.ts_minx2, \
self.ts_maxx2, self.ts_sigma2, \
self.ts_total3,self.ts_net3, self.ts_min3, self.ts_max3, self.ts_minx3, \
self.ts_maxx3, self.ts_sigma3, \
self.ts_total4,self.ts_net4, self.ts_min4, self.ts_max4, self.ts_minx4, \
self.ts_maxx4, self.ts_sigma4
])
def start(self):
stop()
time.sleep(0.2)
caputq(self.prefix + "Acquire", "Acquire")
caputq(self.prefix + "Current1:TSControl", "Erase/Start")
caputq(self.prefix + "Current2:TSControl", "Erase/Start")
caputq(self.prefix + "Current3:TSControl", "Erase/Start")
caputq(self.prefix + "Current4:TSControl", "Erase/Start")
def stop(self):
caputq(self.prefix + "Acquire", "Stop")
def isReady(self):
return caget (self.prefix + "Current4:TSAcquiring") == "Done"
add_device(PicoAmp("pico_amp", "X12SA-PC-BPM5:AH501:"), force = True)
#add_device(PicoAmp("pico_amp_2", "X12SA-PC-BPM5:AH501:"), force = True)