描述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应用在串行链路上时,Modbus ADU的地址域只含有从站地址,而差错校验码是根据报文内容执行“冗余校验”计算的结果,根据使用的传输模式(RTU或ASCII)采用不同的计算方法。
串行链路上的Modbus帧 当Modbus应用在TCP/IP上时,将使用一种专用报文头——MBAP报文头(Modbus应用协议报文头)来识别Modbus应用数据单元。
TCP/IP上的Modbus帧 Modbus标准功能码 Modbus协议定义了三种功能码:
公共功能码:被确切定义的、唯一的功能码,由Modbus-IDA组织确认、可进行一致性测试且已在MB IETF RFC中归档
Modbus是一种简单的客户机/服务器型应用协议,其通信遵循以下的过程:
客户端准备请求并向服务器发送请求;
Modbus事务处理 统一的标准 Modbus串行链路、Modbus PLUS和Modbus TCP/IP使用的是一种统一的应用协议,因而使得信息从一个网络传输到另一个网络而不需改变通讯协议成为了可能。 当Modbus在TCP/IP上实施时,用户还可以从IP路由功能中得益,使得分布于世界任何地方的设备之间都可以进行通讯。施耐德电气还提供了全套的网关,用于实现Modbus TCP/IP网络与现有的Modbus PLUS 或Modbus串行链路网络之间的互连。 IANA委员会给施耐德电气公司分配了已为大家熟知的TCP 502端口,以专为Modbus协议保留。由此可见,Modbus协议现在已经成为Internet标准。Modbus和Modbus TCP/IP也被IEC 61158国际标准承认为一种现场总线,同时它们还是由ITEI管理的中国国家标准。
Modbus拥有著名的TCP端口502 简单而且开放 Modbus应用协议非常简单并且已经得到普遍的认可,很多制造商都开发了对Modbus TCP/IP连接的支持。Modbus TCP/IP的简单性使得任何小型的现场设备,例如I/O组件,都可以通过以太网进行通讯,而不需要配备功能强大的微处理器或大容量的内存。 Modbus TCP/IP —— 高性能 由于结合了Modbus协议的简单性和100 M 以太网的高速度,Modbus TCP/IP展现了卓越的性能,这意味着将这种网络应用在实时性要求很高的场合,如I/O扫描,是可行的。 Modbus通信透明性 Modbus协议可以方便地在各种网络体系结构内进行通信,每种设备(PLC、HMI、控制面板、变频器、运动控制、I/O设备等)都能使用Modbus协议来启动远程操作,同样的通信能够在串行链路和TCP/IP以太网网络上进行,而网关则能够实现各种使用Modbus协议的总线或网络之间的通信。由此可见,Modbus协议实现了全方位的通信透明。
|
|