Modbus软件开发实战指南

作者:杨更更, 著

出版:清华大学出版社

年代:2017

电子纸书:¥39

图书简介


  Modbus是工业自动化领域使用*广泛的通信协议之一,随着电子、计算机和通信技术的不断发展,特别是物联网以及“互联网+”等概念的兴起,Modbus通信技术也从串行总线发展到了Modbus TCP,方兴未艾。为了让广大在校学生、工业控制和自动化工程师、技术人员了解Modbus协议的内涵,特别是彻底掌握Modbus通信技术的软件开发方法,作者从初学者的角度,由浅入深,循循善诱,以文字和画面相结合的方式撰写了本书。

  本书分为11章,依次介绍了Modbus协议,特别是功能码消息帧的定义,然后从软件开发的角度,详细介绍了辅助调试工具、软件开发环境的构筑,重点介绍和解析了libmodbus开发库的源代码,以及使用libmodbus在不同语言环境下的开发技巧。阅读本书,可快速入门并精通Modbus软件开发技术。作为一本软件技术开发指南的书籍,本书不仅仅局限于Modbus通信协议,对其他通信协议的软件开发也有很强的参考价值。

  本书可作为各大中专院校、工程设计院、系统集成商和工厂企业的Modbus通信协议开发人员的软件设计和开发的入门指导书籍,也可作为工业自动化领域及物联网开发的参考资料,还可供广大自动化及通信专业的教师、学生及物联网开发爱好者阅读。

(展开)

目录

第1章初识Modbus1

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.2Modbus Poll的使用16

2.2.1简介16

2.2.2功能17

2.2.3使用方法18

2.3Modbus Slave的使用21

2.3.1简介21

2.3.2功能22

2.3.3使用方法232.4Modbus PollSlave互联互通24

2.5Visual Studio 2015的安装28



第3章Modbus协议的相关知识31

3.1协议概要32

3.2Modbus寄存器34

3.2.1寄存器种类说明34

3.2.2寄存器地址分配35

3.3Modbus串行消息帧格式35

3.3.1ASCII消息帧格式36

3.3.2RTU消息帧格式36

3.3.3地址域38

3.3.4功能码域39

3.3.5数据域39

3.4Modbus差错校验39

3.4.1LRC校验40

3.4.2CRC校验42

3.5字节序和大小端49

3.5.1来历49

3.5.2为什么会有大小端50

3.5.3什么是“大端”和“小端”51

3.6Modbus TCP消息帧格式53

3.6.1协议描述53

3.6.2查询与响应报文例56



第4章Modbus功能码详解59

4.1功能码概要60

4.201(0x01)读取线圈/离散量输出状态61

4.2.1功能说明61

4.2.2查询报文61

4.2.3响应报文62

4.2.4借助工具软件观察和理解63

4.302(0x02)读取离散量输入值72

4.3.1功能说明72

4.3.2查询报文72

4.3.3响应报文73

4.403(0x03)读取保持寄存器值74

4.4.1功能说明74

4.4.2查询报文74

4.4.3响应报文75

4.504(0x04)读取输入寄存器值76

4.5.1功能说明76

4.5.2查询报文76

4.5.3响应报文77

4.605(0x05)写单个线圈或单个离散输出78

4.6.1功能说明78

4.6.2查询报文79

4.6.3响应报文79

4.706(0x06)写单个保持寄存器80

4.7.1功能说明80

4.7.2查询报文80

4.7.3响应报文81

4.808(0x08)诊断功能82

4.8.1功能说明82

4.8.2查询报文82

4.8.3响应报文83

4.8.4诊断子功能码84

4.911(0x0B)获取通信事件计数器87

4.9.1功能说明87

4.9.2查询报文87

4.9.3响应报文88

4.1012(0x0C)获取通信事件记录89

4.10.1功能说明89

4.10.2查询报文89

4.10.3响应报文90

4.1115(0x0F)写多个线圈91

4.11.1功能说明91

4.11.2查询报文91

4.11.3响应报文92

4.1216(0x10)写多个保持寄存器93

4.12.1功能说明93

4.12.2查询报文93

4.12.3响应报文95

4.1317(0x11)报告从站ID(仅用于串行链路)96

4.13.1功能说明96

4.13.2查询报文96

4.13.3响应报文97

4.14Modbus异常响应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.3RTU/TCP关联接口函数132

6.3.1RTU模式关联函数133

6.3.2TCP模式关联函数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中使用libmodbus193

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#中使用libmodbus217

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.2NModbus类库用法232



第11章打造自己的Modbus调试工具237

11.1开发自己的Modbus Poll238

11.1.1软件需求分析238

11.1.2命令行解析功能240

11.1.3创建应用程序并调试246

11.2开发自己的Modbus Slave270

11.2.1软件需求分析270

11.2.2创建应用程序并调试272



参考文献284
(展开)

书页展示

更多图书信息

作者:杨更更, 著
出版:清华大学出版社

ISBN:9787302464754

出版日期:2017-03-01

评论
(0)

纸书比价
定价:¥59

相关图书

清华大学出版社

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。作为来自一流大学的出版单位,清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。目前,清华版教材已在全国一百多所院校得到广泛使用。高品质、多层次的计算机图书是清华大学出版社的一大品牌支柱。20世纪80年代末,在席卷全球的信息化浪潮中,清华大学出版社快速切入计算机图书市场,逐渐成为并一直保持这一市场的领先地位,为发展中国计算机教育做出了巨大贡献。

(展开)

作者信息

杨更更, 著

  杨更更,2003年毕业于清华大学,先后加入中国航天科工集团公司、日本横河电机株式会社等多家大型企业工作。曾作为主要研发人员,参与过多个大型项目的开发,了解并精通各现场总线通信协议,所开发的多个软硬件设备,正在世界各地稳定地运行。作为一个纯粹的技术开发者,闲暇时爱读书,所猎甚广,每有所得便欣欣然也。

(展开)

使用移动设备
扫描二维码下载客户端

Copyright © 2017 BookAsk 书问 | 京ICP证160134号 | 收藏书问 | 开发合作 | 商务合作 | 合作伙伴 | 关于我们