A few weeks back I posted that I would be testing high speed stage movement with an ASI stage. Of course things are never easy to actually get working, but I managed to, and here are the results:
Triggered camera ( I used an Andor Clara for this test – fast and sensitive), large stage frame, and transmitted light speed = 3 Frames Per Second.
httpv://www.youtube.com/watch?v=XN6L-DooJYw
Anyone with experience using stages knows this is really, really fast. Here’s how I got it working:
1. Disconnect the stage from your control software. I.e. if you are running uManager, Elements, or MetaMorph, temporarily “disconnect” the device. We need to talk with the stage directly.
2. Download ASI’s control software called “ASI Console”, available from asiimaging.com – here.
3. Connect your camera’s “Read” or “Shift” output signal to the ASI “TTL In” BNC on the back of the box.
4. Connect the ASI’s “TTL Out” BNC to your camera’s “trigger in” line.
5. Make sure you have the following modules in your ASI controller, which can be viewed after you connect to the stage using the ASI Console:
– ARRAY_XYZ
-ARRAY MODULE
6. In the ASI Console, you can send commands directly to the stage using the “Terminal” window. You can define a test array pattern by sending the text “x=3 y=3 z=1 f=1” where x and y are the # of sites in x and y axes, and z and f are the step size in mm for x and y. So here we are making a 3×3 pattern with 1mm spacing.
7. Send the commands to the stage “ttl x=7” and “ttl y=2”. This tells the stage that it should move to another site when it receives a ttl signal from the camera. The y=2 tells the stage that after it moves to a site, it should pulse on it’s ttl output to the camera.
8. open software that will control your camera. Set the camera up to acquire a stream of images, and make sure to configure the camera so that it is sending out TTL pulses, and that it is waiting to take pictures until it receives a “strobe” input on each frame.
9. Begin the camera stream, the camera shouldn’t start taking images, because the stage isn’t pulsing the camera.
10. in the ASI terminal, issue the command “rm x=0”. this moves the stage to the first point in the XY array, and sends a first pulse to the camera. From there on things should start working.
The general loop is:
Stage moves to position – fires ttl
ttl causes camera to expose
Camera fires ttl when done exposing
this causes stage to move to next position
Loop repeats
Make sure to set your camera stream to the same # of frames as stage positions, many software programs can’t easily stop a stream and keep the data acquired if the stream is incomplete.
Here’s an example of the images you can get using this type of setup:
httpv://www.youtube.com/watch?v=3WCe-G0i6og
-Austin
Comments
2 responses to “Update – High Speed Scanning with an ASI Stage”
I use similar set up with yours. Mine is ASI stage with Andor IDUS camera. ASI console software works fine for high speed array scanning, but sometimes you have to set waiting time, e.g. rt=500 to make sure that you have enough time intervals between two exposures. Actually MicroManager can do the same thing but the chance to get error message is even lower.
[…] first mode uses hardware triggering and the ARRAY functions of the ASI controller as described by Austin, the second just generates a position list in Micro-Manager and acquires it normally through […]