From c83b3ad4e7d3fc8da48eafcd45dd46de0262f138 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 08 一月 2025 16:51:50 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/fake/AgvSimulatorTask.java | 34 +++++++++++++++------------------- 1 files changed, 15 insertions(+), 19 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/AgvSimulatorTask.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/AgvSimulatorTask.java index 869cb02..5d8013b 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/AgvSimulatorTask.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/AgvSimulatorTask.java @@ -5,6 +5,7 @@ import com.zy.acs.common.domain.protocol.AGV_11_UP; import com.zy.acs.common.enums.AgvCompleteType; import com.zy.acs.common.utils.RedisSupport; +import com.zy.acs.manager.core.scheduler.MapDataWsScheduler; import com.zy.acs.manager.core.service.MapService; import com.zy.acs.manager.manager.entity.Action; import com.zy.acs.manager.manager.entity.Agv; @@ -64,7 +65,6 @@ @Override public void run() { try { - FakeProcessor.AGV_PROCESSING_MAP.put(agv.getId(), true); String qrCode = null; for (Action action : actionList) { processAction(agv, action); @@ -79,15 +79,11 @@ } private void processAction(Agv agv, Action action) throws InterruptedException { - AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId()); - if (agvDetail == null) { - return; - } switch (Objects.requireNonNull(ActionTypeType.get(action.getActionTypeEl()))) { case TurnCorner: - simulateWalking(agv, agvDetail, action); - simulateRotating(agv, agvDetail, action); + simulateWalking(agv, action); + simulateRotating(agv, action); break; case StraightBackUnturnable: case StraightBackTurnable: @@ -95,7 +91,7 @@ case StraightAheadTurnable: case FinishPath: case DockingCharge: - simulateWalking(agv, agvDetail, action); + simulateWalking(agv, action); break; case ReadyTakeFromShelvesLoc: case ReadyReleaseToShelvesLoc: @@ -107,16 +103,17 @@ } - private void simulateWalking(Agv agv, AgvDetail agvDetail, Action action) throws InterruptedException { - Code code = codeService.selectByData(action.getCode()); - agvDetail.setPos(1); - agvDetail.setCode(code.getId()); + private void simulateWalking(Agv agv, Action action) throws InterruptedException { + Code code = codeService.getCacheByData(action.getCode()); +// agvDetail.setPos(1); +// agvDetail.setCode(code.getId()); // 妯℃嫙鐢甸噺娑堣�� // agvDetail.setVol(agvDetail.getVol() - 0.1 * distanceToMove); // 鏍规嵁璺濈娑堣�楃數閲� - Thread.sleep(1000); + Thread.sleep(MapDataWsScheduler.WEBSOCKET_BROADCAST_INTERVAL); - agvDetailService.updateById(agvDetail); + agvDetailService.updatePosCodeByAgvId(agv.getId(), code.getId()); +// agvDetailService.updateById(agvDetail); mapService.unlockPath(agv.getUuid(), code.getData()); jamService.checkIfFinish(agv.getId(), code.getData()); @@ -129,17 +126,16 @@ * 妯℃嫙AGV鏃嬭浆 * * @param agv 褰撳墠AGV - * @param agvDetail AGV璇︾粏淇℃伅 * @param action 褰撳墠鍔ㄤ綔 */ - private void simulateRotating(Agv agv, AgvDetail agvDetail, Action action) throws InterruptedException { + private void simulateRotating(Agv agv, Action action) throws InterruptedException { double actionAngle = Double.parseDouble(action.getParams()); - agvDetail.setAgvAngle(actionAngle); +// agvDetail.setAgvAngle(actionAngle); // 妯℃嫙鐢甸噺娑堣��? // agvDetail.setVol(agvDetail.getVol() - 0.05 * (angleToRotate / 15.0)); // 鏍规嵁瑙掑害娑堣�楃數閲� - Thread.sleep(1000); - agvDetailService.updateById(agvDetail); + Thread.sleep(MapDataWsScheduler.WEBSOCKET_BROADCAST_INTERVAL); + agvDetailService.updateAngleByAgvId(agv.getId(), actionAngle); action.setActionSts(ActionStsType.FINISH.val()); actionService.updateById(action); } -- Gitblit v1.9.1