From e83ca4363d51c6f0d6b677644c8d472a8b53383d Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期二, 06 十二月 2022 14:14:25 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 56 ++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 36 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 85da205..9cb7875 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -42,15 +42,19 @@
private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
private short heartBeatVal = 1;
public static final ArrayList<Integer> staNos = new ArrayList<Integer>() {{
- add(101);add(102);add(103);add(104);
- add(201);add(202);add(203);add(204);
- add(301);add(302);add(303);add(304);add(305);add(306);add(401);add(402);
+ add(100);add(101);add(102);add(103);
+ add(104);add(105);add(106);add(110);
+ add(111);add(112);add(113);add(114);
+ add(115);add(116);
+ add(200);add(201);add(202);add(203);
+ add(204);add(205);add(300);add(301);
+ add(302);add(303);add(304);add(305);
}};
/**
* 鏉$爜鏁伴噺
*/
- private int barcodeSize = 3;
+ private int barcodeSize = 1;
/**
* 鍏ュ嚭搴撴ā寮�
@@ -126,10 +130,11 @@
*/
private void read() throws InterruptedException {
// // 鏇存柊鍏ュ嚭搴撴ā寮�
- updateIoMode();
+// updateIoMode();
int staNoSize = staNos.size();
- OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) (staNoSize*4));
- if (result.IsSuccess) {
+ OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) (staNoSize*2));
+ OperateResultExOne<byte[]> result4 = siemensS7Net.Read("DB101.0", (short) (staNoSize*2));
+ if (result.IsSuccess && result4.IsSuccess) {
for (int i = 0; i < staNoSize; i++) {
Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
StaProtocol staProtocol = station.get(siteId);
@@ -138,9 +143,9 @@
staProtocol.setSiteId(siteId);
station.put(siteId, staProtocol);
}
- staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4)); // 宸ヤ綔鍙�
+ staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*2)); // 宸ヤ綔鍙�
- staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4 + 2)); // 鐩爣绔�
+ staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result4.Content, i*2)); // 鐩爣绔�
}
}
// Thread.sleep(200);
@@ -158,11 +163,11 @@
// }
// }
Thread.sleep(200);
- OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.100", (short) (staNoSize));
+ OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB102.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, 1);
+ boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, i*2, 1);
StaProtocol staProtocol = station.get(siteId);
staProtocol.setAutoing(status[0]); // 鑷姩
staProtocol.setLoading(status[1]); // 鏈夌墿
@@ -179,8 +184,9 @@
}
}
+ //鏉$爜鎵弿鍣�
Thread.sleep(200);
- OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB100.150",(short)(barcodeSize*8));
+ OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB100.200",(short)(barcodeSize*8));
if (result2.IsSuccess) {
for (int i = 0; i < barcodeSize; i++) {
String barcode = siemensS7Net.getByteTransform().TransString(result2.Content,i*8,8, "UTF-8");
@@ -191,11 +197,21 @@
}
}
-
-// OperateResultExOne<Short> result2 = siemensS7Net.ReadInt16("DB200.0");
-// if (result2.IsSuccess) {
-// this.ioMode = IoModeType.get(result2.Content);
+// //RGV灏忚溅
+// Thread.sleep(200);
+// OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.160",(short)2);
+// if (result3.IsSuccess) {
+// Integer siteId = 16;
+// StaProtocol staProtocol = station.get(siteId);
+// if (null == staProtocol) {
+// staProtocol = new StaProtocol();
+// staProtocol.setSiteId(siteId);
+// station.put(siteId, staProtocol);
+// }
+// staProtocol.setNearbySta(String.valueOf(siemensS7Net.getByteTransform().TransInt16(result3.Content, 0)));
// }
+
+
if (result.IsSuccess && result1.IsSuccess) {
@@ -236,11 +252,11 @@
short[] array = new short[2];
array[0] = staProtocol.getWorkNo();
array[1] = staProtocol.getStaNo();
- OperateResult write = siemensS7Net.Write("DB100." + index*4, array);
+// OperateResult write = siemensS7Net.Write("DB100." + index*4, array);
-// OperateResult write = siemensS7Net.Write("DB100." + index*2, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
-// Thread.sleep(500);
-// OperateResult write1 = siemensS7Net.Write("DB101." + index*2, staProtocol.getStaNo()); // 鐩爣绔�
+ OperateResult write = siemensS7Net.Write("DB100." + index*2, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
+ Thread.sleep(500);
+ OperateResult write1 = siemensS7Net.Write("DB101." + index*2, staProtocol.getStaNo()); // 鐩爣绔�
if (!write.IsSuccess) {
staProtocol = station.get(staProtocol.getSiteId());
--
Gitblit v1.9.1