基于单片机的超声波倒车雷达设计

摘 要:文 章设计了一种基于单片机的超声波倒车雷达系统,以 AT89C51 型单片机作为控制核心,集距离测量、显示,方位显示和危险报警于一体,以提高驾驶者在倒车泊车时的安全性和舒适性。本设计采用 Keil 软件对系统程序进行调试,并采用 Proteus 对整个系统进行了仿真,仿真结果达到了预期的效果。
关键词:超声波;测距;单片机;倒车雷达

前言

近年来,随着驾驶人和机动车数量的急剧增长,行车路况复杂,驾驶员往往不能及时的了解车辆周边尤其是后方的环境,导致驾驶员操作不及时,造成很多事故 。本文设计了以 AT89C51 单片机为核心,利用超声波来进行测距,同时具有实现显示和报警功能的倒车雷达系统,大大提高了倒车泊车的安全性。

1 系统总体设计

本文设计了一种基于单片机的超声波倒车雷达系统,采用超声波脉冲回波法对距离进行测量,AT89C51 单片机作为整个系统的控制单元,TCF40-16TRC 超声波收发一体式传感器作为测距装置。系统主要包括测距部分、控制部分和显示报警部分。图 1 所示为系统的整体框架图。
汽车泊车时挂倒档,整车 ECU 会产生倒车信号,单片机接收该信号后进入工作状态,产生脉冲电压信号,该信号经 过四选一分时选通开关被发送到第一路(后左支路)测距电路,经过电路放大后驱动传感器发射超声波,同时单片机开始计时。超声波遇到障碍物后产生的反射回波被超声波接收
传感器所接收,并将其转化为电信号,单片机收到信号后,响应该中断,系统会执行外部中断程序,停止先前的计时,控制器会得到超声波发射和回波之间的时间差,定时中断以后继续执行下一路。测距顺序依次为后左,后左中,后右中和后右。随后,控制器计算得到最小距离值,并将该值及方位传送给 LCD 。当该值小于所设定的安全距离时,单片机驱动蜂鸣器发出报警,同时 AEB 系统进入工作状态,以保证泊车安全。

2 系统硬件设计

AT89C51 单片机是一种低功耗和高性能的八位芯片 。硬件电路主要包括单片机控制电路,超声波测距收发电路,回波电信号放大电路,LCD 显示电路,报警电路,方位灯显示电路等。

2.1 超声波测距收发电路

超声波收发电路的功能主要有:增大驱动发射声波脉冲电压幅值,实现声波信号与电信号之间的转化;提高超声波有效发射距离。本系统选择 CD4052 型芯片用来分时选通四个支路的传感器。

2.2 回波电信号放大电路设计

放大电路选择 CX20106A 型芯片作为控制核心。图 2 中引脚 1 CD4052 芯片的 Y 端。该放大电路对回波电信号进行处理,最终产生并向单片机输出一个低电平信号 。该信号会向控制芯片申请中断,随即单片机发送计时停止指令,同时系统便开始对数据进行处理。

2.3 液晶显示系统的电路设计

本设计选择 YBLCD1602LCD 液晶显示器作为显示装置。图 3 中芯片 P0 的八个引脚端口分别与 LCD 的八个引脚相连接,传输指令和数据。P1.0 P1.1 P1.2 引脚分别与LCD 的三个端口相连接,对 LCD 的读写功能进行控制。

2.4 系统方位灯电路设计

4 所示为系统方位灯的电路图,当其中一个二极管点亮,表明该路传感器对应方位的障碍物距离车体的位置最近。这四个发光二极管分别与芯片的引脚相连,当芯片所对应引脚输出为低电平时,该引脚所对应的二极管被点亮。

2.5 系统报警电路设计

系统采用 PB2130UP002A 蜂鸣器作为声音报警装置,当障碍物与车体距离过近时,蜂鸣器发出声音以起到报警的作用 。由图 5 可知该电路是利用一个三级管来驱动,蜂鸣器电路与单片机的 P3.7 引脚相连接。

3 系统软件设计

系统软件部分由运行主程序,超声波收发子程序,发射 通道选通子程序,LCD 显示子程序,报警子程序等组成。

3.1 软件主程序设计

6 所示为主程序流程框图,汽车挂入倒档时,系统进入工作状态。首先对每个缓冲单元清零,对液晶显示器进行初始化 。随后,系统开始检测是否有倒车信号传来,若有超声波测距支路便开始进入工作状态,反之继续等待。设置定时器并赋初值,同时 T1 定时器开中断。单片机通过检测四路探测完毕的标志位来判断四路探测是否完毕, 标志位为 1 则表示都已经完成,对数据进行处理,完成后通过 LCD 显示最小距离,同时报警模块判断是否需要报警,延迟大约 0.5s 后,系统又回到检测倒车信号处开始下一轮的循环。

