From ffc3b1151655f258fb1db0b24c3434bd294b0598 Mon Sep 17 00:00:00 2001 From: dubin <bindu_bean@163.com> Date: 星期日, 05 十月 2025 10:35:32 +0800 Subject: [PATCH] 联调 --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 78 +++++++++++++++++++++------------------ 1 files changed, 42 insertions(+), 36 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java index b1995c0..8f4ef1f 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -147,13 +147,13 @@ crnProtocol.setWalkPos((short) 0); crnProtocol.setLoaded((short) 0); crnProtocol.setAlarm((short) 0); - crnProtocol.setxSpeed((short) 0); - crnProtocol.setySpeed((short) 0); - crnProtocol.setzSpeed((short) 0); - crnProtocol.setxDistance((short) 0); - crnProtocol.setyDistance((short) 0); - crnProtocol.setxDuration((short) 0); - crnProtocol.setyDuration((short) 0); + crnProtocol.setxSpeed((float) 0); + crnProtocol.setySpeed((float) 0); + crnProtocol.setzSpeed((float) 0); + crnProtocol.setxDistance((float) 0); + crnProtocol.setyDistance((float) 0); + crnProtocol.setxDuration((float) 0); + crnProtocol.setyDuration((float) 0); } @Override @@ -181,7 +181,7 @@ */ private void readStatus() { try { - OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 56); + OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 66); if (result.IsSuccess) { if (null == crnProtocol) { crnProtocol = new CrnProtocol(); @@ -193,34 +193,40 @@ crnProtocol.setBay(siemensNet.getByteTransform().TransInt16(result.Content, 6)); crnProtocol.setLevel(siemensNet.getByteTransform().TransInt16(result.Content, 8)); crnProtocol.setForkPos(siemensNet.getByteTransform().TransInt16(result.Content, 10)); - crnProtocol.setLiftPos(siemensNet.getByteTransform().TransInt16(result.Content, 12)); - crnProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 14)); - crnProtocol.setLoaded(siemensNet.getByteTransform().TransInt16(result.Content, 16)); - crnProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 18)); - crnProtocol.setTemp1(siemensNet.getByteTransform().TransInt16(result.Content, 20)); - crnProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 22)); - crnProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 24)); - crnProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 26)); - crnProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 28)); - crnProtocol.setySpeed(siemensNet.getByteTransform().TransInt16(result.Content, 32)); - crnProtocol.setzSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 36)); - crnProtocol.setxDistance(siemensNet.getByteTransform().TransInt16(result.Content, 40)); - crnProtocol.setyDistance(siemensNet.getByteTransform().TransInt16(result.Content, 44)); - crnProtocol.setxDuration(siemensNet.getByteTransform().TransInt16(result.Content, 48)); - crnProtocol.setyDuration(siemensNet.getByteTransform().TransInt16(result.Content, 52)); + 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.setLoaded(siemensNet.getByteTransform().TransInt16(result.Content, 12)); + crnProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 32)); + + + //crnProtocol.setTemp1(siemensNet.getByteTransform().TransInt16(result.Content, 20)); + //crnProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 22)); + //crnProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 24)); + //crnProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 26)); + crnProtocol.setxSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 34)); + crnProtocol.setySpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 38)); + crnProtocol.setzSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 42)); + crnProtocol.setxDistance((float) siemensNet.getByteTransform().TransInt16(result.Content, 50) / 10000); + crnProtocol.setyDistance((float) siemensNet.getByteTransform().TransInt16(result.Content, 54) / 10000); + crnProtocol.setxDuration((float) siemensNet.getByteTransform().TransInt16(result.Content, 58) / 10000); + crnProtocol.setyDuration((float) siemensNet.getByteTransform().TransInt16(result.Content, 62) / 10000); //2宸ヤ綅 - crnProtocol.setTaskNoTwo(siemensNet.getByteTransform().TransInt16(result.Content, 56)); - crnProtocol.setForkPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 58)); - crnProtocol.setLiftPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 60)); - crnProtocol.setLoadedTwo(siemensNet.getByteTransform().TransInt16(result.Content, 64)); + crnProtocol.setTaskNoTwo(siemensNet.getByteTransform().TransInt16(result.Content, 14)); + crnProtocol.setStatusTwo(siemensNet.getByteTransform().TransInt16(result.Content, 16)); + crnProtocol.setBayTwo(siemensNet.getByteTransform().TransInt16(result.Content, 18)); + crnProtocol.setLevelTwo(siemensNet.getByteTransform().TransInt16(result.Content, 20)); + crnProtocol.setForkPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 22)); + crnProtocol.setLoadedTwo(siemensNet.getByteTransform().TransInt16(result.Content, 24)); OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛", DateUtils.convert(new Date()), slave.getId())); // 澶嶄綅淇″彿 if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) { - News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�", + News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙�1淇″彿:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�", slave.getId(), crnProtocol.getTaskNo(), crnProtocol.getLoaded() == 1 ? "鏈夌墿" : "鏃犵墿"); if (resetFlag) { if (crnProtocol.getTaskNo() == 9999) { @@ -231,7 +237,7 @@ crnCommand.setAckFinish((short) 1); if (write(crnCommand)) { resetFlag = false; - News.error("---绗簩姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}]==>> 澶嶄綅resetFlag鏍囪鎴愬姛{}锛侊紒", + News.error("---绗簩姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}]==>> 宸ヤ綅1澶嶄綅resetFlag鏍囪鎴愬姛{}锛侊紒", slave.getId(), wrkNo, resetFlag); } } @@ -239,7 +245,7 @@ // 澶嶄綅淇″彿 if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusTypeTwo().equals(CrnStatusType.WAITING)) { - News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙颁俊鍙�:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�", + News.error("---绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}, 杞借揣鍙�2淇″彿:{}]==>> 鐘舵�佷负10锛岀瓑寰呯‘璁わ紒锛�", slave.getId(), crnProtocol.getTaskNo(), crnProtocol.getLoaded() == 1 ? "鏈夌墿" : "鏃犵墿"); if (resetFlagTwo) { if (crnProtocol.getTaskNo() == 9999) { @@ -250,7 +256,7 @@ crnCommand.setAckFinish((short) 1); if (write2(crnCommand)) { resetFlagTwo = false; - News.error("---绗簩姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}]==>> 澶嶄綅resetFlag鏍囪鎴愬姛{}锛侊紒", + News.error("---绗簩姝ャ�乕鍫嗗灈鏈哄彿锛歿}, 宸ヤ綔鍙凤細{}]==>> 宸ヤ綅2澶嶄綅resetFlag鏍囪鎴愬姛{}锛侊紒", slave.getId(), wrkNo, resetFlag); } } @@ -327,7 +333,7 @@ // convertRow(command); command.setCrnNo(slave.getId()); // short[] array = new short[10]; - short[] array = new short[10]; + short[] array = new short[9]; array[0] = command.getAckFinish(); // 浠诲姟瀹屾垚纭浣� array[1] = command.getTaskNo(); // 浠诲姟鍙� array[2] = command.getTaskMode(); // 妯″紡 @@ -337,7 +343,6 @@ array[6] = command.getDestinationPosX(); // 鐩爣浣嶇疆鎺掑彿 array[7] = command.getDestinationPosY(); // 鐩爣浣嶇疆鍒楀彿 array[8] = command.getDestinationPosZ(); // 鐩爣浣嶇疆灞傚彿 - array[9] = command.getCommand(); // array[10] = 0; //澶囩敤1 @@ -354,6 +359,7 @@ // if (!resetFlag){ News.error("鍐欏叆鍫嗗灈鏈簆lc鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSON(command), writeCount1); result = siemensNet.Write("DB100.0", array); + // } Thread.sleep(100); writeCount1++; @@ -491,7 +497,7 @@ } // 鍚戝爢鍨涙満鍙戜换鍔″墠鐨勫爢鍨涙満鐘舵�� try { - OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 18); + OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.20", (short) 20); if (resultRead.IsSuccess) { CrnCommand one = new CrnCommand(); one.setTaskNo(siemensNet.getByteTransform().TransInt16(resultRead.Content, 2)); @@ -549,7 +555,7 @@ writeCount1++; continue; } - OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 18); + OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 36); if (resultRead.IsSuccess) { CrnCommand one = new CrnCommand(); one.setAckFinish(siemensNet.getByteTransform().TransInt16(resultRead.Content, 0)); @@ -594,7 +600,7 @@ } } } catch (Exception e) { - News.error("鍫嗗灈鏈哄懡浠ゅ湴鍧�鍐欏叆鍚庡洖璇诲嚭閿�,寮傚父锛�" + e); + News.error("鍫嗗灈鏈哄懡浠ゅ湴鍧�鍐欏叆鍚庡洖璇诲嚭閿�2,寮傚父锛�" + e); } writeCount1++; } while (writeCount1 < 6); -- Gitblit v1.9.1