Commit 31f643d3 LN

入料口托盘放行优化

1 个父辈 b9e3113c
...@@ -54,9 +54,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -54,9 +54,9 @@ namespace OnlineStore.DeviceLibrary
agvClient.CancelState = isCancel; agvClient.CancelState = isCancel;
} }
public static void SetStatus(string id, string shelfId = "", ClientAction action = ClientAction.None, ClientLevel level = ClientLevel.Low,bool isMust=false) public static void SetStatus(string id, string shelfId = "", ClientAction action = ClientAction.None, ClientLevel level = ClientLevel.Low,bool isMust=false)
{ {
if (!isMust) if (!isMust && level.Equals(ClientLevel.Low))
{ {
if (actionMap.ContainsKey(id)) if (actionMap.ContainsKey(id))
{ {
......
...@@ -281,10 +281,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -281,10 +281,10 @@ namespace OnlineStore.DeviceLibrary
if (IOValue(IO_Type.SL_Location_Check).Equals(IO_VALUE.HIGH)) if (IOValue(IO_Type.SL_Location_Check).Equals(IO_VALUE.HIGH))
{ {
level = ClientLevel.Middle; level = ClientLevel.Middle;
if (Config.IsCanOut.Equals(1)) }
{ if (Config.IsCanOut.Equals(1))
level = ClientLevel.High; {
} level = ClientLevel.High;
} }
LogInfo("重置完成,出口检测到有料架,调用 " + Config.AgvOutName + " AgvClient.NeedLeave"); LogInfo("重置完成,出口检测到有料架,调用 " + Config.AgvOutName + " AgvClient.NeedLeave");
AgvClient.NeedLeave(Config.AgvOutName, LastOutShelfId, level); AgvClient.NeedLeave(Config.AgvOutName, LastOutShelfId, level);
...@@ -827,7 +827,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -827,7 +827,7 @@ namespace OnlineStore.DeviceLibrary
} }
//等待200毫秒后停止转动 //等待200毫秒后停止转动
Thread.Sleep(5000); Thread.Sleep(5000);
if (MoveInfo.MoveType.Equals(LineMoveStep.FI_03_LineStart)) if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_03_LineStart))
{ {
LogUtil.info(logName + " 等待5000后, MoveInfo.MoveType= FI_03_LineStart 不需要停止链条转动"); LogUtil.info(logName + " 等待5000后, MoveInfo.MoveType= FI_03_LineStart 不需要停止链条转动");
} }
......
...@@ -446,9 +446,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -446,9 +446,14 @@ namespace OnlineStore.DeviceLibrary
} }
} }
} }
private void TrayMoveOk() private void TrayMoveOk(bool needCheck = false)
{ {
if (needCheck && (!SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_11_CodeRember)))
{
return;
}
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_12_MoveOk); SecondMoveInfo.NextMoveStep(LineMoveStep.MO_12_MoveOk);
InLog("料盘移栽" + MoveInfo.SLog + ","+SecondMoveInfo.SLog+":托盘开始放行");
if (Config.SidesWayNum > 0) if (Config.SidesWayNum > 0)
{ {
if (CylinderIsOk(IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down)) if (CylinderIsOk(IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down))
...@@ -871,11 +876,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -871,11 +876,6 @@ namespace OnlineStore.DeviceLibrary
{ {
if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_11_CodeRember)) if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_11_CodeRember))
{ {
// MoveInfo.NextMoveStep(LineMoveStep.FI_21_UpdownAxisToP2);
//int targetPositon = Config.GetUpdownP2Detial(LastHeight, LastWidth);
//InLog("料盘移栽" + MoveInfo.SLog + ":移栽伺服下降到P2:" + targetPositon + ",托盘号【" + currTrayNum + "】,获取库位号,更新托盘信息");
//UpdownAxis.AbsMove(MoveInfo, targetPositon, Config.UpdownAxis_P2Speed);
MoveInfo.NextMoveStep(LineMoveStep.FI_24_CylinderDown); MoveInfo.NextMoveStep(LineMoveStep.FI_24_CylinderDown);
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Up, IO_Type.SL_MoveCylinder_Down); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Up, IO_Type.SL_MoveCylinder_Down);
if (!MoveInfo.ShelfNoTray) if (!MoveInfo.ShelfNoTray)
...@@ -933,50 +933,32 @@ namespace OnlineStore.DeviceLibrary ...@@ -933,50 +933,32 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_25_CylinderRelax)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_25_CylinderRelax))
{ {
MoveInfo.NextMoveStep(LineMoveStep.FI_26_CylinderUp); if (Config.SidesWayNum.Equals(1))
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
if (IOValue(IO_Type.SL_AxisLocationCheck).Equals(IO_VALUE.LOW) && MoveInfo.ShelfNoTray.Equals(false))
{ {
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升,上料轴开始慢速上升到P3点,等待检测到料盘"); FI_27_CylinderUp();
BatchAxisToP3(false);
} }
else else
{ {
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升 "); MoveInfo.NextMoveStep(LineMoveStep.FI_26_WaitCylinderUp);
} MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SL_MoveCylinder_Down, IO_VALUE.LOW));
if (Config.SidesWayNum > 0) CylinderMove(null, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
{
InLog(MoveInfo.SLog + " 提前下降顶升气缸 ,环形线定位气缸先下降");
CylinderMove(null, IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down);
if (Config.SidesWayNum.Equals(1))
{
Task.Factory.StartNew(delegate
{
//需要等待500再下降
Thread.Sleep(500);
CylinderMove(null, IO_Type.SW_TopCylinder_Up, IO_Type.SW_TopCylinder_Down);
});
}
}
else
{
InLog(MoveInfo.SLog + " 提前顶升下降, 顶升气缸下降)");
CylinderMove(null, IO_Type.FL_TopCylinder_Up, IO_Type.FL_TopCylinder_Down);
} }
TrayPreMove();
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_26_CylinderUp)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_26_WaitCylinderUp))
{ {
MoveInfo.NextMoveStep(LineMoveStep.FI_27_UpDownAxisToP1); FI_27_CylinderUp();
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点,托盘开始放行");
TrayMoveOk(); TrayMoveOk();
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_27_CylinderUp))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_28_UpDownAxisToP1);
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点");
TrayMoveOk(true);
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed); UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
// SecondMoveInfo.NextMoveStep(LineMoveStep.MO_12_MoveOk);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_27_UpDownAxisToP1)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FI_28_UpDownAxisToP1))
{ {
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升已到位 "); InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升已到位 ");
CheckHasTray(); CheckHasTray();
...@@ -1062,6 +1044,44 @@ namespace OnlineStore.DeviceLibrary ...@@ -1062,6 +1044,44 @@ namespace OnlineStore.DeviceLibrary
#endregion #endregion
} }
private void FI_27_CylinderUp()
{
MoveInfo.NextMoveStep(LineMoveStep.FI_27_CylinderUp);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
if (IOValue(IO_Type.SL_AxisLocationCheck).Equals(IO_VALUE.LOW) && MoveInfo.ShelfNoTray.Equals(false))
{
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升,上料轴开始慢速上升到P3点,等待检测到料盘");
BatchAxisToP3(false);
}
else
{
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升 ");
}
}
private void TrayPreMove()
{
if (Config.SidesWayNum > 0)
{
InLog(MoveInfo.SLog + " 提前下降顶升气缸 ,环形线定位气缸先下降");
CylinderMove(null, IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down);
if (Config.SidesWayNum.Equals(1))
{
Task.Factory.StartNew(delegate
{
//需要等待500再下降
Thread.Sleep(500);
CylinderMove(null, IO_Type.SW_TopCylinder_Up, IO_Type.SW_TopCylinder_Down);
});
}
}
else
{
InLog(MoveInfo.SLog + " 提前顶升下降, 顶升气缸下降)");
CylinderMove(null, IO_Type.FL_TopCylinder_Up, IO_Type.FL_TopCylinder_Down);
}
}
private void FI_21_BatchAxisDown() private void FI_21_BatchAxisDown()
{ {
// MoveInfo.NextMoveStep(LineMoveStep.FI_21_BatchAxisDown); // MoveInfo.NextMoveStep(LineMoveStep.FI_21_BatchAxisDown);
......
...@@ -466,7 +466,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -466,7 +466,7 @@ namespace OnlineStore.DeviceLibrary
MoveEndS(); MoveEndS();
// MoveInfo.NextMoveStep(LineMoveStep.FO_39_OutLineRun); // MoveInfo.NextMoveStep(LineMoveStep.FO_39_OutLineRun);
OutLog("送出料串: " + MoveInfo.SLog + ", 出口线体运转,料架到达出口处, 通知AGV取空料架, 出料结束"); OutLog("送出料串: " + MoveInfo.SLog + ", 出口线体运转,料架到达出口处, 通知AGV取空料架, 出料结束");
AgvClient.NeedLeave(Config.AgvOutName, LastOutShelfId,Asa.ClientLevel.Low); AgvClient.NeedLeave(Config.AgvOutName, LastOutShelfId,Asa.ClientLevel.High);
} }
else if (MoveInfo.MoveStep >= LineMoveStep.FO_211_AxisDownMove && MoveInfo.MoveStep < LineMoveStep.FO_30_BatchAxisToP2) else if (MoveInfo.MoveStep >= LineMoveStep.FO_211_AxisDownMove && MoveInfo.MoveStep < LineMoveStep.FO_30_BatchAxisToP2)
{ {
......
...@@ -529,7 +529,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -529,7 +529,7 @@ namespace OnlineStore.DeviceLibrary
///// </summary> ///// </summary>
//FR_10_OutTopCylinder_Down = 10010, //FR_10_OutTopCylinder_Down = 10010,
#endregion #endregion
#region 入料装置入料处理,11000开始 #region 入料装置入料处理,11000开始
...@@ -669,21 +669,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -669,21 +669,20 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 料盘移栽: 上料气缸放松 /// 料盘移栽: 上料气缸放松
/// </summary> /// </summary>
FI_25_CylinderRelax , FI_25_CylinderRelax,
/// <summary>
/// 料盘移栽: 上料横移机构上升
/// </summary>
FI_26_WaitCylinderUp,
/// <summary> /// <summary>
/// 料盘移栽:上料横移机构上升,定位或者顶升可以先下降 /// 料盘移栽:上料横移机构上升,定位或者顶升可以先下降
/// </summary> /// </summary>
FI_26_CylinderUp, FI_27_CylinderUp,
/// <summary> /// <summary>
/// 料盘移栽:升降伺服到P1点 /// 料盘移栽:升降伺服到P1点
/// </summary> /// </summary>
FI_27_UpDownAxisToP1, FI_28_UpDownAxisToP1,
///// <summary>
///// 料盘移栽:上料横移机构到取料端
///// </summary>
//FI_23_MoveCylinder_Take = 11023,
/// <summary> /// <summary>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!