Modbus协议是什么ModbusTCP/IP协议特点介绍 点击:200 | 回复:0



小俞先生

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:110帖 | 3回
  • 年度积分:0
  • 历史总积分:407
  • 注册:2020年3月09日
发表于:2020-06-17 08:49:44
楼主

MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列通讯协议的派生产品。显而易见,它覆盖了使用TCP/IP协议的 “Intranet”“Internet”环境中MODBUS报文的用途。协议的最通用用途是为诸如PLC’sI/O模块,以及连接其它简单域总线或 I/O模块的网关服务的。

 

  MODBUS/TCP协议是作为一种(实际的)自动化标准发行的。Modbus协议是一种已广泛应用于当今工业控制领域的通用通讯协议。通过此协议,控制器相互之间、或控制器经由网络(如以太网)可以和其它设备之间进行通信。


      Modbus协议使用的是主从通讯技术,即由主设备主动查询和操作从设备。一般将主控设备方所使用的协议称为Modbus Master,从设备方使用的协议称为Modbus Slave。典型的主设备包括工控机和工业控制器等;典型的从设备如PLC可编程控制器等。Modbus通讯物理接口可以选用串口(包括RS232RS485),也可以选择以太网口。其通信遵循以下的过程:

 

  ● 主设备向从设备发送请求

 

  ● 从设备分析并处理主设备的请求,然后向主设备发送结果

 

  ● 如果出现任何差错,从设备将返回一个异常功能码 

 

  Modbus协议具有以下几个特点: 

  (1)标准、开放,用户可以免费、放心地使用Modbus协议,不需要交纳许可证费,也不会侵犯知识产权。目前,支持Modbus的厂家超过400家,支持Modbus的产品超过600种。 

 

  (2)Modbus可以支持多种电气接口,如RS-232RS-485等,还可以在各种介质上传送,如双绞线、光纤、无线等。 

 

  (3)Modbus的帧格式简单、紧凑,通俗易懂。用户使用容易,厂商开发简单。

 

  MODBUS支持的部分功能代码: 

Modbus, TCP/IP协议


  以十进制表示。功能码可以分为位操作和字操作两类。位操作的最小单位为BIT,字操作的最小单位为两个字节。 

 

  【位操作指令】 读线圈状态01H,读(离散)输入状态02H,写单个线圈06H和写多个线圈0FH

 

  【字操作指令】 读保持寄存器03H,写单个寄存器06H,写多个保持寄存器10H 

 

  MODBUS报文模型

Modbus, TCP/IP协议


  这里要明白两个缩略词:“ADU”“PDU”

 

ADU: 应用数据单元

 

  PDU: 协议数据单元 

  Modbus协议两种传输方式 

  常用的MODBUS通讯规约有两种,一种是MODBUS ASCII,一种是MODBUS RTU。每个设备必须都有相同的传输模式。所有设备都支持RTU模式,ASCII传输模式是选项。

 

  (1)ASCII传输方式

 

  Modbus串行链路的设备被配置为使用ASCII模式通信时,报文中的每8位字节以两个ASCII字符发送。例:字节0X5B会被编码为两个字符:0x350x42进行传送(ASCII编码0x35="5"0x42="B"),这样传输效率会降低。

 

  在ASCII模式,报文用特殊的字符区分帧起始和帧结束。一个报文必须以一个冒号’()(ASCII十六进制3A)起始,以回车-换行’(CRLF)(ASCII十六进制0D0A)结束。设备连续的监视总线上的冒号字符。当收到这个字符后,每个设备解码后续的字符一直到帧结束。报文中字符间的时间间隔可以达一秒。如果有更大的间隔,则接受设备认为发生了错误。

 

  (2)RTU传输方式

 

  当设备使用RTU(RemoteTerminalUnit)模式在Modbus串行链路通信,报文中每个8位字节含有两个4位十六进制字符。这种模式的主要优点是较高的数据密度,在相同的波特率下比ASCII模式有更高的传输效率。每个报文必须以连续的字符流传送。


http://www.alotcer.com/index.php?c=article&id=1586




楼主最近还看过


热门招聘
相关主题

官方公众号

智造工程师