Пример #1
0
        // Home Search

        public bool OriginMoveEnd(short m_nAxis)
        {
#if PROGRAM_RUNNING
            uint Result = 0;

            if (GetRunAxis(m_nAxis) == false)
            {
                return(true);
            }
            if (CAXM.AxmHomeGetResult(m_nAxis, ref Result) != (uint)AXT_FUNC_RESULT.AXT_RT_SUCCESS)
            {
                return(false);
            }
            if (Result == 1)
            {
                return(true);
            }
            else
            {
                return(false);
            }
#else
            return(true);
#endif
        }
Пример #2
0
        /// <summary>
        /// 홈동작 완료 확인.
        /// </summary>
        /// <returns>홈동작 완료여부</returns>
        public bool GetHomeDone()
        {
            uint       iRet = 0;
            bool       bRet;
            const uint HOME_SUCCESS = 0x01;       // 홈 완료

            CAXM.AxmHomeGetResult(Para.iPhysicalNo, ref iRet);
            bRet = (iRet == HOME_SUCCESS);

            return(bRet);
        }
Пример #3
0
        public bool GetHoming()
        {
            uint       iRet = 0;
            bool       bRet;
            const uint COMPLETE          = 0x01;
            const uint SEARCHING         = 0x02;
            const uint GANTRY_RANGEOVER  = 0x10;
            const uint STOPED            = 0x11;
            const uint SPEED_WRONG       = 0x12;
            const uint SERVO_ALRAM       = 0x13;
            const uint POS_DIRCT_NEG_LMT = 0x14;
            const uint NEG_DIRCT_POS_LMT = 0x15;
            const uint NOT_FOUND         = 0x16;
            const uint WRONG_AXISNO      = 0xFF;



            CAXM.AxmHomeGetResult(Para.iPhysicalNo, ref iRet);

            if (iRet != iPreHomeRslt)
            {
                switch (iRet)
                {
                case COMPLETE: break;

                case SEARCHING: break;

                case GANTRY_RANGEOVER: MessageBox.Show("Gantry Offset Rangeover", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case STOPED: MessageBox.Show("Home Stoped", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case SPEED_WRONG: MessageBox.Show("Check Home Speed Setting", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case SERVO_ALRAM: MessageBox.Show("Servo Alram", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case POS_DIRCT_NEG_LMT: MessageBox.Show("Checked -Lmt while +Homing", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case NEG_DIRCT_POS_LMT: MessageBox.Show("Checked +Lmt while -Homing", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;

                case NOT_FOUND: MessageBox.Show("HomeSensor desn't found", "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;
                    //case WRONG_AXISNO     : MessageBox.Show("Wrong Phy Address"          , "PhyNo:" + Para.iPhysicalNo.ToString() + "Homing Err"); break;
                }
            }

            iPreHomeRslt = iRet;
            bRet         = (iRet == SEARCHING);
            return(bRet);
        }
Пример #4
0
        public uint GetHomeState()
        {
            try
            {
                uint duRetCode, duState = 0;
                duRetCode = CAXM.AxmHomeGetResult(m_nAxisNumber, ref duState);

                if (duRetCode != (uint)AXT_FUNC_RESULT.AXT_RT_SUCCESS)
                {
                    return((uint)AXT_MOTION_HOME_RESULT.HOME_ERR_UNKNOWN);
                }
                return(duState);
            }
            catch (Exception E)
            {
                LogFile.LogExceptionErr(E.ToString());
                throw E;
            }
        }
Пример #5
0
        public bool AxtReadHome(short m_nAxis)
        {
#if PROGRAM_RUNNING
            uint mStatus = 0;
            if (CAXM.AxmHomeGetResult(m_nAxis, ref mStatus) != (uint)AXT_FUNC_RESULT.AXT_RT_SUCCESS)
            {
                return(false);
            }

            if ((mStatus & (byte)AXT_MOTION_HOME_RESULT.HOME_SUCCESS) == (byte)AXT_MOTION_HOME_RESULT.HOME_SUCCESS)
            {
                return(true);
            }
            else
            {
                return(false);
            }
#else
            return(false);
#endif
        }