コード例 #1
0
ファイル: MainControl.cs プロジェクト: houxpGit/12
 public void BIZZRun()
 {
     RunClass.Instance().Meth.OutPut_One_Run("三色灯红", "true");
     RunClass.Instance().Meth.OutPut_One_Run("三色灯绿", "false");
     while (true)
     {
         RunClass.Instance().Meth.OutPut_One_Run("BIZZ", "true");
         Thread.Sleep(2000);
         RunClass.Instance().Meth.OutPut_One_Run("BIZZ", "false");
         Thread.Sleep(1000);
         //this.BeginInvoke(new EventHandler(delegate
         //{
         if (AlarmForm.FormHint == "hint")
         {
             DateSave.Instance().Production.Current_TIME = 0;
             RunClass.Instance().Meth.OutPut_One_Run("BIZZ", "false");
             RunClass.Instance().Meth.OutPut_One_Run("三色灯红", "false");
             RunClass.Instance().Meth.OutPut_One_Run("三色灯绿", "true");
             // AlarmForm.Hide();
             break;
             //  Bizz.Abort();
         }
         //}));
     }
 }
コード例 #2
0
ファイル: StartForm.cs プロジェクト: houxpGit/12
        private void StopClick()
        {
            //ComeOut.parse = false;
            isRunFinish = false;
            count       = 0;
            IOManage.OUTPUT("焊接机允许入料").SetOutBit(false);
            TableManage.TableDriver("运动平台").Stop(TableAxisName.X);
            TableManage.TableDriver("运动平台").Stop(TableAxisName.Y);
            TableManage.TableDriver("运动平台").Stop(TableAxisName.Z);
            // RunClass.Instance().Stop = true;
            RunClass.Instance().RunClass_IsFinish = false;
            RunClass.Instance().StartRun = false;
            DateSave.Instance().Production.IsStop = true;
            MainControls.taskInfo.iTaskStep = (int)MainControl.flowCharNew.接进料流程;



            MainControl.Weld_Sta = "空闲中";
        }
コード例 #3
0
        public void TestJsonMethod()
        {
            var folder = Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("TestFiles")
                         .GetAwaiter().GetResult();
            var file = folder.GetFileAsync("json.text").GetAwaiter().GetResult();

            var jsonText = Windows.Storage.FileIO.ReadTextAsync(file).GetAwaiter().GetResult();

            var runClass = new RunClass();

            MethodInfo methodInfo = typeof(RunClass).GetMethod("SaveData", BindingFlags.NonPublic | BindingFlags.Instance);

            object[] parameters = { jsonText };
            methodInfo.Invoke(runClass, parameters);



            //var localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
            //var folder = localFolder.GetFolderAsync("TestFiles").GetResults();
            //var file = folder.GetFileAsync("json.text").GetResults();
        }
