top bar

Difference between revisions of "Mosaic3"

(Cleaup: trim excess text, clarify PTI laser leak, link to Projector plugin tabs)
(Static exposure requires exposure to be set to 0.)
Line 100: Line 100:
 
| Exposure || Pulse duration of mask in seconds.  You would not often change this setting directly since the Sequencing window requires you to set the exposure time in the Sequence list, and the exposure value(s) there takes precedence.  Changing this is useful for interactive use e.g. in the <code>Projector > Setup</code> tab.
 
| Exposure || Pulse duration of mask in seconds.  You would not often change this setting directly since the Sequencing window requires you to set the exposure time in the Sequence list, and the exposure value(s) there takes precedence.  Changing this is useful for interactive use e.g. in the <code>Projector > Setup</code> tab.
 
|- valign="top"
 
|- valign="top"
| OverlapMode || Pulses mask when set to '''Off'''. Switches to static exposure when set to '''On'''.<br/><br/>The '''Off''' setting has the benefit of hardware timing accuracy, but it limits the maximum exposure to 200 seconds.<br/><br/>'''On''', by definition, ignores the value of "Off Duration (ms)" in the Sequence window.  When combined with setting the <code>Exposure</code> to 0, it exposes the mask constantly; if you have use of this ability one can create, say, an "Exposure Mode" group with a preset named something like "Static".
+
| OverlapMode || Pulses mask when set to '''Off'''. Can allow static exposure when set to '''On'''.<br/><br/>The '''Off''' setting has the benefit of hardware timing accuracy, but it limits the maximum exposure to 200 seconds.<br/><br/>'''On''', by definition, ignores the value of "Off Duration (ms)" in the Sequence window.  When combined with setting the <code>Exposure</code> to 0, it exposes the mask constantly; if you have use of this ability one can create, say, an "Exposure Mode" group with a preset named something like "Static".
 
|- valign="top"
 
|- valign="top"
 
| OperationMode || Choose whether to use hardware or software memory.  The default, '''Live''', uses the software memory.<br/><br/>'''FrameSequence''' is used with the Sequence window (opening the sequence window automatically changes to this value for you). If you need the <code>SequenceLoopCount</code> to be infinite use '''ContinuousFrameSequence'''.<br/><br/>If using <code>FrameIndexSource</code> as '''Hardware''', set to '''FrameMemory'''.
 
| OperationMode || Choose whether to use hardware or software memory.  The default, '''Live''', uses the software memory.<br/><br/>'''FrameSequence''' is used with the Sequence window (opening the sequence window automatically changes to this value for you). If you need the <code>SequenceLoopCount</code> to be infinite use '''ContinuousFrameSequence'''.<br/><br/>If using <code>FrameIndexSource</code> as '''Hardware''', set to '''FrameMemory'''.

Revision as of 05:08, 31 May 2014

Summary: Interfaces with Andor Mosaic 3 Digital Mirror Device (DMD). The Andor Mosaic3 device allows phototargeting of microscope specimens.
Author: Arthur Edelstein
Documentation: Arthur Edelstein
Pariksheet Nanda
License: Properietary, closed source, Copyright Andor Technology 2014
Platforms: Windows
Devices: MM-820*-SUB
MM-820*-SUB-COMP
(MM-720* products, i.e. Mosaic I and II devices, are not supported)

Installation

Driver

  • Copy the following 4 library files to the main Micro-Manager directory:
   atcore.dll
   atdevmosaic3.dll
   Mosaic3ApiSharedMfc.dll
   Mosaic3SDKWrapper.dll
These Mosaic library files need to be copied from another installed software, as listed below:
Software Directory containing required files
Andor iQ C:\Program Files (x86)\Andor Bioimaging\Common Files\
Andor Mosaic 3 SDK C:\Program Files\Andor Mosaic 3 SDK\sdk\
If you don't have either of these installed, they are available at http://my.andor.com
  • Check that the driver for the PCIe card is recognized in the Device Manager as PLDA > PLDA Windows Driver.

Hardware Configuration Wizard

Mosaic

To allow Micro-Manager to control the Mosaic, add the Mosaic3 device using Micro-Manager's Hardware Configuration Wizard. When you add the device, there are no configuration options.

Shutter control of the Projected Light Source

