| | |
| | | { |
| | | throw Oops.Bah("任务:" + models.TaskNo + ";不存在!"); |
| | | } |
| | | var data1 = FourWayCarUtil.GetCarPath("090501", "080501","0"); |
| | | var data1 = FourWayCarUtil.GetCarPath("091501", "091601","0"); |
| | | if (data1 == null) //|| data1.Count == 0 |
| | | { |
| | | throw Oops.Bah("分配路径不存在!"); |
| | |
| | | AGV(mod); // AGV调度 |
| | | break; |
| | | case PLCTypeEnum.ShuttleCar: //穿梭车 |
| | | //ShuttleCar(mod); |
| | | ShuttleCar(mod); |
| | | break; |
| | | case PLCTypeEnum.RobotPalletizer: |
| | | RobotPalletizer(mod);//码垛机器人 |
| | |
| | | { |
| | | break;//没有查询到总任务 |
| | | } |
| | | //获取路径2的任务 下发 |
| | | carTaskNext = _db.Queryable<WcsCarTasks>().Where(m => m.IsDelete == false && m.TaskNo == carTask.TaskNo && m.CarNo == modDevice.PlcIdIP && m.Status <= TaskStatusEnum.Doing).OrderBy(m=>m.CreateTime).First(); |
| | | |
| | | if (carTask != null && carTask.Status != TaskStatusEnum.Complete) |
| | | { |
| | | carTask.Status = TaskStatusEnum.Complete; |
| | |
| | | |
| | | HubUtil.PublicTaskMonitor(taskMonitor.Adapt<WcsTaskMonitorOutput>()); |
| | | } |
| | | //获取路径2的任务 下发 |
| | | carTaskNext = _db.Queryable<WcsCarTasks>().Where(m => m.IsDelete == false && m.TaskNo == carTask.TaskNo && m.CarNo == modDevice.PlcIdIP && m.Status <= TaskStatusEnum.Doing).OrderBy(m => m.CreateTime).First(); |
| | | //总任务下没有其他未执行小车的任务 变更总任务信息 |
| | | if (carTaskNext == null && modFinshTask != null && modFinshTask.Status != TaskStatusEnum.Complete) |
| | | { |
| | |
| | | continue;//没有空闲小车 |
| | | } |
| | | |
| | | if (assignCar.Level != 0) |
| | | if (assignCar.Level != 1) |
| | | { |
| | | //判断小车位置是否与任务的起始储位相同,不相同:获取小车到取货储位路径 |
| | | var carLocate = assignCar.X.ToString().PadLeft(2, '0')+assignCar.Y.ToString().PadLeft(2, '0')+ assignCar.Z.ToString().PadLeft(2, '0'); |