博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于单片机,Java、小程序技术领域和毕业项目实战
✌️技术范围:单片机,STM32,52/51单片机、小程序、SpringBoot、SSM、JSP、Vue、PHP、Java、python、爬虫、数据可视化、大数据、物联网、机器学习等设计与开发。
主要内容:免费开题报告、任务书、中期检查PPT、代码编写、🚢文编写和辅导、🚢文降重、长期答辩答疑辅导、一对一专业代码讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。
🍅文末获取源码联系或点击下方⬇️🍅
👉👉👉点击找到我们👈👈👈
👉👉👉请点我👈👈👈
累计帮助2000+完成优秀毕设
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及🚢文编写等相关问题都可以给我留言咨询,希望帮助更多的人

在这里插入图片描述

20 个相关毕业设计备选题目

  1. 基于 STM32 的智能自动售货控制系统设计与实现
  2. 基于 ESP-01S 的物联网售货柜运维管理系统开发
  3. 基于 MQTT 的嵌入式自助售货终端软硬件设计
  4. 基于 Android 的智能售货机远程运维 APP 开发
  5. 基于 STM32 与 OLED 的自助售货人机交互终端设计
  6. 基于步进电机的智能售货出货执行机构控制系统
  7. 基于 CN-TTS 语音播报的嵌入式售货终端设计
  8. 基于 WiFi 的嵌入式售货机商品数据监测系统
  9. 基于 SG90 舵机的智能货柜自动启闭控制系统设计
  10. 基于单片机的三路商品自助售卖一体化系统
  11. 基于物联网的小型自助售货设备软硬件联合开发
  12. 基于 STM32 的售货机库存与价格运维管控系统
  13. 基于按键交互的嵌入式自助购物终端程序设计
  14. 基于 MQTT 通信的售货机移动端远程控制系统
  15. 基于嵌入式语音提示的智能自助售卖装置设计
  16. 基于 ULN2003 驱动的多通道售货出货控制系统
  17. 基于 Android Studio 的售货设备运维管理平台设计
  18. 基于 OLED 屏幕的嵌入式售货可视化交互系统
  19. 基于 STM32 与 WiFi 的小型智能售货一体机开发
  20. 基于嵌入式技术的轻量化自助售货终端完整设计

项目研究背景

新零售模式持续下沉至校园、便利店、写字楼等小型场景,轻量化小型自助售货设备凭借占地小、部署灵活的优势逐步普及,嵌入式单片机、物联网无线通信技术成为小型售货终端的核心实现载体。当前市面多数简易自助售货装置存在智能化程度不足的问题,多数设备仅支持单一商品售卖,缺乏多商品库存动态管控、可视化人机交互与远程运维能力;硬件执行模块集成度低,出货、货柜启闭、语音提示功能割裂,需多套控制单元协同,设备布线复杂、维护成本高;传统售货终端多采用本地独立存储,无 WiFi 无线数据交互通道,运维人员需现场完成调价、补货操作,工作效率低下;同时现有终端人机交互逻辑简陋,缺少分层式购物界面、购物车缓存、支付反馈等完整购物流程,用户操作门槛较高。伴随嵌入式物联网、Android 移动端开发技术的成熟,以 STM32 单片机为核心、搭配 WiFi 模块实现设备与移动端联动的轻量化售货方案具备落地条件。本课题整合步进电机出货、舵机货柜控制、OLED 交互、语音播报、MQTT 无线通信与 Android 远程运维功能,构建一体化小型智能售货终端,弥补传统简易售货设备功能单一、运维繁琐、交互体验差的行业痛点,满足小型点位低成本自助售卖的实际应用需求。

摘要

