Commit c772f357 LN

入料bug修改

1 个父辈 f2ec5305
......@@ -27,7 +27,14 @@ namespace OnlineStore.DeviceLibrary
baseConfig = config;
this.Config = config;
IsDebug = config.IsDebug.Equals(1);
Name = (" " + "入料T" + DeviceID % 100 + " ").ToUpper();
if (config.IsCanOut.Equals(1))
{
Name = (" " + "出料T" + DeviceID % 100 + " ").ToUpper();
}
else
{
Name = (" " + "入料T" + DeviceID % 100 + " ").ToUpper();
}
Init();
UseAxis = true;
......
......@@ -280,7 +280,7 @@ namespace OnlineStore.DeviceLibrary
if (MoveInfo.IsStep(LineMoveStep.HY02_FrontStopDown))
{
if (IOValue(IO_Type.HY_FrontStopCheck).Equals(IO_VALUE.LOW)|| IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
if (IOValue(IO_Type.HY_FrontStopCheck).Equals(IO_VALUE.LOW) || IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 托盘检测到信号,前阻挡上升");
......@@ -295,23 +295,27 @@ namespace OnlineStore.DeviceLibrary
LogInfo(MoveInfo.SLog + "未等到信号 HY_FrontStopCheck=HIGH 或 HY_TrayCheck=LOW 结束处理 ");
MoveInfo.EndMove();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY03_FrontStopUp))
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.OneWaitCanEndStep = true;
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));
}
else if (MoveInfo.IsStep(LineMoveStep.HY03_FrontStopUp))
else
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else
{
//未检测到信号或阻挡下降失败,结束处理
LogInfo(MoveInfo.SLog + "未等到信号 HY_TrayCheck=LOW 结束处理 ");
MoveInfo.EndMove();
}
//未检测到信号或阻挡下降失败,结束处理
LogInfo(MoveInfo.SLog + "未等到信号 HY_TrayCheck=LOW 结束处理 ");
MoveInfo.EndMove();
}
else if (MoveInfo.IsStep(LineMoveStep.HY04_WaitTime))
}
else if (MoveInfo.IsStep(LineMoveStep.HY04_WaitTime))
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
//更新托盘号
UpdateTrayNum();
......@@ -329,234 +333,241 @@ namespace OnlineStore.DeviceLibrary
{
HY11_TopUpToHY();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY06_SL_TopUp))
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY07_SL_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,定位上升");
LocationCylinderUp(MoveInfo);
//未检测到信号或阻挡下降失败,结束处理
LogInfo(MoveInfo.SLog + "未等到信号 HY_TrayCheck=LOW 结束处理 ");
MoveInfo.EndMove();
}
else if (MoveInfo.IsStep(LineMoveStep.HY07_SL_LocationUp))
}
else if (MoveInfo.IsStep(LineMoveStep.HY06_SL_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY07_SL_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,定位上升");
LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY07_SL_LocationUp))
{
if (TrayNeedSL(currTrayNum))
{
if (TrayNeedSL(currTrayNum))
FeedingEquip feed = LineManager.Line.FeedingEquipMap[Config.WorkDeviceId];
if (feed.Config.IsCanOut.Equals(1))
{
FeedingEquip feed = LineManager.Line.FeedingEquipMap[Config.WorkDeviceId];
if (feed.Config.IsCanOut.Equals(1))
//紧急出料
if (feed.StartTrayOut(MoveInfo.MoveParam))
{
//紧急出料
if (feed.StartTrayOut(MoveInfo.MoveParam))
{
MoveInfo.NextMoveStep(LineMoveStep.HY08_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " " + feed.Name + "始抓料,等待料盘放入或料盘离开 ");
}
else if (MoveInfo.IsTimeOut(30))
{
MoveTimeOut(MoveInfo, "等待" + feed.Name + "开始出库超时");
//如果当前无料串,或者料串已离开,直接放行 托盘
TrayCanLeave();
}
else if (MoveInfo.IsTimeOut(20))
{
MoveTimeOut(MoveInfo, "等待" + feed.Name + "开始出库超时");
}
MoveInfo.NextMoveStep(LineMoveStep.HY08_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " " + feed.Name + "始抓料,等待料盘放入或料盘离开 ");
}
else
else if (MoveInfo.IsTimeOut(30))
{
//如果是出库,且盘高大于30,暂不顶升
MoveInfo.NextMoveStep(LineMoveStep.HY08_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开 ");
MoveTimeOut(MoveInfo, "等待" + feed.Name + "开始出库超时");
//如果当前无料串,或者料串已离开,直接放行 托盘
TrayCanLeave();
}
else if (MoveInfo.IsTimeOut(20))
{
MoveTimeOut(MoveInfo, "等待" + feed.Name + "开始出库超时");
}
}
else
{
HY11_TopUpToHY();
//如果是出库,且盘高大于30,暂不顶升
MoveInfo.NextMoveStep(LineMoveStep.HY08_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开 ");
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY09_SL_ReelProEnd))
else
{
HY11_TopUpToHY();
}
else if (MoveInfo.IsStep(LineMoveStep.HY11_TopUpToHY))
{
MoveInfo.NextMoveStep(LineMoveStep.HY12_WaitHY2Free);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY" + HyOutDeviceId + "空闲,可以开始横移 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
HYEquipBase hyOut = GetHyOutEquip();
if (hyOut.CanStartMove())
{
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待" + hyOut.Name + "准备完成(顶升上升,定位下降) ");
hyOut.MoveInfo.NewMove(LineMoveType.Fixture);
hyOut.MoveInfo.NextMoveStep(LineMoveStep.HY51_WaitFree);
ClearTimeoutAlarm("等待" + hyOut.Name + "可以横移超时");
}
else if (MoveInfo.IsTimeOut())
{
MoveTimeOut(MoveInfo, "等待" + hyOut.Name + "可以横移超时");
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY13_WaitHY2Ready))
{
HYEquipBase hyOut = GetHyOutEquip();
bool result = hyOut.MoveInfo.MoveStep >= LineMoveStep.HY54_HY2Ready;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY14_HYLineRun);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机转动 ");
LineRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
ClearTimeoutAlarm("等待" + hyOut + "顶升上升完成超时");
}
else if (MoveInfo.IsTimeOut())
{
MoveTimeOut(MoveInfo, "等待" + hyOut + "顶升上升完成超时");
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY14_HYLineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY15_WaitOutCheck);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY" + HyOutDeviceId + " ");
LineRun();
}
else if (MoveInfo.IsStep(LineMoveStep.HY15_WaitOutCheck))
{
HYEquipBase hyOut = GetHyOutEquip();
bool result = (hyOut.MoveInfo.MoveStep >= LineMoveStep.HY56_CheckWait) || hyOut.MoveInfo.MoveType.Equals(LineMoveType.None);
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY17_TopDown);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机停止,顶升下降,定位下降 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LocationCylinderDown(MoveInfo);
ClearTimeoutAlarm("等待托盘到达" + hyOut.Name + "");
}
else if (MoveInfo.IsTimeOut())
{
MoveTimeOut(MoveInfo, "等待托盘到达" + hyOut.Name + "");
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY17_TopDown))
}
else if (MoveInfo.IsStep(LineMoveStep.HY09_SL_ReelProEnd))
{
HY11_TopUpToHY();
}
else if (MoveInfo.IsStep(LineMoveStep.HY11_TopUpToHY))
{
MoveInfo.NextMoveStep(LineMoveStep.HY12_WaitHY2Free);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY" + HyOutDeviceId + "空闲,可以开始横移 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
HYEquipBase hyOut = GetHyOutEquip();
if (hyOut.CanStartMove())
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待" + hyOut.Name + "准备完成(顶升上升,定位下降) ");
hyOut.MoveInfo.NewMove(LineMoveType.Fixture);
hyOut.MoveInfo.NextMoveStep(LineMoveStep.HY51_WaitFree);
ClearTimeoutAlarm("等待" + hyOut.Name + "可以横移超时");
}
#endregion
#region 横移出口托盘处理
else if (MoveInfo.IsStep(LineMoveStep.HY51_WaitFree))
else if (MoveInfo.IsTimeOut())
{
MoveInfo.NextMoveStep(LineMoveStep.HY52_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
LocationCylinderDown(MoveInfo);
MoveTimeOut(MoveInfo, "等待" + hyOut.Name + "可以横移超时");
}
else if (MoveInfo.IsStep(LineMoveStep.HY52_TopUp))
}
else if (MoveInfo.IsStep(LineMoveStep.HY13_WaitHY2Ready))
{
HYEquipBase hyOut = GetHyOutEquip();
bool result = hyOut.MoveInfo.MoveStep >= LineMoveStep.HY54_HY2Ready;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY53_LineRun);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 横移电机开始转动");
MoveInfo.NextMoveStep(LineMoveStep.HY14_HYLineRun);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机转动 ");
LineRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
ClearTimeoutAlarm("等待" + hyOut + "顶升上升完成超时");
}
else if (MoveInfo.IsStep(LineMoveStep.HY53_LineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY54_HY2Ready);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 准备接收横移托盘完成");
}
else if (MoveInfo.IsStep(LineMoveStep.HY54_HY2Ready))
{
MoveInfo.NextMoveStep(LineMoveStep.HY55_WaitTrayCheck);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待检测到托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY55_WaitTrayCheck))
else if (MoveInfo.IsTimeOut())
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
MoveTimeOut(MoveInfo, "等待" + hyOut + "顶升上升完成超时");
}
else if (MoveInfo.IsStep(LineMoveStep.HY56_CheckWait))
{
//托盘已到位,更新托盘号,判断是否需要取放料
UpdateTrayNum();
if (TrayNeedSL(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY57_SL_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,横移电机停止 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降,横移电机停止 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY57_SL_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY58_SL_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 是出入库需要的空托盘,定位上升");
LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY58_SL_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY59_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开");
}
else if (MoveInfo.IsStep(LineMoveStep.HY59_SL_WaitProcessReel))
{
}
else if (MoveInfo.IsStep(LineMoveStep.HY60_SL_ReelProEnd))
}
else if (MoveInfo.IsStep(LineMoveStep.HY14_HYLineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY15_WaitOutCheck);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY" + HyOutDeviceId + " ");
LineRun();
}
else if (MoveInfo.IsStep(LineMoveStep.HY15_WaitOutCheck))
{
HYEquipBase hyOut = GetHyOutEquip();
bool result = (hyOut.MoveInfo.MoveStep >= LineMoveStep.HY56_CheckWait) || hyOut.MoveInfo.MoveType.Equals(LineMoveType.None);
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
MoveInfo.NextMoveStep(LineMoveStep.HY17_TopDown);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机停止,顶升下降,定位下降 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.HY61_TopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY62_LocationDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 定位下降");
LocationCylinderDown(MoveInfo);
ClearTimeoutAlarm("等待托盘到达" + hyOut.Name + "");
}
else if (MoveInfo.IsStep(LineMoveStep.HY62_LocationDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY63_WaitTrayGo);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY63_WaitTrayGo))
else if (MoveInfo.IsTimeOut())
{
MoveInfo.NextMoveStep(LineMoveStep.HY64_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失500");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
MoveTimeOut(MoveInfo, "等待托盘到达" + hyOut.Name + "");
}
else if (MoveInfo.IsStep(LineMoveStep.HY64_CheckWait))
}
else if (MoveInfo.IsStep(LineMoveStep.HY17_TopDown))
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
#endregion
#region 横移出口托盘处理
else if (MoveInfo.IsStep(LineMoveStep.HY51_WaitFree))
{
MoveInfo.NextMoveStep(LineMoveStep.HY52_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY52_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY53_LineRun);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 横移电机开始转动");
LineRun(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY53_LineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY54_HY2Ready);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 准备接收横移托盘完成");
}
else if (MoveInfo.IsStep(LineMoveStep.HY54_HY2Ready))
{
MoveInfo.NextMoveStep(LineMoveStep.HY55_WaitTrayCheck);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待检测到托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY55_WaitTrayCheck))
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY56_CheckWait))
{
//托盘已到位,更新托盘号,判断是否需要取放料
UpdateTrayNum();
if (TrayNeedSL(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY65_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升提前上升");
MoveInfo.NextMoveStep(LineMoveStep.HY57_SL_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,横移电机停止 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
}
else if (MoveInfo.IsStep(LineMoveStep.HY65_TopUp))
{
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
CheckLog("托盘阻挡" + MoveInfo.SLog + " 处理完成");
}
else
{
LogUtil.error(Name + "FixtureProcess 未找到[" + MoveInfo.MoveType + "][" + MoveInfo.MoveStep + "]的处理");
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降,横移电机停止 ");
LineStop(MoveInfo);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY57_SL_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY58_SL_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 是出入库需要的空托盘,定位上升");
LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY58_SL_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY59_SL_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开");
}
else if (MoveInfo.IsStep(LineMoveStep.HY59_SL_WaitProcessReel))
{
}
else if (MoveInfo.IsStep(LineMoveStep.HY60_SL_ReelProEnd))
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.HY61_TopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY62_LocationDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 定位下降");
LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY62_LocationDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY63_WaitTrayGo);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY63_WaitTrayGo))
{
MoveInfo.NextMoveStep(LineMoveStep.HY64_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失500");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY64_CheckWait))
{
MoveInfo.NextMoveStep(LineMoveStep.HY65_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升提前上升");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
}
else if (MoveInfo.IsStep(LineMoveStep.HY65_TopUp))
{
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
CheckLog("托盘阻挡" + MoveInfo.SLog + " 处理完成");
}
else
{
LogUtil.error(Name + "FixtureProcess 未找到[" + MoveInfo.MoveType + "][" + MoveInfo.MoveStep + "]的处理");
}
#endregion
}
......
......@@ -567,6 +567,7 @@ namespace OnlineStore.DeviceLibrary
LogUtil.info(Name + MoveInfo.SLog + logName + "送料,接驳台有料,调用arriveRobotLocation=" + robotIndex + "[" + code + "]");
string msg = SServerManager.arriveRobotLocation(Name, robotIndex, code);
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
else if (MoveInfo.IsStep(LineMoveStep.JM_16_ReelArrive))
{
......@@ -580,6 +581,7 @@ namespace OnlineStore.DeviceLibrary
{
ClearTimeoutAlarm("给服务器发送afterPutCutTask完成");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
OutLog(logName + MoveInfo.SLog + ":结束 ");
}
else if (MoveInfo.IsTimeOut(60))
......
......@@ -244,9 +244,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
T3C1_Log("托盘检测" + T3C1_MoveInfo.SLog + " ,托盘号【" + T3C1_TrayNum + "】,直接放盘通过,顶升气缸下降 ");
CylinderMove(T3C1_MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
MO_14_TopDown();
}
}
......@@ -288,7 +286,12 @@ namespace OnlineStore.DeviceLibrary
}
#endregion
}
private void MO_14_TopDown()
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
T3C1_Log("托盘检测" + T3C1_MoveInfo.SLog + " ,托盘号【" + T3C1_TrayNum + "】,直接放盘通过,顶升气缸下降 ");
CylinderMove(T3C1_MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
private void MO_16_Stop2Down()
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MO_16_Stop2Down);
......@@ -342,7 +345,7 @@ namespace OnlineStore.DeviceLibrary
}
if (T3C1TrayIsReady())
{
MO_16_Stop2Down();
MO_14_TopDown();
}
}
}
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!