From a4fdbb852841fcc9bcc78676e4551efcff384494 Mon Sep 17 00:00:00 2001 From: LSH <1> Date: 星期六, 08 六月 2024 11:17:43 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 48 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 33 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java index 192e9dc..53e5797 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -48,6 +48,7 @@ * 鍫嗗灈鏈烘槸鍚﹀湪鍥炲師鐐硅繍鍔ㄤ腑鏍囪 */ private boolean backHpFlag = false; + private boolean backHpFlagTwo = false; public SiemensCrnThread(CrnSlave slave) { this.slave = slave; @@ -135,6 +136,7 @@ crnProtocol.setMode((short) -1); // crnProtocol.setTaskNo((short)0); crnProtocol.setStatus((short)-1); + crnProtocol.setStatusTwo((short)-1); crnProtocol.setBay((short)0); crnProtocol.setLevel((short)0); crnProtocol.setForkPos((short) -1); @@ -149,6 +151,16 @@ crnProtocol.setyDistance((short) 0); crnProtocol.setxDuration((short) 0); crnProtocol.setyDuration((short) 0); + + // 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴� + BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class); + BasCrnp basCrnp = basCrnpService.selectById(slave.getId()); + basCrnp.setCrnSts((int)crnProtocol.getMode()); + basCrnp.setCrnStatusOne(-1); + basCrnp.setCrnStatusTwo(-1); + if (!basCrnpService.updateById(basCrnp)){ + log.error("鍫嗗灈鏈簆lc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot()); + } } @Override @@ -178,9 +190,9 @@ try { OperateResultExOne<byte[]> result = new OperateResultExOne<byte[]>(); if (slave.getId()>2 && slave.getId()<6){ - result = siemensNet.Read("DB101.0", (short) 62); + result = siemensNet.Read("DB101.0", (short) 66); } else { - result = siemensNet.Read("DB101.0", (short) 52); + result = siemensNet.Read("DB101.0", (short) 56); } if (result.IsSuccess) { if (null == crnProtocol) { @@ -194,7 +206,7 @@ crnProtocol.setLevel(siemensNet.getByteTransform().TransInt16(result.Content, 8)); crnProtocol.setForkPos(siemensNet.getByteTransform().TransInt16(result.Content, 10)); - if (slave.getId()>2 && slave.getId()<6){ + if (slave.getId()<3 || slave.getId()>5){ crnProtocol.setLiftPos(siemensNet.getByteTransform().TransInt16(result.Content, 12)); crnProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 14)); crnProtocol.setLoaded(siemensNet.getByteTransform().TransInt16(result.Content, 16)); @@ -220,6 +232,12 @@ crnProtocol.setForkPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 22)); crnProtocol.setLoadedTwo(siemensNet.getByteTransform().TransInt16(result.Content, 24)); + crnProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 26)); + crnProtocol.setWalkPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 28)); + + crnProtocol.setLiftPos(siemensNet.getByteTransform().TransInt16(result.Content, 30)); + crnProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 32)); + crnProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 34)); crnProtocol.setySpeed(siemensNet.getByteTransform().TransInt16(result.Content, 38)); crnProtocol.setzSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 42)); @@ -230,19 +248,13 @@ crnProtocol.setxDuration(siemensNet.getByteTransform().TransInt16(result.Content, 58)); crnProtocol.setyDuration(siemensNet.getByteTransform().TransInt16(result.Content, 62)); } - //宸ヤ綅2鏁版嵁 鏃犲垯鏃犻渶鐞嗕細 - try{ - - }catch (Exception e){ - - } OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId())); // 澶嶄綅淇″彿 - if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) { - log.error("-------------------------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�", - slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿"); + if (!Cools.isEmpty(crnProtocol.getStatusType()) && (crnProtocol.getStatusType().equals(CrnStatusType.WAITING) || crnProtocol.getStatusType().equals(CrnStatusType.SEPARATE_WAITING))) { + log.error("-------------------------宸ヤ綅1-------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙�:{}]==>> 鐘舵�佷负{}锛岀瓑寰呯‘璁わ紒锛�", + slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "鏈夌墿" : "鏃犵墿",crnProtocol.getStatusType()); if (resetFlag) { if(crnProtocol.getTaskNo()==9999){ backHpFlag = false; @@ -253,14 +265,20 @@ resetFlag = false; } } + } + + // 澶嶄綅淇″彿 + if (!Cools.isEmpty(crnProtocol.getStatusTypeTwo()) && (crnProtocol.getStatusTypeTwo().equals(CrnStatusType.WAITING) || crnProtocol.getStatusTypeTwo().equals(CrnStatusType.SEPARATE_WAITING))) { + log.error("-------------------------宸ヤ綅2-------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙�:{}]==>> 鐘舵�佷负{}锛岀瓑寰呯‘璁わ紒锛�", + slave.getId(),crnProtocol.getTaskNoTwo(), crnProtocol.getLoadedTwo()==1 ? "鏈夌墿" : "鏃犵墿",crnProtocol.getStatusTypeTwo()); if (resetFlagTwo) { - if(crnProtocol.getTaskNo()==9999){ - backHpFlag = false; + if(crnProtocol.getTaskNoTwo()==9999){ + backHpFlagTwo = false; } CrnCommand crnCommand = new CrnCommand(); crnCommand.setAckFinish((short)1); if (write5(crnCommand)) { - resetFlag = false; + resetFlagTwo = false; } } } -- Gitblit v1.9.1