Moubus功能码详解-RZMPU工业控制教程连载(30)

瑞萨MCU小百科 2024-10-28 12:00

10.5 Moubus功能码详解


本节大部分内容参考《Modbus软件开发实战指南》。


10.5.1

功能码概要

Modbus标准在协议中规定了以下3类Modbus功能码。


公共功能码:

①被明确定义的功能码

②保证唯一性

③由Modbus协会确认,并提供公开的文档

④可进行一致性测试

⑤包括协议定义的功能码和保留将来使用的功能码


用户自定义功能码:

①有两个用户自定义功能码区域,分别是65~72和100~110。

②用户自定义,无法保证唯一性。


保留功能码:

保留功能码因为历史遗留原因,某些公司的传统产品现行使用的功能码不作为公共使用。


10.5.2

0x01)读取线圈


1. 功能说明

01功能码用于读取从设备的线圈或离散量输出的状态,即各Do(Discrete Output,离散输出)的ON/OFF状态。消息帧中指定了需要读取的线圈起始地址和线圈数目。需要注意的是,在Modbus协议规定的PDU中,所有线圈或寄存器地址都必须从0开始计算。


2. 查询报文

如下表所示,查询帧的消息中定义了从设备地址为3,并读取从设备的Modbus地址0001900055(线圈地址 0002000056)共计37个状态值。起始线圈地址为0x13(即十进制00019),因为线圈地址是从0开始计数的。


功能码01查询报文示例:

字段

例(Hex)

ASCII模式字符型

RTU模式8位(Hex)

帧头


_

“:”


_

从设备地址

0x03

“0”,“3”

0x03

功能码

0x01

“0”,“1”

0x01

起始地址

(高位)

0x00

“0”,“0”

0x00

起始地址

(低位)

0x13

“1”,“3”

0x13

寄存器数

(高位)

0x00

“0”,“0”

0x00

寄存器数

(低位)

0x25

“2”,“5”

0x25

差错校验


_

LRC(2字符)

CRC(2字节)

帧尾


_

CR/LF


_


_

合计字节数

17

8


Modbus协议规定,起始地址由2字节构成,取值范围为0x0000~0xFFFF。


线圈数量由2字节构成,取值范围为0x0001~0x07D0(即+进制1~2000)另外,注意观察ASCII模式和RTU模式的区别,ASCII模式直接按每4位拆分成对应的字符表示。


3. 响应报文

在响应报文的数据字段中,每个线圈占用1位(bit),状态被表示为1=ON和O=OFF两种类型。第1个数据字节的LSB(最低有效位)标识查询报文中的起始地址线圈的状态值,其他线圈以此类推,一直到这个字节的MSB(最高有效位)为止,并在后续字节中按照同样的方式(由低到高)排列。


例如,下表中线圈20~27的状态值分别是ON-ON-OFF OFF-ON-OFF-ON-OFF表示为二进制则为01010011(0x53),注意观察对应的顺序。1字节可以表示8个线圈的状态如果最后的数据字节中不能填满8个线圈的状态,则用0填充。对应于查询报文中需要读取37个线圈的状态,共需要5字节保存状态值。


功能码01响应报文示例:

字段

例(Hex)

ASCII模式字符型

RTU模式8位(Hex)

帧头


_

“:”


_

从设备地址

0x03

“0”,“3”

0x03

功能码

0x01

“0”,“1”

0x01

数据域字节数

0x05

“0”,“5”

0x05

数据1

0x53

“5”,“3”

0x53

数据2

0x6B

“6”,“B”

0x6B

数据3

0x01

“0”,“1”

0x01

数据4

0xF4

“F”,“B”

0xF4

数据5

0x1B

“1”,“B”

0x1B

差错校验


_

LRC(2字符)

CRC(2字节)

帧尾


_

CR/LF


_


_

合计字节数

21

10


10.5.3

(0x02)读取离散量输入值

1. 功能说明

02功能码用于读取从设备的离散输入,即DI(Discrete Input)的ON/OFF状态。消息顿中指定了需要读取的离散输入寄存器的起始地址和数目,可以读取1~2000个连续的离散量输入状态如果从设备接受主设备的请求则回复功能码02,并返回离散量且输入各变量的当前状态。如果返回的离散输入数量的个数不是8的整数倍,将用0填充最后的数据字节的剩余位。


