CATALOG

共享设备柜的痛点是“远程可控”——用户付款后需要自动供电,归还后自动断电。芯步的5位PDU插排支持HTTP接口独立控制每个插座,正好可以解决这个问题。以下是完整的对接方案。

解决方案:基于芯步智能PDU的共享设备柜控制系统对接方案

1. 概述与场景解读

在共享设备柜(如共享工具箱、充电宝柜、快递柜或共享办公设备柜)场景中,核心需求是实现“远程授权使用”。当用户在线支付成功后,系统需自动为对应柜门的设备(如充电器、工具)供电。

本方案基于芯步 智能PDU(5位分控) 产品进行设计。该设备核心优势在于:

  • 独立分控:5个插座位均可通过HTTP请求独立控制通断,对应5个不同的柜格。

  • 响应迅速:命令下发到设备响应时间约为80-120ms

  • 接口友好:开放标准HTTP接口,无需理解复杂的物联网底层协议。

2. 对接准备与环境搭建

在编写代码前,需要进行硬件配置与开发密钥获取。

2.1 硬件配网设备依赖2.4G WiFi网络

  1. 给PDU插排通电。

  2. 使用“芯步”小程序或官网控制台,输入现场的Wi-Fi名称和密码。

  3. 通过手机的2.4G热点或蓝牙进行近场配网,直到设备指示灯停止闪烁(表示在线)。

2.2 获取开发凭证登录芯步后台,进入“工作台” -> “物联网控制台” -> “开发设置”。

  • AppID:应用的唯一标识。

  • AppSecret:密钥,用于生成签名。提示:初期对接可开启“调试模式”暂时忽略签名校验,方便快速测试

2.3 获取设备ID在控制台的“设备列表”中,查看已配网的PDU设备。

  • device:通常是一串数字,这是后续控制指令的目标对象。

3. 核心接口调用逻辑

芯步采用统一的API入口,通过参数order中的不同字段来区分控制哪一路插座。

3.1 请求地址(HTTP POST)

https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={timestamp}

支持HTTP和HTTPS,同时也支持MQTT协议

3.2 请求头与鉴权

  • Content-Type: application/json

  • 鉴权机制:在URL参数中携带sign(签名)和ts(时间戳)。签名算法通常为MD5或SHA256(拼接AppSecret)。

3.3 核心控制指令表(针对5位PDU)根据“共享设备柜”场景,你需要关注以下order参数来控制对应插座

业务场景指令动作 (order字段)说明
用户开启柜门 (供电){"power1":"1"}1号插座通电,设备识别号对应柜格1
用户关闭柜门 (断电){"power1":"0"}1号插座断电
管理员强制重启{"reset":{"relay":[1],"interval":3000}}针对2号位设备进行断电3秒后重启
批量全开/全关{"power":"1"}{"power":"0"}整个PDU所有插座同时通断

注:命令中的power1power2对应PDU上的物理插孔编号。

3.4 请求示例假设柜格3被用户租用,需要授权供电(开启第3个孔位):

返回{"code":200}代表指令下发成功

4. 业务系统集成步骤

为了将PDU无缝接入你的共享设备柜项目中,按照以下架构进行开发:

步骤一:订单支付回调触发用户在小程序/APP完成支付 -> 你的后端收到支付成功通知 -> 触发“控制逻辑”

步骤二:封装控制服务在你的后端代码中,封装一个通用函数 controlPdu(deviceId, port, status)

  • 输入:设备ID,插座位(1-5),状态(0/1)。

  • 逻辑:组装上述JSON -> 生成时间戳和签名 -> 发起HTTPS请求。

  • 注意:针对高频操作,使用连接池以减少延迟。

步骤三:状态同步与异常处理利用芯步的消息推送机制(Webhook),将设备状态变更加密推送到你的服务器。

  • 场景:如果物理按键被人强行按下,你的后台通过推送能实时获知并更新数据库状态。

  • 超时重试:若接口返回非200或网络超时,应设置重试机制(如间隔1秒重试3次)。

5. 关键注意事项与优化

为了确保商用稳定性,在对接中需关注以下细节:

5.1 签名与安全

  • 如果在公网环境,请一定要关闭调试模式,严格校验sign,防止设备被恶意伪造指令控制。

  • 支持私有化部署,若项目要求数据不出内网,可将API部署在局域网环境中

5.2 硬件选型确认

  • 确认采购的是 “分控” 型号(UNI-PDU-FK-5),只有分控才能独立控制每个柜子的电。如果是总控,5个孔位只能同时通断,不适用于共享柜

5.3 体验优化

  • 异步处理:控制设备的HTTP请求虽然快(~100ms),但不应阻塞支付成功的返回。采用消息队列(MQ)处理设备指令,先返回“操作中”状态给前端,通过WebSocket推送最终的开柜成功结果。

通过上述方案,你可以像调用普通云厂商API一样,在2小时内完成5路共享设备柜的电路控制集成。核心逻辑在于:用户的订单状态 -> 映射到PDU的具体插座位 -> 执行HTTP指令。