电气工程课程设计abb资料modbus协议_第1页
电气工程课程设计abb资料modbus协议_第2页
电气工程课程设计abb资料modbus协议_第3页
电气工程课程设计abb资料modbus协议_第4页
电气工程课程设计abb资料modbus协议_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 MODBUS RTU 通讯协议MODBUS_RTU通讯规约(本协议采用主从问答方式) PDM系列仪表/变送器: PDM系列仪表/变送器采用全新的设计,革命性地改变了传统的概念;具有多功能、高精度、数字式、可编程、结构紧凑、多画面显示的特点,它可以满足电力工业未来对需求。 的MODBUS通讯协议: ModBus通讯规约允许PDM系列仪表/变送器与施耐德、西门子、AB、GE等多个国际著名品牌的可编程顺序控制器(PLC)、RTU、SCADA系统、DCS或与第三方具有ModBus 兼容的监控系统之间进行信息交换和数据传送。 PDM系列仪表/变送器只要简单地增加一套基于计算机(或工控机)的监控软件(如

2、:组态王、Intouch、FIX、synall等)就可以构成一套电力监控系统。 广泛的系统集成:PDM系列仪表/变送器提供了标准的RS-485/422通讯接口及ModBus通讯协议,这个通讯协议已广泛被国内外电力行业及工控行业作为系统集成的标准。 通讯数据的类型及格式:信息传输字格式: 步方式,并以字节为单位。在主站和从站之间传递的通讯信息是11位的 通讯数据(信息帧)格式数据格式:数据长度: 注:1、1个字节由8位二进制数组成(既8 bit)。2、ModBus是Modicon公司的注册商标。 3、“从机”在本文件中既为PDM。 - 1 -1字节 1字节 N字节 16位CRC码(冗余循环码)地

3、址码 功能码 数据区 错误校检 字格式(串行数据) 11位二进制 起始位 1位 数据位 8位 奇偶校验位 1位:有奇偶校验位/无:无奇偶校验位 停止位 1位:有奇偶校验位/2位:无奇偶校验位 MODBUS RTU 通讯协议一、通讯信息传输过程:当通讯命令由发送设备(主机)发送至接收设备(从机)时,符合相应地址码的从机接收通讯命令,并根据功能码及相关要求读取信息,如果 CRC 校验无误,则执行相应的任务, 然后把执行结果(数据)返送给主机。返回的信息中包括地址码、功能码、执行后的数据以及CRC 校验码。如果 CRC 校验出错就不返回任何信息。 1.1 地址码: 地址码是每次通讯信息帧的第一字节(

4、8 位),从 0 到 255。这个字节表明由用户设置地址的从机将接收由主机发送来的信息。每个从机都必须有唯一的地址码,并且只有符合地址码的从机才能响应回送信息。当从机回送信息时,回送数据均以各自的地址码开始。主机发送的地址码表明将发送到的从机地址,而从机返回的地址码表明回送的从机地址。相应的 地址码表明该信息来自于何处。 1.2 功能码: 是每次通讯信息帧传送的第二个字节。ModBus 通讯规约可定义的功能码为 1 到 127。PDM 系列仪表/变送器仅用到其中的一部分功能码。作为主机请求发送,通过功能码告诉从机应执行什么动作。作为从机响应,从机返回的功能码与从主机发送来的功能码一样,并表明从

5、机已响应主机并且已进行相关的操作。 表 8.1 MODBUS 部分功能码1.3 数据区: 数据区包括需要由从机返送何种信息或执行什么动作。这些信息可以是数据(如:开关量输入/输出、模拟量输入/输出、寄存器等等)、参考地址等。例如,主机通过功能码 03 告诉从机返回寄存器的值(包含要读取寄存器的起始地址及读取寄存器的长度),则返回的数据包括寄存器的数据长度及数据内容。对于不同的从机,地址和数据信息都不相同(应给出 通讯信息表)。 PDM 系列仪表/变送器采用 Modbus 通讯规约,主机(PLC、RTU、PC 机、DCS 等) 利用通讯命令(功能码 03),可以任意读取其数据寄存器(其数据信息表

6、详见附录)。PDM系列仪表/变送器的数据寄存器存储的电量多达几百个(如:电流、电压、功率、031 次谐波分量等),并且都是 16 位(2 字节)的二进制数据,并且高位在前;一次最多可读取寄存器数(既各种电量的数量)是 50 个。 PDM 响应的命令格式是从机地址、功能码、数据区及 CRC 码。数据区的数据都是两个字节,并且高位在前(电能量除外)。 注:1、PDM-820AC/ACM/ACR、PDM-800AC/ACM 具有“03”、“06”、“10”功能码; 2、如果 PDM 采用 MODBUS ASCII 通讯协议,其通讯数据格式为;7 个数据位,1 个停止位,偶校验。 - 2 -功能码 定

