这是一个基于芯步(ThingBoot)8路通用智能控制器(UNI-KZQ-TY-8) 的自动售货柜技术实现方案。
该方案利用控制器的8路独立继电器输出和标准HTTP API接口,实现对售货柜8个货道(或锁控机构)的交直流负载控制,同时结合其开放接口和私有化部署能力,确保支付流程的实时性与数据安全。
1. 项目概述与选型依据
在自动售货柜场景中,核心需求是远程控制电磁锁、弹簧电机或小功率直流推杆等执行机构。传统的售货机主控板往往存在协议封闭、依赖中间件等问题。
采用芯步UNI-KZQ-TY-8 智能通用控制器具备以下优势:
8路独立控制:单设备即可覆盖8个货道,减少设备数量,降低BOM成本。
交直流兼容:直接支持DC 12V或AC 220V负载输出,无论是直流电磁锁还是交流220V制冷/照明系统,无需外接繁杂的中间继电器。
极简API接口:通过HTTP请求直接对接,任何后端语言(Java, Python, Go, PHP)均可快速集成,无需编写复杂的嵌入式固件。
部署灵活:支持WiFi 2.4G直连,无需网关;且支持私有化局域网部署,确保支付数据在内网传输,提高安全性。
2. 系统设计
本方案采用“云-管-边-端”的轻量化架构:
端侧(执行层) :芯步8路控制器。直接连接货道电磁锁/电机(直流)或照明灯(交流)。
边缘侧(主控层) :售货柜内的触摸屏一体机(或安卓工控板)。负责运行用户交互界面,集成芯步的HTTP调用库。
通信层:Wi-Fi / 4G路由器。主控通过局域网或公网调用API。
平台层(可选) :如无需本地服务器,直连云平台;亦可部署私有化服务器,所有指令仅在局域网内闭环。
工作流程
用户在触摸屏点击“购买” -> 扫码支付。
支付回调成功后,安卓主控板构造 HTTP GET/POST 请求。
请求携带MD5签名和时间戳,发送至芯步控制器内网IP或云端API。
控制器解析指令,闭合对应第X路的继电器,输出电流给电磁锁 -> 柜门弹开。
用户取货,关门。
3. 硬件选型与接线详解(针对8路应用)
针对自动售货柜的不同负载类型,推荐以下接线策略:
| 货道类型 | 负载类型 | 控制器型号推荐 | 接线方案 |
|---|---|---|---|
| 格子柜/弹簧货道 | 直流电磁锁/12V电机 | UNI-KZQ-DC-8 (直流版) | 控制器输出端直接接电磁锁正负极,12V电源接入控制器输入端。 |
| 大功率制冷/加热 | 交流 220V | UNI-KZQ-TY-8 (交直流通用版) | 控制器的继电器作为“开关”,串联在220V设备的火线上。 |
| 流水灯带/广告 | 低压灯带 | 任意版本 | 控制器输出端控制灯带的负极或正极,实现“扫码亮灯”引导。 |
关键连接点
电源输入:根据负载选择适配器(如直流12V/10A电源)。
输出端:共8个端口(比如
OUT1到OUT8)。直流接法:负载一端接电源正极,另一端接控制器输出端(低边开关)。
交流接法:火线进控制器“COM”口,出线接负载。
4. 软件对接开发指南
芯步的核心优势在于其开放API。以下是在售货柜控制软件中的具体对接步骤。
4.1 接口协议核心
通信方式:POST / GET
URL格式
局域网私有化模式
http://{设备IP}/control云模式
https://api.thingboot.com/{AppId}/device/control/
鉴权机制:动态MD5签名。防止重放攻击,对支付类场景至关重要。
签名算法
Sign = md5( md5(AppSecret) + ts )
4.2 核心代码逻辑示例 (Python)
假设售货柜主控程序为Python编写,当用户支付成功后,调用此函数控制第3路货道出货。
4.3 高级特性应用
批量控制(Batch Control) :如果用户一次性买3瓶水,可使用批量指令缩短总耗时。
指令示例:
{"batch": [1,3,5]}同时打开1,3,5路。
先通后断(Momentary Mode) :非常适合弹簧旋转货道。
指令示例:
{"point": 2}-> 第2路接通1秒后自动断开,电机转一圈即停,无需上层应用管理延时。
状态反馈机制
虽然控制器主要接受指令,但平台支持消息推送。可以将传感器(如门磁)接入系统,当柜门未关好时,通过HTTP反向推送提醒主控程序,防止冷气流失。
5. 智能化与运维增强
5.1 防拆与安全机制
私有化部署:芯步支持局域网纯内网运行。在信号差的区域(如地下车库售货柜),可以将控制器与主控板配置在同一VLAN,支付指令完全不经过外网,既提高响应速度,又防止中间人攻击。
负载保护:控制器单路支持最大20A电流,总功率4400W。在程序中增加“互锁”逻辑(例如打开1路时自动关闭其他路),防止短路或误操作。
5.2 能耗管理
利用定时任务功能:
设定夜间模式:通过API设置定时,晚上22:00至早上6:00,自动切断第8路(连接广告灯箱或制冷LED灯带),节省电费。
5.3 扩展联动
语音联动:在柜体加装“智能语音音柱Pro”。当用户扫码成功时,主控调用语音API:
{"play:gbk:16":"请取货,柜门已开"},提升用户体验。
6. 总结
基于芯步8路控制器的解决方案,通过标准化的HTTP API将复杂的硬件控制抽象为简单的网络请求。开发者无需深入了解继电器原理或底层驱动,仅需聚焦于售货柜的业务逻辑(支付、UI、库存),即可在2周内完成一款稳定、可控的8路智能售货柜产品的研发与落地。