芯步智能PDU5位[总控]采用标准HTTP接口,签名机制清晰,对接门槛较低。以下方案从接口鉴权、请求构造到代码示例,逐步说明如何将该设备接入创客工坊项目。
一、 解决概述
对于“创客工坊”这类环境,设备机柜通常包含3D打印机、激光切割机、CNC(数控机床)雕铣机、服务器及照明系统。芯步的智能PDU5位[总控](UNI-PDU-ZK-5)允许开发者通过标准的HTTP请求,实现对每个插位的独立通断电控制。
核心对接流程如下:
环境准备:设备配网,获取唯一标识(Device ID)。
接口鉴权:在服务端计算MD5签名(Sign),保障通信安全。
API调用:通过向云端发送POST请求,控制机柜电源。
本地化(可选):利用私有化部署能力,实现局域网内低延迟控制。
二、 核心对接步骤
1. 设备初始化与信息获取
首先需要将智能PDU接入网络并获取凭证。
配网:参考官方手册,通过“物联网控制台”或小程序为PDU配置2.4G WiFi。
获取关键凭证
AppID / AppSecret:登录芯步控制台,在“开发设置”中查看。这是API调用的身份凭证。
Device ID:在控制台设备列表查看PDU背后的标签。该ID用于指定控制哪一台设备。
2. 接口鉴权:签名计算(Sign)
为了防止接口被恶意篡改,芯步采用了双重MD5加密策略。任何控制命令都需要携带动态计算的签名。签名算法逻辑如下:
第一步:将你的
AppSecret进行一次MD5加密,得到Secret_MD5。公式:
Secret_MD5 = md5(AppSecret)
第二步:将
Secret_MD5与当前的Unix时间戳(秒)拼接成新字符串。公式:
temp = Secret_MD5 + ts
第三步:将拼接后的字符串再次进行MD5加密,得到最终签名。
公式:
sign = md5(temp)
3. 下发控制命令
使用计算出的签名和时间戳,向API地址发送POST请求。
请求地址
https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}请求体(Body)数据结构
三、 实战代码演练
以下在项目中用具体代码实现断电重启3D打印机,或定时关闭激光切割机的功能。
场景1:单路控制
目标:当你发现3D打印机出现热端堵塞时,远程立即断电并重启插座1。
场景2:批量与总控
目标:工坊下班,一键关闭所有正在运行的设备(CNC、灯带、3D打印机等)。
如果你购买的是总控版本,命令如下
如果你购买的是 分控版但想批量操作,命令如下
场景3:自我保护(看门狗模式)
目标:实现“先断电,再通电”,强制重启死机的网络设备(如主路由器)。使用 reset 命令,系统会先断开指定插孔,等待间隔毫秒后再重新通电。
注:总控版可能不支持单孔的复位延迟,具体需参照产品手册。
四、 对接本地实际项目(局域网集成)
创客工坊往往网络环境复杂,且有些高精度设备对延迟敏感。芯步的PDU支持私有化部署和局域网直连,这是它的一大优势。
工作原理:设备通过WiFi连接后,如果你的后端服务与PDU处于同一局域网(例如工坊的本地服务器),可以不经过外网云端,直接向设备的局域网IP发送控制指令(具体局域网协议需参考官方进阶文档)。
应用方式
优点:完全离线可用,速度更快(毫秒级响应),数据不外流。
适用场景:工坊内部管理后台、本地运行的自动化脚本(如根据温度自动关火)。
五、 总结
将芯步PDU5位接入创客工坊,主要能解决两大实际问题:一是通过API把电源控制嵌入现有的工单系统或传感器逻辑中;二是利用其私有化部署能力保障局域网内的稳定响应。整个对接技术门槛不高,核心在于按规范处理好签名计算。