通信协议

1、通信接口RS485或RS232,波特率范围1200-9600。

2、仪表接线端为A, B和COM。

3、说明书表2中寄存器编号为寄存器地址。

4、通信信息组成:地址码-功能码-数据段-CRC校验码,一条消息连续发送和接收,字符间隔不能大于一个字符,否则认为一条新消息开始或老消息结束。信息体由十六进制数组成。.

5、数据定义:累积量为4字节十六进制定点数,瞬时量(包括温度压力等)为4字节浮点数。.

6、通信命令:

 功能码03-用来读取显示数据

发送   01    ;地址          回应  01   ;地址

03    ;功能码              03   ;功能码

00    ;寄存器地址高        04   ;字节个数

01    ;寄存器地址低(显示地址) 80   ;数据1

00    ;寄存器个数高        04   ;数据2

04    ;寄存器个数低        80   ;数据3

CRCH  ;CRC校验码高       80   ;数据4

CRCL  ;CRC校验码低     CRCH  ;CRC校验码高

CRCL  ;CRC校验码低

 说明:地址=仪表号,寄存器地址=显示项目编号

回应字节个数=(发送)寄存器个数低(1-63)

     

功能码04-用来读取数设定数据和码设定数据,

寄存器个数=1-3读码设定;=4-63读数设定。

读取数设定数据

发送  01  ;地址            回应   01 ;地址

04  ;功能码                 04 ;功能码

00  ;寄存器地址高           04 ;字节个数

01  ;寄存器地址低(数设定地址) 80 ;数据1

00  ;寄存器个数高           04    ;数据2

04  ;寄存器个数低           80    ;数据3

CRCH ;CRC校验码高           80    ;数据4

CRCL ;CRC校验码低         CRCH ;CRC校验码高

CRCL ;CRC校验码低

 说明:地址=仪表号,寄存器地址=数设定地址编号

回应字节个数=(发送)寄存器个数低(4-63)

读取码设定数据

发送  01 ;地址              回应   01 ;地址

04 ;功能码                   04 ;功能码

00 ;寄存器地址高             02 ;字节个数

01 ;寄存器地址低(码设定地址)  03 ;数据1码内容

00 ;寄存器个数高             04 ;数据2 码内容

01 ;寄存器个数低           CRCH ;CRC校验码高

CRCH ;CRC校验码高        CRCL ;CRC校验码低

CRCL ;CRC校验码低

说明:地址=仪表号,寄存器地址=码设定地址编号

回应字节个数=(发送)寄存器个数低(1-3)X2

功能码06-用来进行码设定

发送  01 ;地址             回应  01  ;地址

06 ;功能码                 06  ;功能码

00 ;寄存器地址高           00  ;寄存器地址高

01 ;寄存器地址低(码设定地址)01  ;寄存器地址低

00 ;数据高                 00   ;数据高

04 ;数据低                 04   ;数据低

CRCH ;CRC校验码高       CRCH  ;CRC校验码高

CRCL ;CRC校验码低       CRCL  ;CRC校验码低

功能码10H-用来数设定(如:100=86H,00H,00H,48H)

发送  01 ;地址                  回应 01  ;地址

10H ;功能码                   10H  ;功能码

00  ;寄存器地址高              00  ;寄存器地址高

01  ;寄存器地址低(数设定地址)  01  ;寄存器地址低

00  ;寄存器个数高             00   ;寄存器个数高

04  ;寄存器个数低             04  ;寄存器个数低

04  ;数据个数            CRCH  ;CRC校验码高

86h  ;数据1                CRCL  ;CRC校验码低

00  ;数据2

00  ;数据3

48H  ;数据4

CRCH  ;CRC校验码高

CRCL  ;CRC校验码低

功能码07-用来读取日报表,报表数据为长整型,顺序为质量热量

发送  01 ;地址             回应  01  ;地址

07 ;功能码                 07  ;功能码

xxy; 起始年(BCD码)        xxf  ;长度= xxc*5

xxm ; 起始月(BCD码)       xx1  ; 数据1

xxd ; 起始日(BCD码)       ….   ; 数据

xxc ;报表长度(1-16)         xxn   ;数据n

CRCH ;CRC校验码高       CRCH  ;CRC校验码高

CRCL ;CRC校验码低       CRCL  ;CRC校验码低

功能码08-用来读取月报表,报表数据为长整型,顺序为质量热量

发送  01 ;地址             回应  01  ;地址

08 ;功能码                 08  ;功能码

xxy; 起始年(BCD码)        xxf  ;长度= xxc*5

xxm ; 起始月(BCD码)       xx1  ; 数据1

xxd ; 空                   ….   ; 数据

xxc ;报表长度(1-16)         xxn   ;数据n

CRCH ;CRC校验码高       CRCH  ;CRC校验码高

CRCL ;CRC校验码低       CRCL  ;CRC校验码低

7、CRC校验码计算

01 ;地址        N1         CRC=0FFFFH为初值

10 ;功能码      N2        CRCL与N1异或运算

00 ;寄存器地址高N3      CRC右移1位,若移出位为1

01 ;寄存器地址低N4     则CRC=CRC和A001H异或,

00 ;寄存器个数高N5     若移出位为0则CRC=CRC

04 ;寄存器个数低N6     右移8次完成N1计算

04 ;数据个数   N7           …

80 ;数据1       N8     CRCL与N11异或运算

04 ;数据2       N9     CRC右移1位,若移出位为1

80 ;数据3      N10     则CRC=CRC和A001H异或,

80 ;数据4      N11     若移出位为0则CRC=CRC

CRCH  ;CRC校验码高       右移8次完成N11计算

CRCL  ;CRC校验码低       最后得到CRC校验值

8、sb2100系列仪表浮点数据格式

长度为4字节, 采用IEEE标准方式,其中尾数高位始终为1,位的分布如下:1位符号位,8位指数位,24位尾数,符号位是最高位,尾数为低位23位,按字节排序如下:

地址      0          1          2         3

内容 MMMMMMMM  MMMMMMMM  EMMMMMMM SEEEEEEEE

其中  S:符号位,0=整数,1=负数.

E:指数(在二个字节中),偏移码为127.

M:23位尾数,最高位为1,有效位为24位.

例如:100=0x00,0x00,0xc8,0x42

0=0x00,0x00,0x00,0x00

-100=0x00,0x00,0xc8,0xc2

9、通信举例

仪表地址设为01,通信波特率=4800,n,8,1(仪表码地址08=01,09=05)。

例1:读取仪表瞬时流量F,F=100. (4字节浮点数)

上位机发送:0x01,0x03,0x00,0x12,0x00,0x02,0x64,0xe

仪表回传:0x01,0x03,0x04,0x00,0x00,0xc8,0x42,0x2d,0xc2

例2:读取仪表累积流量S,S=12345.(4字节定点数)

上位机发送:0x01,0x03,0x00,0x14,0x00,0x02,0x84,0xf

仪表回传:0x01,0x03,0x04,0x39,0x30,0x00,0x00,0xf6,0xa0

例3: 读取仪表所有显示数据,包括瞬时,频率,差压, 压力,温度,密度,热量,累积流量,累积热量等12项48个字节

上位机发送:0x01,0x03,0x00,0x01,0x00,0x30,0x1e,0x14

仪表回传: 0x01,0x03,0x30,

0x69,0x00,0xc8,0x42,  (瞬时=100.0008)

0x86,0x00,0x00,0x00,(频率=0)

0x00,0x00,0xc8,0x44,(差压=1600)

0x9e,0x99,0x99,0x3f,(压力=1.20)

0x7d,0x1f,0x39,0x43,(温度=185.123)

0x00,0x00,0x80,0x3f,(密度=1.0)

0x00,0x00,0x00,0x00,(热量=0.0)

0x00,0x00,0x00,0x00,(保留)

0x00,0x00,0x00,0x00,(保留)

0x00,0x00,0x00,0x00,(保留)

0x60,0x30,0x00,0x00,(累积=12384)

0x0a,0x00,0x00,0x00,(累积热=10)

0xf5(校验码高),0xb9(校验码低)

例4: 读取仪表实时时间05-12-08-21-21-08,时间格式为6字节BCD码

上位机发送:0x01,0x04,0x00,0x29,0x00,0x03,0xc3,0x61

仪表回传:0x01,0x04,0x06,

0x08(秒),

0x21(分),

0x21(时),

0x08(日),

0x12(月),

0x05(年),

0x81(校验码高),0x9a(校验码低)

//显示寄存器定义

//水表累积区

寄存器地址     变量名称          数据类型  

1         1#水表累积量    unsigned long int

2         2#水表累积量    unsigned long int

。。。。。。

32        32#水表累积量   unsigned long int

//电表累积区

寄存器地址     变量名称          数据类型

33         1#电表累积量    unsigned long int

34         2#电表累积量    unsigned long int

。。。。。。

64         32#电表累积量   unsigned long int

//水表状态区,0-正常,1-失败

寄存器地址     变量名称          数据类型

65       1#水表通信状态     unsigned char

66       2#水表通信状态     unsigned char

。。。。。。

96       32#水表通信状态    unsigned char

//电表状态区0-正常,1-失败

 寄存器地址     变量名称          数据类型

97       1#电表通信状态     unsigned char

98       1#电表通信状态     unsigned char

.。。。。。。

128      32电表通信状态     unsigned char

//水表累积数小数定义0-无,1-1位,2-2

寄存器地址     变量名称          数据类型

129      1#水表累积数小数    unsigned char

130      2#水表累积数小数    unsigned char

。。。。。。

160      32#水表累积数小数    unsigned char

//电表累积数小数定义0-无,1-1位,2-2

寄存器地址     变量名称          数据类型

161      1#电表累积数小数     unsigned char

162      2#电表累积数小数     unsigned char

。。。。。。

192      32#电表累积数小数    unsigned char

