From 91869e644595198cab3e8f9a364bb1a6722e148e Mon Sep 17 00:00:00 2001
From: pjb <1@qq.com>
Date: 星期二, 19 八月 2025 16:45:06 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/SiemensCrnThread.java |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 1aeefb9..27394d2 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -157,8 +157,8 @@
             if (result.IsSuccess) {
                 if (null == crnProtocol) {
                     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));
@@ -185,8 +185,8 @@
 
                 // 澶嶄綅淇″彿
                 if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) {
-//                    News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�",
-//                            slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿");
+                    News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{},鐘舵��:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�",
+                            slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿",crnProtocol.getStatusType());
                     if (resetFlag) {
                         if(crnProtocol.getTaskNo()==9999){
                             backHpFlag = false;
@@ -247,11 +247,13 @@
         do {
             OperateResult resultAck = siemensNet.Write("DB100.0", (short) 0);
             if (resultAck.IsSuccess){
+                Thread.sleep(200);
                 OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 2);
                 short ack = siemensNet.getByteTransform().TransInt16(resultRead.Content, 0);
                 if (ack != 0) {
                     writeAck++;
                 }else {
+                    News.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), "ack澶嶄綅瀹屾垚");
                     break;
                 }
             }
@@ -304,12 +306,13 @@
                     one.setDestinationPosX(siemensNet.getByteTransform().TransInt16(resultRead.Content, 12));
                     one.setDestinationPosY(siemensNet.getByteTransform().TransInt16(resultRead.Content, 14));
                     one.setDestinationPosZ(siemensNet.getByteTransform().TransInt16(resultRead.Content, 16));
+                    one.setCommand(siemensNet.getByteTransform().TransInt16(resultRead.Content, 18));
                     one.setTraySize(siemensNet.getByteTransform().TransInt16(resultRead.Content, 20));
                     if (!command.getTaskNo().equals(one.getTaskNo()) || !command.getTaskMode().equals(one.getTaskMode())
                             || !command.getSourcePosX().equals(one.getSourcePosX()) || !command.getSourcePosY().equals(one.getSourcePosY())
                             || !command.getSourcePosZ().equals(one.getSourcePosZ()) || !command.getDestinationPosX().equals(one.getDestinationPosX())
                             || !command.getDestinationPosY().equals(one.getDestinationPosY()) || !command.getDestinationPosZ().equals(one.getDestinationPosZ())
-                            || !command.getTraySize().equals(one.getTraySize())
+                            || !command.getTraySize().equals(one.getTraySize()) || !command.getCommand().equals(one.getCommand())
                             || !command.getAckFinish().equals(one.getAckFinish())
                     ){
                         try{
@@ -351,6 +354,7 @@
                     if(result.IsSuccess){
                         //鍫嗗灈鏈轰换鍔″啓鍏ュ悗锛屽洖璇讳竴娆★紝鐪嬫槸鍚︽垚鍔�
                         Thread.sleep(200);
+                        log.info("鍫嗗灈鏈轰换鍔″畬鎴愬浣嶏紝姝ゆ椂鍫嗗灈鏈虹姸鎬�:"+crnProtocol.getStatusType()+",鍫嗗灈鏈篿d:"+crnProtocol.getCrnNo());
                         OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.18", (short) 2);
                         if (resultRead.IsSuccess) {
                             commandFinish=siemensNet.getByteTransform().TransInt16(resultRead.Content, 0);

--
Gitblit v1.9.1