芯步的传感器设备本身就支持实时状态上报和HTTP接口下发命令,这为故障告警提供了基础通道。关键在于如何利用“设备离线”和“传感器长时间无变化”这两个信号,配合语音音柱实现分级通知。以下是完整的实现方案:
解决方案:民宿智能人体感应照明故障告警系统
1. 概述
本方案基于芯步的硬件生态,利用其开放的 HTTP API 接口和实时消息推送机制,构建一个具备自诊断能力的照明系统。系统不仅实现“人来灯亮、人走灯灭”的基础功能,更通过云端逻辑判断,对传感器离线、照明设备损坏、感应失效等常见故障进行捕获,并通过智能语音音柱或APP推送进行告警,确保民宿运营者无需到现场即可掌握设备状态。
2. 硬件选型与角色
为实现上述方案,我们需要以下芯步及生态产品:
智能人体存在传感器:用于探测卫生间/卧室是否有人。
智能语音音柱Pro60W:负责播报警告信息。
智能插座/通断器:控制实际灯具(视功率和场景选择)。
3. 技术对接架构
采用云端联动机制,不依赖局域网网关,适合分布分散的民宿场景。
数据源:传感器状态变化(有人/无人)、设备上下线事件。
处理层:用户自建服务器 或 芯步SaaS规则引擎。
执行层:通过HTTP接口向音柱/插座下发指令。
第一部分:基础照明联动逻辑(无故障时)
在实现告警前,需要先打通基础联动。利用芯步的“消息推送”功能:
设备注册:在芯步控制台获取
AppId和设备DeviceId。配置推送:将传感器消息推送到自建服务器
http(s)://your-domain/api/device/callback。联动规则
当服务器收到传感器上报
"infrared_target":1(有人)时,解析数据,调用POST /{AppId}/device/control/命令下发接口,向智能插座发送{"power":1}命令。当收到
"infrared_target":0(无人)且延时确认后,下发{"power":0}。
第二部分:故障告警机制实现(重点)
这是解决方案的核心。我们需要通过软件逻辑识别物理故障。
故障场景 1:设备离线告警(防“罢工”)
场景描述:传感器或插座断电、WiFi信号不稳定导致设备掉线,照明失效。技术实现
监听事件:服务器订阅设备的 “下线消息” 。
芯步协议中,当设备断开连接会推送
"type":"disconnect",且包含reason字段(normal退出或timeout超时)。
逻辑判断
若收到某个房间传感器(ID:820720)的
disconnect消息且reason为timeout。服务器标记该设备状态为
offline。
告警动作
通知运营者:调用芯步 智能语音音柱Pro60W 的HTTP接口。该音柱支持直接下发TTS语音。
指令示例
POST /device/control/,Body:{"device":"820721", "order":{"speak":"警告:202房间人体传感器已离线,请检查供电或网络"}}。辅助通知:同时向运营者手机发送推送通知。
故障场景 2:照明设备/继电器损坏告警(防“灯坏了”)
场景描述:服务器下发了开灯指令,但灯实际没亮(如灯泡烧毁、继电器粘连)。技术实现
物理接线技巧:虽然芯步传感器本身不带“光感”,但可以在灯具回路中串联具备电量统计功能的智能插座,或者利用传感器线路输出的 AC 线 来判断。
逻辑判断(电源检测法)
服务器下发开灯指令(
power:1)。延时 5 秒后,服务器主动查询智能插座的实时功率。如果功率为 0 或小于灯泡额定功率阈值(如小于1W)。
判定:灯泡损坏或线路断路。
告警动作
该信息上报给 PMS(民宿管理后台),生成维修工单。
语音播报:下次保洁或维修人员经过走廊时,触发音柱播报:“工单提示:101房灯泡需更换”。
故障场景 3:传感器“粘滞”/感应失效告警(防“乱判”)
场景描述:传感器被遮挡或故障,导致一直上报“无人”或一直上报“有人”。技术实现
逻辑判断
持续有人:若在凌晨 2:00 - 5:00(非活跃时段),传感器持续上报
"infrared_target":1超过 2 小时。逻辑判定为传感器可能被异物遮挡或故障。持续无人:在每晚 20:00-23:00(入住高峰),连续 1 小时未收到任何人触发的上报,但门磁显示门已关(如有门磁设备)。
告警动作
触发维护告警,系统自动尝试软重启传感器。通过接口下发指令:
{"system":"restart"}。若重启后恢复正常,记录日志;若未恢复,推送人工维修告警。
第三部分:实施流程概览
环境搭建
在芯步控制台创建应用,获取
AppId和AccessKey。设置消息推送URL(自建服务器端点),例如:
/api/yoyo/callback。
硬件安装
将人体传感器吸顶安装于民宿卫生间或走廊,接通零火线供电。
将智能语音音柱放置于保洁间或前台(或运营者家中)。
软件逻辑编写
接收端:编写代码处理
infrared_detect事件和disconnect事件。定时任务:设立一个定时器(如每10分钟),扫描设备列表中的“最后在线时间”。
命令下发:封装 HTTP 请求。注意芯步接口要求携带
sign签名和时间戳ts。
告警配置
设定告警时间段(避免半夜误报影响休息)。
设定告警优先级:离线 > 灯具损坏 > 逻辑异常。
总结
通过这套方案,您不仅通过芯步的标准接口实现了基础的感应照明,还增加了“故障自通知”的增值功能。对于民宿运营者,这解决了“客人报修不及时”和“退房后忘记关灯导致设备长期运行损坏”的痛点,实现了从“被动维修”到“主动运维”的转变。