基于STM32的倒车雷达系统设计

这篇具有很好参考价值的文章主要介绍了基于STM32的倒车雷达系统设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

一、绪论

1.1 设计背景

1.2 设计内容

二、系统硬件设计

2.1 硬件系统框图

2.2 主控制电路

2.3 超声波电路

2.4 OLED显示电路

2.5 键盘输入电路

2.6 声光报警模块电路

三、系统软件设计

3.1 系统主程序设计

3.2 OLED显示程序设计

3.3 键盘设定程序设计

四、系统调试

4.1 硬件调试

4.2 软件调试

4.3 系统调试

五、实物测试

总结


前言

       本设计为博主利用每日闲余时间设计的小作品,有不足之处还请各位在评论区批评指正,部分内容参考来源网络资料,如有侵权请联系博主删除。

一、绪论

1.1 设计背景

        超声波测距是一种传统并且实用的测距方法,利用超声波可以非接触式测量,比起卷尺、激光或者无线电测这些更加方便,并且不存在其他因素等干扰的问题,不管在什么环境中都能正常使用,超声波具有自适应能力,并且超声波收发器成本低廉、结构简单,使用开发非常方便。超声波在各个行业领域使用的非常多,例如在工业控制方面、建筑测量方面、身高测量、声呐定位等都是利用超声波来做探测。

        由于超声波传播速度相对适中,其传播的时间也方便计算出来,通过定时发射,方向性准确,强度好控制,因此人们采用这种方式超声波测距[1]。

        超声波是一种人类听觉范围以外的一种声波,一种真实存在的波,它的传播速度非常慢,光速的万分一都不到,由于其速度传播慢,在传播过程中容易被检测捕获,超声波碰到障碍物介质时能够反射回来。超声波的传播具有方向性和可控制性,故而超声波用于很多方面,例如超声治结石、超声声呐等等,而本设计采用超声波的反射特性来用于测距设备,通过声波发出到反射接受的时间推理计算得到前方实际距离的方法实现测距。超声波技术在工业、计算机领域取得了很好的成就,并且在人们生活中普遍存在,把超声波应用到科技产品当中是开发者义不容辞的责任。

1.2 设计内容

        本设计研究出一款基于超声波的倒车雷达系统。系统采用STM32F103C8T6单片机作为主控制器, 利用超声测距的原理, 设计了一种超声波测距装置,该装置可以对前方的障碍物进行距离探测并把障碍物距离信息通过OLED显示出来。并且根据实际情况在单片机内部设置一个临界值,当通过超声波探测的距离小于临界值时,声光报警,提醒前方距离变小。可以根据声光报警提示报警,通过提示得知距离是否在正常范围,从而达到报警的目的。即本次设计的倒车雷达系统主要具有以下功能:
         1、具有实时测量距离的功能,在一定范围内实现测距,距离小于一定时,发出声光报警提示。
          2、具有实时显示功能,单位精确到厘米。
          3、安全距离可以调,可通过按键修改并保存。

二、系统硬件设计

2.1 硬件系统框图

       本设计硬件设计部分主要由以下几个模块组成:单片机最小系统、超声波模块、报警模块、OLED显示模块、键盘模块。通过这几种模块组成倒车雷达系统,单片机最小系统由复位电路和时钟电路组成。具体硬件系统框图如下图所示:

基于STM32的倒车雷达系统设计

2.2 主控制电路

       设计中主控芯片采用STM32F103C8T6单片机作为主控制。该型号单片机为LQFP44封装,内部资源足够用于本次设计。STM32F103系列芯片最高工作频率可达72MHZ,在存储器的01等等待周期仿真时可达到1.25Mip/MHZ(Dhrystone2.1)。内部128k字节的闪存程序存储器,也即代码量可以写到128k字节,足够本次设计。所用STM32F103C8T6最小系统板如下图所示:

基于STM32的倒车雷达系统设计

2.3 超声波电路

       超声波模块工作电压为5V,Trig为触发控制信号输入连接单片机的PC13引脚,PC13通过该引脚输出高电平信号保持10微秒以上,此时超声波模块才被使能。自动发出方波信号,经过返回,Echo为回响信号输出接口端,直接相连单片机的PA0定时器输入脚,单片机判断该I/O高电平持续的时间来得出实际的距离。本设计中超声波模块电路设计图如下图所示:

