一、这个设备能做什么?先聊聊场景
智能通断器AC4-30A,名字听着挺硬核,其实理解起来很简单——它就是一个可以用网络控制的“开关”。额定功率6600W,意味着市面上绝大多数电器它都能hold住,空调、热水器、照明回路都不在话下。
典型的场景联动长什么样? 举个例子:你装了一个温湿度传感器,当检测到室温超过28℃时,自动打开空调电源;或者接个门窗传感器,离家模式下一键切断所有待机电器电源。这些“传感器触发→通断器响应”的链条,就是场景联动。
芯步这玩意的良心之处在于:开放接口做得比较彻底,支持HTTP API、MQTT,还支持局域网私有化部署。不强制走云端,这对追求响应速度和数据隐私的场景来说很实用。
二、接入前的准备工作(十分钟的事)
2.1 硬件层面
设备到手后,先别急着上电接线。强烈:先用小程序或控制台把配网搞定,确认设备在线了,再装到现场。带电作业不安全,而且装好了发现连不上网,拆下来返工更麻烦。
配网步骤官方文档写得很细,我精简一下:
手机微信搜“芯步小程序”,登录账号(没有就去官网注册)
添加现场WiFi——注意必须是2.4G频段,5G不行
手机开热点,热点名称密码设成跟刚才添加的WiFi一样,设备会自动连上
设备指示灯从闪烁变常亮,就是成功了
2.2 开发层面
在芯步官网控制台,你需要拿到三样东西:
| 凭证 | 在哪找 | 干啥用的 |
|---|---|---|
| AppID | 控制台 → 开发设置 | 标识你的应用 |
| AppSecret | 同上(自己保管好) | 用来算签名,防别人乱调接口 |
| Device ID | 设备列表里能看到 | 告诉系统你要控制哪台设备 |
这三样是后续所有API调用的“身份证”,Device ID在设备外壳上也有贴,但以控制台显示的为准。
三、核心接口:怎么发命令?(给代码)
3.1 签名算法(这一步容易踩坑)
芯步的接口鉴权方式是:sign = md5(md5(AppSecret) + ts)
翻译成人话:
先把你的AppSecret做一次MD5加密
把上一步的结果拼上当前的时间戳(单位是秒)
把拼接后的字符串再做一次MD5
为什么要搞这么麻烦? 防止请求被中间人篡改。时间戳参与签名,还能防重放攻击。写代码时注意:客户端和服务器的时间要同步,时间差太大会验签失败。
3.2 最简单的控制命令
接口地址:
请求体(JSON格式):
power:1是开,power:0是关。
场景联动怎么玩? 比如你家里有个门窗传感器(也是芯步的设备),门一开就自动开灯——伪代码逻辑:
3.3 定时通断:一条命令搞定
普通定时任务需要你在服务器上写cron或起定时器,但AC4-30A有个贴心设计——设备自己就能做定时。
命令示例:
意思是:先接通电源,3600000毫秒(也就是1小时)后自动断开。
这个功能对场景联动特别有用。 比如说,人在传感器触发后打开排气扇,同时下发一条point:1800000(先通后断,30分钟关),这样就不用再写一个定时关的触发条件了。
四、高级玩法:分组控制 + 局域网私有化
4.1 批量控制:一个请求管一群设备
如果你有多个通断器,比如控制客厅、卧室、厨房的灯,一个个发请求太傻了。用分组控制接口
一条命令关掉一组设备,配合“离家模式”一键全关,体验很丝滑。
4.2 局域网模式:断网也能用
公有云接口虽然方便,但有三个硬伤:延迟(跨地域可能上百毫秒)、依赖外网、有隐私顾虑。
AC4-30A支持私有化部署,你可以自建MQTT服务器或HTTP服务端,设备完全跑在局域网里。怎么做?
官方没有明说具体配置界面在哪,但从架构上看,设备配网时连的WiFi如果是内网环境,它会尝试在内网发现平台。你需要:
在内网部署一套芯步的私有化服务端(联系官方获取)
设备配网时指向内网平台的IP
之后所有API请求都走内网地址
什么场景需要这个? 工厂车间、实验室、别墅——这些地方要么对延迟敏感,要么不允许数据出内网。
五、踩坑指南(都是我或别人踩过的)
5.1 设备离线了怎么办?
调用接口返回code:200不代表设备真的执行了,只代表平台收到了你的指令并成功下发了。如果设备WiFi断了,它在线的时候会补收离线期间的指令吗?——取决于具体配置,保险起见,关键场景用异步消息推送来确认执行结果。
5.2 签名错误排障三板斧
接口返回签名错误,99%是以下几种情况:
AppSecret复制时多了空格(别笑,真遇到过)
时间戳单位用了毫秒而不是秒
客户端系统时间不准
调试的时候可以把中间步骤的md5值打印出来,跟服务端日志对一下。
5.3 功率别超载
6600W是额定值,但长期满负载跑不推荐。接空调、热水器没问题,但别把整个配电箱的回路都串到一个通断器上。接线时请一定要断开断路器电源,这不是闹着玩的。
5.4 设备ID传多个时的坑
官方文档说device参数可以传"123,456"这样多个ID,但这些设备必须有相同的指令。如果你想同时关一个通断器和一个门禁,门禁不认识power这个指令,就会失败。
六、一个完整的场景联动示例
假设你要实现:每天18:00-22:00,如果有人体传感器检测到有人经过,客厅灯亮5分钟后自动关。
步骤拆解:
人体传感器触发 → 你的后端收到传感器上报的事件
判断时间段 → 检查当前时间是否在18-22点之间
发开灯指令 → 调用
/device/control/,{"power": 1}同时下发定时关 → 第二个请求,
{"reset": 300000}(5分钟)(可选)日志记录 → 把这次联动打点存下来,方便以后排查
这里有个细节:第4步的reset命令如果单独用,会先通电再等5分钟断电。如果你灯本来就是开的,reset会先断一下再通,反而不好。更优雅的做法是用{"point": 300000}(先通后断),如果灯已经是开的,不会产生闪烁。
七、总结
芯步这套开放接口的核心逻辑很清晰:HTTP RESTful + 设备ID + 命令JSON。学习成本不高,会发POST请求就能上手。
接入场景联动的关键是理解三种命令:
power:直接开关reset:先通后延时断point:先断后延时通
配合分组控制、局域网私有化这些进阶能力,可以搭出挺灵活的自动化系统。接线时注意安全,签名算法注意细节,剩下的就靠你的想象力了。
如果调试中遇到具体问题,芯步官方提供全程技术指导,直接找工程师比在网上搜快得多。