3.2 超声波收发子程序设计

单片机接收超声回波的信号,系统进入外部中断 0 程序。此时,定时器 T0 首先停止计时,禁止外部中断 0 的中断,然后计数值保存在以 40H 为起始的单元中。随后,系统等待定时器 T1 所设定的 40ms 中断产生,一旦产生,便会继续进行下一支路的测距。

3.3 定时器 T1 中断程序设计

系统进入定时器 T1 中断程序, T1 关闭,外部 0 中断被禁止,同时 T1 被重新赋初值。如果全部选通完毕且有四个计数值,系统会置标志位然后比较这四个值返回主程序。如果四通路还没有全部选通,系统会继续选通还没有被选通的通道,同时调用发射超声波的子程序,启动定时器 T0 和定时器 T1 ,并允许定时器 T1 中断。

4 系统调试与仿真

本文使用 Keil 软件对程序进行调试,使用 Proteus 软件对电路进行仿真。图 7 中,示波器窗口可以看见有一串矩形波发出,脉冲个数为 16 个,与预期的数目相同。

利用 Keil 软件对系统的程序进行了调试并采用 Proteus专业仿真软件对整个系统进行了仿真以验证系统的正确性和稳定性。

5 结语

本文通过采用单片机控制和超声波测距,设计出一种结构简单、可靠性高的泊车雷达系统。利用超声波来进行测距,测量精度比较高,同时实现显示和报警的功能,完全满足驾驶员泊车的需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/339674.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux开发工具(个人使用)

Linux开发工具 1.Linux yum软件包管理器1.1Linux安装程序有三种方式1.2注意事项1.3如何查看,安装,卸载软件包1.3.1查看软件包1.3.2安装软件包1.3.3卸载软件 2.Linux vim编辑器2.1vim的基本操作2.2vim正常模式命令集2.3vim底行模式命令集2.4vim配置 3.Lin…

就凭这张图,下订华为享界S9

文 | Auto芯球 作者 | 雷慢 冲啦!就在刚刚, 我们团队下订了一辆享界S9, 还琢磨买奔驰S级,宝马7系和奥迪A8的老板们, 是应该试试享界S9了, 至少先占个坑,8月底S9上市当天, 可以…

微型导轨在自动化制造中有哪些优势?

微型导轨在自动化制造中发挥重要作用,能够满足自动化设备制造中对精度要求较高的工艺环节。适用于自动装配线、自动检测设备和机器人操作等环节,推动了行业的进步与发展。那么,微型导轨在使用中有哪些优势呢? 1、精度高和稳定性强…

FPGA DMA IP核使用指南

摘要 本文旨在介绍FPGA中DMA(Direct Memory Access)IP核的使用,包括其基本框架、测试代码编写以及仿真波形的分析。DMA是一种允许外围设备直接与内存进行数据交换的技术,无需CPU的介入,从而提高了数据传输的效率。 1. 引言 在现代FPGA设计中,DMA IP核因其…

android睡眠分期图

一、效果图 做医疗类项目&#xff0c;经常会遇到做各种图表&#xff0c;本文做的睡眠分期图。 二、代码 引入用到的库 api joda-time:joda-time:2.10.1 调用代码 /*** 睡眠* 分期*/private SleepChartAdapter mAdapter;private SleepChartAttrs mAttrs;private List<SleepI…

C基础-标准库上

下:http://t.csdnimg.cn/LXa0J C 标准库是一组 C 内置函数、常量和头文件&#xff0c;比如 <stdio.h>、<stdlib.h>、<math.h>&#xff0c;等等。 目录 一. assert.h 二. ctype.h 三. errno.h 四. float.h 五.limits.h 六. locale.h 一. assert.h 源码…

基于梯度提升树回归模型的房地产价格估计

目录 1. 作者介绍2. 梯度提升树回归算法介绍2.1 算法原理2.2 算法讲解与分析 3. 实验过程3.1 数据集介绍3.2 代码介绍3.3 完整代码实现3.4 测试结果 参考文献 1. 作者介绍 雷强&#xff0c;男&#xff0c;西安工程大学电子信息学院&#xff0c;2023级研究生 研究方向&#xff…

论文精读--Swin Transformer

想让ViT像CNN一样分成几个block&#xff0c;做层级式的特征提取&#xff0c;从而使提取出的特征有多尺度的概念 Abstract This paper presents a new vision Transformer, called Swin Transformer, that capably serves as a general-purpose backbone for computer vision. …

对人脸图像进行性别和年龄的判断

