一、软件下载

1、modscan32软件下载,里面包含modscan32(主机),以及modsim32(从机),下载地址有很多大家可以直接到网上搜索下载modsacn32

二、modsim32从机配置准备

1.连接从机

2.设置端口号,这里默认端口号为502

3.设置参数

4.点击坐标例设置对应的值
这里设置值有两中方式,一种是设置固定值,第二种是点击自动模拟获取随机数

三、编写Java代码充当主机获取数据

1.添加jlibmodbus依赖

<dependency><groupId>com.intelligt.modbus</groupId><artifactId>jlibmodbus</artifactId><version>1.2.9.7</version></dependency>

2.这里用来演示的是功能码03

public static void main(String[] args) {try {// 设置主机TCP参数TcpParameters tcpParameters = new TcpParameters();// 设置TCP的ip地址-本地地址InetAddress adress = InetAddress.getByName("127.0.0.1");// tcpParameters.setHost(InetAddress.getLocalHost());tcpParameters.setHost(adress);// TCP设置长连接tcpParameters.setKeepAlive(true);// TCP设置端口,这里设置是默认端口502tcpParameters.setPort(502);// 创建一个主机ModbusMaster master = ModbusMasterFactory.createModbusMasterTCP(tcpParameters);Modbus.setAutoIncrementTransactionId(true);int slaveId = 1;//从机地址int offset = 0;//寄存器读取开始地址int quantity = 10;//读取的寄存器数量System.out.println("准备执行开启连接");try {if (!master.isConnected()) {master.connect();// 开启连接}System.out.println("读取对应从机的数据");//读取对应从机的数据,这里演示的是功能码03//功能码01 readCoils()//功能码02 readDiscreteInputs()//功能码03 readHoldingRegisters()//功能码04 readInputRegisters()int[] registerValues = master.readHoldingRegisters(slaveId, offset, quantity);System.out.println("成功!");// 控制台输出for (int value : registerValues) {System.out.println("Address: " + offset++ + ", Value: " + value);}} catch (ModbusProtocolException e) {e.printStackTrace();} catch (ModbusNumberException e) {e.printStackTrace();} catch (ModbusIOException e) {e.printStackTrace();} finally {try {master.disconnect();} catch (ModbusIOException e) {e.printStackTrace();}}} catch (RuntimeException e) {throw e;} catch (Exception e) {e.printStackTrace();}}

3.输出结果

准备执行开启连接
读取对应从机的数据
成功!
address: 0, value: 11
address: 1, value: 23
address: 2, value: 30
address: 3, value: 47
address: 4, value: 33
address: 5, value: 0
address: 6, value: 24
address: 7, value: 0
address: 8, value: 66
address: 9, value: 0

modbus-tcp协议通过Java代码获取从机数据相关推荐

  1. 如何使用python读取modbus/TCP协议数据

    文章目录 前言 一.modbus_tk是什么? 二.modbus_tk的使用步骤 三.使用modscan测试 四.32位无符号短整型数据转为64位float数据 五.总结 前言 在做项目的时候,需要使 ...

  2. Modbus TCP协议解析

    在之前的文章中,我们介绍了Modbus RTU协议的内容和实现方法.最近在进行网络通讯的时候又用到了Modbus TCP协议,因此这里把自己对Modbus TCP的了解总结一下. 文章目录 一.Mod ...

  3. ModBus/TCP协议分析

    ModBus/TCP协议分析 一.术语 1 word = 2 byte; 1 byte = 8 bit. 校验码:校验码是由前面的数据通过某种算法得出的,用以检验该组数据的正确性.代码作为数据在向计算 ...

  4. java 读取流的字符编码格式_如何使用Java代码获取文件、文件流或字符串的编码方式...

    标签: 今天通过网络资源研究了一下如何使用Java代码获取文件.文件流或字符串的编码方式,现将代码与大家分享: package com.ghj.packageoftool; import info.m ...

  5. java获取jndi密码_用JAVA代码获取Weblogic配置的JNDI 数据源连接

    第一步:生成与JDK版本对应的weblogicjar,利用cmd 进入到weblogic_home 路径下进入到server/lib目录,然后运行  JDK  1.6 命令 "java -j ...

  6. C#上位机与台达PLC通信,modbus TCP协议

    C#上位机与台达PLC通信,modbus TCP协议. 1.真实使用项目,该程序框架完整,适合在此基础上开发项目. 2.使用VS2019开发. 3.项目还涉及到halcon视觉检测功能. YID:76 ...

  7. java代码获取银行实时汇率

    java代码获取银行实时汇率 因为工作的时候甲方要求实施获取银行汇率,并且他们还不提供免费的接口,我就自己去网上找了接口,并写了实现代码,如果你需要的话直接复制粘贴就可以用了. 我用的是idea开发的 ...

  8. 力控 串口服务器 虚拟串口,M4系列串口服务器与力控组态软件MODBUS TCP 协议通信--有人物联网.pdf...

    M4系列串口服务器与力控组态软件MODBUS TCP 协议通信--有人物联网.pdf M4 系列串口服务器与力控组态软件MODBUS TCP 协议通信 M4系列串口服务器与力控组态软件MODBUS T ...

  9. 如何使用java代码获取屏幕显示器个数

    使用java代码获取屏幕显示器个数,主要是使用java中的GraphicsEnvironment对象,关于GraphicsEnvironment对象的介绍,可以去GraphicsEnvironment ...

  10. Mcgs跟转接小板(用电脑模拟)收发数据(通过Modbus Tcp协议)

    1.Mcgs跟转接小板(用电脑模拟)收发数据(通过Modbus Tcp协议),转化为后台需要的数据格式 2.调试工具:Modbus Poll  , 3. 所有端口配置为同一个,配置好本地和远程ip地址 ...

最新文章

  1. 嵌入式linux hdmi分辨率,【Firefly3399Pro】rk3399pro在Framebuffer状态命令行模式中强制HDMI输出固定分辨率...
  2. OAF[1]开发环境的配置
  3. python安装numpy-NumPy 安装
  4. java高级反射_反射---Java高级开发必须懂的
  5. wordpress 调用css,WordPress调用CSS最常用的方法有哪些?
  6. asp.net 窗体关闭事件_关于滁州一地煤气爆炸事件!最新消息来了!
  7. PHP生成有背景的二维码图,摘自网络
  8. 讨论下怎么能实现保证新闻时效性推荐算法机制
  9. OFFICE技术讲座:连续内容分断的规则
  10. 课程设计 计算机公共基础,基于Moodle的大学计算机公共基础课程设计
  11. 公众号运营实用小工具推荐
  12. 华为交换机重置Console口密码
  13. java基本数据类型字节大小,Java基本数据类型及所占字节大小
  14. java pdf转jpg清晰度_java 库 pdfbox 将 pdf 文件转换成高清图片方法
  15. java语言编写计算器_第二次作业利用java语言编写计算器进行四则运算
  16. apache基于端口的虚拟主机配置
  17. airpods二代圆点按钮是啥_AirPods 2 使用技巧(基础篇)| 如何分辨两代 AirPods?
  18. Android团队的组建和管理
  19. 安装mysql中遇到的问题
  20. 递归法求二叉树的深度

热门文章

  1. java+整合handwrite_GitHub - wmz46/HandWriteRecognizer: 封装Microsoft.Ink为C++动态库,可供其他语言调用手写识别...
  2. [Excel] 数据透视表
  3. 第14课:JSP动作 JSP param动作(JSP教程 JSP入门实战教程 黄菊华Java网站开发系列教程)
  4. SVN 使用beyondcompare 来版本对比
  5. python写彩票预测软件_python写彩票预测软件
  6. 数据库常见面试题(附答案)
  7. 5006.推荐初学者几本CCNA教程和材料
  8. gateway权限统一认证
  9. 小说阅读器java源代码_Android项目源码任阅小说阅读器高仿追书神器
  10. BXP无盘介绍(转)