分支自 SuZhouGuanHong/TaiYuanTaiZhong

dengjunjie
2024-03-05 db6156a92cc59467bde608a00c76952ebc75e488
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Common/AGVandGantry.cs
@@ -41,17 +41,19 @@
                    if (!Release) throw new Exception("桁架未允许进入!");
                    if (!Gantry_Out_of_Area) throw new Exception("桁架在区域内!");
                }
                else if (MethodName == "EnteriorLeav")//进入离开区域
                else if (MethodName == "EnteriorLeav")//进入/离开区域
                {
                    Gantry_client.WriteByOrder("W_AreaNr", (Int16)requestin.AreaNr, numbers[requestin.AreaNr - 1]);//区域号
                    if (requestin.Type == 1)
                    {
                        Gantry_client.WriteByOrder("W_AGV_Leaving", false, numbers[requestin.AreaNr - 1]);//正在离开
                        Gantry_client.WriteByOrder("W_AGV_Entering", true, numbers[requestin.AreaNr - 1]);//正在进入
                        var Area_Occupied_by_AGV = (bool)DBExtension.Read(details.Where(x => x.plcdetail_name == "R_Area_Occupied_by_AGV").First(), Gantry_client);//桁架反馈AGV占位信号
                        if (!Area_Occupied_by_AGV) throw new Exception("桁架未反馈AGV占位信号");
                    }
                    else if (requestin.Type == 2)
                    {
                        Gantry_client.WriteByOrder("W_AGV_Entering", false, numbers[requestin.AreaNr - 1]);//正在进入
                        Gantry_client.WriteByOrder("W_AGV_Leaving", true, numbers[requestin.AreaNr - 1]);//正在离开
                        var Area_Occupied_by_AGV = (bool)DBExtension.Read(details.Where(x => x.plcdetail_name == "R_Area_Occupied_by_AGV").First(), Gantry_client);//桁架反馈AGV占位信号
                        if (Area_Occupied_by_AGV) throw new Exception("桁架未反馈AGV离开信号");
@@ -72,6 +74,7 @@
            catch (Exception ex)
            {
                respone.Message = ex.Message;
                return respone;
            }
            return respone;
        }