芯步的8路控制器提供了标准HTTP API接口,可通过云端API或本地局域网两种方式实现远程控制。以下是完整的接入方案,涵盖硬件选型、接口调用流程和典型场景代码示例。
解决方案:基于芯步开放接口接入8路线路集中控制箱
1. 概述
芯步提供的8路智能控制器(如型号:UNI-KZQ-TY-8或UNI-KZQ-DC-8)支持通过标准HTTP API接口进行远程控制。系统架构通常由第三方业务系统(云端/本地服务器) -> 芯步云平台 -> 设备端 组成。对于要求低延迟或内网环境,设备支持本地局域网控制。
适用设备:
UNI-KZQ-TY-8:交直流负载通用,支持AC/DC,单路最大2200W阻性负载。
UNI-KZQ-DC-8:直流专用,适用于电磁锁、售货柜等,单路最大1000W。
8路分体控制箱:集成化的导轨式安装控制箱,适用于工业电控场景。
2. 接入前准备
在开始开发前,需要完成以下硬件配置与密钥获取:
硬件配网使用“芯步”小程序或物联网控制台,为设备配置2.4GHz WiFi网络,确保设备指示灯常亮(在线状态)。
获取凭证(API密钥)登录芯步开放平台(ThingBoot Open),在“开发设置”中获取以下三个关键参数
AppID:应用的唯一标识。
AppSecret:接口密钥(严禁泄露,用于签名计算)。
Device ID:8路控制箱的设备唯一ID(可在控制台设备列表查看)。
3. 接口鉴权与控制流程
芯步的API基于签名认证机制。注意,签名是通过AppID、AppSecret和当前时间戳组合计算得出的,每次请求都必须携带实时计算的签名,防止接口被恶意篡改。具体步骤如下:
3.1 签名计算规则
为了防止接口被篡改,每次请求都需要通过MD5算法动态生成签名 signsign = md5( md5(AppSecret) + ts )
AppSecret:先进行一次MD5加密得到字符串S1。ts:当前Unix时间戳(秒),例如1715673600。将
S1与ts字符串拼接,再进行一次MD5加密,得到最终的sign。
3.2 核心API接口
接口地址
https://api.thingboot.com/{AppId}/device/control/请求方法
POST请求参数(Query)
sign(签名)、ts(时间戳)请求体(Body)
application/json
JSON 数据包格式:
4. 核心功能实现:控制8路线路
芯步的order指令设计比较灵活,支持单路控制、批量控制和暂态控制三种模式。
4.1 单路独立控制
8路对应的JSON键名为 power1 至 power8,值可以是 1(开)、0(关)或布尔值。
开启第3路:
{"power3": 1}关闭第5路:
{"power5": 0}
4.2 批量全控
如果你需要一键开启所有回路,可以使用batch字段,比循环发送8次单路指令效率更高。
全开:
{"batch": 1}全关:
{"batch": 0}
4.3 特殊场景控制
在智能家居或模型控制中,经常需要点动控制(开一下马上关)。可以通过 point(先通后断)和 reset(先断后通)实现。
点动(第2路接通2秒后自动断开):
{"point2": "2000"}复位(第2路断开2秒后自动接通):
{"reset2": "2000"}
5. 实战:代码接入示例
芯步的开放接口支持任意支持HTTP请求的编程语言,以下展示Shell和Python两种典型接入方式的代码逻辑。
签名生成逻辑(核心):
5.1 Linux / Mac 系统使用 CURL 命令测试
假设你要开启第1路,可以按以下格式拼接curl命令:
5.2 集成到业务后台(Python 示例)
以下是一个封装好的函数,展示了如何将8路控制箱集成到你的现有业务系统中:
6. 进阶配置:本地局域网控制
如果你们不希望数据经过云端(公网),或者对控制延迟要求比较高(如工业机械臂配合),可以将设备切换到局域网模式。控制箱支持在本地局域网内直接通过HTTP请求控制,不依赖外网。此时请求地址不再是 api.thingboot.com,而是设备在路由器中被分配的内网IP地址(如 http://192.168.1.100/control)。这种情况下也需要签名,但在局域网中你也可以选择关闭鉴权以简化流程,具体可以参考对应产品的局域网开发文档。
适用场景:内网环境、无外网、要求毫秒级响应。
请求地址
http://{设备内网IP}/control?sign={sign}&ts={ts}数据格式:与云端API完全一致。
7. 总结
通过上述步骤,你可以利用芯步的标准化HTTP接口,快速实现8路线路集中控制箱的远程化改造。该方案具备高扩展性(支持单路/批量/点动控制)和灵活的部署模式(云端/混合/本地),适用于智慧农业灌溉、智能楼宇照明、共享设备柜及工业自动化等多种场景。