7. CSC (Cryogenic Sample Changer)
- 7.1 Introduction
- 7.2 CSC Menu
- 7.3 CSC Operations
- 7.4 Initialize
- 7.5 CSC Options
- 7.6 Carousel Status
The "CSC"-page can be accessed by selecting the corresponding tab in the main window or by pressing the "Ctrl+0"-key while the pointer is in the main window. The page is available only if the configuration file carries the line CSC USE (see chapter Configuration File in section Input). Here, you can access all functions of the optional sample changer.
The "CSC"-page features several work areas:
- a menu bar with various options(see 7.2)
- an area for performing operations on the sample changer (see 7.3)
- an area for initializing the sample changer (see 7.4)
- an area containing the status information for 19 samples in the carousel(see 7.6)
The cryogenic sample changer (CSC) is an extension of the desktop beamline. In total, 7 motors are added to the dtb (see chapter Motors in section Introduction), but they are all driven by the same dtb controller. Changing a sample is a complex sequence of individual motor movements, where one step usually relies on successful completion of a previous step, i.e. it requires exact synchronisation of all participating components. The process of loading a sample, for instance, is a sequence of approx. 30 individual steps. Fortunately, there are only 2 variable parameters for that entire process:
- the vial no. (i.e. carousel position)
- the pin length
The carousel in its current implementation holds 19 samples. It is possible to replace the entire carousel or to replace only single vials in the carousel by new ones. This is described further down in the chapter CSC Operations.
The "CSC"-menu pops up if the "CSC"-button in the menu bar is pressed or if "Alt+c" is pressed while the pointer is in the main window. This menu allows for accessing different options that have to do with the sample changer. The choices are:
|Load carousel data||Loads a sample status file. For details, refer to chapter Sample Status File in section Input).|
|Save carousel data||Saves current sample status in an ASCII-file (see above).|
|Clear carousel data||Clears all entries of sample status.|
|Release magnet||The magnet holding the loop on the goniometer head is turned off.|
|Energize magnet||The magnet holding the loop on the goniometer head is turned on.|
|Transfer xyz from mounted sample to Crystal page||This copies the stored xyz-coordinates of a previously mounted sample into the fields for X,Y,Z-translations on the Crystal page. Saves some typing...|
|Move sample to stored position||A sample is moved to the previously determined and stored xyz-coordinates. Useful after remounting a sample.|
|Unload sample at end of data collection||When checked, the crystal is put back into the carousel after finishing data collection. When unchecked, it stays on the goniometer head.|
This procedure implies that a sample is currently mounted. This sample is then going to be stored in the carousel and a new sample is mounted from the given carousel position.
Besides providing the desired carousel position, the pin length has to be provided. The pin length plays a critical role at the time when the pin containing the sample is transferred from the SERVER motor onto the goniometer head, since it involves a motion of the z-translation of the goniometer head. from the barcode. The pin length can be obtained from the barcode in those cases where the structure of the barcode really does contain that information. Otherwise, it has to be provided. It should be noted that if the barcode is unreadable the choice for automatically obtaining the pin length from the barcode is an error condition. The consequence is that the samplee in that case will NOT be mounted but stored back in the carousel. It is therefore safer to provide the pin length explicely provided it is known!
This procedure implies that no sample is currently mounted. A new sample is mounted from the given carousel position. The pin length will be considered as described in chapter Change Sample.
The currently mounted sample will be stored in the carousel position that is currently indicated in the status area. The value provided in the text field on the right hand side of the button is meaningless.
The purpose of this operation is to remove a sample from the carousel. It may
serve as a component of carousel refill. Please note, that this
operation may be carried out while a sample is mounted and even while a
data collection is running, i.e. it does not interfere.
The vial from the give carousel position will be taken out of the carousel and presented to the user. The user may grab the vial and transfer it into a transport container or elsewhere.
The purpose of this operation is to insert a new sample into an empty position
of the carousel. It is the reverse action of the previous operation. A user
inserts a vial (enclosed in a transfer container) in the holding brackets of the
SERVER. The vial is then transferred to the given position of the carousel.
Both operations (Give and Take) can also be handled by the remote control unit.
When remounting a sample that has already been centered on the goniometer head
it is useful to use the already known xyz-coordinates that have automatically
been stored in the previous centering operation. This will leave the sample
at or at least very near its center. Please take care, though, that you
turn off this option if you mount a new sample that happens to be in the same
carousel position as another sample. The xyz-coordinates of the previous sample
will not be valid for the new sample. But the sample changer has no intrinsic
knowledge of the fact that the samples have been changed. As by version 5.2,
the mar345dtb program does not compare the barcode of the current sample with
the one of the previously mounted sample!
With the second generation of sample changers, the carousel has been redesigned and makes use of little magnets to keep the vials in place. While this construction is more forgiving to small variations of vial shapes, it allows for more freedom of rotation. The net effect is that it is not longer guaranteed that sample xyz-coordinates that have been determined once, are still valid when the sample is stored back into the carousel and taken out again by the sample changer. Small shifts and rotations may occur that will leave the sample eventually slightly out of the beam after mounting it on the goniometer head.
A special procedure has been implemented to compensate for this mechanical
problem. The way it works is the following:
- The sample is mounted onto the goniometer head
- The goniometer head is driven to previously determined xyz-positions
- The picture of the crystal is compared to a picture of the same crystal mounted previously by an external program
- The program computes a correlation factor and suggests shifts
- xyz-translations are adjusted accordingly
- The PHI-axis is driven to a position 90 deg. away and the shifts are recomputed.
All this is being done automatically without user intervention, but only if the box "Use shift corrections" is checked. This checkbox is available only if the configuration file carries a line "CSC SHIFT" (see chapter Configuration File in section Input).
Usage of this procedure implies that images of the crystal are taken in certain intervals in order to be able to do a comparison later on. Also this is done automatically without necessity of manual intervention.
The sample changer heavily relies on the error-free sequence of a large number of individual tasks. In real life, errors do occur due to various reasons. In most cases it will be necessary to reinitialize the sample changer to recover from a hardware error. The initialization will bring all CSC components back into a known state. The initialization routines work without variable parameters which make them straightforward to use. The initialization is divided into groups of motors which have to be initialized together, since motions or positions of some motors may depend on the ones from other motors:
- SERVER, ROTOR, CHI and barcode-reader
- CAROUSEL, PICKER and LIFTER
- BEAMSTOP and PHI
- Goniometer head translations (xyz)
Usually, an initialization of all CSC-components is the simplest thing to do but there is a choice of only initializing one particular group.
In the options area you can
- specify how the sample changer handles barcodes
- tell the dtb that a particular sample is mounted or that no sample is mounted.
- the vial comes without a cap
- the vial comes with a cap but barcode cannot be read
- the vial comes with a cap and and barcode can be read
To prevent possible crashes, it is therefore generally advisable to choose the option "Stop on CRITICAL barcode errors". The alternative would be to ignore all or to stop also on non-critical errors. A non-critical errors would be the inability to identify the barcode itself. This is something that might happen due to a bad barcode on the cap or due to too much liquid nitrogen floating on the cap. This kind of error should not be regarded as a problem, and therefore it is not recommended to let the sample changer also stop on this error. On the other hand, ignoring all errors is a security risk and has the potential to crash crystals and even to produce hardware crashes.
The second option is to teach the dtb that a certain sample is loaded or that no sample is loaded. When manually removing a sample from the goniometer head or mounting a sample onto the head, there will be no electronical feedback. The controller has to be told explicitely what has been done.
The status area shows and stores information about available vials in the carousel. The contents of this window are regularly updated as soon as a bit of information changes, e.g. if a barcode is read or if a new crystal center is found. The window keeps track of the following elements for all 19 samples of the carousel:
|Status||One of: "mounted", "carousel" or "empty"|
|Barcode||Barcode of sample (optional)|
|Identifier||Optional identification string for the sample|
|Pin length||Either 14, 16,18,21,24 or 0 mm (with 0=automatic)|
|Crystal center x,y,z||Positions of xyz-translations of goniometer head|
- The barcode will always be updated when loading a sample, i.e. when the vial is on the way to the goniometer head. When inserting a carousel with vials inside, the sample changer will have no knowledge about the barcodes until actually mounting the vial.
- The identifier is an optional component to describe the crystal (e.g. "lysozyme"). It must NOT contain spaces inbetween, but can be left empty. When collecting data, the identifier string is going to be appended to the image name root preceding the barcode string - but only if the option "Append barcode to root name" is selected.
- The pin length may be supplied may be set to 0 only if the barcode contains the pin length.
- The crystal center will be updated automatically as a result of the automatic crystal centering procedure but also if the x,y, or z-translation is moved explicitely.