Dear all,
I would like to control the Z-drive of a Nikon Ti microscope (without PFS) from a home-written program. (The program is in Python, but I don’t mind using other languages if necessary.) I have found and tried using various solutions: directly controlling the (undocumented?) Nikon.TiScope.NikonTi COM object via pywin32, or controlling the Z-drive via Micro-Manager and pymmcore or pycro-manager. In all cases I have found that the control is rather brittle: requests for position change (MoveRelative()
/MoveAbsolute()
on the COM object, or setPosition()
on MMCore) only sometimes result in actual physical motion; even when it does, the position reported back (Position()
on the COM object, or getPosition()
on MMCore) often fails to correctly update (and in any case never includes the “custom” z-offset set on the microscope, although that’s a much less important issue that can be worked around); and, on top of that, the whole process crashes with Windows access violations every so often.
Are these problems that others here have seen before? Does anyone have a solution for more robust control of the Nikon Ti Z-drive?
Thanks in advance,
Antony