[开源免费]基于 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. 主控流程框架
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 识别等方向。
该项目非常适合课程设计、毕业设计以及智能物流相关的产品雏形开发。

浙公网安备 33010602011771号