コード例 #4
0
ファイル: StartForm.cs プロジェクト: houxpGit/12
        private void StartClick()
        {
            if (!MainModule.FormMain.bHomeReady)
            {
                MainModule.FormMain.m_formAlarm.InsertAlarmMessage("请先回原点!");
                return;
            }

            if (DateSave.Instance().Production.EStop == true)
            {
                MainModule.FormMain.m_formAlarm.InsertAlarmMessage("急停标志位未复位!");
                return;
            }
            DateSave.Instance().Production.IsStop = false;
            //if (DateSave.Instance().Production.StationMaterial == true)
            //{
            //    MainModule.FormMain.m_formAlarm.InsertAlarmMessage("工位有料请先排料,并清除工位记忆!");
            //    return;
            //}
            MainModule.FormMain.bStartPress = true;
            // RunClass.Instance().Stop = false;
            //   RunClass.Instance().AxisR.Stop = false;
            //  RunClass.Instance().ClinderR.Stop= false;
            //  RunClass.Instance().Meth.Stop = false;
            DateSave.Instance().Production.IsStop = false;
            if (!MainModule.FormMain.bAuto)
            {
                if (RunClass.Instance().Run_OneCase != null && RunClass.Instance().Run_OneCase.IsAlive == true)
                {
                    RunClass.Instance().Run_OneCase.Abort();
                }

                RunClass.Instance().parse    = false;
                RunClass.Instance().GoOnRun  = false;//继续运行标志位
                RunClass.Instance().StartRun = false;
                MainControls.taskInfo.iTaskStep = 18;
                MainModule.FormMain.bAuto       = true;
                //   ControlPlatformLib.Global.logger.Info("自动运行开始:" + DateTime.Now.ToString("yyyy/MM/dd/ HH : mm : ss"));
            }
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: Y-Koji/PolymophismDemo
        /// <summary>
        /// 多態性を用いないクラスの実行メソッド
        /// </summary>
        static void NotExecutableObjectRunTest(RunClass select)
        {
            // 多態性を用いないと,複数のパターンに対応したメソッドを作る場合
            // 引数に渡されるパターン分の処理を記述しておかなければいけない。
            switch (select)
            {
            case RunClass.Human:
                new Human().Run();
                break;

            case RunClass.Car:
                new Car().Run();
                break;

            case RunClass.Dog:
                new Dog().Run();
                break;

            default:
                throw new NotSupportedException();
            }
        }
コード例 #6
0
        private void 运行流程_Click(object sender, EventArgs e)
        {
            if (!MainModule.FormMain.bHomeReady)
            {
                MainModule.FormMain.m_formAlarm.InsertAlarmMessage("请先回原点!");
                return;
            }
            if (MainModule.FormMain.bAuto)
            {
                MainModule.FormMain.m_formAlarm.InsertAlarmMessage("请先停止自动运行!");
                return;
            }

            if (RunClass.Instance().Run_OneCase == null)
            {
                if (机种选择.Text != "" && 运行流程选择.Text != "")
                {
                    DateSave.Instance().Production.IsStop = false;
                    RunClass.Instance().RunClass_IsFinish = false;
                    RunClass.Instance().runTask(ReadstfPath + "\\" + 机种选择.Text + "\\" + 运行流程选择.Text);
                }
            }
            else
            {
                if (RunClass.Instance().Run_OneCase.IsAlive == true)
                {
                    MainModule.FormMain.m_formAlarm.InsertAlarmMessage("请先停止运行!");
                    return;
                }
                if (机种选择.Text != "" && 运行流程选择.Text != "")
                {
                    DateSave.Instance().Production.IsStop = false;
                    RunClass.Instance().RunClass_IsFinish = false;
                    RunClass.Instance().runTask(ReadstfPath + "\\" + 机种选择.Text + "\\" + 运行流程选择.Text);
                }
            }
        }
コード例 #7
0
ファイル: MainControl.cs プロジェクト: houxpGit/12
        //下料移栽
        public override void Process()
        {
            try
            {
                lock (lockObj)
                {
                    bool bAutoTrag      = false;
                    bool bManualTrag    = false;
                    bool bTragCondition = false;
                    if (taskInfo.bTaskAlarm)
                    {
                        if (MainModule.FormMain.bResetPress)
                        {
                            taskInfo.bTaskAlarm = false;
                            Thread.Sleep(10);
                            m_taskTime.Start();
                        }
                        return;
                    }
                    if (!MainModule.FormMain.bAuto)
                    {
                        return;
                    }
                    bTragCondition = true;
                    bAutoTrag      = MainModule.FormMain.bAuto && (!taskInfo.bTaskFinish) && (!taskInfo.bTaskOnGoing);
                    bManualTrag    = m_manualStart;
                    switch (taskInfo.iTaskStep)
                    {
                    case (int)flowCharNew.任务开始:    //任务开始
                        if ((bAutoTrag | bManualTrag) && bTragCondition)
                        {
                            m_taskTime.Start();
                            m_taskGroup.AddRunMessage("打标任务0,任务开始。");
                            taskInfo.bTaskOnGoing = true;
                            taskInfo.iTaskStep    = (int)flowCharNew.接进料流程;
                            Weld_Log.Instance().Enqueue(LOG_LEVEL.LEVEL_3, "[IO输出]," + "任务开始");
                            //taskInfo.iTaskStep = (int)flowCharNew.与线体PLC对接进料信号;
                        }
                        break;

                    case (int)flowCharNew.接进料流程:
                        if (RunClass.Instance().StartRun == false && DateSave.Instance().Production.StationMaterial == false)
                        {
                            Weld_Sta = "焊接进料流程";
                            //DateSave.Instance().Production.StationMaterial = true;
                            Weld_Log.Instance().Enqueue(LOG_LEVEL.LEVEL_3, "[IO输出]," + "焊接进料流程");
                            starttime = DateTime.Now;
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接进料流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接进料流程。");
                            taskInfo.iTaskStep = (int)flowCharNew.接进料流程完成检测;
                        }
                        else
                        {
                            taskInfo.iTaskStep = (int)flowCharNew.接前流程;
                        }
                        //  taskInfo.iTaskStep = 9;

                        break;

                    case (int)flowCharNew.接进料流程完成检测:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            Weld_Log.Instance().Enqueue(LOG_LEVEL.LEVEL_3, "[IO输出]," + "焊接进料流程完成");
                            m_taskGroup.AddRunMessage("焊接流程,焊接进料流程完成。");
                            taskInfo.iTaskStep = (int)flowCharNew.接前流程;
                        }
                        //   taskInfo.iTaskStep = (int)flowCharNew.焊接进料流程完成检测;
                        break;

                    case (int)flowCharNew.接前流程:
                        if (RunClass.Instance().StartRun == false)
                        {
                            Weld_Sta = "焊接前流程";
                            Weld_Log.Instance().Enqueue(LOG_LEVEL.LEVEL_3, "[IO输出]," + "焊接前流程");
                            starttime = DateTime.Now;
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接前流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接前流程。");
                        }

                        //   taskInfo.iTaskStep = 9;
                        taskInfo.iTaskStep = (int)flowCharNew.接前流程完成检测;
                        break;

                    case (int)flowCharNew.接前流程完成检测:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            Weld_Log.Instance().Enqueue(LOG_LEVEL.LEVEL_3, "[IO输出]," + "焊接前流程完成");
                            m_taskGroup.AddRunMessage("焊接流程,焊接前流程完成。");
                            taskInfo.iTaskStep = (int)flowCharNew.接中流程;
                        }
                        //    taskInfo.iTaskStep = (int)flowCharNew.焊接前流程完成检测;
                        break;

                    case (int)flowCharNew.接中流程:
                        if (DateSave.Instance().Production.LeftRun == true)
                        {
                        }
                        else
                        {
                            if (RunClass.Instance().StartRun == false)
                            {
                                Weld_Sta = "焊接流程";
                                DateSave.Instance().Production.RightRun = true;
                                RunClass.Instance().RunClass_IsFinish = false;
                                RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接流程.csv");
                                m_taskGroup.AddRunMessage("焊接流程,焊接流程。");
                            }
                            taskInfo.iTaskStep = (int)flowCharNew.接中流程完成检测;
                        }

                        break;

                    case (int)flowCharNew.接中流程完成检测:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            m_taskGroup.AddRunMessage("焊接流程,焊接前流程完成。");
                            taskInfo.iTaskStep = (int)flowCharNew.接后流程;
                        }
                        //  taskInfo.iTaskStep = (int)flowCharNew.焊接中流程完成检测;
                        break;

                    case (int)flowCharNew.接后流程:
                        if (RunClass.Instance().StartRun == false)
                        {
                            Weld_Sta = "焊接后流程";
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接后流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接后流程。");
                        }
                        taskInfo.iTaskStep = (int)flowCharNew.接后流程完成检测;

                        break;

                    case (int)flowCharNew.接后流程完成检测:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            m_taskGroup.AddRunMessage("焊接流程,焊接后流程完成检测。");
                            taskInfo.iTaskStep = (int)flowCharNew.接排料流程;
                        }
                        //  taskInfo.iTaskStep = (int)flowCharNew.焊接后流程完成检测;
                        break;

                    case (int)flowCharNew.接排料流程:
                        if (RunClass.Instance().StartRun == false)
                        {
                            Weld_Sta = "焊接排料流程";
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接排料流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接排料流程。");
                        }
                        taskInfo.iTaskStep = (int)flowCharNew.接排料流程完成检测;


                        break;

                    case (int)flowCharNew.接排料流程完成检测:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            DateTime endtime = DateTime.Now;
                            TimeSpan spantime = endtime - starttime;
                            DateSave.Instance().Production.CTtime = spantime.TotalSeconds.ToString();
                            DateSave.Instance().Production.OK_date++;
                            DateSave.Instance().Production.Current_TIME++;
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            m_taskGroup.AddRunMessage("焊接流程,焊接排料流程完成检测。");
                            taskInfo.iTaskStep = (int)flowCharNew.接进料流程;
                            // DateSave.Instance().Production.StationMaterial = false;
                        }
                        //  taskInfo.iTaskStep = (int)flowCharNew.焊接排料流程完成检测;
                        break;

                    case 8:
                        if (RunClass.Instance().StartRun == false)
                        {
                            starttime = DateTime.Now;
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接前流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接前流程。");
                        }

                        taskInfo.iTaskStep = 9;
                        break;

                    case 9:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            m_taskGroup.AddRunMessage("焊接流程,焊接前流程完成。");
                            taskInfo.iTaskStep = 10;
                        }
                        break;

                    case 10:
                        if (DateSave.Instance().Production.LeftRun == true)
                        {
                        }
                        else
                        {
                            if (RunClass.Instance().StartRun == false)
                            {
                                DateSave.Instance().Production.RightRun = true;
                                RunClass.Instance().RunClass_IsFinish = false;
                                RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接流程.csv");
                                m_taskGroup.AddRunMessage("焊接流程,焊接流程。");
                            }
                            taskInfo.iTaskStep = 105;
                        }
                        break;

                    case 105:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            DateSave.Instance().Production.RightRun = false;
                            taskInfo.iTaskStep = 106;
                            m_taskGroup.AddRunMessage("焊接流程,焊接流程完成。");
                        }
                        break;

                    case 106:
                        if (RunClass.Instance().StartRun == false)
                        {
                            RunClass.Instance().RunClass_IsFinish = false;
                            RunClass.Instance().runTask(ReadstfPath + "\\" + DateSave.Instance().Production.ModelNo + "\\" + "焊接后流程.csv");
                            m_taskGroup.AddRunMessage("焊接流程,焊接后流程。");
                        }
                        taskInfo.iTaskStep = 107;
                        break;

                    case 107:
                        if (RunClass.Instance().RunClass_IsFinish == true)
                        {
                            DateTime endtime = DateTime.Now;
                            TimeSpan spantime = endtime - starttime;
                            DateSave.Instance().Production.CTtime = spantime.TotalSeconds.ToString();
                            DateSave.Instance().Production.OK_date++;

                            DateSave.Instance().Production.Current_TIME++;


                            if (RunClass.Instance().Run_OneCase.IsAlive == true)
                            {
                                RunClass.Instance().Run_OneCase.Abort();
                            }
                            m_taskGroup.AddRunMessage("焊接流程,焊接后流程完成。");
                            taskInfo.iTaskStep = 8;
                        }
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                //  m_taskGroup.AddAlarmMessage(string.Format("执行下料流程{0}时出现错误!错误信息:{1}", taskInfo.iTaskStep, ex.Message));
            }
        }
