MOTOR CONTROLS Panel
- Overview
- Section A: Current Motor Position
- Section B: Image Stack Acquisition
- Section C: Storing/Loading Motor Positions
- Resetting Motor Operation Following Faults
Overview
The MOTOR CONTROLS panel pertains to the (optional) control of a stage/motor controller system supported by ScanImage. At this time, only the Sutter MP-285 stepper motor controller is supported. This controller can be used with various stages. The ScanImage Hardware Reference provides further information.
The MOTOR CONTROLS panel only appears on ScanImage startup if motorOn is enabled in the INI File. Other settings related to the MP-285 must also be properly configured in the INI File, including the correct specification of the COM port used to communicate with the MP-285 over an RS-232 (serial port) connection.
If any motor operation fails during ScanImage operation, the capability/procedure to reset motor operation should be employed.
Section A: Current Motor Position
Absolute vs Relative
Both ScanImage and the MP-285 Motor Controller have their own notions of absolute and relative positions. They are thus referred to specifically below as ScanImage Absolute/Relative and Motor Absolute/Relative
: These controls play two roles –
- They display the most recent position read from the motor controller in each of the 3 axes.
- Entering a value for any of the axes commands the motor to move to the specified position for that axis. Following the move, the position will be read and updated for all three axes.
: Pressing these buttons forces ScanImage Relative positions to be used in the specified axes (if not used already) and resets the relative origin in the specified axes to the current position (which is first read from the motor controller).
Matching Relative Coordinates
A common and recommended approach is to set both the motor controller and ScanImage to operate in matched Relative coordinates. The procedure to accomplish this is as follows:
1. Adjust the motor controller to display Motor Relative positions, if not already. (For the MP-285, display of Motor Absolute and Motor Relative positions is toggled by hitting <ENTR>)
2. Set the Motor Relative position to zero at some desired position. (For the MP-285, this is done by hitting <0>,<ENTR>).
3. Immediately afterwards, press to set the ScanImage Relative position.
At this point, both the motor controller and ScanImage are operating in Relative coordinates, at position (0,0,0). If desired, these steps can be repeated later at new physical position(s), updating both Relative origins in tandem.
: Forces ScanImage to read the current motor position in all three axes and to update the displayed
values, e.g. following manual adjustment of the motor position using the motor controller outside of ScanImage control.
: Read-only control that displays the squared-sum of the three displayed
values
Section B: Image Stack Acquisition
These controls facilitate the collection of Image Stack, together with the controls on the panel (see STANDARD CONTROLS). The controls in this section allow the endpoints of an Image Stack to be determined interactively, e.g. by manually focusing to axial (Z) boundaries of a volume-of-interest while using FOCUS mode acquisition.
This button functions equivalently to the button in the
panel except that motor is moved to the Z position indicated by
before the acquisition.
Pressing one of these buttons reads the current motor position in the Z axis (updating the position display) and stores this value as the
position displayed alongside the buttons.
If selected, when either one of the or
values is adjusted in the
panel, the other parameter will auto-adjust, so that the
values defined remain in effect. For example, the user can vary the
and the
will auto-adjust based on the distance between the stack
values.
When With When is selected, stack acquisitions initiated via the
button on the MOTOR CONTROLS panel (rather than from
) will override the
(power length constant) value on the
panel. Instead the Lz value will be computed from power levels measured at the endpoints of the stack determined by start and end buttons.
selected, user will typically use
mode to adjust power and Z position at both the start and end points of stack, pressing
and
buttons at each point, respectively to record both the Z position and power level(i.e. using a higher power at the deeper endpoint). Then Lz can simply be computed and this value is used instead of that specified in the
panel
is used, the computed Lz value is displayed to Matlab command line, for each beam. Users may find that this is a useful way to measure/determine Lz for their preparation. User can then simply enter this value in the
control on the
panel and save value to USR file. Assuming that value is fairly consistent from sample to sample (for given sample type), this avoids need to adjust and record power at both start and end points of each stack.
Section C: Storing/Loading Motor Positions
Cycle Mode
The controls in this section are mainly useful in relation to Cycle Mode operation, which allows for automated/repeated imaging at a defined list, or array, of motor positions. This mode is disabled in ScanImage 3.6. It is functional in ScanImage 3.5.1 and is intended to be supported again in a future ScanImage release.
The controls in this section allow triads of position values to be saved and recalled. Selecting
stores the current
positions as a triad to the currently indicated
. Later selecting
will command motor to move to the currently indicated
, if a value has been stored.
The entire set of stored position values can be saved to disk as a .POS (position) file, by selecting
. Likewise, an entire set of stored values can be recalled (eliminating any currently stored values) by selectiong
.
Resetting Motor Operation Following Faults
Occasionally, a motor operation (move, read, or other command) may fail during ScanImage operation. This occurrence should be quite rare.
In the event that a motor operation fails during ScanImage execution, the MOTOR CONTROLS panel will inactivate its controls and display a large button as depicted here:
- Pressing the
button will often restore motor operation, and then causes the
positions to be updated.
- If the
action is unsuccessful, then it is recommended to physically reset the motor controller (the MP-285 has a physical reset button) and then press
again.