mxcubecore.HardwareObjects.EMBL.EMBLSlitBox#

The BeamSlitBox Hardware Object is used to operate slits.

Example Hardware Object XML file :#

<object class=”BeamSlitBox”>

<focModeEq>/beamFocusing</focModeEq> - focusing mode equipment <focModes>[‘Collimated’, ‘Horizontal’, ‘Vertical’, ‘Double’]</focModes>

  • used focusing modes

<gapH>

<modesAllowed>[‘Collimated’, ‘Vertical’]</modesAllowed> - used modes <stepSize>0.0050</stepSize> - step size <minGap>0.010</minGap> - min gap <maxGap>1.10</maxGap> - max max gap <updateTolerance>0.0005</updateTolerance> - gap update tolerance <motors> - motors used to define gap

<motor>

<motorName>Out</motorName> - name <motorsGroup>attocubeMotors</motorsGroup>- motors group name <reference>407154</reference> - reference value

</motor> <motor>

<motorName>In</motorName> <motorsGroup>attocubeMotors</motorsGroup> <reference>-68579</reference>

</motor>

</motors>

</gapH> <gapV>

<modesAllowed>[‘Collimated’, ‘Horizontal’]</modesAllowed> <stepSize>0.0050</stepSize> <minGap>0.010</minGap> <maxGap>1.10</maxGap> <updateTolerance>0.0005</updateTolerance> <motors>

<motor>

<motorName>Top</motorName> <motorsGroup>attocubeMotors</motorsGroup> <reference>66114</reference>

</motor> <motor>

<motorName>But</motorName> <motorsGroup>attocubeMotors</motorsGroup> <reference>4391</reference>

</motor>

</motors>

</gapV> <object hwrid=”/attocubeMotors/attoGroup” role=”attocubeMotors”/>

</object>

Classes

EMBLSlitBox(*args)

User can define sizes of horizontal and verstical slits by entering direct size and pressing Enter or by using up and down buttons. Slits operations are enabled accordingly to the detected focusing mode. - Collimated beam (both enabled) - Horizontally focused (hor. disabled and ver. enabled) - Vertically focused (hor. enabled and ver. disabled) - Double focused (both disabled) User can stop slit movement by pressing stop button (enabled if slits moves).

class mxcubecore.HardwareObjects.EMBL.EMBLSlitBox.EMBLSlitBox(*args)[source]#

Bases: AbstractSlits

User can define sizes of horizontal and verstical slits by entering direct size and pressing Enter or by using up and down buttons. Slits operations are enabled accordingly to the detected focusing mode.

  • Collimated beam (both enabled)

  • Horizontally focused (hor. disabled and ver. enabled)

  • Vertically focused (hor. enabled and ver. disabled)

  • Double focused (both disabled)

User can stop slit movement by pressing stop button (enabled if slits moves).

change_motor_position(motor_name, position)[source]#

Cmd to set motor position

Parameters:
  • motor_name (str) – motor name

  • position (float) – new position

focus_mode_changed(new_focus_mode, size)[source]#

Called if focusing mode is changed

get_gap_limits(gap_name)[source]#

Returns gap min and max limits (list of two values)

get_gaps()[source]#

Returns horizontala and vertical gap values

get_horizontal_gap()[source]#

Evaluates Horizontal gap

get_max_limits()[source]#

Returns max Hor and Ver gaps values (list of two values)

get_min_limits()[source]#

Returns min Hor and Ver gaps values (list of two values)

get_step_sizes()[source]#

Returns Hor and Ver step sizes (list of two values)

get_vertical_gap()[source]#

Evaluates Vertical gap

init()[source]#

Hardware object init.

motors_group_position_changed(new_positions_dict)[source]#

Method called if one or sever motors value/s are changed

motors_group_status_changed(new_status_dict)[source]#

Method called if motors group status is changed

re_emit_values()[source]#

Reemits signals

set_focus_mode(focus_mode)[source]#

Sets motors in possitions according to focusing mode

set_gap_by_name(gap_name, new_gap, timeout=None)[source]#

Sets gap by its name :param gap_name: Hor or Ver :param new_gap: float :param timeout: int :return:

set_gaps_limits(new_gaps_limits)[source]#

Sets max gap Limits

set_horizontal_gap(new_gap, timeout=None)[source]#

Sets new gap value

set_vertical_gap(new_gap, timeout=None)[source]#

Sets vertical gap :param new_gap: float :param timeout: int :return:

stop_gap_move(gap_name)[source]#

Stops motors movements

stop_horizontal_gap_move()[source]#

Stops the movement of horizontal gap :return:

stop_vertical_gap_move()[source]#

Stops the movement of vertical gap :return: