第一章 产品介绍
1.1产品概述
该产品是本司最新研发的一款利用毫米波雷达探测目标的电子设备,其主要作用是用来进行水利监测、污水处理、防洪预警等,其工作原理是基于毫米波雷达开发,测量雷达天线距离液面的高度。毫米波雷达组件主要由射频单元、处理单元和印制板天线构成。其优势在于毫米波雷达可以穿透光照,降雨、扬尘、雾霾或霜等障碍物探测目标,是一种全天候全小时工作的小型传感器,具有集成度高,体积小,接口灵活等优点。
广泛应用于水利监测,污水处理,防洪预警,化工、石油、制药、造纸等工业领域中的液位监测。
1.2功能特点
n IP65防水等级;
n 采用非接触式测量方式;
n 具有集成度高,外观精美的特点;
n 接口灵活、安装简单,使用寿命长;
n 不受光照,降雨,粉尘等障碍物的影响;
n 可测量较大距离范围,能够满足不同应用下的需求;
n 能够在不同的温度、湿度、气压等环境下工作,保证测距的准确性。
n 具有较强的抗干扰能力,能够延迟设备的使用时间,同时也符合环保要求。
n 具有高精度的距离测量能力,能够在复杂的环境中实现精确的测距;
1.3产品参数
测量频率 |
80GHz |
通讯接口 |
RS485 |
数据刷新率 |
160ms |
工作电流 |
15mA |
距离测量精度 |
±2mm |
待机电流 |
13mA |
量程范围 |
0.4-40米 |
盲区 |
0.167m |
天线波束宽度 |
±3° |
工作温度 |
-20~70℃ |
供电电压 |
DC 12V |
工作湿度 |
0~95% |
通讯协议 |
MODBUS协议 |
|
|
第二章 安装方式
2.1设备配套清单
设备配套清单:
l 雷达液位计传感器一个
l 雷达液位计固定板(选配)
l USB转RS485一台(选配)
l 合格证、保修卡
2.2 安装方式:采用螺丝固定的方式。
2.3接线方式
红色线接12V电源正极,黑色线接12V电源负极,黄色线接485-A,绿色线接485-B
注:电源接口为宽电压电源输入12-24V 均可。485 信号线接线时注意 A\B 两条线不能接反,总线上多台设备间地址不能冲突。
第三章 MODBUS通讯协议
3.1通讯基本参数
数据位 |
8位 |
奇偶校验位 |
无 |
停止位 |
1位 |
错误校验 |
CRC(冗余循环码) |
波特率 |
出厂默认为9600bit/s |
3.2 寄存器地址汇总
参数默认配置 |
||||
参数 |
默认地址 |
支持功能码 |
默认数据类型 |
说明 |
从机地址 |
0x2001 |
0x03,0x10 |
Int16 |
Int16为2字节整数;Int32为4字节整数,高16位在前 |
波特率 |
0x2002 |
0x03,0x10 |
Int32 |
|
版本信息 |
0x2004 |
0x03 |
Int30 |
|
设置校准参数 |
0x2052 |
0x03,0x10 |
Int16 |
|
自动推送周期 |
0x2053 |
0x03,0x10 |
Int16 |
|
盲区 |
0x2044 |
0x03 |
Float(little16) |
Float(little)为4字节浮点数,低16位在前 |
量程 |
0x2046 |
0x03 |
Float(little16) |
|
设置当前水深 |
0x2048 |
0x03,0x10 |
Float(little16) |
|
设置安装高度 |
0x204A |
0x03,0x10 |
Float(little16) |
|
液位 |
0x0A0B |
0x04 |
Float(little16) |
|
空高 |
0x0A0F |
0x04 |
Float(little16) |
注:各参数得寄存器地址和数据类型可通过上位机软件进行修改。
3.3 通讯协议命令说明
注意:
a. 设备地址默认位0x7F ;
b. 数据中的float类型数据采用IEEE754二进制浮点数算数标准;
c. 下面示例中,各参数所对应的寄存器地址为默认地址,如果通过上位机修改了寄存器地址,则请求命令中的寄存器地址也要相应改变;
d. 下面示例中, 各参数的数据定义(数据类型/单位)是根据默认配置进行解析,如果通过上位机修改了数据定义(数据类型/单位),则进行数据读取解析时也要相应的修改;
1. 查询数据指令:功能码0x04
1.1查询测量结果—液位(即安装高度-空高)
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x04 |
0x0A 0B |
0x00 02 |
0x09 CF |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x04 |
0x04 |
0x00 00 41 30 |
0x09 CF |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节,低16位在前。
错误代码:
① 未设置安装高度时,无法计算液位,输出0xFC FC FC FC;
② 测量结果超出量程时,输出0xFF FF FF FF;
③ 传感器处于盲区时,输出0xFE FE FE FE;
④ 传感器回波能量不足时,输出0xFD FD FD FD;
示例1:
请求:7F 04 0A 0B 00 02 09 CF
回复:7F 04 04 00 00 41 30 55 C7
其中数据部分0x 00 00 41 30 转换为浮点型数据,即11.00m
示例2:
请求:7F 04 0A 0B 00 02 09 CF
回复:7F 04 04 FC FC FC FC D4 A2
其中数据部分0x FC FC FC FC 为错误代码,表示未设置安装高度(无法计算液位)。
1.2查询测量结果—空高
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x04 |
0x0A 0F |
0x00 02 |
0x48 0E |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x04 |
0x04 |
0x31 13 41 10 |
0xAA B6 |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节,低16位在前。
错误代码:
① 测量结果超出量程时,输出0xFF FF FF FF;
② 传感器处于盲区时,输出0xFE FE FE FE;
③ 传感器回波能量不足时,输出0xFD FD FD FD;
示例1:
请求:7F 04 0A 0F 00 02 48 0E
回复:7F 04 04 31 13 40 10 AA B6
其中数据部分0X 31 13 40 10 转换为浮点型数据,即2.253m。
示例2
请求:7F 04 0A 0F 00 02 48 0E
回复:7F 04 04 FE FE FE FE F4 7B
其中数据部分0x FE FE FE FE 为错误代码,表示传感器处于盲区,读取不到有限数据。
2. 查询配置信息指令:功能码0x03
2.1 广播查询从机地址
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0xFF |
0x03 |
0x20 01 |
0x00 01 |
0xCB D4 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x02 |
0x00 7F |
0xD1 AE |
数据定义:数据类型为int16型数据,数据长度为2字节。
示例:
请求:FF 03 20 01 00 01 CB D4
回复:7F 03 02 00 7F D1 AE
其中数据部分0x00 7F转换为整型数据,即127或0x7F。
2.2查询通讯接口波特率
注:波特率仅支持:4800, 9600 ,19200 ,38400 ,115200
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 02 |
0x00 02 |
0x64 15 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x00 00 25 80 |
0x7F 04 |
数据定义:数据类型为int32(big)型数据,数据长度为4字节。
示例:
请求: 7F 03 20 02 00 02 64 15
回复: 7F 03 04 00 00 25 80 7F 04
其中数据部分0x 00 00 25 80 转换为整型数据,即9600。
2.3 查询版本信息
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 04 |
0x00 02 |
0x84 14 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x20 23 09 08 |
0x99 A8 |
数据定义:数据类型为int32型数据,数据长度为4字节。版本号采用BCD编码格式。
示例:
请求:7F 03 20 04 00 02 84 14
回复:7F 03 04 20 23 09 08 99 A8
其中数据部分0x 20 23 09 08 ,该数据采用BCD编码格式,即版本号为20230908。
2.4 查询校准参数
请求命令
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 52 |
0x00 01 |
0x24 05 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x02 |
0x00 10 |
0x91 82 |
数据定义:数据类型为int16型数据,单位为毫米(mm),数据长度为2字节。
示例:
请求:7F 03 20 52 00 01 24 05
回复:7F 03 02 00 10 91 82
其中数据部分0x00 10 转换为整型数据,即16mm。
2.5 查询自动推送周期
注:当自动推送周期>=200ms时,传感器会自动推送数据。当未设置安装高度(无法计算液位)时,推送空高数据;当设置了安装高度时,推送液位数据。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 53 |
0x00 01 |
0x75 C5 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x02 |
0x03 E8 |
0x90 F0 |
数据定义:数据类型为int16型数据,单位为毫秒(ms),数据长度为2字节。
示例:
请求:7F 03 20 53 00 01 75 C5
回复:7F 03 02 03 E8 90 F0
其中数据部分为0x 03 E8 转换为整型数据,即1000ms。
2.6 查询盲区
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 44 |
0x00 02 |
0x85 C0 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x6D B7 3E AB |
0x99 61 |
数据定义:数据类型默认为float(little 16)型数据,单位默认为米(m),数据长度为4字节。
示例:
请求: 7F 03 20 44 00 02 85 C0
回复: 7F 03 04 6D B7 3E AB
其中数据部分 0x 6D B7 3E AB转换为浮点型数据,即0.334m。
2.7 查询量程
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器长度 |
CRC |
0x7F |
0x03 |
0x20 46 |
0x00 02 |
0x24 00 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x00 00 42 20 |
0x55 4C |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节。
示例:
请求:7F 03 20 46 00 02 24 00
回复:7F 03 04 00 00 42 20 55 4C
其中数据部分 0x 00 00 42 20 转化为浮点型数据,即40.0m。
2.8 查询安装时水深
注:设置安装时水深,是用于计算安装高度。安装高度=安装时水深+安装时的实时空高。在设置安装时水深时,会自动计算安装高度,并保存到配置中。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 48 |
0x00 02 |
0x45 C3 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x47 AE 40 B1 |
0xE0 D5 |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节。
示例:
请求:7F 03 20 48 00 02 45 C3
回复:7F 03 04 47 AE 40 B1 E0 D5
其中数据部分 0x 47 AE 40 B1 转换为浮点型数据,即5.54m。
2.9 查询安装高度
注:设置安装高度,是用于计算液位。实时液位=安装高度-实时空高。同时,安装高度=安装时水深+安装时空高。所以在设置安装高度时,会自动计算安装时水深,并保存到配置中。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x03 |
0x20 4A |
0x00 02 |
0xE4 03 |
回复数据:
设备地址 |
功能码 |
数据长度 |
数据 |
CRC |
0x7F |
0x03 |
0x04 |
0x8A 64 41 2A |
0xBE 7C |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节。
示例:
请求: 7F 03 20 4A 00 02 E4 03
回复:7F 03 04 8A 64 41 2A BE 7C
其中数据部分0x 8A 64 41 2A 转换为浮点型数据,即10.65m。
3. 设置指令:功能码0x10
3.1 设置从机地址
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 01 |
0x00 01 |
0x02 |
0x00 01 |
0x6E 21 |
回复数据:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 01 |
0x00 01 |
0x51 D7 |
数据定义:数据类型为int16型数据,数据长度为2字节。
示例:
请求:7F 10 20 01 00 01 02 00 01 6E 21
其中数据部分0x00 01 转换为整型数据,即1或0x01。
回复:7F 10 20 01 00 01 51 D7
3.2 设置通讯接口波特率
注:波特率仅支持:4800,9600 ,19200,38400,115200
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 02 |
0x00 02 |
0x04 |
0x00 01 C2 00 |
0x75 3E |
回复数据:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 02 |
0x00 02 |
0xE1 D6 |
数据定义:数据类型为int32型数据,数据长度为4字节。
示例:
请求:7F 10 20 02 00 02 04 00 01 C2 00 75 3E
其中数据部分0x 00 01 C2 00转换为整型数据,即115200。
回复:7F 10 20 02 00 02 E1 D6
3.3 设置校准参数
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 52 |
0x00 01 |
0x02 |
0x00 01 |
0xA2 4E |
回复请求:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 52 |
0x00 01 |
0xA1 C6 |
数据定义:数据类型为int16型数据,单位为毫米(mm),数据长度为2字节。
示例:
请求:7F 10 20 52 00 01 02 00 10 A2 4E
其中数据部分0x 00 10转换为整型数据,即16mm。
回复:7F 10 20 52 00 01 A1 C6
3.4 设置自动推送周期
注:当自动推送周期>=200ms时,传感器会自动推送数据。当未设置安装高度(无法计算液位)时,推送空高数据;当设置了安装高度时,推送液位数据。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 53 |
0x00 01 |
0x02 |
0x03 E8 |
0xA2 ED |
回复数据:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 53 |
0x00 01 |
0xF0 06 |
数据定义:数据类型为int16数据,单位为毫秒(ms),数据长度为2字节。
示例:
请求:7F 10 20 53 00 01 02 03 E8 A2 ED
其中数据部分0x 03 E8转换为整型数据,即1000ms。
回复: 7F 10 20 53 00 01 F0 06
3.5 设置安装时水深
注:设置安装时水深,是用于计算安装高度。安装高度=安装时水深+安装时的实时空高。在设置安装时水深时,会自动计算安装高度,并保存到配置中。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 48 |
0x00 02 |
0x04 |
0x47 AE 40 B1 |
0x75 30 |
回复数据:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 48 |
0x00 02 |
0xC0 00 |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节。
示例:
请求:7F 10 20 48 00 02 04 47 AE 40 B1 75 30
其中数据部分0x 47 AE 40 B1转换为浮点型数据,即5.54m。
回复:7F 10 20 48 00 02 C0 00
3.6 设置安装高度
注:设置安装高度,是用于计算液位。实时液位=安装高度-实时空高。同时,安装高度=安装时水深+安装时空高。所以在设置安装高度时,会自动计算安装时水深,并保存到配置中。
请求命令:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
数据长度 |
数据 |
CRC |
0x7F |
0x10 |
0x20 4A |
0x00 02 |
0x04 |
0x8A 64 41 2A |
0xAA 40 |
回复数据:
设备地址 |
功能码 |
寄存器地址 |
寄存器个数 |
CRC |
0x7F |
0x10 |
0x20 4A |
0x00 02 |
0x61 C0 |
数据定义:数据类型默认为float(little16)型数据,单位默认为米(m),数据长度为4字节。
注:将安装高度设置为0,则会清除安装高度/安装时水深的配置。
示例:
请求:7F 10 20 4A 00 02 04 8A 64 41 2A AA 40
其中数据部分0x 8A 64 41 2A 转换为浮点型数据,即10.65m。
回复:7F 10 20 4A 00 02 61 C0