| | |
| | | shuttleTaskModeType = ShuttleTaskModeType.SHUTTLE_MOVE; |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | | if(similarity <= similarityRef) { |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | break; |
| | |
| | | shuttleTaskModeType = ShuttleTaskModeType.TRANSPORT; |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | | if(similarity <= similarityRef) { |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | if (motion.getReleaseLift() == 2) {//执行中释放提升机 |
| | |
| | | shuttleTaskModeType = ShuttleTaskModeType.TRANSPORT_TO_CONVEYOR; |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | | if(similarity <= similarityRef) { |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | break; |
| | |
| | | shuttleTaskModeType = ShuttleTaskModeType.MOVE_PALLET_LIFT; |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | | if(similarity <= similarityRef) { |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | shuttleCommands.add(0, shuttleThread.getLiftCommand(motion.getTaskNo(), true)); |
| | |
| | | shuttleTaskModeType = ShuttleTaskModeType.MOVE_PALLET_DOWN; |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | | if(similarity <= similarityRef) { |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | shuttleCommands.add(shuttleCommands.size(), shuttleThread.getLiftCommand(motion.getTaskNo(), false)); |
| | |
| | | shuttleCommands = this.shuttleAssignCommand(motion.getOrigin(), shuttleFromLiftStandbyLoc, NavigationMapType.NORMAL.id, assignCommand, shuttleThread); |
| | | |
| | | movePath = motion.getMovePath(); |
| | | if (!Cools.isEmpty(movePath)) { |
| | | originPath = JSON.parseArray(movePath, NavigateNode.class); |
| | | finalPath = assignCommand.getNodes(); |
| | | similarity = navigateUtils.similarityPath(originPath, finalPath); |
| | |
| | | News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | //更新动作可用待机位 |
| | | motion.setTarget(shuttleFromLiftStandbyLoc); |