[开源免费]基于 STM32 的物流分拣小车设计与实现

基于 STM32 的物流分拣小车设计与实现

在智慧物流持续发展的今天,分拣环节的自动化与智能化程度成为提高仓储效率的关键指标之一。传统人工分拣不仅成本高,而且效率有限,因此研发一款 基于 STM32 的智能物流分拣小车 具有非常重要的工程价值。本文将从系统架构、核心功能设计到软硬件实现流程,对该项目进行完整的技术解析。


在这里插入图片描述

源码分享

直接放到之前写的文章里了,免费开源,下载学习即可。

https://blog.csdn.net/weixin_52908342/article/details/155599451

一、项目背景

随着电商行业的爆发式增长,现代仓储系统对自动化的需求越来越高。分拣小车需要具备线路循迹、目标识别、货物分类运输、无线通信等能力,以适应复杂的仓库环境。本项目基于 STM32F103C8T6 微控制器,通过多传感器融合实现定位和路径规划,并通过无线通信将货物编号与分拣指令交互,实现低成本、可扩展的物流小车解决方案。


二、系统总体设计

整个系统由四大模块构成:
在这里插入图片描述

1. 控制核心模块(STM32F103)

  • 负责各传感器数据采集
  • 执行循迹算法、巡航控制
  • 管理电机驱动策略
  • 负责通信协议解析与任务调度
  • 控制夹爪、舵机等执行机构

STM32F103 的 72MHz 主频和丰富的外设(ADC、PWM、USART、IIC 等)能够满足实时控制需求。


2. 巡线与避障模块

为了让小车在仓库场景中稳定运行,系统采用多种传感器组合:

(1)红外循迹传感器

  • 多路反射式红外阵列(如 5 路寻迹)
  • 黑白线识别,输出高低电平
  • 通过加权算法实现路径偏差计算

(2)超声波避障模块

  • HC-SR04 或 US-015
  • 实时检测前方障碍物距离
  • 与电机控制联动,避障减速或绕行

(3)电子罗盘 / 姿态传感器(可选)

  • MPU6050 或 QMC5883
  • 场景较复杂时辅助方向校正

通过多传感器融合,小车可以在仓库道路网络中可靠巡线、转弯和避障。


3. 电机驱动与机械结构

(1)驱动电机

  • 两个直流减速电机
  • L298N / TB6612FNG 驱动
  • PWM 调速实现平稳控制

(2)分拣机构

  • 舵机驱动小型机械臂或推杆

  • 可实现:

    • 左侧投送
    • 右侧投送
    • 中间货箱投放

(3)车体结构

  • 亚克力板或 3D 打印组件

  • 低摩擦滑轮

  • 可根据不同场景设计为:

    • 轨道式分拣车
    • 巡航式 AGV 小车

4. 无线通信模块

物流系统需接入后台管理系统,因此采用以下通信方式:

(1)ESP8266(WIFI)

  • 适用于仓库局域网
  • 支持 MQTT / HTTP / Websocket
  • 接收分拣任务 → 解析货物编号 → 更新路线

(2)nRF24L01(短距通信)

  • 成本低、抗干扰强
  • 可用于多个小车之间的协作调度

(3)蓝牙模块(调试用)

  • 现场校准、速度调整、发送指令

通过无线通信,小车可随时接收新的分拣命令,实现智能调度。


三、软件系统设计

1. 主控流程框架

flowchart TD A[系统初始化] --> B[传感器检测] B --> C[路径循迹控制] C --> D{是否到达分拣点?} D -- 是 --> E[执行分拣动作] E --> F[继续下一个目标] D -- 否 --> B

2. 循迹算法(加权偏差法)

使用 5 路红外:

编号 S1 S2 S3 S4 S5

根据黑线位置输出:

偏差 = (-2)*S1 + (-1)*S2 + 0*S3 + (1)*S4 + (2)*S5
  • 偏差 > 0:右偏 → 左轮加速
  • 偏差 < 0:左偏 → 右轮加速

算法简单高效,适合 MCU 实时计算。


3. 分拣执行策略

分拣小车经过 RFID 或二维码采集站时,会读取货物信息:

  • 获取 商品编号
  • 通过通信模块查询该编号的 配送区域
  • 匹配后续路线
  • 到达对应分拣点时执行动作:

如:

if(target == LEFT_BIN){
    Servo_SetAngle(30); // 推入左侧
}
else if(target == RIGHT_BIN){
    Servo_SetAngle(150); // 推入右侧
}

动作完成后自动复位,继续巡航。


4. 路线规划(简单版)

分拣仓库通常采用站点式路径:

起点 → S1 → S2 → S3 → S4 → 返回点

后台可实时更改任务:

  • 单程配送
  • 循环任务
  • 多车协作规划

在增强版本中可使用 A* 或 Dijkstra 进行动态路径规划。


四、硬件原理图(逻辑框架)

主要连接结构:

  • STM32 —— PWM → 电机驱动
  • STM32 —— ADC → 传感器输入
  • STM32 —— UART → ESP8266 / 蓝牙
  • STM32 —— IIC → MPU6050
  • STM32 —— PWM → 舵机

各模块都采用标准 2.54mm 接口,方便扩展维护。


五、系统调试与优化

1. 机械调试

  • 校准车轮间距
  • 调整循迹传感器高度
  • PID 参数调试(速度平稳性提升明显)

2. 软件调试

  • 优化防抖与滤波(避免误触发)
  • 添加速度补偿,减少打滑
  • 增加 watchdog 防止程序卡死

3. 无线通信优化

  • MQTT QoS1 保障任务不丢失
  • 增加心跳包实时监控小车在线状态

六、项目实现效果

最终完成的小车可实现:

  • 自动巡线
  • 超声波避障
  • 自动识别货物编号
  • 根据指令在不同地点自动投放货物
  • 支持后台指挥与路线调整
  • 多车可协作完成多个货物的并行分拣任务

在小型仓库或教学创新项目中表现优秀。


七、总结

基于 STM32 的物流分拣小车体系结构清晰、成本低、可扩展性强,是不错的智能物流入门级项目。通过本项目不仅能掌握 MCU 控制、传感器融合、电机调速、无线通信等核心技术,还可以进一步拓展 AGV 规划、多车协作、AI 识别等方向。

该项目非常适合课程设计、毕业设计以及智能物流相关的产品雏形开发。

posted @ 2025-12-06 14:01  申公豹本豹  阅读(0)  评论(0)    收藏  举报