CATALOG

芯步智能PDU的开放接口基于HTTP协议,可以对接任何支持HTTP请求的软件项目。下面从接口架构、对接流程、核心功能实现、异常处理四个方面,给出完整的技术解决方案。

一、 接口架构与通信逻辑

要将智能PDU(总控5位)集成到软件项目中,首先需要理解其通信模型。基于芯步的开放接口设计,设备与服务器之间采用请求-响应机制。

  1. 核心架构:设备通过WiFi(2.4G)连接互联网或局域网,软件项目通过HTTP协议调用云端API或直接与设备局域网IP通信。

  2. 总控逻辑:所谓的“[总控]5位”,通常意味着设备拥有5个输出位,通过API既可以单独控制每一位(分控),也可以全局控制所有位。

  3. 接口特点

    • 普适性:只要是支持HTTP请求的语言(Java, Python, PHP, Go, JavaScript等)均可对接

    • 私有化部署:若在内网环境,设备支持自建消息服务器,可以不依赖外网直接通过局域网IP控制

    • 签名机制:为了防止接口被恶意调用,所有请求通常需要携带签名(sign)、应用ID(AppID)和时间戳(ts)

二、 对接准备与参数配置

在编写代码前,需要在芯步平台完成准备工作,并在代码中封装好基础配置。

  1. 平台注册与设备添加

    • 注册芯步账号,创建工作台(Workbench)。

    • 在物联网控制台中,通过“网络配置”将现场WiFi信息登记并推送给PDU设备。注意WiFi必须是2.4G频段

    • 获取设备的唯一标识符:Device ID

  2. 获取API凭证

    • 在控制台获取 AppIDAppKey(或 AccessToken)。AppID用于标识你的应用,AppKey用于生成签名。

  3. 通用请求参数封装在代码中,你需要封装一个基础的HTTP请求模块。所有请求都应包含以下共性参数:

    • appId:平台分配的ID。

    • ts:Unix时间戳(秒或毫秒),用于防止重放攻击(通常允许前后5分钟误差)。

    • sign:签名。一般规则为将 AppKeyDeviceIDts 等参数按字典序排序后拼接,进行MD5或SHA256加密。

三、 核心功能实现:开关控制与状态查询

针对“总控5位”设备,以下是实现远程电源管理和监控的三个核心编码步骤。

1. 获取设备当前状态

在管理界面展示设备状态是第一步。调用 设备状态查询 接口。

  • 接口地址https://api.yoyoiot.com/orderstatus

  • 方法:POST / GET

  • 业务参数deviceId = “你的设备ID”

  • 返回解析:接口返回JSON数据,通常会包含一个portsrelays数组,长度为5,对应5个插座位的开关状态(0关/1开),以及实时的电流、电压、功率等电能参数。

  • 代码逻辑

2. 实现远程分控与总控

这是业务核心,例如用户扫码支付后,系统需要闭合某个特定插座位的电路。

  • 接口地址https://api.yoyoiot.com/ordercontrol

  • 核心参数

    • deviceId:设备ID。

    • port:端口号。对于5位设备,一般取值为 1, 2, 3, 4, 5。若实现“总控”,通常发送特殊的端口号(如 0 或 all),或者循环调用1-5次。

    • status:1 开启,0 关闭。

  • 业务流程图(以自助洗衣机为例)

    1. 用户下单:前端请求后端订单接口。

    2. 业务校验:后端检查用户余额、设备占用状态。

    3. 下发指令:调用API向 DeviceIDPort 1 发送 status=1

    4. 结果反馈:接口返回成功(如 {"code":0, "msg":"success"})。

    5. 设备动作:PDU设备物理闭合继电器,对应插座通电,洗衣机启动。

    6. 计时扣费:根据洗衣时长,到期后再次调用API发送 status=0 断电。

3. 监听设备状态回调(Webhook/MQTT)

为了实时知道用户是否拔插头、或者电流过载,配置消息推送机制,而不是一直轮询。

  • 配置回调URL:在芯步控制台设置服务器接收地址(如 https://yourdomain.com/iot/callback)。

  • 事件订阅:订阅 status_change(开关变化)、overload(过载报警)、power_change(功率变化)。

  • 代码处理:接收POST请求体中的JSON数据,解析出DeviceID和Port状态,更新本地数据库中的设备状态,实现实时同步。

四、 特殊场景处理与性能优化

在对接“总控5位”设备时,针对自助洗衣设备机柜的恶劣环境,需要注意以下两点:

  1. 网络断连与重试机制商业WiFi环境可能存在掉线风险。芯步设备端自带WiFi重连机制,并支持配置5组WiFi,会自动切网

    • :在软件侧,若下发指令超时(Timeout),不要立即无限重试。应采用“随机间隔(或逐次增大间隔)”策略,重试3次,间隔2秒。同时,利用设备状态查询接口做前置校验:仅在确认设备在线时下发控制指令。

  2. 本地局域网直连(高稳定方案)如果自助洗衣房网络环境较差,或不允许数据经过外网,可以利用设备的私有化部署能力。

    • 方案:查询设备通过DHCP获取的局域网IP。软件项目直接请求 http://[设备IP]/control

    • 优势:响应延时从秒级降低到毫秒级,且完全断网可用。这需要你的服务器(或上位机)与PDU处于同一局域网段。

五、 总结

将芯步智能PDU[总控]5位对接到自助洗衣系统中,本质上是对HTTP API的标准调用过程。总体接入成本很低,开发者只需处理好签名生成端口映射逻辑(即设备物理位置与软件界面席位号的对应关系)。通过上述方案,你可以快速实现“扫码通电、计时断电、过载保护”等完整的商业闭环功能。