From b845413dd8a352b67b4dafbf371e5c516214a0c6 Mon Sep 17 00:00:00 2001 From: lhiven Date: Thu, 28 Dec 2023 20:12:29 +0900 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=AB=E7=A0=81=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E5=90=8E=E6=8F=90=E7=A4=BA=E9=87=8D=E6=89=AB=E6=88=96?= =?UTF-8?q?=E8=B7=B3=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Rs.SkyLine/Flow/AlarmConstID.cs | 5 ++ Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs | 98 ++++++++++++++++----- 2 files changed, 79 insertions(+), 24 deletions(-) diff --git a/Rs.SkyLine/Flow/AlarmConstID.cs b/Rs.SkyLine/Flow/AlarmConstID.cs index 79c91b8..a62c6e7 100644 --- a/Rs.SkyLine/Flow/AlarmConstID.cs +++ b/Rs.SkyLine/Flow/AlarmConstID.cs @@ -282,5 +282,10 @@ namespace Rs.MotionPlat.Flow /// 测试治具光前异常报警 /// public const int TextFixtureFiberAlarm = 57; + + /// + /// 扫码失败报警 + /// + public const int ScanBarCodeFailAlarm = 58; } } diff --git a/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs b/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs index caadc6f..2004993 100644 --- a/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs +++ b/Rs.SkyLine/Flow/NormalFlow/DischargeFlow.cs @@ -1491,19 +1491,44 @@ namespace Rs.MotionPlat.Flow } else { - //如果扫码失败再重扫一次 - UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true); - VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle(); - if(vrsigle.ScanBarCodeOK) + int failNum = 1; + while(true) { - OnShowGrabResult?.Invoke(vrsigle, true); - LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN); - } - else - { - OnShowGrabResult?.Invoke(vrsigle, true); - //复制二维码 - LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + if(failNum<4) + { + //如果扫码失败再重扫一次 + UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true); + VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle(); + if (vrsigle.ScanBarCodeOK) + { + OnShowGrabResult?.Invoke(vrsigle, true); + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN); + break; + } + else + { + failNum++; + OnShowGrabResult?.Invoke(vrsigle, true); + //复制二维码 + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + Thread.Sleep(1000); + } + } + else + { + box = MsgBox.ShowDialog(AlarmConstID.ScanBarCodeFailAlarm, $"{vr.SlotIndex}穴位扫码失败", ETipButton.Retry | ETipButton.Cancel); + if(box.Button== ETipButton.Retry) + { + failNum = 1; + } + else + { + //OnShowGrabResult?.Invoke(vrsigle, true); + //复制二维码 + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + break; + } + } } } } @@ -1552,19 +1577,44 @@ namespace Rs.MotionPlat.Flow } else { - //如果扫码失败再重扫一次 - UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true); - VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle(); - if (vrsigle.ScanBarCodeOK) + int failNum = 1; + while (true) { - OnShowGrabResult?.Invoke(vrsigle,true); - LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN); - } - else - { - OnShowGrabResult?.Invoke(vrsigle,true); - //复制二维码 - LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + if (failNum < 4) + { + + //如果扫码失败再重扫一次 + UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true); + VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle(); + if (vrsigle.ScanBarCodeOK) + { + OnShowGrabResult?.Invoke(vrsigle, true); + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN); + break; + } + else + { + OnShowGrabResult?.Invoke(vrsigle, true); + //复制二维码 + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + Thread.Sleep(1000); + } + } + else + { + box = MsgBox.ShowDialog(AlarmConstID.ScanBarCodeFailAlarm, $"{vr.SlotIndex}穴位扫码失败", ETipButton.Retry | ETipButton.Skip); + if (box.Button == ETipButton.Retry) + { + failNum = 1; + } + else if(box.Button== ETipButton.Skip) + { + //OnShowGrabResult?.Invoke(vrsigle, true); + //复制二维码 + LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); + break; + } + } } } }