Commit be0605e2 LN

接驳台需要时再转。

1 个父辈 07422564
......@@ -334,11 +334,10 @@ namespace OnlineStore.DeviceLibrary
Line3TimerPro();
//小皮带线常转
if (IOValue(IO_Type.SeparateDevice_Run).Equals(IO_VALUE.LOW) && MoveInfo.MoveType.Equals(LineMoveType.None) && NoErrorAlarm())
{
SeparateLineRun();
}
//if (IOValue(IO_Type.SeparateDevice_Run).Equals(IO_VALUE.LOW) && MoveInfo.MoveType.Equals(LineMoveType.None) && NoErrorAlarm())
//{
// SeparateLineRun();
//}
}
//判断红灯状态
......@@ -454,7 +453,7 @@ namespace OnlineStore.DeviceLibrary
private bool Line3HasTray()
{
if (Line3LastTrayP > 0 && Line3LastTrayP <= Line3MaxPosition * 10)
if (Line3LastTrayP > 0 && Line3LastTrayP <= Line3MaxPosition * 3)
{
return true;
}
......@@ -527,6 +526,18 @@ namespace OnlineStore.DeviceLibrary
{
UpdateScanInfo(IO_VALUE.HIGH, LastCode);
LogUtil.info(hengyiName + "ExitTray_Check3不亮,但扫到条码,更改为有料: " + LastCode);
if (DeviceID.Equals(301))
{
if (Line3LastTrayP > Line3MaxPosition) { Line3LastTrayP = Line3MaxPosition; }
// StationInfo_NG = new StationTrayInfo(StationInfo_Scan.TrayValue, StationInfo_Scan.CodeStr);
}
else
{
if (Line3LastTrayP > Line3MaxPosition - 1)
{
Line3LastTrayP = Line3MaxPosition - 1;
}
}
}
IsInScanCode = false;
......@@ -657,22 +668,22 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
}
public void SeparateBackRun(LineMoveInfo moveInfo = null)
{
if (moveInfo != null)
{
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_Run, IO_VALUE.LOW));
}
IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.LOW);
if (DeviceID.Equals(301))
{
if (moveInfo != null)
{
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_BackRun, IO_VALUE.HIGH));
}
IOMove(IO_Type.SeparateDevice_BackRun, IO_VALUE.HIGH);
}
}
//public void SeparateBackRun(LineMoveInfo moveInfo = null)
//{
// if (moveInfo != null)
// {
// moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_Run, IO_VALUE.LOW));
// }
// IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.LOW);
// if (DeviceID.Equals(301))
// {
// if (moveInfo != null)
// {
// moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_BackRun, IO_VALUE.HIGH));
// }
// IOMove(IO_Type.SeparateDevice_BackRun, IO_VALUE.HIGH);
// }
//}
public void SeparateStopRun(LineMoveInfo moveInfo = null)
{
if (moveInfo != null)
......
......@@ -114,162 +114,162 @@ namespace OnlineStore.DeviceLibrary
//{
// ScanCode();
//}
if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_02_ScanCode))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_03_GetTraySize);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
LastWidth = 0;
int robotIndex = GetRobotIndex();
string result = SServerManager.GetTraySize(Name, robotIndex, StationInfo_Move.CodeStr, out LastWidth);
LogUtil.info(hengyiName + "出口有料,二维码[" + StationInfo_Move.CodeStr + "] 获取料盘尺寸【" + LastWidth + "】【" + result + "】");
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_03_GetTraySize))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_04_SUpDownMove);
if (LastWidth.Equals(7))
{
LogUtil.info(hengyiName + "出口有料,料盘尺寸【" + LastWidth + "】上升分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Down, IO_Type.SeparateDevice_Up);
}
else if (LastWidth > 0)
{
LogUtil.info(hengyiName + "出口有料,料盘尺寸【" + LastWidth + "】下降分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Up, IO_Type.SeparateDevice_Down);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.DO_10_StopSeparateLine);
LogUtil.info(hengyiName + "扫码NG料, 先转动NG料到扫码后一个工位,需要停止接驳台皮带线");
SeparateStopRun(MoveInfo);
//if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_02_ScanCode))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_03_GetTraySize);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
// LastWidth = 0;
// int robotIndex = GetRobotIndex();
// string result = SServerManager.GetTraySize(Name, robotIndex, StationInfo_Move.CodeStr, out LastWidth);
// LogUtil.info(hengyiName + "出口有料,二维码[" + StationInfo_Move.CodeStr + "] 获取料盘尺寸【" + LastWidth + "】【" + result + "】");
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_03_GetTraySize))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_04_SUpDownMove);
// if (LastWidth.Equals(7))
// {
// LogUtil.info(hengyiName + "出口有料,料盘尺寸【" + LastWidth + "】上升分盘定位气缸");
// CylinderMove(MoveInfo, IO_Type.SeparateDevice_Down, IO_Type.SeparateDevice_Up);
// }
// else if (LastWidth > 0)
// {
// LogUtil.info(hengyiName + "出口有料,料盘尺寸【" + LastWidth + "】下降分盘定位气缸");
// CylinderMove(MoveInfo, IO_Type.SeparateDevice_Up, IO_Type.SeparateDevice_Down);
// }
// else
// {
// MoveInfo.NextMoveStep(LineMoveStep.DO_10_StopSeparateLine);
// LogUtil.info(hengyiName + "扫码NG料, 先转动NG料到扫码后一个工位,需要停止接驳台皮带线");
// SeparateStopRun(MoveInfo);
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_10_StopSeparateLine))
{
if (TrayProcessCanStartLine())
{
MoveInfo.NextMoveStep(LineMoveStep.DO_11_NGToNextStation);
LogUtil.info(hengyiName + "扫码NG料, 先转动NG料到扫码后一个工位");
Line3Turn.StartLineRun(IO_Type.DLine_Run3, IO_Type.Location_Check3, Line3EndProcess);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Location_Check3, IO_VALUE.HIGH));
// }
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_10_StopSeparateLine))
//{
// if (TrayProcessCanStartLine())
// {
// MoveInfo.NextMoveStep(LineMoveStep.DO_11_NGToNextStation);
// LogUtil.info(hengyiName + "扫码NG料, 先转动NG料到扫码后一个工位");
// Line3Turn.StartLineRun(IO_Type.DLine_Run3, IO_Type.Location_Check3, Line3EndProcess);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
// MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Location_Check3, IO_VALUE.HIGH));
Task.Factory.StartNew(delegate
{
Thread.Sleep(1000);
SeparateBackRun(null);
});
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_04_SUpDownMove))
{
if (TrayProcessCanStartLine())
{
MoveInfo.NextMoveStep(LineMoveStep.DO_05_LineRun1);
LogUtil.info(hengyiName + "出口有料,转动皮带线到扫码后一个工位,同时转动分盘装置");
IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
Line3Turn.StartLineRun(IO_Type.DLine_Run3, IO_Type.Location_Check3, Line3EndProcess);
// Task.Factory.StartNew(delegate
// {
// Thread.Sleep(1000);
// SeparateBackRun(null);
// });
// }
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_04_SUpDownMove))
//{
// if (TrayProcessCanStartLine())
// {
// MoveInfo.NextMoveStep(LineMoveStep.DO_05_LineRun1);
// LogUtil.info(hengyiName + "出口有料,转动皮带线到扫码后一个工位,同时转动分盘装置");
// IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
// Line3Turn.StartLineRun(IO_Type.DLine_Run3, IO_Type.Location_Check3, Line3EndProcess);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Location_Check3, IO_VALUE.HIGH));
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_05_LineRun1))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_07_SeparateCheck);
// Line3LastTrayP++;
LogUtil.info(hengyiName + "出口有料,等待料盘到达分盘装置位置,最多等待60000");
MoveInfo.TimeOutSeconds = 40;
MoveInfo.OneWaitCanEndStep = true;
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(60000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_Check, IO_VALUE.HIGH));
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
// MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Location_Check3, IO_VALUE.HIGH));
// }
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_05_LineRun1))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_07_SeparateCheck);
// // Line3LastTrayP++;
// LogUtil.info(hengyiName + "出口有料,等待料盘到达分盘装置位置,最多等待60000");
// MoveInfo.TimeOutSeconds = 40;
// MoveInfo.OneWaitCanEndStep = true;
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(60000));
// MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SeparateDevice_Check, IO_VALUE.HIGH));
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_07_SeparateCheck))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_08_CRun);
if (IOValue(IO_Type.SeparateDevice_Check).Equals(IO_VALUE.HIGH))
{
int robotIndex = GetRobotIndex();
LogUtil.info(hengyiName + "出口有料,转动接驳台皮带线2000 , 收到SeparateDevice_Check信号,调用arriveRobotLocation=" + robotIndex);
SServerManager.arriveRobotLocation(Name, robotIndex, StationInfo_Move.CodeStr);
}
else
{
LogUtil.info(hengyiName + "出口有料,转动接驳台皮带线2000 ,未收到SeparateDevice_Check信号");
}
IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_08_CRun))
{
MoveEndS();
// IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.LOW);
LogUtil.info(hengyiName + "出口有料,送料结束 ");
}
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_07_SeparateCheck))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_08_CRun);
// if (IOValue(IO_Type.SeparateDevice_Check).Equals(IO_VALUE.HIGH))
// {
// int robotIndex = GetRobotIndex();
// LogUtil.info(hengyiName + "出口有料,转动接驳台皮带线2000 , 收到SeparateDevice_Check信号,调用arriveRobotLocation=" + robotIndex);
// SServerManager.arriveRobotLocation(Name, robotIndex, StationInfo_Move.CodeStr);
// }
// else
// {
// LogUtil.info(hengyiName + "出口有料,转动接驳台皮带线2000 ,未收到SeparateDevice_Check信号");
// }
// IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_08_CRun))
//{
// MoveEndS();
// // IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.LOW);
// LogUtil.info(hengyiName + "出口有料,送料结束 ");
//}
#endregion
#region NG料处理
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_11_NGToNextStation))
{
//如果是301,接驳台皮带倒转
if (DeviceID.Equals(301))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_15_SeparateBackRun);
LogUtil.info(hengyiName + "扫码NG料,接驳台开始倒转");
SeparateBackRun(MoveInfo);
}
//如果是302,NG气缸前进
else
{
MoveInfo.NextMoveStep(LineMoveStep.DO_12_NGCylinderForward);
LogUtil.info(hengyiName + "扫码NG料,NG气缸前进");
ScanNgForward(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_12_NGCylinderForward))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_13_NGCylinderWait);
LogUtil.info(hengyiName + "扫码NG料,NG气缸等待1500后后退");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1500));
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_13_NGCylinderWait))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_14_NGCylinderBack);
LogUtil.info(hengyiName + "扫码NG料,NG气缸后退");
ScanNgBack(MoveInfo);
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_14_NGCylinderBack))
{
MoveEndS();
LogUtil.info(hengyiName + "扫码NG料结束,NG气缸已后退 ");
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_15_SeparateBackRun))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_16_SeparateBackRunWait);
LogUtil.info(hengyiName + "扫码NG料,接驳台反转等待3000");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_16_SeparateBackRunWait))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_17_SeparateStopRun);
LogUtil.info(hengyiName + "扫码NG料,接驳台停止反转");
SeparateStopRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_17_SeparateStopRun))
{
MoveInfo.NextMoveStep(LineMoveStep.DO_18_SeparateRun);
LogUtil.info(hengyiName + "扫码NG料,接驳台恢复正转");
SeparateLineRun(MoveInfo);
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_18_SeparateRun))
{
MoveEndS();
LogUtil.info(hengyiName + "扫码NG料结束,皮带线已正转 ");
}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_11_NGToNextStation))
//{
// //如果是301,接驳台皮带倒转
// if (DeviceID.Equals(301))
// {
// MoveInfo.NextMoveStep(LineMoveStep.DO_15_SeparateBackRun);
// LogUtil.info(hengyiName + "扫码NG料,接驳台开始倒转");
// SeparateBackRun(MoveInfo);
// }
// //如果是302,NG气缸前进
// else
// {
// MoveInfo.NextMoveStep(LineMoveStep.DO_12_NGCylinderForward);
// LogUtil.info(hengyiName + "扫码NG料,NG气缸前进");
// ScanNgForward(MoveInfo);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
// }
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_12_NGCylinderForward))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_13_NGCylinderWait);
// LogUtil.info(hengyiName + "扫码NG料,NG气缸等待1500后后退");
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1500));
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_13_NGCylinderWait))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_14_NGCylinderBack);
// LogUtil.info(hengyiName + "扫码NG料,NG气缸后退");
// ScanNgBack(MoveInfo);
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_14_NGCylinderBack))
//{
// MoveEndS();
// LogUtil.info(hengyiName + "扫码NG料结束,NG气缸已后退 ");
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_15_SeparateBackRun))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_16_SeparateBackRunWait);
// LogUtil.info(hengyiName + "扫码NG料,接驳台反转等待3000");
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_16_SeparateBackRunWait))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_17_SeparateStopRun);
// LogUtil.info(hengyiName + "扫码NG料,接驳台停止反转");
// SeparateStopRun(MoveInfo);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_17_SeparateStopRun))
//{
// MoveInfo.NextMoveStep(LineMoveStep.DO_18_SeparateRun);
// LogUtil.info(hengyiName + "扫码NG料,接驳台恢复正转");
// SeparateLineRun(MoveInfo);
//}
//else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_18_SeparateRun))
//{
// MoveEndS();
// LogUtil.info(hengyiName + "扫码NG料结束,皮带线已正转 ");
//}
#endregion
......@@ -292,16 +292,18 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.DON_04_SUpDownMove);
if (LastWidth.Equals(7))
{
SeparateLineRun();
LogUtil.info(hengyiName + MoveInfo.SLog + "送料:【" + LastWidth + "】寸,上升分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Down, IO_Type.SeparateDevice_Up);
}
else if (LastWidth > 0)
{
SeparateLineRun();
LogUtil.info(hengyiName + MoveInfo.SLog + "送料: 【" + LastWidth + "】寸,下降分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Up, IO_Type.SeparateDevice_Down);
}
else
{
{
MoveInfo.NextMoveStep(LineMoveStep.DON_12_NGCylinderForward);
LogUtil.info(hengyiName + MoveInfo.SLog + "NG料:NG气缸前进");
ScanNgForward(MoveInfo);
......@@ -315,8 +317,9 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo.NextMoveStep(LineMoveStep.DON_05_LineRun);
LogUtil.info(hengyiName + MoveInfo.SLog + "送料,NG->接驳台,转动接驳台皮带");
IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
// IOMove(IO_Type.SeparateDevice_Run, IO_VALUE.HIGH);
Line3Turn.StartLineRun(IO_Type.DLine_Run3, IO_Type.Location_Check3, Line3EndProcess);
SeparateLineRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Location_Check3, IO_VALUE.HIGH));
}
......@@ -356,9 +359,10 @@ namespace OnlineStore.DeviceLibrary
//MoveInfo.EndStepWait();
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DON_08_CRun))
{
{
SeparateStopRun();
MoveEndS();
LogUtil.info(hengyiName + MoveInfo.SLog + "送料结束 ");
LogUtil.info(hengyiName + MoveInfo.SLog + "送料结束,停止接驳台皮带线 ");
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DON_12_NGCylinderForward))
{
......@@ -374,8 +378,9 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DON_14_NGCylinderBack))
{
SeparateStopRun();
MoveEndS();
LogUtil.info(hengyiName + MoveInfo.SLog + "NG处理结束 ");
LogUtil.info(hengyiName + MoveInfo.SLog + "NG处理结束,停止接驳台皮带线 ");
// StationInfo_NG = new StationTrayInfo();
}
......
......@@ -258,12 +258,16 @@ namespace OnlineStore.DeviceLibrary
internal bool HasTray()
{
if (LastTrayPosition > 0 &&
LastTrayPosition <= MaxPosition * 10)
LastTrayPosition <= MaxPosition * 2)
{
return true;
}
if (equipBean.IOValue(ExitTray_Check).Equals(IO_VALUE.HIGH))
{
if (LastTrayPosition > MaxPosition)
{
LastTrayPosition = MaxPosition;
}
return true;
}
return false;
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!