XPS controller module¶
Stage movement using the XPS-C8 controller.
-
class
place.plugins.xps_control.xps_control.
Stage
(config, plotter)[source]¶ Bases:
place.plugins.instrument.Instrument
The base class for all movement stages.
This class provides access to the XPS controller that controls the movement of stages. Movement that is specific to a subset of stages should be written into the subclasses.
The XPS Controller module requires the following configuration data (accessible as self._config[‘key’]):
Key Type Meaning mode string the stages can either operate in ‘incremental’ mode, where they move a set amount at each update; or ‘continuous’ mode, where they move throughout the experiment (or until they reach their limit) velocity float the target velocity for movement acceleration float the acceleration allowed to achieve velocity wait float the amount of time to wait after stage movement (allows the sample to settle) start float start position of stage increment float the step distance for the stage (can also be calculated by PLACE using the ‘end’ value) end float end position of the stage (can also be calculated by PLACE using the ‘increment’ value) -
config
(metadata, total_updates)[source]¶ Configure the stage for an experiment.
For a movement stage, configuring means setting up all the internal values. It does not mean that we move to the first position. No actual movement should happen until the update() method is called.
At this time, all we need to do is initialize all our class variables and connect to the XPS controller.
Parameters: - metadata (dict) – metadata for the experiment
- total_updates (int) – the number of update steps that will be in this experiment
-
update
(update_number, progress)[source]¶ Move the stage.
In incremental mode, this will then move the stage and ask the controller to return to us the actual position the stage settled at. We will save this position into the NumPy data.
In continuous mode, this will start the motion on the first update. On each update, the current position will be saved, however, as the stage will be in motion, this will not reflect the position at which other PLACE events occured.
Parameters: update_number (int) – the current update count Returns: the position data for this update of this instrument Return type: numpy.array
-
-
class
place.plugins.xps_control.xps_control.
ShortStage
(config)[source]¶ Bases:
place.plugins.xps_control.xps_control.Stage
Short stage
-
class
place.plugins.xps_control.xps_control.
LongStage
(config)[source]¶ Bases:
place.plugins.xps_control.xps_control.Stage
Short stage
-
class
place.plugins.xps_control.xps_control.
RotStage
(config)[source]¶ Bases:
place.plugins.xps_control.xps_control.Stage
Rotational stage