杭州英博电磁流量计通讯协议相关推荐

  1. 杭州英博电磁流量计分体式

    分体式电磁流量计       即传感器和转换器分开装于不同的地点,一般出现以下情况时选用分离型. ⑴环境温度或流量计转换器表面受辐射温度超过60oC. ⑵管道震动较大的场合. ⑶会对传感器的铝壳严重腐 ...

  2. 微硬创新MODBUS转PROFINET RS485转PROFINET RS232转PROFINET网关在食品厂的高温热水杀菌项目中将热水电磁流量计接入西门子1500 PROFINET网络配置方法

    微硬创新MODBUS转PROFINET(PROFINET转MODBUS)网关PNMD485-K20将电磁流量计接入西门子PLC1500 PROFINET网络的使用方法: MODBUS 转PROFINE ...

  3. Modbus通讯协议的原文和详解

    这个协议很早以前就被公开发表了,现在Modbus已经成为工业领域通信协议的业界标准,有网站专门进行协议的整理和管理. 这里必须要吐槽一下,我就想查查协议发布时的原始文档,或者这个协议的英文原文和官方版 ...

  4. 3、Modbus通讯协议详解

    前言 在平时用的时候模块都会带有自己的通讯协议,直接查看手册用就可以,所以平时对于modbus虽然是在用但是原理性的东西时常忘记. 但是如果你做一个底层,自己写一个通讯协议,这时候就要对协议本身有所了 ...

  5. 杭州金田电磁转换器MODBUS通讯协议

    杭州金田电磁转换器MODBUS通讯协议 通讯协议采用标准MODBUS RTU通讯协议.仪表为从机. RTU消息帧定义 数据通讯由主机发起,主机首先发送RTU消息帧,消息帧发送至少要以3.5个字符时间的 ...

  6. 西门子mag6000接线_S7-1200与西门子电磁流量计SITRANS F M MAG 6000 DP通讯

    原标题:S7-1200与西门子电磁流量计SITRANS F M MAG 6000 DP通讯 JZGKCHINA 尊重原创 勿抄袭 勿私放其他平台 上星期接到去某污水厂调试加药项目的任务,总包要求流量计 ...

  7. 西门子S7-200PLC和丹佛斯变频器的通讯协议改造_过路老熊_新浪博客

    西门子S7-200PLC和丹佛斯变频器的通讯协议改造 应用设备:水箱式拉丝机 项目简介:嘉兴东方钢帘线有限公司是国内汽车钢帘线行业的骨干企业之一,水箱式拉丝机是钢帘线制造的关键设备.嘉兴东方钢帘线有限 ...

  8. 详解去中心化的DIM即时通讯协议

    2019年8月21日,密码极客邀请到了DIM项目的首席科学家Albert Moky来社群做线上分享. 此次活动由密码极客与DIM主办,TokenClub.火星财经和猛牛资讯联合主办,币乎.链节点.Lo ...

  9. php模拟流量器,插入式电磁流量计 智能流量计

    一.概    述 智能电磁流量计是一种根据法拉第电磁感应定律来测量管内导电介质体积流量的感应式仪表,采用单片机嵌入式技术,实现数字励磁,同时在电磁流量计上采用CAN现场总线,属国内首创,技术达到国内领 ...

  10. 2017-2018-1 20155327 实验五 通讯协议设计

    2017-2018-1 20155327 实验五 通讯协议设计 实验一: 实验要求: 在Ubuntu中完成 http://www.cnblogs.com/rocedu/p/5087623.html 中 ...

最新文章

  1. 别再盲目学 Python 了!
  2. python跑得慢_代码跑得慢甩锅Python?手把手教你如何给代码提速30%
  3. Latex论文排版技巧再总结
  4. rancher添加私有仓库_CocoaPods搭建私有库
  5. 反光衣识别算法冠军方案总结(附源码)|极市打榜
  6. Spring JdbcTemplate CRUD增删改查操作
  7. 乔布斯亲笔签名的Apple II手册 拍卖了511万元
  8. 安卓Selector
  9. Tomcat(四):发布和优化
  10. java微信内h5调起支付_java微信支付--------公众号内H5调起支付
  11. mysql 数据增量备份_MySQL数据库之mysql全量备份、增量备份实现方法
  12. 浙大 pat 1023题解
  13. Red hat linux ping: unknown host www.baidu.com
  14. 【人脸识别】基于matlab GUI PCA人脸二维码识别(带面板)【含Matlab源码 754期】
  15. 称重仪表显示ol怎么解决_电脑显示器无信号怎么解决呢?
  16. Android gallery 3D效果(扩展Gallery)
  17. qt 正则表达式 和 常用正则表达式应用
  18. 草图大师:SketchUp 2019 for Mac
  19. j2sdkversion-doc.zip下载地址
  20. js 中出现 invalid date问题

热门文章

  1. 数据科学学习之统计实验的设计、检验与分析
  2. 网络营销行业十大看了就想吐的“滥词”
  3. 简单打印-快递单套打
  4. Ubuntu系统中添加中文字体和修改默认中文字体
  5. JAVA项目在服务器部署过程
  6. SP刷机工具错误信息
  7. ASP.NET程序设计_新闻发布系统
  8. 基于Web的动态新闻发布系统设计与实现(含word文档)
  9. Ribbon 界面介绍(1)
  10. pdca实施的流程图_思维导图丨《高效PDCA工作术》流程图