Commit 542f0f83 LN

接驳台逻辑优化

1 个父辈 e24b6592
......@@ -115,6 +115,34 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(Name + " CheckFixture " + "失败,未得到锁");
}
}
private void trayCheckStop()
{
try
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheckLowWait.Stop();
}
else
{
CheckStopWatch(trayCheckLowWait, 30000, false);
}
if (IOValue(IO_Type.HY_FrontStopCheck).Equals(IO_VALUE.HIGH))
{
CheckStopWatch(trayCheckWait, TrayWaitTime, false);
}
else
{
trayCheckWait.Stop();
}
}
catch (Exception ex)
{
LogUtil.error("trayCheckStop error: " + ex.ToString());
}
}
private bool IsNgPro()
{
if (DeviceID.Equals(217))
......@@ -137,6 +165,7 @@ namespace OnlineStore.DeviceLibrary
{
return;
}
trayCheckStop();
if (SecondMoveInfo.IsStep(LineMoveStep.JHY_01_TrayCheck))
{
SecondMoveInfo.NextMoveStep(LineMoveStep.JHY_02_TopMove);
......@@ -635,18 +664,19 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.JM_06_UpdownToP1))
{
MoveInfo.NextMoveStep(LineMoveStep.JM_07_ClampCheck);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_ClampCylinder_Check, IO_VALUE.HIGH));
if (IsNgPro())
{
OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料 ");
}
else
{
OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料,超时时间500 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.OneWaitCanEndStep = true;
}
JM_07_ClampCheck();
//MoveInfo.NextMoveStep(LineMoveStep.JM_07_ClampCheck);
//MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_ClampCylinder_Check, IO_VALUE.HIGH));
//if (IsNgPro())
//{
// OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料 ");
//}
//else
//{
// OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料,超时时间500 ");
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
// MoveInfo.OneWaitCanEndStep = true;
//}
}
else if (MoveInfo.IsStep(LineMoveStep.JM_07_ClampCheck))
{
......@@ -665,19 +695,19 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.JM_10_WaitJNoReel);
OutLog(logName + MoveInfo.SLog + ":托盘离开,等待接驳台无料 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck1, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck2, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck3, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck4, IO_VALUE.LOW));
if (TrayCheckLow())
{
JM_11_CylinderGive();
}
else
{
JM_10_WaitJNoReel();
}
}
}
else if (MoveInfo.IsStep(LineMoveStep.JM_10_WaitJNoReel))
{
MoveInfo.NextMoveStep(LineMoveStep.JM_11_CylinderGive);
OutLog(logName + MoveInfo.SLog + ":接驳台气缸放料 ");
CylinderMove(MoveInfo, IO_Type.HY_MoveCylinder_Take, IO_Type.HY_MoveCylinder_Give);
JM_11_CylinderGive();
}
else if (MoveInfo.IsStep(LineMoveStep.JM_11_CylinderGive))
{
......@@ -808,6 +838,71 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(Name + "OutStoreProcess 未找到[" + MoveInfo.MoveType + "][" + MoveInfo.MoveStep + "]的处理");
}
}
private void JM_11_CylinderGive()
{
MoveInfo.NextMoveStep(LineMoveStep.JM_11_CylinderGive);
OutLog(logName + MoveInfo.SLog + ":接驳台气缸放料 ");
CylinderMove(MoveInfo, IO_Type.HY_MoveCylinder_Take, IO_Type.HY_MoveCylinder_Give);
}
private void JM_07_ClampCheck()
{
if (IOValue(IO_Type.HY_ClampCylinder_Check).Equals(IO_VALUE.LOW))
{
MoveInfo.NextMoveStep(LineMoveStep.JM_07_ClampCheck);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_ClampCylinder_Check, IO_VALUE.HIGH));
if (IsNgPro())
{
OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料 ");
}
else
{
OutLog(logName + MoveInfo.SLog + ":夹爪料盘检测有料,超时时间500 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.OneWaitCanEndStep = true;
}
}
else
{
if (IsNgPro())
{
MoveInfo.NextMoveStep(LineMoveStep.JM_11_CylinderGive);
OutLog(logName + MoveInfo.SLog + ": 托盘离开,接驳台气缸放料 ");
CylinderMove(MoveInfo, IO_Type.HY_MoveCylinder_Take, IO_Type.HY_MoveCylinder_Give);
}
else
{
if (TrayCheckLow())
{
JM_11_CylinderGive();
}
else
{
JM_10_WaitJNoReel();
}
}
}
}
private void JM_10_WaitJNoReel()
{
MoveInfo.NextMoveStep(LineMoveStep.JM_10_WaitJNoReel);
OutLog(logName + MoveInfo.SLog + ":托盘离开,等待接驳台无料 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck1, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck2, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck3, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck4, IO_VALUE.LOW));
}
private bool TrayCheckLow()
{
if (IOValue(IO_Type.HY_TrayCheck1).Equals(IO_VALUE.LOW) &&
IOValue(IO_Type.HY_TrayCheck2).Equals(IO_VALUE.LOW) &&
IOValue(IO_Type.HY_TrayCheck3).Equals(IO_VALUE.LOW) &&
IOValue(IO_Type.HY_TrayCheck4).Equals(IO_VALUE.LOW)
)
{ return true; }
return false;
}
#endregion
public override string GetMoveStr()
{
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!