modbus协议教程.doc

modbus协议教程.doc

ID:49414850

大小:90.00 KB

页数:9页

时间:2020-03-01

modbus协议教程.doc_第1页
modbus协议教程.doc_第2页
modbus协议教程.doc_第3页
modbus协议教程.doc_第4页
modbus协议教程.doc_第5页
资源描述:

《modbus协议教程.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、modbus协议教程在木章主要讲述如何利川软件通过通讯口来操控该系列仪表。木章内容的掌握需要您具有MODBUS协议的知识储备并且通读了木册其它章节所有内容,对木产品功能和应用概念有较全血了解。本章内容包括:MODBUS协议简述,通讯应用格式详解,木机的应用细节及参量地址表。1.1MODBUS协议简述ACRXXXE系列仪表使用的是MODBUS-RTU通讯协议,MODBUS协议详细定义了校验码、数据序列等,这些都是特定数据交换的必要内容。MODBUS协议在一根通讯线上使用主从应答式连接(半双工),这意

2、味着在一根单独的通讯线上信号沿着相反的两个方向传输。首先,主计算机的信号寻址到一台唯一的终端设备(从机),然后,终端设备发出的应答信号以相反的方向传输给主机。MODBUS协议只允许在主机(PC,PLC等)和终端设备之间通讯,而不允许独立的终端设备Z间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达木机的查询信号。1.2查询一冋应周期1.2.1查询杳询消息小的功能代码告之被选屮的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。例如功能代码03是要求从设备读

3、保持寄存器并返冋它们的内容。数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的方法。1.2.2冋应如果从设备产生一正常的冋应,在冋应消息小的功能代码是在杳询消息屮的功能代码的冋应。数据段包括了从设备收集的数据:如寄存器值或状态。如果有错谍发生,功能代码将被修改以用于指出冋应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。1.3传输方式传输方式是指一个数据帧内一系列独立的数据结构以及用

4、于传输数据的育限规则,下血定义了与MODBUS协议-RTU方式相兼容的传输方式。每个字节的位:・1个起始位・8个数据位,最小的有效位先发送・无奇偶校验位・1个停止位错误检测(Errorchecking):CRC(循坏兀余校验)1.4协议当数据帧到达终端设备时,它通过一•个简单的一端口II进入被寻址到的设备,该设备去掉数据帧的一信封II(数据头),读取数据,如果没有错误,就执行数据所请求的任务,然后,它将口己生成的数据加入到取得的一信封“中,把数据帧返冋给发送者。返冋的响应数据中包含了以下内容:终端

5、从机地址(Address).被执行了的命令(Function).执行命令生成的被请求数据(Data)和一个校验码(Check)。发生任何错误都不会有成功的响应,或者返冋一个错误指示帧。1.4.1数据帧格式AddressFunctionDataCheck8-Bits8-BitsNx8-Bits16-Bits1.4.2地址(Address)域地址域在帧的开始部分,由一个字节(8位二进制码)组成,十进制为0〜255,在我们的系统小只使用广247,其它地址保留。这些位标明了用户指定的终端设备的地址,该设备

6、将接收來自与z相连的主机数据。每个终端设备的地址必须是唯一•的,仅仅被寻址到的终端会响应包含了该地址的杳询。当终端发送冋一个响应,响应中的从机地址数据便告诉了主机哪台终端正与之进行通信。1.4.3功能(Function)域功能域代码告诉了被寻址到的终端执行何种功能。下表列出了该系列仪表用到的功能码,以及它们的意义和功能。1.4.4数据(Data)域数据域包含了终端执行特定功能所需要的数据或者终端响应杳询时采集到的数据。这些数据的内容可能是数值、参考地址或者设置值。例如:功能域码告诉终端读取个寄存器

7、,数据域则需要指明从哪个寄存器开始及读取多少个数据,内嵌的地址和数据依照类型和从机之间的不同内容而有所不同。1.4.5错误校验(Check)域该域允许主机和终端检杳传输过程中的错误。有时,由于电噪声和-其它干扰,一组数据在从一个设备传输到另一个设备时在线路上可能会发生一些改变,出错校验能够保证主机或者终端不去响丿'V那些传输过程屮发生了改变的数据,这就提高了系统的安全性和效率,错误校验使用了16位循环兀余的方法(CRC16)。1.5错误检测的方法错误校验(CRC)域占用两个字节,包含了一个16位的

8、二进制值。CRC值由传输设备计算出來,然后附加到数据帧上,接收设备在接收数据时重新计算CRC值,然后与接收到的CRC域中的值进行比较,如果这两个值不相等,就发生了错误。CRC运算时,首先将一个16位的寄存器预置为全1,然后连续把数据帧屮的每个字节屮的8位与该寄存器的当前值进行运算,仅仅每个字节的8个数据位参与生成CRC,起始位和终止位以及可能使川的奇他位都不影响CRC。在生成CRC时,每个字节的8位与寄存器屮的内容进行异或,然后将结果向低位移位,高位则用一011补充,最低位(LSB

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。