关于Java通过MODBUSTCP协议连接硬件设备

createh56个月前 (12-25)技术教程66


物联网平台开发中经常会需要使用各种协议去和硬件设备进行通讯,例如常见的TCP/IP协议,MODBUS协议等等,今日我会使用Java简单介绍一下如何用MODBUSTCP协议对硬件进行通讯。

第一步,配置环境依赖,在这我使用jlibmodbus依赖包进行通讯,相关版本对应JDK版本自行添加,兼容即可 。

之后,创建Master主站,采用TcpParameters创建tcp参数对象,设置Host(IP地址),Port(端口号),Keepalivetime(长连接)后调用ModbusMasterFactory工厂类的createModbusMasterTCP方法,将tcp参数对象传入,得到ModBUSMaster,至此,Master主站建立完成,调用connect方法尝试连接。

//Tcp设置

TcpParameters tcpParameters = new TcpParameters();

tcpParameters.setHost(add);

tcpParameters.setPort(port);

tcpParameters.setKeepAlive(keepalive);

//创建主站

ModbusMaster master = ModbusMasterFactory.createModbusMasterTCP(tcpParameters);

if (!master.isConnected()) {

// 开启连接

try {

master.connect();

} catch (ModbusIOException e) {

e.printStackTrace();

}

}

ModBUSMaster的readHoldingRegisters方法可以读取保持寄存器中的数据,其中有三个参数需要填写,第一参数为从机ID,第二参数为寄存器起始地址,第三参数为寄存器个数。

返回的数组中的值即是寄存器内读到的值。

相关文章

使用canal解决Mysql和Redis数据同步(TCP)

工作原理分析我们在面试的时候常常听面试官问这么一个问题:你们的Mysql和Redis怎么做数据同步的,根据不同的业务场景又很多方案,你可能会说先写库再删缓存,或者延迟双删或其他方案。今天我要给大家分享...

TCP 的三次握手,四次挥手和重要的细节—干货满满,建议细读

TCP 报文段结构一谈到 TCP 协议,大家最先想到的词就是「面向连接」和「可靠」。没错,TCP 协议的设计就是为了能够在客户端和服务器之间建立起一个可靠连接。在讲连接过程之前,我们先来看看 TCP...