基于modbus协议数据读取

基于modbus协议数据读取

ID:33794464

大小:54.38 KB

页数:3页

时间:2019-03-01

基于modbus协议数据读取_第1页
基于modbus协议数据读取_第2页
基于modbus协议数据读取_第3页
资源描述:

《基于modbus协议数据读取》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于modbus协议数据读取摘要:Modbus协议被广泛地应用在工业过程控制中,是通用的工业标准之一。本文在研究ModbusTCP/IP协议的基础上,设计了基于Modbus的数据读取的帧格式,并使用VC++2010实现了数据读取功能。关键词:Modbus数据读取工业控制网络通信中图分类号:TP274.2文献标识码:A文章编号:1007-9416(2012)11-0049-02Modbus是一种工业上开放的现场总线协议,是目前通用的工业标准之一。该协议能够使得各个厂家之间的控制设备能够相互通信和进行数据传输,在工业过程控制中具有广泛地应用[1]。Modbus

2、协议包含三种模式,即ModbusTCP、ModbusRTU和ModbusASCII模式[2]。本文在研究ModbusTCP协议模式的基础上,设计了一种基于TCP/IP的Modbus的数据读取功能。通过该读取功能,用户可以在PC机上可以读取PLC控制器上的数据。1、ModbusTCP/IP协议数据帧的格式由于ModbusTCP/IP协议运行于TCP/IP协议上,因此ModbusTCP/IP协议的数据帧被封装于TCP/IP协议数据帧中的数据单元中,作为TCP/IP协议中的数据部分发送给各种控制设备;支持Modbus协议的控制设备收到Modbus请求之后,根据请

3、求的内容将结果返回给客户端。本文所设计基于ModbusTCP/IP的数据请求和响应帧格式如下图所示。事务元标识符:该标识符用于事务处理的配对,该域中的内容为用户自行设定,如可以将每一帧的编号放在该域中。协议标识符:该标识符用于系统内的多路复用,当使用的Modbus协议时,该值为0。长度:该域中的数值表示后继域内容的字节数,包括单元标识符和协议数据单元。单元标识符:为了系统内路由,使用这个域。在服务器的响应帧内容中服务器必须使用相同的值返回该域的内容。本文设计的读写功能所用到的Modbus功能码的定义如下表所示。表Modbus功能码协议的数据单元包括功能码和

4、数据两部分。本文以读取2个寄存器的数据为例来说明该部分帧格式的设置。功能码:读写多个寄存器的功能码为03,该域大小为1字节。数据:数据部分包含读起始地址和读的数量。本文从起始地址开始连续读取2个寄存器的内容,因此读起始地址为0,该域大小为2字节;读的数量为2,该域大小为2字节。2、数据读取功能的实现本文在上一节设计的数据帧格式的基础上,使用VC++2010实现了基于ModbusTCP/IP的数据读取功能,并使用MODBUSSimulator作为Modbus的TCP服务器。数据请求的主要代码如下:MODBUSSimulator的地址0000-0001写入了6

5、7.5。如图2-2所不。在数据读取客户端中,首先点击“连接服务器”按钮,客户端提示连接服务器成功后,点击"启动定时器”按钮,则客户端开始周期性地从Modbus服务器中读取数据,并显示在客户端上。3、结语本文在研究ModbusTCP/IP协议的基础上设计基于Modbus协议的数据读取的数据帧格式,并使用VC++2010实现了该数据帧的数据读取功能。通过该读取功能,用户可以在PC机上可以读取PLC控制器上的数据。参考文献[1]刘波,张文三,魏霞•基于Modbus协议的TCS-3000DCS系统与S7-200PLC之间串行通讯网络的实现[J].工业控制计算机,2

6、012,25(2):33-35.[2]杜雯雯,史运涛,刘伟川.基于PC的Modbus软件网关的实现[J]•微计算机信息,2012,(9):353-355.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。