2. 查询报文

如下表所示,查询顿的消息中定义了从设备的地址为3,并读取从设备的离散输入寄存器中地址10101~10120(Modbus地址表示为十进制100~119)共计20个离散输入状态值。从下表中可以发现,起始地址为0x64(即十进制100),因为消息PDU中的Modbus地址从0开始计数。


功能码02查询报文示例:

字段

例(Hex)

ASCII模式字符型

RTU模式8位(Hex)

帧头


_

“:”


_

从设备地址

0x03

“0”,“3”

0x03

功能码

0x02

“0”,“2”

0x02

起始地址

(高位)

0x00

“0”,“0”

0x00

起始地址

(低位)

0x64

“6”,“4”

0x64

寄存器数

(高位)

0x00

“0”,“0”

0x00

寄存器数

(低位)

0x14

“1”,“4”

0x14

差错校验


_

LRC(2字符)

CRC(2字节)

帧尾


_

CR/LF


_


_

合计字节数

17

8


与5.4.2节中的功能码(01(0x01)读取线圈/离散量输出状态(Read Coil status/DOs))一样,本功能码的起始地址由2字节构成,取值范围为0x0000~0xFFFF;离散量数量由2字节构成,取值范围为0x0001~0x07D0(即十进制1~2000),最多一次性可读取2000人离散输入状态值。


3. 响应报文

响应报文的各项构成和意义与5.4.2章节的功能码(01(0x01)读取线圈/离散量输出状态(Re-ad Coil Status/DOs))一样,如下表所示:


功能码02响应报文示例

字段

例(Hex)

ASCII模式字符型

RTU模式8位(Hex)

帧头


_

“:”


_

从设备地址

0x03

“0”,“3”

0x03

功能码

0x02

“0”,“2”

0x02

数据域字节数

0x03

“0”,“3”

0x03

数据1

0x53

“5”,“3”

0x53

数据2

0x6B

“6”,“B”

0x6B

数据3

0x01

“0”,“1”

0x01

差错校验


_

LRC(2字符)

CRC(2字节)

帧尾


_

CR/LF


_


_

合计字节数

21

10


需要技术支持?

如您在使用瑞萨MCU/MPU产品中有任何问题,可识别下方二维码或复制网址到浏览器中打开,进入瑞萨技术论坛寻找答案或获取在线技术支持。

https://community-ja.renesas.com/zh/forums-groups/mcu-mpu/



未完待续


推荐阅读

学习Modbus的快速方法 - RZ MPU工业控制教程连载(23)


初识Modbus - RZ MPU工业控制教程连载(24)

虚拟串口与Modbus互联 - RZ MPU工业控制教程连载(25)

更多精彩,敬请关注


