potential bug in ASI device adaptor for linear dichroic slider / RM-2000 controller

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

potential bug in ASI device adaptor for linear dichroic slider / RM-2000 controller

Roy Wollman-3
Hi, 

Background: We are using an ASI RM-2000 to control an XY+Z+linear dichroic slider. We have a hardware problem that once in a while the linear dichroic won't move to the right position and an upper switch (U) is fired. We are working with ASI to fix. 

When this happens, micro-manager is not reporting the right position. For example, when we asked the slider to move to position 4 but it got stuck at 2U. 

When we call: 

$ mmc.getProperty('Dichroics','State')

We get answer of 3 (which is 4 since MM starts to count from 0). When we prompt the device directly with serial port command: 

$ mmc.setSerialPortCommand("COM4","W F","\r") 

We get an answer <:A 2> which is the right position. 

Our interpretation is that the micro-manager ASI device adaptor query the controller to what position it was supposed to move into and not what position it is right now which is not what getPropery should do. 

If anyone has encountered a similar issue or has any idea for a workaround, that will be great. 

Thanks, 
Roy 

--

Roy Wollman, PhD

Associate Professor

University of California - Los Angeles
Department of Integrative Biology and Physiology
Department Chemistry and Biochemistry 
Institute of Quantitative and Computational Bioscience 


------------------------------------------------------------------------------
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: potential bug in ASI device adaptor for linear dichroic slider / RM-2000 controller

JonD
Administrator
Hi Roy,

Roy Wollman-3 wrote
Background: We are using an ASI RM-2000 to control an XY+Z+linear dichroic
slider. We have a hardware problem that once in a while the linear dichroic
won't move to the right position and an upper switch (U) is fired. We are
working with ASI to fix.

When this happens, micro-manager is not reporting the right position. For
example, when we asked the slider to move to position 4 but it got stuck at
2U.

When we call:

$ mmc.getProperty('Dichroics','State')

We get answer of 3 (which is 4 since MM starts to count from 0). When we
prompt the device directly with serial port command:

$ mmc.setSerialPortCommand("COM4","W F","\r")

We get an answer <:A 2> which is the right position.

Our interpretation is that the micro-manager ASI device adaptor query the
controller to what position it was supposed to move into and not what
position it is right now which is not what getPropery should do.

If anyone has encountered a similar issue or has any idea for a workaround,
that will be great.
A glance at the device adapter source code reveals that any allowed move is assumed to be be successfully executed without explicitly querying the controller position.

Obvious this is undesirable in the situation you are encountering.  There are a few ways the device adapter could mitigate this but they all add extra communication time which some users are really sensitive to.  I could add an "opt-in" functionality that will do an extra query to ensure the position is kept accurate.

Of course the real solution is to get the hardware fixed; please give us a call or email.  Limit sensors are physically attached so possibly the #1 position needs to be set (see http://asiimaging.com/docs/filter_and_turret_changer), but since the problem is intermittent maybe there something going on with the hardware itself.

Jon

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