CATALOG

AC2-10A智能通断器支持HTTP/Websocket接口控制,同时具备状态变化实时推送能力,很适合做二次开发。以下方案围绕“下发指令-状态反馈-异常告警”的闭环来设计,你可以根据实际业务场景调整。

1. 解决概述

AC2-10A 是一款支持 HTTP 接口和实时消息推送的智能通断器。传统的定时开关只能按照预设时间执行通断,无法感知执行后的实际状态(如线路是否真的通断、设备是否故障)。

本方案利用芯步开放平台的 HTTP 控制接口状态实时推送机制,构建一个具备“下发指令 → 执行动作 → 状态回读 → 异常告警”完整闭环的智能控制系统。

核心实现逻辑

  • 控制端:通过二次开发的业务系统(Web/App/Server)调用 API 下发定时/即时指令。

  • 执行端:AC2-10A 接收指令并执行线路通断。

  • 反馈端:设备状态变更时,主动推送状态至开发者指定的 URL,实现实时监控。

2. 准备工作与环境配置

在开始二次开发前,需要完成以下配置:

  1. 获取凭证:登录芯步控制台,获取 AppIDAppSecret

  2. 绑定设备:确保 AC2-10A 已配网并绑定至账号下,获取目标 deviceId

  3. 配置消息推送 URL:在控制台开发设置中,配置接收设备状态的回调 URL(HTTP/HTTPS)。这是实现“状态反馈”的关键步骤。

  4. 开发环境:任意支持 HTTP 协议的语言(本文示例以 Java/Python 为主,通用逻辑适用于各类语言)。

3. 接口签名机制详解

为保证接口安全,芯步采用 双MD5签名机制。二次开发时需重点实现以下算法

  • Sign 算法md5( md5(AppSecret) + ts )

  • 参数说明

    • AppSecret:开发者密码

    • ts:当前 Unix 时间戳(秒)

    • +:字符串拼接

代码实现示例 (Python)

4. 实现“精准定时控制”与“线路状态反馈”

传统的控制往往只包含上图中的“控制指令”部分,本次二次开发的重点在于通过 Websocket 或 HTTP 回调 实现完整的闭环。

4.1 核心命令扩展 (Order JSON)

针对定时控制和状态查询,二次开发时可使用以下命令结构

功能点命令示例 (Order JSON)场景说明
即时通断{"power1": 1} (开启) / {"power1": 0} (关闭)控制线路1通断
先通后断{"point":{"relay":[1],"interval":1000}}接通1秒后自动断开(模拟点击)
脉冲式触发{"reset":{"relay":[1],"interval":500}}先断开0.5秒再接通(重启设备)

4.2 构建“状态反馈”接收端

为了实现实时监控,你需要部署一个公网可访问的 URL(如 https://yourdomain.com/yoyo/callback),用于接收设备推送过来的状态变更数据。

设备状态发生变化时(物理按键按下、定时器执行、API 控制成功),芯步平台会向该 URL 发送标准的 HTTP POST 请求

二次开发:接收回调后,不仅记录日志,还应解析特定字段来验证操作是否成功

4.3 完整业务闭环示例

假设你要实现一个“办公室空调定时关机”并“验证是否真的断电”的逻辑:

  1. 执行:系统在 18:00 调用接口,发送 {"power1": 0}

  2. 等待:系统进入等待回调的状态。

  3. 反馈

    • 若收到设备推送的 {"power1": 0, "status": "success"},更新数据库状态为“已关闭”。

    • 若在规定时间内未收到回调,系统自动重试或发送告警给管理员。

5. WebSocket 实时控制与长连接方案

对于需要 低延迟控制(如毫秒级响应)或需要 实时仪表盘 的场景,基于 HTTP 的轮询效率过低。芯步开放平台支持 WebSocket 接口,二次开发时可以采用双通道策略:

  • WebSocket 通道:用于实时监听设备的瞬时状态变化(如电流突变、按键按下事件),延迟更低。

  • HTTP 通道:用于下发定时任务配置、历史数据查询等非实时性操作。

注:Websocket 接入地址及订阅逻辑参考官方文档 开发文档 > 设备接口调用 章节。

6. 高级功能开发:异常检测与自动恢复

利用开放接口的 自定义动作 功能,可以在二次开发中实现高可用逻辑。

6.1 断电记忆与状态自检

  • 场景:设备异常断电后恢复,AC2-10A 可能默认处于断开状态,导致服务器无法启动。

  • 实现:开发一个守护脚本,每隔 5 分钟调用 设备状态查询接口(如果有)或通过 Ping 后端服务来检测,若发现应开未开的情况,自动触发 {"power1":1} 进行自愈。

6.2 基于信号输入的联动

AC2-10A 支持 自定义两组信号输入执行响应动作

  • 场景:外接传统物理按钮。

  • 二次开发:物理按钮按下时,设备会推送信号给服务器,服务器可以不直接控制继电器,而是先校验权限(例如当前时间段是否允许手动开启),再下发指令。这相当于将对硬件的控制权完全上收到软件逻辑中。

7. 总结

通过上述方案,芯步 AC2-10A 不再仅仅是一个简单的定时开关,而是演变为一个 可编程的边缘节点

本次二次开发的核心收益包括:

  1. 双向透明:解决了传统开关“只管发指令,不管成不成”的痛点,通过回调机制实现了状态闭环。

  2. 高精度时序控制:利用 pointreset 等丰富指令集,替代了低端的 PLC 简单时序功能。

  3. 系统集成:标准 HTTP 接口使其极易融入现有的 MES、ERP 或智能家居系统。

通断器产品方案:
创客项目电源控制场景:怎样把智能通断器模块接入到软件项目中
查看 >>
校园公共设备电源管理中:怎样把AC3-10A 计量版电源开关接入到软件项目中
查看 >>
怎样在智能垃圾桶电源控制中接入智能硬件以实现低电压监测告警
查看 >>
如何对接AC1智能通断器10A以实现漏电保护控制
查看 >>
怎样在共享茶室照明插座控制中集成智能设备以实现延时通断控制
查看 >>
线路场景方案:
怎么在快递柜设备控制中集成智能硬件来实现远程控制16路线路
查看 >>
怎样在店铺照明设备控制中集成智能设备以实现4路独立线路控制
查看 >>
怎么接入24 路智能分体远程设备集中控制模块以实现线路状态反馈控制
查看 >>
如何在共享茶室电器线路控制中集成智能设备以实现线路状态反馈控制
查看 >>
怎么在店铺招牌控制中接入智能设备来实现多线路集中通断控制
查看 >>
反馈用途方案:
怎么在调度站语音播报中接入智能设备以实现设备状态语音反馈
查看 >>
怎样在会议室门禁照明控制中对接智能设备以实现线路状态反馈控制
查看 >>
如何在共享充电站照明管理中对接智能硬件来实现照明状态反馈控制
查看 >>
怎么对接30W 自动语音通知音柱以实现设备状态语音反馈
查看 >>
如何对接24路高集成度控制器以实现负载状态反馈控制
查看 >>