microscope-cockpit / cockpit

Cockpit is a microscope graphical user interface. It is a flexible and easy to extend platform aimed at life scientists using bespoke microscopes.
https://microscope-cockpit.org
GNU General Public License v3.0
36 stars 26 forks source link

Aerotech device home state #217

Open mickp opened 8 years ago

mickp commented 8 years ago

Aerotech device should move to a safe position (from config) for homing / exercising the stage.

mickp commented 6 years ago

We ditched stage exercising, but still need to query whether or not the Aerotech axis is homed or not, otherwise there can be discrepancies between reported and actual position.

iandobbie commented 3 years ago

Actually homing the stage is very simple we just need

self.command(b'ENABLE') self.command(b'HOME') self.command(b'DISABLE')

Not sure how to determine if the stage has been homed or not

mickp commented 3 years ago

I think we deliberately didn't implement homing as a precaution against accidental homing: that's a powerful motor that could do serious damage if there were anything between the stage and the homing reference. As I remember, we seldom homed it, and always via Soloist.

On Wed, 12 May 2021 at 07:29, Ian Dobbie @.***> wrote:

Actually homing the stage is very simple we just need

self.command(b'ENABLE') self.command(b'HOME') self.command(b'DISABLE')

Not sure how to determine if the stage has been homed or not

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/MicronOxford/cockpit/issues/217#issuecomment-839819390, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHGTL5YFLNZFE4HB37EDP3TNKGFHANCNFSM4CL74TFA .

--


Mick Phillips


iandobbie commented 3 years ago

Maybe so, however the current setup is unable to connect via soloist. I suspect that it is something to do with the rather strange network config. I have had several back and forths with Aerotech and been unable to get the master to talk to controller. I eventually managed by installing the software on the dm control computer and using that, but it was a royal pain. My current plan is either just have a function, but not plumb it in, so at least we can do a short piece of code to home the stage, or wrapped with a nasty dialog to say BE CAREFUL! Currently I have no idea how to read the state, so I think I will just implement a home function but not connect it to anything.

carandraug commented 3 years ago

[...] Currently I have no idea how to read the state, so I think I will just implement a home function but not connect it to anything.

For the record, this was done this with commit 68de6487202ac1802a

iandobbie commented 2 years ago

The general case was solved for #809 with ad4dde0e06060efb8b11d806900f4fcdc5da81ef

For the Aerotech dev we now need to read the stage home state and then do the home dance if it is needed.