The Mosaic allows a low level of light through even when the digital mirrors are off, and therefore the Mosaic can be optionally purchased with the a physical shutter accessory. This shutter accessory is connected to a Vincent VCM-D1 controller, so to control it in Micro-Manager add the Vincent device.

Shutter control is primarily intended for light sources which cannot be directly modulated, like a Mercury lamp; for light sources that can be modulated, best practice is instead to simply connect the "DMD Active" TTL 5 volt output to your light source "global shutter" (or similar) TTL input so that it is only on when the Mosaic is active. You may not have the shutter accessory installed on if your system was ordered with the intention of using it with this type of TTL light source.

If you have the Power Technology diode laser, you may wish to still add the Vincent device because this laser always leaks ~4mW from the laser head even in the off position (0 volt Analog input). This laser leak is difficult to observe normally since the laser safety interlocks would shut off the laser.

Calibration

Controlling the Mosaic, like other SLM and Galvo devices, is done by the Projector plugin (Plugins | Device Control | Projector).

Note
Many functions of the generically designed Projector plugin are not useful for the Mosaic. For normal use, one would just open the Projector plugin to go to the ROIs tab and open the Sequence window.

Before you begin the calibration:

  • Make sure a camera has been installed using the Hardware Configuration Wizard.
  • In the Setup tab of the Projector plugin:
    • If your microscope system requires changing a property for the Mosaic projected light to reach your specimen (often if your imaging reflector cube is different from the mosaic reflector cube), create a Group and a Presets each for your Mosaic reflector and your epi imaging reflector. Assign the Core-ChannelGroup to that Group, and finally in the Phototargeting channel choose the Mosaic reflector preset.
    • If you added the Vincent shutter device in the Hardware Configuration Wizard, assign it to the Phototargeting shutter.

You may wish to refer to the Projector Plugin description page if you have not used it before. However, note that for the Mosaic:

  • Point and Shoot tab: only projects a fixed-sized round ROI on the live image window and offers no flexibility of shape type and size.
  • ROIs tab: is mainly used to open the Sequence window. The Sequence window has a super-set of the functionality of the other controls in the ROIs tab.

Place a test slide (such as a solid fluorescent slide) on the microscope stage. Click the "Calibrate" button. The Projector Plugin will move through a rectangular lattice of spots across the Mosaic array, illuminating them one by one. The corresponding position on the camera image will be automatically measured. During the calibration procedure, a small cross will be visible overlaid on each spot as it is located. When calibration is finished, the plugin will have acquired and stored a coordinate mapping from camera pixels to Mosaic pixels.

Sequence window

The Andor Mosaic offers advanced sequencing capabilities. To open the Sequence Window, on the ROIs tab of the Projector Plugin, click the "Sequencing..." button. Two windows will appear: (1) the ROI Sequencing control window, and (2) the ImageJ ROI Manager. To add an ROI to the ROI Manager list, choose an ROI tool in the ImageJ toolbar, draw an ROI on the live window, and then click "Add" on the ROI Manager window. Repeat for as many ROIs as you need.

Next, on the ROI Sequencing window, notice that ROI list now contains the same set of ROIs specified in ImageJ's ROI Manager. You can assign each ROI to one of two types: FRAP and Image. The FRAP rois are designed to appear for short periods of time, while the Image rois will typically be illuminated throughout the whole sequence.

Alternatively, you can automatically generate a rectangular grid (lattice) of ROIs. First, draw an ROI in the upper-left corner of your intended grid. Then, in the "Create ROI Grid" box, enter the number of ROIs across and down (as in a crossword puzzle). Enter the spacing between lattice points in the ROI grid. Press the Generate ROI Grid button, and your ROI will be duplicated in the grid pattern, ready for sequencing.

ROI sequences consist of a number of steps (time slots). Within each step, 1 or more ROIs is shown. The Create Sequence box offers a quick shortcut for generating such sequences. In the Create Sequence box, choose a Sequence type (Sequential, Cumulative, or Simultaneous). Sequential mode in one step per FRAP-type ROI, where each FRAP-type ROI is illuminated in turn. Cumulative mode will gradually illuminate an additional FRAP-mode ROI per step, until all ROIs are illuminated. Simultaneous mode simply shows all ROIs simultaneously in a single step. Choose the typical time you want each step in the sequence to illuminate (On Duration) and the Off time between steps. Finally, the Loop Count determines how many times the ROIs should be repeatedly illuminated in each step. Press the "Generate Sequence" button to populate the Sequence table, below. Notice that all Image-type ROIs are included in every step.

