Esempio n. 1
0
        private void timer_Refresh_Tick(object sender, EventArgs e)
        {
            Frm_Wait_Load(this, null);
            //  this.Text = TxtData.DataBase.Upload.ToString();
            if (IsUpload)
            {
                PP_process.Caption     = "请等待";
                PP_process.Description = "正在上传...";

                return;
            }
            if (TxtData.PublicData.ErrorCode != 0)
            {
                if (TxtData.PublicData.ErrorCode == 40)
                {
                    if (!NeedUpload)
                    {
                        this.timer_Refresh.Enabled = false;
                        this.Close();
                        return;
                    }
                }
                else
                {
                    PP_process.Caption     = "报错";
                    PP_process.Description = "信息:" + Error[TxtData.PublicData.ErrorCode];//.ToString();
                    timer_Refresh.Enabled  = false;
                    return;
                }
            }

            if (NeedUpload && TxtData.DataBase.InterfaceType == 9)
            {
                PP_process.Caption     = "提示:";
                PP_process.Description = "信息:下位机处在等待界面";
                return;
            }

            PP_process.Caption     = "请等待";
            PP_process.Description = "程序正在运行...";

            #region 需要上传
            if (TxtData.DataBase.Upload && NeedUpload)
            {
                PP_process.Caption     = "请等待";
                PP_process.Description = "正在保存文件...";
                if (File.Exists(Application.StartupPath + "\\Txt\\Recipe.txt"))
                {
                    File.Delete(Application.StartupPath + "\\Txt\\Recipe.txt");
                }
                if (File.Exists(Application.StartupPath + "\\Txt\\Configure.txt"))
                {
                    File.Delete(Application.StartupPath + "\\Txt\\Configure.txt");
                }

                if (File.Exists(Application.StartupPath + "\\Txt\\Preset.txt"))
                {
                    File.Delete(Application.StartupPath + "\\Txt\\Preset.txt");
                }
                if (File.Exists(Application.StartupPath + "\\Txt\\Action.txt"))
                {
                    File.Delete(Application.StartupPath + "\\Txt\\Action.txt");
                }

                ftp = new FtpClient(TxtData.XMLConfigure.IpAddress);
                string Strdate = "_" + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString();

                switch (TxtData.DataBase.InterfaceType)
                {
                //保存工艺
                case 3:
                {
                    TxtData.PublicData.ErrorCode = ftp.DownLoadPreset() ? 0 : 13;
                    if (TxtData.PublicData.ErrorCode == 0)
                    {
                        TxtData.PublicData.ErrorCode = (db.ImportPreset(Application.StartupPath + "\\Txt\\Preset.txt", "StaubliPreset") == 0) ? 0 : 17;
                        File.Copy(Application.StartupPath + "\\Txt\\Preset.txt", Application.StartupPath + "\\Log\\Preset" + Strdate + ".txt", true);
                    }


                    break;
                }


                //动作
                case 4:
                {
                    TxtData.PublicData.ErrorCode = ftp.DownLoadAction() ? 0 : 14;
                    if (TxtData.PublicData.ErrorCode == 0)
                    {
                        TxtData.PublicData.ErrorCode = (db.ImportAction(Application.StartupPath + "\\Txt\\Action.txt") == 0) ? 0 : 18;
                        File.Copy(Application.StartupPath + "\\Txt\\Action.txt", Application.StartupPath + "\\Log\\Action" + Strdate + ".txt", true);
                    }


                    break;
                }

                //产品
                case 5:
                {
                    IsUpload = true;
                    System.Threading.ThreadPool.QueueUserWorkItem(new WaitCallback(Poll));
                    return;
                }

                case 10:
                {
                    TxtData.Recipe.RecipeFrame   = RobotKit.StaubliXML.GetXMLCarten("fFrame", SoapInstance.SoapRead.GetAppdata());
                    TxtData.PublicData.ErrorCode = (TxtData.Recipe.RecipeFrame != null) ? 0 : 36;
                    if (TxtData.PublicData.ErrorCode == 0)
                    {
                        TxtData.PublicData.ErrorCode = db.EditRecipeFrame(RecipeName, TxtData.Recipe.RecipeFrame)? 0 : 37;
                    }


                    break;
                }

                case 11:
                {
                    TxtData.Recipe.RecipeFrame   = RobotKit.StaubliXML.GetXMLCarten("fOffset", SoapInstance.SoapRead.GetAppdata());
                    TxtData.PublicData.ErrorCode = (TxtData.Recipe.RecipeFrame != null) ? 0 : 36;
                    if (TxtData.PublicData.ErrorCode == 0)
                    {
                        TxtData.PublicData.ErrorCode = db.EditRecipeOffset(RecipeName, TxtData.Recipe.RecipeFrame) ? 0 : 37;
                    }
                    break;
                }

                case 7:
                case 12:
                case 14:
                case 15:
                case 16:
                case 17:
                case 18:
                case 19:
                {
                    TxtData.PublicData.ErrorCode = ftp.DownLoadConfigure() ? 0 : 15;
                    if (TxtData.PublicData.ErrorCode == 0)
                    {
                        TxtData.PublicData.ErrorCode = db.ImportConfigure() == 0 ? 0 : 19;
                        File.Copy(Application.StartupPath + "\\Txt\\Configure.txt", Application.StartupPath + "\\Log\\Configure" + Strdate + ".txt", true);
                    }


                    break;
                }
                }
                if (TxtData.PublicData.ErrorCode == 0)
                {
                    TxtData.PublicData.ErrorCode = RobotKit.SoapInstance.SoapRead.SetAppdata("bUpload", false)?0:12;
                }
                if (TxtData.PublicData.ErrorCode == 0)
                {
                    PP_process.Caption     = "成功";
                    PP_process.Description = "信息:文件上传成功";

                    while (TxtData.DataBase.Upload)
                    {
                        System.Threading.Thread.Sleep(10);
                    }
                }
            }
            #endregion
        }