判断性别和年龄 导入必要的库加载预训练的人脸检测模型加载预训练的性别和年龄识别模型定义性别和年龄的标签列表创建Tkinter窗口&#xff1a;定义选择图片的函数&#xff1a;创建一个按钮&#xff0c;用于打开文件选择对话框定义显示图片的函数创建预测性别和年龄的函数创建预…

vue2 bug求助!!!(未解决,大概是浏览器缓存的问题或者是路由的问题)

我的vue2项目出现了一个超级恶心的bug 过程&#xff1a; 1 操作流程&#xff1a;页面a点击a标签->到页面b->页面b用户退出刷新页面->点击浏览器的返回按钮返回上一页 2 结果&#xff1a;返回页面后页面没有刷新导致用户名还显示着&#xff0c;页面没有发生任何变化&a…

基于Pytorch框架的深度学习ShufflenetV2神经网络十七种猴子动物识别分类系统源码

第一步&#xff1a;准备数据 17种猴子动物数据&#xff1a; self.class_indict ["白头卷尾猴", "弥猴", "山魈", "松鼠猴", "叶猴", "银色绒猴", "印度乌叶猴", "疣猴", "侏绒"…

​研学活动方案模板,详细制作步骤!​

研学活动&#xff0c;作为教育实践的重要组成部分&#xff0c;为我们的学生提供了一个广阔的学习平台。在这个平台上&#xff0c;学生们能够将书本上的知识与现实世界紧密联系起来&#xff0c;通过实践探索来培养能力。但对于咱们老师来说&#xff0c;学校组织研学活动要考虑到…

“雪糕刺客”爆改“红薯刺客”,钟薛高给了消费品牌哪些启示?

夏日袭来&#xff0c;一支价格高昂却让人眼前一亮的雪糕&#xff0c;曾一度成为市场热议的焦点。然而&#xff0c;随着消费者对性价比的日益关注&#xff0c;曾经的“雪糕刺客”钟薛高&#xff0c;其创始人林盛近期以直播带货红薯开启他的还债之路&#xff0c;高打情怀“直播自…

STM32学习和实践笔记(33):待机唤醒实验

1.STM32待机模式介绍 很多单片机具有低功耗模式&#xff0c;比如MSP430、STM8L等&#xff0c;我们的STM32也不例外。默认情况下&#xff0c;系统复位或上电复位后&#xff0c;微控制器进入运行模式。在运行模式下&#xff0c;HCLK 为CPU提供时钟&#xff0c;并执行程序代码。这…

java配置文件解析yml/xml/properties文件

XML 以mybatis.xml:获取所有Environment中的数据库并连接session为例 import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException;import javax.xml.parsers.DocumentBuilder; impo…

springboot基本使用十一(自定义全局异常处理器)

例如&#xff1a;我们都知道在java中被除数不能为0&#xff0c;为0就会报by zero错误 RestController public class TestController {GetMapping("/ex")public Integer ex(){int a 10 / 0;return a;}} 打印结果&#xff1a; 如何将这个异常进行处理&#xff1f; 创…

2024年06月在线IDE流行度最新排名

点击查看最新在线IDE流行度最新排名&#xff08;每月更新&#xff09; 2024年06月在线IDE流行度最新排名 TOP 在线IDE排名是通过分析在线ide名称在谷歌上被搜索的频率而创建的 在线IDE被搜索的次数越多&#xff0c;人们就会认为它越受欢迎。原始数据来自谷歌Trends 如果您相…

跨越百亿营收的今世缘,全国化进程仍挑战重重?

当前&#xff0c;白酒市场正在经历一场深度调整&#xff0c;随着存量时代到来&#xff0c;白酒品牌地位的更替和竞争格局的重构已经展开。这一背景下&#xff0c;今世缘等地方性酒企也正在凭借对区域市场的深耕&#xff0c;展现出较快的成长速度&#xff0c;并希望能借此占领市…

AI视频下载:ChatGPT数据科学与机器学习课程

ChatGPT是一个基于OpenAI开发的GPT-3.5架构的AI对话代理。作为一种语言模型,ChatGPT能够理解并对各种主题生成类似人类的响应,使其成为聊天机器人开发、客户服务和内容创作的多用途工具。 此外,ChatGPT被设计为高度可扩展和可定制的,允许开发人员对其响应进行微调并将其集成到…

C/C++动态内存管理(new与delete)

目录 1. 一图搞懂C/C的内存分布 2. 存在动态内存分配的原因 3. C语言中的动态内存管理方式 4. C内存管理方式 4.1 new/delete操作内置类型 4.2 new/delete操作自定义类型 1. 一图搞懂C/C的内存分布 说明&#xff1a; 1. 栈区&#xff08;stack&#xff09;&#xff1a;在…