From a37eb3393b65933105a6f23a1713a2b14b835d16 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期五, 23 五月 2025 12:53:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/impl/ZyForkLiftThread.java | 63 ++++++++++++++++++++++++++++--- 1 files changed, 56 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/core/thread/impl/ZyForkLiftThread.java b/src/main/java/com/zy/core/thread/impl/ZyForkLiftThread.java index 10900c0..e795ce3 100644 --- a/src/main/java/com/zy/core/thread/impl/ZyForkLiftThread.java +++ b/src/main/java/com/zy/core/thread/impl/ZyForkLiftThread.java @@ -285,6 +285,25 @@ } @Override + public CommandResponse move(ForkLiftCommand command) { + CommandResponse response = new CommandResponse(false); + + short[] array = new short[4]; + array[0] = command.getTaskNo();//浠诲姟鍙� + array[1] = command.getMode();//浠诲姟妯″紡 + array[2] = command.getPick();//鍙栬揣鏁版嵁 + array[3] = command.getPut();//鏀捐揣鏁版嵁 + OperateResult result = siemensS7Net.Write("DB103.0", array); + if (result.IsSuccess) { + OperateResult result2 = siemensS7Net.Write("DB103.8", command.getConfirm()); + if (result2.IsSuccess) { + response.setResult(true); + } + } + return response; + } + + @Override public CommandResponse reset() { CommandResponse response = new CommandResponse(false); OperateResult result = siemensS7Net.Write("DB103.10", (short) 1); @@ -300,6 +319,7 @@ if (this.forkLiftProtocol.getTaskNo() == null || this.forkLiftProtocol.getProtocolStatus() == null || this.forkLiftProtocol.getModel() == null + || this.forkLiftProtocol.getErrorCode() == null ) { return false; } @@ -307,7 +327,9 @@ boolean res = this.forkLiftProtocol.getProtocolStatus() == ForkLiftProtocolStatusType.IDLE.id && this.forkLiftProtocol.getWrkNo() == 0 && this.forkLiftProtocol.getTaskNo() == 0 - && this.forkLiftProtocol.getModel() == 2; + && this.forkLiftProtocol.getModel() == 2 + && this.forkLiftProtocol.getErrorCode() == 0 + ; return res; } @@ -328,13 +350,16 @@ if (this.forkLiftProtocol.getTaskNo() == null || this.forkLiftProtocol.getProtocolStatus() == null || this.forkLiftProtocol.getModel() == null + || this.forkLiftProtocol.getErrorCode() == null ) { return false; } boolean res = this.forkLiftProtocol.getProtocolStatus() == ForkLiftProtocolStatusType.IDLE.id && this.forkLiftProtocol.getWrkNo() == 0 - && this.forkLiftProtocol.getModel() == 2; + && this.forkLiftProtocol.getModel() == 2 + && this.forkLiftProtocol.getErrorCode() == 0 + ; return res; } @@ -365,13 +390,16 @@ @Override public List<ForkLiftCommand> getPickAndPutCommand(Integer taskNo, Integer pick, Integer put) { + Integer realPick = pick % 1000; + Integer realPut = put % 1000; + List<ForkLiftCommand> commands = new ArrayList<>(); ForkLiftCommand command = new ForkLiftCommand(); command.setLiftNo(slave.getId()); command.setTaskNo(taskNo.shortValue()); command.setMode(ForkLiftTaskModeType.PICK_PUT.id.shortValue()); - command.setPick(pick.shortValue()); - command.setPut(put.shortValue()); + command.setPick(realPick.shortValue()); + command.setPut(realPut.shortValue()); command.setConfirm((short) 1); commands.add(command); @@ -379,14 +407,35 @@ } @Override - public List<ForkLiftCommand> getShuttleSwitchCommand(Integer taskNo, Integer originLev, Integer targetLev) { + public List<ForkLiftCommand> getShuttleSwitchCommand(Integer taskNo, Integer pick, Integer put) { + Integer realPick = pick % 1000; + Integer realPut = put % 1000; + List<ForkLiftCommand> commands = new ArrayList<>(); ForkLiftCommand command = new ForkLiftCommand(); command.setLiftNo(slave.getId()); command.setTaskNo(taskNo.shortValue()); command.setMode(ForkLiftTaskModeType.SHUTTLE_SWITCH.id.shortValue()); - command.setPick(originLev.shortValue()); - command.setPut(targetLev.shortValue()); + command.setPick(realPick.shortValue()); + command.setPut(realPut.shortValue()); + command.setConfirm((short) 1); + + commands.add(command); + return commands; + } + + @Override + public List<ForkLiftCommand> getMoveCommand(Integer taskNo, Integer pick, Integer put) { + Integer realPick = pick % 1000; + Integer realPut = put % 1000; + + List<ForkLiftCommand> commands = new ArrayList<>(); + ForkLiftCommand command = new ForkLiftCommand(); + command.setLiftNo(slave.getId()); + command.setTaskNo(taskNo.shortValue()); + command.setMode(ForkLiftTaskModeType.MOVE.id.shortValue()); + command.setPick(realPick.shortValue()); + command.setPut(realPut.shortValue()); command.setConfirm((short) 1); commands.add(command); -- Gitblit v1.9.1