Commit 794fac15 LN

>30高的托盘处理修改

1 个父辈 4ba25353
此文件类型无法预览
...@@ -298,8 +298,9 @@ IO_Value增加None的定义,防止误操作 ...@@ -298,8 +298,9 @@ IO_Value增加None的定义,防止误操作
上料1模块,等待500ms再下降顶升气缸 上料1模块,等待500ms再下降顶升气缸
20200313
进仓模块:高度大于30的盘,出库时托盘先不顶升,待料盘到达托盘上方后,顶升再上升。
出料机构:如果是7寸盘
......
...@@ -76,7 +76,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -76,7 +76,11 @@ namespace OnlineStore.DeviceLibrary
{ {
return false; return false;
} }
if (IOValue(IO_Type.DLine_SuddenStop).Equals(IO_VALUE.LOW))
{
SetWarnMsg(Name + "启动失败:急停未开");
return false;
}
mainTimer.Stop(); mainTimer.Stop();
MoveInfo.EndMove(); MoveInfo.EndMove();
SecondMoveInfo.EndMove(); SecondMoveInfo.EndMove();
...@@ -98,6 +102,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -98,6 +102,15 @@ namespace OnlineStore.DeviceLibrary
/// </summary> /// </summary>
public override bool Reset() public override bool Reset()
{ {
if (CanStartRun().Equals(false))
{
return false;
}
if (IOValue(IO_Type.DLine_SuddenStop).Equals(IO_VALUE.LOW))
{
SetWarnMsg(Name + "复位失败:急停未开");
return false;
}
StopMove(); StopMove();
runStatus = LineRunStatus.Reset; runStatus = LineRunStatus.Reset;
MoveInfo.NewMove(LineMoveType.Reset); MoveInfo.NewMove(LineMoveType.Reset);
......
...@@ -139,7 +139,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -139,7 +139,7 @@ namespace OnlineStore.DeviceLibrary
int trayNum = SecondMoveInfo.MoveParam.TrayNumber; int trayNum = SecondMoveInfo.MoveParam.TrayNumber;
//去掉直接丢盘处理 //去掉直接丢盘处理
MoveInfo.NextMoveStep(LineMoveStep.MO_58_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MO_58_CylinderDown);
OutLog("出库 " + MoveInfo.SLog + ": 夹具检测编码完成, 上下气缸下降 ,更新料盘位置【" + MoveInfo.MoveParam.WareCode + "】【INLINE】【" + trayNum + "】"); OutLog("出库 " + MoveInfo.SLog + ": 夹具检测编码完成, 上下气缸下降 ,更新料盘位置【" + MoveInfo.MoveParam.WareCode + "】【INLINE】【" + trayNum + "】,顶升气缸上升");
if (MoveInfo.MoveParam != null) if (MoveInfo.MoveParam != null)
{ {
MoveInfo.MoveParam.TrayNumber = trayNum; MoveInfo.MoveParam.TrayNumber = trayNum;
...@@ -152,6 +152,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -152,6 +152,7 @@ namespace OnlineStore.DeviceLibrary
//更新料盘位置 //更新料盘位置
SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.INLINE, "E" + trayNum.ToString().PadLeft(2, '0')); SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.INLINE, "E" + trayNum.ToString().PadLeft(2, '0'));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW); UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
} }
//} //}
//else if (MoveInfo.IsTimeOut(180)) //else if (MoveInfo.IsTimeOut(180))
...@@ -262,9 +263,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -262,9 +263,10 @@ namespace OnlineStore.DeviceLibrary
if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_05_ToLineUp)) if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_05_ToLineUp))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MI_06_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MI_06_CylinderDown);
InLog("入库 " + MoveInfo.SLog + ": 升降下降"); InLog("入库 " + MoveInfo.SLog + ": 升降下降,顶升上升");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW); UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_06_CylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_06_CylinderDown))
{ {
...@@ -429,7 +431,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -429,7 +431,7 @@ namespace OnlineStore.DeviceLibrary
/// <param name="currMoveTrayNum"></param> /// <param name="currMoveTrayNum"></param>
/// <returns></returns> /// <returns></returns>
private bool CheckIsNeedOutStore() private bool CheckIsNeedOutStore()
{ {
if (currTrayNum <= 0) if (currTrayNum <= 0)
{ {
return false; return false;
...@@ -441,7 +443,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -441,7 +443,7 @@ namespace OnlineStore.DeviceLibrary
&& (!MoveInfo.MoveStep.Equals(LineMoveStep.MO_60_CylinderUp))) && (!MoveInfo.MoveStep.Equals(LineMoveStep.MO_60_CylinderUp)))
{ {
if (isFull.Equals(false)) if (isFull.Equals(false))
{ {
LogInfo(" 出库中,拦截空托盘【 " + currTrayNum + "】~"); LogInfo(" 出库中,拦截空托盘【 " + currTrayNum + "】~");
return true; return true;
} }
...@@ -620,7 +622,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -620,7 +622,7 @@ namespace OnlineStore.DeviceLibrary
//判断是否需要顶升 //判断是否需要顶升
bool isNeed = false; bool isNeed = false;
UpdateTrayNum(); UpdateTrayNum();
bool isFull = TrayManager.TrayIsFull(currTrayNum); bool isFull = TrayManager.TrayIsFull(currTrayNum);
if (TrayManager.RightTrayCode(currTrayNum, preTrayNum, false)) if (TrayManager.RightTrayCode(currTrayNum, preTrayNum, false))
{ {
//出库中,需要拦盘 //出库中,需要拦盘
...@@ -666,9 +668,17 @@ namespace OnlineStore.DeviceLibrary ...@@ -666,9 +668,17 @@ namespace OnlineStore.DeviceLibrary
} }
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_05_WaitTime)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_05_WaitTime))
{ {
//如果是出库,且盘高大于30,暂不顶升
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopUp); SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopUp);
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 顶升气缸上 升 )"); if (MoveInfo.MoveType.Equals(LineMoveType.OutStore) && MoveInfo.MoveParam.PlateH >= 30)
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP); {
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 出库托盘,高度>30,暂不顶升上升");
}
else
{
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 顶升气缸上 升 )");
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
}
} }
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_06_TopUp)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_06_TopUp))
{ {
......
...@@ -112,7 +112,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -112,7 +112,7 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown); SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
if (Config.SidesWayNum <= 0) if (Config.SidesWayNum <= 0)
{ {
if (CylinderIsOk(IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down)) if (!CylinderIsOk(IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down))
{ {
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down); CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
} }
...@@ -482,7 +482,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -482,7 +482,11 @@ namespace OnlineStore.DeviceLibrary
OutLog("出料 " + MoveInfo.SLog + " : 上下气缸上升,皮带线准备出料"); OutLog("出料 " + MoveInfo.SLog + " : 上下气缸上升,皮带线准备出料");
UpdownUpMove(); UpdownUpMove();
StartLineOut(MoveInfo.MoveParam); StartLineOut(MoveInfo.MoveParam);
if (Config.SidesWayNum <= 0) if (MoveInfo.MoveParam.PlateW.Equals(7))
{
MO_14_TopCylinder_Down();
}
else if (Config.SidesWayNum <= 0)
{ {
CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down); CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
} }
...@@ -494,9 +498,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -494,9 +498,11 @@ namespace OnlineStore.DeviceLibrary
LogInfo("出料 【" + posId + "】" + MoveInfo.SLog + " 更新托盘【" + num + "】为空"); LogInfo("出料 【" + posId + "】" + MoveInfo.SLog + " 更新托盘【" + num + "】为空");
// MoveInfo.WaitList.Add(WaitResultInfo.WaitProvidingEquipCanOut()); // MoveInfo.WaitList.Add(WaitResultInfo.WaitProvidingEquipCanOut());
TrayManager.UpdateTrayInfo(num); TrayManager.UpdateTrayInfo(num);
if (SecondMoveInfo.MoveStep < LineMoveStep.MO_14_TopDown)
//阻挡气缸移动 {
MO_14_TopCylinder_Down(); //阻挡气缸移动
MO_14_TopCylinder_Down();
}
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_05_WaitBox)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_05_WaitBox))
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!