1、增加Input料仓取料失败自动跳过功能。

2、增加Input料盘取料完成搬运到Empty前报警检查是否有产品。
develop
lhiven 3 weeks ago
parent d22ab75ed0
commit af57b09169

@ -22,6 +22,18 @@ namespace Rs.Framework
{ {
#region newpro #region newpro
/// <summary>
/// 料仓取料失败是否跳过
/// </summary>
[ParameterInit("bool", "true", "system", "料仓取料失败是否跳过")]
public static bool BinTakeFailSkip
{
get
{
return SysConfigParam.GetValue<bool>(nameof(BinTakeFailSkip));
}
}
/// <summary> /// <summary>
/// XY到位后延时 /// XY到位后延时

@ -244,5 +244,11 @@ namespace Rs.MotionPlat.Flow
/// 二维码长度异常报警 /// 二维码长度异常报警
/// </summary> /// </summary>
public const int = 1049; public const int = 1049;
/// <summary>
/// Input料盘开始搬运到Empty前报警
/// </summary>
public const int InputEmpty = 1050;
} }
} }

@ -352,6 +352,11 @@ namespace Rs.MotionPlat.Flow
{ {
//先把轴移动到安全位 //先把轴移动到安全位
DischargeModuleGoSafePosFlow.Instance.GoSafePostion(); DischargeModuleGoSafePosFlow.Instance.GoSafePostion();
alarmEntity = AlarmCollection.Get(AlarmConstID.InputEmpty);
if(alarmEntity!=null)
{
Msgbox.ShowDialog(alarmEntity, EButtonType.Ok, true);
}
TakeTrayFlow.Instance.Take(ETrayType.Input, ETrayType.Empty); TakeTrayFlow.Instance.Take(ETrayType.Input, ETrayType.Empty);
//GlobalTray.InputTray.ChangeStatus(ESlotStatus.Have); //GlobalTray.InputTray.ChangeStatus(ESlotStatus.Have);
takeSlotIndex = 1; takeSlotIndex = 1;

@ -251,6 +251,17 @@ namespace Rs.MotionPlat.Flow.SubFlow
DischargeFlow.Instance.ActionEnd("PnP 从输入托盘拾取 1 个 DUT", "PhP pick up 1 DUT from input tray"); DischargeFlow.Instance.ActionEnd("PnP 从输入托盘拾取 1 个 DUT", "PhP pick up 1 DUT from input tray");
} }
else 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}"); 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); 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;
} }
} }
}
break; break;
} }
} }

@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
// //
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示: //通过使用 "*",如下所示:
[assembly: AssemblyVersion("20.25.34.2")] [assembly: AssemblyVersion("20.25.35.1")]
//[assembly: AssemblyVersion("1.0.0.0")] //[assembly: AssemblyVersion("1.0.0.0")]
//[assembly: AssemblyFileVersion("1.0.0.0")] //[assembly: AssemblyFileVersion("1.0.0.0")]

Loading…
Cancel
Save