Esempio n. 1
0
        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        //생성 :
        //수정 :
        //목적 : 3D 센서( Gocator )
        //설명 :
        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        public override bool HL3DAlign()
        {
            bool bReturn = false;

            do
            {
                m_objCamera.Align();
                bReturn = true;
            } while(false);
            return(bReturn);
        }
        int CalibrationSensor(int goalignmentType, int alignmentmovingTarget, double diskDiameter, double diskHeight)
        {
            try
            {
                GoSetup setup = sensor_main.Setup;
                setup.AlignmentType                    = GoAlignmentType.Moving;
                setup.AlignmentMovingTarget            = GoAlignmentTarget.Disk;
                setup.DiskDiameter                     = diskDiameter;
                setup.DiskHeight                       = diskHeight;
                setup.AlignmentEncoderCalibrateEnabled = true;
                sensor_main.Align();           //wait for calibration disk to be scanned

                dataSet = system_main.ReceiveData(300000000);
                for (UInt32 i = 0; i < dataSet.Count; i++)
                {
                    GoAlignMsg dataItem = (GoAlignMsg)dataSet.Get(i);
                    if (dataItem.MessageType == GoDataMessageType.Alignment)
                    {
                        if (dataItem.Status == KStatus.Ok)
                        {
                            calibrationSuccessfulBl = true;
                        }
                        else
                        {
                            calibrationSuccessfulBl = false;
                        }
                    }
                }
            }
            catch (KException ex)
            {
                if (ex.Status == KStatus.ErrorTimeout)
                {
                    errorInformation.Add(DateTime.Now.ToString("yyyy:MM:dd HHmmss") + "calibration disk time out");
                }
                else if (ex.Status != KStatus.Ok)
                {
                    errorInformation.Add(DateTime.Now.ToString("yyyy:MM:dd HHmmss") + "calibration error code" + ex.Status);
                }
            }


            return(0);
        }