本课题以轻量化小型自助售货场景为研究对象,设计一套基于 STM32F103C8T6 单片机的物联网智能售货控制系统。系统硬件集成 ULN2003 步进电机驱动模块、SG90 舵机、0.96 寸 OLED 显示屏、CN-TTS 语音模块与 ESP-01S WiFi 通信模块,实现三路商品自动出货、货柜电控启闭、可视化界面交互、语音提示等本地终端功能;软件层面设计分层按键交互逻辑,完成广告页、商品详情、购物车、支付、运维设置多页面流转,支持库存校验、商品调价、批量补货本地操作。依托 MQTT 协议通过 WiFi 模块完成终端与 Android 运维 APP 的数据双向传输,APP 授权后可远程执行设备运维管控、商品信息查看操作。开发过程采用模块化编程思路拆分硬件驱动与业务逻辑,完成全流程购物逻辑、设备运维功能调试与整机联调测试。测试结果表明,系统可稳定完成商品选购、自动出货、支付反馈、远程运维全流程业务,硬件成本低、部署便捷,适配校园、社区微型自助售卖场景,为轻量化嵌入式物联网售货终端提供可行实现方案。

总体方案

一、硬件设备选型与说明

  1. STM32F103C8T6 主控单片机

    作用:整机数据运算、外设驱动逻辑控制、业务流程程序运行;选型理由:属于本科嵌入式开发主流芯片,资源充足、开发资料完善,成本低廉,可同时驱动电机、舵机、屏幕、语音、WiFi 多外设;使用场景:作为售货终端核心控制单元,统筹所有外设协同工作;架构逻辑:接收按键输入信号,运算后下发驱动指令至各执行外设,同时处理 WiFi 收发的 MQTT 数据。

  2. 0.96 寸 OLED 显示屏

    作用:可视化展示广告、商品信息、库存、购物车、支付、运维设置界面;选型理由:低功耗、单色显示清晰、驱动代码成熟,适配单片机 IO 口驱动;使用场景:全流程人机交互界面输出载体;架构逻辑:接收主控发送的字符、数字缓存数据,实时刷新页面内容。

  3. ULN2003 驱动模块 + 28BYJ-48 步进电机(三路)

    作用:驱动三路电机分别完成三种商品自动出货动作;选型理由:ULN2003 可放大单片机驱动电流,28BYJ-48 步进电机控制精度高、扭矩适配小型出货结构,本科项目常用;使用场景:用户支付成功后执行商品出料;架构逻辑:主控输出脉冲时序信号,经 ULN2003 放大后驱动电机旋转。

  4. SG90 微型舵机

    作用:模拟货柜电控启闭;选型理由:体积小、角度可控、接线简单,满足小型货柜开关模拟需求;使用场景:运维模式下远程 / 本地打开货柜;架构逻辑:主控输出 PWM 波形控制舵机旋转角度,实现柜门开合。

  5. CN-TTS 语音播报模块

    作用:库存不足、支付成功语音提示播报;选型理由:内置字库,串口指令驱动即可播放中文,无需复杂语音算法;使用场景:购物流程异常、支付完成时语音反馈用户;架构逻辑:主控通过串口发送文本指令,模块解码后播放对应语音。

  6. ESP-01S WiFi 无线模块

    作用:基于 MQTT 协议实现单片机终端与 Android APP 双向无线数据传输;选型理由:体积小巧、串口通信,适配 STM32,物联网入门级 WiFi 模块,MQTT 开发案例丰富;使用场景:上传商品库存价格数据、接收 APP 下发运维控制指令;架构逻辑:作为硬件网络通信桥梁,完成设备与移动端数据交互。

  7. 独立按键模块(5 路按键)

    作用:本地终端页面切换、数量增减、支付、功能确认等交互操作;选型理由:无源独立按键,电路简单,程序扫描识别逻辑易于实现;使用场景:本地用户购物、运维人员本地设备操作。

  8. 开发计算机

    作用:程序编译烧录、Android APP 开发、整机调试;配置要求:搭载 Windows 系统,具备串口、USB 接口,满足 Keil、Android Studio 软件运行需求。

二、整体硬件搭建方案

