This is version 19.
It is not the current version, and thus it cannot be edited.
[Back to current version]
[Restore this version]
Sample Environment at SINQ under NICOS
SEA is getting outdated sooner or later, and is based on SICS, that is why the transition from SICS to NICOS is a good trigger
to go also for a new sample environment framework Frappy. Frappy is a Python Framework developed by Enrico Faulhaber (MLZ) and Markus
Zolliker (PSI), for creating servers to access mobile equipment like
sample environment, using SECoP as communication
protocol towards the experiment control software.
For a transition period SEA is still used for all devices not yet migrated to Frappy. Today (spring 2022) still most
of the sample environment devices at SINQ are controlled by SEA.
Instruments using NICOS and Sample Environment
Currently (April 2022), the following instruments running NICOS are supported to access sample environment:
- HRPT, ZEBRA, TASP, EIGER, CAMEA, FOCUS, SANS-I, AMOR, BOA
Some of the features described here might not yet be up to date on your instrument,
please contact Markus Zolliker, if you want to use sample environment with NICOS, and things are not working as expected.
Accessing Sample Environment at SINQ from NICOS
By default a setup 'frappy' is loaded providing the following commands:
frappy_main('<main cfg>') # change main SE configuration (e.g. cryostat)
frappy_stick('<stick cfg>') # change sample-stick configuration
frappy_stick('') # remove stick
frappy_main('') # remove main SE apparatus
frappy_main() # show the current SE configuration
frappy_addons(...) # similar to above, for additional equipment not covered by main/stick
frappy_list() # list available configurations
note: use AddSetup('frappy') if the setup is not yet loaded
Test integration of SE into NICOS
For testing there are 2 simulated main devices 'cryosim' and 'magsim' available. Please check with them if
temperatures and magnetic field values are saved in your datafile, and other things like temperature or
magnetic field scans.
Frequently Asked Questions
Are values of sample environment devices automatically stored in the data file?
When the SE configuration is changed, automatically the following aliases are created,
if the corresponding object is available:
- T: the moveable main temperature, change before a scan: maw(T, 295), use in a scan: scan(T, ...)
- Ts: the sample temperature, potentially readonly
- Tr: the regulation temperature (e.g. VTI), readonly
- B: the magnetic field, moveable
The aliases above (except T) are automatically put into the envrionment list, and should be saved in the data file.
Typically, either T and Tr or T and Ts point to the same real device.
You might add additional devices to be stored with the AddEnvironment command.
There is nothing displayed on the SEA client, what is going wrong here?
It might be that the SEA server is not yet running. On the instruments mentioned above, the SEA server is no longer
controlled by monit. Controlling the SEA and Frappy servers:
sea start # start the SEA and graph servers
sea restart # restart above
sea list # show running SEA and Frappy servers
sea help # list available sea subcommands
The sample environment device I want to use is not available
Please use the command frappy_list() in NICOS to see a list of available configurations.
Creating the configuration files for Frappy is still under work. The devices to be used on above mentioned
instruments according to the schedule are created first. Please contact Markus Zolliker, if you want to use
a device not yet on the list.
How to Restart a Frappy server
If a sample environment device is not working properly, for example due to communication
problems, it might be helpful to stop and restart the frappy server:
frappy_main('') # stop the main frappy server
frappy_main('<main cfg>') # start the main frappy server
If the problem is related to a device on the stick or addons, you will need the commands frappy_stick or frappy_addons.
How do I configure to use the sample stick rotation instead of the sample table for omega?
With vertical field cryomagnets, typically the stick rotation should be used instead of the
standard sample table for omega. In this case (currently configured on ZEBRA and TASP),
the frappy_main setups should contain a device se_om for the stick rotation. This is
automatically assigned to the device used for omega.
Instrument | name of omega | name of sample table |
ZEBRA | om | om_raw |
TASP | a3 | a3_st |
On horizontal field magnets, the stick rotation is called om_stick, and is
not automatically assigned to omega. In both cases, an alias dom is assigned to
either se_om or se_stick, whatever is present.
To change this behaviour, it is possible to assign another device to the alias, e.g.
om.alias = se_stick
This particular version was published on 31-May-2022 08:10:44 UTC by MarkusZolliker.
|