7、 义 操 作(二进制) 02读开关量输入 读取一路或多路开关量状态输入数据 01读开关量输出 读取一路或多路开关量输出状态数据 03读寄存器数据 读取一个或多个寄存器的数据 05写开关量输出 控制一路继电器“合/分”输出 06写单路寄存器 把一组二进制数据写入单个寄存器 10写多路寄存器 把多组二进制数据写入多个寄存器 MODBUS RTU 通讯协议二、MODBUS 功能码简介2.1 功能码“02”:读 1 路或多路开关量状态输入 例如:主机要读取地址为 01,开关量 DI1DI4 的输入状态。从机(PDM)数据寄存器的地址和数据为: 主机发送的报文格式:从机(PDM)响应返回的报文格式:2.

8、2 功能码“01”:读 1 路或多路开关量输出状态 例如:主机要读取地址为 01,开关量 DO1,DO2 的输出状态。从机(PDM)数据寄存器的地址和数据为: 主机发送的报文格式:从机(PDM)响应返回的报文格式:- 3 -从机响应 字节数 返回的信息 备 注 从机地址 101来自从机 01功能码 101读开关量输出状态 数据长度 1011 个字节(8 个 BIT 位) DO 状态数据 102DO 寄存器内容 CRC 码 2D049由从机计算得到 CRC 码 主机发送 字节数 发送的信息 备 注 从机地址 101发送至地址为 01 的从机 功能码 101读开关量输出状态 起始 BIT 位 20

9、000起始 BIT 位地址为 0000读数据长度 20002读取 2 路继电器输出状态位 CRC 码 2BDCB由主机计算得到 CRC 码 起始位地址 DO 寄存器数据(16 进制)备 注 000002DO2 输出状态为“1”,DO1 输出状态为“0” 从机响应 字节数 返回的信息 备 注 从机地址 101来自从机 01功能码 102读开关量输入状态 数据长度 1011 个字节(8 个 BIT 位) DI 状态数据 10BDI 寄存器内容 CRC 码 2E04F由从机计算得到 CRC 码 主机发送 字节数 发送的信息 备 注 从机地址 101发送至地址为 01 的从机 功能码 102读开关量输

10、入状态 起始 BIT 位 20000起始 BIT 位地址为 0000读数据长度 20004读取 4 路开关量输入状态位 CRC 码 279C9由主机计算得到 CRC 码 起始位地址 DI 寄存器数据(16 进制)备 注 00000BDI1/DI2/DI4 状态为“1”,DI3 状态为“0” MODBUS RTU 通讯协议2.3 功能码“03”:读多路寄存器输入 例如:主机要读取地址为 01,起始地址为 0116 的 3 个从机寄存器数据。从机(PDM)数据寄存器的地址和数据为: 主机发送的报文格式:从机(PDM)响应返回的报文格式:2.4 功能码“05”:写 1 路开关量输出(“遥控”) 例

11、1:开关量输出点 DO1,其当前状态为“分”,主机要控制该路继电器“合”。 控 制 命 令 为 : “FF00” 为 控 制 继 电 器 “ 合 ”; “0000”为控制继电器“分”; 主机发送的报文格式: 从机(PDM)响应返回的报文格式: 与主机发送的报文格式及数据内容完全相同。- 4 -主机发送 字节数 发送的信息 备 注 从机地址 101发送至地址为 01 的从机 功能码 105写开关量输出状态 输出 BIT 位 20000对应输出继电器 BIT 位(DO1) 控制命令 2FF00控制该路继电器输出为“合”状态位 CRC 码 28C3A由主机计算得到 CRC 码 从机响应 字节数 返回

12、的信息 备 注 从机地址 101来自从机 01功能码 103读取寄存器 读取字 1063 个寄存器共 6 个字节 寄存器数据 121784地址为 0116 内存的内容 寄存器数据 221780地址为 0117 内存的内容 寄存器数据 32178A地址为 0118 内存的内容 CRC 码 25847由从机计算得到 CRC 码 主机发送 字节数 发送的信息 备 注 从机地址 101发送至地址为 01 的从机 功能码 103读取寄存器 起始地址 20116起始地址为 0116数据长度 30003读取 3 个寄存器(共 6 个字节)CRC 码 2E5F3由主机计算得到 CRC 码 寄存器地址 寄存器数

