整体硬件由供电单元、主控单元、电机驱控控制单元、电机到位检测单元、无线通讯单元和其他外设单元组成。具体如下图所示:
供电单元
本款自动售货机主要包含以下几个部件的供电:
主电源:需要输入 24V 直流电作为主电源。该 24V 直流电可以直接接 MOS 管作为售货机中电机的输入电源。
无线通信单元:供电电压为 4V,可以使用 LM2576 这款 DC-DC 稳压芯片将 24V 转换成 4V。LM2576 最大可驱动 3A 的负载,有优异的线性和负载调整能力,完全满足无线通信单元的需求。
主控单元芯片:一般供电电压为 3.3V,可以采用 S-1206B33-U3T1G 这款 LDO 芯片将 4V 电压降到 3.3V。
主控单元
该单元采用 STM32F103RET6 作为主控芯片。该芯片是一款基于 ARM 架构的高密度性能 32 位微处理器,主频最大可支持 72MHZ,多达 11 个定时器,内部集成了复位电路、低电压检测、调压器和精确的 RC 振荡器电路。更多关于该芯片的信息,请参考 STM32F103RE 芯片介绍;更多关于该芯片的数据规格,请参考 STM32F103RE 数据规格书。
电机驱动控制单元
控制单元组成
该单元采用 74HC595 (74HC595 数据规格书)八位串行输入、并行输出的移位寄存器用于提供输出各个电机的控制信号。
每个电机的两端各接一个 FDS9945 N 沟道 MOS 管(FDS9945 数据规格书)和一个 FDS9958 P 沟道 MOS 管(FDS9958 数据规格书),其中
FDS9958 的源极接 24V,栅极接信号线,漏极接电机的正极。
FDS9945 的源极接 GND,栅极接信号线,漏极接电机的负极。
当 FDS9945 和 FDS9958 两个 MOS 管同时导通的时候,电机便可转动。
组件数量
信号线:需要 11 条。本款自动售货机总共有 10 个货道,需采用 10 个电机,理论上总共需要 20 条信号线。为了节约资源,可以将所有电机的负极连接到同一个 FDS9945 的漏极,这样可以将信号线减少至 11 条。
芯片:需要 2 颗串联。一颗 74HC595 只支持 8 位串入并出,为了满足 11 位数据需求,可以将两颗 74HC595 串联,这样最多可支持 16 位信号数据。
电机到位检测单元
该单元采用 74HC165 (74HC165 数据规格书)八位并行输入,串行输出的移位寄存器用于检测电机转动位置情况。
当电机转动到一定位置时,到位开关输出低电平信号给 74HC165 并行输入脚。主控单元读取 74HC165 串行输出脚,检测到某一位低电平时,将对应位的电机停转,避免多次掉落物品。
由于 I/O 口资源有限,开发者可以让 10 个电机共用一个到位开关。
无线通信单元
该单元主要用于售货机和云平台的信息交互,可以采用涂鸦 LZ201-CN CAT1 模组。这是由涂鸦智能开发的一款 LTE Cat.1 蜂窝网络模组。关于该模组的数据规格,请参考 LZ201-CN CAT1 模组规格书。
模组主要由一个高集成度的 LTE Cat.1 芯片 UIS8910DM 及其外围电路构成,其中:
内置了 LTE Cat.1 网络通信协议栈和丰富的库函数。
内嵌了 Cortex A5 应用处理器和 Cat.1bis 调制解调器。
集成了 64MB Flash,128 MB SRAM。
支持 USB、UART、SDIO、SPI、I2C、I2S 和 ADC 等接口。
支持显示屏、摄像头、键盘矩阵、麦克风、喇叭、充电、MicroSD 卡和 USIM 卡等外设。
开发者只需要通过移植涂鸦 MCU SDK,即可以实现对 App、云、售货机三者的通信控制。当然,这部分也可以用 WB3S Wi-Fi 模组或者其他通信模组来代替。
其他外设单元
该单元的外设,可以根据开发者自身需求自行设计添加,比如
增加网络指示灯,用于表示当前网络状态。
增加电源指示灯,用于表示当前电源状态。
增加温度传感器,用于检测售货机内部温度。
增加掉落检测装置,用于检测物品是否确实掉落,形成反馈。
增加多路按键,用于需要实现某种特定的按键功能。
增加 RS-485 通信接口,用于售货机与其他 RS-485 设备通信,增强联动性。
增加液晶显示单元,用于人机交互。
完成以上硬件的设计后,可以根据结构尺寸,设计对应的 PCB,并且完成焊接,测试等工作。下图为参考示例: