




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ModBus_RTU通讯规约(本协议采用主从问答方式)ModBus通讯协议:ModBus通讯规约允许TDS系列仪表/变送器与施耐德、西门子、AB、GE等多个国际著名品牌的可编程顺序控制器(PLC)、RTU、SCADA系统、DCS或与第三方具有ModBus兼容的监控系统之间进行信息交换和数据传送。TDS系列仪表/变送器只要简单地增加一套基于计算机(或工控机)的监控软件(如:组态王、Intouch、FIX、synall等)就可以构成一套工况监控系统。广泛的系统集成: TDS表/变送器提供了标准的RS-485/422通讯接口及ModBus通讯协议,这个通讯协议已广泛被国内外工控行业作为系统集成的标准。通讯数据的类型及格式:信息传输为异步方式,并以字节为单位。在主站和从站之间传递的通讯信息是11位的字格式:(1位起始位,8位数据位,2位停止位,无奇偶校验)字格式(串行数据)11位二进制说明起始位1位出厂按该表11位的字格式特殊需要另订数据位8位奇偶校验位无停止位2位若特殊需要(订货时请注明要求),主站和从站之间传递的通讯信息也可采用10位的字格式:(1位起始位,8位数据位,1位停止位) 通讯数据(信息帧)格式数据格式:地址码功能码数据区错误校检数据长度:1字节1字节N字节16位CRC码(冗余循环码) 注:1、1个字节由8位二进制数组成(既8 bit)。 2、ModBus是Modicon公司的注册商标。 3、“从机”在本文件中既为TDS。通讯信息传输过程:当通讯命令由发送设备(主机)发送至接收设备(从机)时,在CRC校验无误情况下,从机地址与地址码相符的从机接收通讯命令(TDS表以本机的地址码和功能码2个字节作为同步字),并根据功能码及相关要求处理信息,执行相应的任务,然后把执行结果(数据)返送给主机。返回的信息中包括地址码、功能码、执行后的数据以及CRC校验码。如果CRC校验出错就不返回任何信息。TDS表使用的MODBUS功能码(16进制)功能码定 义操 作(二进制)02读开关量读取开关量设置数据;一个或多个开关量控制/报警状态数据03读寄存器数据读取单路或多路工况数据;单路或多路控制/报警设置数据05写开关量写一个开关量设置数据06写单个寄存器写单个功能寄存器或单路控制/报警设置数据10写多路寄存器写多路功能寄存器或多路控制/报警设置数据地址码: 地址码是每次通讯信息帧的第一字节(8位),从01H到FFH。每个从机都必须有唯一的地址码。所有地址的从机都将接收由主机发送来的信息,只有符合地址码的从机才响应要求,回送信息。当从机回送信息时,回送数据均以各自的地址码开始。主机发送的地址码表明将发送到的从机地址,而从机返回的地址码表明回送的从机地址。功能码: 是每次通讯信息帧传送的第二个字节。ModBus通讯规约可定义的功能码为0到127。TDS系列仪表/变送器仅用到其中的一部分功能码。作为主机请求发送,通过功能码告诉从机应执行什么动作。作为响应,从机返回的功能码与从主机发送来的功能码一样,并表明从机已响应主机并且已进行相关的操作。数据区:数据区包括需要由主机发送、从机回送何种信息或执行什么动作。这些信息可以是数据(如:开关量、模拟量、寄存器参数等等)、参考地址等。例如,主机通过功能码03告诉从机返回单路或多路工况数据寄存器的值或单路或多路控制/报警设置数据寄存器的值(包含要读取寄存器的起始地址及读取寄存器的长度等),则返回的数据包括寄存器的数据长度及数据内容。对于不同的从机,地址和数据信息都不相同(见通讯信息表)。TDS系列仪表/变送器采用Modbus通讯规约,主机(PLC、RTU、PC机、DCS等)利用通讯命令(功能码03),可以进任意行读取其数据寄存器(其数据信息表详见附录)。TDS系列仪表/变送器的数据寄存器存储多种工况数据(如:温度、压力、流量、电流、电压、功率及控制/报警数据等),开关量以bit位为单元的二进制数组成(既8 bit为1个字节)多字节数据;模拟量、寄存器参数都是16位(2字节)的二进制数据,高位在前(最高位为符号位,其后15位数据,例1500D 05DCH;-500D 81F4H)。TDS响应的命令格式是从机地址、功能码、数据区及CRC码。数据区的数据为多字节开关量数据或模拟量数据。以64路TDS仪表为例作如下说明:功能码02:读开关量例如:从机48路开关量设定数据(内容:10110001B,01110011B,10100110B,11111011B,00010101B,11001101B)主机要读取地址为01的从机第3路到第22路巡检状态开关量设置数据,数据地址为0302H开始20bit 位(内容:11101100B,10011100B,XXXX1001B)。(未参加巡检时,该路数的开关量数据0)主机发送的报文格式:主机发送字节数发送的信息举例说明从机地址101H 发送至地址为01的从机功能码102H 读取开关量设置数据起始地址20302H单元数20014H20bit 位20路巡检状态CRC码2XXXXH由主机计算得到CRC码从机(TDS)响应返回的报从机响应字节数返回的信息举例说明从机地址101H 来自从机01功能码102H 读取开关量设置数据字节数103H数据区字节数开关量设置数据111101100B8 bit位设置数据(310路)开关量设置数据110011100B8 bit位设置数据(1118路)开关量设置数据1XXXX1001B4 bit位设置数据(1922路)CRC码2XXXXH 由从机计算得到CRC码功能码03:读多路寄存器例如:主机要读取地址为01,起始地址为从1路到3路从机工况数据,其中第2路未参加巡检。(未参加巡检时,该路数的工况数据为0000H)从机(TDS)数据寄存器的地址和数据为:寄存器地址寄存器数据(16进制)01路1784H02路0000H03路178AH主机发送的报文格式:主机发送字节数发送的信息举例说明从机地址101H 发送至地址为01的从机功能码103H 读取工况数据起始地址20000H 起始地址为00 (1路)数据路数20003H 读取3路工况数据CRC码2XXXXH由主机计算得到CRC码从机(TDS)响应返回的报文格式:从机响应字节数返回的信息举例说明从机地址101H 来自从机01功能码103H 读取工况数据 字节数106H第1路工况数据21784H第2路工况数据20000H第3路工况数据2178AH CRC码2XXXXH 由从机计算得到CRC码功能码05:写开关量例如:主机要设置地址为01的从机第9路参加巡检(数据FF00H代表ON该路参加巡检;数据0000H代表OFF该路不参加巡检)。主机发送的报文格式:主机发送字节数发送的信息举例说明从机地址101H 发送至地址为01的从机功能码105H 写开关量设置数据起始地址20308H1 FFH100HCRC码2XXXXH由主机计算得到CRC码从机(TDS)响应返回的报文格式:从机响应字节数返回的信息举例说明从机地址101H来自从机01功能码105H写开关量设置数据起始地址20308H1FFH100HCRC码2XXXXH 由从机计算得到CRC码功能码06:写单路控制/报警数据主机利用这个功能码把单路二进制控制/报警设置数据保存到TDS表的数据存储器中去(寄存器)。例如:主机要把04B0H保存到从机第6路上上限寄存器中去(从机地址码为01)。通讯数据保存结束后,TDS表内 第6路上上限为04B0H:主机发送数据地址和数据为:地址 数据第6路04B0H主机发送的报文格式:主机发送字节数发送的信息举例说明从机地址101H 发送至从机01功能码106H写单路寄存器数据地址20205H第6路上上限寄存器保存数据204B0HCRC码2XXXXH由主机计算得到的CRC码从机(TDS)响应返回的报文格式:主机发送字节数返回的信息举例说明从机地址101H发送至从机01功能码106H写多路寄存器数据地址20205H第6路上上限寄存器保存数据204B0HCRC码2XXXXH 由主机计算得到的CRC码功能码10:写多路控制/报警数据主机利用这个功能码把多路二进制控制/报警设置数据保存到TDS表的数据存储器中去(寄存器)。例如:主机要把04B0H,保存到从机第1路上限寄存器中去;1388H保存到从机第2路上限寄存器中去(从机地址码为01)。通讯数据保存结束后,TDS表内 第1路上限为04B0H;、第2路上限为1388H:主机发送数据地址和数据为:地址 数据第1路04B0H第2路1388H主机发送的报文格式:主机发送字节数发送的信息举例说明从机地址101H发送至从机01功能码110H写多路寄存器起始地址20100H第1路开始数据数20002H2路设定数据字节数104H保存数据1204B0H保存数据221388HCRC码2XXXXH由主机计算得到的CRC码从机(TDS)响应返回的报文格式:主机发送字节数返回的信息举例说明从机地址101H发送至从机01功能码110H写多路寄存器起始地址20100H第1路开始数据数20002H保存2路设定数据CRC码2XXXXH由主机计算得到的CRC码错误校验码(CRC校验)主机或从机可用校验码进行判别接收信息是否正确。由于电子噪声或一些其它干扰,信息在传输过程中有时会发生错误,错误校验码(CRC)可以检验主机或从机在通讯数据传送过程中的信息是否有误,错误的数据可以放弃(无论是发送还是接收),这样增加了系统的安全和效率。MODBUS通讯协议的CRC(冗余循环码)包含2个字节,即16位二进制数。CRC码由发送设备(主机)计算,放置于发送信息帧的尾部。接收信息的设备(从机)再重新计算接收到信息的CRC,比较计算得到的CRC是否与接收到的相符,如果两者不相符,则表明出错。在进行CRC计算时只用8个数据位,起始位及停止位,如有奇偶校验位也包括奇偶校验位,都不参与CRC计算。 CRC码的计算方法 1预置1个16位的寄存器为十六进制FFFF(即全为1);称此寄存器为 CRC寄存器;2把第一个8位二进制数据(既通讯信息帧的第一个字节)与16位的CRC 寄存器的低8位相异或,把结果放于CRC寄存器;3把CRC寄存器的内容右移一位(朝低位)用0填补最高位,并检查最低位(LSB位被提取出来检测);如果最低位为1:移位后 CRC寄存器与多项式A001(1010 0000 0000 0001)进行异或;如果最低位为0:不作处理;4重复步骤3,直到右移8次,这样整个8位数据全部进行了处理;5重复步骤2到步骤5,进行通讯信息帧下一个字节的处理;6最后得到的CRC寄存器内容即为:CRC码。通讯错误信息及数据的处理: 当TDS测到除了CRC码出错以外的错误时,必须向主机回送信息,功能码的最高位置为1,即从机返送给主机的功能码是在主机发送的功能码的基础上加128 。以下的这些代码表明有意外的错误发生。 TDS接收到的信息如有CRC错误,则将被TDS略。 TDS返送的错误码的格式如下(CRC码除外): 地址码: 1字节 功能码: 1字节(最高位为1,例:03H功能码变为83H) 错误码: 1字节 CRC码:2字节。 TDS响应回送如下错误码: 81:非法的数据位置。 指定的数据位置超出TDS表的范围。 82:非法的数据值。 接收到主机发送的数据值超出TDS相应地址的数据范围。附录1:TDS系列流量积算仪MODBUS通讯规约信息表数据类型单元地址 说明00000001累积流量单元(四字节)数据类型为带小数点的八位十进制数00020005分别为瞬时流量、第一、第二及第三工况数据(十六进制数)0006单元(两字节)4个4位二进制数分别代表流量、第一、二、三工况数据小数点位置: 0000 无小数点0001 小数点在十位0010 小数点在百位0011 小数点在千位0100 小数点在万位0007附加功能前字节高4位二进制数代表转换数据小数点位置:0000 无小数点0001 小数点在十位0010 小数点在百位0011 小数点在千位0100 小数点在万位0008单元(两字节)第一、二、三工况数据的某一转换数据附录2:8/16/24/32/48/64路MODBUS通讯规约信息表单元数据类型单元地址说明工况数据0000H0040H从0000H到003FH共64个单元(双字节)分别代表64路工况数据;0040H单元(双字节),后字节为巡检路数设定字节(主机可改)是TDS表工况现场设定的巡检路数。前字节(主机不可改)低4位代表控制/报警方式:0000 单显示0001 上限报警0010 上限/上上限报警字节高4位代表工况数据小数点位置:0000 无小数点0001 小数点在十位0010 小数点在百位0011 小数点在千位上限寄存器0100H013FH从0100H到013FH共64个单元(双字节)分别代表64路上限设定数据)。当该控制/报警方式不存在时,对所有单元读/写时,回送为非法的数据位置错误码。上上限寄存器0200H023FH从0200H到023FH共64个单元(双字节)分别代表64路上上限设定数据。当该控制/报警方式不存在时,对所有单元读/写时,回送为非法的数据位置错误码。开关量设定数据0300H033FH从0300H到033FH每个单元为1bit,每单元分别对应1巡检路,分别代表64路巡检状态设定(主机可改)(第1单元0300H主机不可改)。每8个单元组成1字节(每1字节8 bit)。单元(bit位)为1表示对应的巡检路参加巡检,未参加巡检时该路所有单元参数为0。第1字节最末位代表第1路巡检状态,第8字节最高位代表第64路巡检状态。开关量控制/报警状态0400H043FH0440H047FH0480H04BFH从0400H到04BFH每个单元为1 bit,0400H043FH共64 bit分别代表64路断阻报警状态;0440H047FH共64 bit分别代表上限控制/报警状态;0480H04BFH共64 bit分别代表上上限控制/报警状态。每8个单元组成1字节,每8个字节为一组,第1字节最末位代表第1路控制/报警状态,第8字节最高位代表第64路控制/报警状态。附录3:TDS转速测控仪表MODBUS通讯规约信息表单元数据类型单元地址说明 工况数据0000H频率f数据带2位小数点0001H转速n0002H转速%数据带1位小数点0003H频率f max.数据带2位小数点0004H转速n max.0005H转速% max.数据带1位小数点设定数据寄存器0100H控制/报警J10%5%额定转速0101H控制/报警J225%40%额定转速0102H控制/报警J340%80%额定转速0103H控制/报警J480%90%额定转速0104H控制/报警J585%100%额定转速0105H控制/报警J6100%125%额定转速0106H控制/报警J7130%175%额定转速0107H极对数/额定频率单元前字节为极对数(主机可改),范围13FH (63D)极对数;单元后字节为转速仪测量额定频率(主机不可改): 00H 60Hz01H 50Hz02H 25Hz03H 17.5Hz0108H归零延时单元前字节为归零延时115,1为12秒;2为24秒;3.15为180秒;单元后字节为转速仪转速n/转速n max. 数据小数点位置:0000 无小数点0001 小数点在十位0010 小数点在百位0011 小数点在千位开关量控制/报警状态03000307从0300H到0306H每个单元为1 bit,共7 bit(单元), 分别代表J1J7工况开关量控制/报警状态。0307H单元为断相开关量报警状态。说明:1控制/报警J1、J2、J3、J4、J5、J6、J7的设定数据,为正数表示当转速n大于设定值时该控制/报警动作;为负数表示当转速n小于设定值时该控制/报警动作。TDS转速测控仪对J1、J2、J3、J4、J5、J6、J7设定数据的规定范围是J1、J2、J3为负数;J4、J5、J6、J7为正数。例J3 设定数据为50%即8032H,J6 设定数据为105%即0069H。2频率f、频率f最大值数据含2位小数;转速%、转速%最大值数据含1位小数;转速n、转速n最大值数据,当转速n的额定转速大于等于100转/每分钟数据含1位小数(极对数小于30对极),当转速n的额定转速小于100转/每分钟数据含2位小数(极对数大于等于30对极)。附录4:TDS电站专用温度测控仪表MODBUS通讯规约信息表单元数据类型单元地址 说明工况数据0000H工况温度0001H工况温度max0002H单元前字节低4位代表控制/报警方式:0000 单显示0001
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东中考图形题目及答案
- 2023-2024学年四川省达州市高二下学期7月期末监测数学试题(解析版)
- 2024-2025学年四川省达州市高一上学期1月期末考试语文试题(解析版)
- 2025年甘肃省武威市嘉峪关市临夏州中考数学真题含答案
- 高中英语人教版必修二Unit5-Music-单元话题写作作业
- 2025年秋三年级上册语文同步教案 17 海滨小城
- 车辆维修厂务虚发言材料
- 自贡统计年鉴-2009-运输和邮电主要统计指标解释
- 冠心病的冶疗与护理讲课件
- 作业人员资质管理制度
- 2025年养老护理员职业考试试题及答案
- 揭阳惠来县纪委监委等部门属下事业单位招聘笔试真题2024
- 党课课件含讲稿:以作风建设新成效激发干事创业新作为
- 超市百货考试试题及答案
- 城投公司工程管理制度
- 2025全国农业(水产)行业职业技能大赛(水生物病害防治员)选拔赛试题库(含答案)
- 苏州市昆山市惠民物业管理有限公司招聘考试真题2024
- 模拟电子技术(山东联盟-山东建筑大学)知到智慧树期末考试答案题库2025年山东建筑大学
- GA 1812.2-2024银行系统反恐怖防范要求第2部分:数据中心
- 2024《整治形式主义为基层减负若干规定》全文课件
- 农产品农业公司财务管理制度
评论
0/150
提交评论