2026贸泽电子M-Design创意设计大赛(第二季)工业控制-遥控小车
该项目使用了STM32F103 单片机、L298N 驱动模块、HC-05 蓝牙模块与 TT 电机,实现了四轮独立驱动遥控移动平台的设计,它的主要功能为:蓝牙指令控制电机运转,OLED 显示状态,实现差速转向与远程移动控制。
标签
嵌入式系统
蓝牙
遥控小车
STM32F103C8T6
tt电机
杜~~
更新2026-06-09
6

四轮独立驱动蓝牙遥控小车 项目总结报告

参赛方向:工业控制(电机控制)
核心:STM32F103 + 双 L298N+HC-05+OLED + 四轮独立控制

一、项目介绍 & 创意介绍

项目介绍

本项目立足于工业控制领域中的移动机器人电机控制技术,以STM32F103C8T6高性能单片机作为主控核心,搭建一套完整的四轮独立驱动式蓝牙遥控小车控制系统。整体系统由主控单元、无线通信单元、电机驱动单元、状态显示单元与四轮执行机构共同组成。

项目采用双L298N驱动方案,分别对四个TT直流减速电机进行独立驱动控制,结合HC-05蓝牙串口模块实现无线远程指令接收。设备上位机通过蓝牙下发控制指令,单片机完成数据接收、指令解析、PWM信号输出,从而控制小车完成前进、后退、原地左转、原地右转、紧急停止等基础运动动作。同时搭载0.96寸OLED显示屏,实时刷新当前接收指令编号与设备运行状态,实现人机交互可视化。

该小车本质为微型工业AGV移动机器人验证平台,复刻了工业移动底盘的差速控制、无线遥控、状态监测等核心功能,可用于学习工业直流电机调速原理、差速转向算法、串口无线通信、嵌入式闭环控制系统开发,具备极强的教学价值与工程实践价值。

ba8cd7132a3ed904a716476ce9dd3666.jpg

创意介绍

  • 四轮独立驱动,差速转向控制:区别于传统两轮驱动小车,本项目采用四轮独立驱动架构,四个电机可单独进行转速与正反转控制。通过左右车轮差速控制实现精准转向,运动灵活性更高,适配复杂行驶路况,完全贴合工业AGV小车的底层控制逻辑。
  • 无线蓝牙远距离操控:搭载HC-05主从一体蓝牙模块,摒弃传统有线控制模式,有效消除线束束缚,操控距离可达10米左右,支持手机APP实时下发指令,适配远程自动化控制场景。
  • 可视化人机交互系统:配置0.96寸OLED高清显示屏,无需上位机即可本地实时展示蓝牙接收指令、小车运行模式,开发人员可快速判断系统运行状态,方便硬件调试与故障排查。
  • 模块化设计,拓展性极强:硬件电路分层独立,软件代码函数封装,整体结构简单、成本低廉、极易复刻。可在此项目基础上拓展红外避障、循迹、姿态传感器、自动巡航等功能,可直接迭代为巡检机器人、自动搬运AGV小车。
  • 工业级电机控制逻辑:采用定时器PWM占空比调速方式,模拟工业电机调速方案,帮助开发者掌握工业场景下直流电机启停、制动、无级调速的核心技术。

二、硬件与 PCB 介绍

1. 硬件组成

  1. 主控:STM32F103C8T6 单片机,整车控制核心,统筹外设、电机、通信、语音逻辑。
  2. 动力部分:HX25035-4A 驱动芯片替代 L298N,驱动 4 个 TT 直流减速电机,四路 PWM 调速。
  3. 人机交互:0.96 寸 I2C-OLED 屏幕显示状态;6 个独立按键本地操控;3 路 LED 做系统状态指示灯。
  4. 语音模块:SPI 存储语音模块 + 串口 TTS 播报模块,分别实现固定提示音、实时文字播报。
  5. 无线通信:HC-05 蓝牙模块,串口连接主控,实现手机 APP 蓝牙遥控。
  6. 电源:板载稳压电路,外部宽压输入,分出 3.3V(MCU / 外设)、5V(电机 / 语音)双路供电;配套小车底盘、接插件、线材。

2. PCB 设计

PCB 按主控、电源、电机、外设分区域布局,强弱电分区布线;强弱电源分开铺铜,芯片就近添加去耦电容;高速 SPI/I2C 走线缩短,统一 PH2.54 接插件,便于拆装调试。

image.png


三、方案框图 & 设计思路

方案框图

image.png

整体架构:HC-05蓝牙模块 → STM32F103主控单片机 → 双L298N驱动模块 → 四路TT电机;STM32同步联动OLED显示屏完成数据可视化。

硬件层面采用分层设计思想:电源部分独立供电,电机电源与单片机逻辑电源分区布线,降低电机启停产生的电磁干扰;通信部分利用USART3串口对接HC-05蓝牙模块;电机控制部分利用TIM1、TIM2通用定时器输出8路PWM信号,分别控制四个电机转速与方向;显示部分通过I2C通信驱动OLED屏幕,实时同步系统运行数据。

