Commit cbc10d1b LN

紧急出料优化

1 个父辈 ba4b5bf5
...@@ -399,7 +399,7 @@ namespace OnlineStore.AssemblyLine ...@@ -399,7 +399,7 @@ namespace OnlineStore.AssemblyLine
private void btnScan_Click(object sender, EventArgs e) private void btnScan_Click(object sender, EventArgs e)
{ {
List<string> camers = equipBean.Config.GetCameraList(); List<string> camers = equipBean.Config.GetCameraList();
List<string> LastCodeList = CodeManager.CameraScan(camers,equipBean.Name); List<string> LastCodeList = CodeManager.CameraScan(camers,equipBean.Name,true);
string cameraStr = ""; string cameraStr = "";
foreach (string ca in camers) foreach (string ca in camers)
{ {
...@@ -408,14 +408,6 @@ namespace OnlineStore.AssemblyLine ...@@ -408,14 +408,6 @@ namespace OnlineStore.AssemblyLine
cameraStr = cameraStr.Substring(0, cameraStr.Length - 1); cameraStr = cameraStr.Substring(0, cameraStr.Length - 1);
string msg = CodeManager.ProcessCode(LastCodeList); string msg = CodeManager.ProcessCode(LastCodeList);
//if (LastCodeList.Count > 0)
//{
// foreach (string str in LastCodeList)
// {
// msg = str + "\r\n";
// }
//}
LogUtil.info(equipBean.Name + "[" + cameraStr + "]扫码测试结果:\r\n" + msg); LogUtil.info(equipBean.Name + "[" + cameraStr + "]扫码测试结果:\r\n" + msg);
MessageBox.Show(equipBean.Name + "[" + cameraStr + "]扫码测试结果:" + msg); MessageBox.Show(equipBean.Name + "[" + cameraStr + "]扫码测试结果:" + msg);
} }
......
...@@ -547,18 +547,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -547,18 +547,12 @@ namespace OnlineStore.DeviceLibrary
} }
} }
LogUtil.info(hengyiName + "扫码工位:开始扫码,IsInScanCode=" + IsInScanCode); LogUtil.info(hengyiName + "扫码工位:开始扫码,IsInScanCode=" + IsInScanCode);
List<string> LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), hengyiName); List<string> LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), hengyiName,true);
if (LastCodeList.Count <= 0) if (LastCodeList.Count <= 0)
{ {
LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), hengyiName); LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), hengyiName,true);
} }
//if (LastCodeList.Count <= 0)
//{
// Thread.Sleep(300);
// LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), Name);
//}
LastCode = SServerManager.ProcessCodeList(LastCodeList); LastCode = SServerManager.ProcessCodeList(LastCodeList);
// Thread.Sleep(5000);
} }
catch (Exception ex) catch (Exception ex)
{ {
......
...@@ -59,21 +59,32 @@ namespace OnlineStore.DeviceLibrary ...@@ -59,21 +59,32 @@ namespace OnlineStore.DeviceLibrary
} }
OutLog("出库移栽 " + MoveInfo.SLog + " :提升伺服下降" + height + "mm,目标:" + targetPosition); OutLog("出库移栽 " + MoveInfo.SLog + " :提升伺服下降" + height + "mm,目标:" + targetPosition);
BatchAxis.AbsMove(MoveInfo, targetPosition, Config.BatchAxis_P2Speed); BatchAxis.AbsMove(MoveInfo, targetPosition, Config.BatchAxis_P2Speed);
if (MoveCylineIsUp()) if (MoveCylineIsUp()||MoveInfo.MoveParam.PlateW.Equals(7))
{ {
//已经在取料端
if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take)) if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take))
{ {
int targetP = Config.GetUpdownP2Detial(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW); int targetP = Config.GetUpdownP2Detial(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed); UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed);
if (MoveInfo.MoveParam.PlateW.Equals(7))
{
//升降先下降
CylinderMove(null, IO_Type.SL_MoveCylinder_Up, IO_Type.SL_MoveCylinder_Down);
}
}
else if(MoveCylineIsUp())
{
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
} }
else else
{ {
CylinderMove(null, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
} }
} }
else else
{ {
CylinderMove(null, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
} }
return true; return true;
} }
...@@ -388,8 +399,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -388,8 +399,7 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
if (MoveCylineIsUp())
{
if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take)) if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take))
{ {
...@@ -406,15 +416,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -406,15 +416,22 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.FO_213_UpdownAxisToP2); MoveInfo.NextMoveStep(LineMoveStep.FO_213_UpdownAxisToP2);
OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服下降到P2:" + targetP); OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服下降到P2:" + targetP);
UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed); UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed);
if (MoveInfo.MoveParam.PlateW.Equals(7))
{
//升降先下降
CylinderMove(null, IO_Type.SL_MoveCylinder_Up, IO_Type.SL_MoveCylinder_Down);
}
} }
} }
else else
{ {
if (MoveCylineIsUp())
{
MoveInfo.NextMoveStep(LineMoveStep.FO_212_CylinderTake); MoveInfo.NextMoveStep(LineMoveStep.FO_212_CylinderTake);
OutLog("紧急出料" + MoveInfo.SLog + ":上料横移机构取料端"); OutLog("紧急出料" + MoveInfo.SLog + ":上料横移机构取料端");
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
} }
}
else else
{ {
MoveInfo.NextMoveStep(LineMoveStep.FO_211_AxisDownMove); MoveInfo.NextMoveStep(LineMoveStep.FO_211_AxisDownMove);
...@@ -422,15 +439,24 @@ namespace OnlineStore.DeviceLibrary ...@@ -422,15 +439,24 @@ namespace OnlineStore.DeviceLibrary
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
} }
} }
}
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_212_CylinderTake)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_212_CylinderTake))
{ {
if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take))
{
MoveInfo.NextMoveStep(LineMoveStep.FO_213_UpdownAxisToP2); MoveInfo.NextMoveStep(LineMoveStep.FO_213_UpdownAxisToP2);
int targetP = Config.GetUpdownP2Detial(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW); int targetP = Config.GetUpdownP2Detial(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服下降到P2:" + targetP); OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服下降到P2:" + targetP);
UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed); UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed);
} }
else
{
MoveInfo.NextMoveStep(LineMoveStep.FO_212_CylinderTake);
OutLog("紧急出料" + MoveInfo.SLog + ":上料横移机构取料端");
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_213_UpdownAxisToP2)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_213_UpdownAxisToP2))
{ {
MoveInfo.NextMoveStep(LineMoveStep.FO_214_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.FO_214_CylinderDown);
...@@ -448,18 +474,24 @@ namespace OnlineStore.DeviceLibrary ...@@ -448,18 +474,24 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.FO_216_CylinderUp); MoveInfo.NextMoveStep(LineMoveStep.FO_216_CylinderUp);
OutLog("紧急出料" + MoveInfo.SLog + ":上料横移机构上升"); OutLog("紧急出料" + MoveInfo.SLog + ":上料横移机构上升");
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
if (Config.SidesWayNum.Equals(3)&&MoveInfo.MoveParam.PlateW.Equals(7)) if (Config.SidesWayNum.Equals(3) && MoveInfo.MoveParam.PlateW.Equals(7))
{ {
InLog(MoveInfo.SLog + " 提前下降顶升气缸 ,环形线定位气缸先下降,顶升气缸同时下降"); InLog(MoveInfo.SLog + " 提前下降顶升气缸 ,环形线定位气缸先下降,顶升气缸同时下降");
CylinderMove(null, IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down); CylinderMove(null, IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down);
CylinderMove(SecondMoveInfo, IO_Type.SW_TopCylinder_Up, IO_Type.SW_TopCylinder_Down); CylinderMove(SecondMoveInfo, IO_Type.SW_TopCylinder_Up, IO_Type.SW_TopCylinder_Down);
//七寸时伺服可以先动作
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
} }
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_216_CylinderUp)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_216_CylinderUp))
{ {
MoveInfo.NextMoveStep(LineMoveStep.FO_217_UpdownAxisToP1); MoveInfo.NextMoveStep(LineMoveStep.FO_217_UpdownAxisToP1);
OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服到P1"); OutLog("紧急出料" + MoveInfo.SLog + ":升降伺服到P1");
if (!UpdownAxis.IsInPosition(Config.UpDownAxisP1))
{
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed); UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
int trayNum = MoveInfo.MoveParam != null ? MoveInfo.MoveParam.TrayNumber : currTrayNum; int trayNum = MoveInfo.MoveParam != null ? MoveInfo.MoveParam.TrayNumber : currTrayNum;
//更新此托盘为空托盘 //更新此托盘为空托盘
......
...@@ -98,7 +98,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -98,7 +98,7 @@ namespace OnlineStore.DeviceLibrary
private static int ScanCount = 0; private static int ScanCount = 0;
private static int codeCount = ConfigAppSettings.GetIntValue(Setting_Init.CodeCount); private static int codeCount = ConfigAppSettings.GetIntValue(Setting_Init.CodeCount);
[HandleProcessCorruptedStateExceptions] [HandleProcessCorruptedStateExceptions]
public static List<string> CameraScan(List<string> cameraList, string deviceName, bool isSaveImg = false) public static List<string> CameraScan(List<string> cameraList, string deviceName, bool findRightCodeBreak = false)
{ {
List<string> codeList = new List<string>(); List<string> codeList = new List<string>();
if (cameraList == null || cameraList.Count <= 0) if (cameraList == null || cameraList.Count <= 0)
...@@ -157,7 +157,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -157,7 +157,7 @@ namespace OnlineStore.DeviceLibrary
} }
} }
if (findRightCode) if (findRightCodeBreak&&findRightCode)
{ {
break; break;
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!