增加最后一盘料提示

增加排料重取次数、周转重取次数配置
master
lhiven 1 year ago
parent 4ec57bc7dc
commit 57d83702cd

@ -130,6 +130,11 @@ namespace Rs.MotionPlat.Flow
/// </summary>
private int undoTaskNum = 0;
int scanNum = 0;
/// <summary>
/// 料仓是否可以上料
/// </summary>
private bool stockCanLoadFlag = true;
public override void Run()
{
switch (flowStep)
@ -207,24 +212,54 @@ namespace Rs.MotionPlat.Flow
}
else
{
logInfo = GetClassName()+ $"{curTask.FromType.ToString()}盘无料,准备切换料盘";
MessageQueue.Instance.Insert(logInfo);
TakeTrayFlow.Instance.Take(ETrayType.Input, ETrayType.Empty1,
() =>
{
Task.Run(() =>
if(stockCanLoadFlag)
{
logInfo = GetClassName() + $"{curTask.FromType.ToString()}盘无料,准备切换料盘";
MessageQueue.Instance.Insert(logInfo);
TakeTrayFlow.Instance.Take(ETrayType.Input, ETrayType.Empty1,
() =>
{
StockManager.Instance.GetStock(ETrayType.Input).Load(EStockTrayLoadMode.Whole, null);
});
}, null,
() =>
{
Task.Run(() =>
Task.Run(() =>
{
StockManager.Instance.GetStock(ETrayType.Input).Load(EStockTrayLoadMode.Whole, null);
});
}, null,
() =>
{
StockManager.Instance.GetStock(ETrayType.Empty1).Unload(EStockTrayUnLoadMode.Whole, null);
Task.Run(() =>
{
StockManager.Instance.GetStock(ETrayType.Empty1).Unload(EStockTrayUnLoadMode.Whole, null);
});
});
StockManager.Instance.GetStock(ETrayType.Input).WaitFinished();
//上料完成后判断是否时最后一盘料
Task.Run(() => {
while (true)
{
if (Ops.IsOn(""))
{
stockCanLoadFlag = false;
logInfo = "Input料仓最后一盘料请确认是否继续上料?";
msgBox = MsgBox.ShowDialog(111, logInfo, ETipButton.Yes | ETipButton.No);
if (msgBox.Button == ETipButton.Yes)
{
//继续上料,这时需要继续检测料仓是否有料
}
else
{
//点击了最后一盘料
break;
}
}
else
{
stockCanLoadFlag = true;
break;
}
}
});
StockManager.Instance.GetStock(ETrayType.Input).WaitFinished();
}
break;
}
}
@ -424,7 +459,7 @@ namespace Rs.MotionPlat.Flow
else
{
reFetchNum++;
if (reFetchNum == 6)
if (reFetchNum == GlobalVar.DischargeRetakeNum)
{
DischargeDumpFlow.Instance.Start(curTask.FromType, curNozzle.NozzleIndex, curNozzle.FromIndex);
//alarmInfo = $"排料{curNozzle.NozzleIndex}号吸嘴取{curNozzle.FromIndex+1}号穴位产品{reFetchNum}次失败";

@ -222,7 +222,7 @@ namespace Rs.MotionPlat.Flow
{
logInfo = GetClassName() + $"已运动到周转盘取料位上方";
MessageQueue.Instance.Insert(logInfo);
if (retakeNum < 3)
if (retakeNum <= GlobalVar.TurnoverRetakeNum)
{
Step = ETurnoverFlowStep.1;
}

Loading…
Cancel
Save