推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

GBT19582.1-2008 基于Modbus协议的工业自动化网络规范

更新时间:2023-10-18 13:07:03 大小:2M 上传用户:sun2152查看TA发布的资源 标签:modbus协议工业自动化 下载积分:3分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

GB/T 19582-2008《基于Modbus 协议的工业自动化网络规范》分为三部分: 一一第 1 部分:Modbus应用协议;第 2 部分:Modbus 协议在串行链路上的实现指南;一一第 3 部分:Modbus 协议在 TCP/IP上的实现指南。 第1部分描述了Modbus 事务处理;第2 部分提供了有助于开发者在串行链路上实现Modbus应用层的参考信息;第 3 部分提供了有助于开发者在 TCP/IP上实现Modbus 应用层的参考信息。 GB/T 19582-2008 包括两个通信规程中使用的 Modbus 应用层协议和服务规范: 一串行链路上的 Modbus Modbus 串行链路基于 TIA/EIA 标准:232-E 和 485-A. TCP/IP 上的 Modbus Modbus TCP/IP 基于 IETF 标准:RFC793 和 RFC791串行链路和TCP/IP上的Modbus是根据相应1S0分层模型说明的两个通信规程,下图强调指出了GB/T 19582---2008的主要部分,深色方框表示规范,浅色方框表示已有的国际标准(TIA/EIA和IETF 标准)。 本部分从实施之日起代替GB/Z 19582.1-2004;GB/Z 19582.1-2004并于该日起予以废止。 本部分的附录A、附录B为资料性附录。 本部分由中国机械工业联合会提出。 本部分由全国工业过程测量和控制标准化技术委员会第四分技术委员会归口。 范围 Modbus是OS1模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信,见图 1。 从1979年开始,Modbus作为工业串行链路的事实标准,Modbus使成干上万的自动化设备能够通信,目前,对简单面精致的Modbus结构的支持仍在增长。互联网用户能够使用TCP/IP栈上的保留系统端口502访问Modbus. Modbus是一个请求/应答协议,并且提供功能码规定的服务。Modbus功能码是Modbus请求/应答 PDU 的元素。本部分描述了 Modbus 事务处理框架内使用的功能码。 Modbus应用层报文传输协议用于在通过不同类型的总线或网络连接的设备之间的客户机/服务器通信。 目前,通过下列方式实现Modbus通信:以太网上的TCP/IP,见GB/T 19582.3. 各种介质<有线:EIA/TIA-232-E,ElA-422,EIA/TIA-485-A;光纤、无线等等)上的异步率行传输。 Modbus+,一种高速令牌传递网络。 规范性引用文件 下列文件中的条款通过GB/T 19582的本部分的引用而成为本部分的条款,凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本,凡是不注日期的引用文件,其最新版本适用于本部分。 GB/T 15969 可编程序控制器 RFC 791 Internet Protocol.Sep81 DARPA Modbus应用数据单元由启动Modbus事务处理的客户机创建,功能码向服务器指示将执行哪种操作。Modbus应用协议建立了客户机启动的请求格式。 用一个字节编码 Modbus数据单元的功能码字段。有效的码范围是十进制1~255(128~255保留用于异常响应),当从客户机向服务器设备发送报文时,功能码字段通知服务器执行哪种操作。功能码 “0”无效。 向一些功能码加入子功能码来定义多项操作。 从客户机向服务器设备发送的报文数据字段包括附加信息,服务器使用这个信息执行功能码定义的操作,这个字段还包括离数量和寄存器地址,处理的项目数量以及字段中的实际数据字节数。 在某种请求中,数据字段可以是不存在的(C长度),在此情况下服务器不需要任何附加信息。功能码仅说明操作。 如果在一个正确接收的Modbus ADU中,不出现与所请求的Modbus功能有关的差错,那么服务器至客户机的响应数据字段包括所请求的数据。如果出现与所请求的Modbus功能有关的差错,那么该字段包括一个异常码,服务器应用能够使用这个字段确定下一个执行的操作。 例如,客户机能够读一组离散量输出或输入的开/关状态,或者客户机能够读/写一组寄存器的数据内容。 当服务器对客户机响应时,它使用功能码字段来指示正常(无差错)响应《见图 4)或者出现某种差错(称为异常响应),见图5。对于正常响应,服务器仅复制原始功能码。 Modbus 最初在串行链路上的实现(最大 RS485 ADU=256 字节)限制了 Modbus PDU 的长度。 因此,对串行链路通信来说,Modbus PDU==256一服务器地址(1字节)-CRC(2字节)-253字节,从而: RS232/RS485 ADU=253 字节十服务器地址(1 字节)+CRC(2 字节)=256 字节。 TCP Modbus ADU=253 字节+MBAP(7 字节)=260 字节。 Modbus协议定义了三种PDU,它们是: Modbus 请求 PDU,mb_req_pdu;Modbus 响应 PDU,mb_rsp_pdu Modbus 异常响应 PDU,mb_excep_rsp_pdu. 定义 mb_req_pdu 为: mb_reqpdu={function_code,request_data),其中:functioncode=[1字节]Modbus功能码。 requestdata=[n 字节],这个字段与功能码有关,通常包括诸如变量引用、变量计数、数据偏移量、子功能码等信息。 定义 mb_rap__pdu 为: mb_rsp_pdu={functioncode,response data),其中function_code=[1 字节]Modbus 功能码,response.data=[n字节],这个字段与功能码有关,通常包括诸如变量引用、变量计数、数据偏移量、子功能码等信息。 定义mbcxcep_rsp_pdu为 mb_excep_rsp_pdu={exception-function_code,exception_code),其中:exception-lunction_code=[1字节]Modbus功能码+0x80. exception_code=[1字节]Modbus异常码,在表“Modbus异常码”中定义(见第 8 章).

部分文件列表

文件名 大小
GBT19582.1-2008_基于Modbus协议的工业自动化网络规范.pdf 2M

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载