From fcfe4fd1e882debbb12e2182bb6760d6da2c8172 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期六, 16 三月 2024 10:30:36 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 41 ++++++++++++++++++++++++++++++++++++++--- 1 files changed, 38 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 efd2def..54a52b8 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -161,7 +161,7 @@ /** * 璇诲彇鐘舵�� */ - private void readStatus(){ + private void readStatus() throws InterruptedException { OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 56); if (result.IsSuccess) { @@ -233,7 +233,7 @@ /** * 鍐欏叆鏁版嵁 */ - private boolean write(CrnCommand command){ + private boolean write(CrnCommand command) throws InterruptedException { if (null == command) { log.error("鍫嗗灈鏈哄啓鍏ュ懡浠や负绌�"); return false; @@ -272,7 +272,7 @@ array[6] = command.getDestinationPosZ(); array[7] = command.getDestinationPosX(); array[8] = command.getDestinationPosY(); - array[9] = command.getCommand(); +// array[9] = command.getCommand(); // 浣滀笟淇℃伅 OperateResult result = siemensNet.Write("DB100.0", array); @@ -347,6 +347,41 @@ }catch (Exception e){ log.error("鍫嗗灈鏈哄懡浠ゅ湴鍧�鍐欏叆鍚庡洖璇诲嚭閿�"); } + + if (command.getAckFinish() == 0) { + if (result.IsSuccess) { + Thread.sleep(300); + //浠诲姟涓嬪彂娆℃暟 + int writeCount2 = 0; + + do { + writeCount2++; + short commandFinish = (short) 1; + result = siemensNet.Write("DB100.18", commandFinish); + if(result.IsSuccess){ + //鍫嗗灈鏈轰换鍔″啓鍏ュ悗锛屽洖璇讳竴娆★紝鐪嬫槸鍚︽垚鍔� + Thread.sleep(200); + OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.18", (short) 2); + if (resultRead.IsSuccess) { + commandFinish=siemensNet.getByteTransform().TransInt16(resultRead.Content, 0); + if (commandFinish != 1){ + log.error("鍫嗗灈鏈轰换鍔$‘璁や綅"+commandFinish+"鍐欏叆鏁版嵁涓庡洖璇绘暟鎹笉涓�鑷达紒"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�"); + }else{ + //浠诲姟鍛戒护鍐欏叆鎴愬姛 + log.info("鍫嗗灈鏈轰换鍔$‘璁や綅"+commandFinish+"鍥炶鎴愬姛锛�"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�"); + break; + } + }else { + log.error("鍫嗗灈鏈轰换鍔$‘璁や綅"+commandFinish+"鍥炶澶辫触锛�"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�"); + } + } else { + log.error("鍫嗗灈鏈轰换鍔$‘璁や綅"+commandFinish+"鍐欏叆澶辫触锛�"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�"); + } + }while (writeCount2<5); + } + } + + return true; } -- Gitblit v1.9.1