CZT
2023-08-30 d3553d8dd6fc00634ac32228e5b8e4d0624eda11
igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil2.java
@@ -47,22 +47,22 @@
     */
    public static ModbusMaster getMaster(String ip, int port) throws ModbusInitException, InterruptedException {
        String key = ip;
        ModbusMaster modbusMaster = masterMap.get(key);
        if (modbusMaster == null || !modbusMaster.isConnected()) {
//        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 modbusMaster = modbusFactory.createTcpMaster(ipParameters, false);
            modbusMaster.init();
            //初始化之后等待,避免出现连接未创建
            Thread.sleep(2000);
            Thread.sleep(2500);
            masterMap.put(key, modbusMaster);
//            masterMap.put(key, modbusMaster);
            return modbusMaster;
        }
        return modbusMaster;
//        }
//        return modbusMaster;
    }
@@ -164,34 +164,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();
    }
     */
    /**