Commit 4b8e2868 张东亮

添加空包装料架检测

1 个父辈 992e9594
...@@ -182,7 +182,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -182,7 +182,12 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
if (MoveInfo.NextShelfPos()) if(CheckShelfIsEmpty())
{
InOutStoreLog("检测到料架为空,送出料架");
StartShelfOut();
}
else if (MoveInfo.NextShelfPos())
{ {
//新的料架库位 //新的料架库位
startInStoreTime = DateTime.Now; startInStoreTime = DateTime.Now;
...@@ -195,6 +200,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -195,6 +200,7 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
//所有料盘已取料完成,送出料架 //所有料盘已取料完成,送出料架
InOutStoreLog("所有料盘已取料完成,送出料架");
StartShelfOut(); StartShelfOut();
} }
} }
......
...@@ -45,6 +45,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -45,6 +45,14 @@ namespace OnlineStore.DeviceLibrary
return storeRunStatus.Equals(StoreRunStatus.Runing) && (MoveInfo?.MoveType.Equals(StoreMoveType.None) ?? false); return storeRunStatus.Equals(StoreRunStatus.Runing) && (MoveInfo?.MoveType.Equals(StoreMoveType.None) ?? false);
} }
/// <summary> /// <summary>
/// 检查料架是否是空料架
/// </summary>
/// <returns></returns>
bool CheckShelfIsEmpty()
{
return IOValue(IO_Type.EmptyShelf_Check).Equals(IO_VALUE.HIGH);
}
/// <summary>
/// 获取料架备注 /// 获取料架备注
/// 包含料信息 /// 包含料信息
/// </summary> /// </summary>
......
...@@ -184,6 +184,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -184,6 +184,13 @@ namespace OnlineStore.DeviceLibrary
{ {
if (instoreShelf) if (instoreShelf)
{ {
if (CheckShelfIsEmpty())//空料架
{
LogRunStepInfo(moveName + "检测到料架为空料架,不进行入库,即将送出料架");
StartShelfOut();
}
else
{
MoveInfo.NextMoveStep(StoreMoveStep.BI_10_StartGetTray); MoveInfo.NextMoveStep(StoreMoveStep.BI_10_StartGetTray);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime((int)TimeSpan.FromMinutes(75).TotalMilliseconds)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime((int)TimeSpan.FromMinutes(75).TotalMilliseconds));
//获取料架的锁定状态 //获取料架的锁定状态
...@@ -205,14 +212,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -205,14 +212,16 @@ namespace OnlineStore.DeviceLibrary
} }
MoveInfo.EndStepWait(); MoveInfo.EndStepWait();
} }
}
else else
{ {
//if (string.IsNullOrEmpty(StoreManager.FindRealRfidByTempRfid(MoveInfo.MoveParam.rfid))) if (string.IsNullOrEmpty(StoreManager.FindRealRfidByTempRfid(MoveInfo.MoveParam.rfid))
//{ && !CheckShelfIsEmpty())//还未出库的料架检查是否是空料架
// //新料架,检查料架上是否有治具 {
// MoveInfo.NextMoveStep(StoreMoveStep.SO_PreCheck_01_StartGetTray); LogRunStepInfo(moveName + "未使用的出库料架检测到料架不为空,即将送出料架");
//} StartShelfOut();
//else }
else
{ {
SO_03_ToBagPosition(); SO_03_ToBagPosition();
} }
......
...@@ -219,7 +219,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -219,7 +219,7 @@ namespace OnlineStore.DeviceLibrary
storeRunStatus = StoreRunStatus.Wait; storeRunStatus = StoreRunStatus.Wait;
// RFIDManager.Close(); // RFIDManager.Close();
TimeSpan span = DateTime.Now - StartTime; TimeSpan span = DateTime.Now - StartTime;
LogUtil.info( Name + ",停止运行,关闭rfid,总运行时间:" + span.ToString()); LogUtil.info(Name + ",停止运行,关闭rfid,总运行时间:" + span.ToString());
} }
#region 灯光处理 #region 灯光处理
...@@ -261,6 +261,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -261,6 +261,10 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.RunSign_HddLed, IO_VALUE.HIGH); IOMove(IO_Type.RunSign_HddLed, IO_VALUE.HIGH);
} }
} }
else if (isInOut)
{
IOMove(IO_Type.RunSign_HddLed, IO_VALUE.HIGH);
}
else else
{ {
if (IsDoValue(IO_Type.RunSign_HddLed, IO_VALUE.HIGH)) if (IsDoValue(IO_Type.RunSign_HddLed, IO_VALUE.HIGH))
...@@ -268,25 +272,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -268,25 +272,20 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.RunSign_HddLed, IO_VALUE.LOW); IOMove(IO_Type.RunSign_HddLed, IO_VALUE.LOW);
} }
} }
if (alarmType.Equals(StoreAlarmType.None).Equals(false) || isNoAirCheck || isInSuddenDown ) if (alarmType.Equals(StoreAlarmType.None).Equals(false) || isNoAirCheck || isInSuddenDown)
{ {
isNeedAlarmLed = true; isNeedAlarmLed = true;
} }
//忙碌中,判断是否有移栽在出入库执行,绿灯闪烁 //忙碌中,判断是否有移栽在出入库执行 绿灯灭
if (isInOut) if (isInOut)
{ {
if (IsDoValue(IO_Type.AutoRun_HddLed, IO_VALUE.LOW))
{
IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW); IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW);
} }
} else
else if (IsDoValue(IO_Type.AutoRun_HddLed, IO_VALUE.HIGH))
{ {
IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW); IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.HIGH);
} }
//报警中 ,红灯闪烁 //报警中 ,红灯闪烁
...@@ -370,7 +369,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -370,7 +369,7 @@ namespace OnlineStore.DeviceLibrary
foreach (AC_BOX_Bean box in this.BoxMap.Values) foreach (AC_BOX_Bean box in this.BoxMap.Values)
{ {
if ((box.storeRunStatus.Equals(StoreRunStatus.HomeMoving) || box.storeRunStatus.Equals(StoreRunStatus.Reset)) ) if ((box.storeRunStatus.Equals(StoreRunStatus.HomeMoving) || box.storeRunStatus.Equals(StoreRunStatus.Reset)))
//if ((box.storeRunStatus.Equals(StoreRunStatus.HomeMoving) || box.storeRunStatus.Equals(StoreRunStatus.Reset)) && box.IsDebug.Equals(false)) //if ((box.storeRunStatus.Equals(StoreRunStatus.HomeMoving) || box.storeRunStatus.Equals(StoreRunStatus.Reset)) && box.IsDebug.Equals(false))
{ {
if (box.alarmType.Equals(StoreAlarmType.None)) if (box.alarmType.Equals(StoreAlarmType.None))
...@@ -431,7 +430,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -431,7 +430,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (box.Config.AgvNodeName.Equals(name)) if (box.Config.AgvNodeName.Equals(name))
{ {
return box.ProcessAGVAction(name,rfid, action); return box.ProcessAGVAction(name, rfid, action);
} }
} }
return false; return false;
......
...@@ -563,7 +563,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -563,7 +563,7 @@ namespace OnlineStore.DeviceLibrary
/// ///
/// </summary> /// </summary>
/// <param name="tempRfid"></param> /// <param name="tempRfid"></param>
/// <returns>"":未找到真实料架,即任务还未出库</returns> /// <returns>"":未找到真实料架,即任务还未出库</returns>
public static string FindRealRfidByTempRfid(string tempRfid) public static string FindRealRfidByTempRfid(string tempRfid)
{ {
string msg = ""; string msg = "";
......
...@@ -3,6 +3,7 @@ DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0, ...@@ -3,6 +3,7 @@ DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0, DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0,
DI,气压检测,Airpressure_Check,2,PRO_AOI_IP_1,0,门禁,X03,DI-03,0, DI,气压检测,Airpressure_Check,2,PRO_AOI_IP_1,0,门禁,X03,DI-03,0,
DI,L侧门禁,DoorLimit,3,PRO_AOI_IP_1,0,料盘检测1(进料口),X04,DI-04,0, DI,L侧门禁,DoorLimit,3,PRO_AOI_IP_1,0,料盘检测1(进料口),X04,DI-04,0,
DI,L侧线体空料架检测,EmptyShelf_Check,7,PRO_AOI_IP_1,0,线体空料架检测1,X08,DI-08,0,
DO,NG料线体电机运转,NGLine_Run,4,PRO_AOI_IP_1,0,NG料线体电机运转,Y05,DO-05,0, DO,NG料线体电机运转,NGLine_Run,4,PRO_AOI_IP_1,0,NG料线体电机运转,Y05,DO-05,0,
DO,NG料线体电机反转,NGLine_BackRun,5,PRO_AOI_IP_1,0,NG料线体电机反转,Y06,DO-06,0, DO,NG料线体电机反转,NGLine_BackRun,5,PRO_AOI_IP_1,0,NG料线体电机反转,Y06,DO-06,0,
,,,,,,,,,, ,,,,,,,,,,
......
...@@ -3,6 +3,7 @@ DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0, ...@@ -3,6 +3,7 @@ DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0, DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0,
DI,气压检测,Airpressure_Check,2,PRO_AOI_IP_1,0,门禁,X03,DI-03,0, DI,气压检测,Airpressure_Check,2,PRO_AOI_IP_1,0,门禁,X03,DI-03,0,
DI,R侧门禁,DoorLimit,4,PRO_AOI_IP_1,0,料盘检测2(料叉),X05,DI-05,0, DI,R侧门禁,DoorLimit,4,PRO_AOI_IP_1,0,料盘检测2(料叉),X05,DI-05,0,
DI,R侧线体空料架检测,EmptyShelf_Check,8,PRO_AOI_IP_1,0,线体空料架检测2,X09,DI-09,0,
DO,NG料线体电机运转,NGLine_Run,4,PRO_AOI_IP_1,0,NG料线体电机运转,Y05,DO-05,0, DO,NG料线体电机运转,NGLine_Run,4,PRO_AOI_IP_1,0,NG料线体电机运转,Y05,DO-05,0,
DO,NG料线体电机反转,NGLine_BackRun,5,PRO_AOI_IP_1,0,NG料线体电机反转,Y06,DO-06,0, DO,NG料线体电机反转,NGLine_BackRun,5,PRO_AOI_IP_1,0,NG料线体电机反转,Y06,DO-06,0,
,,,,,,,,,, ,,,,,,,,,,
......
...@@ -48,6 +48,10 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -48,6 +48,10 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary> /// </summary>
public static string DoorLimit = "DoorLimit"; public static string DoorLimit = "DoorLimit";
/// <summary> /// <summary>
/// DI,L侧线体空料架检测,EmptyShelf_Check,7,PRO_AOI_IP_1,0,线体空料架检测1,X08,DI-08,0,
/// </summary>
public static string EmptyShelf_Check = "EmptyShelf_Check";
/// <summary>
/// DI L侧料盘检测1(识别区) TrayCheck_1 0 X21 DI-21 /// DI L侧料盘检测1(识别区) TrayCheck_1 0 X21 DI-21
/// </summary> /// </summary>
public static string TrayCheck_1 = "TrayCheck_1"; public static string TrayCheck_1 = "TrayCheck_1";
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!