




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Modbus通讯规约MODBUS通讯规约MODBUS通讯规约V2. 01.通讯参数和传输特性传输方式:异步串行通信方式。MODBUS规约模式:RTU模式。传输速率:2400 bps, 4800bps, 9600bps, 19200bpso串行口通讯数据格式:1个起始位,8个数据位,无校验位,1个停止位。最大传输距 离:1200米。通讯介质:推荐采用0.5mm的双绞线,不带屏蔽层。(原因是如果使用屏蔽双绞线, 但现场接地处理不好反而影响通讯质量)。网络连接主站数目:1个。网络连接从站数目:最多31个。应答时间:小于4. 5个byt e传输时间(帧间隔最小时间)+ 10ms。2 .网络连接RS-4
2、85网络的匹配电阻选取:双绞线网络两端的匹配电阻选取,以现场通信正常为准, 一般地1.2km时取120 C, 600m时取220 Q, 300m时取330。,如通信误码率较大,观察 通信时的波形,匹配电阻做适当改变:末端匹配电阻合适末端匹配电阻偏小末端匹配电阻偏大3 .通信参数选择通信站号:在通讯参数中修改装置地址,范围99,禁止使用0作为装置地址,地址 0作为广播地址使用。通信波特率:通讯参数中修改装置485 口,修改通信波特率:选择范围:2400bps, 4800bps, 9600bps, 19200bpso4 . MODBUS协议通用格式5 . 1支持的MODBUS功能码功能码02H:读
3、取开关量输入(读实遥信和虚遥信)。功能码03H:读取保持寄存器 (读事件记录等)功能码04H:读取输入寄存器(读远动遥测)功能码05H:强制单点继电器输出(远方复归、单步的遥控跳闸、遥控合闸)。功能码06H:向保持寄存器写单个字(遥控跳闸、遥控合闸的选择和执行操作)功能 码10H:向保持寄存器(内存区)写多个16位的字(通讯对时)。1MODBUS通讯规约4.2异常响应报文格式由F软件编程错误,对协议理解错误或通讯干扰等原因,MODBUS通信子站接收到主站 的报文后,可以采用异常响应报文给广回答,异常响应报文格式举例如下:主站二子站:远方复归FC 05H异常响应报文 子站二主站 报文 内容含义备
4、注 报文内容含义备注 MODBUS地址1字节01H举例1字节MODBUS地址01H举例1 字节功能码03H 1字节功能码85H 1字节01H 1字节02H 线圈地址高字节异常代 码1字节线圈地址低字节07H 1字节CRC高字节C3Hl字节 强制线圈数值高字节 FFH 1字节CRC低字节51H强制线圈数值低字节1字节00H1字节CRC高字节3CH CRC低字节1字节07H子站通过校验,发现主站报文有问题,将响应报文将主站的功能码最高位(D7)置1,如例子中的85H,异常响应报文中有固定的一个字节作 为“异常代码”,表示异常原因。异常代码01 02 03 04 05 06含义非法功能码。子站无法处
5、理主站报文中的功能码。非法数据地址。子站无法处 理主站报文中的数据地址。非法数据内容。主站报文中的数据不能满足子站的要求格式。 子站设备错误。当子站试图执行主站报文,会产生无法恢复的设备错误。确认帧。子站 接改到主站报文并执行,但由于执行时间比较长,采用本报文通知主站,防止产生主站接 收报文超时错误。子站忙。4.3时间格式本规约中使用到的对时报文的时间格式,事件记录中的时间格式,参见下面说明。七个八位位组的二进制时间 27亳秒20215亳秒28IV O(SU) (RESl)O (RES2) 00 25分2024时2024日20230020220(RES4) 0 2622 星期20(RES3)
6、0MODBUS通讯规约4. 4 MODBUS规约中CRC码的计算采用RTU通讯方式的MODBUS规约,要将报文中除CRC码外的所有字节进行CRC码校 验,校验程序如下:static unsigned char auchCRCHi 1 = /* Table of CRC values for high-order byte :*/ 0x00, OxCl, 0x81, 0x40, 0x01, OxCO, 0x80, 0x41, 0x01, OxCO, Ox0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,Ox
7、Cl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,Ox
8、CO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,Ox
9、Cl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x0 LOxCO,0x80,0x41,0x00,Ox
10、Cl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40,0x01,OxCO,0x80,0x41,0x01,OxCO,0x80,0x41,0x00,OxCl,0x81,0x40;byte */ 0x00, OxCO, OxCl, 0x01, 0xC3, 0x03, 0x0
11、2, 0xC2, 0xC6, 0x06, 0x07, 0xC7,0x05,0xC5,0xC4,0x04,OxCC,OxOC,OxOD,OxCD,OxOF,OxCF,OxCE,OxOE,OxOA,OxCA,OxCB,OxOB,0xC9,0x09,0x08,0xC8,0xD8,0x18,0x19,0xD9,OxlB,OxDB,OxDA,0x1 A,OxlE,OxDE,OxDF,OxlF,OxDD,OxlD,OxlC,OxDC,0x14,0xD4,0xD5,0x15,0xD7,0x17,0x16,0xD6,0xD2,0x12,0x13,0xD3,Oxll,OxDl,OxDO,0x10,OxFO,0x
12、30,0x31,OxFl,0x33,0xF3,0xF2,0x32,0x36,0xF6,0xF7,0x37,0xF5,0x35,0x34,0xF4,0x3C,OxFC,OxFD,0x3D,OxFF,0x3F,0x3E,OxFE,OxFA,0x3A,static unsigned char auchCRCLol/* Table of CRC values for low-order0x3B,OxFB,0x39,0xF9,0xF8,0x38,0x28,0xE8,0xE9,0x29,OxEB,0x2B,0x2A,OxEA,OxEE,0x2E,0x2F,OxEF,0x2D,OxED,OxEC,0x2C,
13、0xE4,0x24,0x25,0xE5,0x27,0xE7,0xE6,0x26,0x22,0xE2,0xE3,0x23,OxEl,0x21,0x20,OxEO,OxAO,0x60,0x61,OxAl,0x63,0xA3,0xA2,0x62,0x66,0xA6,0xA7,0x67,0xA5,0x65,0x64,0xA4,0x6C,OxAC,OxAD,0x6D,OxAF,0x6F,0x6E,OxAE,OxAA,0x6A,0x6B,OxAB,0x69,0xA9,0xA8,0x68,0x78,0xB8,0xB9,0x79,OxBB,0x7B,0x7A,OxBA,OxBE,0x7E,0x7F,OxBF,
14、0x7D,OxBD,OxBC,0x7C,0xB4,0x74,0x75,0xB5,0x77,0xB7,0xB6,0x76,0x72,0xB2,0xB3,0x73,OxBl,0x71,0x70,OxBO,0x50,0x90,0x91,0x51,0x93,0x53,0x52,0x92,0x96,0x56,0x57,0x97,0x55,0x95,0x94,0x54,0x9C,0x5C,0x5D,0x9D,0x5F,0x9F,0x9E,0x5E,0x5A,0x9A,0x9B,0x5B,0x99,0x59,0x58,0x98,0x88,0x48,0x49,0x89,0x4B,0x8B,0x8A,0x4A,
15、0x4E,0x8E,0x8F,0x4F,0x8D,0x4D,0x4C,0x8C,0x44,0x84,0x85,0x45,0x87,0x47,0x46,0x86,0x82,0x42,0x43,0x83,0x41,0x81,0x80,0x40 unsigned short Modbus_CRC16(unsigned char *puchMsg, unsigned short usDataLen) unsigned char uchCRCHi = OxFF ;/* high CRC byte initialized*/ unsigned char uchCRCLo = OxFF ;/* low CR
16、C byte initialized */unsigned short ulndex ;/* will index into CRC lookup*/ while(usDataLen)/* pass through message buffer */ ulndex = uchCRCHi 0 *puchMsg+ ;/* calculate the CRC */ uchCRCHi =uchCRCLo auchCRCHi Lulndex ; uchCRCLo = auchCRCLoulndex ; return (uchCRCHi 8 uchCRCLo) ; 3MODBUS通讯规约5报文格式详解以下
17、报文以MMP-5000D为例说明,相应通讯信息点表见MMP-5000D测点表。报文中的字节都是以16进制的方式显示。5. 1读全遥信主站发送:从机地址功能码开始地址H 01 02 00开始地址L 00遥信点数H 00 遥信点数L 20 79 D2 CRC码H CRC码L子站响应地址01功能码02字节数04 01本 字节的LSB对应遥信点号1遥信数值(LSB-MSB) 02 00 00本字节的MSB对应遥信点号 32 CRC码H 5B CRC码L DE注意:1) MMP-5000D供有32个遥信(实遥信和虚遥信), 因此主站从开始地址0读0x20个遥信点。2)本例应答报文中:数值01的D0位为1
18、代 表MMP-5000D的“远方控制”为1:数值02中的D1位为1代表MMP-5000D的跳位信号为 lo3)子站响应中的LSB, MSB指DO位和D7位,通讯点号依次采用升序的方式,比如第 一个字节的DO位为遥信点号1?它的D7位为遥信点号8;第二个节字的DO位就为遥信点 号9,它的D7位为遥信点号16,依次类推。5.2 读全遥测(远动遥测)主站发送:从机地址功能码开始地址H 01 04 00开始地址L 00遥测点数H 00遥测点数L OF BO 0E CRC码H CRC码L子站响应地址功能码字节数设备状态字 HL 01 04 1E 00 01第一个遥测值 HL6AA0第N个遥测值? B6
19、IB CRC码H CRC码L 设备状态字”的D0为1, MMP-5000D的“频率”表示请求读全遥信遥测值注意:1)遥测报文第一个测点为“设备状态字”,不用入库,第二个开始才是“频率”, 以后依次后推。2)远动遥测值的数据格式采用带品质描述的被测值(MEA)定义 BITO =溢出位(OV) BIT1 =差错位(ER) BIT2 =测试位(TEST),该 位置1表示本遥测量为综自功能BIT15-BIT3 =被测值(MVAL),范围-40964095 3) “设备状态字”占用两个字节,它的低字节的D0位为1表示有实遥信和虚遥信 变位,要求主站使用“读全遥信”报文来读取,一旦执行了 “读全遥信”,则
20、“设备状态 字的D0位变为0: “设备状态字”的D1位为1:表示保护装置有事件记录,要求主站使 用连续执行“读单个事件记录”来读取事件记录,子站没有新的事件记录时,4MODBUS通讯规约D1位自动变为0。通讯管理机可以根据需要选择是否使用“设备状态字”。4)如果 不需要使用“设备状态字”,可以将报文中的开始地址设为0x0001,则第一个读到的遥测 值就是“频率”。5)遥测值计算方法:?电压4095对应1. 2倍的额定值1. 2*100 = 120V ?电流4095对应1. 2倍的额定值 1. 2*5 = 6A?功率4095对应1.2倍的额定值(1.2*57. 77*1. 2*5)*3 = 1248W ?频率4095对应 1.2倍的额定值L 2*50 = 60Hz ?功率因素4095对应1倍的额定值1.000本例中:6AA0为第一个遥测值(频率),它被放大8倍,满量程值为4095,对应60Hz (50Hz 的 1.2 倍)。因此频率如下计算:0x6AA0/8/4095*60. 0Hz = 49. 993Hz 例: =MMP-5000D 读全遥测= TX:01 04 00 00 00 OF BO 0ERX: 01 04 IE 00 01 6A AO 00 00 00 00 00 00
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广告安装委托合同7篇
- 过户车辆转让协议与运动员参赛合同8篇
- 2025年南昌货运从业资格证模拟考试试题题库答案
- 项目启动会议纪要与决策记录
- 中秋福利采购合同
- 委托代理进口合同协议书
- 2025年天津货运上岗证考试考哪些科目
- 2025年蚌埠驾校考试货运从业资格证考试题库
- f2025二手商铺买卖合同8篇
- 《2.2分子结构与物质的性质》说课稿
- DeepSeek从入门到精通培训课件
- 俄罗斯进口冻肉合同范例
- 2.3 品味美好情感 课件 -2024-2025学年统编版道德与法治 七年级下册
- 2025年湖北省技能高考(建筑技术类)《建设法规》模拟练习试题库(含答案)
- 部编版七年级语文下册《第2课说和做》课件
- 养老服务信息化发展-深度研究
- 2024-2025学年第二学期学校总务工作计划(附2月-6月安排表行事历)
- 23G409先张法预应力混凝土管桩
- 个体工商户公司章程模板
- 兰州商学院二级学院权力运行流程图
- 预埋件计算公式
评论
0/150
提交评论