您现在的位置:智能制造网>技术首页>技术交流

MODBUS协议在世纪星中的应用

2009年12月01日 13:15来源:北京世纪长秋科技有限公司 >>进入该公司展台人气:922

引言

随着工业自动化的发展,MODBUS成为了工业控制系统中的一种通用协议。由于该协议的简单且通用,得到了众多仪表厂商的支持,成为仪表及智能终端的一项工业标准,在工业监控系统中得到了广泛的应用。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以进行通信。它的开放性、可扩充性和标准化使不同厂商生产的控制设备可以简单可靠地连成工业网络,进行系统的集中监控,从而成为zui流行的协议之一。同样,世纪星组态软件也提供了支持上位机和下位设备进行MODBUS通信的驱动程序,使用户可以方便使用装有世纪星软件的上位机和下位的设备进行通信。

MODBUS通信协议

MODBUS协议是*康公司1978年发明的一种用于电子控制器进行控制和通信的协议。此协议支持传统的RS232RS422RS485标准和以太网设备。不同厂商生产的符合MODBUS协议的控制设备可以连成工业网络,进行集中监控。MODBUS协议采用主从(master-slave)技术,是一种问答方式的通信协议。每次通信均由主机发出数据请求信息,从机接收到正确消息后就可以发送数据到主机以响应请求;主机也可以直接发信息修改从机的数据,实现双向读写。

MODBUS协议支持两种数据传送模式,即ASCII码和MODBUS-RTU

(1)MODBUS-RTU

1 主机询问数据帧报文

 

2从机回答数据帧报文

 

(2)ASCII

3主机询问数据帧报文

 

4从机回答数据帧报文

 

MODBUS在世纪星中的应用

在世纪星中,除了支持MODBUS-RTUASCII码两种数据传送模式外,还支持MODBUS TCP/IP 传送方式。事实上,MODBUS TCP/IP的命令格式和MODBUS-RUT是很相似的,MODBUS TCP/IP只是缺少两个字节的CRC校验。在MODBUS协议中,是根据不同的功能码来完成不同的读写功能的,世纪星中支持的功能码及其功能如表5所示:

5 世纪星所支持的功能码

在硬件设备中,数据存储在寄存器内,每个存储数据的寄存器对应一个寄存器地址,上位机就是根据这些地址组织命令去读写寄存器里的数据。一个两个字节的整型数据存储在一个寄存器地址中,一个四字节的整型或浮点型数据则要存储在连续的两个寄存器地址中,通常都是高地址存放数据的高字,低地址存放数据的低字。

由于很多用MODBUS协议的仪表厂家都在以自己的方式来说明仪表上的参数以及它对应的寄存器地址,所以一部分厂家是以十六进制来标记寄存器地址,而另一部分厂家用十进制。为了使用户在工程里建立变量时方便的和仪表上的寄存器连接,世纪星分别在MODBUS-RTUASCII码两种通信方式下,支持十六进制通道号和十进制通道号两种变量连接方式,因此,就免去了用户做很多的十六进制和十进制之间转换的工作。

在设备的说明书中,一般会寄存器地址,数据类型,该地址的寄存器支持的功能码等要素,以MODBUS-RTU 十六进制的驱动为例,如果寄存器地址为0005H,数据类型为两个字节的整形,支持03H功能码读数据,则对应到世纪星软件中需要连接的变量为4x0005,变量类型为I/O整数,数据类型可以分为有符号的INT或无符号的UINT 或者BCD码,在进行通信时,世纪星发送的以及设备返回的命令如下表所示:

主机发送:

 

从机返回:

 

由设备返回的命令,可以知道设备返回了两个字节的有效数据(00 1A,则寄存器地址为0005H里的数据为001AH=26

如果寄存器地址为0009H,数据类型为两个字节的整型,支持06H功能码写数据,则对应到世纪星软件中需要连接的变量为4x0009,变量类型为I/O整数,数据类型可以为有符号的INT或无符号的UINT 或者BCD码,在通信时,世纪星发送的以及设备返回的命令如下表所示写入数据258=0102H)

主机发送:

 

从机返回:

 

经过发送上表中的命令,0102H便成功写入到寄存器地址为0009H号的寄存器中。

如果寄存器地址为0010H,数据类型为四个字节的整型或浮点型,支持10H功能码写数据,则对应到世纪星软件中需要连接的变量为4x0010,变量类型为I/O实数,数据类型可以为有整型的LONG或浮点型的FLOAT,在通信时,世纪星发送的以及设备返回的命令如下表所示写入数据258=0102H)

主机发送:

 

从机返回:

 

经过发送上表中的命令,0102H便成功写入到寄存器地址为0010H号的寄存器中,0000H成功写入了寄存器地址为0011H号的寄存器中。

上述内容就是在世纪星中根据设备说明书连接保持寄存器的变量连接方式,以及通信的过程,其它的例如输入寄存器,输入线圈等都和保持寄存器是类似的,通过特定的功能码对特定地址的寄存器进行读写操作,这里就不一一介绍了。

小结

    在平时用户使用世纪星和支持MODBUS协议的仪表进行通信的过程中,我们和客户也有很多的交流,在多数情况下,世纪星都能很正常的和仪表进行通信,但现在还是避免不了的一种情况是,有些用户的仪表支持的并不是标准的MODBUS协议。MODBUS是一种通用的协议,但就细节来说,很多厂家还是各有各的用法,这使我们认识到了我们的MODBUS通信还是缺少一些灵活性,而我们一定会针对这种情况做一些改进工作,力求更多的使用MODBUS协议的客户能够方便使用我们的软件和仪表可靠的通信。客户的满意,永远是我们努力追求的目标。

全年征稿/资讯合作 联系邮箱:1271141964@qq.com
  • 凡本网注明"来源:智能制造网"的所有作品,版权均属于智能制造网,转载请必须注明智能制造网,https://www.gkzhan.com。违反者本网将追究相关法律责任。
  • 企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
  • 本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。


编辑精选

更多


宣传样本推荐图书

旗下子站

工控网机器人仪器仪表物联网3D打印工业软件金属加工机械包装机械印刷机械农业机械食品加工设备制药设备仓储物流环保设备造纸机械工程机械纺织机械化工设备电子加工设备水泥设备海洋水利装备矿冶设备新能源设备服装机械印染机械制鞋机械玻璃机械陶瓷设备橡塑设备船舶设备电子元器件电气设备



关于我们|本站服务|会员服务|企业建站|旗下网站|友情链接| 兴旺通| 产品分类浏览|产品sitemap

智能制造网 - 工业4.0时代智能制造领域“互联网+”服务平台

Copyright gkzhan.comAll Rights Reserved法律顾问:浙江天册律师事务所 贾熙明律师

客服热线:0571-87756395加盟热线:0571-87759904媒体合作:0571-89719789

客服部:编辑部:展会合作:市场部:

关闭