一、先说痛点:仓库为什么需要“人体感应”?
咱们仓库这种场景,其实挺尴尬的。你说完全没人吧,时不时有工人进出搬货、盘点;你说一直亮着灯吧,电费哗哗的;你说装个普通红外感应吧,人蹲在那找东西不动弹了,灯灭了,黑灯瞎火骂娘。
这就是我们要用微波雷达的原因——它和普通红外不一样。红外只能感应“动的”人,你站着不动它就以为你走了;微波雷达能检测到呼吸引起的胸腔起伏,人即使坐着不动、蹲着找货,它也知道你还在。
芯步这款壁挂式微波雷达探测器,说白了就是把这种能力打包成了一个现成的硬件产品,还给咱留好了HTTP接口,你后端调一下就能知道“有人/无人”,然后去控制灯、空调、报警器什么的。
二、整体思路:这玩意儿到底怎么接?
别想复杂了。本质上就三步:
你的服务器 问一下芯步的云平台:“这个雷达现在的状态是啥?”或者“有人没?”
芯步平台返回:“有人” 或 “无人”
你的代码根据这个结果,去控制灯或者做别的业务逻辑
因为芯步的设备是已经联网的(出厂就带WiFi或者网口),你不需要搞什么嵌入式开发、写固件、焊电路板。纯前后台对接的活儿。
下面我把具体怎么调接口、怎么签名、代码怎么写,一步一步说清楚。
三、对接之前,你需要准备三样东西
在动手敲代码之前,先去芯步的控制台拿三样东西,找不到就联系他们客服或者看产品手册:
AppID:你在芯步平台上的“应用ID”,标识你是哪个开发者
AppSecret:你的“应用密钥”,用来加密签名,别泄露
设备ID:就是那个壁挂雷达的序列号,贴在设备上或者控制台能看到
这三样拿齐了,后面就是发HTTP请求的事了。
四、接口怎么调?签名怎么算?(这地方稍微绕一点)
芯步的接口为了安全,所有请求都要带一个 sign(签名) 和一个 ts(时间戳)。
请求地址格式是这样:
签名算法(官方标准流程):
官方给的标准算法是两步MD5
先把
AppSecret做一次MD5,得到secret_md5再把
secret_md5拼接上ts(时间戳,秒为单位),然后整体再做一次MD5
公式写成文字就是:
sign = md5( md5(AppSecret) + ts )
举例(伪代码):
注意:ts 是当前时刻的 Unix 时间戳(秒),每次请求都要重新生成。服务器会校验时间戳是否在有效期内(一般是几分钟内),防止别人重放攻击。
请求体(POST JSON):
芯步雷达相关的核心命令就是 radar_enable,你把它设成 1 就启用感应了,设成 0 就关了。这是最常用的一条。
五、完整示例:用 Python 和 curl 跑通一次
场景描述:
你要查一下这个雷达当前是不是有人在,对吧?但实际上,雷达的状态是主动上报到你服务器的,不用每次都去“查询”。但第一次调试,我们可以先下发一个开启雷达的命令,看它有没有反应。
1. Python 示例(完整版)
如果返回 {"code": 200},说明命令已经下发成功,设备那边收到了。这时候你走到雷达前面晃一晃,理论上它已经开始干活了。
2. curl 命令(直接粘到终端跑)
六、重点来了:怎么知道“有人”还是“没人”?
上面我们做的是“下发命令”,但你真正需要的是“接收状态”——也就是雷达自己上报“有人”或者“无人”。
芯步的设计是:状态变化时主动推送到你的服务器,而不是让你一直轮询。
你需要做的是:
6.1 在芯步控制台配置回调地址
找到你的工作台 → 开发设置 → 设置 消息推送 URL(就是你们后端的一个接口,比如 https://你的域名/api/yoyo/callback)。
6.2 写一个接收回调的接口(以Python Flask为例)
这样,当仓库里有人进去、或者最后一个人离开超过一定时间,雷达就会自动推一个状态给你,你收到后再去控制灯或者其他设备。
注意:不同型号雷达上报的字段名可能略有差异。有的是
radar_status,有的是presence,具体以你手里那个型号的产品手册为准。可以先print(data)看一下原始数据长啥样。
七、安装位置的小(别乱贴)
你买的是壁挂式,和吸顶式不一样,安装的时候注意这几点:
高度:推荐离地 2.5米 左右,太高探测距离不准,太低角度太小
别对着空调/风扇/大窗帘:微波能穿透塑料和木板,但空调叶片转、窗帘飘,都会被当成“人动”
两个雷达别对射:如果同一个区域装多个雷达,距离保持 1.5米 以上,别让它们互相照,会干扰
背后是墙最好:微波有一定穿透性,雷达背面如果有走廊或者有人走来走去,可能误报。用金属背板或者贴墙装可以减弱背面影响
对于仓库场景,尽量装在出入口或者主通道的侧面墙壁,斜着照向货架区域。别直直对着货架,货架上的金属板会反射微波,造成误报。
八、常见翻车问题(提前帮你排坑)
| 问题现象 | 最大可能原因 | 怎么解决 |
|---|---|---|
| 返回501或502 | 设备ID写错了,或者设备没在平台上 | 去控制台确认设备ID,确保设备是在线状态 |
| 签名错误(返回签名相关错误码) | 时间戳不对,或者MD5拼接顺序错了 | 检查服务器时间是否同步(NTP),复查拼接逻辑 |
| 命令下发成功但设备没反应 | 设备离线了,或者命令参数错了 | 先去控制台手动下发测试一下,排除接口问题 |
| 收不到状态推送 | 回调地址没配置,或者你的接口挂了 | 检查控制台推送配置,用Postman模拟下看你的接口通不通 |
| 人蹲着不动就误报无人 | 默认灵敏度不够,或者安装高度/角度不合适 | 调整安装位置,或者联系芯步看雷达有没有灵敏度参数可调 |
九、总结(省流版)
用芯步的壁挂微波雷达对接到你的仓库项目里,其实就三件事:
拿到三个东西:AppID、AppSecret、设备ID
按规则算签名,调用接口下发
radar_enable命令配置回调地址,接收“有人/无人”的推送,然后去控制你的灯或者别的设备
整个过程你不需要懂硬件,不需要写嵌入式代码,纯后端对接HTTP接口就行。芯步的接口是公网的,也支持私有化部署,你要是内网用也可以让他们帮你部署私有化版本。
如果你在对接过程中遇到具体的报错或者设备型号不确定,可以直接联系芯步的技术支持,他们官方说的是“全程免费技术指导”。另外,不同批次或型号的雷达在order字段上可能有细微差异,先用手册上的示例在控制台里手动发一条命令试试水,再用代码调。