|
|
|
@ -251,6 +251,17 @@ namespace Rs.MotionPlat.Flow.SubFlow
|
|
|
|
|
DischargeFlow.Instance.ActionEnd("PnP 从输入托盘拾取 1 个 DUT", "PhP pick up 1 DUT from input tray");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if(GlobalVar.BinTakeFailSkip && trayType== ETrayType.Input)
|
|
|
|
|
{
|
|
|
|
|
logInfo = GetClassName() + $"{trayType} bin {waitTakeProductSlot.Index} take fail auto skip";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
curNozzle.VacBreak(EIoOperate.Close, GetClassName());
|
|
|
|
|
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
|
|
|
|
|
finished = true;
|
|
|
|
|
flowStep = EStockTakeFlowStep.待触发;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
AlarmEntity alarmEntity = AlarmCollection.Get(AlarmConstID.排料吸嘴取料失败报警).Transform($"{curNozzle.NozzleIndex}", $"{waitTakeProductSlot.Row}", $"{waitTakeProductSlot.Column}", $"{waitTakeProductSlot.Index}");
|
|
|
|
|
EButtonType btnSelect = Msgbox.ShowDialog(alarmEntity, EButtonType.EndInput | EButtonType.Retry | EButtonType.Skip | EButtonType.Recheck, true);
|
|
|
|
@ -290,6 +301,8 @@ namespace Rs.MotionPlat.Flow.SubFlow
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|