modbus TCP 应用

Modbus TCP 应用介绍

一、原理

Modbus TCP/IP 协议是工业通信系统领域的基石。它是一种与以太网结合使用的应用层消息传递协议,可实现不同类型网络上连接的设备之间的客户端/服务器通信。Modbus 最初是一种 Modbus 串行协议 (Modbus RTU),现已发展到包含 TCP/IP 等现代技术,在从楼宇自动化和能源管理系统到复杂的工业自动化流程等领域发挥着至关重要的作用。该协议注重简单性和稳健性,由于其易用性、开放性以及将不同设备集成到网络中的能力而得到广泛采用,使其成为许多应用程序的首选协议。
Modbus TCP/IP 是对成熟的 Modbus 协议的改编,可在 TCP/IP 网络上使用。它提供标准化的 TCP 接口,允许 Modbus 设备通过以太网进行无缝通信,从而实现高效可靠的数据交换。因此,其主要功能是为基于以太网的系统上的 Modbus 通信建立一座桥梁,而以太网系统在当今的互联世界中无处不在。
Modbus TCP/IP 消息协议继承了原始 Modbus 协议的简单性和鲁棒性(通过保留消息结构、基于寄存器的通信等),增加了 TCP/IP 的可靠性和互操作性。它将传统的 Modbus 数据封装在 TCP/IP 数据包中,使数据能够通过标准网络基础设施进行传输。
Modbus TCP/IP 使用 TCP(传输控制协议)作为底层传输协议。TCP 通过提供数据分段、确认和重传等功能,确保 Modbus 消息在网络上可靠且有序地传送。
该协议依赖于 IP 层(互联网层)来进行寻址、路由和数据包传送。它使用 IP 地址来识别网络中的源设备和目标设备。IP 确保 Modbus TCP/IP 消息在连接到以太网的设备之间正确路由。
客户端/服务器架构:Modbus 消息传递结构是一种命令/响应协议,需要一个请求数据的客户端(也称为 TCP 客户端)和一个处理请求并返回响应的服务器。
基于寄存器的通信:在 Modbus 领域中,数据存储在四个基本数据实体中,即离散输入、线圈、输入寄存器和保持寄存器。这些实体对于 Modbus 系统内数据的组织和解释至关重要。离散输入和线圈处理二进制信息,而输入和保持寄存器处理数字数据。
寻址:Modbus 采用简单的寻址方案来识别正在访问的寄存器。寻址通常使用数值来指定起始寄存器地址以及要读取或写入的寄存器的数量。
基于功能代码的读/写操作:Modbus 中的数据访问由 Modbus 数据帧中的功能代码字段定义。这些功能代码至关重要,因为它们指定要对数据实体执行的操作类型。操作的范围可以从读取和写入到数据操作功能。
面向事务:Modbus 的一个基本原则是其面向事务的性质。Modbus 客户端发出的每个请求都独立于所有其他请求。这种事务属性使 Modbus 能够用于广泛的应用和用例。
一、协议
数据帧包含报文头、功能代码和数据三部分
在这里插入图片描述

1、 MBAP报文头:
Modbus TCP/IP协议包含一个7字节报文头
在这里插入图片描述
单元识别符可在仪表上设置。
2、功能代码
在这里插入图片描述

3、数据
根据不同的功能,都有不同数据格式内容,下面介绍最常用的功能码03:
在这里插入图片描述其它功能码方面,可要网上查询。

二、仪表上的应用

仪表做TCP服务器,客户端以TCP soket 形式与服务器通讯。通讯内容按Modbus TCP协议规范执行。
二.1、重要参数
IP:仪表的IP
端口:4000
设备地址:PC参数中的地址
注:仪表属TCP服务器模式,若超过5秒没有收到所连接设备(如PLC)的数据时,则仪表会判定连接失效,并断开TCP连接,之后应用设备需重新连接。
二.2、数字仪表寄存器

在这里插入图片描述
协议:(选用此协议)
接收: 00 2F 00 00 00 06 01 03 00 02 00 004
00 2F:每次通讯+1计数,如下一包就是00 30
00 06: 表示后面有几个字节
01 03 00 02 00 004:同RS232的modbus RTU数据包,但少了CRC校验
举例:
1、读重量与内码
指令:5F EA 00 00 00 06 01 03 00 00 00 28
应答: 5F EA 00 00 00 53 01 03 50 10 34 00 00 00 00 00 00 00 00 00 00 47 79 C3 0E AA 8D C3 7B 9F D0 C3 24 7B DD C2 D8 1A A3 C2 F6 A0 55 C3 03 E4 8D C3 17 75 D6 C2 6A 17 88 C3 73 8A 5E C2 BF 3B 31 C3 1A 12 6C C3 37 D3 50 C3 5E EA B1 C3 11 B0 65 C2 D0 D0 CD C2 C6 00 00 00 00
2、置零
指令:90 78 00 00 00 06 01 06 00 01 00 01
应答:90 78 00 00 00 06 01 06 00 01 00 01
三、现场测试方法
第一步打开软件:
在这里插入图片描述

第二步配置通讯方式:
在这里插入图片描述