评论
  • 应用趋势与客户需求,AI PC的未来展望随着人工智能(AI)技术的日益成熟,AI PC(人工智能个人电脑)逐渐成为消费者和企业工作中的重要工具。这类产品集成了最新的AI处理器,如NPU、CPU和GPU,并具备许多智能化功能,为用户带来更高效且直观的操作体验。AI PC的目标是提升工作和日常生活的效率,通过深度学习与自然语言处理等技术,实现更流畅的多任务处理、实时翻译、语音助手、图像生成等功能,满足现代用户对生产力和娱乐的双重需求。随着各行各业对数字转型需求的增长,AI PC也开始在各个领域中显示
    百佳泰测试实验室 2025-02-27 14:08 252浏览
  • 构建巨量的驾驶场景时,测试ADAS和AD系统面临着巨大挑战,如传统的实验设计(Design of Experiments, DoE)方法难以有效覆盖识别驾驶边缘场景案例,但这些边缘案例恰恰是进一步提升自动驾驶系统性能的关键。一、传统解决方案:静态DoE标准的DoE方案旨在系统性地探索场景的参数空间,从而确保能够实现完全的测试覆盖范围。但在边缘案例,比如暴露在潜在安全风险的场景或是ADAS系统性能极限场景时,DoE方案通常会失效,让我们看一些常见的DoE方案:1、网格搜索法(Grid)实现原理:将
    康谋 2025-02-27 10:00 252浏览
  • 更多生命体征指标风靡的背后都只有一个原因:更多人将健康排在人生第一顺位!“AGEs,也就是晚期糖基化终末产物,英文名Advanced Glycation End-products,是存在于我们体内的一种代谢产物” 艾迈斯欧司朗亚太区健康监测高级市场经理王亚琴说道,“相信业内的朋友都会有关注,最近该指标的热度很高,它可以用来评估人的生活方式是否健康。”据悉,AGEs是可穿戴健康监测领域的一个“萌新”指标,近来备受关注。如果站在学术角度来理解它,那么AGEs是在非酶促条件下,蛋白质、氨基酸
    艾迈斯欧司朗 2025-02-27 14:50 400浏览
  • RGB灯光无法同步?细致的动态光效设定反而成为产品客诉来源!随着科技的进步和消费者需求变化,电脑接口设备单一功能性已无法满足市场需求,因此在产品上增加「动态光效」的形式便应运而生,藉此吸引消费者目光。这种RGB灯光效果,不仅能增强电脑周边产品的视觉吸引力,还能为用户提供个性化的体验,展现独特自我风格。如今,笔记本电脑、键盘、鼠标、鼠标垫、耳机、显示器等多种电脑接口设备多数已配备动态光效。这些设备的灯光效果会随着音乐节奏、游戏情节或使用者的设置而变化。想象一个画面,当一名游戏玩家,按下电源开关,整
    百佳泰测试实验室 2025-02-27 14:15 137浏览
  •         近日,广电计量在聚焦离子束(FIB)领域编写的专业著作《聚焦离子束:失效分析》正式出版,填补了国内聚焦离子束领域实践性专业书籍的空白,为该领域的技术发展与知识传播提供了重要助力。         随着芯片技术不断发展,芯片的集成度越来越高,结构也日益复杂。这使得传统的失效分析方法面临巨大挑战。FIB技术的出现,为芯片失效分析带来了新的解决方案。它能够在纳米尺度上对芯片进行精确加工和分析。当芯
    广电计量 2025-02-28 09:15 116浏览
  • 请移步 gitee 仓库 https://gitee.com/Newcapec_cn/LiteOS-M_V5.0.2-Release_STM32F103_CubeMX/blob/main/Docs/%E5%9F%BA%E4%BA%8ESTM32F103RCT6%E7%A7%BB%E6%A4%8DLiteOS-M-V5.0.2-Release.md基于STM32F103RCT6移植LiteOS-M-V5.0.2-Release下载源码kernel_liteos_m: OpenHarmon
    逮到一只程序猿 2025-02-27 08:56 195浏览
  • 美国加州CEC能效跟DOE能效有什么区别?CEC/DOE是什么关系?美国加州CEC能效跟DOE能效有什么区别?CEC/DOE是什么关系?‌美国加州CEC能效认证与美国DOE能效认证在多个方面存在显著差异‌。认证范围和适用地区‌CEC能效认证‌:仅适用于在加利福尼亚州销售的电器产品。CEC认证的范围包括制冷设备、房间空调、中央空调、便携式空调、加热器、热水器、游泳池加热器、卫浴配件、光源、应急灯具、交通信号模块、灯具、洗碗机、洗衣机、干衣机、烹饪器具、电机和压缩机、变压器、外置电源、消费类电子设备
    张工nx808593 2025-02-27 18:04 120浏览
  • 在2024年的科技征程中,具身智能的发展已成为全球关注的焦点。从实验室到现实应用,这一领域正以前所未有的速度推进,改写着人类与机器的互动边界。这一年,我们见证了具身智能技术的突破与变革,它不仅落地各行各业,带来新的机遇,更在深刻影响着我们的生活方式和思维方式。随着相关技术的飞速发展,具身智能不再仅仅是一个技术概念,更像是一把神奇的钥匙。身后的众多行业,无论愿意与否,都像是被卷入一场伟大变革浪潮中的船只,注定要被这股汹涌的力量重塑航向。01为什么是具身智能?为什么在中国?最近,中国具身智能行业的进
    艾迈斯欧司朗 2025-02-28 15:45 221浏览
  • 一、VSM的基本原理震动样品磁强计(Vibrating Sample Magnetometer,简称VSM)是一种灵敏且高效的磁性测量仪器。其基本工作原理是利用震动样品在探测线圈中引起的变化磁场来产生感应电压,这个感应电压与样品的磁矩成正比。因此,通过测量这个感应电压,我们就能够精确地确定样品的磁矩。在VSM中,被测量的样品通常被固定在一个震动头上,并以一定的频率和振幅震动。这种震动在探测线圈中引起了变化的磁通量,从而产生了一个交流电信号。这个信号的幅度和样品的磁矩有着直接的关系。因此,通过仔细
    锦正茂科技 2025-02-28 13:30 100浏览
  • 在物联网领域中,无线射频技术作为设备间通信的核心手段,已深度渗透工业自动化、智慧城市及智能家居等多元场景。然而,随着物联网设备接入规模的不断扩大,如何降低运维成本,提升通信数据的传输速度和响应时间,实现更广泛、更稳定的覆盖已成为当前亟待解决的系统性难题。SoC无线收发模块-RFM25A12在此背景下,华普微创新推出了一款高性能、远距离与高性价比的Sub-GHz无线SoC收发模块RFM25A12,旨在提升射频性能以满足行业中日益增长与复杂的设备互联需求。值得一提的是,RFM25A12还支持Wi-S
    华普微HOPERF 2025-02-28 09:06 143浏览
  • 1,微软下载免费Visual Studio Code2,安装C/C++插件,如果无法直接点击下载, 可以选择手动install from VSIX:ms-vscode.cpptools-1.23.6@win32-x64.vsix3,安装C/C++编译器MniGW (MinGW在 Windows 环境下提供类似于 Unix/Linux 环境下的开发工具,使开发者能够轻松地在 Windows 上编写和编译 C、C++ 等程序.)4,C/C++插件扩展设置中添加Include Path 5,
    黎查 2025-02-28 14:39 140浏览
  • 振动样品磁强计是一种用于测量材料磁性的精密仪器,广泛应用于科研、工业检测等领域。然而,其测量准确度会受到多种因素的影响,下面我们将逐一分析这些因素。一、温度因素温度是影响振动样品磁强计测量准确度的重要因素之一。随着温度的变化,材料的磁性也会发生变化,从而影响测量结果的准确性。因此,在进行磁性测量时,应确保恒温环境,以减少温度波动对测量结果的影响。二、样品制备样品的制备过程同样会影响振动样品磁强计的测量准确度。样品的形状、尺寸和表面处理等因素都会对测量结果产生影响。为了确保测量准确度,应严格按照规
    锦正茂科技 2025-02-28 14:05 134浏览
  •           近日受某专业机构邀请,参加了官方举办的《广东省科技创新条例》宣讲会。在与会之前,作为一名技术工作者一直认为技术的法例都是保密和侵权方面的,而潜意识中感觉法律有束缚创新工作的进行可能。通过一个上午学习新法,对广东省的科技创新有了新的认识。广东是改革的前沿阵地,是科技创新的沃土,企业是创新的主要个体。《广东省科技创新条例》是广东省为促进科技创新、推动高质量发展而制定的地方性法规,主要内容包括: 总则:明确立法目
    广州铁金刚 2025-02-28 10:14 103浏览
  • Matter 协议,原名 CHIP(Connected Home over IP),是由苹果、谷歌、亚马逊和三星等科技巨头联合ZigBee联盟(现连接标准联盟CSA)共同推出的一套基于IP协议的智能家居连接标准,旨在打破智能家居设备之间的 “语言障碍”,实现真正的互联互通。然而,目标与现实之间总有落差,前期阶段的Matter 协议由于设备支持类型有限、设备生态协同滞后以及设备通信协议割裂等原因,并未能彻底消除智能家居中的“设备孤岛”现象,但随着2025年的到来,这些现象都将得到完美的解决。近期,
    华普微HOPERF 2025-02-27 10:32 212浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