From c59bcfa4429a5d67842ebaa492db1fa11a3e97fc Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期四, 10 七月 2025 09:21:25 +0800 Subject: [PATCH] 输送线异常提示 --- src/main/java/com/zy/core/thread/SiemensDevpThread.java | 87 ++++++++++++++++++++++++++++++++----------- 1 files changed, 65 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java index f129732..b6a1c2b 100644 --- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java +++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java @@ -197,6 +197,7 @@ } } + @Override public boolean connect() { boolean result = false; @@ -223,6 +224,8 @@ * 璇诲彇鐘舵�� ====> 鏁村潡plc */ private void read() throws InterruptedException { + // 鏇存柊鍏ュ嚭搴撴ā寮� + updateIoMode(); ArrayList<Integer> staNos = getStaNo(); int staNoSize = staNos.size(); @@ -314,6 +317,12 @@ } StaProtocol staProtocol = station.get(barcodeSite2.get(i)); if (staProtocol != null) { + while (iterator.hasNext()) { + String next = iterator.next(); + if (next.length() < 7 || next.length() > 10 || !next.matches("[0-9]*")) { + iterator.remove(); + } + } staProtocol.setMatIdList(barcodeList); } } @@ -406,11 +415,11 @@ } // 璇绘闈㈡晠闅滃弽棣� - OperateResultExOne<byte[]> resultErr = siemensS7Net.Read("DB101.922.0", (short) (16 * 4)); + OperateResultExOne<byte[]> resultErr = siemensS7Net.Read("DB101.2340.0", (short) (16 * 2)); if (resultErr.IsSuccess) { for (int i = 0; i < 16; i++) { Integer siteId = staNos.get(i); // 绔欑偣缂栧彿 - boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr.Content, i * 4, 1); + boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr.Content, i * 2, 2); StaProtocol staProtocol = station.get(siteId); staProtocol.setBreakerErr(status[0]); staProtocol.setInfraredErr(status[1]); @@ -420,7 +429,11 @@ staProtocol.setInverterErr(status[5]); staProtocol.setContactErr(status[6]); staProtocol.setUpcontactErr(status[7]); - + staProtocol.setPushTheEnvelopeErr(status[8]); + staProtocol.setRaiseTheLowerLimitErr(status[9]); + staProtocol.setLeftProtectionTriggersErr(status[10]); + staProtocol.setRightProtectionTriggersErr(status[11]); + staProtocol.setGratingBlockingErr(status[12]); } } @@ -530,7 +543,7 @@ } int i = barcodeSite2.indexOf(staProtocol.getSiteId()); if (i != -1) { - heightAddress = "DB104." + (i * 4); + heightAddress = "DB104." + (i * 2); } OperateResult writeResult; @@ -539,10 +552,12 @@ //浠诲姟涓嬪彂鎴愬姛鏍囪瘑 boolean writeFlag = false; while (writeCount < 5) { - OperateResult writeResult1 = siemensS7Net.Write(workNoAddress, staProtocol.getWorkNo()); // 宸ヤ綔鍙� - OperateResult writeResult2 = siemensS7Net.Write(staNoAddress, staProtocol.getStaNo()); // 鐩爣绔� if (!Cools.isEmpty(staProtocol.getHeight()) && heightAddress != null) { - OperateResult writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); // 鐩爣绔� + OperateResult writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); + writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); + writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); + writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); + log.info("鍐欏叆楂樺害鍦板潃锛歿},{}", heightAddress, writeResult3); if (!writeResult3.IsSuccess) { //fangzhi xierukushibai,jiu duoxiejici,meixunhuan writeResult3 = siemensS7Net.Write(heightAddress, Short.parseShort(staProtocol.getHeight())); @@ -551,6 +566,8 @@ } } } + OperateResult writeResult1 = siemensS7Net.Write(workNoAddress, staProtocol.getWorkNo()); // 宸ヤ綔鍙� + OperateResult writeResult2 = siemensS7Net.Write(staNoAddress, staProtocol.getStaNo()); // 鐩爣绔� if (writeResult1.IsSuccess && writeResult2.IsSuccess) { Thread.sleep(200); OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index * 4, (short) 2); @@ -732,27 +749,53 @@ // 鏇存柊鍏ュ嚭搴撴ā寮� private void updateIoMode() throws InterruptedException { if (slave.getId() == 1 && this.ioModeOf1F1 != null) { - if (!siemensS7Net.Write("DB4.2", this.ioModeOf1F1.id).IsSuccess) { - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎21F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={2}", slave.getId())); + if (!siemensS7Net.Write("DB105.0", this.ioModeOf1F1.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎21F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎1F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + } + } + if (slave.getId() == 1 && this.ioModeOf1F2 != null) { + if (!siemensS7Net.Write("DB105.2", this.ioModeOf1F2.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎2F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎1F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + } + } + if (slave.getId() == 1 && this.ioModeOf1F3 != null) { + if (!siemensS7Net.Write("DB105.4", this.ioModeOf1F3.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎1F3鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + } + } + if (slave.getId() == 1 && this.ioModeOf1F4 != null) { + if (!siemensS7Net.Write("DB105.6", this.ioModeOf1F4.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎1F4鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + } + } + if (slave.getId() == 1 && this.ioModeOf1F5 != null) { + if (!siemensS7Net.Write("DB105.8", this.ioModeOf1F5.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎1F5鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + } + } + + + if (slave.getId() == 1 && this.ioModeOf2F1 != null) { + if (!siemensS7Net.Write("DB105.10", this.ioModeOf2F1.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎2F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); log.error("鍐欏叆杈撻�佺嚎2F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); } } - if (slave.getId() == 1 && this.ioModeOf1F2 != null) { - if (!siemensS7Net.Write("DB4.4", this.ioModeOf1F2.id).IsSuccess) { - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎2F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={3}", slave.getId())); + if (slave.getId() == 1 && this.ioModeOf2F2 != null) { + if (!siemensS7Net.Write("DB105.12", this.ioModeOf2F2.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); log.error("鍐欏叆杈撻�佺嚎2F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); } } - if (slave.getId() == 1 && this.ioModeOf1F2 != null) { - if (!siemensS7Net.Write("DB4.2", this.ioModeOf1F2.id).IsSuccess) { - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={2}", slave.getId())); - log.error("鍐欏叆杈撻�佺嚎3F1鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); - } - } - if (slave.getId() == 1 && this.ioModeOf1F2 != null) { - if (!siemensS7Net.Write("DB4.4", this.ioModeOf1F2.id).IsSuccess) { - OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={3}", slave.getId())); - log.error("鍐欏叆杈撻�佺嚎3F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); + if (slave.getId() == 1 && this.ioModeOf2F3 != null) { + if (!siemensS7Net.Write("DB105.14", this.ioModeOf2F3.id).IsSuccess) { + OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戝啓鍏ヨ緭閫佺嚎3F2鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={1}", slave.getId())); + log.error("鍐欏叆杈撻�佺嚎2F3鍏ュ嚭搴撴ā寮忓け璐ャ�傝緭閫佺嚎plc缂栧彿={}", slave.getId()); } } } -- Gitblit v1.9.1