From 4420bfb992da73896ae21107ae45b981df4c726e Mon Sep 17 00:00:00 2001 From: lsh <lsh123456> Date: 星期四, 29 十二月 2022 11:38:36 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/MelsecCrnThread.java | 65 ++++++++++++++++++-------------- 1 files changed, 37 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/zy/core/thread/MelsecCrnThread.java b/src/main/java/com/zy/core/thread/MelsecCrnThread.java index 4999239..9beeb30 100644 --- a/src/main/java/com/zy/core/thread/MelsecCrnThread.java +++ b/src/main/java/com/zy/core/thread/MelsecCrnThread.java @@ -24,7 +24,6 @@ import com.zy.core.model.protocol.CrnProtocol; import lombok.Data; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import java.text.MessageFormat; import java.util.Date; @@ -87,12 +86,12 @@ command.setTaskNo((short) 0); // 宸ヤ綔鍙� command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣� command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡 - command.setSourcePosX((short)0); // 婧愬簱浣嶆帓 - command.setSourcePosY((short)0); // 婧愬簱浣嶅垪 - command.setSourcePosZ((short)0); // 婧愬簱浣嶅眰 - command.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� - command.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� - command.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� +// command.setSourcePosX((short)0); // 婧愬簱浣嶆帓 +// command.setSourcePosY((short)0); // 婧愬簱浣嶅垪 +// command.setSourcePosZ((short)0); // 婧愬簱浣嶅眰 +// command.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� +// command.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� +// command.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� write(command); break; default: @@ -125,13 +124,13 @@ crnProtocol.setWalkPos((short)0); crnProtocol.setLoaded((short)0); crnProtocol.setAlarm((short)0); - crnProtocol.setXSpeed(0F); - crnProtocol.setYSpeed(0F); - crnProtocol.setZSpeed(0F); - crnProtocol.setXDistance(0F); - crnProtocol.setYDistance(0F); - crnProtocol.setXDuration(0F); - crnProtocol.setYDuration(0F); + crnProtocol.setxSpeed((short)0); + crnProtocol.setySpeed((short)0); + crnProtocol.setzSpeed((short)0); + crnProtocol.setxDistance((short)0); + crnProtocol.setyDistance((short)0); + crnProtocol.setxDuration((short)0); + crnProtocol.setyDuration((short)0); } @Override @@ -162,7 +161,7 @@ // flag1=1; // System.out.println("==="); // } - OperateResultExOne<byte[]> result = melsecMcNet.Read("D20", (short) 70); + OperateResultExOne<byte[]> result = melsecMcNet.Read("D1035", (short) 56); if (result.IsSuccess) { if (null == crnProtocol) { crnProtocol = new CrnProtocol(); @@ -182,13 +181,13 @@ crnProtocol.setTemp2(melsecMcNet.getByteTransform().TransInt16(result.Content, 22)); crnProtocol.setTemp3(melsecMcNet.getByteTransform().TransInt16(result.Content, 24)); crnProtocol.setTemp4(melsecMcNet.getByteTransform().TransInt16(result.Content, 26)); - crnProtocol.setXSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 28)); - crnProtocol.setYSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 32)); - crnProtocol.setZSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 36)); - crnProtocol.setXDistance(melsecMcNet.getByteTransform().TransSingle(result.Content, 40)); - crnProtocol.setYDistance(melsecMcNet.getByteTransform().TransSingle(result.Content, 44)); - crnProtocol.setXDuration(melsecMcNet.getByteTransform().TransSingle(result.Content, 48)); - crnProtocol.setYDuration(melsecMcNet.getByteTransform().TransSingle(result.Content, 52)); + crnProtocol.setxSpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 28)); + crnProtocol.setySpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 32)); + crnProtocol.setzSpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 36)); + crnProtocol.setxDistance(melsecMcNet.getByteTransform().TransInt16(result.Content, 40)); + crnProtocol.setyDistance(melsecMcNet.getByteTransform().TransInt16(result.Content, 44)); + crnProtocol.setxDuration(melsecMcNet.getByteTransform().TransInt16(result.Content, 48)); + crnProtocol.setyDuration(melsecMcNet.getByteTransform().TransInt16(result.Content, 52)); OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId())); @@ -299,11 +298,11 @@ array[7] = command.getDestinationPosY(); array[8] = command.getDestinationPosZ(); array[9] = command.getCommand(); - OperateResult result = melsecMcNet.Write("D0", array); + OperateResult result = melsecMcNet.Write("D1001", array); if (command.getAckFinish() == 0) { short commandFinish = 1; - result = melsecMcNet.Write("D9", commandFinish); + result = melsecMcNet.Write("D1010", commandFinish); } try { @@ -349,12 +348,22 @@ * 蹇冭烦 */ private void heartbeat(){ - if (heartBeatVal == 1) { - heartBeatVal = 2; + if (heartBeatVal >= 30000) { + heartBeatVal = -30000; } else { - heartBeatVal = 1; + heartBeatVal =(short) (heartBeatVal+1); } - OperateResult write = melsecMcNet.Write("D10", heartBeatVal); + OperateResult write = melsecMcNet.Write("D1011", heartBeatVal); +// OperateResult write1 = melsecMcNet.Write("D1001", (short) 0); +// OperateResult write2 = melsecMcNet.Write("D1002", (short) 0); +// OperateResult write3 = melsecMcNet.Write("D1003", (short) 0); +// OperateResult write4 = melsecMcNet.Write("D1004", (short) 0); +// OperateResult write5 = melsecMcNet.Write("D1005", (short) 0); +// OperateResult write6 = melsecMcNet.Write("D1006", (short) 0); +// OperateResult write7 = melsecMcNet.Write("D1007", (short) 0); +// OperateResult write8 = melsecMcNet.Write("D1008", (short) 0); +// OperateResult write9 = melsecMcNet.Write("D1009", (short) 0); +// OperateResult write10 = melsecMcNet.Write("D1010", (short) 0); if (!write.IsSuccess) { log.error("鍫嗗灈鏈簆lc蹇冭烦閫氳澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort()); } -- Gitblit v1.9.1