芯步35A智能断路器基于HTTP接口设计,签名验证机制简洁,单次请求即可控制单个或多个设备。以下方案涵盖接口对接流程、批量控制实现方式及典型应用场景。
1. 背景与概述
在现代配电场景中(如园区照明、充电桩、大型养殖场、基站扩容等),往往需要同时管理多路大功率线路(35A及以上)。传统的人工操作不仅效率低,且无法满足实时响应的需求。
芯步35A智能断路器(型号:UNI-DLQ-35A-4G)开放了标准HTTP API接口。本方案的目标是指导开发者如何基于该接口,通过编程方式(Python/Java/Go/NodeJS等任意支持HTTP的语言),实现对单台甚至成百上千台设备的远程批量控制和状态管理 。
2. 核心接口与鉴权机制
要实现对接,首先需掌握芯步的统一API鉴权逻辑。所有控制指令均需通过携带签名的POST请求发送。
2.1 请求地址
POST https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}{AppID}: 在芯步控制台“开发设置”中获取的应用唯一标识。{ts}: 当前Unix时间戳(秒),用于防重放攻击。{sign}: 接口签名,计算规则如下 。
2.2 签名生成规则(以伪代码为例)
为了防止接口被篡改,需要进行双重MD5加密:
将
AppSecret(开发者密码)进行MD5加密,得到Secret_MD5。将
Secret_MD5与当前时间戳ts拼接成字符串Secret_MD5 + ts。将拼接后的字符串再次进行MD5加密,得到最终的
sign。
3. 实现“批量控制”的两种模式
针对35A智能断路器的控制,芯步接口支持单次请求单设备和单次请求多设备两种模式。为了最高效率地实现“批量控制”,推荐使用第二种模式。
3.1 单控模式
仅适合对单一特定线路进行微调。
请求体示例:
{"device":"设备ID1", "order":{"power":1}}
3.2 批量模式(重点)
芯步的接口 device 参数支持传递逗号分隔的多个设备ID。这意味着,一个HTTP请求即可同时控制位于不同地理位置的100台断路器同时合闸或分闸。
接口调用示例
参数构建
device:"35A-001,35A-002,35A-003"(多个设备ID用英文逗号隔开)order: 下发命令(例如:全部开启{"power":1})
3.2.1 代码实现(Python 批量开启)
3.3 单设备多线路批量控制
35A断路器通常支持多路输出(如4路或8路)。如果只需控制一台设备的某几个特定回路,无需单独调用接口,可以使用JSON数组进行精细化组合控制 。
场景: 关闭设备
35A-001的第1路和第3路,保持其他路不变。Order命令
4. 高级控制策略:定时与联动
在远程批量控制的基础上,芯步接口支持内置定时参数,无需在应用层维护复杂的定时任务队列,即可实现“暂态控制” 。
场景: 批量临时供电假设需要对100台充电桩进行重启操作(先断后通,间隔2秒),或者让一批插座在通电1小时后自动断电(防止忘记关电)。
Order命令(自动断电)
或者实现“点动”功能:
5. 架构落地:私有化与局域网部署
针对工业或商业场景中对数据安全和响应速度的高要求,芯步35A断路器支持私有化部署 。
标准云模式: 设备连接芯步公有云,您的业务服务器调用公网API。适用于分布式管理(如跨省市的连锁门店)。
私有化模式(推荐大规模使用): 将协议栈部署在本地服务器。设备通过4G(该型号支持4G版)或WiFi连接至本地MQTT Broker或HTTP Server。此模式下:
优势: 无公网延迟,控制指令可在毫秒级响应;数据不流出企业内网。
调整: API请求地址从
api.thingboot.com变更为您的私有服务器地址。
6. 总结
对接芯步35A智能断路器实现批量控制的流程极为简洁:
准备凭证: 在控制台获取
AppID和AppSecret。计算签名: 按照双重MD5规则生成
sign。构建请求: 使用
device参数填入逗号分隔的设备ID列表。执行命令: 向
/device/control/接口发送POST请求。
该方案支持任意编程语言(Java, PHP, NodeJS, C#等),即使是零基础开发者,也通常在10-30分钟内即可完成核心联调工作 。