public double GetPosition(char axis)
        {
            mutex.WaitOne();
            Int32 position = 0;

            if (!SelectChannel())
            {
                return(-1);
            }
            if (!TMLLib.TS_SelectAxis(motors[axis].id))
            {
                return(-1);
            }
            if (!TMLLib.TS_GetLongVariable("APOS", out position))
            {
                return(-1);
            }
            mutex.ReleaseMutex();
            return(RotationToMicron(axis, position));
        }