新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Modbus协议概述

Modbus协议概述

作者:时间:2016-12-19来源:网络收藏

Modbus 通信线

本文引用地址://m.amcfsurvey.com/article/201612/331115.htm  Modbus是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。目前,可以通过下列三种方式实现Modbus通信:
  以太网上的TCP/IP;
  各种介质(有线:EIA/TIA-232-F、EIA-422、EIA/TIA-485-A;光纤、无线等)上的异步串行传输;
  Modbus PLUS,一种高速令牌传递网络。
  作为中国国家标准的“基于Modbus协议的工业自动化网络规范”在描述Modbus应用协议的基础上,提供了Modbus应用协议在串行链路和TCP/IP上的实现指南。
  Modbus数据单元
  Modbus协议定义了一个与基础通信层无关的简单协议数据单元(PDU),特定总线或网络上的Modbus协议映射能够在应用数据单元(ADU)上引入一些附加域。启动Modbus事务处理的客户机创建Modbus PDU,其中的功能码向服务器指示将执行哪种操作,功能码后面是含有请求和响应参数的数据域。


通用Modbus帧

  当Modbus应用在串行链路上时,Modbus ADU的地址域只含有从站地址,而差错校验码是根据报文内容执行“冗余校验”计算的结果,根据使用的传输模式(RTU或ASCII)采用不同的计算方法。


串行链路上的Modbus帧

  当Modbus应用在TCP/IP上时,将使用一种专用报文头——MBAP报文头(Modbus应用协议报文头)来识别Modbus应用数据单元。


TCP/IP上的Modbus帧

  

  Modbus标准功能码
  Modbus协议定义了三种功能码:
  ◆ 公共功能码:被确切定义的、唯一的功能码,由Modbus-IDA组织确认、可进行一致性测试且已在MB IETF RFC中归档
  ◆ 用户定义的功能码:用户无需Modbus-IDA组织的任何批准就可以选择和实现的功能码,但是不能保证被选功能码的使用是唯一的
  ◆ 保留功能码:某些公司在传统产品上现行使用的功能码,不作为公共使用。
  公共功能码定义如下表所示。

  Modbus通信原理
  Modbus是一种简单的客户机/服务器型应用协议,其通信遵循以下的过程:
  ◆ 客户端准备请求并向服务器发送请求;
  ◆ 服务器分析并处理客户端的请求,然后向客户端发送结果;
  ◆ 如果出现任何差错,服务器将返回一个异常功能码。

上一页 1 2 下一页

评论


技术专区

关闭