navigate.model.devices.stages.stage_tl_kcube_inertial.TLKIMStage
- class navigate.model.devices.stages.stage_tl_kcube_inertial.TLKIMStage(microscope_name, device_connection, configuration, device_id=0)
Bases:
StageBase
Thorlabs KIM Stage
- __init__(microscope_name, device_connection, configuration, device_id=0)
Initialize the stage.
- Parameters:
microscope_name (str) – Name of the microscope.
device_connection (str) – Connection string for the device.
configuration (dict) – Configuration dictionary for the device.
device_id (int) – Device ID for the device.
Methods
__init__
(microscope_name, device_connection, ...)Initialize the stage.
close
()Close the stage.
get_abs_position
(axis, axis_abs)Ensure the requested position is within axis bounds and return it.
Return a dictionary with the saved stage positions.
move_absolute
(move_dictionary[, wait_until_done])Move stage along a single axis.
move_axis_absolute
(axis, abs_pos[, ...])Implement movement logic along a single axis.
Report the position of the stage.
stop
()Stop all stage channels move
verify_abs_position
(move_dictionary[, is_strict])Ensure the requested moving positions are within axes bounds
Attributes
Dictionary mapping software axes to hardware axes.
List of KIM axes available.
Thorlabs KIM Stage controller
Serial number of the stage.
- close()
Close the stage.
- get_abs_position(axis, axis_abs)
Ensure the requested position is within axis bounds and return it.
- Parameters:
axis (str) – An axis: x, y, z, f, theta
axis_abs (float) – Absolute position value
- Returns:
Position to move the stage to for this axis.
- Return type:
float
- get_position_dict()
Return a dictionary with the saved stage positions.
- Returns:
Dictionary of stage positions.
- Return type:
dict
- move_absolute(move_dictionary, wait_until_done=False)
Move stage along a single axis.
- Parameters:
move_dictionary (dict) – A dictionary of values required for movement. Includes ‘x_abs’, etc. for one or more axes. Expects values in micrometers, except for theta, which is in degrees.
wait_until_done (bool) – Block until stage has moved to its new spot.
- Returns:
success – Was the move successful?
- Return type:
bool
- move_axis_absolute(axis, abs_pos, wait_until_done=False)
Implement movement logic along a single axis.
- Parameters:
axis (str) – An axis. For example, ‘x’, ‘y’, ‘z’, ‘f’, ‘theta’.
abs_pos (float) – Absolute position value
wait_until_done (bool) – Block until stage has moved to its new spot.
- Returns:
Was the move successful?
- Return type:
bool
- report_position()
Report the position of the stage.
Reports the position of the stage for all axes, and creates the hardware position dictionary.
- Returns:
position_dict – Dictionary containing the current position of the stage.
- Return type:
dict
- stop()
Stop all stage channels move
- verify_abs_position(move_dictionary, is_strict=False)
Ensure the requested moving positions are within axes bounds
- Parameters:
move_dictionary (dict) – A dictionary of values required for movement. Includes ‘x_abs’, ‘y_abs’, etc. for one or more axes. Expect values in micrometers, except for theta, which is in degrees.
is_strict (bool, optional) – If True, return an empty dict if any axis is out of bounds.
- Returns:
a verified moving dict {axis: abs_position}
- Return type:
dict
- axes
List of stage axes available.
- Type:
list
- axes_mapping
Dictionary mapping software axes to hardware axes.
- Type:
dict
- kim_axes
List of KIM axes available.
- Type:
list
- kim_controller
Thorlabs KIM Stage controller
- Type:
object
- serial_number
Serial number of the stage.
- Type:
str
- stage_feedback
Feedback alignment value for the stage. Default is None.
- Type:
int
- stage_limits
Whether the stage has limits enabled or not. Default is True.
- Type:
bool