Use MicroManager to configure ASI Z stage for TTL triggered moves

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Use MicroManager to configure ASI Z stage for TTL triggered moves

nprasad93
I want to configure an ASI stage in micromanager so that I can load up a set
of positions onto it and then have  TTL pulses trigger the move to those
positions one by one.

I attempted to do this by using the loadStageSequence() method from CMMcore
to load up positions onto it and configured an OrcFlash 4.0 to output a
positive TTL pulse to the stage after every image snap but this did not
work.

I've also tried to use multi-dim acquisition and setting the "Use fast
sequence" property to armed. I wanted to take an acquisition from 0um to
20um in 5um steps. When trying this, the ASI stage position did not actually
change during the acqusition even though it received triggers. On the
acquired images, micromanager reported that the z-position was 20um for all
the acquired images even though the stage always remained at 0um. The only
time the stage responds to a trigger is when the z-position is non-zero. The
stage will reset to 0um once a trigger is received. So it seems the only
position loaded onto it is 0um.

I am fairly new to this so any help would be appreciated.

Thanks.



--
Sent from: http://micro-manager.3463995.n2.nabble.com/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Use MicroManager to configure ASI Z stage for TTL triggered moves

JonD
Administrator
nprasad93 wrote

> I want to configure an ASI stage in micromanager so that I can load up a
> set
> of positions onto it and then have  TTL pulses trigger the move to those
> positions one by one.
>
> I attempted to do this by using the loadStageSequence() method from
> CMMcore
> to load up positions onto it and configured an OrcFlash 4.0 to output a
> positive TTL pulse to the stage after every image snap but this did not
> work.
>
> I've also tried to use multi-dim acquisition and setting the "Use fast
> sequence" property to armed.

The main property for TTL triggers is "Use Sequence".  The "Use Fast
Sequence" property has some special instructions associated with it, in
summary you have to run the acquisition once with it set to "No" before
setting it to "Yes".  If you are calling loadStageSequence() on your own,
make sure "Use Fast Sequence" should be set to "No" when you call it, then
(if desired) you can set it to "Yes" afterwards.  See the documentation at
https://micro-manager.org/wiki/ASIStage in the paragraph beginning "There is
a further feature".

Don't hesitate to respond again here or contact me off-list if that doesn't
resolve the problem.

-------------------------------------------
Jon Daniels
Applied Scientific Instrumentation
29391 West Enid Rd, Eugene, OR 97402
Phone: (541) 461-8181 x118
-------------------------------------------




--
Sent from: http://micro-manager.3463995.n2.nabble.com/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Use MicroManager to configure ASI Z stage for TTL triggered moves

nprasad93
JonD wrote
> The main property for TTL triggers is "Use Sequence".  The "Use Fast
> Sequence" property has some special instructions associated with it, in
> summary you have to run the acquisition once with it set to "No" before
> setting it to "Yes".  If you are calling loadStageSequence() on your own,
> make sure "Use Fast Sequence" should be set to "No" when you call it, then
> (if desired) you can set it to "Yes" afterwards.  See the documentation at
> https://micro-manager.org/wiki/ASIStage in the paragraph beginning "There
> is
> a further feature".

I tried what you suggested but haven't been able to get it to work.

I ran acquisition in MDA once with fast sequence set to "No" and then set it
to "Armed" and ran it again. I also tried this BeanShell script using
loadStageSequence():

/gui.clearMessageWindow();
stageName = mmc.getFocusDevice();
mmc.setProperty(stageName, "Use Fast Sequence", "No");
position = new DoubleVector();

for (double i = 0.0; i <= 20.0; i = i+5.0)
{
  position.add(i);
}

mmc.loadStageSequence(stageName, position);
mmc.setProperty(stageName, "Use Fast Sequence", "Armed");
mmc.startStageSequence(stageName);/

Was not sure if "Use Sequence" also had to be set to "Yes" or not but I
tried all permutations of the two properties and still was not able to get
the stage to move to those positions, although it does indicate that it is
receiving trigger signals. This script also generates a device error
sometimes and other times it will run without an error.
I also always seem to get a device error when I try to run an acquisition in
MDA with only the "Use Sequence" property set to "Yes" and the "Fast
sequence" set to "No". Either both have to be set to "No" or both have to be
"Yes/Armed" for no error messages.



--
Sent from: http://micro-manager.3463995.n2.nabble.com/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Use MicroManager to configure ASI Z stage for TTL triggered moves

JonD
Administrator
nprasad93 wrote
> I tried what you suggested but haven't been able to get it to work.
>
> ...
>
> Was not sure if "Use Sequence" also had to be set to "Yes" or not

Hmm.  Tomorrow I can try to wrangle some equipment and try it out myself.  I
have previously tested but it's been well over a year ago.

I'm pretty sure that "Use Sequence" needs to be set to "Yes".

Can you please send me a problem report off list (jon at asiimaging.com)
which will contain useful debugging information?  Instructions: use "Help" →
"Report Problem…" in the main Micro-Manager window, reproduce the problem
(e.g. run your script and/or the MDA), then click "Done" but instead of
submitting the report the original way  click "View Report", save the text
as a file, and then email that file directly to me.

-------------------------------------------
Jon Daniels
Applied Scientific Instrumentation
29391 West Enid Rd, Eugene, OR 97402
Phone: (541) 461-8181 x118
-------------------------------------------





--
Sent from: http://micro-manager.3463995.n2.nabble.com/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Use MicroManager to configure ASI Z stage for TTL triggered moves

JonD
Administrator
To follow up on this for anybody searching the listserv archives:

- If your firmware is newer than Oct 2015 then you need to use Micro-Manager
code from March 2016 or newer.  Unfortunately that means installing the last
official release of 1.4 isn't new enough.  Instead grab a recent nightly
build.

- The ASIStage documentation [1] wasn't fully clear for the fast sequence
property.  It has been improved.  Here are the steps:
1. Make sure "Use Sequence" is set to "Yes" and "Use Fast Sequence" is set
to "No"
2. Run the acquisition once, or if scripting make sure you invoke
SendStageSequence()
3. Now you can set "Use Fast Sequence" to "Armed" and run in pure-TTL mode
with the caveats mentioned in the documentation

[1] https://micro-manager.org/wiki/ASIStage

-------------------------------------------
Jon Daniels
Applied Scientific Instrumentation
29391 West Enid Rd, Eugene, OR 97402
Phone: (541) 461-8181 x118
-------------------------------------------



--
Sent from: http://micro-manager.3463995.n2.nabble.com/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general