首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 电子技术 > 通信与网络
Modbus通信在PLC通道检测中的应用
来源:本站整理  作者:佚名  2010-06-27 10:09:58



由表1中可看出Modbus协议中依据数据属性的区别定义了四种数据类型:离散输入、线圈、输入寄存器和输出寄存器。这四种数据类型的组合构成了Modbus数据模型。它们在不同的设备内存中分配的方式是由生产厂家预先制定的,可以是在同一区域,也可以是有各自的独立区域或其他方式。

图2 Modbus PDU寻址方式


PDU的寻址方式也在Modbus应用层协议中作出了具体的定义。在Modbus PDU中每一个数据都赋予从0~65535中的一个值作为该数据的地址。而在Modbus数据模型中,每一种数据类型块中的数据单元都定义了一个从1到n(设备容量决定)的值作为其地址。Modbus数据模型要与符合IEC-61131标准的实际设备内存或者其他模型对应起来,这方面的映射关系是由设备生产厂家制定的。图二给出了Modbus寻址模型,设备内存中的四种数据模式的组织方式是由厂家决定的。由图2可知,一个Modbus PDU地址所对应的Modbus数据模型地址为该PDU地址加1。


2.2 Modbus通信实现方式
要实现设备间的通信,需要将Modbus应用层协议嵌入到ISO/OSI参考模型中的低层协议中。现行的通信方式有三种:
(1) 通过串行链路实现的异步数据传输(Modbus-RTU and Modbus-ASCII),又称标准Modbus通信;
(2) 高速令牌环网通信(Modbus-Plus);
(3) 基于TCP/IP的客户/服务器结构通信(Modbus-TCP)。


表2给出这三种通信方式与ISO/OSI参考模型的比较。


在不同的通信方式中都要对Modbus PDU进行封装,组成不同的Modbus帧,这种帧在Modbus协议中有专有的名词称之为应用数据单元(ADU)。在Modbus-RTU和Modbus-Plus通信中采用的是标准应用数据单元,它只是在PDU前面加上了占用一个字节的附加地址和在PDU结束增加了占用两个字节的校验码。在Modbus-TCP/IP网络通信中需要对Modbus应用层协议进行重新封装,该封装是通过在Modbus PDU前加上了Modbus应用层协议帧头来实现。
表2 三种Modbus通信方式与OSI参考模型比较


图3 两种ADU比较


基于串行链路的Modbus通信网络是一种主从式网络,在串行网络中只允许存在一个主节点和最多247个从节点,在这种网络下,标准Modbus ADU中的附加地址域只包含从节点的地址,可寻址范围是0~247,地址0作为广播模式地址使用,从节点地址的有效取值范围是1~247,并且每个从节点的地址必须是唯一的,主节点不存在具体的地址值。主节点设备将要访问的从节点设备的地址放入到请求帧的地址域中,当该地址的从节点设备作出响应时,将会把从节点设备的地址复制到响应帧的地址域中,主节点设备通过该地址得知是由哪个从节点设备发来的响应。
校验域存放了根据报文内容经由冗余校验算法计算所得到的结果。在基于串行链路的Modbus通信网络中有两种传输方式:RTU和ASCII,这两种传输方式的冗余校验算法是不同的。


采用RTU通信模式要比ASCII模式在同样波特率下能传输更多信息,在RTU模式底下是以二进制编码方式对传输数据进行编码,报文中每一个字节(8位二进制位)包含了两个十六进制字符,同一报文内的字符必须连续传输。RTU模式字节传输格式由1位起始位,8位数据位,1位奇偶检验位和1位停止位依次组成,共占用11位二进制位。当不使用奇偶检验时,奇偶校验位也作停止位使用,此时共有两位停止位。RTU传输模式下帧的差错校验域内存放的是报文经过循环冗余检验(CRC)算法计算得出的结果。


采用ASCII通信模式时,每一个字节(8位二进制位)用两个ASCII字符表示。由于每个字节都要用两个字符表示,数据域的长度是RTU模式的两倍,显然在该模式下的传输效率要比RTU模式低。该模式的字节传输格式与RTU模式相似,只是数据位置占用7个二进制位。ASCII模式下帧的差错检验算法为纵向冗余校验(LRC)。

上一页  [1] [2] [3] 

关键词:

·上一文章:Modbus最新动态及应用
·下一文章:ASON路由技术体系结构

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:102,664.10000 毫秒