第三步: 读寄存器
在这里插入图片描述

第四步:看数据
重量与内码数据为float格式,需按以下设置.应用程序开发,也需按此解码
在这里插入图片描述

第五步:最终效果
在这里插入图片描述

四、仪表操作设置

以D2008-W为例
此网络指的是RJ45网络接口参数,与modbus TCP相关参数是IP、NAP及GATE,modbus TCP
的服务端口固定为4000。(与以下端口无关)
在这里插入图片描述
以D38-3为例
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/278019.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android画布Canvas绘图scale translate,Kotlin

Android画布Canvas绘图scale & translate&#xff0c;Kotlin <?xml version"1.0" encoding"utf-8"?> <androidx.appcompat.widget.LinearLayoutCompat xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"…

VSCode如何编辑Markdown文件

VSCode如何编辑Markdown文件 一、安装插件二、常用命令 一、安装插件 需要在VSCode安装一个插件Markdown Theme Kit 二、常用命令 1、CtrlShiftV 预览模式

Swift爬虫采集唯品会商品详情

我有个朋友之前在唯品会开的店&#xff0c;现在想转战其他平台&#xff0c;想要店铺信息商品信息全部迁移过去&#xff0c;如果想要人工手动操作就有点麻烦了&#xff0c;然后有天找到我 &#xff0c;让我看看能不能通过技术手段实现商品信息迁移。嫌来无事&#xff0c;写了下面…

飞天使-docker知识点6-容器dockerfile各项名词解释

文章目录 docker的小技巧dockerfile容器为什么会出现启动了不暂停查看docker 网桥相关信息 docker 数据卷 docker的小技巧 [rootlight-test playbook-vars[]# docker inspect -f "{{.NetworkSettings.IPAddress}}" d3a9ae03ae5f 172.17.0.4docker d3a9ae03ae5f:/etc…

数据结构-07-二叉树

前面学习的栈、队列等等都是线性表结构。树是一种非线性表结构&#xff0c;比线性表的数据结构要复杂。 1-树tree “树”这种数据结构类似我们现实生活中的“树”&#xff0c;这里面每个元素我们叫作“节点”&#xff1b;用来连线相邻节点之间的关系&#xff0c;我们叫作“父子…

OxLint 发布了,Eslint 何去何从?

由于最近的rust在前端领域的崛起&#xff0c;基于rust的前端生态链遭到rust底层重构&#xff0c;最近又爆出OxLint&#xff0c;是一款基于Rust的linter工具Oxlint在国外前端圈引起热烈讨论&#xff0c;很多大佬给出了高度评价&#xff1b;你或许不知道OxLint&#xff0c;相比ES…

「X」Embedding in NLP|神经网络和语言模型 Embedding 向量入门

在「X」Embedding in NLP 进阶系列中&#xff0c;我们介绍了自然语言处理的基础知识——自然语言中的 Token、N-gram 和词袋语言模型。今天&#xff0c;我们将继续和大家一起“修炼”&#xff0c;深入探讨神经网络语言模型&#xff0c;特别是循环神经网络&#xff0c;并简要了解…

用友NC word.docx任意文件读取漏洞

文章目录 产品简介漏洞概述指纹识别漏洞利用修复建议 产品简介 用友NC是一款企业级ERP软件。作为一种信息化管理工具&#xff0c;用友NC提供了一系列业务管理模块&#xff0c;包括财务会计、采购管理、销售管理、物料管理、生产计划和人力资源管理等&#xff0c;帮助企业实现数…

STM32-TIM定时器编码器

目录 一、编码器接口简介 二、正交编码器 三、编码器框图 四、编码器接口基本结构 五、工作模式&#xff08;库函数第二个参数&#xff09; 六、实例 6.1 均不反相 6.2 TI1反相 七、开发步骤 八、编码器库函数 九、实验 一、编码器接口简介 >Encoder Interface 编…

npm ,yarn 更换使用国内镜像源,阿里源,清华大学源

在平时开发当中&#xff0c;我们经常会使用 Npm&#xff0c;yarn 来构建 web 项目。但是npm默认的源的服务器是在国外的&#xff0c;如果没有梯子的话。会感觉特别特别慢&#xff0c;所以&#xff0c;使用国内的源是非常有必要的。 在这里插入图片描述 Nnpm&#xff0c; yarn …

人工智能与量子计算:开启未知领域的智慧之旅

导言 人工智能与量子计算的结合是科技领域的一场创新盛宴&#xff0c;引领我们进入了探索未知领域的新时代。本文将深入研究人工智能与量子计算的交汇点&#xff0c;探讨其原理、应用以及对计算领域的深远影响。 量子计算的崛起为人工智能领域注入了新的活力&#xff0c;开启了…

VUE-脚手架搭建

文章目录 一、概述二、前提准备1. 安装 node-js2. npm 镜像设置3. 安装 vs-code 三、脚手架搭建1. Vue-2 搭建1. Vue-3 搭建 一、概述 官网&#xff1a;http://cn.vuejs.org/ vue 有两个大版本&#xff0c;分别是 vue-2 和 vue-3&#xff0c;目前新项目的话用 vue-3 的会比较多…