13、据(16 进制) 对应 PDM 电量 01161784UA01171780UB0118178AUC MODBUS RTU 通讯协议例 2:开关量输出点 DO2,其当前状态为“合”,主机要控制该路继电器“分”。 主机发送的报文格式:从机(PDM)响应返回的报文格式: 与主机发送的报文格式及数据内容完全相同。2.5 功能码“06”:写单路寄存器 例如:主机要把数据 07D0,保存到地址为 002C 的从机寄存器中去(从机地址码为 01)。 通讯数据保存结束后,地址为 002C 的 PDM 表原存储信息为: 主机发送的报文格式:从机(PDM)响应返回的报文格式:与主机发送的报文格式及数据内容完全相同

14、。2.6 功能码“10”:写多路寄存器 主机利用这个功能码把多个数据保存到 PDM 表的数据存储器中去。Modbus 通讯规约中的寄存器指的是 16 位(即 2 字节),并且高位在前。这样 PDM 的存储器都是二个字节。由于 Modbus 通讯规约允许每次最多保存 60 个寄存器,因此 PDM 一次也最多允许保存 60个数据寄存器。 例如:主机要把 0064,0010 保存到地址为 002C,002D 的从机寄存器中去(从机地址 码为 01)。通讯数据保存结束后,地址为 002C/002D 的 PDM 表内存储信息为: - 5 -地址 原来存储数据(16 进制)002C04B0002D1388

15、主机发送 字节数 发送的信息 举例 从机地址 101发送至地址为 01 的从机 功能码 106写单路寄存器 起始地址 2002C要写入的寄存器地址 写入数据 207D0对应的新数据 CRC 码 24BAF由主机计算得到的 CRC 码 地址 原来存储数据(16 进制)002C04B0主机发送 字节数 发送的信息 备 注 从机地址 101发送至地址为 01 的从机 功能码 105写开关量输出状态 输出 BIT 位 20001对应输出继电器 BIT 位(DO2) 控制命令 20000控制该路继电器输出为“合”状态位 CRC 码 29C0A由主机计算得到 CRC 码 MODBUS RTU 通讯协议主机

16、发送的报文格式:从机(PDM)响应返回的报文格式:三、错误校验码(CRC 校验): 主机或从机可用校验码进行判别接收信息是否正确。由于电子噪声或一些其它干扰,信息在传输过程中有时会发生错误,错误校验码(CRC)可以检验主机或从机在通讯数据传送过程中的信息是否有误,错误的数据可以放弃(无论是发送还是接收),这样增加了系统的安全和效率。 MODBUS 通讯协议的 CRC(冗余循环码)包含 2 个字节,即 16 位二进制数。CRC 码由发送设备(主机)计算,放置于发送信息帧的尾部。接收信息的设备(从机)再重新计算接收到信息的 CRC,比较计算得到的 CRC 是否与接收到的相符,如果两者不相符,则 表

17、明出错。 在进行 CRC 计算时只用 8 个数据位,起始位及停止位,如有奇偶校验位也包括奇偶校验位,都不参与 CRC 计算。 CRC 码的计算方法是:1. 预置 1 个 16 位的寄存器为十六进制 FFFF(即全为 1);称此寄存器为 CRC 寄存器; 2. 把第一个 8 位二进制数据(既通讯信息帧的第一个字节)与 16 位的 CRC 寄存器的低 8 位相异或,把结果放于 CRC 寄存器; 3. 把 CRC 寄存器的内容右移一位(朝低位)用 0 填补最高位,并检查右移后的移出位;4. 如果移出位为 0:重复第 3 步(再次右移一位); 如果移出位为 1:CRC 寄存器与多项式 A001(101

18、0 0000 0000 0001)进行异或; 5重复步骤 3 和 4,直到右移 8 次,这样整个 8 位数据全部进行了处理; 6. 重复步骤 2 到步骤 5,进行通讯信息帧下一个字节的处理; 7. 将该通讯信息帧所有字节按上述步骤计算完成后,得到的 16 位 CRC 寄存器的高、低字节进行交换; 8. 最后得到的 CRC 寄存器内容即为:CRC 码。 - 6 -从机响应 字节数 字节数 举例 从机地址 101来自从机 01功能码 110写多路寄存器 起始地址 2002C起始地址为 002C保存数据字长度 20002保存 2 个字长度的数据 CRC 码 28001由从机计算得到的 CRC 码 主机发送 字节数 发送信息 举例 从机地址 101发送至从机 01功能码 110写多路寄存器 起始地址 2002C要写入的寄存器的起始地址 保存数据字长度 20002保存数据的字长度(共 2 字) 保存数据字节长 104保存数据的字节长度(共 4 字节) 保存数据 1204B0数据地址 002C保存数据 221388数据地址 002DCRC 码 2FC63由主机计算得到的 CRC 码 MODBUS RTU 通讯协议四、通讯错误信息及数据的处理:当 PDM 表检测到除了 CRC 码出错以外的错误时,必须向主机回送

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论