| | |
| | | try { |
| | | ModbusHelper.Relink(); |
| | | |
| | | var prodLineInfo = Settings.ProductionLines[0]; |
| | | //var loc = db.Queryable<TN_Location>() |
| | | // .Where(l => l.S_AGV_SITE == model.station_name && Settings.AreaMap[AreaName.包装区].Contains(l.S_AREA_CODE)) |
| | | // .First(); |
| | | |
| | | var prodLineDevice = new ProductionLineDevice(prodLineInfo.PlcIp, prodLineInfo.PlcPort); |
| | | if (!Settings.AgvSite_ProdLineCodeMap.TryGetValue(model.station_name, out int prodIndex)) { |
| | | info = $"AGV 站点{model.station_name}不是合法的产线接驳位站点"; |
| | | LogHelper.Info(info); |
| | | return NewReturnResult(1, info); |
| | | } |
| | | |
| | | var prodLineInfo = Settings.ProductionLines[prodIndex]; |
| | | |
| | | var prodLineDevice = new ProductionLineDevice(prodLineInfo); |
| | | if (!prodLineDevice.LoadDeviceStateOk()) { |
| | | info = "与产线设备通讯失败"; |
| | | LogHelper.Info(info); |
| | |
| | | return NewReturnResult(3, info); |
| | | } |
| | | |
| | | if (model.apply_code == "5") { |
| | | if (model.apply_code == "5") { // 请求取货 |
| | | if (prodLineDevice.FullOffline != 1) { |
| | | info = $"当前输送线满料下线信号不为1,无法取货"; |
| | | LogHelper.Info(info); |
| | |
| | | return NewReturnResult(0, info); |
| | | |
| | | } |
| | | else if (model.apply_code == "1") { |
| | | else if (model.apply_code == "1") { // 请求卸货 |
| | | if (prodLineDevice.AllowAgvPlacePallet != 1) { |
| | | info = $"当前输送线允许放托盘信号不为1,无法放货"; |
| | | LogHelper.Info(info); |
| | |
| | | return NewReturnResult(0, info); |
| | | } |
| | | else { |
| | | info = $"当前输送线允许"; |
| | | info = $"当前AGV请求码不为 5取货 或 1卸货"; |
| | | LogHelper.Info(info); |
| | | return NewReturnResult(8, info); |
| | | } |