Example #1
0
 private void button_clear_Click(object sender, EventArgs e)
 {
     for (int i = 0; i < 4; i++)
     {
         Dmc1000_Dll.d1000_set_command_pos(i, 0);
     }
 }
Example #2
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;
     }
 }
Example #3
0
        public void UpdateControl()
        {
            checkBoxPMode.Text = (checkBoxPMode.Checked    ? "脉冲+方向"          : "脉冲+脉冲");
            checkBoxPLog.Text  = (checkBoxPLog.Checked     ? "脉冲下降沿有效"     : "脉冲上升沿有效");
            checkBoxSD.Text    = (checkBoxSD.Checked       ? "减速:使能"         : "减速:禁止");
            checkBoxDir.Text   = (checkBoxDir.Checked      ? "驱动方向:正"       : "驱动方向:负");

            checkBoxOut1.Text = (checkBoxOut1.Checked ? "OUT1:高电平" : "OUT1:低电平");
            Dmc1000_Dll.d1000_out_bit(1, checkBoxOut1.Checked ? 1 : 0);

            checkBoxOut2.Text = (checkBoxOut2.Checked ? "OUT2:高电平" : "OUT2:低电平");
            Dmc1000_Dll.d1000_out_bit(2, checkBoxOut2.Checked ? 1 : 0);

            checkBoxOut3.Text = (checkBoxOut3.Checked ? "OUT3:高电平" : "OUT3:低电平");
            Dmc1000_Dll.d1000_out_bit(3, checkBoxOut3.Checked ? 1 : 0);

            checkBoxOut4.Text = (checkBoxOut4.Checked ? "OUT4:高电平" : "OUT4:低电平");
            Dmc1000_Dll.d1000_out_bit(4, checkBoxOut4.Checked ? 1 : 0);
        }
Example #4
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形
                }
            }
        }
Example #5
0
        //动态更新UI
        private void DynamicUI(object sender, EventArgs e)
        {
            string ReadContent = bll.BLL_GetDalLayer().IniFile.ReadString(Model.m_szAutoMachineName + "_AccessControl", "AccessEnable", "", Directory.GetCurrentDirectory() + "/Setting.ini");

            if (Model.m_ProgramStatus == "2")//打开
            {
                this.ProductProject_textBox.Text = Model.m_szProjectName;

                bll.BLL_LoadProjectInfo();

                if (Model.m_szProjectDatabasePath == string.Empty)
                {
                    MessageBox.Show("加载程式ROI坐标失败,请先打开机种!");
                    return;
                }
            }

            if (Model.m_ProgramStatus == "3")//修改
            {
                this.ProductProject_textBox.Text = Model.m_szProjectName;

                bll.BLL_LoadProjectInfo();

                if (Model.m_szProjectDatabasePath == string.Empty)
                {
                    MessageBox.Show("加载程式ROI坐标失败,请先打开机种!");
                    return;
                }
            }


            Model.m_ProgramStatus = "-1";


            ///////////////////////////////////////////////////////////////////////////////////////////////////////////

            label_position.Text = "状态:" + Convert.ToString(Dmc1000_Dll.d1000_get_axis_status(Model.XCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_axis_status(Model.YCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_axis_status(Model.ZCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_axis_status(Model.UCH));

            label_position.Text = label_position.Text + " 位置:" + Convert.ToString(Dmc1000_Dll.d1000_get_command_pos(Model.XCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_command_pos(Model.YCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_command_pos(Model.ZCH));
            label_position.Text = label_position.Text + "," + Convert.ToString(Dmc1000_Dll.d1000_get_command_pos(Model.UCH));

            label_input.Text = "IN1:" + Convert.ToString(Dmc1000_Dll.d1000_in_bit(1)) +
                               ", IN2:" + Convert.ToString(Dmc1000_Dll.d1000_in_bit(2)) +
                               ", IN3:" + Convert.ToString(Dmc1000_Dll.d1000_in_bit(3)) +
                               ", IN4:" + Convert.ToString(Dmc1000_Dll.d1000_in_bit(4));


            //光标处的图像坐标
            Point LocalMousePosition     = new Point();
            Point ZoomLocalMousePosition = new Point();

            LocalMousePosition = VideoWindow_pictureBox.PointToClient(Cursor.Position);
            //  toolStripStatusLabel1.Text = "X=" + LocalMousePosition.X + "," + "Y=" + LocalMousePosition.Y;
            ZoomLocalMousePosition = TranslateZoomMousePosition(LocalMousePosition);
            ImgPosition_toolStripStatusLabel.Text = "图像坐标: ( " + ZoomLocalMousePosition.Y + " , " + ZoomLocalMousePosition.X + " )";
        }