Commit 29567857 LN

入库未验证成功时需要停留3秒等待验证

1 个父辈 130d6f3e
......@@ -403,16 +403,14 @@ namespace OnlineStore.DeviceLibrary
//判断是否验证成功,如果验证失败,不入库
if (LineServer.RightInPosId(DeviceID, cc.PosId))
{
SecondMoveInfo.MoveParam = new InOutParam(cc.TrayNumber, cc.WareCode, cc.PosId, cc.PlateH, cc.PlateW, cc.InStoreNg);
return true;
}
else
{
SecondMoveInfo.MoveParam = new InOutParam(cc.TrayNumber, cc.WareCode, cc.PosId, cc.PlateH, cc.PlateW, cc.InStoreNg);
LogUtil.error(Name + "托盘号【"+currTrayNum+"】入库信息【"+cc.ToStr()+ "】料仓未验证成功,重新发送验证消息");
LineServer.CheckInStorePos(DeviceID, cc);
//TrayManager.UpdateInStoreNG(currTrayNum, true,"Box验证入库失败");
//needRemove = true;
//break;
LineServer.CheckInStorePos(DeviceID, cc);
return true;
}
}
......@@ -629,24 +627,24 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_03_Stop2Down);
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 再次等待托盘信号");
IOMove(IO_Type.StopCylinder_Down1, IO_VALUE.LOW);
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopCylinder_Check2, IO_VALUE.HIGH));
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopCylinder_Check2, IO_VALUE.HIGH));
}
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_03_Stop2Down))
{
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_04_Wait);
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " ,等待编码信号稳定StopCylinder_Check2=1");
CheckAndMove(IO_Type.StopCylinder_Down1, IO_VALUE.LOW);
CheckAndMove(IO_Type.StopCylinder_Down1, IO_VALUE.LOW);
//SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopCylinder_Check2, IO_VALUE.HIGH));
}
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_04_Wait))
{
try
{
{
//判断是否需要顶升
bool isNeed = false;
bool isNeed = false;
UpdateTrayNum();
bool isFull = TrayManager.TrayIsFull(currTrayNum);
bool isFull = TrayManager.TrayIsFull(currTrayNum);
if (TrayManager.RightTrayCode(currTrayNum, preTrayNum, false))
{
//出库中,需要拦盘
......@@ -674,29 +672,45 @@ namespace OnlineStore.DeviceLibrary
}
else
{
LogUtil.debug(Name+ SecondMoveInfo.MoveNum + "***************上个托盘号【" + preTrayNum + "】,当前" + (isFull ? "有料托盘" : "空托盘") + "【" + currTrayNum + "】没有出入库任务,放盘通过~");
LogUtil.debug(Name + SecondMoveInfo.MoveNum + "***************上个托盘号【" + preTrayNum + "】,当前" + (isFull ? "有料托盘" : "空托盘") + "【" + currTrayNum + "】没有出入库任务,放盘通过~");
// preTrayNum = currMoveTrayNum;
if (TrayManager.ErrorDeviceId.Equals(DeviceID))
{
TrayManager.UpdateTrayNumError(-1, "");
}
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
CheckLog("托盘放行 " + SecondMoveInfo.SLog + " ,等待 NextStopCheck=0");
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
}
}
catch (Exception ex)
{
LogUtil.error("判断托盘是否需要顶升出错:",ex);
LogUtil.error("判断托盘是否需要顶升出错:", ex);
}
}
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_05_WaitTime))
{
//如果是出库,且盘高大于30,暂不顶升
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopUp);
if ( MoveInfo.MoveParam.PlateH >= 30)
if (MoveInfo.MoveType.Equals(LineMoveType.OutStore))
{
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 高度>30,暂不顶升上升");
if (MoveInfo.MoveParam != null && MoveInfo.MoveParam.PlateH >= 30)
{
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 高度>30,暂不顶升上升");
}
}
else if (SecondMoveInfo.MoveParam != null)
{
if (!LineServer.RightInPosId(DeviceID, SecondMoveInfo.MoveParam.PosId))
{
LogUtil.error(Name + " " + SecondMoveInfo.SLog + "[" + SecondMoveInfo.MoveParam.PosId + "]料仓未验证成功,等待3秒");
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
}
if (SecondMoveInfo.MoveParam.PlateH >= 30)
{
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 高度>30,暂不顶升上升");
}
}
else
{
......@@ -720,7 +734,7 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_11_CodeRember);
SecondMoveInfo.EndStepWait();
}
else if (CheckIsNeedInStore())
else if (CheckIsNeedInStore())
{
LogInfo(SecondMoveInfo.MoveNum + "*************** 托盘【" + currTrayNum + "】,有对应的入库任务,等待移栽");
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_08_WaitInStore);
......@@ -755,9 +769,9 @@ namespace OnlineStore.DeviceLibrary
#region 不需要出入库,直接放行
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_14_TopDown))
{
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
CheckLog("托盘放行 " + SecondMoveInfo.SLog + " ,等待 NextStopCheck=0");
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
}
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_15_WaitCanGo))
......@@ -783,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
}
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_18_StopCylinder_Back))
{
{
CheckLog("托盘放行 SecondMove:(托盘放行结束) ");
// IOMove(IO_Type.StopCylinder_Down1, IO_VALUE.HIGH);
SecondMoveInfo.EndMove();
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!