User Tools

Site Tools


commands:scan

Command:SCAN (SN)

MS2000 or RM2000 syntax and Function
Shortcut SN
Format SCAN [X=scan_axis for X] [Y=scan_axis for Y] [Z=scan_axis for Z] [F=pattern]
Units Integer
Remembered Using SS Z
Firmware Required SCAN or ARRAY

Sets which axes are to be used for 2D raster scan. The same axis settings also apply to the ARRAY module. The fast-scanned raster axis (horizontal) is defined by scan_axis = 1; the slow-scanned axis (vertical) is defined by scan_axis = 2. Single axis scans (1D) requires setting the unused axes scan_axis = 0, and the driven axis as scan_axis = 1. Note this is different from the Tiger usage of pseudoaxes X/Y/Z.

The scan pattern may be set to 0 for RASTER scans or 1 for SERPENTINE scans. This setting defaults to RASTER for firmwares with the SCAN MODULE included and SERPENTINE for firmwares with the ARRAY MODULE included. When the number of lines (SCANV Z) is set to the default of 1 then the behavior is the same for both raster and serpentine.

Without arguments, the command SCAN initiates (or stops) a scan using parameters set with the SCANR and SCANV commands.

If you try to set the axis index and that index is already assigned to another axis, then the value will not change. For example, if you use SCAN X=2 and the Y axis is already set to index 2, nothing will happen. The solution is to set SCAN Y=0 and then you will be able to change the X axis index.

To use multiple axes in the SCAN command, you will need to set all of the axes to 0 first.

SCAN X? Y? Z?
:A X=Horz Y=Vert Z=None 
SCAN X=0 Y=0 Z=0		
:A
SCAN X=2 Y=1 Z=0
:A
SCAN X? Y? Z?
:A X=Vert Y=Horz Z=None 
Tiger (motorized) syntax
Shortcut SN
Format [addr#]SCAN [X?] [Y=fast_axis_id] [Z=slow_axis_id] [F=pattern]
Units Integer
Type Card-Addressed
Remembered Using [addr#]SS Z
Firmware Required SCAN or ARRAY

Note multiple small changes in usage from MS-2000 command set.

Specifying an argument for the pseudoaxis X in decimal sets the state directly (see table below; the value is simply the decimal representation of the corresponding state character). Note that the firmware expects only certain states to be set by the user (marked as “OK to set” in the table); setting to a different state may yield unpredictable results. Querying the pseudoaxis X value returns the character associated with the current state.

Specify the cards axis ID as the fast_axis_id or slow_axis_id (axis IDs are obtainable using Z2B query; they are 0 and 1 for X and Y axes respectively on a two-axis motor card). If slow_axis_id is set to 9 then a true single-axis scan will be executed (not even anti-backlash moves on the slow axis); if slow_axis_id is specified but the slow axis start and stop positions (NV X and NV Y) are equal then a single-axis scan will execute but the slow axis position will be checked at the scan turnaround points. Note this is different from the MS-2000 usage of pseudoaxes X/Y/Z.

The scan pattern may be set to 0 for RASTER scans or 1 for SERPENTINE scans.

Without arguments, the command SCAN initiates (or stops) a scan using parameters set with the SCANR and SCANV commands.

Scan states (SCAN_MODULE firmware)
Char Dec OK to set? State
I No Idle/disabled
S 83 Yes Starts state machine
P 80 Yes Stop (goes to idle state after cleanup)
a No Waits until slow axis move complete
b No Starts move along fast axis
c No Waits for fast axis move to finish
d No Starts serpentine slow axis move
e No Waits until serepentine move complete
f No Used in XF_SPIM only
g No Waits until retrace is complete
h No Scan complete, cleans up
Tiger (micro-mirror) syntax
Shortcut SN
Format [addr#]SCAN [X=state]
Units Integer
Type Card-Addressed
Remembered Using [addr#]SS Z
Firmware Required MM_SPIM

Without arguments, starts or arms the SPIM state machine or terminates it if running or armed (starts state machine execution for Micro-mirror, puts in arm state for piezo). By so doing, any active single-axis functions will be stopped and the SPIM positions/steps will be calculated according to the active parameters (e.g. SAA, SAO, NR, NV, RT). Specifying an argument for the pseudo-axis X in decimal sets the state directly (see table below; the value is simply the decimal representation of the corresponding state character). Note that the firmware expects only certain states to be set by the user (marked as “OK to set” in the table); setting to a different state may yield unpredictable results. Querying the pseudo-axis X value returns the character associated with the current state.

Micro-mirror SPIM states (MM_SPIM firmware)
Char Dec OK to set? State
I No Idle/disabled
S 83 Yes Starts main acquisition state machine
a 97 Yes Arm for trigger (goes to state 'A')
A No Armed and waiting
T 84 Yes Trigger from state 'A' (v3.37+)
P 80 Yes Stop (goes to state 'I')
M No In middle of sheet (executing per-sheet scan/camera/laser state machines)
s No Starting sheet
c No Incrementing sheet
R No Starting side
y No Delay between sides
Y No Delay between repeats

Note: Other undocumented states may be used during SPIM state machine execution.

Address: 29391 W Enid Rd. Eugene, OR 97402, USA | Phone: +1 (541) 461-8181
commands/scan.txt · Last modified: 2023/12/15 21:27 by brandon