芯步的传感器开放接口走的是标准HTTP协议,对接起来还是比较顺手的。下面我以实际开发的角度,讲讲怎么把5米人体存在探测器集成到你的系统里。
解决方案:基于芯步开放接口对接5米人体存在探测器
一、 我们面对的是什么设备?(先读懂硬件)
在开始写代码之前,咱们得先把手里的硬件搞清楚。芯步的“5米人体存在探测器”其实不止一款,主要是为了适应不同场景:
红外版(吸顶):利用红外热释电原理。优点:便宜;缺点:只能检测移动的人,如果人坐着不动(比如办公、睡觉),它会以为没人了 。
雷达版/双模版(壁挂/吸顶):这是核心推荐的方案。它使用24GHz毫米波雷达。优点能检测静态存在。哪怕人坐着不动,只要心跳、呼吸引起的胸腔起伏(微动)还在,它就知道有人。这才是真正的“存在”感应,不是“移动”感应 。
对于办公室、卫生间、会议室这种需要精准判断“有人/无人”的场景,首选雷达或双模版,否则员工蹲坑或者午休,灯突然灭了体验会很差。
这款设备最实用的一个点是:它自带一路继电器输出。简单说,你可以直接把灯或者插座接在传感器背面,不用通过云端,本地物理断电/通电,即使断网也能联动开关 。
二、 对接核心流程(从配网到数据入库)
芯步的优势在于接口是标准的HTTP协议,不挑语言,你用Python、Java、Node.js甚至是PHP都能搞 。
第1步:让设备上网
拿到设备后,需要通过芯步的App或工作台给它配网。
注意:设备只支持 2.4GHz WiFi,配网的时候记得把手机5G热点关掉 。
目标:获取到设备的 Device ID(设备ID)和 AppKey/Secret(用于API鉴权)。
第2步:搞定消息接收架构(两种姿势)
对接传感器主要是为了“收数据”。这里有两种玩法:
方案A:设备直推(推荐,最简单)在芯步控制台配置 HTTP 推送。填入你的服务器公网地址(例如 https://yourdomain.com/api/sensor/callback)。
效果:只要有人状态变化(从无人变有人,或有人变无人),设备会立刻往这个地址 POST 一份JSON数据。
优点:实时性好,省去了你轮询的麻烦。
方案B:主动拉取(不推荐)如果你的服务器没有公网IP,或者处于内网,也可以主动调用 查询设备状态 API 去轮询。但这会有延迟,且浪费流量,仅在局域网用。
第3步:解析“物模型”数据
当消息推送到你的服务器时,你会收到一段JSON。根据芯步的定义,核心字段如下
你需要关注的关键字段:
雷达状态 (
radar_target):这是最准的。1代表有人(包含静态),0代表无人。红外状态 (
infrared_target)1代表有人移动,0代表无人移动或静止。继电器状态 (
power)1代表通电(灯亮),0代表断电(灯灭)。
小窍门:如果是双模设备,你的业务逻辑取 雷达状态 为准。如果只有红外,那么你需要设置一个“延时”:检测到无人后,等 5-10 分钟再确认无人,防止人在静止时误判。
三、 实战场景:办公室智能节能联动
假设你的需求是:“办公室有人就开灯、开空调;人走光了,自动关空调和照明。”
逻辑代码如下(伪代码思路):
四、 踩坑与高级技巧(口语化干货)
在实际接的过程中,有几个点值得留意:
关于“5米”的有效距离产品写5米,实际安装时覆盖半径在3-4米效果最好。特别是有隔断或者玻璃门的办公室,毫米波雷达虽然能穿透玻璃(比红外强),但金属物体会遮挡信号 。
静态探测的配置(重要!)如果是雷达版,刚安装好默认参数可能需要调。如果发现人坐着不动灯灭了,大概率是灵敏度或者延时阈值设置得太严格。可以去芯步控制台调整配置项,把
无人触发持续时间调长一点 。本地联动(断网也能用)芯步的设备其实支持本地场景联动。你可以在控制台设置规则:“如果探测器无人状态持续5分钟,且当前是晚上,执行关闭插座”。这个规则是存储在设备或者网关里的,断网也能执行,可靠性比纯云端高得多。
接口鉴权的小坑调用芯步的 Open API 下发指令时,签名算法是
md5(md5(AppSecret)+ts)。写代码时记得ts是时间戳,前后时间误差不能太大,否则服务器会认为签名过期,报 401 错误 。
总结
芯步的5米人体存在探测器对接难度较低,本质就是配网 + HTTP接收推送 + 解析JSON。
最关键的一点是:根据场景选对型号——要静态检测必须用雷达版;对接时牢记雷达优先于红外的判断逻辑;同时善用设备自带的继电器输出实现本地硬件级联动。