From 242586527d932f0608c3ddf3e25964a47b0763cc Mon Sep 17 00:00:00 2001 From: zjj <zjj123456> Date: 星期日, 03 十一月 2024 10:12:53 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java index 5ab5461..274eea1 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -66,7 +66,7 @@ break; // 鍐欏叆鏁版嵁 case 2: - write2((CrnCommand) task.getData()); + write((CrnCommand) task.getData()); break; // 澶嶄綅 case 3: @@ -84,7 +84,7 @@ command.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� command.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� command.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� - write2(command); + write(command); break; default: break; @@ -154,6 +154,7 @@ crnProtocol = new CrnProtocol(); crnProtocol.setCrnNo(slave.getId()); } + crnProtocol.setCrnNo(slave.getId()); crnProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0)); crnProtocol.setTaskNo(siemensNet.getByteTransform().TransInt16(result.Content, 2)); crnProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 4)); @@ -233,11 +234,12 @@ News.error("鍫嗗灈鏈哄啓鍏ュ懡浠や负绌�"); return false; } + //涓嬪彂鍓峚ck缃�0 int writeAck = 0; do { OperateResult resultAck = siemensNet.Write("DB100.0", (short) 0); if (resultAck.IsSuccess){ - Thread.sleep(200); + Thread.sleep(100); OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 2); short ack = siemensNet.getByteTransform().TransInt16(resultRead.Content, 0); if (ack != 0) { @@ -248,6 +250,22 @@ } } }while (writeAck <5); + //涓嬪彂鍓峜ommand缃�0 + int writeComm = 0; + do { + OperateResult resultComm = siemensNet.Write("DB100.18", (short) 0); + if (resultComm.IsSuccess){ + Thread.sleep(100); + OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.18", (short) 2); + short comm = siemensNet.getByteTransform().TransInt16(resultRead.Content, 0); + if (comm != 0) { + writeComm++; + }else { + News.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), "comm澶嶄綅瀹屾垚"); + break; + } + } + }while (writeComm <5); command.setCrnNo(slave.getId()); -- Gitblit v1.9.1