传感网应用开发(微课版)
上QQ阅读APP看书,第一时间看更新

1.5.1 Modbus通信协议概述

Modbus通信协议具有标准化定义,同时涵盖面向不同应用场景的各种版本。本小节主要介绍什么是Modbus通信协议以及Modbus通信协议的版本。

1.什么是Modbus通信协议

Modbus通信协议是一种串行通信协议,由莫迪康公司(现为施耐德电气公司的一个品牌)在1979年开发,是全球第一个真正用于工业现场的总线协议。

Modbus通信协议广泛应用于电子控制器上,并作为通用工业标准。通过此协议,控制器之间或者控制器经由网络(例如以太网)与其他设备之间可以通信。Modbus通信协议使不同厂商生产的控制设备可以连成工业网络,进行集中监控。Modbus通信协议定义了一个消息帧结构,并描述了控制器请求访问其他设备的过程、控制器如何响应来自其他设备的请求,以及控制器怎样侦测错误并记录。

在Modbus网络上通信时,每个控制器必须要知道它们的设备地址,识别从地址发来的消息,决定要做何种动作。如果需要响应,控制器将按Modbus消息帧格式生成反馈信息并发出。

2.Modbus通信协议的版本

Modbus通信协议有基于串行链路的版本、基于TCP/IP的网络版本,以及基于其他互联网协议的网络版本,其中前面两个版本的实际应用场景较多。

基于串行链路的版本有两种传输模式,即Modbus RTU和Modbus ASCII,它们在数值数据表示和协议细节方面有些许不同。如Modbus RTU是一种紧凑的、采用二进制数据表示的模式,而Modbus ASCII的表示方式则更加冗长。在数据校验方面,Modbus RTU采用循环冗余校验方式,而Modbus ASCII采用纵向冗余校验方式。另外,配置为Modbus RTU模式的节点无法与配置为Modbus ASCII模式的节点通信。