芯步的8路智能分体控制箱采用HTTP API和MQTT双协议,可以无缝接入现有的软件项目。以下方案从硬件选型、接口协议、核心代码实现到支付联动全流程展开,开发者可直接参考落地。
解决方案:基于芯步开放接口的自动售货柜控制系统集成方案
1. 硬件选型与场景适配
在自动售货柜(无论是弹簧机、履带机还是多门格子柜)项目中,8路智能分体远程设备集中控制箱 是整个执行系统的核心。根据芯步产品库,集成时应关注以下硬件特性以满足售货场景需求:
产品型号:通常选用 UNI-KZQ-TY-8(通用型)或 UNI-KZQ-DC-8(直流型,适用于电磁锁场景)。
核心作用:该控制箱提供8路独立继电器输出。在售货柜中,这8路可以直接对应:
1-8号货道电机:控制弹簧旋转,推动商品出货。
或者 格子柜门锁:直接控制8个独立柜门的电磁锁开关。
电气参数:该设备支持 MAX 20A 的总负载,单路支持 2200W(阻性)/ 350W(感性),足以驱动售货柜内的220V交流电机或直流锁具。
2. 接口协议选择与鉴权
芯步的设备支持标准的 HTTP(云控制)与 MQTT(实时状态同步)协议。针对售货柜这种需要高实时性(秒开)的场景,采用 双协议混合架构
控制指令(下发):使用 HTTP API。支付成功后由业务后端发起一次性指令,简单可靠。
状态上报(心跳):使用 MQTT。实时监听设备在线/离线状态及输出反馈。
通用鉴权参数所有请求均需携带 AppID、sign(签名)和 ts(时间戳)。签名算法通常为 MD5 或约定的加密方式,详见开放平台文档。
3. 关键集成步骤与代码实现
要将控制箱接入软件项目,需经过 “设备注册 —— 指令下发 —— 状态确认” 三个核心步骤。
第一步:设备注册与初始化在芯步控制台获取设备的唯一标识符 device(设备ID)。假设我们部署了一台售货柜,其控制箱ID为 123456789。
第二步:实现核心控制接口(以 Python/Node.js 为例)当客户支付成功,业务系统需要通知控制箱闭合第3路继电器500毫秒以推出可乐。
API 端点http(s)://api.thingboot.com/{AppID}/device/control/请求方式:POST关键参数
| 参数名 | 值 | 说明 |
|---|---|---|
device | 123456789 | 8路控制箱的设备ID |
order | {"relay3":1, “relay_close_delay”:0.5} | relay3:1:闭合第3路。delay: 0.5秒后自动断开,避免电机烧毁。 |
代码逻辑(伪代码)
第三步:异步状态确认(MQTT回调)由于 HTTP 请求只返回“平台收到指令”而非“设备已出货”,为了保证交易的确定性,需要利用 异步消息推送 或 MQTT 订阅功能:
当继电器实际吸合时,控制箱会通过 MQTT 向服务器推送
device_status消息。软件项目接收到该消息后,更新订单状态为“已出货”,确保资金安全。
4. 高级应用:复杂场景与故障处理
第一种场景:大规模组网售货柜若是部署了上百台售货柜的无人超市,需实现批量控制与维护。
群控功能:接口
device参数支持逗号分隔(如123,124,125),可以一次性向最多 100台 设备下发指令,实现整店灯光总控或紧急锁柜。网关中继:如果现场Wi-Fi信号差,可以选择支持网关转发的型号。调用时传入
gateway参数,由网关将指令转发给信号覆盖不良的控制箱。
第二种场景:交易闭环与异常断电由于售货机常用语 “先扫码,后取货” 的模式,软件侧做如下逻辑:
锁定货道:用户扫码选品时,软件侧记录所选货道(如03),在设备端暂时锁定该路继电器(业务锁)。
支付验证:支付宝/微信回调成功后,软件侧调用上述 API 解锁并触发该货道 (relay3)。
防呆机制:如果 API 返回 504 设备不可用 或超时,应立即触发退款流程,避免客诉。
5. 硬件接线与点位映射
在开发阶段,软件工程师需与硬件实施方确认 “逻辑点位映射表”
| 软件控制参数 (Order) | 硬件端子号 | 对应售货柜物理设备 | 动作 |
|---|---|---|---|
relay1 | COM1 / NO1 | 左侧货道电机 (雪碧) | 吸合0.3秒 |
relay2 | COM2 / NO2 | 中间货道电机 (可乐) | 吸合0.3秒 |
relay3 | COM3 / NO3 | 智能锁 (格子门3号) | 吸合5秒 |
relay_dc | V+/V- | 柜内LED照明灯带 | 吸合(常开) |
注意:若是控制 直流电磁锁(格子柜),通常需要配合 12V直流电源 接入设备,且指令模式通常设置为 点动(脉冲) 模式,通电瞬间开锁后立即断电,以保护锁芯。
通过以上集成步骤,开发者可以在不关注底层硬件通信细节的情况下,利用芯步的标准 HTTP API,快速实现软件项目对 8 路控制箱的远程控制,构建稳定可靠的自动售货系统。