Java Code Examples for com.serotonin.modbus4j.ip.IpParameters#setPort()

The following examples show how to use com.serotonin.modbus4j.ip.IpParameters#setPort() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ModbusUtil.java    From IOT-Technical-Guide with Apache License 2.0 6 votes vote down vote up
public static ModbusMaster createMaster(String ip, int port) {
    ModbusMaster master = null;
    try {
        IpParameters ipParam = new IpParameters();
        ipParam.setHost(ip);
        ipParam.setPort(port);
        ipParam.setEncapsulated(false);
        master = ModbusFactoryInstance.getInstance()
                .createTcpMaster(ipParam, true);
        master.setTimeout(2000);
        master.setRetries(0);
        log.info("Starting Modbus master...");
        master.init();
        log.info("Modbus master started!");
        return master;
    } catch (ModbusInitException e) {
        log.info("Stopping Modbus master...");
        master.destroy();
        log.info("Modbus master stopped!");
    }
    return master;
}
 
Example 2
Source File: CustomDriverServiceImpl.java    From iot-dc3 with Apache License 2.0 5 votes vote down vote up
/**
 * 获取 Modbus Master
 *
 * @param deviceId
 * @param driverInfo
 * @return
 * @throws ModbusInitException
 */
public ModbusMaster getMaster(Long deviceId, Map<String, AttributeInfo> driverInfo) throws ModbusInitException {
    log.debug("Modbus Tcp Connection Info {}", JSON.toJSONString(driverInfo));
    ModbusMaster modbusMaster = masterMap.get(deviceId);
    if (null == modbusMaster || !modbusMaster.isConnected()) {
        IpParameters params = new IpParameters();
        params.setHost(attribute(driverInfo, "host"));
        params.setPort(attribute(driverInfo, "port"));
        modbusMaster = modbusFactory.createTcpMaster(params, true);
        modbusMaster.init();
        masterMap.put(deviceId, modbusMaster);
    }
    return modbusMaster;
}
 
Example 3
Source File: Test2.java    From modbus4j with GNU General Public License v3.0 5 votes vote down vote up
public static void main(String[] args) throws Exception {
    IpParameters params = new IpParameters();
    params.setHost("localhost");
    params.setPort(502);

    ModbusMaster master = new ModbusFactory().createTcpMaster(params, false);
    master.init();

    System.out.println(master.testSlaveNode(5));

    // Define the point locator.
    BaseLocator<Number> loc = BaseLocator.holdingRegister(1, 0, DataType.TWO_BYTE_INT_UNSIGNED);

    // Set the point value
    master.setValue(loc, 1800);

    // Get the point value
    System.out.println(master.getValue(loc));
}
 
Example 4
Source File: MasterTest2.java    From modbus4j with GNU General Public License v3.0 3 votes vote down vote up
public static void main(String[] args) throws Exception {
    IpParameters ipParameters = new IpParameters();
    ipParameters.setHost("localhost");
    // ipParameters.setHost("99.247.60.96");
    // ipParameters.setHost("193.109.41.121");
    //ipParameters.setHost("141.211.194.29");
    ipParameters.setPort(502);

    ModbusFactory modbusFactory = new ModbusFactory();
    // ModbusMaster master = modbusFactory.createTcpMaster(ipParameters, true);
    ModbusMaster master = modbusFactory.createTcpMaster(ipParameters, false);
    master.setTimeout(4000);
    master.setRetries(1);

    BatchRead<Integer> batch = new BatchRead<Integer>();
    //        batch.addLocator(0, new ModbusLocator(1, RegisterRange.COIL_STATUS, 2048, DataType.BINARY));
    //        batch.addLocator(1, new ModbusLocator(1, RegisterRange.COIL_STATUS, 2049, DataType.BINARY));
    //        batch.addLocator(2, new ModbusLocator(1, RegisterRange.COIL_STATUS, 2050, DataType.BINARY));
    //        batch.addLocator(3, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3584, DataType.BINARY));
    //        batch.addLocator(4, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3585, DataType.BINARY));
    //        batch.addLocator(5, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3648, DataType.BINARY));
    //        batch.addLocator(6, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3649, DataType.BINARY));
    //        batch.addLocator(7, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3650, DataType.BINARY));
    //        batch.addLocator(8, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3651, DataType.BINARY));
    //        batch.addLocator(9, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3652, DataType.BINARY));
    //        batch.addLocator(10, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3653, DataType.BINARY));
    //        batch.addLocator(11, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3654, DataType.BINARY));
    //        batch.addLocator(12, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3661, DataType.BINARY));
    //        batch.addLocator(13, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3662, DataType.BINARY));
    //        batch.addLocator(15, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3665, DataType.BINARY));
    //        batch.addLocator(16, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3668, DataType.BINARY));
    //        batch.addLocator(18, new ModbusLocator(1, RegisterRange.COIL_STATUS, 3969, DataType.BINARY));

    batch.addLocator(0, BaseLocator.holdingRegister(5, 80, DataType.TWO_BYTE_INT_SIGNED));
    batch.addLocator(1, BaseLocator.holdingRegister(5, 202, DataType.EIGHT_BYTE_INT_SIGNED));

    try {
        master.init();

        while (true) {
            batch.setContiguousRequests(false);
            BatchResults<Integer> results = master.send(batch);
            System.out.println(results.getValue(0));
            System.out.println(results.getValue(1));

            Thread.sleep(2000);
        }
    }
    catch (ErrorResponseException e) {
        System.out.println(e.getErrorResponse().getExceptionMessage());
    }
    finally {
        master.destroy();
    }
}
 
Example 5
Source File: ReadTest.java    From modbus4j with GNU General Public License v3.0 3 votes vote down vote up
public static void main(String[] args) throws Exception {
    IpParameters ipParameters = new IpParameters();
    // ipParameters.setHost("99.247.60.96");
    // ipParameters.setHost("193.109.41.121");
    //      ipParameters.setHost("10.241.224.195");
    ipParameters.setHost("172.19.40.10");
    ipParameters.setPort(502);
    ipParameters.setEncapsulated(false);

    ModbusFactory modbusFactory = new ModbusFactory();
    // ModbusMaster master = modbusFactory.createTcpMaster(ipParameters, true);
    ModbusMaster master = modbusFactory.createTcpMaster(ipParameters, false);
    master.setTimeout(8000);
    master.setRetries(0);
    master.init();

    //        for (int i = 1; i < 5; i++) {
    //            System.out.print("Testing " + i + "... ");
    //            System.out.println(master.testSlaveNode(i));
    //        }

    NumericLocator el = new NumericLocator(1, RegisterRange.HOLDING_REGISTER, 22, DataType.FOUR_BYTE_FLOAT);
    NumericLocator fjk = new NumericLocator(1, RegisterRange.HOLDING_REGISTER, 36, DataType.FOUR_BYTE_FLOAT);

    for (int i = 0; i < 3; i++) {
        try {
            System.out.println("el: " + master.getValue(el));
            System.out.println("fjk: " + master.getValue(fjk));
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }

    // try {
    // // ReadCoilsRequest request = new ReadCoilsRequest(2, 65534, 1);
    // ReadHoldingRegistersResponse response = (ReadHoldingRegistersResponse) master
    // .send(new ReadHoldingRegistersRequest(2, 0, 1));
    // System.out.println(response);
    // }
    // catch (Exception e) {
    // e.printStackTrace();
    // }

    // System.out.println(master.scanForSlaveNodes());

    master.destroy();
}