moudbus报文解析
modbus报文解析
主机发送要遥测数据报文
01 03 00 01 00 0A 94 0D
01->站地址:1
03->功能码:读保持寄存器
00 01->寄存器地址:1
00 0a->寄存器个数:10
94 0d->校验码
从机回复
01 03 14 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0A 8F 16
01->站地址:1
03->功能码:读保持寄存器
14->字节个数:20
00 01->遥测0:1
00 02->遥测1:2
00 03->遥测2:3
00 04->遥测3:4
00 05->遥测4:5
00 06->遥测5:6
00 07->遥测6:7
00 08->遥测7:8
00 09->遥测8:9
00 0a->遥测9:10
8f 16->校验码
主机发送要遥信报文
01 02 00 14 00 0A B8 09
01->站地址:1
02->功能码:读输入寄存器状态
00 14->寄存器地址:20
00 0a->寄存器个数:10
b8 09->校验码
从机回复
01 02 02 FF 03 B8 49
01->站地址:1
02->功能码:读输入寄存器状态
02->字节个数:2
ff->
遥信0:1
遥信1:1
遥信2:1
遥信3:1
遥信4:1
遥信5:1
遥信6:1
遥信7:1
03->
遥信8:1
遥信9:1
b8 49->校验码
固定格式
主机发送
从机地址 | 功能码 | 寄存器起始地址 | 寄存器个数 | 校验 | |
---|---|---|---|---|---|
字节数 | 1 | 1 | 2 | 2 | 2 |
从机回复
从机地址 | 功能吗 | 字节个数 | 数据 | 校验 | |
---|---|---|---|---|---|
字节数 | 1 | 1 | 1 | … | 2 |
采用主从问答方式,当通讯命令由主机发送至从机时,符合相应地址码的从机接收到通讯命令后,并根据功能码及相关要求读取信息,如果CRC校验无误,则执行相应的任务,然后把执行结果返送给主机。返回的信息中包含地址码,功能码,执行后的数据及CRC校验码。如果CRC校验出错就不返回任何信息。
从机地址
一般是1~247
功能码
一般根据从机点表通讯定义来,也包含了遥测遥信信息。
常见的功能码:
功能码 | 功能说明 |
---|---|
01H(1) | 读取输出线圈,即DO的ON/OFF状态 |
02H(2) | 读取输入线圈, 即DI的ON/OFF状态 |
03H(3) | 读取保持寄存器 |
04H(4) | 读取输入寄存器 |
05H(5) | 写入单线圈 |
06H(6) | 写入单寄存器 |
0FH(15) | 写入多线圈 |
10H(16) | 写入多寄存器 |
05H功能码写单个线圈时,写值只能为0xFF00(on),0x0000 (off),其他均为非法值
06H功能码写入单寄存器,写值范围0000-FFFF ,具体含义由从机定义
对于05,06,15,16主机正确写入,
从机标准只回复8个字节:从机地址(1) 功能码(1) 寄存器起始地址(2) 寄存器个数(2) 校验(2)
modbus遥测负数解析
从机回复遥测
01 03 14 00 01 FF FF 00 02 FF FE 00 10 FF F0 00 03 00 04 00 05 00 06 F3 0A
01->站地址:1
03->功能码:读保持寄存器
14->字节数:20 遥测的数据类型全部是int16
00 01->遥测0:1
ff ff->遥测1:-1
00 02->遥测2:2
ff fe->遥测3:-2
00 10->遥测4:16
ff f0->遥测5:-16
00 03->遥测6:3
00 04->遥测7:4
00 05->遥测8:5
00 06->遥测9:6
f3 0a->校验码
遥测数值在报文中全部以补码的形式传输
正数的原码,反码,补码相同
负数的反码等于原码除符号位取反,补码等于反码+1
16的原码
0000 0000 0000 0000 0001 0000 转为十六进制 00 10
-16的源码
1000 0000 0000 0000 0001 0000
-16的反码
1111 1111 1111 1111 1110 1111
-16的补码
1111 1111 1111 1111 1111 0000 转为十六进制ff f0
moudbus报文解析相关推荐
- 基于DPI(深度报文解析)的应用识别
一.概述 1.DPI(Deep packet inspection,深度报文解析) 所谓"深度"是和普通的报文分析层次相比較而言的,"普通报文检測"仅分析IP包 ...
- hj212协议如何和php通讯,HJ212数据传输标准报文解析
HJ212分为2005年(HJ/T212-2005)和2017年(HJ212-2017)的版本,略有不同. 网上没找到非常官方的渠道下载,在这贴一份2017年版本的下载地址 TCP/IP通讯包组成 名 ...
- 双层json报文样例_json报文解析
1.json字符串报文解析 for (Iterator> iterator = map.entrySet().iterator(); iterator.hasNext(); ) { Map.En ...
- 20201217-IP报文解析
20201215-IP报文解析 {1}报文结构 ![图片.png](https://img-blog.csdnimg.cn/img_convert/718558a49aa5479c6049e1ea7f ...
- 8583 报文解析过程
一. 全局概述 1. <多渠道平台接入接口规范>这个标准规定了各种接入端(主要包括直联多渠道平台的终端, 包括这里主要关注的POS机)与中国银联多渠道平台之间进行联机交易时使用的报文接口, ...
- 第一章 银联8583报文解析
1报文格式定义 POS终端上送POS中心的消息报文结构包括TPDU.报文头和应用数据三部分: -- TPDU说明:长度为10个字节, 压缩时用BCD码表示为5个字节长度的数值. -- 报文头说明:总长 ...
- DPI(Deep packet inspection,深度报文解析)
DPI(Deep packet inspection,深度报文解析) 正好,有这么一个基于opendpi框架的深度报文分析的工具--ndpi ndpi是在opendpi的基础上编写而来的协议分析工具. ...
- 【通信原理】PC上调试MODBUS基本功能(附报文解析)
目录 一 测试环境配置: 二 MODBUS概述: 三 MODBUS测试步骤: 四 MODBUS协议分析: 一 测试环境配置: 本文用到的测试工具如下: (1)Mthings:MThings是一款基于M ...
- DLT645-2007 规约 电表 报文解析
注:本文为转载 转载地址:https://wenku.baidu.com/view/cc10838283d049649b66580d.html DLT645-2007 规约 常见报文解析 //2012 ...
- 西门子PLC的S7协议报文解析说明
我们以S7的1500系列来查看握手和读取.写入[字Word或者位Bit]命令报文 以下报文不做说明时都是十六进制字节. 西门子PLC需要连接成功后发送两次握手命令方可进行读写通信. 西门子PLC的S7 ...
最新文章
- CTO 两年吃回扣上百万元,将面临数十年监禁
- MySQL Cluster集群配置方案
- redis 数据库主从不一致问题解决方案
- 浅谈Python和VC中的编码问题(转)
- Mysql InnoDB Plugin安装 install
- 价值投资/指标选股(akshare)
- 奇怪的电梯(洛谷-P1135)
- 北大青鸟ASP.NET之总结篇
- 【转载】如何使员工更敬业
- win10本地计算机策略进不去,Win10家庭版进不去组策略gpedit.msc的解决方法
- SpringMVC框架(一)
- 数据可视化技术有什么特点
- 北大计算机山西,2019年山西省清华、北大录取人数及招生情况整理汇总
- 获取微信中的音频方法
- 校验码——海明码及码距,码距
- Ipconfig ping tracert netstat arp的使用
- 各学科、各专业、全系列软件图文、视频安装详细教程总贴——CM(changeMax)独家制作,汇总
- 【练习】DIY青志协网站(html+css+js未分开)
- matlab 字符串标量和字符向量
- 《代码整洁之道》——(5)对象和数据结构
热门文章
- st语言 数组的常用方法_三菱ST语言教学(2)——数组的使用
- 微信小程序通过点击事件传参(data-)
- H5app 调用手机摄像头拍照、录制视频并上传demo
- Xcode打包ipa的基本步骤(有证书和无证书)
- Hadoop原理之checkpoint机制
- 维修系统php源码,v3.4.0智睿报修管理系统
- 这是我看过最棒的MEMS介绍文章,从原理制造到应用全讲透(强推)
- 抖音小程序二维码生成
- 海康(hikvision)录像机添加萤石(ezviz)摄像机常见问题(转)
- dep指定版本 go_Golang官方依赖管理工具:dep