欢迎来到天天文库
浏览记录
ID:12574510
大小:61.50 KB
页数:16页
时间:2018-07-17
《modbus与tcpip协议规范详细介绍》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1.该规范的发展概况 原始版本1997年9月3日作为公共评论的草案。 再版1999年3月29日,即修订版1.0。 没有大的技术改动,仅作了补充说明。增加了附录A和B作为对一些常用执行问题的回应。该Modbus/TCP规范在万维网上公开发行。它表明开发者的意愿是把它作为工业自动化领域具有互用性的标准。既然MODBUS和MODBUS/TCP作为事实上的“实际”标准,而且很多生产商已经实现了它的功能,此规范主要是阐述在互连网上具有普遍可用性的基于TCP通讯协议的MODBUS报文的特殊编码。 2. 概 述
2、MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列通讯协议的派生产品。显而易见,它覆盖了使用TCP/IP协议的“Intranet”和“Internet”环境中MODBUS报文的用途。协议的最通用用途是为诸如PLC’s,I/O模块,以及连接其它简单域总线或I/O模块的网关服务的。 MODBUS/TCP协议是作为一种(实际的)自动化标准发行的。既然MODBUS已经广为人知,该规范只将别处没有收录的少量信息列入其中。然而,本规范力图阐明MODBUS中哪种功能对于普通自动化设备的互用性有价值,哪
3、些部分是MODBUS作为可编程的协议交替用于PLC’s的“多余部分”。 它通过将配套报文类型“一致性等级”,区别那些普遍适用的和可选的,特别是那些适用于特殊设备如PLC’s的报文。 2.1面向连接 在MODBUS中,数据处理传统上是无国界的,使它们对由噪音引起的中断有高的抵抗力,而且在任一端只需要最小的维护信息。 编程操作,另一方面,期望一种面向连接的方法。这种方法对于简单变量通过唯一的“登录”
4、符号完成,对于ModbusPlus变量,通过明确的“程序路径”容量来完成,而“程序路径”容量维持了一种双向连接直到被彻底击穿。 MODBUS/TCP处理两种情况。连接在网络协议层很容易被辨认,单一的连接可以支持多个独立的事务。此外,TCP允许很大数量的并发连接,因而很多情况下,在请求时重新连接或复用一条长的连接是发起者的选择。 熟悉MODBUS的开发者会感到惊讶:为什么面向连接TCP协议比面向数据报的UDP要应用广泛。主要原因是通过封装独立的“事务”在一个连接中,此连接可被识别,管理和取消而无须请求客户和服务器采用
5、特别的动作。这就使进程具有对网络性能变化的适应能力,而且容许安全特色如防火墙和代理可以方便的添加。 类似的推理被最初的万维网的开发者所采用,他们选用TCP及端口80去实现一个作为单一事务的最小的环球网询问。 2.2数据编码 MODBUS采用“big-endian”来表示地址和数据对象。 这就意味着当一个数字表示的数量大于所传输的单一字节,最大有效字节将首先被发送。例如:16bits0x1234将
6、为0x120x3432bits0x12345678L将为0x120x34 0x560x78 2.3参考编号的解释 MODBUS将其数据模型建立在一系列具有不同特征的表的基础之上。这四个基本表如下l 离散输入 单比特,由I/O系统提供,只读l 离散输出 单比特,由应用程序更改,读写l 输入寄存器 16比特,数值,由I/O系统提供 ,只读l 输出寄存器 16比特,数
7、值,由应用程序更改,读写 输入和输出之间以及可寻址位和可寻址代码的数据对象之间的差别并不意味着任何应用性能的不同。如果这是我们所讨论的目标机械的最自然的解释,那么认为所有的四个基本表是相互覆盖的看法也是非常普通而完全可以接受的。 对于每一个基本表,协议允许单独选择65536个数据对象中的任何一个,而且对那些对象的读写操作可以跨越多个连续的数据对象,直到达到基于处理事务功能代码的数据大小限制。
8、这儿没有假定数据对象代表一种真正邻接的数据阵列,而这是大多数简单PLC’s的解释。 “读写常用参考”功能代码被定义为携带32位的参考值并且能允许在“非常”大的空间里可以直接访问数据对象。现在没有可以利用这一特点的PLC设备。 一个易造成混乱的潜在来源是用于MODBUS功能的参考值和用于Modic
此文档下载收益归作者所有