예제 #1
0
        public bool StartInscriptionSegment(SegmentInscriptionComplete inscriptionComplete)
        {
            try
            {
                _segmentInscriptionComplete = inscriptionComplete;
                _motionStopped[0].Reset();
                _motionStopped[1].Reset();

                Thread thread1 = new Thread(WaitForSegmentInscrptionComplete);
                thread1.Start();

                Axis[] axes = { Axis.ACSC_AXIS_0, Axis.ACSC_AXIS_1, Axis.ACSC_NONE };

                _ACS.EnableEvent(Interrupts.ACSC_INTR_PHYSICAL_MOTION_END);

                // Start the motion of 0 and 1
                _ACS.GoM(axes);

                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine("MotorManager exception: " + ex.Message);
            }

            return(false);
        }
예제 #2
0
        public void EndInscriptionSegmentPath()
        {
            _ACS.DisableEvent(Interrupts.ACSC_INTR_PHYSICAL_MOTION_END);
            _segmentInscriptionComplete = null;

            Axis[] axes = { Axis.ACSC_AXIS_0, Axis.ACSC_AXIS_1, Axis.ACSC_NONE };
            // Finish the motion
            // End of the multi-point motion
            _ACS.EndSequenceM(axes);
        }