软件采用模块化编程思想,将程序划分为初始化函数、蓝牙接收函数、电机PWM控制函数、指令解析函数、OLED显示函数。系统上电后完成外设初始化,开启串口接收中断,持续监听蓝牙指令;一旦捕获有效指令,通过Switch分支结构解析指令代码,并调用对应的电机控制函数,同时刷新OLED屏幕数据,形成“指令接收—解析—执行—反馈”的闭环控制系统。

四、原理图

image.png


五、软件流程图 & 关键代码介绍

软件流程图

image.png

关键代码介绍

  1. 蓝牙中断接收:通过串口中断实时获取蓝牙数据,完成指令采集;
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if(huart->Instance == USART3)
{
if(uart3_rx_bufx >= '0' && uart3_rx_bufx <= '9') //读取蓝牙接收的数据
{
ly_data = uart3_rx_bufx - '0';
}
HAL_UART_Receive_IT(&huart3, &uart3_rx_bufx, 1); //开启串口,中断便于下一次进入中断
}
}
  1. PWM 电机控制:使用 TIM1、TIM2 输出 8 路 PWM,独立控制 4 个电机正反转与转速;
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_2);
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_3);
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_4);

HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1);
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_2);
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_3);
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_4);
  1. 指令解析:switch 语句判断 1-5 数字指令,执行前进、后退、左转、右转、停止;
if(ly_data)
{
sprintf(shuzhu,"dat:%d",ly_data);
OLED_ShowString(2,2,shuzhu);
switch (ly_data)
{
case 1:motor_retreat();break; //后退
case 2:motor_stop();break; //停止
case 3:motor_advance();break; //前进
case 4:motor_left();break; //左转
case 5:motor_right();break; //右转
}
ly_data=0;
}
  1. OLED 显示:实时刷新接收的指令数据,直观展示系统状态。
sprintf(shuzhu,"dat:%d",ly_data);
OLED_ShowString(2,2,shuzhu);

六、功能展示图及说明

  1. 蓝牙发送3:小车前进,OLED 显示对应数据;
  2. 蓝牙发送1:小车后退,电机同步反向运转;
  3. 蓝牙发送4/5:小车左右转向,实现差速控制;
  4. 蓝牙发送2:小车立即停止,所有电机断电。

image.png

image.png

七、设计中遇到的难题和解决方法

  1. 问题:电机转动时干扰蓝牙,导致指令错乱
    解决:优化供电,增加电源稳定性,分开模拟 / 数字供电。
  2. 问题:PWM 通道多,电机动作逻辑混乱
    解决:封装独立电机函数(前进 / 后退 / 停止等),代码模块化管理。
  3. 问题描述:直接传输数字变量会导致屏幕显示乱码,无法正常展示接收指令。

解决:引入sprintf格式化函数,将数字变量强制转换为标准字符串格式后再调用OLED显示函数;同时优化屏幕刷新频率,避免高频刷新造成的屏幕卡顿、花 屏问题。

八、竞赛心得体会

在本次电子设计竞赛过程中,我完成了从硬件选型、电路接线、原理图绘制、程序编写、功能调试到整体项目整合的全流程开发,全方位提升了嵌入式硬件开发与电机控制相关专业能力。

硬件层面,我深入掌握了STM32单片机外设使用方法、L298N驱动模块工作原理、蓝牙串口通信接线规范,理解了电磁干扰的产生原理与对应的降噪、稳压解决方案,积累了大电流电机控制系统的布线与调试经验。软件层面,熟练掌握定时器PWM配置、串口中断回调机制、模块化编程思想,能够独立完成多外设协同工作的嵌入式程序开发。

本次以四轮独立驱动小车为载体,系统学习了工业控制领域AGV移动底盘的差速控制原理,明白了小型民用小车与工业移动机器人的共通之处,打破了单纯课本理论的局限性,深刻理解闭环控制系统、电机无级调速、无线远程控制的工程应用价值。

同时项目开发过程也暴露了我初期电路布局不合理、代码冗余度高、故障排查效率低等问题。通过不断调试优化,我的问题分析能力与工程思维得到极大提升。后续我计划在此项目基础上,增加姿态传感器、自动循迹、定点巡航等高级功能,进一步向工业级智能巡检AGV靠拢。本次竞赛收获颇丰,是我嵌入式学习道路上宝贵的实践财富。

软硬件
电路图
附件下载
ProPrj_遥控小车_2026-05-25.epro2
pcb
遥控车.zip
代码
团队介绍
ESP32-S3 和stm32开发方向,我们熟练掌握其双核架构、Wi-Fi / 蓝牙通信、多协议外设驱动,可独立完成物联网终端、无线数据传输系统的固件开发;在51 单片机开发方向,我们扎实掌握 UART、SPI、I2C 等基础通信技术,为电平转换模块的多协议适配调试提供了坚实支撑;在硬件设计方向,我们具备完整的器件选型、电路设计、打样调试能力,可独立完成各类嵌入式接口扩展模块的开发。
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号