From fd6d26f8ffe6a37533e741337f3eca9134d934c7 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 15 一月 2025 10:42:59 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java | 46 +++------------------------------------------- 1 files changed, 3 insertions(+), 43 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java index 9fcf125..58a941b 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java @@ -188,16 +188,15 @@ String[][] waveMatrix = mapDataDispatcher.initWaveMatrix(lev); // lock path - long time = 0; DynamicNode[][] dynamicMatrix = mapDataDispatcher.getDynamicMatrix(lev); for (int i = 0; i < dynamicMatrix.length; i++) { for (int j = 0; j < dynamicMatrix[i].length; j++) { DynamicNode dynamicNode = dynamicMatrix[i][j]; String vehicle = dynamicNode.getVehicle(); if (!DynamicNodeType.ACCESS.val.equals(vehicle) && !DynamicNodeType.BLOCK.val.equals(vehicle)) { - long startTime = System.currentTimeMillis(); + List<NavigateNode> includeList = mapService.getWaveScopeByCode(lev, codeMatrix[i][j], avoidDistance); - time += System.currentTimeMillis() - startTime; + for (NavigateNode navigateNode : includeList) { String waveNode = waveMatrix[navigateNode.getX()][navigateNode.getY()]; // overlay waveMatrix[navigateNode.getX()][navigateNode.getY()] = MapDataUtils.generateWaveNode(waveNode, vehicle); @@ -208,7 +207,7 @@ // mapDataDispatcher.printMatrix(waveMatrix); mapDataDispatcher.setWaveMatrix(lev, waveMatrix); - System.out.println("calcWaveScopeByJava " + time); + return true; } @@ -228,45 +227,6 @@ throw new RuntimeException(e); } return scriptFile; - } - - public void syncWaveBySingleVeh(String agvNo, String codeData) { - if (Cools.isEmpty(agvNo, codeData)) { - return; - } - - boolean lockAcquired = false; - Integer lev = MapDataDispatcher.MAP_DEFAULT_LEV; - - try { - if (!(lockAcquired = lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS))) { - log.warn("AvoidWaveCalculator syncWaveBySingleVeh fail, cause can not acquire lock ..."); - return; - } - - Agv agv = agvService.selectByUuid(agvNo); - AgvModel agvModel = agvModelService.getByAgvNo(agvNo); - Double avoidDistance = MapDataUtils.getVehicleWaveSafeDistance(agvModel.getDiameter(), MapDataConstant.MAX_DISTANCE_BETWEEN_ADJACENT_AGV_FACTOR); - - String[][] waveMatrix = mapDataDispatcher.getWaveMatrix(lev); - - List<NavigateNode> includeList = mapService.getWaveScopeByCode(lev, codeData, avoidDistance); - - for (NavigateNode navigateNode : includeList) { - String waveNode = waveMatrix[navigateNode.getX()][navigateNode.getY()]; - waveMatrix[navigateNode.getX()][navigateNode.getY()] = MapDataUtils.generateWaveNode(waveNode, agv.getUuid()); - } - - mapDataDispatcher.setWaveMatrix(lev, waveMatrix); - - } catch (Exception e) { - log.error("AvoidWaveCalculator.syncWaveBySingleVeh fail", e); - } finally { - - if (lockAcquired) { - lock.unlock(); - } - } } public void calcDynamicNodeWhenBoot() { -- Gitblit v1.9.1