Skip to content

DYP-A17 超声波液位传感器接入指南

1. 传感器简介

项目内容
设备名称A17 超声波液位(测距)传感器
型号DYP-A17-V1.0(RS485 受控输出型号 DYP-A17NY4W-V1.0)
厂商深圳市电应普科技有限公司(DYP / Best Sensor)
协议类型Modbus-RTU(RS-485)
接入方式EdgeBus DTU(KC21 电池版),LoRaWAN Class A
业务代码22112
模板名称DYP-A17

A17 采用超声波反射式测距技术,非接触测量探头到液面的距离(量程 25cm~1000cm),通过 KC21 电池版 DTU 以 Modbus-RTU 接入 ThinkLink,用于污水井/下水道液位监测,并提供高液位/溢出、低液位、传感器读数故障三类告警。

⚠️ 液位语义:A17 测量的是「探头到液面的距离」,液位越高,距离越小。因此高液位告警使用较小的距离阈值,低液位告警使用较大的距离阈值。

2. 产品特点

  1. 智能信号处理,盲区小,量程 25cm~1000cm,最小误差 < 1cm。
  2. 非接触测量,探头不接触污水,避免腐蚀、缠绕、结垢。
  3. 腔体防积水工艺,有效缓解探头凝露(污水井湿气重的关键)。
  4. 板载温度补偿(-15℃~60℃),自动修正温度偏差。
  5. 低功耗设计:静态电流 < 10µA、测量状态 < 15mA,配合电池版 DTU + COV 上报长期续航。
  6. 台阶过滤等级、探头激励强度、盲区判断值可调,适应井壁回波/井面波动等复杂工况。
  7. 静电防护设计,符合 IEC61000-4-2 标准。

3. 适用范围

  • 污水井 / 下水道液位监测(本方案)
  • 市政排水管网 / 雨水井内涝预警
  • 集水坑 / 泵站液位监测

4. 采集器信息

4.1 硬件信息

项目内容
DTU 型号KC21(电池版)
接口类型RS-485
供电方式电池供电(已确认),LoRaWAN Class A
设备模板MT-EB-BATTERY
心跳周期出厂/绑定默认短心跳(900s,保证调试入网);配置完成后经 SET RPC 设为 8h(28800s)省电
传感器工作电压DC 3.3~5.0V(静态 < 10µA,测量 < 15mA)

⚠️ 供电兼容性提示(部署前现场核对):A17 传感器本体工作电压为 DC 3.3~5.0V。KC21 电池版 DTU 给传感器供电的输出电压须与之匹配(部分 KC21 电池版输出可选 3.3V/5V)。同类电池版超声波液位传感器已有成功接入先例,但部署前请核对 KC21 实际供电输出电压,避免供电不匹配导致传感器无法工作。

4.2 接线信息

引线标注功能接 KC21(电池版)
VCC3.3~5V 电源KC21 VCC 输出(核对电压)
GND电源地KC21 GND
RXRS485-B(反相端)KC21 RS485-B
TXRS485-A(同相端)KC21 RS485-A

注意:A17 的 ③RX = 485-B、④TX = 485-A,A/B 对应关系勿接反。

5. 数据采集

通过 Modbus-RTU(FC03 读保持寄存器,CRC-16,默认地址 0x01,9600/8/N/1,高字节在前)读取以下数据点:

  • 0x0100 处理值距离(滤波后稳定值)→ 液位主遥测
  • 0x0102 环境温度

5.1 寄存器定义

