EdgeGateway 快速开始手册-表达式 Modbus 报文格式

表达式

使用raw表示原值

支持 + - * / % 运算和()等常规运算

支持比较运算符(>= <= > < == !=)和逻辑运算符(&& ||)

支持条件运算符(?:)

Modbus 报文格式

Modbus TCP 示例:主站请求读取从站 (ID=1) 的保持寄存器 (功能码 03),起始地址为 0,读取 10 个寄存器。

请求报文 (Request):

复制代码
00 01 00 00 00 06 01 03 00 00 00 0A
  • 00 01: 事务元标识

  • 00 00: 协议标识

  • 00 06: 长度 (后面的 PDU 01 03 00 00 00 0A共 6 个字节)

  • 01: 单元标识符 (从站地址)

  • 03: 功能码 (Read Holding Registers)

  • 00 00: 起始地址 (0)

  • 00 0A: 寄存器数量 (10)

响应报文 (Response):

假设所有寄存器的值都是 0,响应应为:

复制代码
00 01 00 00 00 07 01 03 14 00 00 ... (20个字节的0)
  • 00 07: 长度 (后面的 PDU 01 03 14 ...共 7 个字节)

  • 03: 功能码 (与请求一致)

  • 14: 字节数 (10个寄存器 * 2字节/寄存器 = 20字节,即 0x14)

  • 00 00 ...: 寄存器的数据 (每个寄存器2字节)

Modbus RTU 示例:主站请求读取从站 (ID=1) 的保持寄存器 (功能码 03),起始地址为 0,读取 10 个寄存器。

请求报文 (Request):

复制代码
01 03 00 00 00 0A C5 CD
  • 01: 从站地址

  • 03: 功能码 (Read Holding Registers)

  • 00 00: 起始地址 (0)

  • 00 0A: 寄存器数量 (10)

  • C5 CD: CRC16 校验码 (由 01 03 00 00 00 0A计算得出)

响应报文 (Response):

假设所有寄存器的值都是 0,响应应为:

01 03 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 XX XX(最后的 XX XX是 CRC)

  • 01: 从站地址

  • 03: 功能码

  • 14: 字节数 (20字节)

  • 00 00 ...: 20个字节的0 (10个寄存器的数据)

  • XX XX: CRC16 校验码

相关推荐
杜子不疼.3 分钟前
CANN计算机视觉算子库ops-cv的图像处理与特征提取优化实践
图像处理·人工智能·计算机视觉
大闲在人4 分钟前
软件仍将存在,但软件公司会以全新形式出现——从Claude智能体引发万亿市值震荡看行业重构
人工智能
艾莉丝努力练剑4 分钟前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
芷栀夏8 分钟前
从 CANN 开源项目看现代爬虫架构的演进:轻量、智能与统一
人工智能·爬虫·架构·开源·cann
梦帮科技18 分钟前
OpenClaw 桥接调用 Windows MCP:打造你的 AI 桌面自动化助手
人工智能·windows·自动化
永远都不秃头的程序员(互关)24 分钟前
CANN模型量化赋能AIGC:深度压缩,释放生成式AI的极致性能与资源潜力
人工智能·aigc
爱华晨宇28 分钟前
CANN Auto-Tune赋能AIGC:智能性能炼金术,解锁生成式AI极致效率
人工智能·aigc
聆风吟º30 分钟前
CANN算子开发:ops-nn神经网络算子库的技术解析与实战应用
人工智能·深度学习·神经网络·cann
偷吃的耗子35 分钟前
【CNN算法理解】:CNN平移不变性详解:数学原理与实例
人工智能·算法·cnn
勾股导航36 分钟前
OpenCV图像坐标系
人工智能·opencv·计算机视觉