From 1ba71b9ee89817b1931e950c966a320c75ef02c3 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 08 九月 2025 15:18:53 +0800
Subject: [PATCH] 侧面输送线出库条码对接
---
src/main/java/com/zy/core/model/protocol/StaProtocol.java | 3 +
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 1
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 73 ++++++++++++++++++++++++++++++++++++
3 files changed, 77 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index ed84434..c3948e6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -247,6 +247,7 @@
log.info("涓嬪彂杈撻�佺嚎浠诲姟锛歵askWrk:" + JSON.toJSONString(taskWrk));
staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
staProtocol.setStaNo(Short.valueOf(taskWrk.getTargetPoint()));
+ staProtocol.setBarcode(taskWrk.getBarcode());
if (!Cools.isEmpty(taskWrk.getType())) {
staProtocol.setHeight(taskWrk.getType());
}
diff --git a/src/main/java/com/zy/core/model/protocol/StaProtocol.java b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
index ab271a0..06e9ca6 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -70,6 +70,9 @@
// 楂樺害
private String height;
+ // 鏉$爜锛屼晶闈㈠嚭搴撶粰杈撻�佺嚎
+ private String barcode;
+
// 澶栧舰妫�娴� ------------------------------------------------------------------------
// 鍓嶈秴闄�
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 36d5733..f7a97a0 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -566,6 +566,33 @@
}
}
}
+ // 渚ч潰鍑哄簱锛岀粰杈撻�佺嚎鍐欐潯鐮�
+ Short staNo = staProtocol.getStaNo();
+ String barcode = staProtocol.getBarcode();
+ if (staNo == 203 || staNo == 207 || staNo == 212) {
+ if (Cools.isEmpty(barcode)) {
+ log.error("渚ч潰鍑哄簱鍒帮細{}绔欑偣锛屾潯鐮佸�间负绌猴紝浠诲姟鍙凤細{}", staNo, staProtocol.getWorkNo());
+ } else {
+
+ String[] split = barcode.split("#");
+ int offset = 48 + (staNo - 201) * 24;
+ byte[] bytes = new byte[(split.length + 1) * 6];
+ for (int j = 0, k = 0; j < split.length; j++) {
+ String s = split[j];
+ for (int m = 0; m < s.length(); m++) {
+ bytes[k++] = (byte) s.charAt(m);
+ }
+ }
+
+ OperateResult writeResult4 = siemensS7Net.Write("DB79" + offset, bytes);
+ if (writeResult4.IsSuccess) {
+ log.info("渚ч潰鍑哄簱鍒帮細{}绔欑偣锛岀粰杈撻�佺嚎鍐欐潯鐮侊細{}鎴愬姛", staNo, barcode);
+ } else {
+ log.error("渚ч潰鍑哄簱鍒帮細{}绔欑偣锛岀粰杈撻�佺嚎鍐欐潯鐮侊細{}澶辫触", staNo, barcode);
+ }
+ }
+ }
+
OperateResult writeResult1 = siemensS7Net.Write(workNoAddress, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
OperateResult writeResult2 = siemensS7Net.Write(staNoAddress, staProtocol.getStaNo()); // 鐩爣绔�
if (writeResult1.IsSuccess && writeResult2.IsSuccess) {
@@ -816,6 +843,52 @@
public void close() {
siemensS7Net.ConnectClose();
}
+ public static void main(String[] args) throws Exception {
+ DevpSlave slave = new DevpSlave();
+ slave.setIp("10.49.210.41");
+// SiemensDevpThread devpThread = new SiemensDevpThread(slave);
+// devpThread.connect();
+ SiemensS7Net siemensS7Net = new SiemensS7Net(SiemensPLCS.S1200, slave.getIp());
+ siemensS7Net.setRack(slave.getRack().byteValue());
+ siemensS7Net.setSlot(slave.getSlot().byteValue());
+ OperateResult connect = siemensS7Net.ConnectServer();
+ // 渚ч潰鍑哄簱锛岀粰杈撻�佺嚎鍐欐潯鐮�
+ Short staNo = 212;
+ String barcode = "800001#123456#811112#811113";
+ String[] split = barcode.split("#");
+ int offset = 48 + (staNo - 201) * 24;
+ byte[] bytes = new byte[(split.length + 1) * 6];
+ for (int j = 0, k = 0; j < split.length; j++) {
+ String s = split[j];
+ for (int m = 0; m < s.length(); m++) {
+ bytes[k++] = (byte) s.charAt(m);
+ }
+ }
+
+ OperateResult writeResult4 = siemensS7Net.Write("DB79" + offset, bytes);
+ if (writeResult4.IsSuccess) {
+ log.info("渚ч潰鍑哄簱鍒帮細{}绔欑偣锛岀粰杈撻�佺嚎鍐欐潯鐮侊細{}鎴愬姛", staNo, barcode);
+ } else {
+ log.error("渚ч潰鍑哄簱鍒帮細{}绔欑偣锛岀粰杈撻�佺嚎鍐欐潯鐮侊細{}澶辫触", staNo, barcode);
+ }
+
+// devpThread.write2(0);
+// devpThread.read();
+// // 鍐�
+// StaProtocol staProtocol = devpThread.getStation().get(1);
+// staProtocol.setWorkNo((short) 232);
+// staProtocol.setStaNo((short) 6);
+// staProtocol.setAutoing(true);
+// staProtocol.setEmptyMk(true);
+// staProtocol.setInEnable(true);
+// devpThread.write(staProtocol);
+// System.out.println("----------------------------------------");
+// // 璇�
+// devpThread.read();
+// System.out.println(JSON.toJSONString(devpThread.station));
+
+ }
+
}
--
Gitblit v1.9.1