思源电气 油色谱设备Modbus通讯协议_第1页
思源电气 油色谱设备Modbus通讯协议_第2页
思源电气 油色谱设备Modbus通讯协议_第3页
思源电气 油色谱设备Modbus通讯协议_第4页
思源电气 油色谱设备Modbus通讯协议_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、1. 使用项目:油色谱型号:TROM-600G2. 功能定义命令码0x01:读取某台设备的最新的报警码命令码0x03:读取某台设备的最新一组数据3 协议简介MODBUS协议链路说明如下:下行: 站址,功能号,数据地址,数据个数,校验码上行: 站址,功能号,字节数,数据1,数据2,。数据N,校验码站 址 : 一个字节,表示子站编号,可设置1-247之间的一个任意整数。功能 号 : 一个字节,表示本条报文的功能命令码。数据地址 : 两个字节,aHaL(高位在前,低位在后)。数据个数 : 两个字节,aHaL (高位在前,低位在后)。表示请求的数据项有多少个。字节 数 : 一个字节,数据区数据项字节长

2、度总和。数据 区 : N个字节。数据区是指数据1,数据2,。数据N这段。每个多字节数据项高位在前,低位在后。 校验 码 : 两个字节,十六位CRC校验(低位在前,高位在后)4 协议格式简介上位机与下位机是根据上述协议来将命令封装成报文的。在下面的叙述中,“下行报文”是指上位机(主站)向下位机(子站)发送的报文,“上行报文”是指下位机回应上位机的报文。我们向用户发送的数据,主要是变压器油中各种气体含量(浓度值)的当前最新的一组检测数据。为了便于理解,将封装后的下行报文和上行报文做成如下表格形式。为方便,报文格式中使用了缩写词,下表列出了各缩写词的含义。缩写含义ADDR站 址FC功能码DataAR

3、_H数据地址高字节DataAR_L数据地址低字节 DNUM_H数据个数高字节DNUM_L数据个数低字节CRC_LCRC校验码低字节CRC_HCRC校验码高字节表格 1 下行报文格式 缩写 含义ADDR站址FC功能码BYTE_NUM字节数DEV_NUM_L设备数量低位DEV_NUM_H设备数量高位H2Con_H10倍H2浓度值高字节H2Con_L10倍H2浓度值低字节COCon_H10倍CO浓度值高字节COCon_L10倍CO浓度值低字节CH4Con_H10倍CH4浓度值高字节CH4Con_L10倍CH4浓度值低字节C2H4Con_H10倍C2H4浓度值高字节C2H4Con_L10倍C2H4浓度

4、值低字节C2H6Con_H10倍C2H6浓度值高字节C2H6Con_L10倍C2H6浓度值低字节C2H2Con_H10倍C2H2浓度值高字节C2H2Con_L10倍C2H2浓度值低字节CO2Con_H10倍CO2浓度值高字节CO2Con_L10倍CO2浓度值低字节THC_H10倍总烃值高字节THC_L10倍总烃值低字节CRC_LCRC校验码低字节CRC_HCRC校验码高字节表格 2 上行报文格式注:一个单元格代表一个字节。5 协议内容详解5.1 下行报文详解说明:(1)ADDR是子站地址,该地址用于标识不同的子站,在我们的系统中,子站地址即油色谱设备编号。(2) FC即功能码,表明该条报文是用

5、于命令下位机执行何种功能。(3) DataAR 是数据地址,该数据地址表示寄存器地址,在我们的系统中,数据地址从0开始,即每条下行报文的数据地址填0。()DNUM是数据个数。表明上位机要求下位机上传多少个数据。()CRC是16位循环冗余校验码。计算CRC码时,对CRC之前的所有值进行计算。5.2 上行报文详解(1) ADDR是子站地址,该地址用于标识不同的子站,在我们的系统中,子站地址即油色谱设备编号。 ( 2) FC即功能码,表明该条报文是上位机命令下位机执行何种功能。在上行报文中,该功能码应和下行报文的功能号相同。(3) BYTE_NUM 是字节数。表示上行报文中数据所占的字节数。(4)

6、数据区。数据区包含了要上传的数据。上位机软件在解析各气体浓度时,应将气体浓度值除以10后,才是各气体的真实浓度值,因为上行报文的各浓度值是乘以10后才上传的。6 命令详解命令0x01读取某台设备的最新的报警码缩写含义ADDR站 址FC0x01DataAR_H数据地址高字节DataAR_L数据地址低字节DNUM数据个数CRC_LCRC校验码低字节CRC_HCRC校验码高字节表格3 下行报文格式注意:数据个数为6。 缩写 含义ADDR站址FC功能号=0x01BYTE_NUM字节数=6设备id_1设备id的高位高字节设备id_1设备id的高位低字节设备id_1设备id的低位高字节设备id_1设备id

7、的低位低字节设备1_报警码设备1_报警码高字节设备1_报警码设备1_报警码低字节CRC_LCRC校验码低字节CRC_HCRC校验码高字节表格4 上行报文格式低字节高位低字节低位进油后压力超限抽真空异常进油异常自排油异常载气压力异常命令0x03:读取某台仪器的最新一组数据缩写含义ADDR站 址FC0x03DataAR_H数据地址高字节DataAR_L数据地址低字节 DNUM_H数据个数高字节DNUM_L数据个数低字节CRC_LCRC校验码低字节CRC_HCRC校验码高字节表格5 下行报文格式注意:数据个数为10。 缩写 含义ADDR站址FC功能号=0x03BYTE_NUM字节数=0x18设备id

8、_1设备id的高位高字节设备id_1设备id的高位低字节设备id_1设备id的低位高字节设备id_1设备id的低位低字节数据时间戳时间戳的高位高字节数据时间戳时间戳的高位低字节数据时间戳时间戳的低位高字节数据时间戳时间戳的低位低字节H2Con_H10倍H2浓度值高字节H2Con_L10倍H2浓度值低字节COCon2字节10倍co的浓度CH4Con2字节 10倍ch4的浓度C2H4Con2字节10倍c2h4的浓度C2H6Con2字节10倍c2h6的浓度C2H2Con2字节 10倍c2h2的浓度CO2Con2字节 10倍CO2的浓度THCCon2字节10倍总烃值CRC_LCRC校验码低字节CRC_

9、HCRC校验码高字节表格 6 上行报文格式注意:如果上行报文中设备id为0,与下行报文中的站址不一致,则表示该站址对应的设备id不存在,随后的数据都为0;如果上行报文中设备id与下行报文中的站址一致,表示随后的数据为该设备的最新一组数据。7附录7.1 Modbus协议中的CRC校验上下行报文中包含了一个错误检测域,即两个字节的CRC码。下行CRC码由上位机计算,下行CRC码由下位机计算,放置于各自报文的尾部;接收报文的软件再重新计算接收到报文的CRC码,比较计算得到的CRC码是否与接收到的相符,如果两者不相符,则表明出错。 计算CRC码的步骤为:CRC码计算方法:1. 预置1个16位寄存器reg=0FFFFH;2. 将信息桢的第一个字节与16位寄存器reg异或(reg=reg buf1);3. 右移16位寄存器reg一位;4. 如果16位寄存器reg最低位为0,重复第3步; 如果16位寄存器reg最低位为1,将16位寄存器reg与0A001H相异或(reg=reg 0A001H);5. 重复第3,4步,共右移8次,处理整个字节;6. 重复第2,3,4,5步,对信息桢的下一个字节进行处理;7. 处理完所有

温馨提示

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

评论

0/150

提交评论