解决modbus4j频繁创建连接slave的问题
使用场景:使用modbus4j读取模拟量数据
问题现象:slave端设置最大连接数是10,使用modbus4j运行一段时间就连接失败,连不上slave了
问题原因:modbus每次发送都会重新建立一个连接
解决方法:在创建连接时,设置参数保持连接为true
IpParameters ipParameters = new IpParameters();
ipParameters.setHost(server.getIp());
ipParameters.setPort(server.getPort());
ModbusFactory modbusFactory = new ModbusFactory();
//第二个参数设置为true,保持连接,只会有一个连接,不会创建过多的连接
modbusMaster = modbusFactory.createTcpMaster(ipParameters, true);