芯步的开放接口采用标准HTTP协议,签名机制与主流物联网平台类似,对接门槛较低。PDU设备的控制核心是调用device/control接口,通过order参数中的power1~power5字段实现5个插位的独立开关。以下方案涵盖网络架构、接口调用、代码示例和安全策略。
1. 解决概述
本方案的目标是利用芯步开放的HTTP API接口,将工业标准的5位机柜PDU(电源分配单元) 无缝对接到现有的车间管理系统或自定义平台中。
通过该方案,可以实现以下目标:
远程电源控制:随时随地通过软件界面控制PDU上任何一个插位的通电与断电。
设备故障自愈:当检测到PLC、工控机、传感器等前端设备无响应时,系统自动触发PDU端口断电重启。
能耗监测与分析:获取PDU各端口的实时电流、电压、功率因数等数据,用于车间能耗核算。
分级权限管理:在生产管理中,赋予班组长重启权限,赋予工程师配置权限。
2. 硬件选型与网络拓扑
2.1 智能PDU选型要点
要将PDU对接到芯步平台,PDU本身必须具备联网通信能力。选择具备以下特征的PDU:
通信协议:支持 MQTT、Modbus TCP 或 HTTP 协议(通过4G/以太网)。
控制粒度:必须是每端口独立控制(5位独立继电器),而非总控。
数据采集:支持读取每位的电流和电压(这是判断负载状态的关键)。
*注:若现有PDU仅支持Modbus RTU(RS485接口),需通过“串口服务器”或“DTU”将数据转换为MQTT/HTTP后接入芯步平台。*
在芯步体系中,PDU作为一个“下位机执行设备”,其控制指令由您的业务服务器通过芯步的开放接口下发。网络拓扑如下:
flowchart TD
A[工厂管理人员] -->|操作| B[车间中控系统
或Web应用]
B -->|HTTP API调用
携带签名| C[芯步云平台]
C -->|下发指令| D[智能PDU
机柜电源分配单元]
D -->|供电/断电| E[工控机/PLC/交换机]
D -->|实时电压/电流| C
C -->|消息推送| B3. 核心对接流程与接口实现
芯步的接口逻辑非常清晰:以HTTP POST 请求为主,通过多重动态签名验证身份。以下是针对5位PDU的具体对接细节。
3.1 准备工作
在芯步开发者后台进行以下配置
获取凭证:记录
AppID和AppSecret(开发者密码)。设备添加:将PDU添加到平台,获取唯一的
Device ID。确认指令集:查阅该PDU的产品手册,确认开关命令格式(通常为
power1至power5)。
3.2 接口鉴权(签名计算)
所有接口请求均需携带 sign 和 ts 参数。签名算法规则如下
第一步:将
AppSecret进行MD5加密,得到encrypt_secret = md5(AppSecret)。第二步:拼接时间戳,计算签名
sign = md5(encrypt_secret + ts)。
3.3 关键接口代码示例
以下是针对 5位PDU 的具体对接逻辑。
需求场景 1:单独控制第3个端口重启假设车间监控发现第3号设备(如车床电脑)无响应,需要执行断电重启。
请求地址
https://api.thingboot.com/{Your_AppId}/device/control/?sign={sign}&ts={timestamp}请求方法:POST
请求Body
执行流程 (Node.js 示例):
需求场景 2:批量控制与状态查询
一键关闭所有端口(紧急断电)
查询设备状态:通过平台提供的
设备状态查询接口或 消息推送机制(Webhook/MQTT),获取当前各端口的电流、开关状态,用于在车间看板上展示“负载功率”。
4. 高级策略:自动化联动控制
单纯的远程开关只是第一步,结合传感器数据才能实现真正的“智能化运维”。利用芯步的规则引擎,可以配置以下场景:
温控联动
场景:机柜温度过高(如夏季空调故障)。
触发:温湿度传感器上报温度 > 40℃。
动作:调用PDU接口,按顺序关闭非核心设备(如第4、5位连接的测试设备),或者开启第6位连接的散热风扇(如果是6位PDU)。
看门狗策略
场景:工控机(连接在第2位)死机,Ping不通。
触发:您的业务服务器检测到IP无法连接。
动作:调用
power2=0等待10秒,调用power2=1。通过硬件重启解决死机问题,无需人工进入车间。
5. 对接注意事项与排障指南
在实施过程中,需关注以下几个技术细节以确保稳定性:
GPIO与执行器的映射关系
芯步的标准接口文档常以
power字段泛指继电器。但对于5位PDU,必须确认索引是从0开始还是1开始,以及是否支持字母编号。请一定要通过“获取设备详情”的接口反向验证该PDU是否返回了power4、power5等状态字段。
网络延时与重试机制
芯步接口响应通常在 80-120ms 左右。但在车间环境(尤其是Wi-Fi信号干扰大的地方),PDU可能会掉线。
策略:您的业务系统需实现“异步重试”。例如:调用关闭接口后,若返回设备不在线,需将该指令存入本地队列,待设备恢复心跳后自动补发。
6. 总结
通过芯步的开放接口对接5位机柜PDU,本质上是利用其 “透传控制” 能力。开发者无需关注底层复杂的物联网通信(Zigbee、4G、Wi-Fi的差异),只需关注HTTP协议层面的 “设备ID+命令字” 组合。
实施小结
看接口:复用芯步标准的签名机制与
/device/control/路由。拆命令:将PDU的物理插孔编号与
power字段进行硬编码映射或配置表映射。做逻辑:在您的业务代码中重点实现“定时重启”和“故障自愈”逻辑,以最大化利用PDU的硬件价值。
首先在芯步控制台开启“调试模式”(此时不校验签名),用Postman直接下发命令测试PDU的响应,确认无误后再封装到正式的生产代码中。