Esempio n. 2
0
        private void BT_ReicpeFrame_Click(object sender, EventArgs e)
        {
            if (CBE_RecipeName.EditValue.ToString() == "")
            {
                MessageBox.Show("无产品");
                return;
            }
            if (TxtData.SoapData.InterfaceType != 9)
            {
                MessageBox.Show("下位机请切换到主界面!");
                return;
            }

            if (TxtData.SoapData.ToolMode != 1)
            {
                MessageBox.Show("请切换到手动模式!");
                return;
            }

            if (TxtData.SoapData.Frame == null || TxtData.SoapData.Frame == new double[] { 0, 0, 0, 0, 0, 0 })
            {
                MessageBox.Show("下位机CS8C坐标系错误!");
                return;
            }

            if (MessageBox.Show(
                    "下位机CS8C示教产品坐标系:\n" + "X:" + TxtData.SoapData.Frame[0].ToString() + "     Y:" + TxtData.SoapData.Frame[1].ToString() + "   Z:" + TxtData.SoapData.Frame[2].ToString() + "\n" +
                    "  RX:" + TxtData.SoapData.Frame[3].ToString() + "     RY:" + TxtData.SoapData.Frame[4].ToString() + "  RZ:" + TxtData.SoapData.Frame[5].ToString() +
                    "\n是否继续?", "产品坐标系", MessageBoxButtons.YesNo) == DialogResult.No)
            {
                return;
            }
            //if (!SoapInstance.SoapRead.SetAppdata("sProductName", CBE_RecipeName.EditValue.ToString()))
            //{
            //    MessageBox.Show("设置下位机数据出错!");
            //    return;
            //}
            //if (!SoapInstance.SoapRead.SetAppdata("nVirtualKey", 274))
            //{
            //    MessageBox.Show("设置下位机数据出错!");
            //    return;
            //}
            //while (TxtData.SoapData.InterfaceType == 9)
            //{
            //    System.Threading.Thread.Sleep(10);
            //}
            //TxtData.PublicData.ErrorCode = 0;
            //Frm_Wait frm = new Frm_Wait(CBE_RecipeName.EditValue.ToString(),true);
            //frm.ShowDialog();


            if (db.EditRecipeFrame(CBE_RecipeName.Text, TxtData.SoapData.Frame))
            {
                RecipeInfor();
                MessageBox.Show("OK");
            }
            else
            {
                MessageBox.Show("Error");
            }
        }