Files
frappy_sinq/setups/frappy.py
Markus Zolliker 53057297d7 improve meaning handling
- Moveables with meaning 'temperature' are added to
  the 'temperature_regulation' target list
- Devices with meaning 'temperature_regulation' are added
  to 'temperature' target list, but with much lower priority
  (should be considered only when no sample quantity is detected)
2024-12-03 15:01:43 +01:00

69 lines
2.9 KiB
Python

description = 'frappy'
group = 'optional'
modules = ['nicos_sinq.frappy_sinq.commands']
devices = dict(
frappy = device(
'nicos_sinq.frappy_sinq.devices.FrappyConfig',
# the possible SECoP connections
nodes = ['se_main', 'se_stick', 'se_addons'],
#
# now follows a list of main SE devices, where an alias is
# generated, if such a device is present, and automatically
# added to the environment list
# remarks: the SECoP meaning should be given from the description
# retrieved from the remote SEC node. if targets is given,
# the devices with the names given by key are added to determine the
# device, using the given importance number, with similar values as
# given by the SECoP standard (10: instrument, 20: cryostat, 30: insert)
# the given numbers assume it is on the cryo, +10 / +20 is added for stick/addons
temperature = { # the SECoP meaning
'alias': 'Ts', # the name(s) to be given to the alias
'targets': # possible devices in addition with importance (numbers assume its on the cryo)
{'se_ts': 20, 'se_tt': 20, 'se_tm': 20},
},
temperature_regulation = {
'alias': 'T',
'targets': {'se_ts': 27, 'se_tt': 27, 'se_tm': 27, 'se_T_stat': 27},
'drivable_only': True,
},
magneticfield = {
'alias': 'B',
'targets': {'se_mf': 20},
},
pressure = {
'alias': 'p',
'targets': {'se_pressure': 20},
},
rotation_z={
# possible names of the instruments main omega alias
# only one of these must be an alias, and this is then used
'predefined_alias': ['a3', 'om'],
'targets': {'se_om': 20},
'envlist': False,
},
stick_rotation={
'alias': 'dom',
'targets': {'se_om': 20, 'se_stickrot': 20},
'envlist': False,
}
)
)
startupcode = '''
printinfo(" ___________________________________________________________________________________________")
printinfo(" ")
printinfo(" Welcome to the NICOS frappy secnode setup!")
printinfo(" ")
printinfo(" Usage:")
printinfo(" frappy('<main cfg>') # change main SE configuration (e.g. cryostat)")
printinfo(" frappy('<main cfg>', '<stick cfg>') # change main and stick cfg")
printinfo(" frappy(stick='') # remove stick")
printinfo(" frappy('') # remove main SE apparatus")
printinfo(" frappy.read() # show the current SE configuration")
printinfo(" frappy() # show and update SE configuration form server state")
printinfo(" ___________________________________________________________________________________________")
set_se_list()
'''