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(pico_bpm6_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]]) finally: for sensor in sensors: sensor.setMonitored(False) caput ("X12SA-ES1-TTL:OUT_02", "LOW")