芯步的壁挂式红外雷达存在感应器本身只负责“感知”不负责“控制”,要实现照明联动,关键是打通“传感器上报”与“控制器下发”之间的闭环。以下方案基于其开放的HTTP接口,设计了一套完整的二次开发架构。
1. 项目概述与设计
针对“壁挂式红外雷达存在感应器”与“照明设备电源控制”的联动需求,本文提出一套基于芯步开放接口的二次开发解决方案。
该方案的目标是解决传统红外感应器无法检测静态人体(如办公、如厕时)导致的误灭灯问题,通过毫米波雷达技术结合后端逻辑算法,实现真正的“人来灯亮、人在灯常亮、人走灯灭”。
1.1 核心架构组成
本方案采用 “传感器感知 + 云/本地逻辑引擎 + 控制器执行” 的物联网经典三层架构:
感知层:利用壁挂式红外雷达存在感应器的雷达模组,实时探测区域内人体的微动状态。
处理层:通过芯步开放的HTTP接口,由开发者搭建的Serverless函数或本地服务器接收设备上报的状态数据。
执行层:通过调用控制器接口,根据逻辑结果对智能照明控制器进行开/关操作。
1.2 涉及产品范围
传感器:UNI-CGQ-RT-L-BG2(壁挂红外雷达存在感应器)及相关雷达类传感产品。
控制器:UNI-KZQ-ZM-4(4路照明控制器)或智能墙壁开关系列。
通信协议:HTTP/HTTPS,支持公网与局域网(私有化部署)。
2. 接口对接机制与签名认证
要实现二次开发,首先需要打通与芯步云平台的数据通道。所有设备命令均通过统一的HTTP接口下发。
2.1 双重签名认证机制
为了保障API调用的安全性,开发者在调用接口控制照明设备时,必须严格遵守 md5(md5(AppSecret) + ts) 的签名算法。
签名生成逻辑如下:
AppSecret预处理:将平台分配的AppSecret进行一次MD5加密,得到字符串
S1。时间戳拼接:获取当前的Unix时间戳(秒级)
ts,拼接到S1后面,格式为S1 + ts。最终签名:对拼接后的字符串再次进行MD5加密,得到
sign。
技术要点:由于签名包含动态的时间戳 ts,可以有效防止接口请求被重放攻击。开发者在封装HTTP请求库时,必须确保每次请求都实时计算签名,不能硬编码。
2.2 核心API调用流程
二次开发时,需重点关注以下两个方向的接口处理:
下行控制
URL
https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}Method:POST
Body
{"device":"Device_ID", "order":{"power1":1}}作用:用于后端服务向照明控制器发送“开”或“关”的指令。
上行消息接收(消息推送)
传感器检测到“有人”或“无人”状态变化时,会主动向开发者预设的URL推送数据。
开发者的服务器需要暴露一个公网API endpoint(如
http(s)://yourdomain.com/sensor/callback)来接收这些实时数据。
3. 照明控制核心逻辑实现
本方案的重点在于如何利用雷达传感器的数据来驱动照明控制器的状态变化。关键在于处理雷达的“存在”信号而非仅仅“移动”信号。
3.1 触发逻辑规则
在二次开发的后台服务中,需建立以下状态机:
开灯逻辑
触发条件:接收到传感器上报的“有移动”或“有人存在”信号。
防抖处理:为避免瞬时干扰(如飞虫飞过),设置 500ms 的防抖延迟。
动作:调用控制器接口,发送
{"power1":1}(开启第一路灯具)。
关灯逻辑
触发条件:接收到传感器上报的“无人存在”信号。
延时机制:这是提升体验的关键。红外雷达存在感应器的优势在于能检测微动,因此无需像传统红外那样频繁误判,但仍在逻辑层设置 30秒-5分钟 的可配置“无人延迟时间”(Timeout)。
动作:计时结束后,调用控制器接口,发送
{"power1":0}(关闭灯具)。
3.2 代码实现示例
以下是一个简化的Python后端逻辑示例,用于处理传感器上报并下发照明指令:
4. 高级特性与优化策略
为了让二次开发的系统更加健壮和智能,开发者可以深度挖掘芯步设备的能力。
4.1 环境光联动策略
单纯的雷达存在感应器不具备感光能力,但芯步生态中存在光照传感器。在二次开发逻辑层,可以引入光照数据:
场景:只有在白天光照充足且无人时关灯,在夜晚或暗光环境下有人才开灯。
实现:接收光照度传感器的上报值,若
lux > 300(白天),即使雷达触发“有人”,也 不执行 开灯指令。
4.2 多路独立控制
芯步的照明控制器(如4路控制器)支持多线路独立控制。
进阶开发:你可以实现“定向区域照明”。例如,将房间分为A区和B区。
配置:在数据库中建立映射关系,将“传感器A”的指令映射到“控制器 端口1”,将“传感器B”映射到“控制器 端口2”。
4.3 私有化部署方案
对于网络敏感或要求低延迟的工业/商业场景(如工厂车间、实验室),芯步支持私有化部署(局域网通信)。
二次开发适配:在代码配置层设计一个“网络模式”开关。
实现:当切换为局域网模式时,API请求的Base URL从
https://api.thingboot.com切换为本地服务器的内网IP地址,实现即使外网断开,照明联动依然正常运行。
5. 总结
通过二次开发芯步的壁挂式红外雷达存在感应器与照明控制器,开发者可以实现:
高精度感知:利用雷达技术消除传统红外的人体静止误判痛点。
快速响应:HTTP接口调用稳定,端到端控制延迟可控。
灵活扩展:基于开放API,可轻松集成光照、温湿度等更多传感器逻辑。
开发者遵循“先订阅消息、后下发指令”的开发顺序,利用Postman等工具先调试通签名算法与单个设备的控制,再进行全业务逻辑编写。