这是一个很有意思的命题。在无人值守门店(比如共享自习室、24h健身房、自助茶室)里,既要保留传统的物理开关(让用户习惯用手按),又要让软件能远程控制(店家看状态、做联动), 这确实是很多项目落地时的痛点。
说白了,这就是“双控”逻辑的数字化升级。
芯步的生态优势在于,它的硬件通常支持“断网可控”和“状态实时同步”。以下是一套基于芯步硬件特性的对接方案,比较直白,供你参考。
核心思路:硬件选型是关键
要实现“物理按键按得爽,软件后台看得见”,你不能用那种直接把220V电线接在开关背后的传统墙壁开关(那玩意儿一断电,软件就抓瞎了)。
你需要采用 “智能墙壁开关” 。这种开关后面一般有 3 类接线柱:
火线进/出:给灯供电。
零线:给开关里的芯片供电(保持在线)。
干接点/IO口:这是用来接普通机械开关的。
第一步:硬件怎么接?(3路物理按键对接)
假设你的门店有 3 路灯:玄关灯、货架灯、收银区灯。你想在墙上原来的位置,放一个3位按键面板去控制它们。
物理连线逻辑:
把芯步的智能硬件模块藏在墙壁开关底盒里,或者配电箱里。
硬件侧:找到板子上的 3 个 “Switch Input” 端口(通常是GPIO或干接点接口),以及一个 “GND” 端口 。
开关侧:你需要买那种“自复位式”的机械开关(按下弹起,像门铃那种),或者是普通的双控开关。
接线
把墙壁开关的 L 接线柱接到智能硬件的 GND。
把墙壁开关的 L1 接线柱接到智能硬件的 Switch Input 1。
把墙壁开关的 L2 接线柱接到智能硬件的 Switch Input 2。
把墙壁开关的 L3 接线柱接到智能硬件的 Switch Input 3。
原理科普当你按下墙壁开关时,L和L1瞬间导通,GND和Input 1短路了一下。硬件的芯片捕捉到这个“短路信号”,就知道“哦,有人按开关了!”于是,它会翻转继电器状态——这就是物理控制的来源。
第二步:软件怎么接?(云端/本地API对接)
芯步的开放接口很简单,其实就是 HTTP。你需要做的就是用代码调用这个接口。
第一种场景:软件要控制灯(App远程关灯)假设你的管理后台检测到门店已无人,需要远程把“货架灯”关掉。
接口地址
http(s)://api.thingboot.com/{你的AppID}/device/control/请求方式:POST (推荐用JSON格式)
发给后端的代码逻辑
注:具体的属性名比如 channel_1, channel_2 要看你的物模型定义。
第二种场景:物理按键触发时,软件要感知(做联动)这个是“无人值守”的重点。比如用户按了“玄关灯”开关,你不仅灯要亮,软件里状态要刷新,甚至可能要触发摄像头预置位。
芯步是走 MQTT推送 机制的。
用户物理按键:用户按下墙壁开关 -> 硬件GPIO检测到 -> 继电器吸合/断开 -> 灯亮了。
设备上报:硬件这时候会发一条消息到云端:“我的 channel_1 状态现在是 on”。
你的后端接收:你的服务器订阅了芯步的 Topic。
代码处理当服务器收到
{“channel_1”: “on”}时:更新MySQL数据库:
update device set status=1 where id=xxx。触发业务逻辑:如果这是这个时段第一次开灯,可能给管理员发条消息“玄关灯已亮,用户进入”。
第三步:无人值守的“防呆”与体验优化
结合你的主题“无人值守”,光能控制还不够,你得解决三个实际问题:
1. 防误判逻辑(去抖动)物理按键在按下瞬间,会有微小的电流波动(物理抖动)。如果直接用代码读,可能按一下,软件收到“开-关-开”三次指令。解决方案:在芯步的固件配置里,或者在你的边缘计算脚本中,加上“防抖过滤”(比如连续50毫秒内的多次触发算一次),或者在云端逻辑里做限流。
2. 双控逻辑(门口和床头都要能控制)如果你是自习室或民宿,经常需要进门一个开关,床头一个开关。解决方案:利用上面的接线方法。你可以把两个物理开关的 L 线并在一起接到 GND,把两个开关的 L1 并在一起接到 Input 1。这样无论你按哪个开关,都会给 Input 1 一个信号。注意:这就成了“多控”,对软件来说,它不关心你按的是哪个物理按钮,它只关心“Input 1有变化,请翻转状态”。
3. 停电后来电的默认状态无人值守门店最怕跳闸。解决方案:在芯步的后台配置设备属性。把 “上电状态” 设置为 “恢复断电前状态” 或者 “全关” 。千万别设成“全开”,否则半夜跳闸再来电,店里灯火通明,既费电又有安全隐患 。
总结一下对接步骤
如果你现在就要动手,按这个顺序来:
买硬件:选芯步生态里明确写着支持“物理按键接入”的 多路智能开关模块(或者叫继电器模块)。
配置物模型:在芯步开放平台,给设备定义三个属性,比如
switch_1,switch_2,switch_3。本地测试:把墙壁开关接上(GND+IO),通电。手按开关,看平台上的设备日志里有没有
“value”: “on”的数据上报。写代码
后端:调用API
device/control去下指令。前端:写个简单的管理页面,放三个大按钮,点一下变蓝,点一下变灰。
联调:在手机上点“关”,看灯灭不灭;在墙上按开关,看手机上的按钮状态跳不跳变。
搞定这一步,你的无人值守门店照明控制就完全打通了。其实说白了,就是把物理开关变成智能硬件的触发传感器,把软件指令变成智能硬件的遥控器。芯步的接口把这两件事包装得很简单,你不需要懂硬件电路,只要会看JSON格式数据就行 。