基于STM32的倒车雷达系统设计

2.4 OLED显示电路

        本次采用低功耗的0.96寸OLED显示屏作为本次可穿戴设备的显示器,该OLED具有多种驱动方式,常用的方式主要有SPI和IIC驱动,本次采用IIC接口的方式,IIC只需要两根数据线即可驱动显示,使用原理简单。该模块内部不带任何字符,在显示字符、数字、汉字时都需要制作字库,因此可以显示各图案。该模块具有4个引脚,VCC接电源3.3V供电,GND接地线,SCL接STM32F103C8T6的IIC SCL脚PB6,SDA接STM32F103C8T6的IIC SDA脚PB7,如下图所示为本设计OLED电路设计图。

基于STM32的倒车雷达系统设计

2.5 键盘输入电路

       本次设计采用三个独立式按键实现对安全距离值进行调整,三个按键分为设置/退出键、设置加键、设置减键。设置键按下一次后,进入安全距离值设定界面,然后才可通过设置加和设置减键进行调整。如下图、为键盘电路设计图,图中三个按键一端接公共端GND,另一端分别接单片机的I/O。三个按键接口分别接单片机的PB12、PB13、PB14引脚,当单片机的相应引脚检测到低电平时,说明该引脚被触发,从而实现相应的动作。

基于STM32的倒车雷达系统设计

2.6 声光报警模块电路

        本次设计的报警系统设计采用有源蜂鸣器以及发光二极管LED实现声光报警电路,当检测到的距离小于设置好的距离时,单片机控制声光报警模块实现报警。如下图为声光报警电路设计图,由于蜂鸣器是非信号类器件,单片机的I/O不可直接进行驱动,故而利用三极管的开关作用控制蜂鸣器的开关。如图中所示,BUZZER1为蜂鸣器元件,Q1为S8550三极管,通过基极的电平状态从而控制三极管的开关,当单片机BEEP输出高电平时,三极管集电极导通,蜂鸣器通电,从而蜂鸣器发出声响,同时LED灭;当BEEP输出低电平时,三极管集电极处于截止状态,蜂鸣器没有电压从而不发声,LED亮。

基于STM32的倒车雷达系统设计

三、系统软件设计

3.1 系统主程序设计

       本系统是以STM32F103C8T6单片机为核心,设计的一款基于超声波测距原理的倒车雷达系统。STM32F103C8T6是整个系统的核心部分,利用HC_SR04超声波模块作为测距模块,模块是利用声波测距进行判断前方是否达到一定距离,达到报警的效果。在单片机内部设置一个阀值,当测得的距离小于阀值时,系统进行声光报警提示,用来提示使用者前方距离小于阈值,如果前方距离保持小于该阀值时,报警块循环报警提示,直到使用者前方距离大于阈值,才退出声光提示。整体软件设计的流程图,如下图所示:

基于STM32的倒车雷达系统设计

3.2 OLED显示程序设计

        本次设计采用OLED屏作为显示器,本次选用的是IIC接口,四针的OLED,通过IIC实现驱动OLED,使用方式非常简单。由上一章节可知,OLED的SDA、SCL分别接STM32的PB6、PB7,通过软件模拟IIC驱动。IIC接口包括IIC起始信号、IIC停止信号、IIC读数据、IIC写数据、IIC响应信号和非响应信号。以下为OLED读取显示数据流程图,首先进行初始化配置,初始化IIC,然后配置指令。接下来进入显示数据工作中,首先确定显示显示为坐标,然后显示字体大小等信息,然后写入显示数据。其流程图如下图所示:

基于STM32的倒车雷达系统设计

3.3 键盘设定程序设计

       按键在本系统中主要起到修改安全阈值的作用,主要有设置键、设置加键、设置减键等三个。工作如下:首先在正常工作状态下,按下设置键,进入设置菜单界面,OLED显示距离下限值。此时通过按键加、按键减可对距离下限值进行修改,步进值为1cm。设置完成后再次按下设置键将会保存,再自动回到主界面实时显示距离,具体流程图如下图所示:

