From 675db903cd534aa16b59f5e9bf87da3e699e5d30 Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期六, 29 七月 2023 16:36:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jxfywcs' into jxfywcs

---
 src/main/java/com/zy/core/thread/SiemensDevpThread.java |   35 ++++++++++++++++++++++-------------
 1 files changed, 22 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 c459208..96d1699 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -41,16 +41,18 @@
 
     private DevpSlave slave;
     private SiemensS7Net siemensS7Net;
+
+    public boolean[] startSignal = new boolean[8];
     private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
     private short heartBeatVal = 1;
 //    public static final ArrayList<Integer> staNos = new ArrayList<Integer>() {{
 //
 //    }};
     public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
-        add(1);add(2);add(3);add(4);
-        add(5);add(6);add(7);add(8);
-        add(9);add(10);add(11);add(12);
-        add(13);
+        add(100);add(101);add(102);add(103);
+        add(104);add(105);add(106);add(107);
+        add(108);add(109);add(110);add(111);
+        add(1000);
     }};
 
 
@@ -61,7 +63,7 @@
     /**
      * 鏉$爜鏁伴噺
      */
-    private int barcodeSize = 6;
+    private int barcodeSize = 1;
 
     /**
      * 鍏ュ嚭搴撴ā寮�
@@ -212,7 +214,7 @@
 //        }
         //鏉$爜鎵弿鍣�
         Thread.sleep(200);
-        OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB100.200",(short)(8));
+        OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.26",(short)(8));
         if (result2.IsSuccess) {
             if (slave.getId()==1){
                     String barcode = siemensS7Net.getByteTransform().TransString(result2.Content,0,8, "UTF-8");
@@ -226,8 +228,15 @@
 
         }
 
+        //鎺ユ敹瓒呭瓒呴珮娌℃壂鍒版潯鐮佹姤璀�
         Thread.sleep(200);
-        OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB102.100", (short) (staNoSize * 2));
+        OperateResultExOne<byte[]> result4 = siemensS7Net.Read("DB101.34",(short)(1));
+        if (result4.IsSuccess) {
+            startSignal = siemensS7Net.getByteTransform().TransBool(result4.Content, 0, 1);
+        }
+
+        Thread.sleep(200);
+        OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB101.0", (short) (staNoSize * 2));
         if (result1.IsSuccess) {
             for (int i = 0; i < staNoSize; i++) {
                 Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
@@ -296,9 +305,9 @@
 
         //RGV鍙拌溅浣嶇疆
         Thread.sleep(200);
-        OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.1",(short)2);
+        OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.160",(short)2);
         if (result3.IsSuccess) {
-                Integer siteId = 13; // 绔欑偣缂栧彿
+                Integer siteId = 1000; // 绔欑偣缂栧彿
                 StaProtocol staProtocol = station.get(siteId);
                 if (null == staProtocol) {
                     staProtocol = new StaProtocol();
@@ -376,13 +385,13 @@
         //浠诲姟涓嬪彂娆℃暟
         int writeCount = 0;
         do {
-            write = siemensS7Net.Write("DB100." + index*2, staProtocol.getWorkNo());    // 宸ヤ綔鍙�
+            write = siemensS7Net.Write("DB100." + index*4, staProtocol.getWorkNo());    // 宸ヤ綔鍙�
             Thread.sleep(500);
-            write1 = siemensS7Net.Write("DB101." + index*2, staProtocol.getStaNo());    // 鐩爣绔�
+            write1 = siemensS7Net.Write("DB100." + (index*4+2), staProtocol.getStaNo());    // 鐩爣绔�
             if(write.IsSuccess || write1.IsSuccess){
                 Thread.sleep(200);
-                OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index*2, (short) 2);
-                OperateResultExOne<byte[]> readResult1 = siemensS7Net.Read("DB101." + index*2, (short) 2);
+                OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index*4, (short) 2);
+                OperateResultExOne<byte[]> readResult1 = siemensS7Net.Read("DB100." + (index*4+2), (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