CATALOG

AC1-10A是一款支持10A额定电流控制的WiFi智能通断器,通过开放的HTTP接口可实现远程通断控制。下面从准备工作、签名算法、接口调用到代码示例,逐步说明对接方案。

1. 产品理解与准备

在开始对接之前,首先需要明确AC1-10A智能控制模块的核心特性。这款模块本质上是一个支持10A额定电流(最大16A)的智能通断器,适用于控制照明、电机、家电等各类设备

项目说明
产品型号UNI-TDQ-AC1-10A
控制方式1路继电器输出,支持通/断控制
额定电流10A(阻性负载2200W),峰值16A
通信协议Wi-Fi 2.4GHz
接口协议HTTP、WebSocket
特色功能支持自定义动作(如延时通断)、状态实时上报

准备工作:

  • 登录,获取 AppIDAppSecret(开发者密码)

  • 为设备通电并完成配网,获取 设备ID(Device ID)。如果没有实体设备,可以使用平台提供的“演示设备”进行测试

  • 准备一个支持发起HTTP请求的工具(如Postman、cURL)或开发环境(Python、Java、Go等)。

2. 接口鉴权与签名机制

芯步的开放接口采用动态签名的方式进行身份验证,这是保障接口安全的关键步骤。每次请求都需要计算一个特定的 sign 参数。

签名算法步骤如下

  1. 第一次MD5加密:encrypt_secret = md5(AppSecret)

  2. 拼接时间戳:sign_str = encrypt_secret + ts (其中 ts 为当前的Unix时间戳,单位:秒)

  3. 第二次MD5加密:sign = md5(sign_str)

调试小技巧:在开发初期,可以在芯步控制台的“开发设置”中开启调试模式。在该模式下,系统会暂时忽略 signts 的校验,方便开发者快速验证业务逻辑

3. 实现10A额定电流控制(通断指令)

对接的核心目标是实现对10A负载回路的接通与断开。AC1-10A模块的控制指令通过向特定API接口发送JSON格式的 order 参数来实现。

3.1 接口地址与请求结构

  • 请求URLhttps://api.thingboot.com/{AppID}/device/control/

  • 请求方法:POST

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

  • Query参数:需要携带计算好的 signts

主要控制指令说明:

  • 开启(闭合继电器){"power1": 1}

  • 关闭(断开继电器){"power1": 0}

3.2 请求示例

假设你的 AppIDabc123Device ID10086,需要闭合开关(开启10A回路)。

1. 计算签名:

2. 组装请求并发送:

4. 实战代码场景(Python示例)

以下是一个完整的Python函数,封装了对AC1-10A模块的控制逻辑,可以直接集成到你的管理系统或自动化脚本中。

5. 进阶与可靠性保障

5.1 状态实时同步(WebSocket/回调)

仅仅发送控制指令是不够的,系统通常需要知道设备最终是否真的执行了动作(例如:是物理按键关闭了设备,还是网络故障)。AC1-10A支持状态主动推送机制

  • 配置回调URL:在芯步控制台中设置接收地址。

  • 机制:当设备状态发生变化(无论是通过API控制、APP控制,还是手动按压模块上的按键),平台会立即向你的服务器推送当前最新的设备状态。

  • :你的业务系统应监听并存储这些推送过来的状态,而不是单纯依赖控制接口的返回结果,这样能保证数据库中的状态与物理设备真实状态一致。

5.2 特殊应用:自定义动作(脉冲模式)

在某些工业场景下,如果只是想让设备短暂接通(例如触发门禁或点动电机),AC1-10A支持自定义动作指令,可以让设备在开启后自动关闭,无需业务方额外发送关闭指令

  • 场景:控制一个电磁阀喷水500毫秒。

  • 指令示例{"power1": 1, "power1_delay": 500}(具体格式请以最新的产品手册为准,通常是结合定时任务或特定参数实现)。

6. 总结

对接芯步AC1-10A模块以实现10A额定电流控制,在技术上是一个“低代码”过程。主要工作总结如下:

  1. 核心逻辑:重点在于正确实现MD5动态签名,这是所有接口调用的通行证。

  2. 控制方式:通过/device/control/接口配合{"power1": 1/0}指令,即可稳定实现10A大电流回路的通断。

  3. 架构:生产环境启用状态回调机制,确保系统状态与物理设备状态强一致,同时利用调试模式加速开发联调效率。