From 765c12f5fdb31a3f613bfde53c3af28c8a7538aa Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期五, 30 八月 2024 14:42:09 +0800
Subject: [PATCH] 对照协议调整

---
 src/main/java/com/zy/core/thread/SiemensDevpThread.java |   36 ++++++++++++++++++++++--------------
 1 files changed, 22 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 84c4673..371cf81 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -65,6 +65,18 @@
         add(212);
     }};
 
+    public static final ArrayList<Integer> staNosAll = new ArrayList<Integer>() {{
+        add(101);
+        add(102);
+        add(103);
+        add(200);
+        add(201);
+        add(202);
+        add(210);
+        add(211);
+        add(212);
+    }};
+
     private Integer count = 0;
 
     /**
@@ -360,25 +372,21 @@
         if (null == staProtocol) {
             return;
         }
-        ArrayList<Integer> staNos = getStaNo();
-        int index = staNos.indexOf(staProtocol.getSiteId());
-        short[] array = new short[2];
-        array[0] = staProtocol.getWorkNo();
-        array[1] = staProtocol.getStaNo();
-//        OperateResult write = siemensS7Net.Write("DB100." + index*4, array);
-
+        System.out.println(staProtocol);
+        int index = staNosAll.indexOf(staProtocol.getSiteId());
         OperateResult write = null;
+        OperateResult write1 = null;
         //浠诲姟涓嬪彂娆℃暟
         int writeCount = 0;
         do {
-//            write = siemensS7Net.Write("DB100.0" + index*2, staProtocol.getWorkNo());    // 宸ヤ綔鍙�
-//            Thread.sleep(500);
-//            write1 = siemensS7Net.Write("DB100.0" + index*2+2, staProtocol.getStaNo());    // 鐩爣绔�
-            write = siemensS7Net.Write("DB100." + index * 4, array);
-            if (write.IsSuccess) {
+            write = siemensS7Net.Write("DB100." + index * 6, (int) staProtocol.getWorkNo());    // 宸ヤ綔鍙�
+            Thread.sleep(300);
+            write1 = siemensS7Net.Write("DB100." + (index * 6 + 4), staProtocol.getStaNo());    // 鐩爣绔�
+            Thread.sleep(100);
+            if (write.IsSuccess && write1.IsSuccess) {
                 Thread.sleep(200);
-                OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100.0" + index * 2, (short) 2);
-                OperateResultExOne<byte[]> readResult1 = siemensS7Net.Read("DB100.0" + index * 2 + 2, (short) 2);
+                OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index * 6, (short) 4);
+                OperateResultExOne<byte[]> readResult1 = siemensS7Net.Read("DB100." + (index * 6 + 4), (short) 2);
                 if (readResult.IsSuccess && readResult1.IsSuccess) {
                     short workNo = siemensS7Net.getByteTransform().TransInt16(readResult.Content, 0);
                     short staNo = siemensS7Net.getByteTransform().TransInt16(readResult1.Content, 0);

--
Gitblit v1.9.1