MODBUS软件开发 (四) MODBUS协议的相关知识(下)

简介: MODBUS软件开发 (四) MODBUS协议的相关知识

4.4 03(0x03)读取保持寄存器值


0x01: 读线圈寄存器

0x02: 读离散输入寄存器

0x03: 读保持寄存器

0x04: 读输入寄存器

0x05: 写单个线圈寄存器

0x06: 写单个保持寄存器

0x0f: 写多个线圈寄存器

0x10: 写多个保持寄存器

保持寄存器:这个寄存器的单位不再是bit而是两个byte,也就是可以存放具体的数据量的,并且是可读写的。一般对应参数 设置,比如我我设置时间年月日,不但可以写也可以读出来现在的时间。写也分为单个写和多个写,所以功能码有对应的三 个:0x03 0x06 0x10

输入寄存器:这个和保持寄存器类似,但是也是只支持读而不能写,一般是读取各种实时数据。一个寄存器也是占据两个byte的空间。类比我我通过读取输入寄存器获取现在的AD采集值。对应的功能码也就一个 0x04


4.4.1 功能说明

1670944341834.jpg


4.4.2 查询报文

1670944354588.jpg

1670944364150.jpg

1670944371337.jpg

1670944378763.jpg

4.4.3 响应报文

1670944388648.jpg

1670944396312.jpg

4.5 04(0x04)读取输入寄存器值


4.5.1 功能说明

1670944403803.jpg


4.5.2 查询报文

1670944409989.jpg

1670944418592.jpg

1670944426756.jpg

1670944433605.jpg

4.5.3 响应报文

1670944442860.jpg

1670944456597.jpg


4.6 05(0x05)写单个线圈或单个离散输出


4.6.1 功能说明

1670944463865.jpg


4.6.2 查询报文

1670944471357.jpg


4.6.3 响应报文


1670944478355.jpg

4.7 06(0x06)写单个保持寄存器


4.7.1 功能说明

1670944489508.jpg


4.7.2 查询报文

1670944497475.jpg

1670944504396.jpg

4.7.3 响应报文

1670944512406.jpg

1670944519522.jpg


4.8 08(0x08) 诊断功能


4.8.1 功能说明

1670944526456.jpg


4.8.2 查询报文

1670944534389.jpg

1670944540733.jpg


4.8.3 响应报文

1670944549686.jpg

1670944556280.jpg


4.8.4 诊断子功能码

1670944565116.jpg

1670944573706.jpg

1670944579602.jpg

1670944586888.jpg

1670944594747.jpg

1670944603706.jpg

1670944611979.jpg

1670944619369.jpg

1670944626300.jpg

1670944632106.jpg

1670944638963.jpg

1670944647065.jpg

4.9 11(0x0B)获取通信事件计数器


4.9.1 功能说明

1670944656062.jpg


4.9.2 查询报文

1670944665663.jpg


4.9.3 响应报文

1670944674148.jpg

1670944685127.jpg


4.10 12(0x0C)获取通信事件记录


4.10.1 功能说明

1670944693291.jpg


4.10.2 查询报文

1670944701857.jpg

1670944709386.jpg

4.10.3 响应报文

1670944724948.jpg

1670944732083.jpg

1670944739066.jpg


4.11 15(0x0F)写多个线圈


4.11.1 功能说明

1670944747312.jpg

4.11.2 查询报文

1670944761720.jpg

1670944770462.jpg

1670944779136.jpg

4.11.3 响应报文

1670944787995.jpg

1670944794681.jpg

4.12 16(0x10)写多个保持寄存器


4.12.1 功能说明

1670944803584.jpg


4.12.2 查询报文

1670944809495.jpg

1670944815082.jpg

1670944822392.jpg

4.12.3 响应报文

1670944841412.jpg

1670944847917.jpg

1670944855456.jpg

1670944863002.jpg

4.13 17(0x11)报告从站ID(仅用于串行电路)


4.13.1 功能说明

1670944873712.jpg


4.13.2 查询报文

1670944881063.jpg


4.13.3 响应报文

1670944888940.jpg


4.14 Modbus异常响应

1670944896485.jpg

1670944905914.jpg

1670944917565.jpg

1670944925219.jpg

1670944932762.jpg

相关文章
EMQ
|
传感器 监控 网络协议
使用 Neuron 接入 Modbus TCP 及 Modbus RTU 协议设备
作为一款支持数十种工业协议转换的物联网边缘工业协议网关软件,Neuron也已经实现了基于Modbus RTU协议TCP传输的功能。本文将在Ubuntu 20.04.3、X86_64的环境下,介绍如何使用Neuron接入Modbus TCP及Modbus RTU协议设备。
EMQ
747 0
使用 Neuron 接入 Modbus TCP 及 Modbus RTU 协议设备
|
1月前
|
网络协议 数据格式
【通信协议讲解】单片机基础重点通信协议解析与总结之ModBus(五)
【通信协议讲解】单片机基础重点通信协议解析与总结之ModBus(五)
|
4月前
|
传感器 数据采集 网络协议
什么是网络通信中的 Modbus协议?
网络协议是网络通信中至关重要的一部分,它定义了网络中两个或多个设备之间通信的规则、过程和格式。这些规则确保了计算机网络设备能够使用一种通用语言来传输和接收数据,而不管它们的设计、硬件或基础设施如何。
60 1
|
4月前
|
开发框架 网络协议 前端开发
Modbus协议和应用开发介绍
Modbus协议和应用开发介绍
|
6月前
|
存储 监控 网络协议
【MODBUS】Modbus协议入门简介
【MODBUS】Modbus协议入门简介
146 1
|
存储 网络协议
Modbus通信协议学习笔记
Modbus通信协议学习笔记
133 0
|
6月前
|
传感器 监控
【MODBUS】Modbus协议和PLC协议的区别和联系
【MODBUS】Modbus协议和PLC协议的区别和联系
234 0
|
6月前
|
Dubbo 网络协议 应用服务中间件
常用通讯协议比较
常用通讯协议比较
MODBUS软件开发 (一) 初识MODBUS
MODBUS软件开发 (一) 初识MODBUS
142 1
MODBUS软件开发 (一) 初识MODBUS