AC3-10A计量版这款设备自带功率检测和过流保护功能,对接思路很简单:用HTTP接口轮询读取实时功率,当功率超过阈值时自动下发断电指令。下面我把整个对接流程捋一遍,从准备工作到核心代码,再到注意事项。
1. 准备工作:拿到三把钥匙
动手之前,先把这三样东西准备好:
AppID 和 AppSecret:登录芯步控制台,在“开发设置”里就能看到。这两个是你的身份凭证,保密好别外泄。
设备ID:在控制台的设备列表里找到你那个AC3-10A计量版,型号一般是
UNI-TDQ-AC3-10A-P,设备ID是一串数字。网络环境:确保设备连上了2.4G WiFi(不支持5G),这样它才能和云端通信。
2. 核心思路:轮询+判断
实现过流自动断电的逻辑其实很简单:
每隔几秒(2-5秒)调用一次获取功率的接口。
判断返回的功率值是否超过你设定的阈值(比如2200W)。
如果超过,就调用断电接口;如果没超过,继续监测。
注意:官方明确说了“单个设备访问最高限制1次/秒”,所以轮询间隔别设太密,2秒以上比较稳妥。
3. 签名计算方法(通用)
芯步的所有接口都需要在URL里带上签名,签名计算方法如下
说白了就是:先把AppSecret做一次MD5,然后拼接时间戳,再对整个字符串做一次MD5。
4. 获取实时功率(做判断用)
要判断是否过流,首先得知道当前功率是多少。AC3-10A计量版支持通过计量接口读取功率数据:
注意:计量接口返回的具体字段名先用调试工具看一下实际响应结构,功率字段可能是
power、load_power或active_power。
5. 下发断电命令(核心动作)
当检测到功率超过阈值(比如2200W,对应10A电流),就调用控制接口把线路切断:
命令格式说明:
{"power1": 0}表示断开线路,{"power1": 1}表示接通。设备型号里带-P后缀的就是计量版。
6. 完整的自动断电逻辑
把上面的串起来,写一个完整的监控程序:
7. 进阶玩法:用设备自带的安全功率功能
AC3-10A计量版本身有个“设置安全功率”的功能,可以在设备端直接设置过流保护阈值。这样即使你的服务器宕机了,设备自己也会跳闸,相当于双保险。
设置方式也是通过接口下发配置:
具体命令字段查阅官方产品手册或咨询技术支持。
8. 一些踩坑提醒
时间戳问题:ts必须是秒级的10位数字,不是毫秒级的13位。Python里用
int(time.time())就对了。签名坑:一定要用md5的32位小写字符串,这是OpenSSL默认的格式。
轮询别太猛:官方限流1次/秒,太频繁会被拒绝。3-5秒轮询一次完全够用。
网络依赖:设备通过WiFi通信,如果WiFi断了,自动断电会失效。结合设备自带的“安全功率”功能做硬件级保护。
同时控制多个设备:device参数支持传多个ID,用逗号隔开就行,比如
"device": "1878,1879,1880"。
整体来说,对接难度不大,核心就是:轮询功率 → 判断阈值 → 触发断电。先用Postman之类的工具把接口调通,再写业务代码。有问题可以去芯步开放平台看官方文档,或者联系他们的技术支持。