以 STM32 单片机为核心主控,各类外设通过串口、GPIO、PWM 引脚与主控完成电路接线;OLED、五路按键挂载通用 GPIO 口;三路步进电机驱动模块、SG90 舵机分别占用独立 IO 控制引脚;CN-TTS 语音模块、ESP-01S WiFi 模块使用硬件串口实现数据通信;整机由直流电源统一供电,各外设共用共地回路,搭建一体化嵌入式售货终端硬件实物,计算机通过 USB 下载器完成程序烧录与在线调试。

核心功能

一、基础交互功能

  1. 多页面分层 OLED 显示功能

    实现效果:设备开机循环展示广告界面、商品主页、商品详情、购物车、支付提示、运维设置六类界面;操作逻辑:不同按键触发页面跳转,界面实时刷新商品名称、单价、剩余库存、选购数量;使用场景:用户本地选购、运维人员查看设备状态;核心作用:提供可视化人机交互窗口;实现目标:完整展示购物全流程数据,直观反馈设备运行状态。

  2. 五路按键本地操控功能

    实现效果:5 个按键分配页面切换、商品选择、数量增减、支付、运维入口不同指令;操作逻辑:程序循环扫描按键电平,识别短按动作并匹配对应业务逻辑;使用场景:无手机 APP 时用户线下自助购物、本地运维;核心作用:提供终端本地输入交互渠道;实现目标:仅通过按键即可独立完成完整购物与本地运维操作。

  3. CN-TTS 语音播报提示功能

    实现效果:检测到库存不足、完成支付时自动播放对应中文语音;操作逻辑:主控判定业务状态后,串口发送语音文本指令至语音模块;使用场景:用户选购异常、支付完成时听觉反馈;核心作用:补充屏幕文字提示,提升交互友好度;实现目标:关键业务节点自动语音提醒用户。

二、核心购物业务功能

  1. 多商品库存校验与选购功能

    实现效果:设备存储三类商品价格、库存数据,库存为 0 时禁止进入商品详情;操作逻辑:进入商品页面时程序读取库存缓存,不足则屏幕弹出文字提示;使用场景:用户挑选商品;核心作用:避免无货下单逻辑错误;实现目标:实时管控商品库存,拦截无效选购操作。

  2. 购物车缓存管理功能

    实现效果:缓存用户已选商品种类、单价、选购数量,支持翻页、增减数量、清空退出;操作逻辑:本地内存开辟缓存区域存储选购数据,按键操作修改缓存数值;使用场景:用户批量选购多件商品;核心作用:临时保存选购清单,统一结算;实现目标:支持多商品叠加选购,统一支付。

  3. 自动支付与出货执行功能

    实现效果:购物车发起支付后屏幕提示支付成功,5 秒自动返回主页,同步驱动对应步进电机出货;操作逻辑:按键 5 触发支付流程,校验购物车非空后扣减对应商品库存,下发电机驱动指令;使用场景:用户结算订单;核心作用:完成订单扣款与实物出料;实现目标:支付后自动执行出货,同步更新本地库存数据。

三、设备运维管控功能

  1. WiFi-MQTT 无线数据通信功能

    实现效果:终端实时上传商品库存、价格数据至 Android APP,接收 APP 下发运维指令;操作逻辑:ESP-01S 连接局域网 MQTT 服务,设备定时上报商品信息,监听运维主题指令;使用场景:远程运维查看、远程管控设备;核心作用:打通终端与移动端数据链路;实现目标:实现售货终端无线远程管控。

  2. 商品价格修改运维功能

    实现效果:本地按键或 APP 远程调整三类商品售价;操作逻辑:进入运维界面选择调价功能,切换商品后增减价格数值,保存至本地存储;使用场景:运维人员更新商品定价;核心作用:灵活修改商品销售单价;实现目标:本地、远程双渠道完成价格调整。

  3. 商品批量 / 单独补货功能

    实现效果:单类商品数量增减、一键将所有商品补满至最大库存;操作逻辑:补货界面切换商品调整数量,一键指令批量重置全部商品库存上限;使用场景:运维人员补充货品;核心作用:高效管理商品库存存量;实现目标:支持精细化单商品补货与快速全品类补货。

  4. 电控货柜启闭控制功能

    实现效果:本地运维界面或 APP 远程控制 SG90 舵机转动,模拟货柜开关;操作逻辑:下发舵机 PWM 控制信号,切换 0°/90° 角度实现柜门开合;使用场景:运维人员开箱整理货品;核心作用:远程、本地双渠道控制货柜;实现目标:无需手动开箱,电控管控货柜。

  5. Android APP 密码授权运维功能

    实现效果:APP 输入正确密码后方可访问运维管控界面;操作逻辑:APP 发起运维请求时附带密码校验字段,单片机校验通过才执行运维指令;使用场景:管理人员远程运维设备;核心作用:限制无关人员修改设备商品数据;实现目标:保障售货设备运维操作权限安全。

