From 929e5fbd585a860f4ea76653156d874b629a1ba7 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期五, 05 一月 2024 16:25:57 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 72 +++++++++++++++++++++--------------
1 files changed, 43 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 44a5806..7389f6f 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -161,7 +161,7 @@
// updateIoMode();
ArrayList<Integer> staNos = getStaNo();
int staNoSize = staNos.size();
- OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) (staNoSize*4));
+ OperateResultExOne<byte[]> result = siemensS7Net.Read("DB101.0", (short) (staNoSize*8));
if (result.IsSuccess) {
for (int i = 0; i < staNoSize; i++) {
Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
@@ -171,9 +171,23 @@
staProtocol.setSiteId(siteId);
station.put(siteId, staProtocol);
}
- staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4)); // 宸ヤ綔鍙�
+ staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt32(result.Content, i*8)); // 宸ヤ綔鍙�
- staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4 + 2)); // 鐩爣绔�
+ staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt32(result.Content, i*8 + 4)); // 鐩爣绔�
+
+ boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, i*8 + 6, 2);
+ staProtocol.setAutoing(status[0]); // 鑷姩
+ staProtocol.setLoading(status[1]); // 鏈夌墿
+ staProtocol.setInEnable(status[2]); // 鍙叆
+ staProtocol.setOutEnable(status[3]);// 鍙嚭
+ staProtocol.setEmptyMk(status[4]); // 绌烘澘淇″彿
+ staProtocol.setFullPlt(status[5]); // 婊℃墭鐩�
+ staProtocol.setHigh(status[6]); // 楂樺簱浣�
+ staProtocol.setLow(status[7]); // 浣庡簱浣�
+
+ if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
+ staProtocol.setPakMk(true);
+ }
}
}
// Thread.sleep(200);
@@ -190,34 +204,34 @@
// staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result0.Content, i*2)); // 鐩爣绔�
// }
// }
- Thread.sleep(200);
- OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.100", (short) (staNoSize * 2));
- if (result1.IsSuccess) {
- for (int i = 0; i < staNoSize; i++) {
- Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
- boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, i*2, 1);
- StaProtocol staProtocol = station.get(siteId);
- staProtocol.setAutoing(status[0]); // 鑷姩
- staProtocol.setLoading(status[1]); // 鏈夌墿
- staProtocol.setInEnable(status[2]); // 鍙叆
- staProtocol.setOutEnable(status[3]);// 鍙嚭
- staProtocol.setEmptyMk(status[4]); // 绌烘澘淇″彿
- staProtocol.setFullPlt(status[5]); // 婊℃墭鐩�
- staProtocol.setHigh(status[6]); // 楂樺簱浣�
- staProtocol.setLow(status[7]); // 浣庡簱浣�
-
- if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
- staProtocol.setPakMk(true);
- }
- }
- }
+// Thread.sleep(200);
+// OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.100", (short) (staNoSize * 2));
+// if (result1.IsSuccess) {
+// for (int i = 0; i < staNoSize; i++) {
+// Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
+// boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, i*2, 1);
+// StaProtocol staProtocol = station.get(siteId);
+// staProtocol.setAutoing(status[0]); // 鑷姩
+// staProtocol.setLoading(status[1]); // 鏈夌墿
+// staProtocol.setInEnable(status[2]); // 鍙叆
+// staProtocol.setOutEnable(status[3]);// 鍙嚭
+// staProtocol.setEmptyMk(status[4]); // 绌烘澘淇″彿
+// staProtocol.setFullPlt(status[5]); // 婊℃墭鐩�
+// staProtocol.setHigh(status[6]); // 楂樺簱浣�
+// staProtocol.setLow(status[7]); // 浣庡簱浣�
+//
+// if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
+// staProtocol.setPakMk(true);
+// }
+// }
+// }
//鏉$爜鎵弿鍣�
Thread.sleep(200);
- OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB100.150",(short)(barcodeSize*8));
+ OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.102",(short)(barcodeSize*10));
if (result2.IsSuccess) {
for (int i = 0; i < barcodeSize; i++) {
- String barcode = siemensS7Net.getByteTransform().TransString(result2.Content,i*8,8, "UTF-8");
+ String barcode = siemensS7Net.getByteTransform().TransString(result2.Content,i*10,10, "UTF-8");
BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, i + 1);
if(!Cools.isEmpty(barcodeThread) && !barcodeThread.getBarcode().equals(barcode)) {
barcodeThread.setBarcode(barcode);
@@ -241,7 +255,7 @@
- if (result.IsSuccess && result1.IsSuccess) {
+ if (result.IsSuccess) {
OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
@@ -278,10 +292,10 @@
}
ArrayList<Integer> staNos = getStaNo();
int index = staNos.indexOf(staProtocol.getSiteId());
- short[] array = new short[2];
+ int[] array = new int[2];
array[0] = staProtocol.getWorkNo();
array[1] = staProtocol.getStaNo();
- OperateResult write = siemensS7Net.Write("DB100." + index*4, array);
+ OperateResult write = siemensS7Net.Write("DB100." + index*8, array);
// OperateResult write = siemensS7Net.Write("DB100." + index*2, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
// Thread.sleep(500);
--
Gitblit v1.9.1