这是一个比较典型的智能家居联动场景——用门禁触发灯光。芯步的2路智能触摸开关走的是HTTP接口,对接思路其实比Zigbee那种需要网关转发的要直接很多。下面这份方案按“前期准备→接口对接→联动实现→排错”来写,你可以直接拿去参考。
方案名称:利用芯步2路智能触摸开关,打造“照明与门禁”联动解决方案
1. 准备工作
在写代码之前,硬件层面的准备很简单。你需要把家里/项目里的传统开关换下来,换上芯步的2路智能触摸开关 (型号:UNI-KG-CM-2)。
它有几个好处:不需要额外买网关,只要连上家里2.4G WiFi就行,而且支持纯局域网控制,即使外网断了,你内网发指令也能控制,这样门禁联动就比较稳定。
另外,去芯步官网的开发者后台,注册一个账号,把你的设备添加进去,拿到两个关键字符串:
AppID:识别你是哪个开发者。
AppSecret:用来加密签名,防止别人随便控制你家开关的钥匙。
Device ID:就是你那个开关的唯一编号。
2. 核心思路:“开门即亮灯”的逻辑
我们要实现的效果是:有人刷门禁(或人脸识别成功)→ 系统自动判断时间(比如晚上)→ 触发客厅灯带亮起。
这里的关键在于你的门禁系统需要一个“大脑”(比如一台服务器,或者树莓派,甚至是一台不关机的电脑),负责接收门禁的信号,并向开关发出HTTP指令。
3. 动手对接:如何用代码“按下”开关
芯步的接口设计得比较友好,就是用HTTP POST发个请求就行。下面直接给干货——核心对接代码逻辑。
请求地址(Endpoint):https://api.thingboot.com/{你的AppID}/device/control/?sign={签名}&ts={时间戳}
重点:签名算法为了防止别人盗用,每次发指令都要算一个签名,规则是:MD5(MD5(AppSecret) + 当前时间戳)。简单说,就是把你的密钥先MD5加密一次,然后拼上当前的时间(比如 1718000000),两个字符串放一起,再算一次MD5。
下发的Json结构:这是控制开关动作的核心。你的2路开关,JSON里就用 power1 和 power2 区分。
开第1路(比如客厅灯):
{ “power1”: 1 }关第1路:
{ “power1”: 0 }开第2路(比如门廊灯):
{ “power2”: 1 }
实际代码示例(Python版,比较通俗):假设你刚开完会,走到门口,门禁系统触发了这个脚本。
4. 实战场景:精细化联动
光有个简单开关还不够,芯步的接口还支持几种“智能”模式,很适合配合门禁实现防打扰或回家模式。
需求:通过门禁打开玄关灯,过2分钟后自动关闭(避免忘关灯费电)。方案:利用“先通后断”功能。这个时候 order 参数不要用简单的 {“power1”:1},而要换成:{“point1”: “3000”} (意思是:通路,3000毫秒(即3秒)后自动断开)。但这通常用于楼道灯,如果你要亮2分钟,就是 {“point1”: “120000”}。
需求:利用门磁,实现“关门自动关灯”。你可以写一个简单的While循环,当门磁传感器闭合(关门),就向开关发送{“power1”: 0}指令