芯步的壁挂式红外雷达“双模”传感器通过HTTP接口开放数据上报和控制能力,对接的核心在于处理“有人/无人”状态的上行推送,并可按需下发雷达启停等指令。以下是具体的对接方案:
一、 产品理解与核心原理
在开始对接前,首先需要明确该硬件的特性。芯步的这款壁挂式红外雷达“双模”传感器(通常指型号 UNI-CGQ-RT-BG-HL 或类似智能人体存在传感器)融合了两种探测技术:
雷达模块:探测微动(如呼吸、心跳引起的胸腔起伏),实现真正的“存在”感应,而非仅“移动”感应,探测距离通常为4米内存在探测,6米内运动探测。
红外模块:探测人体移动产生的温差变化,作为辅助验证。
数据流向
上行(设备 -> 服务器):当有人进入或离开探测区域,或无人状态持续一段时间后,设备会主动向你的服务器上报状态。
下行(服务器 -> 设备):你的服务器可以通过HTTP接口下发指令,例如调整灵敏度、关闭雷达模块、重启设备等。
二、 对接准备与基础配置
在编写代码之前,你需要在芯步平台完成以下准备工作:
注册企业账户:访问芯步开放平台,注册企业开发者账号。
获取凭证:在控制台创建应用,获取唯一的 AppID 和 AppKey(或签名密钥)。这是后续所有API调用的身份凭证。
添加设备:通过“设备管理”界面,输入设备背后的MAC地址或二维码,将传感器绑定到你的应用下,记录下 DeviceID。
配置回调URL
这是对接最关键的一步。在平台配置“消息推送”地址(例如
http(s)://你的服务器IP:端口/api/sensor/callback)。作用:设置后,传感器一旦检测到状态变化(无人变有人/有人变无人),会立即将数据POST到你指定的这个地址上。
三、 接口对接详细流程
本方案主要分为两个核心逻辑:接收数据与下发指令。
1. 接收人体存在数据(核心功能)
传感器平时处于自动运行状态,作为服务器端,你主要是被动接收它上报的数据。你需要搭建一个Web服务器来接收这些回调。
接收示例(以Python Flask为例,实际开发适用于任何语言)
请求方式:POST
数据格式:JSON
来源IP:芯步服务器IP(在生产环境中做白名单验证,防止恶意攻击)
核心参数解析:芯步推送的数据一般包含物模型中的属性字段,针对“双模”传感器,重点关注以下字段
| 字段名 | 类型 | 值示例 | 说明 |
|---|---|---|---|
radar_target | Int | 0 / 1 | 雷达探测结果:1=有人,0=无人 |
infrared_target | Int | 0 / 1 | 红外探测结果:1=有人,0=无人 |
device_id | String | "820720" | 上报数据的设备唯一ID |
timestamp | Int | 1704067200 | 事件发生时间戳 |
battery | Int | 85 | 电量百分比(如果是电池版) |
融合逻辑由于红外感应灵敏但易受温度干扰,雷达感应精准但算法复杂。在后端做如下逻辑判定:
判定有人
radar_target == 1或者infrared_target == 1(只要有任一传感器触发,即可判定有人,减少漏报)。判定无人
radar_target == 0且infrared_target == 0(需两者都判定无人,才执行无人策略,减少误报)。
代码示例(接收并校验)
2. 下发控制指令(进阶功能)
如果你需要远程校准传感器、关闭探测以省电,或者获取即时状态,需要调用芯步的下行接口。
请求地址
http(s)://api.thingboot.com/{AppId}/device/control/鉴权方式:URL携带签名
sign和时间戳ts。
关键命令(雷达模块控制)
参考物模型定义,针对雷达和红外模块的控制指令如下
| 命令字段 (order key) | 值 (Value) | 功能描述 |
|---|---|---|
radar_enable | 1 / 0 | 雷达模块开关:开启/关闭雷达探测功能 |
infrared_enable | 1 / 0 | 红外模块开关 |
power | 1 / 0 | 控制设备内部线路通断,可用于联动外部负载 |
调用示例(通过URL发起HTTP请求)
假设你需要强制重启某台设备(DeviceID: 123456):
四、 高级应用场景与策略配置
为了让“存在感应”更符合实际业务场景,你可以在服务器端实现以下逻辑,或者通过API调整设备的配置项:
1. “无人”延迟判定策略
红外传感器在人停止不动时容易误判为无人,但雷达可以感知微动。虽然硬件本身有配置项(infrared_change_0),但为了灵活对接你的业务(如灯光控制),在服务器端做延迟处理:
场景:会议室预订系统。
逻辑:当连续收到
radar_target=0的消息超过 5分钟 后,才向业务系统发送“会议室释放”信号。这样可以避免用户拿手机时短暂静止导致灯光熄灭和会议室被释放。
2. “双模”逻辑降噪
在智能办公场景中,中央空调或排风系统可能引起轻微震动。
逻辑:只有当
radar_target=0且infrared_target=0同时成立超过30秒,才判定为“无人”。因为雷达可能因震动误判,红外对静态物体无反应,两者结合可过滤震动干扰。
3. 设备配置修改
有些逻辑(如LED指示灯闪烁方式)可以在设备端修改,无需服务器反复计算。例如修改LED灯与探测状态的同步关系
五、 常见问题与排障
数据收不到怎么办?
检查你的回调URL是否公网可访问(如果是本地测试,需使用内网穿透工具如Ngrok)。
确认服务器防火墙是否开放了对应端口。
在芯步后台查看“设备日志”,确认设备是否在线并确实上报了数据。
签名验证失败
芯步的签名机制通常是
MD5(AppID + AppKey + Timestamp)或类似规则。请严格按照官方文档的顺序拼接字符串。时间戳ts与服务器时间误差不宜过大(通常小于5分钟)。
设备离线(Offline)
该设备仅支持 WiFi 2.4G 频段,不支持5G WiFi。请检查路由器和网络环境。
设备支持配置备用网络,将周围信号较好的2.4G WiFi密码都预存进设备。
红外与雷达数据不一致
属于正常现象。雷达探测范围(约120度锥形)通常比红外更广且穿透性略强(可穿透薄木板或玻璃),红外对热源更为敏感。后端逻辑应以雷达优先,因为雷达能感知“静止存在”。
六、 总结
通过以上方案,你可以快速地将芯步壁挂式红外雷达“双模”传感器集成至你的系统中。
集成模式:被动接收(推送)为主,主动查询(指令)为辅。
核心价值:利用雷达的“微动感知”能力,实现真正的人体存在监测,解决传统红外传感器在人员静坐、办公时误报“无人”的痛点。
数据流向:传感器 -> WiFi -> 芯步云 -> 你的业务服务器(回调地址) -> 业务逻辑执行。