From 35066920d579a89089d863b6ac8394a44155a78e Mon Sep 17 00:00:00 2001 From: lhiven <236881222@qq.com> Date: Thu, 21 Sep 2023 09:53:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=96=99=E4=BB=93=E4=B8=8A?= =?UTF-8?q?=E4=B8=8B=E6=96=99=E6=B5=81=E7=A8=8B=EF=BC=8C=E5=BD=93=E4=B8=8B?= =?UTF-8?q?=E6=96=99=E6=98=AF=E6=A3=80=E6=B5=8B=E6=98=AF=E5=90=A6=E8=83=BD?= =?UTF-8?q?=E5=A4=9F=E4=B8=8B=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Rs.SkyLine/Flow/Space/TrayTest.cs | 23 ++++++++---- Rs.SkyLine/Flow/WorkFlow.cs | 61 +++++++++++++++++++++++-------- 2 files changed, 61 insertions(+), 23 deletions(-) diff --git a/Rs.SkyLine/Flow/Space/TrayTest.cs b/Rs.SkyLine/Flow/Space/TrayTest.cs index 434eaac..32b7fcd 100644 --- a/Rs.SkyLine/Flow/Space/TrayTest.cs +++ b/Rs.SkyLine/Flow/Space/TrayTest.cs @@ -117,14 +117,23 @@ namespace Rs.AutoDischarge.V3.Flow } else if (NeedLoad) { - //上料 - Status= ETrayStatus.Loading; - finished = false; - NeedLoad = false; - if (m_bWholeLoad) - Step = ETrayTestStep.到上料接料盘位; + if(!Ops.IsOn($"{stockNo}号料仓料盘到位光电检测")) + { + //上料 + Status = ETrayStatus.Loading; + finished = false; + NeedLoad = false; + if (m_bWholeLoad) + Step = ETrayTestStep.到上料接料盘位; + else + Step = ETrayTestStep.到上料终点位; + } else - Step = ETrayTestStep.到上料终点位; + { + Msg.ShowError($"检测到{stockNo}号料仓处有料盘,不能重复送料盘"); + MessageQueue.Instance.Warn($"检测到{stockNo}号料仓处有料盘,不能重复送料盘"); + LogHelper.Debug($"检测到{stockNo}号料仓处有料盘,不能重复送料盘"); + } } } diff --git a/Rs.SkyLine/Flow/WorkFlow.cs b/Rs.SkyLine/Flow/WorkFlow.cs index 4dbf560..3d8734c 100644 --- a/Rs.SkyLine/Flow/WorkFlow.cs +++ b/Rs.SkyLine/Flow/WorkFlow.cs @@ -558,6 +558,24 @@ namespace Rs.MotionPlat.Flow curSlotPoint = TrayPointManager.GetSlotPoint(GlobalVar.CurRecipe, "Turnover", curNozzle.ToIndex + 1, EPointType.RUN); turnoverOffsetPoint = TurnoverSlotOffset.GetOffsetPoint(curNozzle.ToIndex + 1); } + else if (curNozzle.ToType == TurnoverType.ToBeTested) + { + downSlot = GlobalTray.InputTray.GetSlot(ESlotStatus.NotHave); + if (downSlot != null) + { + curSlotPoint = TrayPointManager.GetSlotPoint(GlobalVar.CurRecipe, "Input", downSlot.Index, EPointType.RUN); + } + else + { + Msg.ShowInfo("Input已满,请手动切盘后点击确定!"); + GlobalTray.InputTray.ResetTray(); + GlobalTray.InputTray.Clear(); + + //StockManager.Instance.UnLoad(EStockType.Multi); + //restoreFlowStep = EWorkFlowStep.到放料位上方; + //flowStep = EWorkFlowStep.等待Multi料仓收料完成; + } + } else if (curNozzle.ToType == TurnoverType.Passed) { //OK料仓切盘 @@ -568,13 +586,16 @@ namespace Rs.MotionPlat.Flow } else { - //Msg.ShowInfo("tray has take over,please change tray"); - //GlobalTray.OkTary.ResetTray(); - //GlobalTray.OkTary.Clear(); + Msg.ShowInfo("OK料盘已满,请手动切盘后点击确定"); + GlobalTray.OkTary.ResetTray(); + GlobalTray.OkTary.Clear(); + //TakeTrayFlow.Instance.Take(EStockType.Input, EStockType.Empty1, ELoadUnloadType.Unload); - StockManager.Instance.UnLoad(EStockType.Ok); - restoreFlowStep = EWorkFlowStep.到放料位上方; - flowStep = EWorkFlowStep.等待Ok料仓收料完成; + + + //StockManager.Instance.UnLoad(EStockType.Ok); + //restoreFlowStep = EWorkFlowStep.到放料位上方; + //flowStep = EWorkFlowStep.等待Ok料仓收料完成; } } else if (curNozzle.ToType == TurnoverType.Failed) @@ -586,11 +607,14 @@ namespace Rs.MotionPlat.Flow } else { - //GlobalTray.NgTray.ResetTray(); - //GlobalTray.NgTray.Clear(); - StockManager.Instance.UnLoad(EStockType.Ng); - restoreFlowStep = EWorkFlowStep.到放料位上方; - flowStep = EWorkFlowStep.等待Ng料仓收料完成; + Msg.ShowInfo("NG料盘已满,请手动切盘后点击确定!"); + GlobalTray.NgTray.ResetTray(); + GlobalTray.NgTray.Clear(); + + + //StockManager.Instance.UnLoad(EStockType.Ng); + //restoreFlowStep = EWorkFlowStep.到放料位上方; + //flowStep = EWorkFlowStep.等待Ng料仓收料完成; } } else if (curNozzle.ToType == TurnoverType.Multifunction) @@ -602,13 +626,18 @@ namespace Rs.MotionPlat.Flow } else { - //GlobalTray.MultiTray.ResetTray(); - //GlobalTray.MultiTray.Clear(); - StockManager.Instance.UnLoad(EStockType.Multi); - restoreFlowStep = EWorkFlowStep.到放料位上方; - flowStep = EWorkFlowStep.等待Multi料仓收料完成; + Msg.ShowInfo("多功能料盘已满,请手动切盘后点击确定!"); + GlobalTray.MultiTray.ResetTray(); + GlobalTray.MultiTray.Clear(); + + + //StockManager.Instance.UnLoad(EStockType.Multi); + //restoreFlowStep = EWorkFlowStep.到放料位上方; + //flowStep = EWorkFlowStep.等待Multi料仓收料完成; } } + + } if (curSlotPoint!=null)