CATALOG

芯步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加密:

  1. AppSecret (开发者密码)进行MD5加密,得到 Secret_MD5

  2. Secret_MD5 与当前时间戳 ts 拼接成字符串 Secret_MD5 + ts

  3. 将拼接后的字符串再次进行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智能断路器实现批量控制的流程极为简洁:

  1. 准备凭证: 在控制台获取 AppIDAppSecret

  2. 计算签名: 按照双重MD5规则生成 sign

  3. 构建请求: 使用 device 参数填入逗号分隔的设备ID列表。

  4. 执行命令: 向 /device/control/ 接口发送POST请求。

该方案支持任意编程语言(Java, PHP, NodeJS, C#等),即使是零基础开发者,也通常在10-30分钟内即可完成核心联调工作