




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、HGM6100通讯协议1 引言本通讯协议详细描述了本机串行口通讯的读写命令格式及内部信息数据的定义,以便第三方开发使用。MODBUS通讯规约允许本装置与施耐德、西门子、Modicon等多个国际知名品牌的可编程顺序装置(PLC)、RTU、SCADA系统、DCS或第三方具有MODBUS兼容的监控系统之间进行信息和数据的有效传递。只要增加一套基于PC(或工控机)的中央通讯主控显示软件(如:组态王,Intouch、FIX、synall等)就可建立一套监控系统。2 ModBus基本规则: 所有RS232通讯回路都应遵照主、从方式。依照这种方式,数据可以在一个主站(如:PC)和32个子站之间传递。 主站将
2、初始化的装置在RS232通讯回路上传递的所有信息。 任何一次通讯都不能从子站开始。 在RS232回路上的所有通讯都以“信息帧”方式传递。 如果主站或子站接收到含有未知命令的信息帧,则不予响应。3 数据帧格式:通讯传输为异步方式,并以字节(数据帧)为单位。在主站和子站之间传递的每一个数据帧都是以11位的串行数据流。通信波特率:9600bp数据帧格式:起始位1位数据位8位奇偶校验位无停止位2位4通信规约:当通信命令发送至仪器时,符合相应的地址码的设备接收通信命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务,然后把执行结果返送给发送者。返送的信息中包括地址码、执行动作的功能码、执行动作后
3、的数据以及错误校验码(CRC)。如果出错就不发送任何信息。信息帧格式:初始结构地址码功能码数据区错误校验结束结构延时(相当于4个字节的时间)1字节8位1字节8位N字节N*8位2字节16位延时(相当于4个字节的时间)地址码(ADDRESS):地址码为每次通信传送的信息帧中的第一个数据帧(8位),从0到255。单个设备的地址范围是1-247,这个字节表明由用户设定的地址码的子机将接收由主机发送来的信息,并且每个子机都有唯一的地址码,并且响应回送均以各自的地址码开始。主机发送来的地址码表明将发送到的子机地址,而子机发送的地址码表明回送的子机地址。功能码 (FUNCTION CODE)功能码是每次通信
4、传送的第二个数据。ModBus通讯规约定义功能码为1-255(01H-0FFH)。本机利用其中的一部分功能码。作为主机请求发送,通过功能码告诉子机执行什么动作。作为子机响应,子机发送的功能码与主机发送来的功能码一样,并表明子机已响应主机进行操作。如果子机发送的功能码的最高位是1(功能码>127),则表明子机没有响应或出错。下表列出功能码具体的含义及操作。ModBus部分功能码功能码定义操作01H读开关量读取单个或多个开关量03H读寄存器读取一个或多个寄存器数据05H置单个开关量置单个开关量1. 01H 读开关量主机可以利用功能码为01的通讯命令,读取装置内的各种开关量(如开关合闸、分闸、
5、故障,自动或手动状态等)。2. 03H 读寄存器主机利用功能码为03H的通讯命令,读取装置内的数值寄存器,数值寄存器内保存的是采集到的各种模拟量和参数的设定值)。功能码03H映射的数据区的输入寄存器值都是16位(2字节)。这样从装置读取的寄存器值都是2字节。一次最多可读取的寄存器数是125个。子机响应的命令格式是子机地址、功能码、数据区及CRC码。数据区的数据都是每二个字节为一组的双字节数,且高字节在前。3. 05H 置单个开关量主机利用这条命令把单个开关量数据保存到装置内的位存储器(如控制ATS转换的开关量)。子机也用这个功能码向主机返送信息。数据区(DATA):数据区随功能码不同而不同。1
6、、 与功能码01H对应的数据区格式:主机发送数据顺序12数据含义起始地址读开关量个数字节数22子机应答:数据顺序12数据含义回送字节数N个开关量数据字节数112、 与功能码03H对应的数据区格式:主机发送数据顺序12数据含义起始地址读寄存器个数字节数22子机应答:数据顺序12数据含义回送字节数N个寄存器数据字节数1N3、 与功能码05H对应的数据区格式:主机发送数据顺序12数据含义开关量地址强制单个开关量值字节数22子机应答:数据顺序12数据含义开关量地址单个开关量值字节数22错误校验码(CRC):主机或子机可用校验码进行判别接收信息是否出错。有时,由于电子噪声或其它一些干扰,信息在传输过程中
7、会发生细微的变化,错误校验码保证了主机或子机对在传送过程中出错的信息不起作用。这样增加了系统的安全和效率。错误校验码采用CRC-16校验方法。二字节的错误校验码,低字节在前,高字节在后。*注意:信息帧的格式都是相同的:地址码、功能码、数据区及错误校验码。冗余循环码(CRC)包含2个字节,即16位二进制。CRC码由发送端计算,放置于发送信息的尾部。接收端的设备再重新计算接收信息的CRC码是否与接收到的相同,如果二者不同,则表明出错。CRC码的计算方法是,先预置16位寄存器全为1。再逐渐把每8位数据信息进行处理。在进行CRC码计算时只用8位数据位,起始位及停止位都不参与CRC码计算。在计算CRC码
8、时,8位数据与寄存器的数据相异或,得到的结果向低位位移一位,用0填补最高位。再检查最低位,如果最低位为1,把寄存器的内容与预置数异或,如果最低位为0,不进行异或运算。这个过程一直重复次。第8次移位后,下一个8位再与现在的寄存器的内容相异或,这个过程与上次一样重复8次。当所有的数据信息处理完后,最后寄存器的内容即为CRC码值。CRC-16码的计算步骤为:1、 置16位CRC寄存器为十六进制FFFF;2、 把一个8位数据与CRC寄存器的低8位相异或,把结果放于CRC寄存器;3、 把CRC寄存器的内容右移一位,用0填补最高位,检查移出位。4、 如果最低位为0:重复第3步(再次移位)。如果最低位为1:
9、CRC寄存器与十六进制数A001进行异或。5、 重复步骤3和4,直到右移8次,这样整个8位数据全部进行了处理。6、 重复步骤2到5,进行下一个数据处理。7、 最后得到的CRC寄存器值即为CRC码,传送时将低8位先发送,高8位最后发送。注:CRC码的计算从子机地址开始,除CRC码的所有字节。信息帧格式举例功能码01H子机地址为00,读取起始地址为0000H的20H(十进制32)个开关量主机发送字节数举例(十六进制)子机地址101送至子机01功能码101读取开关量起始地址200起始地址为000000读取个数200读取28个开关量1CCRC码23D由主机计算得到的CRC码C3子机响应字节数举例(十六
10、进制)子机地址101返回子机地址01功能码101读取开关量读取字节数104返回开关量数量:28个开关量(共4个字节)数据1130地址为0700内的内容数据2100地址为0F08内的内容数据3193地址为1710内的内容数据410A地址为1C18内的内容CRC码218由子机计算得到的CRC码26开关量0700的值用十六进制表示为30H,用二进制表示为00110000,开关量07是字节的高位,00 是低位,开关量0700的状态是:OFFOFFONONOFFOFFOFFOFF。功能码03H子机地址为01,起始地址为0026H的3个点此例中点数据地址为:地址数据(十六进制)00260014002800
11、14002A0005主机发送字节数举例(十六进制)子机地址101送至子机01功能码103读取点寄存器起始地址200起始地址为002626读取个数200读取3个点(共6个字节)03CRC码2E4由主机计算得到的CRC码00子机响应字节数举例(十六进制)子机地址101返回子机地址01功能码103读取点寄存器读取字节数1063个点(共6个字节)点1数据200地址为0026内的内容14点2数据200地址为0028内的内容14点3数据200地址为002A内的内容05CRC码291由子机计算得到的CRC码71功能码05H子机地址为01,起始地址为0002H的1个开关量,置0002单元为1此例中开关量数据地
12、址为:地址数据(十六进制)000000001100020说明:十六进制值00FF强制开关量为1,0000H强制为0,其它值则为非法且不影响开关量的状态主机发送字节数举例(十六进制)子机地址101送子机地址01功能码105强制开关量起始地址200起始地址为000000数据200开关量置1FFCRC码2CD由主机计算得到的CRC码FB子机响应字节数举例(十六进制)子机地址101返回子机地址01功能码105强制开关量起始地址200起始地址为000000数据200开关量置1FFCRC码2CD由主机计算得到的CRC码FB出错处理当装置检测到了CRC码出错以外的错误时,必须向主机返送信息,功能码的最高位置
13、1,即子机返送的功能码是在主机发送的功能码的基础上加128。以下的这些代码表明有意外的错误发生。从主机接收到的信息如有CRC错误,则被装置忽略。子机返送的错误码的格式如下(CRC除外):地址码1字节功能码1字节(最高位是1)错误码1字节CRC码2字节错误功能码:01 非法的功能码接收到的功能码不支持02 非法的数据地址指定的地址超出子机的范围03 非法的数据值接收到主机发送的数据值超出相应地址的数据范围。附录:地址和数据表1:功能码01H所映射的开关量区开关量地址项目(Item)说明0000H公共报警为1有效0001H公共警告报警为1有效0002H公共停机报警为1有效0003H保留为1有效00
14、04H保留为1有效0005H发电正常为1有效0006H市电带负载为1有效0007H发电带负载为1有效0008H紧急停机为1有效0009H超速报警停机为1有效000AH欠速报警停机为1有效000BH速度信号丢失停机为1有效000CH超频报警停机为1有效000DH欠频报警停机为1有效000EH过压报警停机为1有效000FH欠压报警停机为1有效0010H发电过流停机为1有效0011H起动失败为1有效0012H水温高报警停机为1有效0013H油压低报警停机为1有效0014H频率丢失报警为1有效0015H输入口停机报警为1有效0016H保留为1有效0017H保留为1有效0018H水温高警告报警为1有效0
15、019H油压低警告报警为1有效001AH发电过流警告报警为1有效001BH停机失败警告报警为1有效001CH油位低警告为1有效001DH充电失败警告为1有效001EH电池电压过低警告报警为1有效001FH电池电压过高警告报警为1有效0020H输入口警告报警 为1有效0021H保留为1有效0022H保留为1有效0023H保留为1有效0024H保留为1有效0025H保留为1有效0026H保留 为1有效0027H保留为1有效0028H系统在测试模式为1有效0029H系统在自动模式为1有效002AH系统在手动模式为1有效002BH系统在停机模式为1有效002CH保留为1有效002DH保留为1有效002
16、EH保留为1有效002FH保留为1有效0030H紧急停机输入为1有效0031H可编程输入口1为1有效0032H可编程输入口2为1有效0033H可编程输入口3为1有效0034H保留为1有效0035H保留为1有效0036H保留为1有效0037H保留为1有效0038H起动继电器输出为1有效0039H燃油继电器输出为1有效003AH可编程输出口1为1有效003BH可编程输出口2 为1有效003CH可编程输出口3 为1有效003DH可编程输出口4 为1有效003EH保留为1有效003FH保留为1有效0040H市电故障为1有效0041H市电正常 为1有效0042H市电过压为1有效0043H市电欠压为1有效
17、0044H市电缺相为1有效0045H保留为1有效0046H保留为1有效0047H保留为1有效表2:功能码03H所映射的数据区地址项目及说明0000H市电UA0001H市电UB0002H市电UC0003H市电UAB0004H市电UBC0005H市电UCA0006H市电频率0007H发电UA0008H发电UB0009H发电UC000AH发电UAB000BH发电UBC000CH发电UCA000DH发电频率000EHA相电流000FHB相电流0010HC相电流0011H水温温度值0012H水温电阻值0013H油压值0014H油压电阻值0015H液位值0016H液位电阻值0017H转速0018H电池电压0019HD+电压001AH有功功率001BH无功功率001CH视在功率001DH功率因数001EH保留001FH保留0020H保留0021H保留0022H控制器运行状态0023H 延时0024H自动运行状态 0 开机 1 停机 2无延时0025H延时0026HATS运行状态 0无延时1转换间隔0027H延时0028H市电状态 0 正常 1 异常 2无延时0029H延时002AH油机运行累计计时(小时)高位(0-9999)002BH油机运行累计计时(小时)低位(0-9999)002CH
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广播电视设备用网络通信模块考核试卷
- 城市垃圾填埋场规划考核试卷
- 文化创意产业的资本运作与市场发展动态考核试卷
- 意外伤害保险在旅游业的风险管理考核试卷
- 乳饮料的无乳糖配方设计与市场潜力考核试卷
- 文具企业产品线规划考核试卷
- 葡萄加工售卖合同范本
- 旅游门票售卖合同范本
- 土建付款合同范本
- 第四季度营销工作重点计划及时间表安排方案
- 2025年幼儿园膳食工作计划
- 《基于二维激光SLAM的AGV导航系统设计》
- 药剂学第9版课件:第一章-绪论
- 《下载-综合布线》课件
- 电化学储能系统测试操作方法
- (高清版)DB43∕T 1588.28-2019 小吃湘菜 第28部分:武冈空饼
- 第六单元 共同面对的全球性问题 知识清单
- 老年病科重点专科建设
- 工程投标文件范本完整版
- 小学二年级开学家长会课件2024-2025学年
- 语文跨学科合作:语文与数学的融合
评论
0/150
提交评论