芯步的12路照明控制器开放了HTTP接口,可以让你用任何编程语言来控制每路灯光。下面我会结合几个常见的联动场景,从接口格式到代码示例一步步说明。
方案目标:把这12盏灯“变成”你系统里的12个可控单元
通过对接芯步开放的HTTP API接口,实现对12路照明的独立控制、批量控制以及场景联动。不管你是想开发一个智能中控大屏,还是想集成到现有的楼宇自控系统,甚至是用脚本做一些自动化触发,这套方案都能搞定。
核心武器:芯步12路智能照明控制器
这个设备[UNI-KZQ-ZM-12-16A]其实就是一个“高级插座”,它接了12根线,接上WiFi(只支持2.4G),暴露了一个HTTP接口给你调用。
硬核参数先看一眼:
路数:12路(意味着你可以独立控制12组不同的灯带、射灯或灯泡)
负载:单路最大16A(阻性负载下大概能带3500瓦,带一排筒灯绰绰有余)
通信:WiFi直连,不需要网关。
它的灵魂——开放接口:这玩意儿最爽的一点就是接口极其简单,就是发起HTTP请求。任何能发HTTP请求的语言(Python, Java, Go, Node.js甚至Shell脚本)都能轻松拿捏它。支持局域网控制,也支持云端控制,主打一个“快”,命令响应通常在100毫秒左右。
对接准备:先握手,再开车
在写代码之前,你需要拿到两把“钥匙”:
拿AppID和AppSecret:登录芯步控制台,在“开发设置”里找到开发者ID(AppID)和密码(AppSecret)。这就相当于你的账号密码,调用接口时要用。
记下设备ID:在你的控制台设备列表里,找到那台“12路控制器”,复制它的唯一标识ID(device)。
看一眼签名(Sign):调用接口时,为了安全,一般需要把
AppSecret和时间戳ts混在一起算一个签名sign。但如果只是为了赶紧跑通,或者在内网环境,你可以在控制台打开“调试模式”(这样它就不校验签名了,先跑起来再说)。
搞起:四种最常用的自定义联动玩法
假设现在你有12盏灯分别接在1-12号口上。我们来看怎么玩。
1. 基础操作:单独开关
需求:用户点了一下“第三排灯”,让它打开。
这时候你只需要向设备POST一段JSON数据就行了。
这是最常用的,指哪打哪。
2. 场景联动:“影院模式”
需求:用户按下一个叫“观影”的按钮,要求关掉第1-10路筒灯,只保留第11路氛围灯带和第12路投影幕布灯。
你需要发送一个批量控制命令:
如果想把11和12打开,就再发一条{“power11”: “1”, “power12”: “1”},或者支持多条指令一起发。
3. 动态效果:流水灯或跑马灯
需求:开业庆典,想让12盏灯像流水一样依次亮起来。
这里要用到 “先通后断” 或者顺序控制的功能。虽然一般接口支持单路的延时,但为了代码优雅,你可以用循环发命令 + sleep(睡眠)来实现。但设备自身支持 point 命令,可以对一组继电器做间隔动作。参考8路的逻辑,12路类似
注:具体12路是否支持批量interval,以最新的产品手册为准,如果不支持,你的后端代码写个for循环也行。
4. 传感器联动:人来灯亮
需求:接入了一个人体传感器,检测到有人走过,瞬间点亮第6路和第7路走廊灯。这通常需要你在自己的云服务器或本地服务器(例如Node-RED)上写一段逻辑:
传感器触发 -> 发送Webhook到你的服务器。
服务器收到信号 -> 组装HTTP请求
{“power6”: “1”, “power7”: “1”}-> 发给控制器。
由于控制器响应极快(80-120ms),这几乎是没有延迟的,人一走过,灯就亮了,体验很好。
咱能实现哪些“自定义”骚操作?
有了这套HTTP接口,这12路灯光就不仅仅是开关了,它们成了你系统里的变量。
1. 音乐律动灯光你的程序可以实时分析音频的频谱,然后根据节奏,利用point命令快速开关不同的路数。比如低频(鼓点)对应第1路爆闪,高频对应第12路。
2. 智能化时间轴在搞活动或者做展厅方案时,你可以在后台拖拽时间轴。
00:00 - 00:05:灯光全开(发送
batch全开)。00:05 - 00:10:第一路呼吸闪烁。
这比那些只有定时的插座要灵活一万倍。
3. 物理开关+App双控设备本身支持接入物理的回弹式开关(轻触开关)。你可以接线到控制器的输入端,这样按墙上的开关,也能触发状态变化,同时你的App必须去查询或同步这个状态,实现双控。
两句大实话
网络是关键:这玩意儿用的是WiFi,如果WiFi信号不好,神仙也救不了。在工控箱里把WiFi信号搞好点。
关于局域网:芯步支持私有化和局域网通信。如果你的业务逻辑跑在跟控制器同一个网段的服务器上,可以直接调用内网IP,这样断了外网也不怕,稳如老狗。
总结一下
对接这套12路控制器,其实就是调接口。你不需要关心硬件底层怎么驱动的,只需要把精力放在“你的业务逻辑”上。
想关哪路?
{“powerX”: “0”}想全开?
{“batch”: {“power”: 1}}想做流水灯? 写个
for循环或者用point。
只要你的系统能发HTTP请求,比如前端Vue/React用axios,后端Java用OkHttp,Python用requests,甚至用iPhone的快捷指令,都能轻松把这12路灯光纳入你的“自定义联动王国”里。