芯步35A智能电源保护开关的开放接口基于标准HTTP/MQTT协议,单次请求即可控制最多100台设备。以下方案围绕“横向扩展”和“纵向联动”两个维度,分别阐述多设备批量下发与自动化引擎构建的实现路径。
1. 总览:二次开发的核心逻辑与预备工作
要实现35A智能电源保护开关的远程批量控制,核心是利用其开放的多设备控制接口。与传统的“一对一”手动控制不同,批量控制允许开发者通过一次API请求,同时向多个设备(或多条线路)下发指令,从而在自习室、工厂、连锁店铺等场景中实现统一管理。
1.1 准备工作
硬件准备:确保所有35A智能电源保护开关(型号:UNI-DLQ-35A)已完成Wi-Fi配网,并处于在线状态。
接口凭证获取:登录芯步开发者后台,获取
AppID、AppKey(用于生成签名sign)以及目标设备的Device ID(设备唯一ID)。开发环境:任何支持HTTP请求的编程语言(如Python、Java、Go、Node.js)或低代码平台。
2. 方案一:横向扩展(单次请求控制多台设备)
这是最直接的批量控制方式。适用于需同时开启或关闭某一区域内所有35A断路器的场景,例如工厂下班统一断电、商铺夜间总闸关闭等。
2.1 接口定义
URL
http(s)://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}Method
POST(推荐,当设备ID较多时)核心参数策略:在请求参数中,利用
device字段的分隔符机制。
2.2 实施步骤:批量断电/通电
要实现该功能,你需要在HTTP请求的Body中,将多个设备的ID用竖线 | 或逗号 , 连接。
关键指令示例:同时控制ID为
123456、789012和345678的三台断路器执行“分闸(断电)”操作。请求体构造
Key-value 格式
或 JSON 格式
技术要点
数量限制:单次请求最多可包含 100个 设备ID。若超过100台,需分批调用或使用循环机制。
状态校验:接口返回
200仅代表指令下达成功,不代表设备实际动作。如果你需要严格验证执行结果,需配合“方案三”中的消息推送功能,接收设备执行后的状态回传。
3. 方案二:纵向扩展(单台设备的多线路精细控制)
35A智能电源保护开关通常具备多路输出能力。二次开发不仅限于控制“多台”设备,也包括控制“一台设备内的多条线路”。这适用于管理机柜中不同设备的供电时序,如先启动服务器,再启动交换机。
3.1 接口逻辑
针对单台35A设备的内部多路控制,芯步开放接口提供了 batch、point 和 reset 等高级控制指令。
指令集详解:
| 命令类型 (Key) | 功能描述 | 数据结构示例 | 适用场景 |
|---|---|---|---|
| powerN | 独立控制单一路 | {"power1": "1"} | 单独开启第一路 |
| batch | 批量控制指定线路 | {"batch":{"relay":[1,3,5],"power":"0"}} | 关闭第1、3、5路 |
| point | 先接通后断开 | {"point":{"relay":[2,4],"interval":500}} | 重启第2、4路 |
| reset | 先断开后接通 | {"reset":{"relay":[1],"interval":1000}} | 复位第1路 |
3.2 典型示例:重启特定线路
假设你需要重启连接在设备ID DD8801 上的第2路和第4路设备:
这种“先通后断”的模式可以模拟物理拔插电源的效果,非常适合用于远程复位IPC摄像头、路由器等网络设备。
4. 方案三:进阶架构(批量控制的自动化引擎)
当需要实现“如果传感器A触发,则批量关闭所有35A设备”等复杂联动逻辑时,可以采用服务端脚本或SaaS集成架构。
4.1 设计流程
事件触发:物联网平台接收到温湿度传感器或烟感探测器的告警数据。
逻辑判断:你的业务服务器(或芯步的云端HTTP回调)执行判定逻辑(例如:温度 > 70℃)。
下发批量指令
Step A:通过芯步接口查询特定分组的设备列表(如“生产车间”分组)。
Step B:循环或拼接设备ID,调用控制接口。
Step C:下发
{"power":"0"}命令。
4.2 代码级示例 (Python)
以下伪代码展示了服务端如何抓取环境变量并触发批量关闸:
5. 注意事项与
在开发和上线过程中,关注以下技术细节:
签名机制:所有HTTP接口请求都需携带
sign(签名) 和ts(时间戳)。千万不要将AppKey硬编码在前端代码中,必须在后端服务器生成签名后再下发给设备端,以防密钥泄露。局域网私有化部署:官方资料显示该产品支持私有化部署。如果你的服务器与设备处于同一局域网且对公网带宽有顾虑,可配置自建消息服务器(MQTT Broker),实现极低延迟的内网批量控制。
异步反馈闭环:批控指令(如“全关”)发出后,由于网络波动或设备离线,可能存在部分成功部分失败的情况。订阅 设备状态上报 的推送消息(通过HTTP回调或MQTT),对比“下发指令”与“上报状态”是否一致,实现闭环巡检。
6. 总结
通过芯步的开放接口,开发者对35A智能电源保护开关的二次开发具有高度灵活性:既可以利用 device 字段的分隔符实现单次请求多台设备的横向批量管理,也可以利用 batch 等高级指令完成单台设备多线路的纵向精细控制。结合服务端的逻辑编排,可以快速构建出适用于共享经济、智慧运维等场景的远程批量控制系统。