Commit 68889301 LN

hy托盘卡顿修改。清理托盘时如果是入库的,直接清除进仓的入库任务。

1 个父辈 c6aaa1b1
...@@ -451,8 +451,8 @@ namespace OnlineStore.AssemblyLine ...@@ -451,8 +451,8 @@ namespace OnlineStore.AssemblyLine
DialogResult resut = MessageBox.Show("确定手动清空托盘【" + num + "】的信息?\r\n " + tray.ToStr() + "", "提示", MessageBoxButtons.YesNo); DialogResult resut = MessageBox.Show("确定手动清空托盘【" + num + "】的信息?\r\n " + tray.ToStr() + "", "提示", MessageBoxButtons.YesNo);
if (resut.Equals(DialogResult.Yes)) if (resut.Equals(DialogResult.Yes))
{ {
TrayManager.ClearInstore( tray);
TrayManager.UpdateTrayInfo(num); TrayManager.UpdateTrayInfo(num);
TrayInfo info = TrayManager.GetTrayInfo(num); TrayInfo info = TrayManager.GetTrayInfo(num);
MessageBox.Show("更新成功:\r" + info.ToStr()); MessageBox.Show("更新成功:\r" + info.ToStr());
LogUtil.info("界面点击手动清空托盘信息:" + info.ToStr()); LogUtil.info("界面点击手动清空托盘信息:" + info.ToStr());
......
...@@ -664,11 +664,12 @@ namespace OnlineStore.AssemblyLine ...@@ -664,11 +664,12 @@ namespace OnlineStore.AssemblyLine
DialogResult resut = MessageBox.Show("确定手动清空所有托盘信息?", "提示", MessageBoxButtons.YesNo); DialogResult resut = MessageBox.Show("确定手动清空所有托盘信息?", "提示", MessageBoxButtons.YesNo);
if (resut.Equals(DialogResult.Yes)) if (resut.Equals(DialogResult.Yes))
{ {
List<TrayInfo> tray = TrayManager.getTrayList(); List<TrayInfo> trayList = TrayManager.getTrayList();
LogUtil.info("-------------------点击:清空托盘。清空前打印托盘信息:"); LogUtil.info("-------------------点击:清空托盘。清空前打印托盘信息:");
foreach (TrayInfo t in tray) foreach (TrayInfo tray in trayList)
{ {
LogUtil.info(t.ToStr()); TrayManager.ClearInstore(tray);
LogUtil.info(tray.ToStr());
} }
TrayManager.ClearTrayInfo(); TrayManager.ClearTrayInfo();
LogUtil.info("-------------------点击:清空托盘。托盘内容已清空"); LogUtil.info("-------------------点击:清空托盘。托盘内容已清空");
......
...@@ -56,6 +56,8 @@ ...@@ -56,6 +56,8 @@
20201223
托盘检测经常卡主。
......
...@@ -232,7 +232,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -232,7 +232,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NewMove(LineMoveType.Fixture); MoveInfo.NewMove(LineMoveType.Fixture);
runStatus = LineRunStatus.Busy; runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp); MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
CheckLog("托盘检测," + MoveInfo.SLog + " 检测到托盘 ,阻挡上升"); LogInfo("托盘检测," + MoveInfo.SLog + " 检测到托盘 ,阻挡上升");
if (Config.DOList.ContainsKey(IO_Type.HY_FrontStopDown)) if (Config.DOList.ContainsKey(IO_Type.HY_FrontStopDown))
{ {
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW); IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
...@@ -264,7 +264,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -264,7 +264,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NewMove(LineMoveType.Fixture); MoveInfo.NewMove(LineMoveType.Fixture);
runStatus = LineRunStatus.Busy; runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown); MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
CheckLog(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘,前阻挡下降"); LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘,前阻挡下降");
ClearTrayRFID(); ClearTrayRFID();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH, 1200); IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH, 1200);
MoveInfo.OneWaitCanEndStep = true; MoveInfo.OneWaitCanEndStep = true;
...@@ -350,7 +350,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -350,7 +350,7 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime); MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号"); CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(800)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
MoveInfo.OneWaitCanEndStep = true; MoveInfo.OneWaitCanEndStep = true;
} }
...@@ -367,8 +367,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -367,8 +367,9 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(LineMoveStep.HY05_TrayCheck); MoveInfo.NextMoveStep(LineMoveStep.HY05_TrayCheck);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号"); CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
MoveInfo.OneWaitCanEndStep = true;
} }
else else
{ {
...@@ -379,6 +380,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -379,6 +380,8 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(LineMoveStep.HY05_TrayCheck)) else if (MoveInfo.IsStep(LineMoveStep.HY05_TrayCheck))
{ {
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
//判断是否需要横移托盘,或者取放料 //判断是否需要横移托盘,或者取放料
UpdateTrayNum(); UpdateTrayNum();
...@@ -403,6 +406,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -403,6 +406,13 @@ namespace OnlineStore.DeviceLibrary
CheckLog("托盘阻挡" + MoveInfo.SLog + " 无需处理,放托盘离开"); CheckLog("托盘阻挡" + MoveInfo.SLog + " 无需处理,放托盘离开");
} }
} }
else
{
//未检测到信号或阻挡下降失败,结束处理
LogInfo(MoveInfo.SLog + "未等到信号 HY_TrayCheck=LOW 结束处理 ");
MoveEndS();
}
}
#endregion #endregion
#region C1线->出料线横移处理 31 #region C1线->出料线横移处理 31
...@@ -459,14 +469,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -459,14 +469,16 @@ namespace OnlineStore.DeviceLibrary
if (DeviceID.Equals(204)) if (DeviceID.Equals(204))
{ {
lineName = "C2"; lineName = "C2";
}else if (DeviceID.Equals(205)) }
else if (DeviceID.Equals(205))
{ {
lineName = "C3"; lineName = "C3";
} }
else if (DeviceID.Equals(213)) else if (DeviceID.Equals(213))
{ {
lineName = "C6"; lineName = "C6";
}else if (DeviceID.Equals(216)) }
else if (DeviceID.Equals(216))
{ {
lineName = "C7"; lineName = "C7";
} }
......
...@@ -234,7 +234,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -234,7 +234,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NewMove(LineMoveType.Fixture); MoveInfo.NewMove(LineMoveType.Fixture);
runStatus = LineRunStatus.Busy; runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown); MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
CheckLog(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘检测,前阻挡下降,清理托盘RFID"); CheckLog(" 托盘检测:" + MoveInfo.SLog + ",前阻挡检测到托盘,前阻挡下降");
ClearTrayRFID(); ClearTrayRFID();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH, 1200); IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH, 1200);
MoveInfo.OneWaitCanEndStep = true; MoveInfo.OneWaitCanEndStep = true;
...@@ -303,7 +303,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -303,7 +303,7 @@ namespace OnlineStore.DeviceLibrary
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号"); CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.OneWaitCanEndStep = true; MoveInfo.OneWaitCanEndStep = true;
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(30000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(30000));
} }
else else
{ {
......
...@@ -584,7 +584,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -584,7 +584,7 @@ namespace OnlineStore.DeviceLibrary
return false; return false;
} }
private bool RemoveInStore(InOutParam param) public bool RemoveInStore(InOutParam param,string logName="料盘已移走")
{ {
if (waitInStoreList.Count > 0) if (waitInStoreList.Count > 0)
{ {
...@@ -605,7 +605,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -605,7 +605,7 @@ namespace OnlineStore.DeviceLibrary
if (reIndex >= 0) if (reIndex >= 0)
{ {
waitInStoreList.RemoveAt(reIndex); waitInStoreList.RemoveAt(reIndex);
LogInfo("*******料盘已移走,清理入库任务:【" + param.ToStr() + "】"); LogInfo("*******"+ logName + ",清理入库任务:【" + param.ToStr() + "】");
return true; return true;
} }
} }
......
...@@ -209,6 +209,24 @@ namespace OnlineStore.DeviceLibrary ...@@ -209,6 +209,24 @@ namespace OnlineStore.DeviceLibrary
} }
} }
public static void ClearInstore(TrayInfo tray)
{
if (tray == null)
{
return;
}
//如果是入库托盘,需要清理入库消息
if (tray.InOrOutStore.Equals(1) && tray.InoutPar.InStoreNg.Equals(false) && (!tray.InoutPar.PosId.Equals("")))
{
int storeId = tray.InoutPar.GetStoreId();
if (storeId > 0 && LineManager.Line.MoveEquipMap.ContainsKey(storeId))
{
MoveEquip moveEquip = LineManager.Line.MoveEquipMap[storeId];
moveEquip.RemoveInStore(tray.InoutPar, "手动清空托盘");
}
}
}
} }
} }
...@@ -277,6 +277,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -277,6 +277,10 @@ namespace OnlineStore.DeviceLibrary
{ {
LogUtil.error("StartInStore【" + id + "】【" + msg + "】失败"); LogUtil.error("StartInStore【" + id + "】【" + msg + "】失败");
} }
else
{
LogUtil.info("StartInStore【" + id + "】【" + msg + "】成功");
}
} }
else else
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!