工控网首页
>

应用设计

>

快速了解工业modbus协议的内容和使用

快速了解工业modbus协议的内容和使用

2023/10/30 9:18:21

1   Modbus协议简介

Modbus是最常用的设备之间的通信协议,广泛用于传感器、PLC、监控系统等应用中。Modbus的主要功能是是实现设备之间,设备和系统之间的数据交换。

如果设备之间是串口连接,则使用Modbus RTU通信格式。如果设置之间用网线连接,则常用Modbus TCP通信格式。

以下主要以Modbus RTU方式进行介绍。

 

2  通信方式

Modbus设备可分为主站(vfbox网关,进行协议转换)和从站(电力仪表)。主站只有一个,从站可以有多个,主站向各从站发送请求帧,从站给予响应。

在使用Modbus TCP通信时,主站为client端,主动建立连接;从站为server端,等待连接。

·  主站请求:功能码+数据

·   从站正常响应:请求功能码+响应数据

                                              image.png

 

 

3  协议格式

3.1主站读取从站寄存器数据

VFBOX网关作为主站,读取温湿度传感器中的数据。传感器中寄存器的地址是40002,则主站发送的请求指令如下:    01     03      00 01      00 01      D5 CA  从机地址   功能号    数据地址    读取数据个数   CRC校验 从站收到主站的指令后,则返回相应的内容。     01      03       02       0017      F8 4A 从机地址     功能号    数据字节个数    两个字节数据    CRC校验 MODBUS主机就完成了一次对从机数据的读操作,实现了通讯。

 

4  Modbus数据块和功能码定义

Modbus协议定义了标准的数据块的数据类型,地址范围和对应的功能码。

数据块

功能说明

0X Digital Coils

数据类型:布尔量,Boolean

读写:可读写

寄存器地址:00001-09999(10进制),   协议地址:0000H-270FH(16进制)

功能码:01H 05H 0FH

1X digital Inputs

数据类型:布尔量,Boolean

读写:只读

寄存器地址:10001-19999(10进制),   协议地址:0000H-270FH(16进制)

功能码:02H

3X Analog Inputs

数据类型:模拟量,可以是short,word,float,double

读写:只读

寄存器地址:30001-39999(10进制),   协议地址:0000H-270FH(16进制)

功能码:04H

4X Holding Registers

数据类型:模拟量,可以是short,word,float,double

读写:可读写

地址范围:40001-49999(10进制),0000H-270FH(16进制)

功能码:03H 06H 10H

 

 

5 Modbus协议测试

1.   读取Modbus设备数据的数据,可以把设备连接到电脑上,通过Modbus测试软件或者厂家提供的测试软件来读取Modbus设备的数据。

2.   比如,设备是485接口,则通过485转USB通信线连接到电脑上,在电脑上打开Modbus测试软件,读取设备的数据。

3.   Modbus协议有多种测试软件,可在百度搜索合适的软件。

 

审核编辑(
王静
)
投诉建议

提交

查看更多评论
其他资讯

查看更多

熟悉电力IEC61850的基础知识和使用

快速了解电力IEC104协议规约

EthernetIP转Profinet

modbus转EthernetIP协议

不用编程,实现PLC之间数据交换的方案