示例#1
0
        private void btnEmergencyStop_Click(object sender, EventArgs e)
        {
            IDmcControlService service = ServiceManager.getOneDmcControlService();

            service.emergencyStop();
            ServiceManager.closeService(service);
        }
示例#2
0
        private void btnOriginPoint_Click(object sender, EventArgs e)
        {
            IDmcControlService service = ServiceManager.getOneDmcControlService();

            service.originPoint();
            ServiceManager.closeService(service);
        }
示例#3
0
        private void btnResetRotatingPos_Click(object sender, EventArgs e)
        {
            //旋转位置清零
            IDmcControlService service = ServiceManager.getOneDmcControlService();

            service.resetRotatingPos();
            ServiceManager.closeService(service);
        }
示例#4
0
        private void btnRotatingRun_Click(object sender, EventArgs e)
        {
            double             rotatingFinalAngle = Convert.ToDouble(this.tbxSetRotatingPos.Text);
            double             rotatingSpeed      = Convert.ToDouble(this.tbxSetRotatingSpeed.Text);
            IDmcControlService service            = ServiceManager.getOneDmcControlService();

            service.rotatingRun(rotatingFinalAngle, rotatingSpeed);
            ServiceManager.closeService(service);
        }
示例#5
0
        private void btnHorizontalRun_Click(object sender, EventArgs e)
        {
            double             horizontalFinalPos = Convert.ToDouble(this.tbxSetHorizontalPos.Text); //单位为m
            double             horizontalSpeed    = Convert.ToDouble(this.tbxHorizontalSpeed.Text);  //单位为m/s
            IDmcControlService service            = ServiceManager.getOneDmcControlService();

            service.horizontalRun(horizontalFinalPos, horizontalSpeed);
            ServiceManager.closeService(service);
        }
示例#6
0
        private void button1_Click(object sender, EventArgs e)
        {
            //初始化导轨控制板
            IDmcControlService service = ServiceManager.getOneDmcControlService();

            service.beginAsync();
            ServiceManager.closeService(service);
            _posThread = new Thread(new ThreadStart(updatePos));
            _posThread.Start();
            dmcConnected = true;
        }
示例#7
0
 public void stopDmc()
 {
     if (dmcConnected)
     {
         //关闭导轨控制板
         IDmcControlService service = ServiceManager.getOneDmcControlService();
         service.shutdown();
         ServiceManager.closeService(service);
         try
         {
             this._posThread.Abort();
         }
         catch
         {
         }
         dmcConnected = false;
     }
 }
示例#8
0
        private void button2_Click(object sender, EventArgs e)
        {
            //关闭导轨
            IDmcControlService service = ServiceManager.getOneDmcControlService();

            service.shutdownAsync();
            ServiceManager.closeService(service);
            try
            {
                if (_posThread != null)
                {
                    _posThread.Abort();
                }
            }
            catch
            {
            }
            dmcConnected = false;
        }
示例#9
0
 public void updatePos()
 {
     while (true)
     {
         IDmcControlService service = ServiceManager.getOneDmcControlService();
         List <DMCPosDto>   posList = new List <DMCPosDto>(service.tryDequeue());
         ServiceManager.closeService(service);
         if (posList.Count > 0)
         {
             foreach (DMCPosDto dmcPosDto in posList)
             {
                 PhaseLocating.getInstance().addPositionRecord(dmcPosDto.x, dmcPosDto.y, dmcPosDto.microSecond);
             }
             DMCPosDto lastPosDto = posList.Last();
             D         posD       = new D(showPosition);
             this.btnHorizontalRun.Invoke(posD, lastPosDto.x, lastPosDto.y);
         }
         Thread.Sleep(10);
     }
 }
示例#10
0
 public static void closeService(IDmcControlService service)
 {
     ((DmcControlServiceClient)service).Close();
 }