From bda423b1aae1d5322116511651ae03a54cdcd231 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期二, 26 十一月 2024 17:25:39 +0800 Subject: [PATCH] 1、几个测试模块系统的log4j.xml配置中的编码修改; 2、RTU升级模拟器增加命令行设置服务端IP和端口功能; 3、应王江海要求,井电双控协议中也实现远程升级功能,因井电双控协议、阀控器协议不同,而双方协议中的升级子协议相同,所以通信中间件做增量开发、适应性修改,以适应这种混合协议情况,同时也提高通信中间件运行效率。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_1601_Down.java | 30 ++++++++++++++++++++++++++++-- 1 files changed, 28 insertions(+), 2 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_1601_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_1601_Down.java index 6d38fa7..6b701e3 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_1601_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_1601_Down.java @@ -5,6 +5,7 @@ import com.dy.common.mw.protocol.p206V2.ParseParamsForDownV2; import com.dy.common.mw.protocol.p206V2.ProtocolConstantV206V2; import com.dy.common.mw.protocol.p206V2.parse.global.GlCreate; +import com.dy.common.softUpgrade.Com1601Vo; import com.dy.common.util.ByteUtil; /** @@ -32,7 +33,7 @@ midRs.downCodeName = CodeV2.getCodeName(para.commandCode) ;//涓嬭鍛戒护鍔熻兘鐮佸悕绉�; midRs.downBuffer = bs ;//涓嬭鍛戒护鏁版嵁 midRs.downBufHex = ByteUtil.bytes2Hex(bs, true) ;//涓嬭鍛戒护鏁版嵁鍗佸叚杩涘埗褰㈠紡 - midRs.hasResponse = true ;//鏄惁鏈夊簲绛� + midRs.hasResponse = false ;//鏄惁鏈夊簲绛� midRs.maxSendTimes = null ;//鍛戒护鏈�澶у彂閫佹鏁�(褰撴敹涓嶅埌搴旂瓟鏃讹紝灏嗛噸鍙�)锛屽鏋滀笉璁剧疆锛屽懡浠ょ紦瀛樺櫒杩涜琛ュ厖璁剧疆 midRs.isCachForOffLine = false ;//RTU涓嶅湪绾匡紝鍛戒护鏄惁缂撳瓨锛屼綆鍔熻�楁椂涓簍rue @@ -71,7 +72,32 @@ index += 2 ; GlCreate.createRtuAddr4PUg(para.rtuAddr, preBytes, index); - byte[] bytes = ByteUtil.bytesMerge(preBytes, (byte[])para.attachment) ; + if(para.param == null){ + throw new Exception("鍙傛暟涓虹┖") ; + } + if(!(para.param instanceof Com1601Vo)){ + throw new Exception("鍙傛暟绫诲瀷闈濩om1601Vo") ; + } + Com1601Vo vo = (Com1601Vo) para.param ; + byte[] bs = new byte[4] ; + ByteUtil.hex2Bytes(vo.softStoreAddr, bs, 0) ; + byte[] bytes = ByteUtil.bytesMerge(preBytes, bs) ; + + bs = new byte[4] ; + ByteUtil.int2Bytes_BE(bs, vo.totalByte, 0); + bytes = ByteUtil.bytesMerge(bytes, bs) ; + + bs = new byte[2] ; + ByteUtil.short2Bytes_BE(bs, (short)vo.softCrc, 0); + bytes = ByteUtil.bytesMerge(bytes, bs) ; + + bs = new byte[2] ; + ByteUtil.short2Bytes_BE(bs, (short)vo.softCrc, 0); + bytes = ByteUtil.bytesMerge(bytes, bs) ; + + bs = new byte[4] ; + ByteUtil.hex2Bytes(vo.softStartAddr, bs, 0) ; + bytes = ByteUtil.bytesMerge(bytes, bs) ; byte[] bsTail = GlCreate.createCrcTail4Ug(bytes) ;//CRC鍜屽熬鍙犲姞瀛楄妭鏁扮粍涓� -- Gitblit v1.8.0