Modbus4j 是一个 Java 库,用于实现 Modbus 通信协议。要配置连接参数,您需要创建一个 ModbusConnectionConfig
对象并设置相关属性。以下是一个简单的示例,展示了如何配置连接参数:
import org.modbus4j.ModbusConnectionConfig; import org.modbus4j.io.ModbusTCPTransaction; import org.modbus4j.io.ModbusSerialTransaction; import org.modbus4j.io.ModbusTransaction; public class ModbusConfigExample { public static void main(String[] args) { // 创建 ModbusTCP 连接配置 ModbusConnectionConfig tcpConfig = new ModbusConnectionConfig(); tcpConfig.setHost("192.168.1.100"); // 设置服务器 IP 地址 tcpConfig.setPort(502); // 设置服务器端口 tcpConfig.setUnitID(1); // 设置从站 ID(Modbus 地址) // 创建 Modbus 事务 ModbusTransaction transaction = null; try { // 使用 TCP 连接配置创建 ModbusTCP 事务 transaction = new ModbusTCPTransaction(tcpConfig); // 执行读取操作(例如:读取寄存器) transaction.execute(); } catch (Exception e) { e.printStackTrace(); } finally { if (transaction != null) { try { transaction.close(); } catch (Exception e) { e.printStackTrace(); } } } // 创建 ModbusSerial 连接配置(适用于串行通信) ModbusConnectionConfig serialConfig = new ModbusConnectionConfig(); serialConfig.setPort("/dev/ttyUSB0"); // 设置串口设备路径(例如:/dev/ttyUSB0) serialConfig.setBaudRate(9600); // 设置波特率 serialConfig.setDataBits(8); // 设置数据位 serialConfig.setParity("NONE"); // 设置校验位 serialConfig.setStopBits(1); // 设置停止位 serialConfig.setUnitID(1); // 设置从站 ID(Modbus 地址) // 使用串行连接配置创建 ModbusSerial 事务 transaction = null; try { transaction = new ModbusSerialTransaction(serialConfig); // 执行读取操作(例如:读取寄存器) transaction.execute(); } catch (Exception e) { e.printStackTrace(); } finally { if (transaction != null) { try { transaction.close(); } catch (Exception e) { e.printStackTrace(); } } } } }
在这个示例中,我们分别创建了 ModbusTCP 和 ModbusSerial 连接配置对象,并设置了相应的连接参数。然后,我们使用这些配置创建 Modbus 事务并执行读取操作。请根据您的实际需求修改连接参数。