C#ModBus Tcp 报文解析
上一篇博客已经完成 C#ModBus Tcp Master的实现
本篇主要对不同的功能码所发出的报文进行解析(包括请求报文及响应报文)
读操作
功能码 0x01 读一组线圈 读取站号为1 从地址12开始的10个线圈
测试结果
上一篇博客已经总结了读操作报文格式,就按照格式划分
报文解析:
注意:报文中线圈起始地址 00000 对应设备中 10001 地址,其他顺延
功能码0x02 报文格式与功能码0x01一致,只是第八字节的功能码变为02 其他完全一致,不再重复解析
功能码0x03 读一组保持寄存器 读取站号为1 从地址12开始的10个值
报文解析:
功能码0x04 报文格式与功能码0x03一致,只是第八字节的功能码变为04 其他完全一致,也不再重复解析
写操作
操作码:0x05 写单个线圈 将站号为1 地址为21的线圈置为On
注意:在报文中 指定线圈通断标志 FF00 置线圈为ON 0000置线圈为OFF
报文解析:
功能码0x0F 写一组线圈 将站号1 起始地址21 的连续五个线圈置为 通,断,断,通,通
测试结果:
报文解析:
功能码 0x06 写单个保持寄存器 将6666写入从站1 地址为21 的保持寄存器中
测试结果
报文解析:
功能码0x10 写一组保持寄存器 例如 将12 23 34 45 56 67 78 分别写入从站1 起始地址为21的7个连续的保持寄存器中
测试结果
报文解析:
到此为止,我们常用的几个ModBus功能码报文都解析完毕了 有错误之处 希望大家不吝赐教,感谢(抱拳~)
C#ModBus Tcp 报文解析的更多相关文章
- 【.NET6+Modbus】Modbus TCP协议解析、仿真环境以及基于.NET实现基础通信
前言:随着工业化的发展,目前越来越多的开发,从互联网走向传统行业.其中,工业领域也是其中之一,包括各大厂也都在陆陆续续加入工业4.0的进程当中. 工业领域,最核心的基础设施,应该是与下位硬件设备或程序 ...
- TCP报文解析
概述 在<网络基础总结(一)>总结了TCP建立连接和断开连接的流程,然而TCP协议远比我所了解的复杂得多,我所知的可以说就冰山一角,所总结的也只是纸上谈兵,仅仅只能对TCP有个肤浅的认识, ...
- C#ModBus Tcp
C#ModBus Tcp 报文解析 上一篇博客已经完成 C#ModBus Tcp Master的实现 本篇主要对不同的功能码所发出的报文进行解析(包括请求报文及响应报文) 读操作 功能码 0x01 ...
- freemodbus modbus TCP 学习笔记
1.前言 使用modbus有些时间了,期间使用过modbus RTU也使用过modbus TCP,通过博文和大家分享一些MODBUS TCP的东西.在嵌入式中实现TCP就需要借助一个以太网协议 ...
- 初识Modbus TCP/IP-------------C#编写Modbus TCP客户端程序(一)
转自:http://blog.csdn.net/thebestleo/article/details/52269999 首先我要说明一下,本人新手一枚,本文仅为同样热爱学习的同学提供参考,有不 对的地 ...
- DotNetty 实现 Modbus TCP 系列 (一) 报文类
本文已收录至:开源 DotNetty 实现的 Modbus TCP/IP 协议 Modbus TCP/IP 报文 报文最大长度为 260 byte (ADU = 7 byte MBAP Header ...
- Modbus TCP 示例报文
调试modbus tcp 整理百度文库文档如下 <modbus-tcp-报文举例分析> <MODBUSTCP通讯报文> Client request: 19 B2 00 00 ...
- modbus tcp数据报文结构
modbus tcp数据报文结构 请求:00 00 00 00 00 06 09 03 00 00 00 01 响应:00 00 00 00 00 05 09 03 02 12 34 一次modbus ...
- TCP连接过程及报文解析
可能大家都听过TCP建立连接时需要经历三次握手和四次挥手的. 那么具体的握手挥手的过程是怎么样的呢? 这篇文章就通过WireShark抓包来了解TCP连接建立和断开的过程. 实验方法: 写一段简单的代 ...
随机推荐
- flutter中使用shared_preferences的存储
添加依赖 shared_preferences: ^+ 工具类 import 'dart:async'; import 'package:shared_preferences/shared_prefe ...
- shell编程系列14--文本处理三剑客之awk的概述及常用方法总结
shell编程系列14--文本处理三剑客之awk的概述及常用方法总结 awk是一个文本处理工具,通常用于处理数据并生成结果报告 awk的命名是它的创始人 Alfred Aho.Peter Weinbe ...
- Python3基础 函数 多值参数 元组与字典形式(键值对分别指出)
Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 ...
- 泡泡一分钟:Robust and Fast 3D Scan Alignment Using Mutual Information
Robust and Fast 3D Scan Alignment Using Mutual Information 使用互信息进行稳健快速的三维扫描对准 https://arxiv.org/pdf/ ...
- 【DataBase】H2 DateBase的拓展使用
连接模式 支持以下连接模式: 嵌入模式(使用JDBC的本地连接) 服务器模式(使用JDBC或ODBC over TCP / IP进行远程连接) 混合模式(同时本地和远程连接) 嵌入模式 在嵌入模式下, ...
- 了解美杜莎(Medusa)
(1).美杜莎介绍 Medusa(美杜莎)是一个速度快,支持大规模并行,模块化的暴力破解工具.可以同时对多个主机,用户或密码执行强力测试.Medusa和hydra一样,同样属于在线密码破解工具.Med ...
- POJ 2584 T-Shirt Gumbo 二分图的多重匹配
题目链接:http://poj.org/problem?id=2584 题目大意:有SMLXT五种T恤型号,有N个人,每个人有一个可选的型号区间,你现在要发给N个人每人一条他可以选择的型号的T恤,问能 ...
- 看看该死的jquery.form.js的用法,不是个东西
$("#btnReg").click(function () { var options = { //target: '#output', // 把服务器返回的内容放入id为out ...
- angular2 select 联动
界面操作触发大分类id改变,根据id获取二级分类的数据进行绑定显示. html: <div style="overflow: hidden;float: left;padding-le ...
- The underlying connection was closed: The connection was closed unexpectedly.
基础连接已经关闭: 连接被意外关闭. 基础连接已经关闭: 发送时发生错误 防火墙问题.或是杀毒软件,卫士之类的.(360 卸载 )