Commit 5eed315c 张东亮

存储机构-增加位置判断范围

1 个父辈 3e6f1a08
......@@ -132,9 +132,13 @@ namespace OnlineStore.DeviceLibrary
BOX_H005_PullAxis_UpdownToLow,
/// <summary>
/// BOX复位:检查行走机构是否在暂存区
/// BOX复位:行走机构在暂存区,检查移栽X轴和移栽升降轴状态
/// </summary>
BOX_H0101_CheckCurMoveAxisPos,
BOX_H0101_CheckXAxisAndUpdownAxis,
/// <summary>
/// BOX复位:移栽X轴回待机位
/// </summary>
BOX_H0101_XAxisToP1,
/// <summary>
/// BOX复位:AB面旋转轴到水平点
/// </summary>
......
......@@ -284,7 +284,7 @@ namespace OnlineStore.DeviceLibrary
// MoveHomePro();
//}
}
static int axisDiff = 20000;
private void MoveResetPro()
{
if (MoveInfo.IsInWait)
......@@ -310,10 +310,19 @@ namespace OnlineStore.DeviceLibrary
{
if (MoveAxis.IsInPosition(Config.MoveAxis_P2))
{
MoveInfo.NextMoveStep(StepEnum.BOX_H0101_CheckCurMoveAxisPos);
XAxis_A.AbsMove(MoveInfo, Config.XAxis_A_P1, Config.XAxis_A_P1_Speed);
XAxis_B.AbsMove(MoveInfo, Config.XAxis_B_P1, Config.XAxis_B_P1_Speed);
LogInfo($"复位 {MoveInfo.SLog}:抽屉未在料屉轴上,行走机构在暂存区");
MoveInfo.NextMoveStep(StepEnum.BOX_H0101_CheckXAxisAndUpdownAxis);
if (MiddleAxis_A.IsInPosition(Config.MiddleAxis_A_P2) && XAxis_A.IsInPosition(Config.XAxis_A_P2))
{
ComAxis_A.AbsMove(MoveInfo, MoveInfo.MoveParam.MoveP.ComAxis_AB_P2, Config.ComAxis_A_P2_Speed);
LogInfo($"复位 {MoveInfo.SLog}:抽屉未在料屉轴上,行走机构在暂存区,A面旋转轴在水平面,A面移栽X轴在暂存区取放料点P2,A面压紧轴张开");
}
if (MiddleAxis_B.IsInPosition(Config.MiddleAxis_B_P2) && XAxis_B.IsInPosition(Config.XAxis_B_P2))
{
ComAxis_B.AbsMove(MoveInfo, MoveInfo.MoveParam.MoveP.ComAxis_AB_P2, Config.ComAxis_B_P2_Speed);
LogInfo($"复位 {MoveInfo.SLog}:抽屉未在料屉轴上,行走机构在暂存区,B面旋转轴在水平面,B面移栽X轴在暂存区取放料点P2,B面压紧轴张开");
}
}
else
{
......@@ -352,7 +361,13 @@ namespace OnlineStore.DeviceLibrary
LogInfo($"复位 {MoveInfo.SLog}:料斗拉取拉取轴到待机点P1");
break;
case StepEnum.BOX_H0101_CheckCurMoveAxisPos:
case StepEnum.BOX_H0101_CheckXAxisAndUpdownAxis:
MoveInfo.NextMoveStep(StepEnum.BOX_H0101_XAxisToP1);
XAxis_A.AbsMove(MoveInfo, Config.XAxis_A_P1, Config.XAxis_A_P1_Speed);
XAxis_B.AbsMove(MoveInfo, Config.XAxis_B_P1, Config.XAxis_B_P1_Speed);
LogInfo($"复位 {MoveInfo.SLog}:移栽X轴到P1");
break;
case StepEnum.BOX_H0101_XAxisToP1:
MoveInfo.NextMoveStep(StepEnum.BOX_H0102_MiddleAxisToP2);
if (!MiddleAxis_A.IsInPosition(Config.MiddleAxis_A_P2))
{
......@@ -369,29 +384,37 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StepEnum.BOX_H0103_ToAInputHighPos);
ComAxis_A.AbsMove(MoveInfo, MoveInfo.MoveParam.MoveP.ComAxis_AB_P2, Config.ComAxis_A_P2_Speed);
XAxis_A.AbsMove(MoveInfo, Config.XAxis_A_P2, Config.XAxis_A_P2_Speed);
if (UpdownAxis.GetAclPosition() >= Config.Updown_P5 && UpdownAxis.GetAclPosition() <= Config.Updown_P4)
if (UpdownAxis.GetAclPosition() >= (Config.Updown_P5- axisDiff) && UpdownAxis.GetAclPosition() <= (Config.Updown_P4+ axisDiff))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在A下暂存区低点和高点之间,到高点P4,A面移栽X轴去暂存区P2,A面压紧轴到压紧前点P2");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4, Config.Updown_P4_Speed);
}
else if (UpdownAxis.GetAclPosition() >= Config.Updown_P3 && UpdownAxis.GetAclPosition() <= Config.Updown_P2)
else if (UpdownAxis.GetAclPosition() >= (Config.Updown_P3- axisDiff) && UpdownAxis.GetAclPosition() <= (Config.Updown_P2+ axisDiff))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在A上暂存区低点和高点之间,到高点P2,A面移栽X轴去暂存区P2,A面压紧轴到压紧前点P2");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P2, Config.Updown_P2_Speed);
}
else
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴不在A暂存区低点和高点之间,不动作");
}
break;
case StepEnum.BOX_H0103_ToAInputHighPos:
MoveInfo.NextMoveStep(StepEnum.BOX_H0104_ToAInputLowPos);
if (UpdownAxis.GetAclPosition() > Config.Updown_P3)
if (UpdownAxis.IsInPosition(Config.Updown_P2))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在A上暂存区低点P3");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P3, Config.Updown_P3_Speed);
}
else //if (UpdownAxis.GetAclPosition() >= Config.Updown_P5 && UpdownAxis.GetAclPosition() < Config.Updown_P3)
else if (UpdownAxis.IsInPosition(Config.Updown_P4))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在A下暂存区低点P5");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P5, Config.Updown_P5_Speed);
}
else
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴不在A暂存区低点和高点之间,不动作");
}
break;
case StepEnum.BOX_H0104_ToAInputLowPos:
MoveInfo.NextMoveStep(StepEnum.BOX_H0105_A_XAxisToP1);
......@@ -403,29 +426,37 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StepEnum.BOX_H0105_ToBInputHighPos);
ComAxis_B.AbsMove(MoveInfo, MoveInfo.MoveParam.MoveP.ComAxis_AB_P2, Config.ComAxis_B_P2_Speed);
XAxis_B.AbsMove(MoveInfo, Config.XAxis_B_P2, Config.XAxis_B_P2_Speed);
if (UpdownAxis.GetAclPosition() >= Config.Updown_P11 && UpdownAxis.GetAclPosition() <= Config.Updown_P10)
if (UpdownAxis.GetAclPosition() >= (Config.Updown_P11-axisDiff) && UpdownAxis.GetAclPosition() <= (Config.Updown_P10+axisDiff))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在B下暂存区低点和高点之间,到高点P10,B面移栽X轴去暂存区P2,B面压紧轴到压紧前点P2");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10, Config.Updown_P10_Speed);
}
else if (UpdownAxis.GetAclPosition() >= Config.Updown_P9 && UpdownAxis.GetAclPosition() <= Config.Updown_P8)
else if (UpdownAxis.GetAclPosition() >= (Config.Updown_P9-axisDiff) && UpdownAxis.GetAclPosition() <= (Config.Updown_P8+axisDiff))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在B上暂存区低点和高点之间,到高点P8,B面移栽X轴去暂存区P2,B面压紧轴到压紧前点P2");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P8, Config.Updown_P8_Speed);
}
else
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴不在B暂存区低点和高点之间,不动作");
}
break;
case StepEnum.BOX_H0105_ToBInputHighPos:
MoveInfo.NextMoveStep(StepEnum.BOX_H0106_ToBInputLowPos);
if (UpdownAxis.GetAclPosition() > Config.Updown_P9)
if (UpdownAxis.IsInPosition(Config.Updown_P8))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在B上暂存区低点P9");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P9, Config.Updown_P9_Speed);
}
else //if (UpdownAxis.GetAclPosition() >= Config.Updown_P11 && UpdownAxis.GetAclPosition() <= Config.Updown_P10)
else if (UpdownAxis.IsInPosition(Config.Updown_P10))
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴在B下暂存区低点P11");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P11, Config.Updown_P11_Speed);
}
else
{
LogInfo($"复位 {MoveInfo.SLog}:移栽升降轴不在B暂存区低点和高点之间,不动作");
}
break;
case StepEnum.BOX_H0106_ToBInputLowPos:
MoveInfo.NextMoveStep(StepEnum.BOX_H01_CheckCurPullDownPos);
......
......@@ -57,7 +57,8 @@ namespace OnlineStore.XLRStore
LoadBoxPostion(ktkPosition);
InOutPosInfo posInfo = new InOutPosInfo();
posInfo.PosId = posId;
posSide = posInfo.GetPosSide();
posSide = posInfo.GetPosSide();
groupBox13.Text = $"库位位置信息[{posId}]";
groupBox19.Text = posSide + "面移栽X轴";
groupBox24.Text = posSide + "面移栽压紧轴";
if (posSide.Equals("A"))
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!