寄存器地址项目数据类型读写说明
0x0100处理值距离uint16BE(mm)R多次测距滤波后稳定值,响应 0.9~2.5s(本方案采集
0x0101实时值距离uint16BE(mm)R单次实时距离,响应 130ms(本方案不采集,冗余)
0x0102环境温度int16BE(0.1℃)R模组内部温度,分辨率 0.5℃(本方案采集
0x0200从机地址uint16BER/W0x01~0xFE,默认 0x01
0x0201波特率uint16BER/W默认 0x03=9600
0x0210盲区判断值uint16BE(cm)R/W25~100,默认 25;影响盲区内稳定性
0x0211台阶过滤等级uint16BER/W0~5,默认 4;越高过滤越强(井面波动/凝露场景需调)
0x0212探头激励强度uint16BER/W5~15,默认 10
0x0213小角度模式uint16BER/W0 常规 / 1 小角度,默认 0

5.2 通讯报文示例

读处理值距离:主 01 03 01 00 00 01 85 F6 → 从 01 03 02 02 F2 38 A1(0x02F2=754mm)
读温度:      主 01 03 01 02 00 01 24 36 → 从 01 03 02 01 2C B8 09(0x012C=30.0℃)
写台阶过滤:  主 01 06 02 11 00 03 98 76 → 从 01 06 02 11 00 03 98 76(台阶过滤=3级)

6. EdgeBus 模型

6.1 EB 配置参数

参数
namedyp-a17
port22
version0x87
dataType0x12
upPeriodIndex70(上传周期 app_70)
periodIndex74(采集周期 app_74)
indexAPP150(Modbus 地址 app_150)
COV开启,distance(covAppIndex 110 / cov_distance)
串口9600 / 8 / NONE / 1
Batterytrue(Class A)
BzType / BzVersion22112 / 1

6.2 EB 代码

typescript
const eventInfo = [
  {
    name: "dyp-a17", port: 22, version: "0x87", dataType: "0x12", upPeriodIndex: 70,
    quInfo: [
      {
        protocol: "modbus", addr: "0x01", code: "0x03", periodIndex: 74,
        indexAPP: 150, indexCMD: 0, copySize: 1,
        listVal: [
          { start: "0x0100", end: "0x0100", covType: "Uint16BE", covAppIndex: 110 },
          { start: "0x0102", end: "0x0102" }
        ]
      }
    ]
  }
];
// otaConfig: BaudRate 9600/8/NONE/1, Battery true, ConfirmDuty 60, BzType 22112, BzVersion 1

6.3 说明

  • 1 个查询事件:FC03 读寄存器 0x0100(处理值距离)与 0x0102(温度)两个数据点(0x0101 实时值不读)。
  • COV 上报:distance 启用 COV,阈值取自 app_110(cov_distance);液位变化 ≥ 阈值即时上报,兼顾电池省电与溢出及时预警。
  • 采集/上传周期分离:采集周期 app_74,上传周期 app_70(COV 上报窗口上限)。
  • 上行帧布局:标准 DTU 6 字节头 + distance(index 6-7,uint16BE)+ temperature(index 8-9,int16BE),dataLen = 10。

7. 物模型

7.1 物模型基本信息

类型显示名id Name
遥测物模型[A17]dyp_a17_22112
参数物模型[A17-PARA]dyp_a17_para_22112

7.2 上行帧结构

frameInfo:port 22,dataLen 10,rssi true,battery 4,tagList [{index:0,tag:0x87},{index:1,tag:0x12}]

index字段类型单位系数
6distanceuint16BEmm1
8temperatureint16BE0.1

8. 第三方平台数据订阅

8.1 MQTT Topic

/v32/{Organization Account}/tkl/up/telemetry/{eui}

8.2 上报示例数据

json
{
    "eui": "0102030405060708",
    "active_time": "2026-06-06T08:35:48.000Z",
    "thingModelId": "115859351784026112",
    "thingModelIdName": "dyp_a17_22112",
    "telemetry_data": {
        "snr": 12.5,
        "rssi": -68,
        "battery": 3.55,
        "distance": 754,
        "temperature": 23.5
    }
}

9. RPC

9.1 RPC 名称

类型显示名id Name
参数设置[A17 SET] 22112dyp_a17_set_22112
参数读取[A17 GET] 22112dyp_a17_get_22112
设备寄存器调整(变体)[A17 ACT] 22112dyp_a17_set_filter_22112
告警阈值配置[A17 SET ALARM] 22112dyp_a17_set_alarm_22112

9.2 参数定义

参数槽位/寄存器名称单位类型默认说明
period_upapp_70上传周期suint32LE3600数据上报云端间隔(COV 上报窗口上限)
period_readapp_74采集周期suint32LE300DTU 轮询传感器间隔
cov_distanceapp_110COV 距离阈值mmint16BE50距离变化 ≥ 该值即时上报
period_heartapp_40心跳周期suint32LE28800电池省电默认 8h(出厂短心跳仅用于调试)
addr_modbusapp_150Modbus 地址uint81DTU 查询目标地址
step_filter0x0211台阶过滤等级uint164透明 FC06 写设备寄存器(井面凝露/波动时调高)
blind_zone0x0210盲区判断值cmuint1625透明 FC06 写设备寄存器

9.3 RPC 说明

  • dyp_a17_set_22112:一次下发上传/采集周期、COV 阈值、Modbus 地址、心跳周期(PTL-D01 port 214)。电池设备心跳保持 ≥1h(默认 8h)省电。
  • dyp_a17_get_22112:读取上述 DTU app 参数当前值。
  • dyp_a17_set_filter_22112(变体):下拉选「台阶过滤等级 / 盲区判断值」,透明通道 FC06 写设备寄存器,echo 校验后回写 shared_attrs。每次仅调整一项,当前值自动回填。
  • dyp_a17_set_alarm_22112:按井体配置告警阈值(写 server_attrs.alarm_config,供告警触发器读取)。

10. 告警

告警触发器 dyp_a17_trigger_22112([A17] Level Alarm Trigger)在每帧遥测后评估,阈值取自 server_attrs.alarm_config(经 dyp_a17_set_alarm_22112 RPC 按井体配置;未配置时使用安全默认)。

告警条件(距离语义)默认阈值级别
高液位 / 溢出distance ≤ high_level_dist(液面逼近探头)300mmhigh
低液位distance ≥ low_level_dist(井近空)8000mmmid
传感器读数故障distance 异常(< 250mm 盲区 / ≥ 10000mm 超量程 / = 0)mid
  • 距离阈值带 50mm 迟滞死区,防止阈值附近震荡误报。
  • 使用前先调用 dyp_a17_set_alarm_22112 配置阈值,并在设备分组中设置通知群。
  • 失联(无数据上报)由平台离线告警机制处理(触发器仅在上行时评估,无法检测「无上行」)。

11. 模板选择

在 ThinkLink 平台中按以下方式查找模板:

  • 模板名称:DYP-A17
  • 业务代码:22112(超声波液位传感器)

12. 补充说明

  • 厂家默认:从机地址 0x01,波特率 9600,盲区 25cm,台阶过滤 4 级,探头激励 10。
  • 修改从机地址:FC06 写 0x0200;修改波特率:FC06 写 0x0201(重启生效)。
  • 污水井湿气重、温差大时探头易凝露积水,影响超声波信号;A17 防积水工艺可缓解,必要时通过 dyp_a17_set_filter_22112 调高台阶过滤等级。