| | |
| | | // private RgvProtocol rgvProtocol; |
| | | private TaskProtocolCache taskProtocolCache = new TaskProtocolCache(); |
| | | // # 轨道总长 |
| | | private Long trackEntireLength = 215000L; |
| | | private Long trackEntireLength = 224000L; |
| | | //# 轨道基准点 |
| | | private Long trackBenchmark = 1L; |
| | | // # 避让距离 |
| | | private Long avoidDistance = 4000L; |
| | | private Long avoidDistance = 5000L; |
| | | |
| | | /** |
| | | * 工位1复位信号 |
| | |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return true; |
| | | } |
| | | rgvTaskProtocolOther.setAvoid(1); |
| | | rgvTaskProtocolOther.setAvoidingTheDestination(avoid); |
| | | RgvTaskCache.updateRgvStatus(rgvTaskProtocolOther); |
| | |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return true; |
| | | } |
| | | rgvTaskProtocolOther.setAvoid(1); |
| | | rgvTaskProtocolOther.setAvoidingTheDestination(avoid); |
| | | RgvTaskCache.updateRgvStatus(rgvTaskProtocolOther); |
| | |
| | | > avoidDistance) {//无需避让 |
| | | return true; |
| | | } else { |
| | | if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()) { |
| | | if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()-50) { |
| | | long avoid = rgvProtocolOther.getRgvPos() - rgvProtocolOther.getCarBodyJiaoMing() - avoidDistance - rgvProtocol.getCarBodyKunPeng(); |
| | | if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[1])) { |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocol.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return false; |
| | | } |
| | | rgvTaskProtocol.setAvoid(1); |
| | |
| | | return false; |
| | | } |
| | | return false; |
| | | } |
| | | } else { |
| | | if ((rgvProtocolOther.getRgvPosDestinationOrPos(true) - rgvProtocolOther.getCarBodyJiaoMing()) |
| | | - (targetPosition + rgvProtocol.getCarBodyKunPeng()) |
| | | > avoidDistance) {//无需避让 |
| | | return true; |
| | | } |
| | | } |
| | | } else { |
| | |
| | | if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[1])) { |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return true; |
| | | } |
| | | rgvTaskProtocolOther.setAvoid(1); |
| | | rgvTaskProtocolOther.setAvoidingTheDestination(avoid); |
| | |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return true; |
| | | } |
| | | rgvTaskProtocolOther.setAvoid(1); |
| | | rgvTaskProtocolOther.setAvoidingTheDestination(avoid); |
| | | RgvTaskCache.updateRgvStatus(rgvTaskProtocolOther); |
| | |
| | | > avoidDistance) {//无需避让 |
| | | return true; |
| | | } else { |
| | | if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos()) { |
| | | if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos() + 50) { |
| | | long avoid = rgvProtocolOther.getRgvPos() + rgvProtocolOther.getCarBodyKunPeng() + avoidDistance + rgvProtocol.getCarBodyJiaoMing(); |
| | | if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[0])) { |
| | | log.error("行走超出范围!!!任务异常 联系管理员!!!"); |
| | | return false; |
| | | } |
| | | long avoidAbs = Math.abs(avoid - rgvProtocol.getRgvPos()); |
| | | if (avoidAbs<51){ |
| | | return false; |
| | | } |
| | | rgvTaskProtocol.setAvoid(1); |
| | |
| | | } |
| | | return false; |
| | | } |
| | | } else { |
| | | if ((rgvProtocolOther.getRgvPosDestinationOrPos(false) - rgvProtocolOther.getCarBodyJiaoMing()) |
| | | - (targetPosition + rgvProtocol.getCarBodyKunPeng()) |
| | | > avoidDistance) {//无需避让 |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | return false; |