CATALOG

芯步的智能断路器25A开放了标准HTTP接口,配合设备自带的定时参数(如reset),可以在不搭建额外任务队列的情况下优雅地实现延时通断控制。以下方案涵盖接口对接原理、代码实现及延时场景的典型应用方式。

芯步智能断路器25A延时通断控制解决方案

1. 解决概述

本方案的目标是指导开发者如何利用芯步开放的 HTTP API接口,对型号为 UNI-DLQ-25A(或同系列25A规格)的智能断路器实现延时通断控制。

核心优势:

  • 无需网关:设备直连WiFi 2.4G。

  • 接口极简:标准HTTP POST请求,10分钟即可完成对接

  • 云端定时:支持下发“延时倒计时”参数,设备端自动执行,不占用服务器资源。

2. 准备工作

在开始开发前,请确保完成以下步骤:

  1. 硬件准备:已将“智能断路器25A”接通电源并联网(通过“芯步”App或控制台配网)

  2. 获取凭证:登录[芯步控制台],获取以下三个关键参数:

    • AppId: 应用ID

    • AppSecret: 应用密钥(用于计算签名)

    • Device ID: 目标设备的唯一ID(可在控制台查看)

3. 接口鉴权与请求方法

芯步的开放接口通过动态签名(Sign)保证安全性,所有控制命令均需通过以下地址发送:

请求地址

https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}
  • {AppId}: 替换为你的应用ID。

  • {ts}Unix时间戳(秒),用于防止重放攻击。

  • {sign}签名,计算公式为 md5( md5(AppSecret) + ts )

请求方式

  • Method: POST

  • Content-Type: application/json

  • Body: 包含设备ID和控制指令的JSON字符串。

4. 核心功能实现:延时通断控制

针对“延时通断”需求,如 “立即通电,1小时后自动断电”“等待10秒后再通电” ,利用接口中的 resetpoint 参数即可实现。

4.1 第一种场景:立即通电,N秒后自动断电

应用场景:空调定时关闭、充电桩保护、设备重启。这需要使用 reset 参数。该参数的含义是:执行动作,并在指定毫秒后恢复原状

  • 逻辑:当前是“关”状态,命令为“开”,并设置 reset 倒计时。时间到后设备自动“关”。

  • 请求示例(断电倒计时)让断路器立即闭合(通电),并在 3600000毫秒(1小时) 后自动断开(断电)

4.2 第二种场景:延时N秒后通电

应用场景:设备预热、多设备顺序启动、避免浪涌。这需要使用 point 参数。该参数可以实现“先保持当前状态,等待N毫秒,再执行动作”。

  • 逻辑:当前是“关”状态,等待指定时间,然后“开”。

  • 请求示例(通电延时)等待 10000毫秒(10秒) 后,再闭合断路器进行通电。

4.3 签名生成(核心安全逻辑)

在发送上述JSON前,需要在Header中携带正确的签名。以下以 PythonBash (Curl) 为例演示签名生成与请求发送:

  • Python 示例

  • Curl 示例

5. 高级应用:排队与顺序控制

如果你有多台25A断路器,需要实现 “A设备断电5秒后,B设备再通电” 的逻辑,采用 “云端逻辑控制” 方案,因为单个设备仅执行自身命令:

  1. 下发命令1:给设备A发送 {"power": 0}(立即断电)。

  2. 程序等待:在代码中 sleep(5000)

  3. 下发命令2:给设备B发送 {"power": 1}(通电)。*注:由于网络延迟在80-120ms之间,这种顺序执行精度足够满足工业级需求*

6. 常见问题与排错

  • 签名错误:请确保 ts秒级时间戳(10位),而非毫秒级(13位)。签名计算顺序为 md5( md5(AppSecret) + ts ),注意括号位置

  • 延时不准:设备内置时钟晶振受温度影响极小,通常误差在秒级以内。若需毫秒级精度,请使用 point 参数的本地计时。

  • 局域网控制:若需断网运行(私有化部署),可联系芯步获取局域网IP控制指令,无需经过公网API

7. 总结

通过芯步标准HTTP接口配合 resetpoint 参数,开发者无需维护复杂的定时任务队列,仅需单次API调用即可实现精准的 25A 智能断路器延时通断控制。该方案广泛应用于智慧农业定时灌溉、基站远程重启、家用电器防烧毁保护等场景。