资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
多功能表 MODBUS 协议1MODBUS 通讯协议概述:PD800使用MODBUS-RTU通讯协议,MODBUS协议详细定义了数据序列和校验码,这些都是数据交换 的必要内容。PD800提供了远程微机(PC机、工控机、PLC)通过其RS-485数字接口来实现对仪 表的系统编程、数据采集、现场监控等功能。测量数据进行双向传递遵循Modbus协议,通讯参数(地 址、波特率、数据格式)可手工现场设置。典型应用于测量单相、三相三线、三相四线电力网络中 各种电参量,包括各种电压、电流、功率、功率因素、频率、电能等。阅读本协议需要您具有ModBUS协议的知识储备,并且读了本产品的使用说明书,对本产品功能 和应用概念有较全面了解。本协议适用于:PD800三相多功能数字电测表和PD800单相多功能数字电测表。2MODBUS 通讯协议分析:MODBUS 协议是一种主从式点对点的通讯协议。他分为 RTU 协议和 ASCII 协议,我公司的多种 仪表都采用 ModBus RTU 通讯协议,允许一台主机和多台从机之间进行数据通信,在 PD800 通讯系 统中,主机是微机(PC、工控机、PLC),从机是PD800仪表。在该分散通讯系统中,允许系统连 接多达128仪表以及1.2KM的通讯距离。通讯方式采用主机请求,从机应答。即:主机提出命令请 求,从机响应接收数据后作数据分析,如果数据满足通讯规约,从机作数据响应。主从机间的通讯主机发送的每一帧数据包含以下信息(16 进制):地址(Adderss )域功能(Func tion)域数据(Data)域帧校验(Check)域8-Bits8-BitsN x 8-Bits16-Bits主机请求数据帧:地址功能数据地址数据长度校验码8Bi ts8Bi ts8Bit s(Hi)8Bi ts(Lo)8Bit s(Hi)8Bi ts(Lo)8Bit s(Hi)8Bi ts(Lo)从机响应数据帧:地址功能数据长度响应数据校验码8Bi ts8Bi ts8Bi tsN x 8-Bits8Bits(Hi)8Bi ts(Lo)2.1 地址(Adderss)域:地址域在帧的开始部分,由一个字节(8位二进制码)组成,十进制为0247,是从机设备号(也 称终端设备号),主机利用从机地址来识别进行通讯的从机设备。每个终端设备的地址必须是唯一 的,仅仅被寻址的终端会响应正确的帧命令。2.2 功能(Function)域:功能域紧接地址域,由一个字节组成,主机发送的功能码告诉了被寻址到的终端执行何种功能。表 2-1 列出了 PD800 用到的功能码,以及它们的意义和功能。功能码意义行为04H读电量米集寄存器获得一个或多个电量米集寄存器的当前值10H预置多寄存器参数设定二进制值到一系列可编程寄存器中表 2-12.3 数据(Data)域:数据域通常包含了终端执行特定功能所需要的参数地址、读写长度或者查询时采集到的数据或 者设置值。数据域长度由所执行的功能决定,域内的参数地址、数据长度、数据信息描述如下:2.3.1数据地址:2字节(lword),可以用字节方式表达,也可以用字方式表达。2.3.2 数据长度:下行时2 字节,终端回应时1 字节,可以用字节方式或用字方式表达。 通讯说明:利用通讯命令,可以进行点对点双向通讯,串行通讯双方必须设置为相同的波特率 (Baud)、校验方式(N、E、0)、数据长度(8)、停止位(1)。同时通讯双方必须选择相同的通讯方式:字方式或字节方式。若是字地址,主机就必须以字方 式发送命令给寄存器,地址和长度按照WORD格式地址;若是字节地址,主机就必须以字节方式发送 命令给寄存器,地址和长度按照BYTE格式。两种方式下从机返回相同格式的数据。但若字地址与字 节地址搞反将会得到错误结果或得不到从机响应。 PD800 仪表支持字格式和字节格式两种通讯方式。(字节方式/字方式选择:通讯控制字的BIT7为0为字、字节方式选择位;按键也可以设置;当 设置LEN L=0时,此时BIT7 = 0即为字节方式。当设置LEN L=2时,此时BIT7 = 1即为字方式。2.4帧校验(Check)域:帧校验域采用循环冗余码CRC16,由二个字节校验码组成,用于检测主机和终端检查传输过程 中的数据通讯错误,保证主机或者终端不去响应那些传输过程中发生了改变的数据,提高系统的安 全性和效率,CRC校验码的低字节先发,高字节后发。2.4.1 校验码算法介绍:CRC值由发送设备计算后附加到数据帧上。接收设备在接收数据时重新计算CRC值,与接收到 的 CRC 域中的值进行比较,如果不相等则通讯发生错误。CRC运算时,首先将一个别16位的寄存器预置为全1,然后连续把数据帧中的每字节中的8位 与该寄存器的当前值进行运算,仅仅每个字节的8个数据位参与生成CRC,起始位和停止位以及可 能使用的奇偶位都不影响CRC。在生成CRC时,每个字节的8位与寄存器中的内容进行异或,然后 将结果向低位移位,高位则用“0”补充,最低位(LSB)移出并检测,如果是1,该寄存器就与一 个预设的固定值(0A001H)进行一次异或运算,如果最低位为0,不作运算处理。上述处理重复进 行,直到执行完8次移位操作,当最后一位(第8位)移完以后,下一个8位字节与寄存器的当前 值进行异或运算,同样进行上述的另一个8 次移位异或操作,当数据帧中的所有字节都处理完,生 成的最终值就是CRC值。2.4.2生成一个CRC的流程为:预置一个16位寄存器为OFFFFH (全1),称之为CRC寄存器。把数据帧中的每一个字节的8位与CRC寄存器中的低字节进行异或运算,结果存回CRC寄存器。 将 CRC 寄存器向右移一位,最高位填0,最低位移出并检测。如果最低位为0:重复第三步(下一移位);如果最低位为1:将CRC寄存器与一个预置的固定 值(0A001H)进行异或运算。重复第三步和第四步直到 8 次移位。这样处理完一个完整的八位。重复第二步到第五步来处理下一个八位,直到所有的字节处理完毕。最终CRC寄存器的值就是CRC的值。2.4.3 个数据包在后面附加了 CRC16后,此包数据的CRC16校验码为0x0000,也可以利用此 特性对通讯过程的数据包进行校验。3通讯接口的应用31 通讯参数的设置:通过仪表上的编程键盘对仪表进行以下通讯参数进行设置。 仪表地址:通讯网络中从机(仪表)地址号,可以设置为0-247。255为广播地址。 通讯速度:通讯网络中通讯速度,可选择通讯速度(波特率)为2400、4800、9600、19200。数据格式:通讯网络中数据格式:1个起始位,8个数据位,1个停止位,可选择无校验位(N)、 奇校验位(0)、偶校验位(E),表示为“N. 8. 1”“0. 8. 1”“E.8. 1”。通讯协议:MODBUS通讯方式选择,字通讯“LEN L=2”或字节通讯“LEN L=1”。3. 2网络连线:RS485通讯接口的连接线A+和B-对应连接到上位机,连接线建议采用屏蔽双绞线, 其中屏蔽双绞线的一端接地,另一端不接,以减少现场干扰。增加终端电阻Z0=120 Q可减少反射干扰,建议在通讯速度快(9600bps)或通讯距离较远(700m)的情 况下连接。3. 3 采用通讯测试软件测试通讯将仪表的RS485通讯接口与计算机连接好,计算机上运行测试软件,仪表和软件设置正确的参 数后即可对仪表编程和数据采集。3. 4 报文格式说明功能04H:读N个字节主机请求:地址功能数据地址2字节数据长度2字节校验码从机响应:地址功能数据长度1字节数据信息校验码功能04H错误响应:地址+功能+ 01H + FFH + CRC16其中:FFH 为读参数错误指示码,错误类型包括读写地址错误;数据长度错误.功能10H:写N个字节主机请求:地址功能数据地址2字节数据长度2字节数据信息校验码从机响应:地址功能数据地址2字节数据长度1字节无校验码功能10H错误响应:地址+功能+ FFH + FFH +数据长度1字节+ CRC16其中: FFH 为写参数错误指示码,错误类型包括读写地址错误;数据长度错误.4 举例说明:(PD800-为例说明)4.1 读地址号为2 的电表中 IA、IB、IC 3 个电流数据。 方法:根据数据地址表以及功能 04H 选择正确通讯参数4.1.1 若以字通讯方式:主机请求:地址功能数据地址数据长度校验码02H04H0012H0006HCRC16从机响应:地址功能数据长度数据信息校验码02H04H0CH12字节数据CRC164.1.2 若以字节方式通讯:主机请求:地址功能数据地址数据长度校验码02H04H0024H000CHCRC16从机响应:地址功能数据长度数据信息校验码02H04H0CH12字节数据CRC16说明:从数据地址表知,电流参数WORD地址为:18 (BYTE地址为36),即0012H。需要读的 数据为3X2个WORD电量数据(3X4个BYTE数据),即数据长度为:0006H。3EH和D0H为CRC16 码。回送的电量数据 IA 为 BYTE1,BYTE2,BYTE3,BYTE4,IB 为 BYTE5,BYTE6,BYTE7,BYTE8, IC为BYTE9, BYTE10, BYTE11, BYTE12共12个字节的数据,其意义满足IEEE-754浮点数格式的 数据规范。4.2 对地址号为1的表设置输入变比PT: 35KV/100V; CT: 1000A/5A: 方法:计算PT=350 (015EH),CT=200 (00C8H),根据地址表可选择参数:4.2.1 若以字通讯方式:主机请求:地址功能数据地址数据长度3数据信息校验码01H10H0002H0002H015E00C8HCRC16从机响应:地址功能数据地址数据长度3校验码01H10H0002H04HCRC164.2.2 若以字节通讯方式:主机请求:地址功能数据地址数据长度3数据信息校验码01H10H0004H0004H015E00C8HCRC16从机响应:地址功能数据地址数据长度3校验码01H10H0004H04HCRC16说明:从数据地址表知,电压PT变比WORD地址为0002H(BYTE地址为0004H),两个数据总WORD 长度为:0002H (BYTE长度0004H),输入数据内容为PT=015EH, CT=00C8H。5IEEE-754 数据格式说明:BYTE2EYTE5.BYTE4EYTE1指鼻BYTE2EYTE3BTTE4层趟部分IE
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号