From fb9405a0482b22cd9411ab3e24163f4fb17a5260 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期日, 03 一月 2021 13:46:54 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/core/enums/CrnTaskModeType.java    |    4 +---
 src/main/java/com/zy/core/thread/SiemensCrnThread.java  |   32 ++++++++++++++++++++------------
 src/main/java/com/zy/core/model/command/CrnCommand.java |   14 ++++++++++++--
 3 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/zy/core/enums/CrnTaskModeType.java b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
index e465340..968c075 100644
--- a/src/main/java/com/zy/core/enums/CrnTaskModeType.java
+++ b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
@@ -8,9 +8,7 @@
     LOC_MOVE(3),    // 搴撲綅绉昏浆
     SITE_MOVE(4),    // 绔欎綅绉昏浆
     GO_ORIGIN(5),    // 鍥炲師鐐�
-    OFFSET_MOVE(7),    // 鍧愭爣绉昏
-    TIMING(90),     // 鏍℃椂
-    CANCEL(99),     // 鍙栨秷褰撳墠浠诲姟
+    CLEAR(7),       // 娓呴敊
     ;
 
     public Integer id;
diff --git a/src/main/java/com/zy/core/model/command/CrnCommand.java b/src/main/java/com/zy/core/model/command/CrnCommand.java
index 1d951f6..cb00a30 100644
--- a/src/main/java/com/zy/core/model/command/CrnCommand.java
+++ b/src/main/java/com/zy/core/model/command/CrnCommand.java
@@ -18,7 +18,7 @@
     private Integer crnNo = 0;
 
     // 浠诲姟瀹屾垚纭浣�
-    private Short ackFinish = 0;
+//    private Short ackFinish = 0;
 
     // 浠诲姟鍙�
     private Short taskNo = 0;
@@ -50,6 +50,12 @@
     // 婧愪綅缃眰鍙�
     private Short sourcePosZ = 0;
 
+    // 婧愮珯
+    private Short sourceStaNo = 0;
+
+    // 婧愬贩閬�
+    private Short sourceLane = 0;
+
     // 鐩爣浣嶇疆鎺掑彿
     private Short destinationPosX = 0;
 
@@ -59,7 +65,11 @@
     // 鐩爣浣嶇疆灞傚彿
     private Short destinationPosZ = 0;
 
-    private Short taskSend = 0;
+    // 鐩爣绔�
+    private Short destinationStaNo = 0;
+
+    // 鐩爣宸烽亾
+    private Short destinationLane = 0;
 
     public void setTaskMode(Short taskMode){
         this.taskMode = taskMode;
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 7a2aa32..46b2620 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -73,7 +73,7 @@
                         }
                         command.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
                         command.setTaskNo((short) 0); // 宸ヤ綔鍙�
-                        command.setAckFinish((short) 1);  // 浠诲姟瀹屾垚纭浣�
+//                        command.setAckFinish((short) 1);  // 浠诲姟瀹屾垚纭浣�
                         command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
                         command.setSourcePosX((short)0);     // 婧愬簱浣嶆帓
                         command.setSourcePosY((short)0);     // 婧愬簱浣嶅垪
@@ -97,7 +97,7 @@
     @Override
     public boolean connect() {
         boolean result = false;
-        siemensNet = new SiemensS7Net(SiemensPLCS.S300, slave.getIp());
+        siemensNet = new SiemensS7Net(SiemensPLCS.S1200, slave.getIp());
         siemensNet.setRack(slave.getRack().byteValue());
         siemensNet.setSlot(slave.getSlot().byteValue());
         OperateResult connect = siemensNet.ConnectServer();
@@ -117,7 +117,7 @@
      * 璇诲彇鐘舵��
      */
     private void readStatus(){
-        OperateResultExOne<byte[]> result = siemensNet.Read("DB8.18", (short) 62);
+        OperateResultExOne<byte[]> result = siemensNet.Read("DB11.2", (short) 90);
         if (result.IsSuccess) {
             if (null == crnProtocol) {
                 crnProtocol = new CrnProtocol();
@@ -187,17 +187,25 @@
             return false;
         }
         command.setCrnNo(slave.getId());
-        short[] array = new short[9];
-        array[0] = command.getAckFinish();
-        array[1] = command.getTaskNo();
-        array[2] = command.getTaskMode();
+        short[] array = new short[13];
+        if (!command.getTaskModeType().equals(CrnTaskModeType.CLEAR)) {
+            array[0] = 5;
+        } else {
+            array[0] = 7;
+        }
+        array[1] = command.getSourcePosZ();
+        array[2] = command.getSourcePosY();
         array[3] = command.getSourcePosX();
-        array[4] = command.getSourcePosY();
-        array[5] = command.getSourcePosZ();
+        array[4] = command.getDestinationPosZ();
+        array[5] = command.getDestinationPosY();
         array[6] = command.getDestinationPosX();
-        array[7] = command.getDestinationPosY();
-        array[8] = command.getDestinationPosZ();
-        OperateResult result = siemensNet.Write("DB8.0", array);
+        array[7] = command.getSourceStaNo();
+        array[8] = command.getDestinationStaNo();
+        array[9] = command.getSourceLane();
+        array[10] = command.getDestinationLane();
+        array[11] =
+
+        OperateResult result = siemensNet.Write("DB10.0", array);
         if (result.IsSuccess) {
 
             try {

--
Gitblit v1.9.1