From b79a7ba5f841d203dc3e374692c781442f52c85c Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 18 九月 2023 15:19:51 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensDevpThread.java | 45 ++++++++++++--------------------------------- 1 files changed, 12 insertions(+), 33 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java index 6273d86..37acf7a 100644 --- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java +++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java @@ -43,9 +43,15 @@ private short heartBeatVal = 1; private int barcodeSize = 1; public static final ArrayList<Integer> staNos = new ArrayList<Integer>() {{ - add(100);add(101);add(102); - add(103);add(104);add(105); - add(106);add(107);add(108); + add(100);add(101); + add(102);add(103); + add(104);add(105); + add(200);add(201); + add(202);add(203); + add(204);add(205); + add(300);add(301); + add(340);add(341); + add(345);add(346); }}; public static final ArrayList<Integer> outInStaNos = new ArrayList<Integer>() {{ @@ -126,7 +132,7 @@ * 璇诲彇鐘舵�� ====> 鏁村潡plc */ private void read() throws InterruptedException { - OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) (staNos.size()*4)); + OperateResultExOne<byte[]> result = siemensS7Net.Read("DB1000.0", (short) (staNos.size()*4)); if (result.IsSuccess) { for (int i = 0; i < staNos.size(); i++) { Integer siteId = staNos.get(i); // 绔欑偣缂栧彿 @@ -141,7 +147,7 @@ } } Thread.sleep(200); - OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB101.0", (short) (staNos.size())); + OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB1001.0", (short) (staNos.size())); if (result1.IsSuccess) { for (int i = 0; i < staNos.size(); i++) { Integer siteId = staNos.get(i); // 绔欑偣缂栧彿 @@ -480,8 +486,6 @@ OperateResult writeResult; //浠诲姟涓嬪彂娆℃暟 int writeCount = 0; - //浠诲姟涓嬪彂鎴愬姛鏍囪瘑 - boolean writeFlag = false; while(writeCount < 5){ writeResult = siemensS7Net.Write("DB100.310", staProtocol.getRollback102().shortValue()); if(writeResult.IsSuccess){ @@ -491,9 +495,8 @@ short rollback = siemensS7Net.getByteTransform().TransInt16(readResult.Content, 0); if (staProtocol.getRollback102() == (int) rollback) { //浠诲姟鍛戒护鍐欏叆鎴愬姛 - writeFlag = true; log.info("鍐欏叆杈撻�佺嚎鍛戒护鍚庤繑鍥炴垚鍔燂紝骞朵笖鍥炶鎴愬姛銆傝緭閫佺嚎plc缂栧彿={}锛寋}锛屽啓鍏ユ鏁�={}", slave.getId(), JSON.toJSON(staProtocol), writeCount); - break; + return; } else {//杩斿洖缁撴灉鏄垚鍔熶簡锛屼絾鏄湡瀹炲�间笉鐩稿悓 writeCount++; OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎鍛戒护鍚庤繑鍥炴垚鍔燂紝浣嗘槸璇诲彇浠诲姟鍊间笉涓�鑷淬�傝緭閫佺嚎plc缂栧彿={1}锛岀珯鐐规暟鎹�={2},鍐欏叆娆℃暟={3}", @@ -513,30 +516,6 @@ log.error("鍐欏叆杈撻�佺嚎鍛戒护澶辫触銆傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={},鍐欏叆娆℃暟={}", slave.getId(), JSON.toJSON(staProtocol), writeCount); } Thread.sleep(200); - } - - //鍐欏懡浠ゅ皾璇曚簡5娆¤繕鏄け璐ヤ簡 - if(!writeFlag){ - staProtocol = station.get(staProtocol.getSiteId()); - if (staProtocol.getWorkNo() == 0 && staProtocol.getStaNo() ==0) { - staProtocol.setPakMk(true); - } - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎鍛戒护灏濊瘯5娆″け璐ャ�傝緭閫佺嚎plc缂栧彿={1}锛岀珯鐐规暟鎹�={2}", slave.getId(), JSON.toJSON(staProtocol))); - log.error("鍐欏叆杈撻�佺嚎鍛戒护灏濊瘯5娆″け璐ャ�傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={}", slave.getId(), JSON.toJSON(staProtocol)); - - //閲嶆柊娣诲姞鏁版嵁鍒颁换鍔¢槦鍒� - boolean result = MessageQueue.offer(SlaveType.Devp, slave.getId(), new Task(5, staProtocol)); - read();//璇诲彇1娆¤澶囩姸鎬� - return; - } else { - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆� 杈撻�佺嚎鍛戒护涓嬪彂鎴愬姛 [id:{1}] >>>>> {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(staProtocol))); - log.info("杈撻�佺嚎鍛戒护涓嬪彂 [id:{}] >>>>> 鍛戒护涓嬪彂鎴愬姛锛� {}", slave.getId(), JSON.toJSON(staProtocol)); - - Integer siteId = staProtocol.getSiteId(); - staProtocol = station.get(siteId); - if ((siteId == 101 || siteId == 201)&&(staProtocol.getWorkNo() == 0 && staProtocol.getStaNo() ==0)) { - staProtocol.setPakMk(true); - } } } -- Gitblit v1.9.1