电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> PLC基础及应用 >> 正文

MODBUS规约报文解析

作者:佚名    文章来源:本站原创    点击数:    更新时间:2022-04-08

MODBUS规约报文解析

报文格式,报文全部为16进制,遥信状态需要转换为二进制:

主站发送报文

地址

功能码

寄存器起始地址

读取数据长度

CRC校验码

01

03

01

00

00

02

C5

F7

说明
(读取01地址设备03功能码遥信状态)

设备地址

设备的规约或点表查看
(
遥信、遥测、遥控)

从设备的:0x0100H 寄存器读取遥信状态,可以在规约或寄存器点表中查看。
0100说明:其中00为低位(1-8个遥信),01为高位(9-16个遥信)

读取:0x0100H、0x0101H 两个寄存器数据,一共读取32个遥信位置。

可通过串口软件自动计算出

主站接受报文

地址

功能码

数据长度

寄存器1状态0100H

寄存器2状态0101H

CRC校验码

01

03

04

03

43

00

00

0B

A3

说明
(读取01地址设备03功能码遥信状态)

设备地址

设备的规约或点表查看
(
遥信、遥测、遥控)

表示收到4个数据
(03、03、00、00)

高位状态
(9
~16号遥信状态,需转换成二进制)
00000011
第9、10个遥信为合位

低位状态
(1
~8号遥信状态,需转换成二进制)
01000011
第1、2、7个遥信为合位

高位
(17
~24号遥信状态,需转换成二进制)

低位
(25
~32号遥信状态,需转换成二进制)

设备自动计算出

MODBUS-RTU报文模型

设备地址

功能代码

数据格式

CRC校验L

CRC校验H

8bit

8bit

N*8bit

8bit

8bit

一个报文就是一帧数据,一个数据帧就一个报文: 指的是一串完整的指令数据,就像上面的一串数据。

主机对从机读数据操作

0x01

03

00 01

00 01

D5 CA

从机地址

功能号

数据地址

读取数据个数

CRC校验

从机对主机返回内容

0x01

03

02

00 17

F8 4A

从机地址

功能号

数据字节个数

两个字节数据

CRC校验

这样MODBUS主机就完成了一次对从机数据的读操作,实现了通讯。

MODBUS-RTU常用功能码

数据类型

读功能码

写功能码

对象类型

离散量输入

02

单个位

线圈状态

01

05,15

单个位

输入寄存器

04

16位字

保持寄存器

03

06,16

16位字

寄存器起始地址(起始数据地址)

数据类型

参数地址,寄存器编号

离散量输入

00001~0FFFF

线圈状态

10001~1FFFF

输入寄存器

30001~3FFFF

保持寄存器

40001~4FFFF

报文实例

遥控点号:开关操作=0300H 合操作

TX: 01 06 03 0000 02 08 4F //06表示遥控功能码,02表示分操作;

RX: 01 06 03 0000 02 08 4F //06表示遥控功能码,02表示分操作;

遥控点号:开关操作=0300H 分操作

TX: 01 06 03 0000 01 48 4E //06表示遥控功能码,01表示分操作;

RX: 01 06 03 0000 01 48 4E //06表示遥控功能码,01表示分操作;

遥测报文:每个遥测值占用2个字节,即1个寄存器,最大值为:0x0000H~0xFFFFH,即:0~65535。

发送数据:01 03 02 00 00 0D 85 B7 //16时27分02秒

接收数据:01 03 1A 00 00 00 00 00 00 1E AE 00 00 1EAD 1E AD 00 00 00 00 00 00 00 00 00 00 6A 96 77 67

总召换的电度

共有4个电度:

正向有功积分电度=0301H 10000.000(0x00989680),

正向无功积分电度=0302H 0.000 (0x0),

反向有功积分电度=0303H 0.000(0x0),

反向无功积分电度=0304H 0.000(0x0)。

TX:01 03 81 02 00 08 CD F0 //8102为总召唤,00 08 为数据长度

RX: 01 03 10 0098 96 80 00 00 00 00 00 00 00 00 00 00 00 00 15 64 //10为报文数据长度。

电度:( 03命令码)

寄存器号

遥测报文值

转换

10进制值

正向有功积分电度

0301H

00 98 96 80

10000000

正向无功积分电度

0302H

00 00 00 00

0

反向有功积分电度

0303H

00 00 00 00

0

反向无功积分电度

0304H

00 00 00 00

0

Tags:MODBUS,报文  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
推荐文章
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询