这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 电源与模拟 » 你所不知道的Modbus通信协议

共5条 1/1 1 跳转至

你所不知道的Modbus通信协议

工程师
2020-03-19 17:17:34     打赏
我们前边学习 UART、I2C、SPI 这些通信协议,都是最底层的协议,是“位”级别的协议。而我们在学习 13 章做实用串口通信程序的时候,我们通过串口发给单片机三条指令,让单片机做了三件不同的事情,分别是“buzz on”、“buzz off”和“showstr”。随着系统复杂性的增加,我们希望可以实现更多的指令。而指令越来越多,带来的后果就是非常杂乱无章,尤其是这个人喜欢写成“buzz on”、“buzz off”,而另外一个人喜欢写成“on buzz”、“off buzz”。导致不同开发人员写出来的程序代码不兼容,不同厂家的产品不能挂到一条总线上通信。
随着这种矛盾的日益严重,就会有聪明人提出更合理的解决方案,提出一些标准来,今后我们的编程必须按照这个标准来,这种标准也是一种通信协议,但是和 UART、I2C、SPI通信协议不同的是,这种通信协议是字节级别的,叫做应用层通信协议。在 1979 年由 Modicon(现为施耐德电气公司的一个品牌)提出了全球第一个真正用于工业现场总线的协议,就是Modbus 协议。
Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信,已经成为一种工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。这种协议定义了一种控制器能够认识使用的数据结构,而不管它们是经过何种网络进行通信的。它描述了控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误记录,它制定了通信数据的格局和内容的公共格式。
在进行多机通信的时候,Modbus 协议规定每个控制器必须要知道它们的设备地址,识别按照地址发送过来的数据,决定是否要产生动作,产生何种动作,如果要回应,控制器将生成的反馈信息用 Modbus 协议发出。
Modbus 协议允许在各种网络体系结构内进行简单通信,每种设备(PLC、人机界面、控制面板、驱动程序、输入输出设备等)都能使用 Modbus 协议来启动远程操作,一些网关允许在几种使用 Modbus 协议的总线或网络之间的通信,如图 18-4 所示。
Modbus 网络体系结构实例.png


图18-4  Modbus 网络体系结构实例
Modbus 协议的整体架构和格式比较复杂和庞大,在我们的课程里,我们重点介绍数据帧结构和数据通信控制方式,作为一个入门级别的了解。如果大家要详细了解,或者使用Modbus 开发相关设备,可以查阅相关的国标文件再进行深入学习。Modbus 有两种通信传输方式,一种是 ASCII 模式,一种是 RTU 模式。大家先一起去查查资料吧。

答案:答案汇总:http://www.cirmall.com/bbs/thread-161132-1-1.html
参与讨论,即可快速获取以下几本电源书籍(电子版)





关键词: 你所     不知道     Modbus     通信     协议    

工程师
2020-03-21 15:47:46     打赏
2楼

学习学习


工程师
2020-03-21 15:57:56     打赏
3楼

学习了  感谢分享


工程师
2020-03-21 22:57:20     打赏
4楼

头大啊,我对Modbus,看了多次(包括在其他地方),都不太搞懂。。惭愧!



工程师
2020-03-21 23:02:50     打赏
5楼

跟4楼同问,希望有大神对Modbus进行直播讲解一下啊!


共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]