AC2 是芯步 10A 智能通断器,核心是通过 HTTP API 控制继电器通断。以下方案覆盖 API 对接、签名计算、命令下发和项目集成要点。
1. 产品概述与选型分析
芯步10A智能开关AC2(智能通断器AC系列)是一款支持Wi-Fi连接的继电器控制模块,额定电流10A,可承载2000W功率(16A版本为3500W)。相比需要改线的墙壁开关,AC2采用“模块化”设计,直接串联在家电的电源线上即可,特别适合现有设备的智能化改造场景,如传统热水器、饮水机、鱼缸水泵、排风扇等。
AC2的核心能力:
继电器输出:控制火线的通断,物理断开负载电源
HTTP API控制:可通过云端接口或局域网(部分型号)下发指令
功率计量(计量版):实时读取电压、电流、功率值,支持过载保护
状态保持:支持先通后断、先断后通等时序控制
2. 整体设计
将AC2集成到自有项目时,推荐采用云-端分离的控制架构:
flowchart LR
subgraph A["用户接入层"]
A1[Web管理后台]
A2[小程序/App]
end
subgraph B["业务服务器"]
B1[你的后端服务]
B2[业务逻辑
权限/定时/联动]
end
subgraph C["芯步云"]
C1[API网关
api.thingboot.com]
C2[设备管理]
end
subgraph D["设备端"]
D1[AC2智能开关]
D2[被控家电]
end
A1 -->|HTTP| B1
A2 -->|HTTP| B1
B1 -->|HTTP API
签名鉴权| C1
C1 -.->|MQTT/CoAP| D1
D1 -->|继电器动作| D2为什么不直连? AC2本身不暴露公网IP,它维持与云端的长连接。业务服务器通过调用芯步开放API,经由云端下发指令至设备。这种方式的好处是不需要考虑设备NAT穿透、固件升级、消息队列等底层问题。
3. 对接准备工作
3.1 硬件准备
获取AC2设备,连接220V电源进行配网
记录设备ID:在芯步控制台的“设备详情页”可查看设备的唯一标识(如
1878或类似字符串)
3.2 平台凭证准备
登录芯步工作台,进入“物联网控制台” → “开发设置”:
AppID:开发者ID,用于标识调用方
AppSecret:开发者密码,用于签名计算(妥善保管,不要暴露在前端)
调试模式:开发阶段可开启,此时不校验签名和时间戳,便于快速调试
4. API对接核心:签名计算与请求构造
与芯步API通信的核心是签名鉴权机制。每个请求必须携带 sign 和 ts 参数,防止重放攻击和非法调用。
4.1 签名算法(两步MD5)
Step 1: md5_secret = MD5(AppSecret) Step 2: sign = MD5(md5_secret + ts) // 注意是字符串拼接
其中 ts 是Unix时间戳(秒级)。芯步官方示例流程
示例计算(Python):
4.2 下发控制命令(核心API)
接口信息:
POST /{AppID}/device/control/?sign={sign}&ts={ts}
Host: api.thingboot.com
Content-Type: application/json请求体(JSON):
CURL示例:
4.3 AC2支持的高级命令
| 功能 | order参数 | 说明 |
|---|---|---|
| 通电一段时间后自动断电 | {"point":"5000"} | 先通后断,5000毫秒后自动关闭 |
| 断电一段时间后自动通电 | {"reset":"3000"} | 先断后通,适用于设备重启场景 |
| 读取电量数据 | {"metering":"1"} | 计量版专用,返回实时功率、电流等 |
| 安全功率保护 | 预先设置阈值 | 超过设定功率自动跳闸 |
5. 项目集成实践
5.1 封装设备服务层(架构)
在业务服务器中,封装统一的 AC2Service 类,隔离芯步API的调用细节:
5.2 数据库设计
在本地数据库中维护设备映射表,关联AC2设备与您系统中的产品/空间:
5.3 典型业务场景集成
第一种场景:定时任务(服务器端)
在您的系统中设置定时任务(如Cron或消息队列),到点调用 control_device 接口。注意:AC2本身虽支持云端定时,但在您的项目中维护定时器可实现跨品牌设备的联动。
第二种场景:联动控制
例如:人体传感器检测到无人 → 您的业务服务器接收事件 → 调用 control_device 关闭AC2 → 断开显示器/饮水机电源。
第三种场景:状态同步
由于设备状态可能通过物理按键、App、API等多种途径改变,:
每次下发命令后记录预期状态
周期性调用设备状态查询接口(芯步提供)进行校准
或通过芯步云的消息推送(Webhook)接收设备状态变更
6. 进阶功能:计量与过载保护
若使用AC2计量版,可构建基于数据的能源管理应用:
读取实时功率:
返回示例:
业务价值
异常告警:当功率持续异常时(如空调缺氟导致电流异常),系统自动断电并通知
能耗报表:统计各设备/时段的用电量,支持节能优化
过载保护:在云端设置功率阈值,超限自动切断
7. 注意事项与最佳实践
7.1 安全
AppSecret绝不暴露给前端:所有API调用必须经过您的业务服务器中转
签名时效
ts通常有效期为5-10分钟,服务器时间请与NTP同步生产环境关闭调试模式:开启签名校验和IP白名单
7.2 设备局限性
Wi-Fi依赖:AC2需要2.4GHz Wi-Fi覆盖,若设备安装在信号死角可能掉线
无断电记忆:部分型号断电后恢复供电,默认保持断电前状态(具体见产品手册)
10A上限:不可直接控制空调柜机、即热式热水器等大功率设备
7.3 开发调试技巧
先在芯步控制台的“设备控制”页面手动操作,观察发出的
order格式再编码注册演示设备进行API测试,无需实际硬件
使用Postman的Pre-request Script自动计算签名
8. 总结
通过芯步AC2智能开关的开放API,您可以快速为现有家电增加远程控制、定时开关、电量监测等智能化能力。集成工作主要集中在:
账号准备:获取AppID/AppSecret,完成设备配网
签名实现:按两步MD5计算签名
API封装:调用
/device/control/下发power/point/reset等命令业务融合:将AC2设备ID与您系统中的产品关联,实现场景联动
整个集成过程工作量较小(熟练后2小时内可完成基础开关功能),但能为您的项目带来完整的电源管理能力——从单纯的“通断控制”升级到“基于数据的能源优化”。