From c0fc45a7cd97c2ded531b85575e6f26ff269db1b Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期二, 24 二月 2026 15:22:25 +0800
Subject: [PATCH] 第一次进场调试
---
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 41 +++++++++++++++++++++++------------------
1 files changed, 23 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 682bf4a..c77b5a1 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -44,12 +44,9 @@
private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
private short heartBeatVal = 1;
private StaError1 staError1;
-// public static final ArrayList<Integer> staNos = new ArrayList<Integer>() {{
-//
-// }};
public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
add(101);add(102);add(103);
- add(104);add(105);
+ add(104);add(105);add(106);
}};
/*public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{
@@ -65,7 +62,7 @@
}};*/
public static final ArrayList<Integer> BarcodeList1 = new ArrayList<Integer>() {{
- add(1); add(2);add(3);add(4);add(5);
+ add(1); add(2);add(3);add(4);add(5);add(6);
}};
/* public static final ArrayList<Integer> BarcodeList2 = new ArrayList<Integer>() {{
@@ -78,12 +75,13 @@
}};*/
public static final ArrayList<Integer> staNosErrList1 = new ArrayList<Integer>() {{
- add(101);
- add(102);add(103);add(104);add(105);
+// add(101);
+// add(102);add(103);add(104);add(105);
+ add(102);
}};
public static final ArrayList<Integer> staNoWeight1 = new ArrayList<Integer>() {{
- add(101);add(102);add(103);add(104);add(105);
+ add(101);add(102);add(103);add(104);add(105);add(106);
}};
/*public static final ArrayList<Integer> staNoWeight2 = new ArrayList<Integer>() {{
@@ -293,7 +291,7 @@
boolean[] status = null;
int offset = getOffsetFromSiteId(siteId);//鍙栦綑鑾峰緱瀵瑰簲db鍧楁暟鎹�
- staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt32(result.Content, offset)); // 宸ヤ綔鍙�
+ staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt32(result.Content, i * 8)); // 宸ヤ綔鍙�
/*if (staNoWeight.contains(siteId)) {
if(staNoWeight.size() == 4){
staProtocol.setWeight(siemensS7Net.getByteTransform().TransInt32(resultWeight2.Content, j));
@@ -304,8 +302,8 @@
}
}*/
- staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, offset+ 4)); // 鐩爣绔�
- status = siemensS7Net.getByteTransform().TransBool(result.Content, offset+ 6, 2);
+ staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i * 8 + 4)); // 鐩爣绔�
+ status = siemensS7Net.getByteTransform().TransBool(result.Content, i * 8 + 6, 1);
staProtocol.setAutoing(status[0]); // 鑷姩
staProtocol.setLoading(status[1]); // 鏈夌墿
@@ -316,6 +314,12 @@
staProtocol.setHigh(status[6]); // 楂樺簱浣�
staProtocol.setLow(status[7]); // 浣庡簱浣�
+ //璇诲彇纾呯Г
+ if (staProtocol.getSiteId() == 102){
+ resultWeight = siemensS7Net.Read("DB101.1272", (short) (4));
+ staProtocol.setWeight(siemensS7Net.getByteTransform().TransInt16(resultWeight.Content, 0));
+ }
+
if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
staProtocol.setPakMk(true);
}
@@ -324,7 +328,7 @@
//鏉$爜鎵弿鍣�
ArrayList<Integer> barcodeList = getBarcodeList();
- OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.2848", (short) (barcodeList.size() * 8));
+ OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.602", (short) (barcodeList.size() * 8));
if (result2.IsSuccess) {
for (int i = 0; i < barcodeList.size(); i++) {
Integer barcodeId = barcodeList.get(i);
@@ -338,11 +342,12 @@
//澶栧舰妫�娴�
ArrayList<Integer> staNoErrs = staNosErrList;
int staNoErrsSize = staNoErrs.size();
- OperateResultExOne<byte[]> resultErr = siemensS7Net.Read("DB101.2808", (short) (staNoErrsSize * 4));
+ OperateResultExOne<byte[]> resultErr = siemensS7Net.Read("DB101.802", (short) (staNoErrsSize * 7));
if (resultErr.IsSuccess) {
for (int i = 0; i < staNoErrsSize; i++) {
Integer siteId = staNoErrs.get(i); // 绔欑偣缂栧彿
- boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr.Content, i * 4 + 2, 1);
+// boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr.Content, i * 4 + 2, 1);
+ boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr.Content, i * 7, 1);
StaProtocol staProtocol = station.get(siteId);
staProtocol.setFrontErr(status[0]);
staProtocol.setBackErr(status[1]);
@@ -439,17 +444,17 @@
return;
}
ArrayList<Integer> staNos = getStaNo();
-// int index = staNos.indexOf(staProtocol.getSiteId());
- int offset = getOffsetFromSiteId2(staProtocol.getSiteId());//鍙栦綑鑾峰緱瀵瑰簲db鍧楁暟鎹�
+ int index = staNos.indexOf(staProtocol.getSiteId());
+// int offset = getOffsetFromSiteId2(staProtocol.getSiteId());//鍙栦綑鑾峰緱瀵瑰簲db鍧楁暟鎹�
OperateResult write = null;
OperateResult write1 = null;
//浠诲姟涓嬪彂娆℃暟
int writeCount = 0;
do {
- write = siemensS7Net.Write("DB100." + offset, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
+ write = siemensS7Net.Write("DB100." + index * 6, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
Thread.sleep(200);
- write1 = siemensS7Net.Write("DB100." + (offset+4), staProtocol.getStaNo().shortValue()); // 鐩爣绔�
+ write1 = siemensS7Net.Write("DB100." + (index * 6 + 4), staProtocol.getStaNo().shortValue()); // 鐩爣绔�
if(write.IsSuccess && write1.IsSuccess){
log.error("鍐欏叆杈撻�佺嚎鍛戒护鎴愬姛銆傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={},鍐欏叆娆℃暟={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
break;
--
Gitblit v1.9.1