CATALOG

AC4-30A这款开关支持HTTP接口控制,对接起来其实不复杂,核心就是调用API控制通断,再结合定时功能或外部统计逻辑来实现能耗管理。下面从准备工作到具体实现、再到应用场景,一步步说清楚。

解决方案:基于芯步AC4-30A的能耗统计与控制对接方案

一、 主角是谁?——先认识一下 AC4-30A

咱们要玩的这个设备叫“智能通断器 AC4-30A”,名字听着挺硬核,其实你可以把它理解成一个能扛大电流的超级智能开关

  • 它能干啥:就是远程掐断或接通 220V 的电路。

  • 有多能扛:最大 30A 电流,6600W 功率。家里的空调、商用的自助售货机、工厂的小型设备,它都能带得动

  • 核心优势:它开放 HTTP 接口,意味着不管你是用 Java、Python、PHP,还是直接用前端 JS,只要能发 HTTP 请求,就能指挥它

二、 对接核心思路

我们要做的是“能耗统计与控制”,不仅仅是“开”和“关”。

  • 控制层面:直接用 API 下发命令。

  • 统计层面:AC4-30A 本身是一个开关,不具备高精度的电能计量芯片(它主要负责通断)。因此,我们要做的对接方案是:通过开关状态 + 时间维度 来推算/统计能耗,或者结合平台定时任务实现“定量控制”。

简单来说,就是解决三个问题:

  1. 怎么让它听话?(API 调用)

  2. 怎么知道它现在啥状态?(设备状态查询/上报)

  3. 怎么把“开了多久”换算成“花了多少电”?(逻辑算法)

三、 详细对接步骤

第一步:准备工作

在芯步的开放平台注册账号,拿到你的专属密钥。

  1. AppID:你的应用身份标识。

  2. AppSecret:你的应用密码,千万别泄露。

  3. Device ID:设备的唯一ID,贴在设备标签上或者后台能查到

第二步:搞定签名算法(这是最绕的一步)

芯步的接口为了保证安全,需要签名。虽然有点麻烦,但封装好了就是一锤子买卖。规则是:sign = md5( md5(AppSecret) + ts )

  • ts 是当前的时间戳(秒级)。

  • 也就是先把 AppSecret 进行一次 MD5,得到字符串 A;再把 字符串A 拼接上 ts 得到字符串 B;最后对 B 做一次 MD5。

操作:写代码的时候,写一个函数专门生成这个 sign,不要每次手算。

第三步:下发控制命令(让它通/断)

这是最核心的操作。请求地址如下:https://api.thingboot.com/{你的AppID}/device/control/?sign={签名}&ts={时间戳}

请求体格式 (JSON)

  • 开灯{"power":1} —— 设备闭合,输出端带电。

  • 关灯{"power":0} —— 设备断开,输出端断电。

实际操作就拿常见的Python来说,用 requests 库 post 一下这个地址,设备 0.1 秒左右就反应了,非常快

第四步:实现“能耗统计”

既然我们要做“能耗统计”,但设备主要是开关功能,怎么办?这里提供三种接地气的方案,你可以根据你的场景选:

方案 A:基于工时的统计(适用于功率恒定设备)如果你的设备功率是恒定的(比如一盏 100W 的路灯,或者一个 2000W 的热水器):

  1. 逻辑能耗 = 功率 × 时间

  2. 操作:你记录一下设备开启的时长(比如从 8:00 开到 17:00,共 9 小时),乘以设备标称功率。

  3. 实例:接了一个 1000W 的抽水泵。系统记录今天共开启 2 小时,能耗就是 2kWh(2 度电)。

方案 B:基于状态的精细化统计芯步平台支持设备状态上报

  1. 逻辑:利用 Webhook 或 消息推送。当 AC4-30A 状态改变(比如物理按键被人按了,或者过热保护跳闸了),设备会主动往你的服务器地址推送消息。

  2. 操作:你在后台配置一个接收 URL。设备每次开关变化,都会告诉你的服务器:“我开了”或“我关了”。

  3. 好处:你不用一直去查,实时性高,能精确统计每一秒的用电时长。

方案 C:进阶玩法——周期“定量”AC4-30A 支持在命令里带 reset 参数,这玩意特别适合做能耗控制。例如,你要给电动车充电,只想给它充 5 度电(假设充电功率 2000W,大约需要 2.5 小时):你可以下发命令:{"power":1, "reset": 9000000}(这里的 9000000 是毫秒,即 2.5 小时后自动断电)。这样即使你的服务器宕机了,到了时间它自己也会掐断,防止过充

第五步:对接定时与联动(自动化)

不要只在页面上放个开关按钮,那样太 low 了。利用开放接口做自动化:

  • 场景 1(定时任务):你的后台系统写好定时器,到晚上 6 点,自动调用 API 开灯;到晚上 12 点,自动调用 API 关灯。

  • 场景 2(联动控制):比如接个温控器。温度传感器发信号给你的平台,平台判断“温度 > 30 度”,就自动调用 API 关闭 AC4-30A(切断散热风扇或空调),达到节能目的。

第五步:对接定时与联动(自动化)

不要只在页面上放个开关按钮,那样太 low 了。利用开放接口做自动化:

  • 场景 1(定时任务):你的后台系统写好定时器,到晚上 6 点,自动调用 API 开灯;到晚上 12 点,自动调用 API 关灯。

  • 场景 2(联动控制):比如接个温控器。温度传感器发信号给你的平台,平台判断“温度 > 30 度”,就自动调用 API 关闭 AC4-30A(切断散热风扇或空调),达到节能目的。

如果场景更复杂(比如需要精确测量具体用了多少度电),可以考虑在同一路线上串联一个带计量功能的设备,把 AC4-30A 当作执行器来用。

四、 代码示例(Python 和 命令行)

为了让你看得更明白,贴一段核心伪代码(以 Python 为例):

如果你想测试一下,用命令行 curl 也可以(注意替换变量):

五、 避坑指南(FAQ)

  1. 关于功率限制:虽然叫 30A,但感性负载(比如电机、冰箱压缩机)启动电流大,说明书上阻性负载 6600W,感性负载最好控制在 1100W 以内。你要是直接接大空调,注意降额使用

  2. 网络问题:这玩意儿只支持 2.4G WiFi,不支持 5G。配网的时候手机要切到 2.4G

  3. 局域网控制:如果你不想走云平台,芯步也支持局域网和私有化部署。如果你的服务器和设备在同一个网段,可以不走公网,延迟更低更稳定

  4. 物理按键屏蔽:如果是用在自助设备上,为了防止别人乱按设备上的按钮导致误操作,可以通过接口把物理按键功能屏蔽掉,只接受远程指令

六、 总结

对接 AC4-30A 其实就是调通那个带签名的 HTTP 接口

  • 做控制:就是 POST {"power":1}

  • 做能耗统计:利用 API 记录开关时间,结合功率值去算。

  • 做精细管理:利用 reset 参数做自动断电,或者利用状态回调做实时监控。

只要你的业务系统能跑 PHP、Java、Python 或者任意一种网络请求,半个小时就能把这个开关接进去。