Added Sensors and Spreadsheet

This commit is contained in:
gac-furka
2023-06-01 12:03:25 +02:00
parent f1887e5f22
commit 4f3e750e01
5 changed files with 34 additions and 10 deletions

View File

@ -21,6 +21,7 @@ channels = [
# "SATES31-CAMS187-RIXS1:SPC_wgt",
# "SATES31-CAMS187-RIXS1:Spectrum",
# "SATES31-CAMS187-RIXS1:evt_list",
"SATES30-RIXS-CAM01:FPICTURE",
"SATES30-CAMS182-GIGE2:FPICTURE",
"SATES31-CAMS187-RIXS1:FPICTURE",
"SATES31-CAMS187-RIXS1:x_profile",
@ -43,7 +44,6 @@ channels = [
"SLAAT31-LTIM01-EVR0:CALCS",
"SAT-CVME_TIFALL5:EvtSet",
"SAT-CVME_TIFALL6:EvtSet"
]
pvs = [
@ -75,6 +75,16 @@ pvs = [
"SLAAT-LGEN:DLY_OFFS1",
"SLAAT01-LTIM-PDLY:DELAY_Z_OFFS",
"SATOP21-PMOS127-2D:SPECTRUM_X",
"SATOP21-PMOS127-2D:SPECTRUM_Y"
"SATOP21-PMOS127-2D:SPECTRUM_Y",
"SATES30-CAMS182-GIGE1_sp1:x_center_of_mass",
"SATES30-CAMS182-GIGE1_sp1:y_center_of_mass",
"SLAAT31-LCAM-C801:FIT-XPOS_EGU",
"SLAAT31-LCAM-C801:FIT-YPOS_EGU",
# "SLAAT31-LCAM-C801:FIT-XEGU-ARRAY",
"SLAAT31-LCAM-C802:FIT-XPOS_EGU",
"SLAAT31-LCAM-C802:FIT-YPOS_EGU",
# "SLAAT31-LCAM-C802:FIT-XEGU-ARRAY",
"SATES30-CAMS182-GIGE2_sp1:x_center_of_mass",
"SATES30-CAMS182-GIGE2_sp1:y_center_of_mass"
]

View File

@ -16,7 +16,7 @@ from slic.utils import as_shortcut, Marker
from spreadsheet import overview, print_overview, print_line_for_spreadsheet
from channels import channels, pvs
from sensors import *
from undulator import Undulators
from undulator import Mono
@ -75,7 +75,7 @@ n_unds = [
15, 16, 17, 18, 19, 20, 21, 22
]
chic_fudge_offset = 0
Mon2Unds_offset = 1.8
Mon2Unds_offset = 3.0
und = Undulators(n_unds, n_und_ref, chic_fudge_offset, name="z Athos Undulators")
#und = Undulators(name="Undulators")
@ -128,8 +128,8 @@ TwoTRY=Motor("SATES30-ARES:MOT_2TRY.VAL", name = "Diff 2TRY")
tth_scan = Coupled_tth(delta=0.3885, name="theta 2theta")
GRX = Motor("SATES30-RIXS:MOT_GRX.VAL", name = "Pitch grating")
DTZ = Motor("SATES30-RIXS:MOT_DTZ.VAL", name = "DTZ (r2)")
#fake_mu = HistoryDummy.init_from(mu)
#fake_chi = HistoryDummy.init_from(chi)
@ -158,25 +158,29 @@ laser_WP = Motor("SLAAT31-LMOT-M801:MOT", name="Laser WavePlate")
#overview.Thz_delay = Thz_delay
from spreadsheet import overview, print_overview, print_line_for_spreadsheet, spreadsheet_info
from slic.core.acquisition.spreadsheet import Spreadsheet
spreadsheet = Spreadsheet(spreadsheet_info, placeholders=["comment", "sample"], host="satesf-cons-03", port=9090)
instrument = "furka"
pgroup = "p20452" #Commissioning p group
pgroup = "p21162" #Commissioning p group
#check_intensity = PVCondition("SATFE10-PEPG046:FCUP-INTENSITY-CAL", vmin=5, vmax=None, wait_time=3, required_fraction=0.8)
check_intensity = PVCondition("SATBD01-DBPM060:Q2", vmin=5, vmax=None, wait_time=1, required_fraction=0.8)
#check_intensity = None
daq = SFAcquisition(instrument, pgroup, default_channels=channels, default_pvs=pvs, rate_multiplicator=1)
daq = SFAcquisition(instrument, pgroup, default_channels=channels, default_pvs=pvs, rate_multiplicator=1, spreadsheet=spreadsheet)
daq.update_config_pvs()
#daq = FakeAcquisition(instrument, pgroup, default_channels=channels, default_pvs=pvs, rate_multiplicator=1)
#daq = BSAcquisition .... TBI
#daqPV = PVAcquisition(instrument, pgroup, default_channels=live_channels)
scan = Scanner(default_acquisitions=[daq], condition=check_intensity)
scan = Scanner(default_acquisitions=[daq], condition=check_intensity, default_sensor=s3)
gui = GUI(scan, show_goto=True, show_spec=True, show_run=True)

6
sensors.py Normal file
View File

@ -0,0 +1,6 @@
from slic.core.sensor import PVSensor, BSSensor
s0 = PVSensor("SATES30-LSCP10-FNS:CH0:VAL_GET")
s1 = PVSensor("SATES30-LSCP10-FNS:CH1:VAL_GET")
s2 = PVSensor("SATES30-LSCP10-FNS:CH2:VAL_GET")
s3 = PVSensor("SATES30-LSCP10-FNS:CH3:VAL_GET")

View File

@ -21,7 +21,7 @@ for i in n_unds:
overview = SimpleDevice("Furka Overview",
spreadsheet_info = dict(
FELrepRate = PVAdjustable("SWISSFEL-STATUS:Bunch-2-Appl-Freq-RB", internal=True),
@ -47,6 +47,9 @@ overview = SimpleDevice("Furka Overview",
overview = SimpleDevice("Furka Overview", **spreadsheet_info)
spreadsheet_line = [
"timeStamp", "run name", "File name", "comments", "static/scan", "start", "stop", "step size", "shots", "Sample",
"ppressChamb3",

View File

@ -56,5 +56,6 @@ def tt_live(off,sleep=0.1):
tt.set_ydata(np.array(pp))
fig.canvas.draw()
fig.canvas.flush_events()
plt.ylim(np.min(pp),np.max(pp))
time.sleep(sleep)