Commit ecc17b1d LN

入料机构复位修改

1 个父辈 045cbdb0
...@@ -231,7 +231,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -231,7 +231,7 @@ namespace OnlineStore.DeviceLibrary
LogInfo("开始 原点返回: "); LogInfo("开始 原点返回: ");
StartReset(); StartReset();
//SetConnectServerTimer(true); SetConnectServerTimer(true);
SetAllTimer(true); SetAllTimer(true);
return true; return true;
} }
......
...@@ -97,8 +97,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -97,8 +97,12 @@ namespace OnlineStore.DeviceLibrary
{ {
if (StoreManager.checkWatch(shelfWatch, 10000, true)) if (StoreManager.checkWatch(shelfWatch, 10000, true))
{ {
Asa.ClientAction action= AgvClient.GetAction(Config.AgvName);
var agvcallresult = AgvClient.NeedEnter(Config.AgvName, "", Asa.ClientLevel.High); var agvcallresult = AgvClient.NeedEnter(Config.AgvName, "", Asa.ClientLevel.High);
WorkLog("无料串,:通知agv来送料串AgvName:" + Config.AgvName + ",send NeedEnter=:" + agvcallresult.ToString()); if (!action.Equals(Asa.ClientAction.NeedEnter))
{
WorkLog("无料串,:通知agv来送料串AgvName:" + Config.AgvName + ",send NeedEnter=:" + agvcallresult.ToString());
}
} }
} }
else if (Robot.IOValue(Config.IO_LineIn_Check).Equals(IO_VALUE.HIGH) && Robot.IOValue(Config.IO_LineEnd_Check).Equals(IO_VALUE.HIGH) else if (Robot.IOValue(Config.IO_LineIn_Check).Equals(IO_VALUE.HIGH) && Robot.IOValue(Config.IO_LineEnd_Check).Equals(IO_VALUE.HIGH)
...@@ -121,7 +125,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -121,7 +125,7 @@ namespace OnlineStore.DeviceLibrary
} }
string msg = ""; string msg = "";
bool axisOpen = BatchAxis.Open(true, out msg); bool axisOpen = BatchAxis.Open(true, out msg);
WorkLog("批量轴打开结果:" + axisOpen); // WorkLog("批量轴打开结果:" + axisOpen);
if (!axisOpen) if (!axisOpen)
{ {
BatchAxis.SuddenStop(); BatchAxis.SuddenStop();
...@@ -164,21 +168,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -164,21 +168,11 @@ namespace OnlineStore.DeviceLibrary
} }
if (MoveInfo.IsStep(StepEnum.IBR01_StopDown)) if (MoveInfo.IsStep(StepEnum.IBR01_StopDown))
{ {
//if (Robot.IOValue(Config.IO_LineIn_Check).Equals(Robot.IOValue(Config.IO_LineEnd_Check)))
//{
// LineStop();
// MoveInfo.NextMoveStep(StepEnum.IBR04_BatchHome);
// WorkLog("复位:批量轴开始回原点");
// BatchAxis.HomeMove(MoveInfo);
//}
//else
//{
MoveInfo.NextMoveStep(StepEnum.IBR02_LineRun); MoveInfo.NextMoveStep(StepEnum.IBR02_LineRun);
WorkLog("复位:链条正转3秒"); WorkLog("复位:链条正转3秒");
LineRun(MoveInfo); LineRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
//}
} }
else if (MoveInfo.IsStep(StepEnum.IBR02_LineRun)) else if (MoveInfo.IsStep(StepEnum.IBR02_LineRun))
{ {
...@@ -236,11 +230,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -236,11 +230,7 @@ namespace OnlineStore.DeviceLibrary
{ {
StopMove(); StopMove();
} }
} }
#region 气缸操作 #region 气缸操作
public void LineRun(DeviceMoveInfo moveInfo = null) public void LineRun(DeviceMoveInfo moveInfo = null)
......
...@@ -174,62 +174,53 @@ namespace OnlineStore.DeviceLibrary ...@@ -174,62 +174,53 @@ namespace OnlineStore.DeviceLibrary
int updownP = UpdownAxis.GetAclPosition(); int updownP = UpdownAxis.GetAclPosition();
int middleP = MiddleAxis.GetAclPosition(); int middleP = MiddleAxis.GetAclPosition();
// if (UpdownAxis.IsInPosition(Config.Updown_P5_AUpperL))
//{ int middleWucha = 20000;
// MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove); int updownWucha = 20000;
// LogInfo($"复位 {MoveInfo.SLog}:当前升降轴在 A上暂存区低点 {Config.Updown_P5_AUpperL},升降轴先到P4:{Config.Updown_P4_AUpperH}");
// UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4_AUpperH, Config.Updown_P4_Speed);
//}
//else if (UpdownAxis.IsInPosition(Config.Updown_P7_AUnderL))
//{
// MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
// LogInfo($"复位{MoveInfo.SLog}:当前升降轴在 A下暂存区低点 {Config.Updown_P7_AUnderL},升降轴先到P6:{Config.Updown_P6_AUnderH}");
// UpdownAxis.AbsMove(MoveInfo, Config.Updown_P6_AUnderH, Config.Updown_P6_Speed);
//}
//else if (UpdownAxis.IsInPosition(Config.Updown_P11_BUpperL))
//{
// MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
// LogInfo($"复位{MoveInfo.SLog}:当前升降轴在 B上暂存区低点{Config.Updown_P11_BUpperL},升降轴先到P10:{Config.Updown_P10_BUpperH}");
// UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10_BUpperH, Config.Updown_P10_Speed);
//}
//else if (UpdownAxis.IsInPosition(Config.Updown_P13_BUnderL))
//{
// MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
// LogInfo($"复位{MoveInfo.SLog}:当前升降轴在 B下暂存区低点 {Config.Updown_P13_BUnderL},升降轴先到P12{Config.Updown_P12_BUnderH}");
// UpdownAxis.AbsMove(MoveInfo, Config.Updown_P12_BUnderH, Config.Updown_P12_Speed);
//}
//旋转轴在A暂存区 //旋转轴在A暂存区
if (MiddleAxis.IsInPosition(Config.Middle_P4_AUpper) || MiddleAxis.IsInPosition(Config.Middle_P7_AUnder)) if (MiddleAxis.IsInPosition(Config.Middle_P4_AUpper, middleWucha) || MiddleAxis.IsInPosition(Config.Middle_P7_AUnder, middleWucha))
{ {
//如果升降轴<下方高点 //如果升降轴低于下方高点
if(updownP< Config.Updown_P6_AUnderH+10000) if(updownP> Config.Updown_P6_AUnderH- updownWucha)
{ {
MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove); MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 A侧暂存区{middleP},升降轴当前位置{updownP},低于下方高点,升降轴先到P4:{Config.Updown_P6_AUnderH}"); LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 A侧暂存区{middleP},升降轴当前位置{updownP},低于下方高点,升降轴先到P6:{Config.Updown_P6_AUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P6_AUnderH, Config.Updown_P6_Speed); UpdownAxis.AbsMove(MoveInfo, Config.Updown_P6_AUnderH, Config.Updown_P6_Speed);
} }
else //升降轴高于上方低点
else if(updownP<Config.Updown_P5_AUpperL+ updownWucha)
{ {
MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove); MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 A侧暂存区{middleP},升降轴当前位置{updownP},在上方暂存区,升降轴先回待机点:{Config.Updown_P1}"); LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 A侧暂存区{middleP},升降轴当前位置{updownP},高于上方低点,升降轴到上方高点P4:{Config.Updown_P4_AUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P1, Config.Updown_P1_Speed); UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4_AUpperH, Config.Updown_P4_Speed);
}
else
{
SetWarnMsg($"复位失败,当前旋转轴位置{middleP},升降轴位置{updownP},无法判断位于A侧暂存区上方或下方");
Alarm(AlarmType.SuddenStop);
} }
} }
else if (MiddleAxis.IsInPosition(Config.Middle_P5_BUpper)|| MiddleAxis.IsInPosition(Config.Middle_P8_BUnder)) else if (MiddleAxis.IsInPosition(Config.Middle_P5_BUpper, middleWucha) || MiddleAxis.IsInPosition(Config.Middle_P8_BUnder, middleWucha))
{ {
if (updownP < Config.Updown_P12_BUnderH + 10000) //如果升降轴低于下方高点
if (updownP > Config.Updown_P12_BUnderH - updownWucha)
{ {
MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove); MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 B侧暂存区{middleP},升降轴当前位置{updownP},低于下方高点,升降轴先到P4:{Config.Updown_P12_BUnderH}"); LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 B侧暂存区{middleP},升降轴当前位置{updownP},低于下方高点,升降轴先到12:{Config.Updown_P12_BUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P12_BUnderH, Config.Updown_P12_BUnderH); UpdownAxis.AbsMove(MoveInfo, Config.Updown_P12_BUnderH, Config.Updown_P12_BUnderH);
} }
else //升降轴高于上方低点
else if (updownP<Config.Updown_P11_BUpperL+ updownWucha)
{ {
MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove); MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 B侧暂存区{middleP},升降轴当前位置{updownP},在上方暂存区,升降轴先回待机点:{Config.Updown_P1}"); LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 B侧暂存区{middleP},升降轴当前位置{updownP},高于上方低点,升降轴到上方高点P10:{Config.Updown_P10_BUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P1, Config.Updown_P1_Speed); UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10_BUpperH, Config.Updown_P10_Speed);
} }
else
{
SetWarnMsg($"复位失败,当前旋转轴位置{middleP},升降轴位置{updownP},无法判断位于A侧暂存区上方或下方");
Alarm(AlarmType.SuddenStop);
}
} }
else else
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!