CATALOG

芯步16A智能插座支持HTTP API和MQTT两种开放接口,可以通过分组控制接口实现多设备的批量操作。以下是具体的接入方案。

解决方案:基于芯步开放接口实现16A插座的分组远程控制

1. 概述与准备

本方案的目标是指导开发者如何利用芯步16A智能插座(型号:UNI-QC-16A / UNI-CZ-16A-P)的开放接口,构建一套设备分组控制系统。通过该系统,用户可以实现“一键关停所有空调”、“下班关闭总电源”或“按区域(楼层/房间)控制设备”等功能。

硬件与平台准备:

  • 设备:芯步16A智能插座(已通电并处于待配网状态)

  • 网络:2.4GHz WiFi网络环境。

  • 平台账号:注册芯步开发者账号,登录控制台获取 AppID

2. 设备初始化与接口鉴权

2.1 设备配网

在调用API之前,需要确保插座连接网络。根据芯步产品手册,推荐使用物联网控制台或小程序进行配网:

  1. 登录芯步控制台,进入“网络配置”模块,添加现场2.4G WiFi的SSID和密码。

  2. 开启手机热点(名称与密码需与上一步填写的完全一致)或使用配网模式,设备指示灯停止闪烁即表示配网成功注:16A插座支持WiFi直连,无需额外网关

2.2 接口鉴权与请求定义

芯步开放平台采用 URL 参数签名的方式进行身份验证。所有API请求均需包含 AppIDsign(签名)和 ts(时间戳)。

  • 请求地址http(s)://api.thingboot.com/{AppID}/[接口路径]?sign={sign}&ts={ts}

3. 核心接口实现:设备与分组控制

实现分组控制通常分三步走:获取设备ID -> 创建设备分组 -> 执行分组命令

3.1 单设备控制(基础接口)

在分组之前,首先验证单设备控制逻辑。针对16A插座,控制通断的协议如下(基于搜索到的文档资料)

HTTP 请求示例(向设备下发指令):

  • URI/device/control/

  • Method:POST

  • 参数

    • device:[字符串] 设备唯一ID(从控制台获取)。

    • order:[JSON字符串] 控制指令

3.2 分组管理:创建设备群组

为了实现“分组控制”,首先需要建立一个虚拟群组。虽然具体的“创建分组”接口调用方式依赖于服务端SDK封装,但从控制台逻辑和文档参数可知,分组接口的核心参数为 group(分组ID)

业务逻辑:

  1. 通过芯步控制台界面,预先将需要联动的插座(如:展厅A区1-4号插座)添加至同一个分组,系统会生成一个唯一的 Group ID

  2. 或者 通过调用系统管理类API(若存在)动态创建分组并绑定设备。

3.3 核心功能:分组并发控制(关键步骤)

这是本方案的核心。当需要控制一组设备同时动作时(例如下班时间关闭所有16A空调插座),应调用分组控制接口,而非循环调用单设备接口。后者会导致网络延迟且无法保证原子性。

HTTP 请求示例(分组执行命令):

  • URI/group/control/

  • Method:POST

技术优势说明通过 group/control 接口,平台服务端会并发处理组内设备的命令下发,显著降低响应时间(RT),并避免了遍历循环调用带来的代码冗余

4. 场景化代码实战(伪代码示例)

以下展示如何在业务后端(如Python/Node.js)实现上述分组逻辑:

5. 高级应用和需要注意的点

1. 功率计量数据的利用(仅限带P的型号):如果使用的是带功率计量的版本(UNI-QC-16A-P),设备支持实时上报电压、电流、功率数据。

  • 应用场景:可以设定自动化规则:当分组内某个插座检测到功率低于阈值(如空调待机功耗)超过10分钟,自动切断电源,实现节能

2. 局域网与私有化部署:芯步的16A插座支持局域网HTTP API控制私有化部署

  • 应用:对于要求极低延迟或涉及核心生产设备的场景,采用私有化部署方案,将控制指令完全限制在内网传输,保障安全与稳定性

3. 异步状态同步:由于HTTP请求有时仅代表“指令送达”而非“设备实际执行”,关键业务逻辑中监听MQTT消息推送,获取设备实际断开/闭合的最终状态,以确保数据一致性

4. 接口负载与限制:

  • 设备控制:单次调用最多支持同时控制 100台 设备

  • 分组控制:通过 group 接口批量操作,比循环调用单个设备效率更高。