技术路线

  1. 硬件开发语言:C 语言

    选型理由:STM32 单片机标准开发语言,资源占用低、执行效率高;课题用途:编写主控驱动程序、购物业务逻辑、MQTT 通信解析、外设控制代码。

  2. 移动端开发语言:Java

    选型理由:Android Studio 原生开发语言,本科移动端开发主流技术;课题用途:开发运维管理 APP 界面、MQTT 客户端、设备远程控制交互逻辑。

  3. 单片机开发工具:Keil MDK5

    选型理由:STM32 官方适配编译工具,支持程序编译、在线调试、固件烧录;课题用途:编写、调试、下载 STM32 终端控制程序。

  4. 移动端开发工具:Android Studio

    选型理由:谷歌官方 Android 开发 IDE,界面可视化拖拽、模拟器调试;课题用途:搭建运维 APP 页面,实现 WiFi-MQTT 通信客户端开发。

  5. 电路辅助设计工具:Altium Designer

    选型理由:本科电子电路课程通用绘图软件;课题用途:绘制售货终端硬件原理图、PCB 接线参考图。

  6. 通信协议:MQTT 协议

    选型理由:轻量级物联网通信协议,数据包体积小,适配 ESP-01S 低带宽传输;课题用途:实现单片机终端与 Android APP 之间商品数据、运维指令双向收发。

  7. 嵌入式图形驱动:OLED 屏幕专用驱动库

    选型理由:开源成熟单片机屏幕驱动代码,无需自研底层显示逻辑;课题用途:驱动 OLED 刷新多页面文字、数字交互界面。

  8. 串口驱动技术:UART 异步串口通信

    选型理由:单片机外设通用通信方式,接线简单、开发难度低;课题用途:主控与 WiFi 模块、语音模块的数据交互。

  9. 电机 / 舵机驱动技术:GPIO 时序、PWM 脉冲调制

    选型理由:单片机基础 IO 控制技术,本科嵌入式必学知识点;课题用途:控制步进电机出货、SG90 舵机货柜启闭。

  10. 测试辅助工具:串口调试助手、MQTT.fx

选型理由:轻量化免费调试软件,操作简单;课题用途:调试单片机串口输出、MQTT 通信报文收发,验证无线数据交互功能。
  1. 程序架构技术:模块化分层编程
选型理由:结构化基础编程思想,便于代码拆分维护;课题用途:将驱动层、购物业务层、通信层代码拆分,降低程序耦合度,便于功能调试与修改。

项目演示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

关于我们

博主本身从事开发软件开发、有丰富的编程能力和水平、累积给上千名同学进行辅导、有自己的独立工作室,目前只专注做自己专业领域的事。团队人员有多年架构师设计经验、多人有参加校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,有较为丰富的相关经验。期待与各位高校教师、企业讲师以及同行交流合作。

项目案例

下面是我们团队最新的定制开发的项目平台,广受到大家客户的喜爱!大家看看我们开发出来的部分效果图吧!!!
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

源码获取

⬇️⬇️⬇️ 整理不易,欢迎点击下方大家一起交流学习⬇️⬇️⬇️

👉👉👉点击交流👈👈👈

更多推荐