Files
x12sa/script/Bpm6ParallelScan.py
2017-06-01 16:35:38 +02:00

41 lines
1.2 KiB
Python

TEST = False
if TEST:
set_exec_pars(path="/sls/X12SA/data/x12saop/Data10/bpm/{date}_{time}_{name}")
#rel_x = pico_bpm6_new_x.read()
rel_x = pico_bpm6_ts_x.read()
class SensorXAxis(ReadableArray):
def __init__(self, sensor):
self.sensor = sensor
def read(self):
return [x + self.sensor.getTimestamp() for x in rel_x]
def getSize(self):
return len(rel_x) #only reads if cache is None
def scan(sensor):
x_axis = SensorXAxis(sensor)
set_device_alias(x_axis, sensor.name+"_x_axis")
mscan(sensor, [sensor, x_axis], 100, title = sensor.name) # 100 samples
#mscan(sensor, [sensor, x_axis], -1, 2.0) #Samples for 2s
#tscan([sensor, x_axis], 10, 0.1) #10 samples every 0.1s
sensors = [pico_bpm6_ts_sumall, pico_bpm6_ts_cur1, pico_bpm6_ts_cur2, pico_bpm6_ts_cur3, pico_bpm6_ts_cur4]
setup_plotting(line_plots = sensors, plot_list =sensors )
for sensor in sensors: sensor.setMonitored(True)
caput ("X12SA-ES1-TTL:OUT_02", "HIGH")
try:
parallelize([scan, [pico_bpm6_ts_sumall]], [scan, [pico_bpm6_ts_cur1]], [scan, [pico_bpm6_ts_cur2]], [scan, [pico_bpm6_ts_cur3]], [scan, [pico_bpm6_ts_cur4]])
finally:
for sensor in sensors: sensor.setMonitored(False)
caput ("X12SA-ES1-TTL:OUT_02", "LOW")