基于STM32的倒车雷达系统设计

四、系统调试

4.1 硬件调试

        本次设计采用立创EDA设计出了PCB电路板线路图,该软件是一款高性能、开发方便的EDA软件,该软件能够完成原理图绘制和PCB设计。本次采用该软件绘制出来整个系统的电路图,以及PCB图,在设计过程中要注意以下几点:

      (1)线宽规则:地线铺铜,电源线宽大于信号线宽。

      (2)走线不能直角,尽量45度转角。

      (3)电源电路和信号电路尽量隔远。

      (4)电源线从滤波电容布线输出。

如下图为PCB板设计布线调试图。

基于STM32的倒车雷达系统设计

4.2 软件调试

       软件调试主要在KEIL5 MDK平台上进行软件bug调试,通过对软件中编译的问题进行修改和调试。本次设计主控是基于STM32F103C8T6的,开发环境是基于KEIL5,通过新建工程、创建主程序、创建子程序、编译、下载调试等步骤,先写出一个小模块,然后点击编译按钮,然后增加完善到最后的理想结果。

4.3 系统调试

      最后一步就是硬件整体测试了,主要运用万用表、直流电源和示波器对焊接好的板子进行整体调试,主要检查每一个器件是不是都正常工作了,主要分为两个环节动态调试和静态调试。其中静态调试主要分为以下三种:

     1.肉眼观察。主要观看焊接点是否饱满,以及相连器件之间是否相连或者器件管脚没有焊接好,出现短路现象。

     2.使用万用表调试。首先查看电源是否短路,然后测量管脚是否连接正确,有没有接线错误。

     3.上电检查。在完成第一步和第二步都没有问题,接下来就可以上电了,上电以后观看每个器件是否正常工作,然后在逐一测试功能。

      动态调试。动态调试主要是静态调试没有任何问题,做最后一步检查,就是每个器件能否正常工作,能否满足我系统开发的功能,防止器件内部损坏,影响系统性能。

五、实物测试

     通过对本次设计的硬件电路设计,最终做出电路板,将电路各个模块进行焊接。在焊接时应该注意先后顺序,先焊接电路模块,将电路接口和电源开关焊接好后,接通电源。接下来利用万用表测试各个电源点是否正常,测试正常后进入下一步的焊接。焊接顺序按照先焊接电源和主控制单片机部分,先焊接小元件再焊接大元件的方式,最终焊接完成图样如下图所示。

基于STM32的倒车雷达系统设计

    在系统板在开机后,正常运行时,OLED第一行会显示测试距离,第二行显示当前报警阈值,然后自动刷新测试距离,当所测距离小于报警阈值时,蜂鸣器会“滴滴”报警,LED指示灯会持续闪烁,直到所测距离大于报警阈值时,蜂鸣器关闭,LED指示灯停止闪烁。如下图所示为系统数据显示主界面图。在主界面下实时显示该系统所测距离的数据。如下图所示当前距离测量值为37cm,报警阈值10cm。

基于STM32的倒车雷达系统设计

       在主界面上实时显示,可通过按键实现其他功能,按下切换键时,OLED将切换到阈值设置界面,如下图所示为阈值设置界面图。

基于STM32的倒车雷达系统设计

      在阈值设置界面下,按下设置减键和设置加加键可以调整报警阈值,如下图所示。

基于STM32的倒车雷达系统设计

总结

本次设计顺利完成预期设计功能,设计源码、PCB原理图、设计报告见下百度网盘链接:链接:链接:https://pan.baidu.com/s/1oXslLRO5c2RhdGAuC_iEyg 
提取码:ibth 
下一期将制作基于51单片机的脉搏测量仪,创作不易,还请各位多多支持!

       文章来源地址https://www.toymoban.com/news/detail-456570.html