コード例 #8
0
 static void Main(string[] args)
 {
     var _runProgram = new RunClass();
 }
コード例 #9
0
ファイル: StartForm.cs プロジェクト: houxpGit/12
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (MainControl.Weld_Sta != "")
            {
                lb_LeftStation.Text = MainControl.Weld_Sta;
            }
            //if (DateSave.Instance().Production.Door_Enable == true)
            //{
            //    DoorShow.Text = "门屏蔽";
            //}
            //else
            //{
            //    DoorShow.Text = "门未屏蔽";
            //}
            //if ()
            //{
            //    WeldSta = true;

            //}
            if (IOManage.INPUT("锁光出光").On)
            {
                锁光.Text      = "可出光";
                锁光.BackColor = Color.Green;
                IOManage.OUTPUT("外部锁光").SetOutBit(true);
            }
            else
            {
                锁光.Text      = "已锁光";
                锁光.BackColor = Color.Red;
                IOManage.OUTPUT("外部锁光").SetOutBit(false);
            }
            if (DateSave.Instance().Production.StationMaterial == true)
            {
                btn_LeftPosWelding.Text = "工位有料";
            }
            else
            {
                btn_LeftPosWelding.Text = "工位无料";
            }
            if ((mes.Instance().DataReceivedstrSN != "" && LeftSnshow.Text == "") || (LeftSnshow.Text != mes.Instance().DataReceivedstrSN))
            {
                LeftSnshow.Text = mes.Instance().DataReceivedstrSN;
            }
            try
            {
                if ((DateSave.Instance().Production.WeldDate.Average() != 0 && lb_LeftMarkPower.Text == "") || (lb_LeftMarkPower.Text != DateSave.Instance().Production.WeldDate.Average().ToString()))
                {
                    lb_LeftMarkPower.Text = Math.Round(DateSave.Instance().Production.WeldDate.Average(), 1).ToString();
                }
            }
            catch { }



            if ((DateSave.Instance().Production.OK_date != 0 && lb_LeftYield.Text == "") || (lb_LeftYield.Text != DateSave.Instance().Production.OK_date.ToString()))
            {
                lb_LeftYield.Text = DateSave.Instance().Production.OK_date.ToString();
            }
            if ((DateSave.Instance().Production.Weld_Speed != 0 && lb_LeftMarkSpeed.Text == "") || (lb_LeftMarkSpeed.Text != DateSave.Instance().Production.Weld_Speed.ToString()))
            {
                lb_LeftMarkSpeed.Text = DateSave.Instance().Production.Weld_Speed.ToString();
            }
            if (lb_LeftPos.Text != DateSave.Instance().Production.TheCurrentpoint.ToString())
            {
                lb_LeftPos.Text = DateSave.Instance().Production.TheCurrentpoint.ToString();
            }

            if ((DateSave.Instance().Production.CTtime != "" && lb_LeftCT.Text == "") || (lb_LeftCT.Text != DateSave.Instance().Production.CTtime))
            {
                lb_LeftCT.Text = DateSave.Instance().Production.CTtime;
            }
            if (DateSave.Instance().Production.ModelNo != "" && 当前机种号.Text == "NUM" || 当前机种号.Text != DateSave.Instance().Production.ModelNo)
            {
                当前机种号_.Text = DateSave.Instance().Production.ModelNo;
                当前机种号.Text  = DateSave.Instance().Production.ModelNo;
            }
            if (Socket_server.Instance().recvDate != "")
            {
                lb_RightMarkSpeed.Text = Socket_server.Instance().recvDate;
            }

            if ((DateSave.Instance().Production.Current_TIME != 0 && 清理铜嘴次数.Text == "") || (清理铜嘴次数.Text != DateSave.Instance().Production.Current_TIME.ToString()))
            {
                清理铜嘴次数.Text = DateSave.Instance().Production.Current_TIME.ToString();
            }
            if (DateSave.Instance().Production.Clear_TIME == DateSave.Instance().Production.Current_TIME)
            {
                MainControl.BIZZ("请清理铜嘴", "请清理铜嘴");
                DateSave.Instance().Production.Current_TIME++;
            }


            if (frist == 0 && LoginForm.landingFinish == true)
            {
                frist++;
                asc.AddControl(panel2);
            }
            if (frist == 1)
            {
                this.Top = 0;

                this.Left = 0;



                frist++;
                delay(1000);
                int Width  = Screen.PrimaryScreen.WorkingArea.Width;
                int Height = Screen.PrimaryScreen.WorkingArea.Height;
                int wih    = MainModule.FormMain.Width;
                int aq1e   = panel2.Width;
                int aqe    = panel2.Height;

                panel2.SetBounds(asc.oldCtrl[0].Top, asc.oldCtrl[0].Left, Width, aqe);
                Thread.Sleep(100);
                if (asc.oldCtrl.Count > 0)
                {
                    asc.controlAutoSize(panel2);
                }
            }
            double sd = 0.0;

            TableManage.TableDriver("运动平台")._GetAdc(1, out sd);
            if (startHoming || MainModule.FormMain.bAuto)
            {
            }
            else if (IOManage.INPUT("手轮X").On || IOManage.INPUT("手轮Y").On || IOManage.INPUT("手轮Z").On || IOManage.INPUT("手轮U").On)
            {
                if (IOManage.INPUT("手轮X").On&& setOk == false)
                {
                    if (IOManage.INPUT("手轮1").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(1, 1);
                    }
                    else if (IOManage.INPUT("手轮10").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(1, 10);
                    }
                    else if (IOManage.INPUT("手轮100").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(1, 50);
                    }
                }
                if (IOManage.INPUT("手轮Y").On&& setOk == false)
                {
                    if (IOManage.INPUT("手轮1").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(2, 1);
                    }
                    else if (IOManage.INPUT("手轮10").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(2, 10);
                    }
                    else if (IOManage.INPUT("手轮100").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(2, 50);
                    }
                }
                if (IOManage.INPUT("手轮Z").On&& setOk == false)
                {
                    if (IOManage.INPUT("手轮1").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(3, 1);
                    }
                    else if (IOManage.INPUT("手轮10").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(3, 10);
                    }
                    else if (IOManage.INPUT("手轮100").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(3, 50);
                    }
                }

                if (IOManage.INPUT("手轮U").On&& setOk == false)
                {
                    if (IOManage.INPUT("手轮1").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(4, 1);
                    }
                    else if (IOManage.INPUT("手轮10").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(4, 10);
                    }
                    else if (IOManage.INPUT("手轮100").On)
                    {
                        setOk = true;
                        TableManage.TableDriver("运动平台").StartManualPulser(4, 50);
                    }
                }
            }
            else if (IOManage.INPUT("手轮X").Off&& IOManage.INPUT("手轮Y").Off&& IOManage.INPUT("手轮Z").Off&& setOk == true)
            {
                setOk = false;
                TableManage.TableDriver("运动平台").StopManualPulser(0);
                TableManage.TableDriver("运动平台").StopManualPulser(1);
                TableManage.TableDriver("运动平台").StopManualPulser(2);
                TableManage.TableDriver("运动平台").StopManualPulser(3);
                TableManage.TableDriver("运动平台").StopManualPulser(4);
                TableManage.TableDriver("运动平台").StopManualPulser(5);
                TableManage.TableDriver("运动平台").StopManualPulser(6);
                TableManage.TableDriver("运动平台").StopManualPulser(7);
            }
            if (MainModule.FormMain.Parse == false && RunClass.Instance().parse == true)
            {
                RunClass.Instance().parse   = false;
                RunClass.Instance().GoOnRun = true;
            }

            // if (IOManage.INPUT("文档状态").On)
            //{
            //    RunClass.Instance(). WeldFinishSta = "StartWeld";

            //}
            //    if (IOManage.INPUT("文档状态").Off)
            //    {

            //    RunClass.Instance().WeldFinishSta = "WeldFinish";

            //    }


            //if (StartHome==true)
            //{
            //    MainModule.FormMain.bHomeReady = false;
            //    StartHome = false;
            //    MainModule.FormMain.bHomeReady = false;
            //    StartHome = false; HomeDoneZ = false;
            //    TableManage.TableDriver("运动平台").Home(TableAxisName.Z);


            //}

            //if (TableManage.TableDriver("运动平台").HomeDone(TableAxisName.Z) && HomeDoneZ == false)
            //{
            //    HomeDoneZ = true;
            //    HomeDoneXY = false;
            //}

            //if (HomeDoneXY == false)
            //{
            //    HomeDoneXY = true;
            //    TableManage.TableDriver("运动平台").Home(TableAxisName.X);
            //    TableManage.TableDriver("运动平台").Home(TableAxisName.Y);
            //}
            //if (TableManage.TableDriver("运动平台").HomeDone(TableAxisName.X) && TableManage.TableDriver("运动平台").HomeDone(TableAxisName.Y)&& HomeDoneXY == false)
            //{
            //    HomeDoneXY = true;
            //    MainModule.FormMain.bHomeReady = true;
            //}
            //string en = "";
            //string sendd = "";
            //sendd = Weld_Log.Instance().Dequeue(en);
            //if (sendd != "")
            //{
            //    Weld_Log.Instance().WriteLog(LOG_LEVEL.LEVEL_3, sendd, LOG_TYPE.INFO);

            //}
            //else
            //{

            //    // Thread.Sleep(200);
            //}
            if (MainModule.FormMain.bEstop == true)
            {
                DateSave.Instance().Production.EStop = true;
            }
            //else
            //{

            //    DateSave.Instance().Production.EStop = false;
            //}
        }