CATALOG

这是一份关于将芯步智能分控PDU(5位)集成到自有项目中的解决方案。我会尽量写得像技术同事在跟你聊方案,带点口语化,但干货满满。

一、 这东西能干啥?

咱们先对齐一下目标。在仓储场景里,经常有需要远程重启服务器、控制风机、或者给叉车充电桩定时断电上电的需求。

这款 芯步 智能分控PDU(5位) ,说白了就是一条“长了脑子”的插排。最大的特点是:5个插孔是独立的,你可以只关第3口的监控屏,不影响第1口的交换机在跑。

我们要做的,就是通过它开放的 HTTP 接口,把它“塞”进你自己的仓库管理系统里。

二、 准备工作:让设备“上网”

要把代码写进去,前提是PDU必须连上你仓库的WiFi。这一步不用写代码,直接在芯步的后台或小程序搞定就行:

  1. 注册与创建:去芯步官网注册账号,建一个“工作台”(相当于你的项目空间)。

  2. 配网(重点)

    • 频段限制:这设备只认 2.4G WiFi。仓库里如果是那种混合双频(2.4G/5G同名)的路由器,最好单独开一个2.4G的访客网络给它用。

    • 操作方式:有两种,看你方便。

      • 电脑端:在“物联网控制台” -> “网络配置”里,输入WiFi名和密码,然后点击“为设备配置此网络”,按提示操作即可

      • 小程序:微信搜“芯步小程序”,登录后在“网络配置”里添加WiFi信息

  3. 确认上线:配网成功后,设备指示灯会从闪烁变为常亮(或呼吸效果),同时在控制台的设备列表里能看到状态变为“在线”。

小贴士:如果你是在内网环境(比如仓库没有外网),这设备也支持纯局域网私有化控制,直接把控制命令发到设备的内网IP就行,不用过云端

三、 核心对接:代码怎么敲?

这是最关键的一步。芯步的接口设计得很直白,就是标准的 HTTP GET/POST 请求,不管你是用Java、Python还是Node.js,甚至是用Windows的cmd命令行都能测。

1. 找到你的“身份证”

登录控制台,找到你的设备详情页。你需要拿到两个东西:

  • AppID:你的应用ID。

  • Device ID:这一台PDU的唯一编号(长得像一串数字)。

2. 接口逻辑(以“开/关”为例)

假设你想关闭第3个插孔

  • 请求地址https://api.yoyoiot.com/orderset/(具体以官方最新文档为准)

  • 参数内容

    • appid: 你的AppID

    • deviceid: 设备ID

    • channel: 3 (这就是分控的魅力,指定第3位)

    • status: 0 (0代表关,1代表开)

    • ts: 当前时间戳(防重放攻击)

    • sign: 签名(把上述参数排序后MD5加密)

3. 实操案例(口语化解释)

场景:仓库下班了,你想把5个插座全关了,省电又防火。

  • 如果是Python写脚本

关键点解析

  • 签名算法:这个是新手最容易踩坑的地方。芯步的接口要求把参数(如appid, deviceid, ts)按字母序排好,加上appsecret一起加密。千万别把密钥写在前端代码里(比如小程序或网页JS),这样会被扒走。一定要放在你自己的后端服务器上调用。

  • 分控逻辑channel参数就是你要控制的那个孔。假设你仓储机柜里:

    • 1口接路由器(永远不断电)

    • 2口接监控硬盘录像机(断电重启)

    • 3口接除湿机(定时控制)你的代码里只需要分别调用channel=2channel=3即可,互不干扰。

四、 实战场景:仓储自动化流水线

光说开关没意思,我们来看看怎么把它融入你的业务系统:

第一种场景:远程重启“死机”的摄像头

痛点:仓库里的摄像头偶尔卡死,必须人去拔插头。解决:在你的监控平台里加一个“重启”按钮。代码逻辑

  1. 调用接口:channel=4&status=0(断电)

  2. time.sleep(5)(等待5秒)

  3. 调用接口:channel=4&status=1(通电)全程不用派人去高高的货架旁找插头。

第二种场景:电量阈值联动

痛点:大功率设备(如充电桩)同时开启导致跳闸。解决:如果你的系统能读到PDU的电量数据(通过查询接口),写一个判断:if 当前总功率 > 3000W:执行 关闭优先级最低的设备(比如channel=5)

第三种场景:定时任务(由你的系统下发,不用设备自带)

虽然设备App可能有定时,但为了统一管理,你可以写一个定时任务(Cron Job):

  • 12:00:仓库午休,关闭照明回路