Script execution

This commit is contained in:
gobbo_a
2017-06-13 15:11:54 +02:00
parent ce800a2cfa
commit 6f0c80d1af
+14 -12
View File
@@ -2,7 +2,6 @@ import ch.psi.pshell.epics.Positioner as Positioner
import ch.psi.pshell.epics.ChannelDouble as ChannelDouble
dry_run = True
do_elog = False
if get_exec_pars().source == CommandSource.ui:
start = -30.0
stop = 30.0
@@ -18,6 +17,13 @@ else:
lat = args[4]
plt = args[5]
if plt is not None:
plt.setStyle(plt.Style.ErrorY)
plt.addSeries(LinePlotErrorSeries("Values"))
plt.getAxis(plt.AxisId.X).setLabel("RF Gun Phase")
plt.getAxis(plt.AxisId.Y).setLabel("SINEG01-DICT215:B1_CHARGE")
if dry_run:
bph = Positioner("Beam phase", "SINEG01-RSYS:SET-BEAM-PHASE-SIM", "SINEG01-RSYS:SET-BEAM-PHASE-SIM")
q = ChannelDouble('ICT-Q', "SINEG01-DICT215:B1_CHARGE-SIM")
@@ -44,11 +50,17 @@ rph.monitored=True
rph0 = rph.read()
#Record callback: uptate of output plot
def after_sample(record, scan):
if plt is not None:
plt.getSeries(0).appendData(record.positions[0], record.values[0].mean, record.values[0].stdev)
try:
rph_averager = create_averager(rph, nb, 0.1) # Set polling time to -1 for BS data to get all messages
q_averager = create_averager(q, nb, 0.1)
q_averager.monitored=True
r = lscan(bph, (rph_averager, q_averager), start, stop, step, latency=lat)
r = lscan(bph, (rph_averager, q_averager), start, stop, step, latency=lat, after_read = after_sample)
beamphase = r.getPositions(0)
rfphase = [val.mean for val in r.getReadable(0)]
rfphaserms = [val.stdev for val in r.getReadable(0)]
@@ -68,16 +80,6 @@ rph_ref = rfphase[index_max] - 80
print "Beam phase reference = ", bph_ref
print "RF phase reference = ", rph_ref
if do_elog:
if get_option("Generated data file:\n" + get_exec_pars().path +"\n\n" + "Save to ELOG?", "YesNo") == "Yes":
log_msg = "Start: %0.1f" % start + "deg\n"
log_msg = log_msg + "Stop: %0.1f" % stop + "deg\n"
log_msg = log_msg + "Step: %0.1f" % step + "deg\n"
log_msg = log_msg + "Nb samples: %0.0f" % nb + "\n"
log_msg = log_msg + "Latency: %0.3f" % lat + "s\n"
log_msg = log_msg + "Data file: " + get_exec_pars().path
elog("Schottky Scan", log_msg, get_plot_snapshots())
set_return([bph_ref, rph_ref])