配色: 字号:
Modbus,Modbus协议详解
2020-03-21 | 阅:  转:  |  分享 
  
Modbus技术规范的关系通用Modbus帧结构--协议数据单元(PDU)当服务器对客户机响应时,它使用功能码域来指示正常(无差错)响
应或者出现某种差错(称为异常响应)。对于一个正常响应来说,服务器仅复制原始功能码。对于异常响应,服务器将原始功能码的最高有效
位设置逻辑1后返回。异常码指示差错类型。Modbus协议在串行链路上的实现模型主要是在RS485和RS232等物理接口上实
现Modbus协议。在Modbus链路层上客户机的功能由主站提供而服务器的功能由从站实现。Modbus主站-从站协议原理Mo
dbus串行链路协议是一个主-从协议。在同一时刻,只有一个主节点连接与总线,一个或多个子节点(最大编号为247)连接于同一串行总线
。Modbus通信由主节点发起,子节点在没有收到来自主节点的请求时,从不会发送数据。子节点之间互不通信。主节点在同一时刻只会
发起一个Modbus事务处理。主节点以两种模式对子节点发送Modbus请求:广播、单播。主站工作状态图从站工作状态图串行链
路上的Modbus地址规则Modbus寻址空间有256个不同地址地址0为广播地址Modbus主节点没有地址,子节点必须有一个
唯一的地址串行链路上的Modbus帧结构Modbus串行链路协议是一个主/从协议网络上的每个从站必须有唯一的地址(从1到2
47)从站地址用于寻址从站设备,由主站发起地址0用于广播模式,不需要响应RS-485和RS-232定义了标准的物理端口,提
高互可操作性两种Modbus串行传输模式ModbusTCP简介ModbusTCP是运行在TCP/IP上的Modbus报文传
输协议。通过此协议,控制器相互之间通过网络(例如以太网)和其它设备之间可以通信。ModbusTCP是开放的协议,IANA(Int
ernetAssignedNumbersAuthority,互联网编号分配管理机构)给Modbus协议赋予TCP编口号为50
2,这是目前在仪表与自动化行业中唯一分配到的端口号。ModbusTCP/IP协议模型ModbusTCP报文传输服务结构通信
应用层Modbus客户机:允许用户应用控制与远程设备的信息交换。Modbus客户机根据用户应用向Modbus客户机接口的发送要求
中所包含的参数来建立一个Modbus请求。Modbus客户机接口:Modbus客户机接口提供一个接口,使得用户应用能够生成各类
Modbus服务的请求,该服务包括对Modbus应用对象的访问。Modbus服务器:在收到一个Modbus请求以后,模块激活一
个本地操作进行读、写、或完成其他操作。TCP管理层连接管理:在客户机和服务器的Modbus模块之间的通信需要使
用TCP连接管理模块,负责全面管理报文传输TCP连接。访问控制:在某些至关重要的场合,必须禁止无关的主机对设备内
部数据的访问。TCP/IP栈层可以对TCP/IP的栈进行参数配置,以适用于不同的产品或系统特定的约束条件,来进行数据
流控制、地址管理和连接管理,使用BSD套接字接口来管理TCP连接。TCP连接管理MODBUS通信需要建立客户机与服务器
之间的TCP连接。连接的建立可以由用户应用模块直接实现,也可以由TCP连接管理模块自动完成。在第一种情况下,用户应用模块必
须提供应用程序接口,以便完全管理连接。这种方式为应用开发人员提供了灵活性,但需要TCP/IP机制方面的专长。在第二种情况,TC
P连接管理完全不出现,用户应用仅需要发送和接受MODBUS报文。TCP连接管理模块负责在需要时建立新的TCP连接。TCP连
接的建立Modbus报文传输服务必须在502端口上提供一个监听套接字,允许接收新的连接和与其他设备交换数据。当报文传输服务需要
与远程服务器交换数据时,它必须与远程502端口建立一个新的客户机连接,以便于远距离地交换数据。本地端口必须高于1024,并且对每个
客户机的连接各不相同。信息交换过程客户机的通信过程如下:(1)用Connect命令建立与目标设备的连接;
(2)准备Modbus报文包括7个字节的MBAP在内的请求;(3)使用Send
命令发送报文;(4)在同一连接下等待应答;(5)用Recv命令读取报文,完成一次数据交换过程。当通信任务
结束时,关闭TCP连接,使ModbusTCP服务器可为其它客户机服务。应用行业规模TCP/IP已成为信息行业的事
实标准:世界上93%的网络都使用TCP/IP,只要在应用层使用ModbusTCP,就可实现工业以太网数据交换;目前中国已把M
odbusTCP作为工业网络标准之一。在国外,ModbusTCP被国际半导体业SEMI定为网络标准,国际水处理、电力系统也把它
作为应用的事实标准,还有越来越多行业把ModbusTCP作为标准来用;完整的ModbusTCP通信过程: 客户机建
立一个连接,向服务器发送3个MODBUS请求,而不等待第一个请求的应答到来。在收到所有的应答后,客户机正常地关闭连接。
优点:用户可免费获得协议及样板程序;网络实施价格低廉,可全部使用通用网络部件;易于集成不同的设备,几乎可以找到任何现场总线连
接到Modbus-TCP的网关;网络的传输能力,100M以太网的传输结果为:每秒4000个ModbusTCP报文,而每个报文
可传输125个字(16bit),故相当于4000×125=500000个模拟量数据(8000000开关量!);Modbus/T
CP的优缺点缺点:实时性较差CompanyLogoSUPCONSUPCONModbus和Modbus/TCP
协议基础介绍EPA推广应用中心章雷Modbus协议在串行链路上的实现3Modbus协议规范2概
述1Modbus协议在TCP/IP上的实现4主要内容概述1Modbus是MODICON公
司于1979年开发的一种通讯协议,是一种工业现场总线协议标准。1996年施耐德公司推出了基于以太网TCP/IP的Modbus协议—
—ModbusTCP。Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型,协议本身并没有定义
物理层,只是定义了控制器能够认识和使用的消息结构,而不管他们是经过何种网络进行通信的。标准的Modbus协议物理层接口有RS2
32、RS422、RS485和以太网口。采用Master/Slave(主/从)方式通信。Modbus在2004年成为我国国家标
准。Modbus协议规范2Modbus应用协议Modbus是一种简单客户机/服务器应用协议客户机能够向服务器发送
请求。服务器分析请求,处理请求,向客户机发送应答。 Modbus协议定义了一个与基础通信层无关的简单协议数据单元(PDU),特
定总线或网络上的Modbus协议映射能够在应用数据单元(ADU)上引入一些附加域。Modbus事务处理(无差错)Modbus
事务处理(异常响应)Modbus协议在串行链路上的实现3层ISO/OSI模型?7应用层Modbus应用
协议6表示层空5会话层空4传输层空3网络层空2数据链路层Modbus串
行链路协议?1物理层EIA/TIA-485(或EIA/TIA232)主/从通信的三种典型情况01——24
7248——255广播地址子节点单独地址保留ASCII模式:信息中的每个8Bit字节需2个ASCII字符,其优点是
准许字符的传输间隔达到1s而不产生错误;RTU模式:每个8Bit字节包含两个4Bit的十六进制字符,其优点是在同样的波
特率下,可比ASCII方式传送更多的数据,但是每个信息必须以连续的数据流传输。优点:公开的协议,完全免费。简单易用
,性能稳定。广泛的知识资源支持。Modbus的优缺点缺点:自适应性差,需合理组态。通信效率低。Modbu
s协议在TCP/IP上的实现4ModbusTCP通信结构ModbusTCP/IP的通信设备:连接至TC
P/IP网络的ModbusTCP/IP客户机和服务器设备。互连设备,如:在TCP/IP网络和串行链路子网
之间互连的网桥、路由器或网关等设备。ModbusTCP数据帧ModbusTCP数据帧与串行链路数据帧的区别MBAP报文头
域长度描述客户机服务器事务处理标识符2字节Modbus请求/响应事务处理的识别客户机启动服务
器从接收的请求中重新复制协议标识符2字节0=Modbus协议客户机启动服务器从接收的请求中重新复制长度
2字节随后字节的数量客户机启动(请求)服务器(响应)启动单元标识符1字节串行链路或其它总线上连接的远程从站的识别客户机启动服务器从接收的请求中重新复制用户应用通讯应用层MODBUS客户接口MODBUS客户接口MODBUS客户机MODBUS服务器TCP管理层栈参数化连接管理访问控制TCP/IP栈资源管理与流量控制管理通信的建立和结束以及管理在所建立的TCP连接上的数据流。CompanyLogoSUPCONSUPCON
献花(0)
+1
(本文系luobo2012首藏)