CATALOG

AC4-10A 的核心价值在于其开放的 HTTP 接口——这意味着你可以用任何主流编程语言,将它无缝集成到自己的控制系统或 SaaS 平台中。以下方案按“协议理解 → 签名算法 → 核心开发 → 高级应用”的顺序展开,可直接落地实现。

一、 理解核心:接口特性与能力评估

在二次开发前,必须明确 AC4-10A 的技术边界。这不仅关系到代码实现,更关系到物理安全,因为你要控制的是 10A(安培) 的强电线路。

1.1 设备技术规格

项目参数开发注意事项
额定电流Max 10A这是开发负载设计的红线。后端逻辑必须包含过载保护机制,若检测到总功率>2200W,应立即下发断开指令。
无线协议WiFi 2.4G设备直连路由器,无需网关。二次开发时需确保现场 WiFi 信号强度( RSSI > -60dBm)。
接口类型HTTP / HTTPS同步接口。调用后立即返回,需依赖异步消息推送确认设备真实状态。
核心能力通断控制、定时/倒计时、状态查询支持“点动”(先通后断)和“重启”(先断后通)模式,适用于车库门、电机控制等场景

1.2 开放接口全景

芯步提供的接口主要分为两类,二次开发时需结合使用:

  1. 控制接口: 直接下发指令,如开、关、点动。

  2. 消息推送: 设备状态变化(如本地按键按下)会主动推送至你指定的服务器。

二、 开发准备:鉴权与签名算法

所有 API 调用都需要进行身份验证。你需要在芯步控制台获取 AppIDAppSecret

2.1 接口鉴权参数

请求 URL 格式通常为:https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

  • AppID: 应用唯一标识。

  • ts: Unix 时间戳(秒或毫秒)。用于防止网络重放攻击,服务器会校验时间差(通常允许 5 分钟内偏差)。

  • sign: 签名。

2.2 签名生成逻辑

签名用于验证请求的合法性,严禁在客户端代码(如前端 JavaScript、App 内部)中硬编码 AppSecret,必须在后端生成签名。算法逻辑如下:

  1. 将所有请求参数(AppIDts, 以及 Body 中的 deviceorder)按 键名 进行 升序排序

  2. 将排序后的参数拼接成字符串:key1=value1&key2=value2

  3. 在字符串末尾追加上 &key=AppSecretAppSecret 是你应用的密钥)。

  4. 对上述字符串进行 MD5 加密,得到 32 位小写密文作为 sign

  • 逻辑示例md5("AppID=xxx&device=device123&order={\"power\":\"0\"}&ts=1712900000&key=your_secret")

三、 核心开发:实现10A负载控制逻辑

本节是实现目标的核心。不仅要控制通断,更要针对 10A 额定电流 进行安全逻辑封装。

3.1 基础控制指令集

你需要在后端封装一个类,包含最基本的功能。AC4-10A 的 order 参数(JSON 格式)支持以下命令:

功能描述Order JSON 参数业务场景
开启{"power":"1"}恢复供电,设备吸合
关闭{"power":"0"}断开供电。
点动/脉冲{"point":"3000"}开启 3 秒后自动关闭。常用于控制门禁或冲水阀
重启{"reset":"5000"}断开 5 秒后自动开启。常用于重启死机的路由器或工控机。
学习模式{"learn":"1"}让设备进入配网模式,便于初始化。

3.2 针对10A额定电流的“安全控制器”设计

由于目标是将功率拉满到 10A,二次开发时必须构建 “软熔断器” 逻辑。架构如下:

  1. 实时功率监测轮询:

    • 如果你的场景包含 AC4-10A 计量版,或者通过外部传感器获取电流,编写一个定时任务(Cron Job),每 2-5 秒调用一次 设备状态查询接口

  2. 阈值判断逻辑:

    • 获取当前电流值 I_current

    • I_current > 10.5A(允许轻微过载),触发告警。

    • I_current > 11.0A 持续时间超过 3秒,自动调用 断开指令{"power":"0"}

  3. 锁存机制:

    • 一旦触发过载保护断开,在未收到人工手动复位指令前,拒绝任何自动开启指令,防止设备反复打火损坏继电器。

3.3 代码示例(Python Flask 后端实现)

以下代码演示如何在 Web 后端接收前端请求,并安全控制 AC4-10A。

四、 高级进阶:私有化部署与体验优化

4.1 局域网直连模式

对于强调低延迟或内网安全的项目(10A 以上电流控制通常有较高的实时性要求),AC4-10A 支持局域网 API

  • 机制:一旦设备与 WiFi 路由器连接,你可以在同一局域网内的服务器上,直接通过 http://[设备IP地址]/control 下发指令。

  • 优势:完全脱离外网,延迟降至 10ms 以内,工业控制场景下更可靠。

  • 实现:你需要先通过 DHCP 静态绑定或 mDNS 广播发现设备的 IP 地址,然后直接调用内部接口。

4.2 自建消息服务器(MQTT/HTTP)

AC4-10A 支持 HTTP 推送回调。你需要在你的服务器上提供一个公网可访问的接口地址。

  1. 配置回调:在控制台设置你的服务器地址 https://your-server.com/api/device/status

  2. 处理异步状态

    • 之前调用的控制接口,返回的 200 仅代表指令送达。设备是否真的闭合(吸合),取决于实际电流是否流过。

    • 设备会在状态改变时(物理按键按下、继电器吸合)主动 POST 数据到你的服务器。

  3. 数据落地:接收 JSON 数据,解析 power 字段,存入数据库,用于记录用户的操作日志或审计。

4.3 物理按键与逻辑解耦

在 10A 强电场景下,误触风险较大。芯步的接口支持 “按钮动作自定义”

  • 开发:你可以通过接口配置 “屏蔽本地按键” 功能。这样设备上的物理按钮将失效,只有你的二次开发后端能够控制它。这在工厂、学校等需要防止非授权人员误开大功率设备的场景下非常实用。

五、 总结

通过对芯步 AC4-10A 的二次开发,你可以构建一套针对 10A 额定电流的精准控制系统。

关键路径回顾:

  1. 安全建模:二次开发的代码层必须包含限流保护逻辑,这是底线。

  2. 接口交互:遵循标准签名算法,通过 JSON order 字段灵活控制通断。

  3. 架构升级:利用局域网直连和异步消息推送,构建低延迟且状态同步的企业级系统。