diff --git a/Rs.SkyLine/Flow/AlarmConstID.cs b/Rs.SkyLine/Flow/AlarmConstID.cs index 2e7c38b..655bbe6 100644 --- a/Rs.SkyLine/Flow/AlarmConstID.cs +++ b/Rs.SkyLine/Flow/AlarmConstID.cs @@ -122,5 +122,10 @@ namespace Rs.MotionPlat.Flow /// NG料光纤检测异常 /// public const int NgProductFiberCheckAlarm = 23; + + /// + /// 排料吸嘴丢料报警 + /// + public const int DischargeNozzleLostProductAlarm = 24; } } diff --git a/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs b/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs index 6b66b9f..3cb3b2e 100644 --- a/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs +++ b/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs @@ -193,6 +193,7 @@ namespace Rs.MotionPlat.Flow if (curTask.FromType == TurnoverType.Turnover) { curSlotPoint = TrayPointManager.GetSlotPoint( ETrayType.Turnover, curTask.FromIndex + 1); + curNozzle.FromIndex = curTask.FromIndex + 1; logInfo = GetClassName()+ $"{curNozzle.NozzleIndex}号排料吸嘴到周转盘{curTask.FromIndex + 1}号穴位取料"; MessageQueue.Instance.Insert(logInfo); } @@ -338,27 +339,31 @@ namespace Rs.MotionPlat.Flow case EDischargeFlowStep.开真空: /*打开排料吸嘴真空吸*/ - Ops.On($"{curNozzle.NozzleIndex}号吸嘴真空吸电磁阀"); - Thread.Sleep(GlobalVar.LoadNozzleOpenVacSuctionDelaytime); - logInfo = GetClassName()+ $"打开{curNozzle.NozzleIndex}号排料吸嘴真空吸"; - MessageQueue.Instance.Insert(logInfo); + //Ops.On($"{curNozzle.NozzleIndex}号吸嘴真空吸电磁阀"); + //Thread.Sleep(GlobalVar.LoadNozzleOpenVacSuctionDelaytime); + VacManager.DischargeVacSuction(EVacOperator.Open, curNozzle.NozzleIndex); + //logInfo = GetClassName()+ $"打开{curNozzle.NozzleIndex}号排料吸嘴真空吸"; + //MessageQueue.Instance.Insert(logInfo); if (curTask.FromType == TurnoverType.Turnover) { /*关闭周转盘真空吸*/ - logInfo = GetClassName() + $"关闭周转盘{curTask.FromIndex + 1}号穴位真空吸"; - Ops.Off($"周转盘{curTask.FromIndex + 1}号穴位真空吸"); - Thread.Sleep(GlobalVar.TurnoverTrayCloseVacSuctionDelaytime); - MessageQueue.Instance.Insert(logInfo); + //logInfo = GetClassName() + $"关闭周转盘{curTask.FromIndex + 1}号穴位真空吸"; + //Ops.Off($"周转盘{curTask.FromIndex + 1}号穴位真空吸"); + //Thread.Sleep(GlobalVar.TurnoverTrayCloseVacSuctionDelaytime); + //MessageQueue.Instance.Insert(logInfo); + VacManager.TurnoverTrayVacSuction(EVacOperator.Close, curNozzle.FromIndex); /*打开周转盘真空破*/ - logInfo = GetClassName() + $"打开周转盘{curTask.FromIndex + 1}号穴位真空破"; - Ops.On($"周转盘{curTask.FromIndex + 1}号穴位真空破"); - Thread.Sleep(GlobalVar.TurnoverTrayOpenVacBreakDelaytime); - MessageQueue.Instance.Insert(logInfo); + //logInfo = GetClassName() + $"打开周转盘{curTask.FromIndex + 1}号穴位真空破"; + //Ops.On($"周转盘{curTask.FromIndex + 1}号穴位真空破"); + //Thread.Sleep(GlobalVar.TurnoverTrayOpenVacBreakDelaytime); + //MessageQueue.Instance.Insert(logInfo); + VacManager.TurnoverTrayVacBreak( EVacOperator.Open,curNozzle.FromIndex); /*关闭周转盘真空破*/ - logInfo = GetClassName() + $"关闭周转盘{curTask.FromIndex + 1}号穴位真空破"; - Ops.Off($"周转盘{curTask.FromIndex + 1}号穴位真空破"); - Thread.Sleep(GlobalVar.TurnoverTrayCloseVacBreakDelaytime); - MessageQueue.Instance.Insert(logInfo); + //logInfo = GetClassName() + $"关闭周转盘{curTask.FromIndex + 1}号穴位真空破"; + //Ops.Off($"周转盘{curTask.FromIndex + 1}号穴位真空破"); + //Thread.Sleep(GlobalVar.TurnoverTrayCloseVacBreakDelaytime); + //MessageQueue.Instance.Insert(logInfo); + VacManager.TurnoverTrayVacBreak( EVacOperator.Close,curNozzle.FromIndex); } flowStep = EDischargeFlowStep.取料完成抬起; break; @@ -930,7 +935,7 @@ namespace Rs.MotionPlat.Flow List toUnloadNozzles = NozzleManager.GetNozzlesByStatus(ENozzleStatus.ToUnload); foreach (var nozzle in toUnloadNozzles) { - if(!Ops.IsOn("")) + if(!nozzle.HasProduct()) { lostNozzles.Add(nozzle); } @@ -939,8 +944,8 @@ namespace Rs.MotionPlat.Flow { //弹框报警 alarmInfo = $"{lostNozzles.Select(ln=>ln.NozzleIndex).ToJoinString()}丢料报警"; - //TestCenterMessageBox.Show(1, alarmInfo,); - msgBox = TestCenterMessageBox.WaitResult(1); + TestCenterMessageBox.Show(AlarmConstID.DischargeNozzleLostProductAlarm,alarmInfo,MessageButtonManager.GetSkip_MoveToSafe_Button(),MessageButtonManager.GetSkip_MoveToSafe_ButtonText()); + msgBox = TestCenterMessageBox.WaitResult(AlarmConstID.DischargeNozzleLostProductAlarm); switch (msgBox.Button) { case ETipButton.Skip: