From 5ab75e054876ff118f21701f409deb4470fc92f3 Mon Sep 17 00:00:00 2001
From: pjb <123456>
Date: 星期六, 02 八月 2025 12:54:02 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/core/thread/SiemensDevpThread.java |   29 ++++++++++++++++-------------
 1 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 21b145d..d16acba 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -360,8 +360,8 @@
      * 璇诲彇鐘舵�� ====> 鏁村潡plc
      */
     private void readsanqi() throws InterruptedException {
-        ArrayList<Integer> staNos = getStaNo();
-        int staNoSize = staNos.size();
+        ArrayList<Integer> staNos = staNos3;
+        int staNoSize = staNos3.size();
 
         //
         OperateResultExOne<byte[]> resultsanqi = siemensS7Net.Read("DB101.120", (short) (staNoSize * 8));
@@ -397,17 +397,20 @@
 
 
         //澶栧舰妫�娴� 涓夋湡
-        OperateResultExOne<byte[]> resultErrsanqi = siemensS7Net.Read("DB101.160", (short) 8);
+        OperateResultExOne<byte[]> resultErrsanqi = siemensS7Net.Read("DB101.160", (short) (staNoSize * 8));
         if (resultErrsanqi.IsSuccess) {
-            boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErrsanqi.Content, 0, 1);
-            StaProtocol staProtocol = station.get(304);
-            staProtocol.setFrontErr(status[0]);
-            staProtocol.setBackErr(status[1]);
-            staProtocol.setHighErr(status[2]);
-            staProtocol.setLeftErr(status[3]);
-            staProtocol.setRightErr(status[4]);
-            staProtocol.setWeightErr(status[5]);
-            staProtocol.setBarcodeErr(status[6]);
+            for (int i = 0; i < staNoSize; i++) {
+                Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
+                boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErrsanqi.Content, i * 4, 1);
+                StaProtocol staProtocol = station.get(siteId);
+                staProtocol.setFrontErr(status[0]);
+                staProtocol.setBackErr(status[1]);
+                staProtocol.setHighErr(status[2]);
+                staProtocol.setLeftErr(status[3]);
+                staProtocol.setRightErr(status[4]);
+                staProtocol.setWeightErr(status[5]);
+                staProtocol.setBarcodeErr(status[6]);
+            }
         }
 
 
@@ -479,7 +482,7 @@
         int index2 = 0;
         if (staProtocol.getSiteId() >= 310) {
             index = staNos3.indexOf(staProtocol.getSiteId());
-            index2 = 54;
+            index2 = 66;
         } else {
             index = staNos.indexOf(staProtocol.getSiteId());
         }

--
Gitblit v1.9.1