Commit eead9dd0 LN

入库时未检测到物料的报警自动清除。

大盘位置校准时,需要放下,拿起,再放下拿起2次。
入库放料后需要检测料叉无信号,否则等待信号超时。
1 个父辈 8feba3d1
......@@ -34,3 +34,10 @@
入库时仓门口必须有料。
20200616
盘点
20200826
入库时未检测到物料的报警自动清除。
大盘位置校准时,需要放下,拿起,再放下拿起2次。
入库放料后需要检测料叉无信号,否则等待信号超时。
......@@ -1020,10 +1020,10 @@ namespace OnlineStore.DeviceLibrary
{
return;
}
if (WarnMsg.Contains("等待料仓门口检测到料盘"))
{
return;
}
//if (WarnMsg.Contains("等待料仓门口检测到料盘"))
//{
// return;
//}
//若BOX和移栽都没有在等待Io的过程中则此Io超时异常可能已经处理过
if (StoreMove.IsInWait == false)
......
......@@ -376,11 +376,11 @@ namespace OnlineStore.DeviceLibrary
if (StoreMove.MoveStep.Equals(StoreMoveStep.SI_00_TrayCheck))
{
//判断是否有料盘信号
if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.HIGH)&&StoreManager.checkWatch(doorCheckWatch,1000,false))
{
if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.HIGH) && StoreManager.checkWatch(doorCheckWatch, 1000, false))
{
SI_02_Move(moveP);
}
else if(StoreMove.IsTimeOut(10))
else if (StoreMove.IsTimeOut(10))
{
WarnMsg = StoreName + "入库 等待料仓门口检测到料盘 [" + StoreMove.MoveParam.PosInfo.barcode + "] [" + StoreMove.MoveParam.PosInfo.PosId + "] 超时 [" + Math.Round(StoreMove.StepSpan().TotalSeconds, 1) + "]秒 ";
LogUtil.error(LOGGER, WarnMsg, 100);
......@@ -402,7 +402,7 @@ namespace OnlineStore.DeviceLibrary
//storeStatus = StoreStatus.StoreOnline;
//InOutEndProcess(StoreMoveType.InStore);
}
}
}
else if (StoreMove.MoveStep == StoreMoveStep.SI_02_InOutAxisHome)
{
if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.LOW))
......@@ -529,20 +529,24 @@ namespace OnlineStore.DeviceLibrary
else if (StoreMove.MoveStep == StoreMoveStep.SI_12_PutWareToBag)
{
InStoreLog("入库:SI_13 叉子从库位中返回,进出轴动作至P1(待机点) ");
StoreMove.NextMoveStep(StoreMoveStep.SI_13_DeviceBackFromBag);
StoreMove.NextMoveStep(StoreMoveStep.SI_13_InoutBack);
InOutBackToP1(moveP.InOut_P1);
}
else if (StoreMove.MoveStep == StoreMoveStep.SI_13_DeviceBackFromBag)
else if (StoreMove.MoveStep == StoreMoveStep.SI_13_InoutBack)
{
InStoreLog("入库:SI_14 返回待机点,轴2/轴1/轴4动作至P1(待机点)),检测门关闭");
StoreMove.NextMoveStep(StoreMoveStep.SI_14_GoBack);
InStoreLog("入库:SI_14_ 等待料叉无信号 ");
StoreMove.NextMoveStep(StoreMoveStep.SI_14_WaitNoReel);
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.TrayCheck_Fixture, IO_VALUE.LOW));
}
else if (StoreMove.MoveStep == StoreMoveStep.SI_14_WaitNoReel) {
InStoreLog("入库:SI_15 返回待机点,轴2/轴1/轴4动作至P1(待机点)),检测门关闭");
StoreMove.NextMoveStep(StoreMoveStep.SI_15_GoBack);
ComMoveToPosition(moveP.ComPress_P1, Config.CompAxis_P1_Speed);
ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
CloseDoor();
}
else if (StoreMove.MoveStep == StoreMoveStep.SI_14_GoBack)
else if (StoreMove.MoveStep == StoreMoveStep.SI_15_GoBack)
{
TimeSpan span = DateTime.Now - startInStoreTime;
string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PosInfo.PosId : "";
......@@ -696,18 +700,43 @@ namespace OnlineStore.DeviceLibrary
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_14_UpdownToP4)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_15_GetWare);
StoreMove.NextMoveStep(StoreMoveStep.SOL_15_WaitTime);
OutStoreLog("出库定位:放下物品后等待200 ");
StoreMove.WaitList.Add(WaitResultInfo.WaitTime(200));
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_15_WaitTime)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_16_GetWare);
OutStoreLog("出库定位:拿物品,升降轴到P6( 库位出料缓冲点),压紧轴到P2(压紧点) ");
ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.LocationPos.UpDownAxis_OHPosition_P6, Config.UpDownAxis_P6_Speed);
ACAxisMove(Config.Comp_Axis, StoreMove.MoveParam.MoveP.ComPress_P2, Config.CompAxis_P2_Speed);
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_15_GetWare)
else if (StoreMove.MoveStep == StoreMoveStep.SOL_16_GetWare)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_17_UpdownToP42);
OutStoreLog("出库定位2:放下物品,升降轴到P4( 库位入料缓冲点) ");
ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.LocationPos.UpDownAxis_ILPosition_P4, Config.UpDownAxis_P4_Speed);
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_17_UpdownToP42)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_18_WaitTime2 );
OutStoreLog("出库定位2:放下物品后等待200 ");
StoreMove.WaitList.Add(WaitResultInfo.WaitTime(200));
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_18_WaitTime2)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_19_GetWare2);
OutStoreLog("出库定位2:拿物品,升降轴到P6( 库位出料缓冲点),压紧轴到P2(压紧点) ");
ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.LocationPos.UpDownAxis_OHPosition_P6, Config.UpDownAxis_P6_Speed);
ACAxisMove(Config.Comp_Axis, StoreMove.MoveParam.MoveP.ComPress_P2, Config.CompAxis_P2_Speed);
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_19_GetWare2)
{
StoreMove.NextMoveStep(StoreMoveStep.SOL_16_InoutToP1);
StoreMove.NextMoveStep(StoreMoveStep.SOL_20_InoutToP1);
OutStoreLog("出库定位: 进出轴到P1( 待机点) ");
ACAxisMove(Config.InOut_Axis, Config.InOutAxis_P1_Position, Config.InOutAxis_P1_Speed);
}
else if (StoreMove.MoveStep == StoreMoveStep.SOL_16_InoutToP1)
else if (StoreMove.MoveStep == StoreMoveStep.SOL_20_InoutToP1)
{
SO_21_ToDoorP();
}
......
......@@ -227,13 +227,30 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
SOL_14_UpdownToP4,
/// <summary>
/// 出库定位:放下物品后等待200
/// </summary>
SOL_15_WaitTime,
/// <summary>
/// 出库定位:拿物品,升降轴到P6( 库位出料缓冲点),压紧轴到P2(压紧点)
/// </summary>
SOL_15_GetWare,
SOL_16_GetWare,
/// <summary>
/// 出库定位2:放下物品,升降轴到P4( 库位入料缓冲点)
/// </summary>
SOL_17_UpdownToP42,
/// <summary>
/// 出库定位2:放下物品后等待200
/// </summary>
SOL_18_WaitTime2,
/// <summary>
/// 出库定位2:拿物品,升降轴到P6( 库位出料缓冲点),压紧轴到P2(压紧点)
/// </summary>
SOL_19_GetWare2,
/// <summary>
/// 出库定位:叉子从 库位返回,进出轴到P1( 待机点)
/// </summary>
SOL_16_InoutToP1,
SOL_20_InoutToP1,
#endregion
......@@ -331,11 +348,15 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 入库。。叉子从库位中返回,轴3( 叉子) 动作至P1( 待机点)
/// </summary>
SI_13_DeviceBackFromBag = 213,
SI_13_InoutBack,
/// <summary>
/// 入库。等待叉子无信号
/// </summary>
SI_14_WaitNoReel,
/// <summary>
/// 入库。。返回待机点,轴2/轴1/轴4动作至P1( 待机点))开始
/// </summary>
SI_14_GoBack = 214,
SI_15_GoBack ,
#endregion
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!