到了这里,关于基于STM32的倒车雷达系统设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 毕业设计 基于51单片机的汽车倒车防撞报警系统 (源码+硬件+论文)

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月09日
    浏览(75)
  • 基于STM32的超声波雷达

    视频地址:1.基于STM32的超声波雷达-演示_哔哩哔哩_bilibili 备注:文档最后有所有文件的网盘地址 全部必要硬件(左到右) : ST-LINK调试器:调试下载程序 stm32f103c8t6核心板 1.8寸TFT显示器 sg90舵机 超声波传感器 其他扩展硬件 超声波传感器转接板:方便超声波传感器接到舵机上

    2024年02月12日
    浏览(46)
  • 基于STM32和激光雷达的路径规划

    在上一篇文章中,我们可以用激光雷达得到精确的雷达数据了,根据这些数据,我们可以用程 序画个图验证一下。 。 可以发现,我们得到的点是非常准确的,噪点也很少。那么我们可以据此导航了。 关于算法目标,就是避开矩形障碍物,找到圆弧所在的角度。 在算法编写

    2024年02月02日
    浏览(80)
  • 基于STM32的智能巡检小车系统设计--STM32最小系统、直流电机、直流电源模块设计

    作者:车 邮箱:692604135@qq.com 学校:西安工程大学硕士研究生 方向:机器视觉、图像分割、深度学习 在介绍具体实现功能之前,需要介绍以下模块。 本课题选择的单片机是ST(意法半导体)开发的STM32F407VET6。 这是一款采用Corte-M4为内核的高性能32位ARM微控制器。该芯片支持

    2024年02月10日
    浏览(54)
  • 基于stm32的智能输液系统设计

    目录 一、原理简述 二、系统硬件设计 1.stm32f103核心控制器 2.电机驱动模块 3.LCD显示屏模块 4.注射液滴速检测模块 5.湿度检测模块 6.声光报警模块 7.按键控制模块 三、系统软件设计 1.声光报警模块及电机驱动软件设计 2.LCD显示屏软件设计 3.注射液滴速检测模块软件设计 4.湿度

    2024年01月16日
    浏览(40)
  • 基于stm32的厨房安全系统设计

    基于STM32的厨房安全系统设计 摘要 随着智能家居的普及,厨房安全系统成为家庭安全的重要组成部分。本文提出了一种基于STM32的厨房安全系统设计方案,旨在检测厨房内的烟雾、可燃气体和火焰,确保家庭安全。系统通过传感器采集数据,STM32微控制器处理数据,实现报警

    2024年02月19日
    浏览(33)
  • 基于stm32的指纹识别系统设计与系统

    详细功能模块描述: 1、系统硬件模块设计与实现: 指纹通过指纹识别模块采集处理;并将处理后的指纹特征值等以数据包的形式发给主控模块;主控模块发送指令包对指纹识别模块进行控制以及对键盘模块、报警模块、液晶显示模块进行控制。在液晶显示屏上显示录入和识别

    2024年02月06日
    浏览(51)
  • 基于STM32超声波测距系统设计

    随着社会的发展和科技的进步,人们对测距的要求越来越高,特别是在一些要求实时测距的场合,传统的测距方式已经无法满足人们的需求,而超声波测距由于其非接触和实时反馈的特点在生活中得到广泛应用。 本系统硬件部分由电源模块、控制模块、显示模块、报警模块、

    2024年02月04日
    浏览(55)
  • 【基于STM32的水质检测系统设计】

    最近参加校赛做的基于STM32的水质检测系统设计,进行一些简单记录吧 一、题目要求 二、硬件材料 STM32F103C8T6最小系统一块 x1 语音模块(SU-03T) x1 ESP8266wifi模块 x1 BMP180大气压模块 x1 DS18B20温度传感器带探针 x1 蜂鸣器 x1 TFT3.5显示屏 x1 TDS传感器水电导率 x1 不可充式电极探头P

    2024年02月07日
    浏览(47)
  • STM32项目--基于STM32的办公室安保(智能家居)系统设计

    设计一套基于STM32的办公室安防系统,系统内部包括门禁系统、灾害报警系统、人脸识别系统和交互中心四个子系统。 门禁系统:主要实现对门禁卡的存储和读取并识别已存储卡片的信息并控制开门,如读取卡片为未存储卡片则报警。 灾害探测:系统本项目简单化使用了温湿

    2024年02月05日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包