Commit c4c90572 LN

移栽模块流程优化。

上料模块出料架口收到ready信号后,先把状态设置为None。
1 个父辈 bbfcdee8
...@@ -279,7 +279,8 @@ PRO,0,移栽上下轴流水线取放料详细位置P2,UpDownP2DetialList,0X0=800 ...@@ -279,7 +279,8 @@ PRO,0,移栽上下轴流水线取放料详细位置P2,UpDownP2DetialList,0X0=800
20200309 20200309
流水线启动时先转动链条5秒,停止时最后停止流水线,防止托盘停留在rfid读卡器上方。 流水线启动时先转动链条5秒,停止时最后停止流水线,防止托盘停留在rfid读卡器上方。
移栽模块流程优化。
上料模块出料架口收到ready信号后,先把状态设置为None。
......
...@@ -681,9 +681,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -681,9 +681,10 @@ namespace OnlineStore.DeviceLibrary
string logName = Name + "[" + Config.AgvOutName + "] 料架送入AGV "; string logName = Name + "[" + Config.AgvOutName + "] 料架送入AGV ";
try try
{ {
LogUtil.info(logName + "开始,先设置状态为None");
AgvClient.SetStatus(Config.AgvOutName, LastOutShelfId, ClientAction.None, ClientLevel.High, true);
if (IOValue(IO_Type.SL_Out_Check).Equals(IO_VALUE.HIGH)) if (IOValue(IO_Type.SL_Out_Check).Equals(IO_VALUE.HIGH))
{ {
LogUtil.info(logName+"开始");
// AgvClient.SetStatus(Config.AgvOutName,"",ClientAction.MayLeave,ClientLevel.High); // AgvClient.SetStatus(Config.AgvOutName,"",ClientAction.MayLeave,ClientLevel.High);
ProcessShelfOut = true; ProcessShelfOut = true;
//出口阻挡下降,出口线体转动 //出口阻挡下降,出口线体转动
...@@ -713,6 +714,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -713,6 +714,10 @@ namespace OnlineStore.DeviceLibrary
ProcessShelfOut = false; ProcessShelfOut = false;
LogUtil.info(logName + ",停止转动, 结束"); LogUtil.info(logName + ",停止转动, 结束");
} }
else
{
LogUtil.info(logName + "开始,未检测到料架信号,不处理");
}
} }
catch (TimeoutException te) catch (TimeoutException te)
{ {
......
...@@ -60,21 +60,31 @@ namespace OnlineStore.DeviceLibrary ...@@ -60,21 +60,31 @@ namespace OnlineStore.DeviceLibrary
if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_50_StartOutProcess)) if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_50_StartOutProcess))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MO_51_CylinderBefore); MoveInfo.NextMoveStep(LineMoveStep.MO_51_CylinderBefore);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
OutLog("出库 " + MoveInfo.MoveStep + ": 前后气缸前进"); OutLog("出库 " + MoveInfo.MoveStep + ": 前后气缸前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before); CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_51_CylinderBefore)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_51_CylinderBefore))
{ {
if (CylinderIsOk(IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before))
{
MoveInfo.NextMoveStep(LineMoveStep.MO_52_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MO_52_CylinderDown);
OutLog("出库 " + MoveInfo.SLog + ": 上下气缸下降 "); OutLog("出库 " + MoveInfo.SLog + ": 上下气缸下降 ");
UpdownDownP3Move(MoveInfo.MoveParam.PlateH); UpdownDownP3Move(MoveInfo.MoveParam.PlateH);
// CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Up, IO_Type.UpDownCylinder_Down); // CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Up, IO_Type.UpDownCylinder_Down);
} }
else
{
MoveInfo.NextMoveStep(LineMoveStep.MO_51_CylinderBefore);
OutLog("出库 " + MoveInfo.MoveStep + ": 前后气缸前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_52_CylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_52_CylinderDown))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MO_53_DownWait); MoveInfo.NextMoveStep(LineMoveStep.MO_53_DownWait);
OutLog("出库 " + MoveInfo.SLog + ": 等待600ms后夹紧"); OutLog("出库 " + MoveInfo.SLog + ": 等待200ms后夹紧");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(600)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_53_DownWait)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_53_DownWait))
{ {
...@@ -101,7 +111,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -101,7 +111,7 @@ namespace OnlineStore.DeviceLibrary
if (TrayIsOk()) if (TrayIsOk())
{ {
MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter); MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退"); OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After); CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
} }
...@@ -109,7 +119,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -109,7 +119,7 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter); MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退"); OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After); CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
} }
...@@ -250,14 +260,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -250,14 +260,14 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(LineMoveStep.MI_06_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MI_06_CylinderDown);
InLog("入库 " + MoveInfo.SLog + ": 升降下降"); InLog("入库 " + MoveInfo.SLog + ": 升降下降");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH,MoveInfo.MoveParam.PlateW); UpdownDownP2Move(MoveInfo.MoveParam.PlateH,MoveInfo.MoveParam.PlateW);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_06_CylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_06_CylinderDown))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MI_07_DownWait); MoveInfo.NextMoveStep(LineMoveStep.MI_07_DownWait);
InLog("入库 " + MoveInfo.SLog + ": 等待600ms后夹紧"); InLog("入库 " + MoveInfo.SLog + ": 等待200ms后夹紧");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(600)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
} }
//只有当BOX可以进行出入库时,移栽物品,防止卡住 //只有当BOX可以进行出入库时,移栽物品,防止卡住
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_07_DownWait)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_07_DownWait))
...@@ -294,10 +304,19 @@ namespace OnlineStore.DeviceLibrary ...@@ -294,10 +304,19 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_10_CylinderBefore)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_10_CylinderBefore))
{ {
if (CylinderIsOk(IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before))
{
MoveInfo.NextMoveStep(LineMoveStep.MI_11_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MI_11_CylinderDown);
InLog("入库 " + MoveInfo.SLog + " ,上下气缸下降"); InLog("入库 " + MoveInfo.SLog + " ,上下气缸下降");
UpdownDownP3Move(MoveInfo.MoveParam.PlateH); UpdownDownP3Move(MoveInfo.MoveParam.PlateH);
} }
else
{
MoveInfo.NextMoveStep(LineMoveStep.MI_10_CylinderBefore);
InLog("入库: " + MoveInfo.SLog + " 前后气缸1前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_11_CylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_11_CylinderDown))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MI_12_CylinderRelax); MoveInfo.NextMoveStep(LineMoveStep.MI_12_CylinderRelax);
...@@ -313,9 +332,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -313,9 +332,9 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_13_UpdownCylinderUp)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_13_UpdownCylinderUp))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MI_14_CylinderAfter); MoveInfo.NextMoveStep(LineMoveStep.MI_14_CylinderAfter);
InLog("入库 " + MoveInfo.SLog + ",前后气缸后退,等待1000 "); InLog("入库 " + MoveInfo.SLog + ",前后气缸后退,等待300 ");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After); CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
//此时box就可以入库操作了 //触发事件,BOX入库 //此时box就可以入库操作了 //触发事件,BOX入库
// LineServer.StartInStore(DeviceID, MoveInfo.MoveParam); // LineServer.StartInStore(DeviceID, MoveInfo.MoveParam);
} }
......
...@@ -433,14 +433,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -433,14 +433,14 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(LineMoveStep.PO_01_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.PO_01_CylinderDown);
OutLog(" " + MoveInfo.SLog + " : 上下气缸下降"); OutLog(" " + MoveInfo.SLog + " : 上下气缸下降");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW); UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_01_CylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_01_CylinderDown))
{ {
MoveInfo.NextMoveStep(LineMoveStep.PO_02_DownWait); MoveInfo.NextMoveStep(LineMoveStep.PO_02_DownWait);
OutLog("出料 " + MoveInfo.SLog + " : 等待300后夹紧"); OutLog("出料 " + MoveInfo.SLog + " : 等待200后夹紧");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
} }
//只有当BOX可以进行出出料时,移栽物品,防止卡住 //只有当BOX可以进行出出料时,移栽物品,防止卡住
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_02_DownWait)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_02_DownWait))
...@@ -485,6 +485,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -485,6 +485,8 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_06_CylinderBefore)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_06_CylinderBefore))
{ {
if (CylinderIsOk(IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before))
{
if (LineIsReady()) if (LineIsReady())
{ {
//气缸不下降,直接扔料 //气缸不下降,直接扔料
...@@ -502,6 +504,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -502,6 +504,13 @@ namespace OnlineStore.DeviceLibrary
Alarm(LineAlarmType.IoSingleTimeOut); Alarm(LineAlarmType.IoSingleTimeOut);
} }
} }
else
{
MoveInfo.NextMoveStep(LineMoveStep.PO_06_CylinderBefore);
OutLog("出料:" + MoveInfo.SLog + " ,前后气缸前进)");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
}
}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_07_CylinderDown)) //else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_07_CylinderDown))
//{ //{
// MoveInfo.NextMoveStep(LineMoveStep.PO_08_CylinderRelax); // MoveInfo.NextMoveStep(LineMoveStep.PO_08_CylinderRelax);
...@@ -510,16 +519,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -510,16 +519,16 @@ namespace OnlineStore.DeviceLibrary
//} //}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_08_CylinderRelax)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_08_CylinderRelax))
{ {
MoveInfo.NextMoveStep(LineMoveStep.PO_09_CylinderUp); // MoveInfo.NextMoveStep(LineMoveStep.PO_09_CylinderUp);
OutLog("出料:" + MoveInfo.SLog + ",上下气缸上升)"); // OutLog("出料:" + MoveInfo.SLog + ",上下气缸上升)");
UpdownUpMove(); // UpdownUpMove();
} //}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_09_CylinderUp)) //else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_09_CylinderUp))
{ //{
MoveInfo.NextMoveStep(LineMoveStep.PO_10_CylinderAfter); MoveInfo.NextMoveStep(LineMoveStep.PO_10_CylinderAfter);
OutLog("出料:" + MoveInfo.SLog + ",前后气缸后退,等待1000 ,皮带线继续运动"); OutLog("出料:" + MoveInfo.SLog + ",前后气缸后退,等待200 ,皮带线继续运动");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After); CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
//出料皮带线停止出料 //出料皮带线停止出料
DisLineContiune(); DisLineContiune();
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!