|
|
|
@ -252,43 +252,56 @@ namespace Rs.MotionPlat.Flow.SubFlow
|
|
|
|
|
}
|
|
|
|
|
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);
|
|
|
|
|
switch (btnSelect)
|
|
|
|
|
if(GlobalVar.BinTakeFailSkip && trayType== ETrayType.Input)
|
|
|
|
|
{
|
|
|
|
|
case EButtonType.EndInput:
|
|
|
|
|
logInfo = GetClassName() + $"选择了结束上料";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
GlobalVar.Clear = true;
|
|
|
|
|
finished = true;
|
|
|
|
|
flowStep = EStockTakeFlowStep.待触发;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Retry:
|
|
|
|
|
logInfo = GetClassName() + $"选择了重试";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
curNozzle.VacBreak(EIoOperate.Close, GetClassName());
|
|
|
|
|
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
|
|
|
|
|
//先把产品放下
|
|
|
|
|
//StockPlaceFlow.Instance.Place(ETrayType.Input, waitTakeProductSlot.Index, curNozzle.NozzleIndex);
|
|
|
|
|
flowStep = EStockTakeFlowStep.到料仓取料位下方;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Recheck:
|
|
|
|
|
logInfo = GetClassName() + $"选择了重新检查真空";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
flowStep = EStockTakeFlowStep.料仓取料真空吸检测;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Skip:
|
|
|
|
|
logInfo = GetClassName() + $"选择了跳过";
|
|
|
|
|
curNozzle.VacBreak(EIoOperate.Close, GetClassName());
|
|
|
|
|
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
finished = true;
|
|
|
|
|
flowStep = EStockTakeFlowStep.待触发;
|
|
|
|
|
break;
|
|
|
|
|
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);
|
|
|
|
|
switch (btnSelect)
|
|
|
|
|
{
|
|
|
|
|
case EButtonType.EndInput:
|
|
|
|
|
logInfo = GetClassName() + $"选择了结束上料";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
GlobalVar.Clear = true;
|
|
|
|
|
finished = true;
|
|
|
|
|
flowStep = EStockTakeFlowStep.待触发;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Retry:
|
|
|
|
|
logInfo = GetClassName() + $"选择了重试";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
curNozzle.VacBreak(EIoOperate.Close, GetClassName());
|
|
|
|
|
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
|
|
|
|
|
//先把产品放下
|
|
|
|
|
//StockPlaceFlow.Instance.Place(ETrayType.Input, waitTakeProductSlot.Index, curNozzle.NozzleIndex);
|
|
|
|
|
flowStep = EStockTakeFlowStep.到料仓取料位下方;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Recheck:
|
|
|
|
|
logInfo = GetClassName() + $"选择了重新检查真空";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
flowStep = EStockTakeFlowStep.料仓取料真空吸检测;
|
|
|
|
|
break;
|
|
|
|
|
case EButtonType.Skip:
|
|
|
|
|
logInfo = GetClassName() + $"选择了跳过";
|
|
|
|
|
curNozzle.VacBreak(EIoOperate.Close, GetClassName());
|
|
|
|
|
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
finished = true;
|
|
|
|
|
flowStep = EStockTakeFlowStep.待触发;
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|