The Sequence table can now be edited to alter which ROIs appear in a step, the On and Off times, and the Loop Count. You can add, duplicate, delete, and re-order the steps.

Finally, below the Sequence table, you can specify how many times the sequence should be repeated, and how the sequence should be triggered. Press the "Upload Sequence" button to send the sequence and ROIs to the Mosaic device. Then press Run to start the sequence. You can also attach your sequence to Micro-Manager's multi-dimensional acquisition, and you can save the sequence for re-loading later.

Device Properties

Property Description
Exposure Pulse duration of mask in seconds. You would not often change this setting directly since the Sequencing window requires you to set the exposure time in the Sequence list, and the exposure value(s) there takes precedence. Changing this is useful for interactive use e.g. in the Projector > Setup tab.
OverlapMode Pulses mask when set to Off. Can allow static exposure when set to On.

The Off setting has the benefit of hardware timing accuracy, but it limits the maximum exposure to 200 seconds.

On, by definition, ignores the value of "Off Duration (ms)" in the Sequence window. When combined with setting the Exposure to 0, it exposes the mask constantly; if you have use of this ability one can create, say, an "Exposure Mode" group with a preset named something like "Static".
OperationMode Choose whether to use hardware or software memory. The default, Live, uses the software memory.

FrameSequence is used with the Sequence window (opening the sequence window automatically changes to this value for you). If you need the SequenceLoopCount to be infinite use ContinuousFrameSequence.

If using FrameIndexSource as Hardware, set to FrameMemory.
FrameIndexSource Setting this to Hardware allows switching between uploaded Frames using the TTL 26-pin D-sub breakout cable, by setting the "Frame Address [7:0]" BNC inputs. Requires OperationMode being set to FrameMemory.
PixelMode Switch between BlackAndWhite and several gray scale settings.
GrayScaleExposureTime Pulse duration of mask in seconds when setting PixelMode to a value other than BlackAndWhite.
InvertMode Inverts all uploaded masks before projecting. Invert means setting those DMD pixels outside of the 2D ROI On, and those within the 2D ROI Off.
SequenceLoopCount Number of times to repeat the entire uploaded Frame sequence. You don't need to adjust this since the Sequence window has a textbox for "Sequence Repeats" which takes precedence.
SequenceLoopSettings Shows result of clicking "Upload Sequence" from Sequence window; useful for debugging. Each "Time Slot" entry from the Sequence window list should appear as
[Time Slot] [On Duration] [Off Duration] [Number of Loops];
TriggerMode Switch between various internal and external TTL trigger settings which are detailed in the Mosaic manual.

Scripting

Under the ImageJ menu, select File > New > Image... and create a black, 8-bit 800x600 image. Double click the dropper tool on the ImageJ toolbar and make sure the current drawing color is white. Then double click the paintbrush tool and set the thickness to 20 pixels. Finally, sketch an image with the paint brush.

Open the “Script Panel” (under Micro-Manager’s Tools menu). Enter the following code:

  import ij.IJ; // Allows access to basic ImageJ utilities.
  proc = IJ.getImage().getProcessor().duplicate(); // Read the current image.
  pixels = proc.getPixels(); // Extract pixels from ImageJ ImageProcessor object.
  mosaic = mmc.getSLMDevice(); // Get the installed name of the Mosaic device.
  mmc.setSLMImage(mosaic, pixels); // Upload the image to the Mosaic.
  mmc.displaySLMImage(mosaic); // Display the Mosaic.

Running this script will result in projecting the image you have just drawn onto the Mosaic.

If you save this TIF image, to reuse it in another session of Micro-Manager, you should open it using ImageJ's File > Open and again in the ImageJ menu change Image > Type > 8-bit instead of the default 32-bit.

Click here to search for Mosaic on the Micro-Manager mailing list archive.

© Micro-Manager : Vale Lab, UCSF 2006-2011 | All Rights Reserved | Contact