CATALOG

芯步30A远程电源控制器支持HTTP API和MQTT两种开放接口,可二次开发实现远程通断控制与能耗计量。以下从接口机制、开发流程到代码实现进行完整说明。

一、 解决概述与核心能力

基于芯步开放平台的HTTP API,您可以对其30A大功率继电器(如AC4-30A或智能包间控制器的第8路)进行深度的二次开发。该方案不仅实现简单的开关控制,更重要的是建立“感知-控制-分析”的闭环,实现精细化的能耗管理。

核心开放能力:

  • 大功率承载:支持30A/6600W负载,适用于空调、大型充电桩、服务器机柜等设备

  • 实时状态反馈:接口可实时查询设备当前的通断状态。

  • 双向通信:支持HTTP请求(Request模式)下发命令,也可通过MQTT推送(Subscribe模式)接收设备状态变更。

  • 永久免费:平台接口调用不收取任何费用,支持私有化部署

二、 二次开发核心流程

二次开发主要分为三个步骤:环境准备、接口调试、逻辑集成。

1. 环境与鉴权准备

在开始编码前,您需要在芯步控制台获取关键凭证:

  • AppID:应用唯一标识。

  • AppSecret:应用密钥,用于计算签名,保障数据安全。

  • Device ID:设备的唯一ID(在控制台“设备列表”中查看)。

签名机制(重点):为防止接口被恶意篡改,所有API请求需携带签名 sign。计算公式为:sign = md5( md5(AppSecret) + ts )

  • ts:当前Unix时间戳(秒),用于防重放攻击。

  • 注意:参数传递错误会导致返回5006错误码。

2. 核心API接口调用

针对30A控制器,主要涉及以下API。

(1) 设备控制接口

  • 地址POST https://api.thingboot.com/{AppID}/device/control/

  • 参数

    • device:目标设备ID。

    • order:指令JSON。

      • 开启第8路(30A接口){"power8": 1}

      • 关闭第8路{"power8": 0}

      • 全部开启{"power":"all"}

(2) 设备状态查询

  • 地址GET https://api.thingboot.com/{AppID}/device/status/

  • 作用:获取当前的实时电流、电压、功率及开关状态,这是“实时能耗计量”的数据基础。

3. 代码实现示例 (Python)

以下脚本演示了如何通过API控制30A端口并读取计量的能耗数据。

三、 实时能耗计量控制逻辑设计

单纯的开关控制无法实现“计量控制”。你需要结合业务逻辑,构建智能策略。以下是一个典型的闭环控制流程设计:

  1. 数据采样:设定定时任务(如每5分钟),调用/device/status/接口拉取电压、电流、功率数据。

  2. 逻辑判断

    • 功率阈值告警:若实时功率超过设定的安全阈值(如6500W),自动触发control_relay(False)切断电路,防止过载。

    • 待机自动断电:若检测到功率长时间维持在待机状态(如电脑关机后功率<50W持续10分钟),主动断电,实现节能。

    • 定时/按量控制:如充电桩场景,监测累计电能达到预设值(如1kWh)后自动切断。

  3. 数据持久化:将获取的能耗数据存入您的本地数据库(MySQL/InfluxDB),用于生成能耗报表和趋势分析。

四、 高级集成与优化

  1. MQTT 实时推送(推荐)

    • 上述HTTP轮询模式在需要高实时性(如即时感知设备被手动关闭)时会增加服务器压力。

    • 集成MQTT协议,订阅设备状态主题,任何开关动作或遥测数据变化都会毫秒级推送至您的服务器,效率更高

    • 连接参数:Host mapi.thingboot.com,Port 1883,Username AppID,Password AppSecret

  2. 本地局域网控制(私有化)

    • 如果您的业务系统与设备处于同一个局域网,且对公网依赖有要求,可以探索设备的局域网API(LAN Mode)。响应速度更快,且不占用外网带宽

  3. 异常处理机制

    • Code 5008:IP白名单限制。如果在公网调试遇到此错误,需在控制台将您的服务器公网IP加入白名单

    • Code 5009:请求频率超限。接口限制为 1次/秒,请注意您的重试机制,避免被封禁

五、 总结

通过芯步的开放接口,二次开发30A电源控制器在技术上具有高可行性。开发者无需关注底层硬件通信,只需关注业务逻辑

  1. 使用HTTP API打通从服务器到硬件的控制链路。

  2. 利用状态查询接口构建计量数据库。

  3. 编写业务逻辑代码,实现基于实时功率和电能的精细化控制策略。

这套方案能有效帮助数据中心、无人值守机房或智能工厂实现高功率设备的数字化运维与节能降耗。