From 6b1c7e3fa773aa75ea34b346d4104ba70064f52c Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期四, 31 八月 2023 14:35:53 +0800 Subject: [PATCH] 调整设备状态解析2 --- igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java | 54 +++++++----------------------------------------------- 1 files changed, 7 insertions(+), 47 deletions(-) diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java index 56a5d85..4eb27c7 100644 --- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java +++ b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java @@ -10,9 +10,6 @@ import com.serotonin.modbus4j.locator.BaseLocator; import com.serotonin.modbus4j.msg.*; import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Component; - -import java.util.HashMap; /** * @Desc: 宸ュ叿绫� @@ -25,13 +22,10 @@ //浠庢満榛樿鍊� private static Integer slaveId = 1; - private static HashMap<String, ModbusMaster> masterMap = new HashMap<>(); - /** * 宸ュ巶 */ static ModbusFactory modbusFactory; - //static ModbusMaster modbusMaster; static { if (modbusFactory == null) { @@ -46,22 +40,16 @@ * @return */ public static ModbusMaster getMaster(String ip, int port) throws ModbusInitException, InterruptedException { - String key = ip; - ModbusMaster modbusMaster = masterMap.get(key); - if (modbusMaster == null || !modbusMaster.isConnected()) { - IpParameters ipParameters = new IpParameters(); - ipParameters.setHost(ip); - ipParameters.setPort(port); - modbusMaster = modbusFactory.createTcpMaster(ipParameters, true); - modbusMaster.init(); - //鍒濆鍖栦箣鍚庣瓑寰咃紝閬垮厤鍑虹幇杩炴帴鏈垱寤� - Thread.sleep(2000); + IpParameters ipParameters = new IpParameters(); + ipParameters.setHost(ip); + ipParameters.setPort(port); + ModbusMaster modbusMaster = modbusFactory.createTcpMaster(ipParameters, false); + modbusMaster.init(); - masterMap.put(key, modbusMaster); + //鍒濆鍖栦箣鍚庣瓑寰咃紝閬垮厤鍑虹幇杩炴帴鏈垱寤� + Thread.sleep(2500); - return modbusMaster; - } return modbusMaster; } @@ -164,34 +152,6 @@ WriteCoilResponse coilResponse = (WriteCoilResponse) getMaster(ip, port).send(coilRequest); return !coilResponse.isException(); } - - - /** - * 鍐欑嚎鍦堝紑鍏崇姸鎬佹暟鎹� 0x05 - * - * @param offset - * @param status - * @return - * @throws ModbusTransportException - * @throws ModbusInitException - - public static Boolean writeCoilStatus(String ip, int port, int offset, boolean status) throws ModbusTransportException, ModbusInitException, InterruptedException { - // boolean coilValue = status; - // WriteCoilRequest coilRequest = new WriteCoilRequest(slaveId, offset, coilValue); - // WriteCoilResponse coilResponse = (WriteCoilResponse) getMaster(ip, port).send(coilRequest); - // return !coilResponse.isException(); - - WriteCoilRequest coilRequest = new WriteCoilRequest(slaveId, offset, status); - // Thread.sleep(3000); - WriteCoilResponse coilResponse = (WriteCoilResponse) getMaster(ip, port).send(coilRequest); - - //鍙戦�佹竻闄ゅ懡浠� - WriteCoilRequest coilRequest1 = new WriteCoilRequest(slaveId, offset, !status); - getMaster(ip, port).send(coilRequest1); - - return !coilResponse.isException(); - } - */ /** -- Gitblit v1.9.3