Beispiel #1
0
 private void button_stop_Click(object sender, EventArgs e)
 {
     if (Dmc1000_Dll.d1000_check_done(Model.XCH) == 0 || //在运行
         Dmc1000_Dll.d1000_check_done(Model.YCH) == 0 ||
         Dmc1000_Dll.d1000_check_done(Model.ZCH) == 0 ||
         Dmc1000_Dll.d1000_check_done(Model.UCH) == 0)
     {//当减速时间为0时,为急停效果
         Dmc1000_Dll.d1000_decel_stop(Model.XCH);
         Dmc1000_Dll.d1000_decel_stop(Model.YCH);
         Dmc1000_Dll.d1000_decel_stop(Model.ZCH);
         Dmc1000_Dll.d1000_decel_stop(Model.UCH);
         return;
     }
 }
Beispiel #2
0
        private void button_start_Click(object sender, EventArgs e)
        {
            UpdateControl();

            if (Dmc1000_Dll.d1000_check_done(Model.nAxis) == 0)
            {
                return;                                                //若在运行,则返回
            }
            Dmc1000_Dll.d1000_set_sd(Model.nAxis, checkBoxSD.Checked ? 1 : 0);

            int nDir = checkBoxDir.Checked ? 1 : -1;

            int    nStart  = Convert.ToInt16(textBoxOSpd.Text);
            int    nMSpeed = Convert.ToInt16(textBoxMSpd.Text);
            double nTAcc   = Convert.ToDouble(textBoxTAcc.Text);
            int    nPulse  = Convert.ToInt16(textBoxPulse.Text);

            if (checkBoxPMode.Checked)                                                        //脉冲+方向
            {
                Dmc1000_Dll.d1000_set_pls_outmode(Model.nAxis, checkBoxPLog.Checked ? 1 : 0); //1-pulse/dir 模式,脉冲下降沿有效;0-pulse/dir 模式,脉冲上升沿有效
            }
            else//脉冲+脉冲
            {
                Dmc1000_Dll.d1000_set_pls_outmode(Model.nAxis, checkBoxPLog.Checked ? 3 : 2);//3-CW/CCW 模式,脉冲下降沿有效;2-CW/CCW 模式,脉冲上升沿有效
            }

            if (radioButtonM.Checked)//定长运动
            {
                if (radioButtonS.Checked)
                {
                    Dmc1000_Dll.d1000_start_s_move(Model.nAxis, nPulse * nDir, nStart, nMSpeed, nTAcc);//S形
                }
                else if (radioButtonT.Checked)
                {
                    Dmc1000_Dll.d1000_start_t_move(Model.nAxis, nPulse * nDir, nStart, nMSpeed, nTAcc);//T形
                }
            }
        }