Skip to content
Snippets Groups Projects
Commit a77525cc authored by mwyman's avatar mwyman
Browse files

Moved env files; consolidating startup for CRL

parent 54b59144
No related branches found
No related tags found
No related merge requests found
...@@ -4,6 +4,7 @@ record(ao, "$(P)CRL$(N):energy"){ ...@@ -4,6 +4,7 @@ record(ao, "$(P)CRL$(N):energy"){
field(OMSL, "closed_loop") field(OMSL, "closed_loop")
field(DTYP, "pydev") field(DTYP, "pydev")
field(OUT, "@$(OBJ).updateE('VAL')") field(OUT, "@$(OBJ).updateE('VAL')")
field(FLNK, "$(P)CRL$(N):recalc_table.PROC CA")
} }
record(ai, "$(P)CRL$(N):energy_RBV"){ record(ai, "$(P)CRL$(N):energy_RBV"){
...@@ -110,8 +111,8 @@ record(transform, "$(P)CRL$(N):lens_decode"){ ...@@ -110,8 +111,8 @@ record(transform, "$(P)CRL$(N):lens_decode"){
field(CLCI, "(A >> 7) % 2") field(CLCI, "(A >> 7) % 2")
field(CLCJ, "(A >> 8) % 2") field(CLCJ, "(A >> 8) % 2")
field(CLCK, "(A >> 9) % 2") field(CLCK, "(A >> 9) % 2")
field(CLCL, "(A >> 10) % 2") # field(CLCL, "(A >> 10) % 2")
field(CLCM, "(A >> 11) % 2") # field(CLCM, "(A >> 11) % 2")
} }
record(calcout, "$(P)CRL$(N):lens_encode"){ record(calcout, "$(P)CRL$(N):lens_encode"){
......
...@@ -171,17 +171,17 @@ class singleTF(): ...@@ -171,17 +171,17 @@ class singleTF():
''' '''
pass pass
def setupLookupTable(self, subs_file, n_lenses, energy = 8.0): def setupLookupTable(self, subs_file, n_lenses):
''' '''
lookup table created after IOC startup (after transfocator materials and lookup table created after IOC startup
thicknesses are set energy and slit size are updated before this is called
''' '''
print(80*'#') print(80*'#')
print('Setting up lens control...') print('Setting up lens control...')
self.num_stacks = n_lenses self.num_stacks = n_lenses
self.energy = energy # self.energy = energy
#read in substitutions file #read in substitutions file
try: try:
...@@ -270,6 +270,8 @@ class singleTF(): ...@@ -270,6 +270,8 @@ class singleTF():
self.crl, self.slit1_H, self.slit1_V, self.crl, self.slit1_H, self.slit1_V,
self.lens_thickerr, flag_HE = self.thickerr_flag) self.lens_thickerr, flag_HE = self.thickerr_flag)
self.cull_lookup_table() self.cull_lookup_table()
self.updateEnergyRBV()
self.updateSlitSizeRBV()
def cull_lookup_table(self): def cull_lookup_table(self):
''' '''
...@@ -393,7 +395,7 @@ class singleTF(): ...@@ -393,7 +395,7 @@ class singleTF():
self.setSlitSize(self, size, slit) self.setSlitSize(self, size, slit)
# Testing calling the lookup table reconstruction in EPICS instead of python # Testing calling the lookup table reconstruction in EPICS instead of python
# self.construct_lookup_table() #! self.construct_lookup_table()
def setEnergy(self, energy): def setEnergy(self, energy):
''' '''
...@@ -411,7 +413,9 @@ class singleTF(): ...@@ -411,7 +413,9 @@ class singleTF():
# Energy variable sent from IOC as a string # Energy variable sent from IOC as a string
self.setEnergy(energy) self.setEnergy(energy)
self.construct_lookup_table() # Testing calling the lookup table reconstruction in EPICS instead of python
#! self.construct_lookup_table()
# Do I need to find what the current config would produce as far as focal size and location? # Do I need to find what the current config would produce as far as focal size and location?
# self.focalSizeRBV = # self.focalSizeRBV =
......
...@@ -86,7 +86,7 @@ BEGIN ...@@ -86,7 +86,7 @@ BEGIN
########################## ##########################
#If PyDevice is to be used, source script needs to be set here #If PyDevice is to be used, source script needs to be set here
$ENV{PYDEV_STARTUP}="/net/s100dserv/xorApps/epics/synApps_6_3/ioc/100idPy/100idPyFilter_startup_env"; $ENV{PYDEV_STARTUP}="$ENV{IOC_STARTUP_DIR}/100idPyFilter_startup_env";
$ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}"; $ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}";
} }
......
...@@ -32,4 +32,4 @@ dbLoadRecords(""${TOP}/db/pyDevCRLsingle.db","P=$(PREFIX), N=1, OBJ=CRL1, KEV=$( ...@@ -32,4 +32,4 @@ dbLoadRecords(""${TOP}/db/pyDevCRLsingle.db","P=$(PREFIX), N=1, OBJ=CRL1, KEV=$(
doAfterIocInit() # PROC energy read and update CRL1 object doAfterIocInit() # PROC energy read and update CRL1 object
doAfterIocInit() # PROC slit size read and update CRL1 object doAfterIocInit() # PROC slit size read and update CRL1 object
# TODO get STACKS from TOML file? # TODO get STACKS from TOML file?
doAfterIocInit("pydev('CRL1.setupLookupTable(stack_subFile, $(_STACKS), energy = $(_ENERGY))')") #TODO get energy from beamline... doAfterIocInit("pydev('CRL1.setupLookupTable(stack_subFile, $(_STACKS)')") #TODO get energy from beamline...
...@@ -87,7 +87,7 @@ BEGIN ...@@ -87,7 +87,7 @@ BEGIN
########################## ##########################
#If PyDevice is to be used, source script needs to be set here #If PyDevice is to be used, source script needs to be set here
$ENV{PYDEV_STARTUP}="/net/s100dserv/xorApps/epics/synApps_6_3/ioc/100idPy/100idPyCRL_startup_env"; $ENV{PYDEV_STARTUP}="$ENV{IOC_STARTUP_DIR}/100idPyCRL_startup_env";
$ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}"; $ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}";
} }
......
# Activate python environment containing modules used by IOC
eval "$(conda shell.bash hook)"
conda activate /net/s100dserv/xorApps/epics/synApps_6_3/support/PyDevice-env/filters
# Put python library in path
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/net/s100dserv/xorApps/epics/synApps_6_3/support/PyDevice-env/filters/lib/
...@@ -84,7 +84,7 @@ BEGIN ...@@ -84,7 +84,7 @@ BEGIN
########################## ##########################
#If PyDevice is to be used, source script needs to be set here #If PyDevice is to be used, source script needs to be set here
$ENV{PYDEV_STARTUP}="/net/s100dserv/xorApps/epics/synApps_6_3/ioc/100idPy/100idPyFilter_startup_env"; $ENV{PYDEV_STARTUP}="$ENV{IOC_STARTUP_DIR}/100idPyFilter_startup_env";
$ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}"; $ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}";
} }
......
...@@ -86,7 +86,7 @@ BEGIN ...@@ -86,7 +86,7 @@ BEGIN
########################## ##########################
#If PyDevice is to be used, source script needs to be set here #If PyDevice is to be used, source script needs to be set here
$ENV{PYDEV_STARTUP}="/net/s100dserv/xorApps/epics/synApps_6_3/ioc/100idPy/100idPySBL_startup_env"; $ENV{PYDEV_STARTUP}="$ENV{IOC_STARTUP_DIR}/100idPySBL_startup_env";
$ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}"; $ENV{PYDEV_IOC_CMD}="source $ENV{PYDEV_STARTUP}; $ENV{IOC_CMD}";
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment