From 23e183b246cdb1d85319caa216aa84c5645aec42 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期六, 18 一月 2025 11:15:04 +0800
Subject: [PATCH] 清除下发确认位后延迟写入

---
 src/main/java/com/zy/core/thread/SiemensCrnThread.java |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 18aabff..77c4151 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -189,8 +189,8 @@
             }
             // 澶嶄綅淇″彿
             if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING) && resetFlag) {
-                News.error("-------------------------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�",
-                        slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿");
+//                News.error("-------------------------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�",
+//                        slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿");
                 CrnCommand crnCommand = new CrnCommand();
                 crnCommand.setAckFinish((short) 1);
                 if (write(crnCommand)) {
@@ -245,6 +245,8 @@
             if (command.getAckFinish() == 1) {
                 result = siemensNet.Write("DB100.0", (short) 1);
             } else {
+                // 鍏堟竻闄や笅鍙戠‘璁や綅
+                siemensNet.Write("DB100.18",(short) 0);
                 command.setCrnNo(slave.getId());
                 short[] array = new short[10];
                 array[0] = command.getAckFinish();
@@ -307,6 +309,8 @@
             if (command.getAckFinish() == 1) {
                 result = siemensNet.Write("DB100.0", (short) 1);
             } else {
+                // 鍏堟竻闄や笅鍙戠‘璁や綅
+                siemensNet.Write("DB100.18",(short) 0);
                 command.setCrnNo(slave.getId());
                 short[] array = new short[10];
                 array[0] = command.getAckFinish();
@@ -319,6 +323,7 @@
                 array[7] = command.getDestinationPosY();
                 array[8] = command.getDestinationPosZ();
                 array[9] = command.getCommand();
+                Thread.sleep(200); // 寤惰繜鍐欏叆
                 result = siemensNet.Write("DB100.0", array);
                 log.info(JSON.toJSONString(array));
 

--
Gitblit v1.9.1