CATALOG

芯步的智能PDU开放HTTP接口,支持二次开发实现设备状态监测与控制。以下方案以分控PDU 5位为例,讲解如何通过接口完成5路独立电源的监测功能。

1. 解决概述

1.1 背景与需求

在现代数据中心、机房及工业自动化场景中,对每一台接入设备的电源状态进行精细化监测至关重要。传统PDU(电源分配单元)仅提供总电源输入监测,无法定位具体某台设备(如服务器A、交换机B)的断电、过载或能耗异常。

芯步智能分控PDU(以5位型号为例)支持5路独立输出控制,每路插座均可独立进行电压、电流、功率因数的采集与开关控制。本方案的目标是指导开发者如何利用其开放平台提供的HTTP接口,在无需网关的情况下,通过局域网或互联网快速搭建一个属于您自己的“5路设备电源状态监测系统”。

1.2 技术优势

  • 免开发硬件:直接购买成品PDU,无需嵌入式开发。

  • 接口开放:基于标准HTTP协议或MQTT,适用于任何支持HTTP请求的编程语言(Python, Java, Node-RED, PHP等)

  • 低成本接入:开放平台长期免费,支持私有化部署和局域网通信,数据不外流

2. 系统设计

为实现“5路设备电源状态监测”,我们采用 “云+端”“局域网+端” 的轻量级架构。

2.1 架构拓扑

  • 物理层:芯步智能PDU(5位分控版)。设备通电并连接Wi-Fi(2.4G)或通过网口接入网络。

  • 接口层:芯步开放平台API(云端模式)或设备局域网API(纯局域网模式)。

  • 业务层(您的系统)

    • 数据采集模块:定时轮询PDU状态或接收设备主动推送。

    • 逻辑判定模块:判断每路电流/功率是否在阈值内。

    • 告警/记录模块:状态变化时记录日志或发送通知。

2.2 通信流程

  1. 您的服务器调用 Get device status 接口。

  2. 平台鉴权成功后,向物理PDU下发指令。

  3. PDU返回当前5个插孔的实时电量参数(电压、电流、功率)。

  4. 您的系统解析JSON数据,更新UI界面或触发告警。

3. 二次开发核心步骤

二次开发的核心在于调用Get device status接口。以下是具体的对接流程,您可以在30分钟内完成第一个接口的调试。

3.1 环境准备

  1. 注册账号:访问芯步官网注册开发者账号。

  2. 获取凭证:登录控制台,在“开发设置”中获取 AppIDAppSecret(开发者密码)

  3. 绑定设备:使用App或后台将您的PDU设备绑定至该账号,获取 Device ID(设备编号)。

3.2 接口鉴权(Signature计算)

为了安全,所有API请求需携带签名。根据官方文档,签名规则如下:

  • 参数ts(时间戳,10位秒级)、sign(签名)。

  • 公式sign = md5( md5(AppSecret) + ts )

示例伪代码(Python):

3.3 实现“5路状态监测”的API调用

核心接口路径通常为 device/datadevice/status(具体Path请参考官方最新文档)。请求地址格式:https://api.thingboot.com/{AppID}/device/status/?device_id={ID}&ts={ts}&sign={sign}

预期返回数据结构解析:服务端返回的JSON数据中,data字段下会包含 outletssockets 数组,该数组长度为5,对应PDU的1-5位插孔。返回数据示例及说明:

3.4 关键业务逻辑开发

针对“状态监测”这一主题,您需要在业务代码中增加以下逻辑以增强实用性:

逻辑一:设备离线/掉线监测

  • 场景:如果第3路连接的服务器宕机或电源损坏,PDU电流会显示为0。

  • 实现:当接口返回 outlet_id:3current < 0.05power < 0.5(排除误差),但开关状态为 on 时,判定为“设备异常断电”。

逻辑二:能耗趋势分析

  • 技术方案:将每次轮询获取的5路 ele(电量)数据存入本地数据库(如MySQL或InfluxDB)。

  • 前端展示:通过ECharts或Grafana绘制5条不同颜色的折线图,展示每路设备24小时内的功耗变化。

逻辑三:被动接收状态(可选进阶)

  • 除了“主动轮询”(Pull模式),如果您的服务器拥有公网IP或使用MQTT,可以配置消息推送。当PDU状态变化(如有人按了物理按钮、功率剧烈波动)时,平台会主动向您的服务器推送状态,实现毫秒级响应

4. 典型应用场景拓扑

以下是一个典型的无人值守机房监测看板架构,您可以根据此图规划自己的程序模块:

*(示意图描述:左侧是5台服务器分别接入PDU的5个插孔,中间是互联网/路由器,右侧是开发者电脑上的Python脚本及监控大屏)*

在此拓扑中:

  1. 您的监测脚本运行在一台PC或NAS上。

  2. 脚本每5秒循环一次,依次读取5个插孔的数据。

  3. 如果检测到“插孔2”功率过低,脚本调用芯步控制接口 远程重启 插孔2(即先下发关,延时2秒再下发开),实现自动化故障恢复。

5. 常见问题与

  1. 关于轮询频率:官方单设备访问频率限制为 1次/秒。对于5路监测,您设定的轮询间隔不应低于2秒,以免触发限流导致IP被封。若需实时性,启用MQTT推送模式。

  2. 网络稳定性:该PDU支持5组WiFi网络设定。在配置时,同时添加主路由和备用热点,防止单一网络故障导致设备“失联”。

  3. 初学开发者:如果您不擅长代码,可以使用 Node-RED(低代码工具)通过HTTP Request节点快速搭建监测流,5分钟内即可看到数据输出。

通过以上步骤,您可以利用芯步智能分控PDU的开放接口,快速构建一套针对5路独立设备的电源监测与预警系统,实现机房的数字化精细管理。

插排产品方案:
配电柜智能改造:怎样把8位远程控制总控PDU集成到项目中
查看 >>
如何对接8位总控智能PDU以实现设备电源批量管控
查看 >>
车间设备电源控制:怎样把智能5位总控PDU接入到软件项目中
查看 >>
展会现场设备机柜电源控制:怎么把8位机柜智能插排接入到项目中
查看 >>
弱电间机柜设备电源管理:如何将机柜智能插排(5位)集成到自己的项目中
查看 >>
电源场景方案:
怎样在医院设备机柜电源管理中集成智能硬件来实现5路设备电源总控
查看 >>
共享设备机房机柜电源控制:如何将机柜分控PDU5位接入到项目中
查看 >>
仓储设备电源控制:怎么将8位远程控制总控PDU对接到项目中
查看 >>
无人值守门店机柜电源控制:如何把机柜智能插排(8位)集成到自己的项目中
查看 >>
弱电间机柜设备电源管理:如何将机柜智能插排(5位)集成到自己的项目中
查看 >>
5路用途方案:
怎样在医院设备机柜电源管理中集成智能硬件来实现5路设备电源总控
查看 >>
如何在共享麻将馆设备机柜电源控制中对接智能设备以实现集中控制5路设备电源
查看 >>
怎么在数据中心机柜中集成智能硬件以实现远程打开关闭5路设备电源
查看 >>
怎样二次开发智能分控PDU5位以实现5路设备电源状态监测
查看 >>
怎么在设备运维机柜远程电源管理中集成智能硬件来实现5路总控电源开关
查看 >>