Modelization
The tomo modelization is hold by the TomoConfig
object.
This object handle the different ways the sample stage and the devices are setup at a specific beamline at the ESRF.
In the other word, this is an abstraction on top of the hardware, allowing to handle the same way a set of beamlines.
Sample stage
The sample stage is mostly modelized by involved axis.
It is stored directly inside the TomoConfig
object.
Axis roles
The following axis role are provided.
To work properly with dedicated procedures or with Daiquiri, the following references have to be used.
Some of them are not mandatory, depending on which kind of features to want to use.
translation_x
: Translation on the beam (positive following the beam = in detector direction)translation_y
: Lateral translation (positive on the left if you follow the beamtranslation_z
: Vertical translation (positive from bottom up)rotation
: Rotation axis (from top down view, rotation is clock-wise, at dial 0, thesample_x
axis is aligned to the beam)sample_u
: Translation over the rotation (same direction astranslation_x
when the rotation is at 0)sample_v
: Translation over the rotation (same direction astranslation_y
when the rotation is at 0)sample_x
: Virtual translation over the rotation (always followingtranslation_x
)sample_y
: Virtual translation over the rotation (always followingtranslation_y
)
This roles have to be binded to the real axis used by the beamline.
Device overview
The tomo sample stage modelization is handled by different BLISS components.
TomoConfig
It stores the beamline configuration and the procedures to perform tomo scans.
- Axis are stored per roles
- Detectors are stored inside
TomoDetectors
- Dedicated configuration
- Plus dedicated behaviour like
auto_projection
TomoDetectors
A single TomoDetectors
is provided to describe the whole detectors.
It is responsible of describing the available detectors of the beamline, and the one which is active.
The component can be specialized to allow to mount detectors on the fly. Like what is expected at ESRF BM18.
TomoDetector
This component is responsible of providing a view of a specific detector as it is localized into the beamline.
It is responsible to like together an optic and a detector, and the to provide a "sample" pixel size (who much a motor have to move to shift the sample to 1 pixel in the detector)
Optic
This component is responsible of handling the optic hardware and providing a consistent API.
It exposes a magnification, like an axis provides a position. It can be changed (to be tuned to an accurate value) or moved (to request the controller to select the expected magnification).
This device provides a generic API to handle 3 kind of optics:
- Fixed magnification
- One to many magnifications
- One in a range of magnifications
Lima
This is the default Lima device from BLISS.
TomoImaging
Optionally, the TomoConfig
can refer to a TomoImaging
.
Now it's only an helper to provide feature for Daiquiri. Like taking projections, dark and flat.
It have to be removed sooner or later.