Dear Nico,
I'm not sure, but I wonder if changes to the Ludl driver are also
involved in my problem? If I use the Device/Property Browser in Micro-
Manager GUI to get the property list when using the Demo driver set,
there is a property called "Position" for the Z stage, which I can
query from a Beanshell script just fine. If I run the Ludl driver, I
can drive the Z stage using the GUI, but now there is no property
called "Position", and calls to get this property fail from a
Beanshell script. Is there another property for a Ludl Z stage that I
should query?
I appear to be a rare Mac OS X user, so recompiles may not reflect the
most recent changes to the code base...
Cheers,
Jeff
----------------------------------------------
Jeff Hardin
Professor and Chair, Department of Zoology
Director, Biology Core Curriculum
University of Wisconsin
1117 W. Johnson St.
Madison, WI 53706
voice: (608) 262-9634
fax: (608) 262-7319
email: jdhardin@...
On Jul 14, 2008, at 12:24 PM, micro-manager-general-request@...
wrote:
> ------------------------------
>
> Message: 2
> Date: Thu, 10 Jul 2008 13:20:56 -0700
> From: Nico Stuurman <nico@...>
> Subject: Re: [micro-manager-general] XY discrepancies between
> micromanager GUI and Matlab scripting
> To: Micro-Manager General
> <micro-manager-general@...>
> Message-ID: <9E8F92FB-E4A5-4B91-9685-231FDF796E8B@...>
> Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed
>
> Hi Bruno,
>
>> In Matlab, I load the config, etc and parse the XY Position. and then
>> do whatever I want in each position. Today, I downloaded and
>> installed
>> the latest beta 9 and now, the position that mm GUI reports is NOT
>> the
>> same that matlab reports when it loads up. I've changed matlab to use
>> all the beta9 path, etc.
>
> What is beta 9?
>
> What has changed in Micro-manager is that some work has been done
> towards standardizing stage positioning and directionality (see
> https://valelab.ucsf.edu/~nico/MMwiki/index.php/Overview on our Wiki
> for the general ideas). As a consequence, the Get and Set PositionUm
> functions in the Ludl adapter were changed as follows:
> - x = xSteps * stepSizeUm_;
> - y = ySteps * stepSizeUm_;
> + x = (xSteps * stepSizeUm_) + originX_;
> + y = originY_ - (ySteps * stepSizeUm_);
> This is still not the final version, since the directionality of the
> Ludl stage can be set with dipswicthes in the controller and cannot
> be read out by the software.
>
> originX_ and originY_ are set in the function 'SetAdapterOrigin()
> which is called during initialization. I forgot why I added that
> call in the initialize function, and since this behavior is annoying,
> I'll take it out (originX_ and originY_ are 0 by default).
>
> As a workaround until a next release, you can actually start up
> MMStudio from within your matlab environment and set the positionlist
> there (as long as you do not re-initialize the Ludl adapter you
> should be fine.)
>
>> So, apparently, now I have to home it and reset the stage once I
>> start
>> my stuff in matlab. The painful part is that I need to lower the
>> objective to home it and then get it higher. So, I'm now doing it
>> manually. Is there a way to issue the quick command of escaping and
>> going back to the same Z? if so I could automate the whole thing but
>> that's a minor detail...
>
> Write a little beanshell script....
>
>> I just wanted to let others know that MM when run in matlab is not
>> behaving like it used to.
>
> This is probably only true when using a Ludl stage.
>
> Best,
>
> Nico
|