From 3009c8b166815ef1ca58d43643e6d1f9f3a57747 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 22 四月 2025 13:09:46 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java |    6 ++++--
 src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java  |   21 +++++++++++++++++----
 src/main/resources/docs/台升四向库WCS与货叉提升机PLC通讯接口协议.docx                 |    0 
 3 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java
index e7151fd..c94ebb5 100644
--- a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java
+++ b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java
@@ -37,7 +37,8 @@
 
         HashMap<String, Object> lift1 = new HashMap<>();
         lift1.put("status", new DbData("DB101.0", (short) 16));//鎻愬崌鏈烘暟鎹�
-        lift1.put("staStatus", new DbData("DB102.0", (short) 14));//绔欑偣鏁版嵁
+        lift1.put("staStatusTray", new DbData("DB102.0", (short) 14));//绔欑偣鏁版嵁
+        lift1.put("staStatusCar", new DbData("DB102.50", (short) 14));//绔欑偣鏁版嵁
         lift1.put("write", new DbData("DB103.0", null));//鍐欏叆鏁版嵁
         lift1.put("writeConfirm", new DbData("DB103.8", null));//鍐欏叆纭鏁版嵁
         lift1.put("confirm", new DbData("DB103.10", null));//纭鍛戒护
@@ -45,7 +46,8 @@
 
         HashMap<String, Object> lift2 = new HashMap<>();
         lift2.put("status", new DbData("DB104.0", (short) 16));//鎻愬崌鏈烘暟鎹�
-        lift2.put("staStatus", new DbData("DB105.0", (short) 14));//绔欑偣鏁版嵁
+        lift1.put("staStatusTray", new DbData("DB105.0", (short) 14));//绔欑偣鏁版嵁
+        lift1.put("staStatusCar", new DbData("DB105.50", (short) 14));//绔欑偣鏁版嵁
         lift2.put("write", new DbData("DB106.0", null));//鍐欏叆鏁版嵁
         lift2.put("writeConfirm", new DbData("DB106.8", null));//鍐欏叆纭鏁版嵁
         lift2.put("confirm", new DbData("DB106.10", null));//纭鍛戒护
diff --git a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java
index b5d31d7..44a45d6 100644
--- a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java
+++ b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java
@@ -168,7 +168,7 @@
                 OutputQueue.FORKLIFT.offer(MessageFormat.format("銆恵0}銆憑1}璇诲彇璐у弶鎻愬崌鏈虹姸鎬佷俊鎭け璐�", DateUtils.convert(new Date()), slave.getId()));
             }
 
-            OperateResultExOne<byte[]> result2 = this.masterThread.read(this.slave.getId(), "staStatus");
+            OperateResultExOne<byte[]> result2 = this.masterThread.read(this.slave.getId(), "staStatusTray");
             if (result2.IsSuccess) {
                 for (int i = 0; i < this.slave.getSta().size(); i++) {
                     ForkLiftSlave.Sta sta = this.slave.getSta().get(i);
@@ -176,10 +176,23 @@
                         continue;
                     }
 
+                    short val = siemensS7Net.getByteTransform().TransInt16(result2.Content, i * 2);
                     ForkLiftStaProtocol forkLiftStaProtocol = forkLiftStaProtocols.get(i);
-                    boolean[] status1 = siemensS7Net.getByteTransform().TransBool(result2.Content, i * 2, 2);
-                    forkLiftStaProtocol.setHasTray(status1[0]);
-                    forkLiftStaProtocol.setHasCar(status1[1]);
+                    forkLiftStaProtocol.setHasTray(val == 1);
+                }
+            }
+
+            OperateResultExOne<byte[]> result3 = this.masterThread.read(this.slave.getId(), "staStatusCar");
+            if (result3.IsSuccess) {
+                for (int i = 0; i < this.slave.getSta().size(); i++) {
+                    ForkLiftSlave.Sta sta = this.slave.getSta().get(i);
+                    if (forkLiftStaProtocols.isEmpty()) {
+                        continue;
+                    }
+
+                    short val = siemensS7Net.getByteTransform().TransInt16(result3.Content, i * 2);
+                    ForkLiftStaProtocol forkLiftStaProtocol = forkLiftStaProtocols.get(i);
+                    forkLiftStaProtocol.setHasCar(val == 1);
                 }
             }
 
diff --git "a/src/main/resources/docs/\345\217\260\345\215\207\345\233\233\345\220\221\345\272\223WCS\344\270\216\350\264\247\345\217\211\346\217\220\345\215\207\346\234\272PLC\351\200\232\350\256\257\346\216\245\345\217\243\345\215\217\350\256\256.docx" "b/src/main/resources/docs/\345\217\260\345\215\207\345\233\233\345\220\221\345\272\223WCS\344\270\216\350\264\247\345\217\211\346\217\220\345\215\207\346\234\272PLC\351\200\232\350\256\257\346\216\245\345\217\243\345\215\217\350\256\256.docx"
index 30623eb..7387c6b 100644
--- "a/src/main/resources/docs/\345\217\260\345\215\207\345\233\233\345\220\221\345\272\223WCS\344\270\216\350\264\247\345\217\211\346\217\220\345\215\207\346\234\272PLC\351\200\232\350\256\257\346\216\245\345\217\243\345\215\217\350\256\256.docx"
+++ "b/src/main/resources/docs/\345\217\260\345\215\207\345\233\233\345\220\221\345\272\223WCS\344\270\216\350\264\247\345\217\211\346\217\220\345\215\207\346\234\272PLC\351\200\232\350\256\257\346\216\245\345\217\243\345\215\217\350\256\256.docx"
Binary files differ

--
Gitblit v1.9.1