From 08e278498ef15e39fee1cfca81fabd054e6211b0 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@gmail.com> Date: 星期六, 28 六月 2025 16:19:45 +0800 Subject: [PATCH] # --- zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolPojoType.java | 2 ++ zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java | 7 +++++++ zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java | 2 +- zy-acs-common/src/main/java/com/zy/acs/common/domain/protocol/AGV_B1_DOWN.java | 39 +++++++++++++++++++++++++++++++++++++++ zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolType.java | 2 ++ 5 files changed, 51 insertions(+), 1 deletions(-) diff --git a/zy-acs-common/src/main/java/com/zy/acs/common/domain/protocol/AGV_B1_DOWN.java b/zy-acs-common/src/main/java/com/zy/acs/common/domain/protocol/AGV_B1_DOWN.java new file mode 100644 index 0000000..bd1355d --- /dev/null +++ b/zy-acs-common/src/main/java/com/zy/acs/common/domain/protocol/AGV_B1_DOWN.java @@ -0,0 +1,39 @@ +package com.zy.acs.common.domain.protocol; + +import com.zy.acs.common.utils.Utils; +import lombok.Data; + +import java.io.Serializable; + +/** + * 璺緞鏁版嵁鍖呭洖澶峚ck + * Created by vincent on 2023/3/16 + */ +@Data +public class AGV_B1_DOWN implements IMessageBody, Serializable { + + private static final long serialVersionUID = 6922520569887812372L; + + @Override + public byte[] writeToBytes() { + + String serialNo = Utils.zeroFill(this.serialNo, 16); + byte[] serialNoBytes = Utils.reverse(serialNo.getBytes()); + + byte pathLen0 = (byte) this.pathLen; + + return Utils.merge(serialNoBytes, pathLen0); + } + + @Override + public void readFromBytes(byte[] messageBodyBytes) { + + } + + // 娴佹按鍙� - 16 + private String serialNo; + + // 璺緞闀垮害 + private int pathLen; + +} diff --git a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolPojoType.java b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolPojoType.java index 8bde267..590f527 100644 --- a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolPojoType.java +++ b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolPojoType.java @@ -20,6 +20,8 @@ HEARTBEAT_COMMAND(ProtocolType.HEARTBEAT_COMMAND, AGV_03_DOWN.class), + PATH_ACK_COMMAND(ProtocolType.PATH_ACK_RESPONSE, AGV_B1_DOWN.class), + ; diff --git a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolType.java b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolType.java index 0b72c96..6a7ae92 100644 --- a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolType.java +++ b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/constant/ProtocolType.java @@ -24,6 +24,8 @@ ACTION_FAIL_ACK(0xA0, "鍔ㄤ綔瀹屾垚澶辫触搴旂瓟", DirectionType.DOWN), + PATH_ACK_RESPONSE(0xB1, "璺緞鏁版嵁鍖呭洖澶峚ck", DirectionType.DOWN), + // 涓婅 ------------------------------------------------------------------- PATH_ACK(0x01, "璺緞搴旂瓟鍖�", DirectionType.UP), diff --git a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java index 5a9d201..49ad300 100644 --- a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java +++ b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java @@ -48,6 +48,13 @@ , pac.getHeader().getUniqueNo() + "_" + agv_01_up.getSerialNo() , agv_01_up); + AgvPackage pathAckPac = AckMsgBuilder.ofSuccess(pac, ProtocolType.PATH_ACK_RESPONSE); + + AGV_B1_DOWN agv_b1_down = (AGV_B1_DOWN) pathAckPac.getBody().getMessageBody(); + agv_b1_down.setSerialNo(agv_01_up.getSerialNo()); + agv_b1_down.setPathLen(agv_01_up.getPathLen()); + ctx.writeAndFlush(pathAckPac); + break label; case COMMAND_ACK: // 鍛戒护鍖� ack diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java index 43d4ac0..0bf08bd 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java @@ -73,7 +73,7 @@ private void startupBus() throws InterruptedException { // if (!configService.getVal("TaskAssignMode", Boolean.class)) { return; } if (!this.lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS)) { return; } - List<Bus> busList = busService.selectBySts(BusStsType.RECEIVE); + List<Bus> busList = busService.selectInSts(BusStsType.RECEIVE, BusStsType.PROGRESS); for (Bus bus : busList) { mainService.allocateTask(bus); } -- Gitblit v1.9.1