CATALOG

针对芯步(YoYo IoT)25A智能断路器的远程批量控制,核心在于利用其开放的统一API接口,通过在请求体中传递设备ID数组(Device ID List) 来实现单次请求控制多台设备。

以下是详细的对接解决方案:

在开始编码对接前,你需要完成硬件通电与开发者身份认证。

1.1 硬件通电与联网

  • 安装:将UNI-DLQ-25A断路器安装于导轨上,接入AC 85-265V电源。

  • 配网:产品支持Wi-Fi或4G联网。Wi-Fi版本需通过设备热点或SmartConfig模式为其配置家中/公司2.4GHz WiFi密码,确保设备指示灯变为常亮(在线状态)

1.2 获取开发者密钥

要实现远程控制,你必须拥有芯步开放平台的三把钥匙:

  • AppID:应用的唯一标识。

  • AppSecret:开发者密码,用于计算签名。

  • Device ID:25A断路器的唯一ID(通常贴于设备外壳或可在控制台查看)

芯步的接口采用动态签名验证机制,这是保障批量控制安全性的基础。

2.1 签名算法(Signature)

所有HTTP请求都需要携带 signts(时间戳)参数。具体的计算逻辑如下,这是对接的关键步骤

  1. 将你的 AppSecret 进行一次 MD5 加密,得到 encrypted_secret

    • encrypted_secret = MD5(AppSecret)

  2. 将上述结果拼接上当前的Unix时间戳(秒级,ts),得到 temp_str

    • temp_str = encrypted_secret + ts

  3. temp_str 再次进行 MD5 加密,得到最终的 sign

    • sign = MD5(temp_str)

注:时间戳ts用于防止请求重放攻击,前后误差一般不超过5分钟。

2.2 核心接口地址

  • 请求地址https://api.thingboot.com/{AppID}/device/control/

  • 请求方法POST

  • 请求头(Header)Content-Type: application/json

本方案的核心在于 device 参数的构造。对于25A智能断路器,其远程开关指令通常通过 order 字段中的 power 状态值来控制。

3.1 单台设备控制(基础)

在编程时,必须严格遵循以下JSON结构体:

3.2 批量控制(核心逻辑)

为了实现与“单控”无差别的“批量控制”,你只需在 device 字段中传入逗号分隔的ID字符串,并保持 order 指令不变。

第一种场景:批量开启(全厂复工)

假设你需要同时开启设备ID为 111222333 的三台断路器。

  • 请求体

  • 效果:芯步服务器会解析设备列表,并异步向这三台设备下发“闭合/开启”命令

第二种场景:批量关闭(紧急断电)

在紧急情况下(如火灾报警或下班清场),执行全区域断电:

  • 注意:此操作会瞬间切断5000W(阻性)负载的电力,请请一定要确认生产安全

3.3 批量接口的限制与最佳实践

  • 数量限制:虽然接口技术上支持较多ID,但从网络包大小和超时考虑,单次请求不要超过50-100台设备。如果需要控制数千台,应采用分批(分页)请求或异步任务队列的方式。

  • 调用机制:批量接口是“尽力而为”的。由于断路器可能处于离线状态,你的业务系统记录指令日志,并利用物联网平台的消息推送来确认每一台设备最终的执行结果。

以下示例展示了如何利用Python语言动态生成签名并执行批量关闭。

除了简单的通断电,批量控制还可结合定时任务形成自动化策略。

5.1 定时批量任务

如果你不需要实时由业务系统触发,可以在芯步控制台设置场景联动。例如:设置一个定时任务,在每天0:00,触发场景“关闭所有楼层断路器”。这种方式不占用你的服务器资源,由物联网平台直接向设备群下发指令。

5.2 “先断后通”与“先通后断”

虽然25A断路器支持简单的Power开关,但在控制电机类负载(感性负载,限制800W)时,批量重启可能导致电流浪涌。

  • 在批量恢复供电时,利用接口发送 {"reset":1000} 之类的指令(如果设备支持点动模式),让设备在分闸后间隔1秒自动重合,避免瞬间冲击

  1. 签名错误(401/403)

    • 检查时间戳是否标准Unix秒数。

    • 检查MD5结果是否为32位小写十六进制。

  2. 部分设备未动作

    • 检查 device 参数中是否包含了不存在的ID,或该设备当前网络信号差(WiFi/4G离线)。批量API返回200只代表指令到达云端,不代表设备已执行

  3. 负载功率限制

    • 25A断路器最大支持5000W阻性负载。如果批量控制的末端是LED灯或节能灯,单台总功率请勿超过800W,否则可能导致触点粘连或损坏

通过以上步骤,你可以在半小时内完成从注册到API调试,实现对芯步25A物联网断路器的无上限批量远程控制。