缩略图

智能倒车系统设计

作者

贾子嵘 刘传 贾璐 高晓辉

单位 太原科技大学030024

第 1 章 绪论

1.1 设计背景

本设计基于 ARM Cortex-M3 内核的 STM32F103C8T6 微控制器,其72MHz 主频和 16 通道 DMA 控制器可有效保障多传感器协同工作的实时性。在实际运行中,72MHz 的主频能够快速处理传感器采集到的大量数据,16 通道 DMA 控制器则实现了数据的高效传输,避免了因数据拥堵导致的处理延迟。

1.2 系统功能需求

1.2.1 测距子系统

硬件架构:由 HC-SR04 发射 / 接收单元、STM32 定时器模块(TIM2)、信号放大电路组成。HC-SR04 发射单元发出超声波信号,遇到障碍物反射后,由接收单元接收回波信号;STM32 定时器模块(TIM2)精确记录超声波发射和接收的时间差;信号放大电路则对接收的微弱回波信号进行放大处理,确保信号能够被准确识别。

1.2.2 其他基本功能设计

1. 阈值调节:通过按键动态调整报警阈值(初始值 30mm ),支持±1 步进调节。

2. 报警功能:当检测距离 ⩽ 阈值时,触发蜂鸣器与 LED 报警,同时 OLED 显示报警信息。

3. 状态显示:OLED 实时显示当前距离( mm )、设定阈值及报警状态。

1.3 倒车系统设计的意义

本设计验证了 STM32 单片机在传感器控制与实时数据处理中的应用能力,为同类项目提供了模块化开发模板。通过超声波测距与阈值报警的结合,可扩展至智能避障、仓储限位、安全围栏等场景,具有较强的灵活性和工程实践意义。

第2 章 系统总体结构

2.1.1 超声波硬件模块

传感器选型:采用 HC-SR04 超声波传感器,工作电压 5V,最大探测距离4 米。

接口设计:Trig 引脚(PB13)通过推挽输出模式控制超声波发射,Echo 引脚(PB14)配置为浮空输入模式,通过外部中断(EXTI14)捕获回波信号。

2.1.2 按键硬件模块

消抖设计:按键PB1(阈值 + )和PB11(阈值-)通过 10kΩ 上拉电阻连接,软件采用 20ms 延时消抖。

电路连接:按键一端接地,另一端接 STM32 的 GPIO 引脚,配置为上拉输入模式。

2.1.3 报警硬件模块

蜂鸣器驱动:PB12 引脚通过NPN 三极管驱动蜂鸣器,低电平有效。LED 指示:PA1 引脚串联 220Ω 限流电阻连接红色 LED,低电平点亮。

2.1.4 显示硬件模块

OLED 接口:采用 I2C 通信,SCL(PB8)、SDA(PB9)引脚配置为开漏输出模式,。

供电设计:OLED 模块由3.3V 电源直接供电。

2.3 系统总体结构设计

系统以 STM32F103c8t6 系列单片机为核心,围绕多个外设构建了一个测量与报警系统。通过 HC-SR04 超声波传感器进行距离测量,利用 OLED 显示屏实时显示测量距离和设置的阈值,同时借助按键实现阈值的调节,蜂鸣器和 LED 用于在测量距离小于阈值时发出报警信号。

软件层面采用模块化设计,各功能模块独立封装。

第3 章  系统软件部分设计

3.1 主函数的设计

主函数 是程序的入口函数,一个完整的程序必须要包含该函数。在该函数的开头一般都是先对单片机和一些外围器件需要进行初始化才能正常使用的器件进行初始化和重新赋值一些变量,初始化完后进去死循环,如果不进入死循环程序运行一次就会退出,如果加入死循环程序就会不断地进行循环达到实时检测执行的目的。在主程序的设计中需要注意的是主函数中不宜放过多的代码,具体的代码一般都是采用函数进行封装然后在主函数进行调用,这样也可以方便阅读修改。

3.2 核心模块实现

3.3.1 HC-SR04 测距模块

1. 时序控制:通过 TRIG 引脚发送 20μ s 高电平触发超声波发射,ECHO 引脚接收信号,利用外部中断(EXTI15_10_IRQHandler)检测上升沿与下降沿,计算信号飞行时间。

2. 距离计算:距离 Σ=Σ 时间 × 声速( 0.34mm/μs ) /2

3. 异常处理:若测量值 >1000mm (代码中写死),则沿用上次有效距离,避免无效数据干扰。

3.3.2 按键阈值调节模块

1. 消抖处理:按键检测采用 20ms 延时消抖,按住不放时函数阻塞,直至松手。

2. 阈值更新:按键 1(+)使 flag 自增,按键 2(-)使 flag 自减,直接修改全局变量 flag,无边界检查。

3.3.3 声光报警

1. 报警逻辑:当检测距离 ⩽ 阈值时 时,蜂鸣器(低电平有效)持续发声,LED1 点亮,OLED 显示报警信息; 100ms 后清屏,报警状态持续直至距离恢复。

第4 章  结果分析

4.1 功能测试

1. 测距功能:短距离( 20mm~1000mm ):测量值与实际距离误差⩽5mm ,重复性良好。 长距离( 1000mm~4000mm ):误差随距离增大略有上升(约 ±3% ),符合 HC-SR04 技术规格。

2. 阈值调节:按键响应灵敏,阈值实时更新并显示,调节步进1mm ,无卡顿现象。连续快速按压 10 次按键,阈值累计变化 10mm ,未出现数值跳变或显示卡顿现象

3. 报警功能:距离 ⩽ 阈值时,蜂鸣器立即发出连续鸣响,红色LED 开始高频闪烁,OLED 显示报 警信息。OLED 在报警触发后,原数据显示区域以 100ms 间隔循环清屏 / 显示 "stop it !!! " 警示信息障碍物移除后,距离恢复后报警停止,恢复正常显示,响应时间 <100ms 时。

参考文献

[1] STMicroelectronics. STM32F 10× Data Sheet[Z]. Geneva: STMicroelectronics, 2020.

[2] Guoyuan Electronics. HC-SR04 Ultrasonic Sensor User Manual[Z]. Shenzhen: Guoyuan Electronics, 2020.

[3] DisplayTech. OLED 12864 Display Module Technical Documentation[Z]. Shenzhen: DisplayTech, 2021.

[4] HC-05 Bluetooth Module User Manual[Z]. 2018.

[5] OLED 12864 中文资料手册 [Z]. 2021.

[5] 李靓琳 . 基于 STM32 的倒车雷达影像系统设计与制作 [EB/ OL].2024.