MODBUS软件开发实战指南PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:杨更更著
- 出 版 社:北京:清华大学出版社
- 出版年份:2017
- ISBN:9787302464754
- 页数:284 页
第1章 初识Modbus 1
1.1 背景 2
1.2 模型 4
1.3 协议版本 4
1.4 通信设备 6
1.5 事务处理 6
1.6 专业术语 9
第2章 Modbus开发环境 11
2.1 虚拟串口软件 12
2.1.1 什么是虚拟串口软件 12
2.1.2 使用方法 13
2.2 Modbus Poll的使用 16
2.2.1 简介 16
2.2.2 功能 17
2.2.3 使用方法 18
2.3 Modbus Slave的使用 21
2.3.1 简介 21
2.3.2 功能 22
2.3.3 使用方法 23
2.4 Modbus Poll-Slave互联互通 24
2.5 Visual Studio 2015的安装 28
第3章 Modbus协议的相关知识 31
3.1 协议概要 32
3.2 Modbus寄存器 34
3.2.1 寄存器种类说明 34
3.2.2 寄存器地址分配 35
3.3 Modbus串行消息帧格式 35
3.3.1 ASCII消息帧格式 36
3.3.2 RTU消息帧格式 36
3.3.3 地址域 38
3.3.4 功能码域 39
3.3.5 数据域 39
3.4 Modbus差错校验 39
3.4.1 LRC校验 40
3.4.2 CRC校验 42
3.5 字节序和大小端 49
3.5.1 来历 49
3.5.2 为什么会有大小端 50
3.5.3 什么是“大端”和“小端” 51
3.6 Modbus TCP消息帧格式 53
3.6.1 协议描述 53
3.6.2 查询与响应报文例 56
第4章 Modbus功能码详解 59
4.1 功能码概要 60
4.2 01(0×01)读取线圈/离散量输出状态 61
4.2.1 功能说明 61
4.2.2 查询报文 61
4.2.3 响应报文 62
4.2.4 借助工具软件观察和理解 63
4.3 02(0×02)读取离散量输入值 72
4.3.1 功能说明 72
4.3.2 查询报文 72
4.3.3 响应报文 73
4.4 03(0×03)读取保持寄存器值 74
4.4.1 功能说明 74
4.4.2 查询报文 74
4.4.3 响应报文 75
4.5 04(0×04)读取输入寄存器值 76
4.5.1 功能说明 76
4.5.2 查询报文 76
4.5.3 响应报文 77
4.6 05(0×05)写单个线圈或单个离散输出 78
4.6.1 功能说明 78
4.6.2 查询报文 79
4.6.3 响应报文 79
4.7 06(0×06)写单个保持寄存器 80
4.7.1 功能说明 80
4.7.2 查询报文 80
4.7.3 响应报文 81
4.8 08(0×08)诊断功能 82
4.8.1 功能说明 82
4.8.2 查询报文 82
4.8.3 响应报文 83
4.8.4 诊断子功能码 84
4.9 11(0×0B)获取通信事件计数器 87
4.9.1 功能说明 87
4.9.2 查询报文 87
4.9.3 响应报文 88
4.10 12(0×0C)获取通信事件记录 89
4.10.1 功能说明 89
4.10.2 查询报文 89
4.10.3 响应报文 90
4.11 15(0×0F)写多个线圈 91
4.11.1 功能说明 91
4.11.2 查询报文 91
4.11.3 响应报文 92
4.12 16(0×10)写多个保持寄存器 93
4.12.1 功能说明 93
4.12.2 查询报文 93
4.12.3 响应报文 95
4.13 17(0×11)报告从站ID(仅用于串行链路) 96
4.13.1 功能说明 96
4.13.2 查询报文 96
4.13.3 响应报文 97
4.14 Modbus异常响应 97
第5章 libmodbus开发库 101
5.1 功能概要 102
5.2 源码获取与编译 102
5.3 与应用程序的关系 109
第6章 libmodbus源码解析 111
6.1 类型与结构定义 112
6.1.1 精细类型定义 112
6.1.2 常量定义 114
6.1.3 核心结构体定义之一 115
6.1.4 核心结构体定义之二 120
6.2 常用接口函数 122
6.2.1 各类辅助接口函数 122
6.2.2 各类Modbus功能接口函数 126
6.2.3 数据处理的相关函数或宏定义 131
6.3 RTU/TCP关联接口函数 132
6.3.1 RTU模式关联函数 133
6.3.2 TCP模式关联函数 135
6.4 部分内部函数详解 135
6.4.1 函数read_io_status() 135
6.4.2 函数read_registers() 141
6.4.3 函数write_single() 144
6.4.4 函数modbus_mapping_new_start_address() 147
6.5 开发应用程序基本流程 151
第7章 完整RTU模式开发范例 153
7.1 开发RTU Master端 154
7.1.1 新建工程 154
7.1.2 添加开发库 155
7.1.3 添加应用源代码 158
7.1.4 代码调试 166
7.2 开发RTU Slave端 169
7.2.1 新建工程并添加开发库 169
7.2.2 添加应用源代码 169
第8章 完整TCP模式开发范例 173
8.1 开发TCP Client端 174
8.1.1 新建工程 174
8.1.2 添加开发库 176
8.1.3 添加应用源代码 177
8.1.4 代码调试 186
8.2 开发TCP Server端 189
8.2.1 新建工程并添加开发库 189
8.2.2 添加应用源代码 189
第9章 Visual Basic中使用libmodbus 193
9.1 函数调用约定与修饰名 194
9.1.1 函数调用约定 194
9.1.2 函数修饰名 196
9.1.3 调用约定的使用 198
9.2 模块定义文件 198
9.3 对libmodbus开发库的改造 200
9.3.1 添加__stdcall调用符 200
9.3.2 添加DEF模块定义文件 201
9.4 开发Visual Basic程序 204
9.4.1 创建新项目 204
9.4.2 添加函数描述文件 205
9.4.3 调用libmodbus库函数 213
第10章 Visual C#中使用libmodbus 217
10.1 开发Visual C#程序 218
10.1.1 创建新项目 218
10.1.2 添加函数描述文件 219
10.1.3 调用libmodbus库函数 226
10.2 基于C#的NModbus类库 230
10.2.1 什么是NModbus类库 230
10.2.2 NModbus类库用法 232
第11章 打造自己的Modbus调试工具 237
11.1 开发自己的Modbus Poll 238
11.1.1 软件需求分析 238
11.1.2 命令行解析功能 240
11.1.3 创建应用程序并调试 246
11.2 开发自己的Modbus Slave 270
11.2.1 软件需求分析 270
11.2.2 创建应用程序并调试 272
参考文献 284
- 《近代旅游指南汇刊二编 16》王强主编 2017
- 《甘肃省档案馆指南》甘肃省档案馆编 2018
- 《Maya 2018完全实战技术手册》来阳编著 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《近代旅游指南汇刊 31》王强主编 2014
- 《Python3从入门到实战》董洪伟 2019
- 《近代旅游指南汇刊二编 10》王强主编 2017
- 《手工咖啡 咖啡爱好者的完美冲煮指南》(美国)杰茜卡·伊斯托,安德烈亚斯·威尔霍夫 2019
- 《近代旅游指南汇刊 13》王强主编 2014
- 《近代旅游指南汇刊 28》王强主编 2014
- 《材料力学》王化更著 2017
- 《漫步人生》韩更著 1997
- 《汉语语法新通路 修订版》周晓更著 2009
- 《中国不缺建筑师》阿更著 2009
- 《学算术的故事》王力更著 1955
- 《相聚在雨后的密林》程光炜,孔令更著 1986
- 《我的笨熊女友 1》(韩)金恩更著;金琳娜译 2005
- 《我的笨熊女友 2》(韩)金恩更著;金琳娜译 2006
- 《最新电脑上网掌中宝 第2版》杨更更,高永健等编著 2004
- 《绿香蕉的故事:台湾少儿旅游故事》杜文更著 1998
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019