User Tools

Site Tools


Synchronized Z-axis Focus Sweeps

Focus sweeps provide a simple way to integrate many focal planes in a single image. It is possible to generate accurate position and exposure control using some specialized scanning firmware and hardware encoder comparisons with the MS2000WK controller and an ASI Z-axis drive.

Required Configuration

The following components are required:

  • MS2000WK controller with firmware SCAN MODULE
  • Mechanical Z-axis Drive
  • Camera with TTL gated exposure mode


The user should familiarize themselves with the SCAN, SCANR, SCANV and TTL commands.

As an example, let us assume that we would like to take a 200ms exposure over a swept focal range of 10μm. The exposure time will determine the sweep speed.

\begin{equation} Speed = \frac{Focal Range}{Exposure Time} \\ Speed = \frac{0.010 mm}{0.200 sec} = 0.05 mm/sec \end{equation}

The following commands will set up the single Z-axis scan at the correct speed:

SCAN X=0 Y=0 Z=1 X and Y axes not used; Z-axis is fast-scanned axis

SCANR X=0.0 Y=0.01 sets the start and stop positions for the fast-scanned axis to 0.0 and 0.010 mm respectively

SCANV Z=100 the scan will be repeated 100 times

SPEED Z=0.05 set the scan speed to value calculated above

SCAN start the scan

At this point the controller will begin successive scans of z-axis followed by rapid retraces. To trigger a camera, some TTL exposure control is required. There are two ways this can be accomplished.

  1. Use TTL OUT0 (internal SV1-2) and the command TTL Y=5 to select a gated output during the “uniform velocity” portion of the move as determined by the built in trajectory generator. This provides a reasonably accurate gate pulse, with perhaps 3-6 ms jitter and 0.2 to 2m systematic position error compared to what is desired.
  2. Use the SCAN SYNC (internal SV1-7) output directly. For this to work on the Z-axis, JP1 – Pin 2 must be connected to the Z-channel encoder flag output, pin 22 of IC24. This is a special hardware modification that must be made for Z-axis synchronized sweeps. This method has the advantage that the precise encoder locations of the start and stop positions (as defined by the SCANR command) determine the edges of the SYNC pulse.

With either (or both) method(s), you should be able to display the TTL trigger pulses on an oscilloscope.

There may be some reason you wish to pause between successive sweeps. An arbitrary time delay can be added using the WAIT command. For example WT Z=1000 would add a one second delay time between successive sweeps.

The basic setup parameters for your sweep can be stored into nonvolatile memory in the controller using the command SS Z.

A scan can be initiated, stopped, and restarted just by using the SCAN command without any other arguments.

Overshoot Parameter

The overshoot parameter is set using SCANV F=overshoot. The stage will travel a distance on each side of the uniform-speed scan equal to the acceleration ramp distance multiplied by overshoot. The default value is overshoot=1.0 so the ramp regions are exactly excluded from the uniform speed section of the move. A value of overshoot > 1 provides additional distance for the speed to settle into a constant velocity. Scans with overshoot < 1 will have non-uniform speed at the beginning and end of the scan.

Address: 29391 W Enid Rd. Eugene, OR 97402, USA | Phone: +1 (541) 461-8181
synchronized_zaxis_focus_sweeps.txt · Last modified: 2021/09/23 17:15 (external edit)