111汽车倒车防撞报警器的设计与实现论文(1) - 图文

更新时间:2024-04-23 14:28:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

汽车倒车雷达防撞报警系用的设计

德州职业技术学院 高职专业毕业论文

汽车倒车雷达防撞报警系统的设计

系 部: 新能源工程系 专 业: 太阳能光电应用技术 姓 名: 孙强 学 号: 201410020151 指导教师: 田晓龙

2016年 12 月 16 日

1

德州职业技术学院毕业设计

摘要

倒车后视不良一直都是困惑驾驭员,特别是菜鸟的难题。倒车雷达能以声响或许更为直观的方式奉告驾驭员周围障碍物的状况,协助驾驭员打扫视界死角和消除视野含糊的缺点,进步驾驭的安全性。这篇文章具体介绍了一种根据AT89C51单片机的超声波脉冲测距的倒车防撞报警器的规划。该规划以超声波在空气中传播速度为断定条件,使用超声波的反射,测出间隔。论文概述了超声测距的基本原理及超声传感器的特性,并在超声测距原理的基础上,提出了体系的整体构成,以蜂鸣器报警作为正告提示,具有较强的实用性。

关键词:超声波 防撞 传感器 报警器 控制系统

2

汽车倒车雷达防撞报警系用的设计

目录

1、前言 ........................................................... 4

1.1 国内外发展的概况以及存在的问题 .............................. 4 1.2 倒车雷达的发展 .............................................. 5

1.3 本设计的目的 ...................................... 7

1.4研究意义..................................................... 7

2、系统计划选择 .................................................. 8

2.1 测量计划的比照 ............................................. 8 2.2 超声波测距的工作原理 ....................................... 8 2.3 超声波测距的工作方式 ....................................... 9

3、系统硬件设计 ................................................. 10

3.1超声波发送模块规划.......................................... 10 3.2 超声波接收模块规划 ......................................... 11 3.3 语音电路规划 ............................................... 13 3.4 LED显示电路设计............................................ 13

4、硬件实现及单元电路设计 ..................................... 15

4.1主控制模块.................................................. 15 4.2 电源设计.................................................. 16 4.3 超声波测试模块............................................ 16

5系统软件设计 ................................................... 17

6、系统误差分析及改进 ........................................... 19

6.1发射器探头对接收器探头的影响 ................................ 19 6.2回波检测对时间测量的影响 .................................... 19 6.3超声传感器所加脉冲电压对测量范围和精度的影响 ................ 20

6.4针对误差产生原因的系统改进方案 ...........................................20

结 论 ............................................................. 22 致 谢 ............................................................. 23 参考文献 ......................................................... 24 附录

..................................................................................25

3

德州职业技术学院毕业设计

1前言

1.1国内外发展的概况以及存在的问题

随着社会经济的发展交通运输业日益兴旺,汽车的数量在大副攀升。交通拥挤状况也日趋严重,撞车事件屡屡发生,造成了不可避免的人身伤亡和经济损失,针对这种情况,设计一种响应快,可靠性高且较为经济的汽车防撞预警系统势在必行,超声波测距法是最常见的一种距离测距方法,应用于汽车停车的前后左右防撞的近距离,低速状况,以及在汽车倒车防撞报警系统中,超声波作为一种特殊的声波,同样具有声波传输的基本物理特性——折射,反射,干涉,衍射,散射。超声波测距即是利用其反射特性,当车辆后退时,超声波距离传感器利用超声波检测车辆后方的障碍物位置,并利用指示灯及蜂鸣器把车辆到障碍物的距离及位置通知驾驶人员,起到安全的作用。

汽车倒车防撞测距报警器一般有四种:1嘀嘀声加闪光,2音乐声加闪光,3语音声加闪光,4倒车到危险距离时发出警报声的超声波倒车报警器,由于很多研究都采用的是特殊难购的专用元件,使其难以推广,本设计采用国内生产的通用元件,成本较低廉,本设计使其在整个倒车过程中自动测量车尾到最近障碍物的距离,在倒车到极限距离时会发出急促的警告声,提醒驾驶员注意刹车,如果和制动系统联系在一起也可以形成自动刹车。

4

汽车倒车雷达防撞报警系用的设计

(1) 预警时间不足

最大有效探测距离的问题,大多数倒车雷达的最大有效探测距离:墙面小于2.5m,行人0.6-1.2 m。实验知道一些驾驶员的习惯初始倒车速度3-12km/月 ,即0.83-3.3 m/s,。现以平均1.5 m/s计算,倒车雷达发现目标仅有1.67 s,对行人只有0.4-0.8 s。如此以来,等报警器报警后汽车再减速就很紧张,明显感到预警时间不足。

(2) 反映速度迟钝

多数成品倒车雷达的显示速度因为考虑到抗干扰等因素,显示更新的速度约0.2-0.4s,即在0.2-0.4s显示一次距离,根据以上的推断,从倒车雷达发现目标到发出警报如果需要3s秒,这时车已经行使了0.45s,这显然感到反应迟钝。

(3) 探测盲区问题

多数倒车雷达的超声波传感器为2-3个,单个传感器的水平探测角度约60-70°,这样势必造成2-3个盲区,如图1-1,而增加传感器的个数不但增加成本,而且提高报警器的故障率。另外,由于等同与水平探测角度的垂直探测角度显得过大,往往对粗糙地面发生误报,如果改为探测角度为30°的传感器不会误报,但是不能有效的探测约30cm高的路堤,造成倒车时碰到后保险杠的问题。

图1-1 传感器盲区图解

1.2 倒车雷达的发展

随着我国汽车产业的高速发展,尤其是近两三年我国开始进入私家车时代,

5

德州职业技术学院毕业设计

汽车电子产业成了新的增长点,汽车电子产品的高利润和市场广阔性倍受商家关注,音响和防盗器就是明证,近两年来,倒车防撞报警器成了商家的电子新爱,众多生产防盗器的厂家纷纷涉足倒车防撞报警器,可以这么说,几乎生产防盗器的厂家都在生产倒车防撞报警器。市场上经销的倒车防撞报警器品牌多达几十种,在全国零售市场上销售的主要有固地、铁将军、伊莱、豪迪、奇贞、铭品、全安、佐敦、永泰和、俊邦视宝等品牌,基本上国产品牌占90%,而进口产品在终端市场上零售的较少。处在我国汽车用品大行业环境的繁荣背景下倒车防撞报警器已渐渐形成一个较大的行业,而且已呈现出一派激烈竞争的态势。

经过几年的发展,倒车雷达系统已经过了数代的技术改良,不管从结构外观上,还是从性能价格上,这几代产品都各有特点,目前使用较多的是数码显示、荧屏显示和魔幻镜倒车雷达这3种。

第1代倒车雷达。“倒车请注意”!想必不少人还记得这种声音,它只能算作最早的有关于倒车的一个产品,不能称为雷达,现在只有小部分商用车还在使用。只要驾驶员挂上倒档,它就会响起,提醒周围的人注意。从某种意义上说,它对驾驶员并没有直接的帮助,基本属于淘汰产品。最初的倒车雷达是蜂鸣器,它标志着倒车雷达系统的真正开始。倒车时,如果距车1.5~1.8 m处有障碍物,蜂鸣器就会开始工作,蜂鸣声越急,表示车距障碍物越近。该装置既没有语音提示,也没有距离显示,虽然驾驶员知道车后有障碍物,但不能确定障碍物距离车究竟有多远。

第2代倒车雷达。第2代产品采用数码波段显示,可以显示车后障碍物离车体的距离。如果车后是物,在1.8 m开始显示;如果是人,在0.9 m左右的距离开始显示。这一代产品有2种显示方式,数码显示产品直接显示距离数字,而波段显示产品由3种颜色来区别:绿色代表安全距离,表示障碍物离车体距离有0.8 m以上;黄色代表警告距离,表示离障碍物的距离只有0.6~0.8 m;红色代表危险距离,表示离障碍物只有不到0.6 m的距离,必须停止倒车。第2代产品把数码和波段组合在一起,比较实用,但安装在车内不太美观。

第3代倒车雷达。第3代产品是液晶荧屏显示,这一代产品较以前有一个质的飞跃,特别是荧屏显示开始出现动态显示系统。不用挂倒档,只要发动汽车,显示器上就会出现汽车图案以及车辆周围障碍物的距离。其外表美观,可以直接粘贴在仪表盘上,安装很方便,给人以舒适的感觉,显示的距离也更准确些。不过液晶显示器外观虽精巧,但灵敏度较高,抗干扰能力不强,所以误报也较多。

6

汽车倒车雷达防撞报警系用的设计

第4代倒车雷达。第4代产品是魔幻镜倒车雷达,它结合了前几代产品的优点,采用了最新仿生超声雷达技术,配以高速微机控制,可全天候准确地测知2 m以内的障碍物,并以不同等级的声音和直观的显示提醒驾驶员。魔幻镜倒车雷达把后视镜、倒车雷达、免提电话、温度显示和车内空气污染显示等多项功能整合在一起,并设计了语音功能,其外形就是一块倒车镜,所以可以不占用车内空间,直接安装在车内后视镜的位置。可以按照个人需求和车内装饰选配,不过价格稍高。

第5代倒车雷达。第5代产品是整合影音系统,它是专为高档轿车生产的,在上一代产品的基础上新增了很多功能,它整合了高档轿车的影音系统,可以在显示器上观看DVD影像。当然其价格也相当的不菲。

1.3 本设计的目的

本设计可望成为驾驶员特别是货车以及公共汽车驾驶员的好帮手,可有效的减少和避免那些视野不良的大型汽车的如冷藏车、集装箱车、垃圾车、食品车、载货车、公共汽车等倒车交通事故,另外还特别适用于夜间辅助倒车、倒车入库以及进入停车场停车到位,甚至还能防止盗贼扒车,本设计成本低廉,性能优良,市场前景极为广阔,对提高我国汽车工业实际水平,具有较大的时间意义。

1.4研究意义

超声波测距法是最常见的一种距离测距方法,应用于汽车停车的前后左右防撞的近距离,低速状况,以及在汽车倒车防撞报警系统中,超声波作为一种特殊的声波,同样具有声波传输的基本物理特性——折射,反射,干涉,衍射,散射。超声波测距即是利用其反射特性,当车辆后退时,超声波距离传感器利用超声波检测车辆后方的障碍物位置,并利用指示灯及蜂鸣器把车辆到障碍物的距离及位置通知驾驶人员,起到安全的作用。

7

德州职业技术学院毕业设计

2、系统计划选择

汽车的倒车防撞报警系统是以测距为基础的。在各种环境条件下,准确测量汽车与障碍物的距离是系统设计的关键。目前用于汽车工业的测距方法主要有超声波法、激光法和微波雷达法。

2.1 测量计划的比照

激光测量主要有脉冲和扫描两种工作方式,激光测量系统具有反应快、有效测量距离大、分辨率高、误差小等优点,近年来在汽车防撞领域越来越受到重视。由于激光镜头易受灰尘、雨雪、风沙的污蚀而影响其工作性能, 所以激光法不适宜在恶劣气候条件下工作。

微波雷达因为其工作频率高、波长短,可有效地缩小波束角度、减小天线尺寸,尤其适合在恶劣气候条件下工作。但是微波雷达测距时易受到雷达之间以及与其他通信系统之间的电磁干扰,抗干扰能力弱。

超声波法与其他两种方式相比具有显著的优点,超声波测速测距的基本原理是利用其反射特性。超声波发生器发射40 kHz超声波遇到障碍物后产生反射波,超声波接收器接收到反射波信号,并将其转换成电信号,测量发射波与回波之间的时间间隔ΔT,并根据公式R=(ΔT·v)/2计算距离(v为超声波传播速度)。超声波的特点是对雨、雾、雪的穿透能力强,可以在恶劣气候条件下工作,系统制作简便,成本低。

2.2 超声波测距的工作原理

人能听到的声音频率为:20Hz~20kHz,即为可听声波,超出此频率范围的声音,即20Hz以下的声音称为低频声波,20kHz以上的声音称为超声波。超声波是一种只有少数生物(如蝙蝠、海豚)才能感觉的机械波,其频率在20kHz以上,波长短,绕射小、能定向传播。超声波为直线传播方式,频率越高,绕射能力越弱,但反射能力越强。为此,利用超声波的这种性能就可制成超声波传感器。超声波测距的

8

汽车倒车雷达防撞报警系用的设计

原理就是利用超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为v(随温度的变化而变化),根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=v*t/2。

2.3 超声波测距的工作方式

利用超声波测距的工作,就可以根据测量发射波与反射波之间的时间间隔,从而达到测量距离的作用。其主要有三种测距方法:

(1)相位检测法,相位检测法虽然精度高,但检测范围有限; (2)声波幅值检测法,声波幅值检测法易受反射波的影响;

(3)渡越时间检测法,渡越时间检测法的工作方式简单,直观,在硬件控制和软件设计上都非常容易实现。其原理为:检测从发射传感器发射超声波,经气体介质传播到接收传感器的时间,这个时间就是渡越时间。

本设计的超声波测距就是使用了渡越时间检测法。在移动车辆中应用的超声波传感器,是利用超声波在空气中的定向传播和固体反射特性(纵波),通过接收自身发射的超声波反射信号,根据超声波发出及回波接收的时间差和传播速度,计算传播距离,从而得到障碍物到车辆的距离。

9

德州职业技术学院毕业设计

3、系统硬件设计

倒车防撞报警器只需要在汽车倒车时工作,为驾驶员提供汽车后方的信息。由于倒车时汽车的行驶速度较慢,和声速相比可以认为汽车是静止的,因此在系统中可以忽略多普勒效应的影响。在许多测距方法中,脉冲测距法只需要测量超声波在测量点与目标间的往返时间,实现简单,因此本系统采用了这种方法。

如图3-1所示,驾驶员将手柄转到倒车档后,系统自动启动,超声波发送模块向后发射40kHz的超声波信号,经障碍物反射,由超声波接收模块收集,进行放大和比较,单片机AT89C52将此信号送入显示模块,同时触发语音电路,发出同步语音提示,当与障碍物距离小于2m、1.5m、1m、0.5m时,发出不同的报警声,提醒驾驶员停车。

图3-1 系统工作原理框图

3.1超声波发送模块规划

超声波发送器包括超声波产生电路和超声波发射控制电路两个部分, 采取收发

10

汽车倒车雷达防撞报警系用的设计

分离方式有两个好处:一是收发信号不会混叠,接收探头所接收到的纯为反射信号;二是将接收探头放置在合适位置,可以避免超声波在物体表面反射时造成的各种损失和干扰,提高系统的可靠性。根据设计要求并综合各方面因素,选择了西安立宇电子科技有限公司的超声波测距传感器TCT40-16T/R(T表示发射传感器,R表示接收传感器),最大探测距离为6m,发射扩散角为60度。超声波探头(又称“超声波换能器”)可采用软件发生法和硬件发生法产生超声波。前者利用软件产生40kHz的超声波信号,通过输出引脚输入至驱动器,经驱动器驱动后推动探头产生超声波。这种方法的特点是充分利用软件,灵活性好,但需要设计一个驱动电流在100mA以上的驱动电路。第二种方法是利用超声波专用发生电路或通用发生电路产生超声波信号,并直接驱动换能器产生超声波。这种方法的优点是无须驱动电路,但缺乏灵活性。

本设计采用第一种方法产生超声波,电路设计如图3-2所示。

图3-2 超声波发送模块电路

40kHz的超声波是利用NE555时基电路振荡产生的。其振荡频率计算式为f=1.43/((R 9+2·R 10)·C 5)。将R 10设计为可调电阻的目的是为了调节信号频率,使之与换能器的40kHz固有频率一致。为保证NE555时基具有足够的驱动能力,宜采用+12V电源。CNT为超声波发射控制信号,由单片机进行控制。

3.2 超声波接收模块规划

超声波接收器包括超声波接收探头、信号放大电路及波形变换电路三部分。超声波探头必须采用与发射探头对应的型号,关键是频率要一致,本设计采用TCT40-16R,否则将因无法产生共振而影响接收效果,甚至无法接收。由于经探头

11

德州职业技术学院毕业设计

变换后的正弦波电信号非常弱,因此必须经放大电路放大。正弦波信号不能直接被单片机接收,必须进行波形变换。按照上面所讨论的原理,单片机需要的只是第一个回波的时刻。接收电路的设计可采用专用接收电路,也可采用通用电路来实现,如图3-3所示。

图3-3 超声波接收模块电路

超声波在空气中传播时,其能量的衰减与距离成正比,即距离越近信号越强,距离越远信号越弱,通常在1mV~1V之间。当然,不同接收探头的输出信号强度存在差异。由于输入信号的范围较大,对放大电路的增益提出了两个要求:一是放大增益要大,以适应小信号时的需要;二是放大增益要能变化,以适应信号变化范围大的需要。另外,由于输入信号为正弦波,因此必须将放大电路设计成交流放大电路。为减少负电源的使用,放大电路采用单电源供电,信号放大和变换采用了一片LM324通用运算放大器,前三级为放大器设计,后一级为比较器设计。LM324既可以双电源工作,也可以单电源工作,因此能满足使用要求。为满足交流信号的需要,每一级的放大器均采用阻容电路进行电平偏移,即图3-3中的C7、C21、C22和C24,容量均为10μF,实现单电源条件下交流信号的放大。对于交流信号而言,电容为短路,因此前三级放大电路的增益均为10。距离较近时,两级放大的增益已能够输出足够强度的信号了,第三级有可能出现信号饱和,但距离较远时,必须采用三级放大。合理调节电位器R27,选择比较基准电压,可使测量更加准确和稳定。

12

汽车倒车雷达防撞报警系用的设计

3.3 语音电路规划

图3-4 语音电路

语音报警是指当倒车雷达探测到的距离小于所设定的安全值时,发出声音提醒驾驶员,语音电路设计如图3-4所示。M3720是单声一闪灯报警音效集成电路,芯片内存储一种报警音效,可直接驱动蜂鸣器发声或经外接功放三极管推动扬声器放音,同时还能驱动一只LED闪烁。该芯片各引脚功能为:5脚VDD;1脚VSS分别为电源输入端与负端,VDD电压3~3.5V;8脚X和1脚Y分别为芯片外接振荡电阻器;6脚TG为触发控制端,低电平触发有效;3脚BZ和2脚BB分别为报警音效输出端,可直接外接压电陶瓷蜂鸣器,如果驱动扬声器则由3脚BZ端引出;4脚L为闪灯输出端,可直接驱动LED发光。

3.4 LED显示电路设计

显示器是一个典型的输出设备,而且其应用是极为广泛的,几乎所有的电子产品都要使用显示器,其差别仅在于显示器的结构类型不同而已。最简单的显示器可以使LED 发光二极管,给出一个简单的开关量信息,而复杂的较完整的显示器应该是 CRT监视器或者屏幕较大的 LCD 液晶屏。综合本课题的实际要求以及考虑单片机的接口资源,采用串行方式显示的 LED 驱动输出设备。因为需要显示的距离在10m以内,并且需要精确到mm,故采用4个LED数码管显示距离数值。

在单片机应用系统中,LED数码管的显示常用两种方法:静态显示和动态扫

13

德州职业技术学院毕业设计

描显示。所谓静态显示驱动,就是给要点亮的LED通以恒定的电流,即每一位LED显示器各引脚都要占用单独的具有锁存功能的I/O接口,单片机只需要把要显示数字的段码发送到接口电路并保持不变即可。如果要显示新的数据,再发送新的字形段码。因此,使用这种方法单片机中CPU开销小,但这种驱动方法需要寄存器、译码器等硬件设备。当需要显示的位数增加时,所需的器件和连线也相应增加,成本也增加。而动态显示驱动就是给欲点亮的LED通以脉冲电流,即采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮,这时LED的亮度就是通断的平均亮度。考虑各种因素,本设计选用动态驱动显示。LED数码管采用共阴极接法,数字的段码由译码器CD4511控制,数字的位码由74LS138控制。具体电路图如图3-5所示。

图3-5 LED数码管显示电路

14

键,一个减键。

4.1 主控制模块

4 硬件实现及单元电路设计

主控制最小系统电路如图4-1所示。

图4-1

汽车倒车雷达防撞报警系用的设计

STC89C52、超声波传感器、按键、四位数码管、蜂鸣器等一些单片机外围应用电

路。其中D1为电源工作指示灯。电路中用到3个按键,一个是设定键, 一个加

硬件电路总设计见图4-1,从以上的分析可知在本设计中要用到如下器件:

15

德州职业技术学院毕业设计

图4-2总设计电路图

4.2 电源设计

电源部分的设计采用3节5号干电池4.5V供电。

4.3 超声波测试模块

超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到 3mm。模块包括超声波发射器、接收器与控制电路。基本工作原理:采用 IO 口 TRIG 触发测距,给至少 10us 的高电平信号;模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回;有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。其中VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四支线。

超声波探测模块HC-SR04的使用方法如下:IO口触发,给Trig口至少10us的高电平,启动测量;模块自动发送8个40Khz的方波,自动检测是否有信号返回;有信号返回,通过IO口Echo输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*340)/ 2,单位为m。程序中测试功能主要由两个函数完成。

实现中采用定时器0进行定时测量,8分频,TCNTT0预设值0XCE,当timer0溢出中断发生2500次时为125ms,计算公式为(单位:ms):

T = (定时器0溢出次数 * (0XFF - 0XCE))/ 1000 其中定时器0初值计算依据分频不同而有差异。

16

汽车倒车雷达防撞报警系用的设计

5、系统软件设计

汽车倒车防撞系统根据超声测距原理用AT89C51单片机开发设计。AT89C51单片机及其开发应用系统具有语言简洁、可移植性好、表达能力强、可进行结构化设计、可以直接控制计算机硬件、生成代码质量高、使用方便等诸多优点。

整个软件采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。根据系统的要求,系统软件应具有以下功能:

(1)控制超声波发射、接收传感器的工作状态。传感器探测距离时发射传感器还要依次轮流工作,这些功能需靠软件程序来实现。

(2)根据当前的温度得到超声波的速度然后计算出倒车避撞的安全距离和报警距离。 安全距离就是设计时设的2米,根据超声波测距仪测定距离与设定的值比较。如果测量的距离小于2米大于或等于1.5米时,发出Bi,Bi,Bi的声音;小于1.5大于或等于1.0米时,发出BiBiBi,BiBiBi,BiBiBi的声音;小于1.0米大于0.5米时发出连续的Bi的声音;小于等于0.5米时,发出语音“危险”提示。

(3)测出超声波信号的往返时间,来计算出最近的障碍物与车的距离。超声波从发射出去碰到障碍物返回接收传感器的时间,需要通过软件定时器来记录。根据这个时间才能计算出障碍物的距离。

软件设计的主要思路是将预置、发射、接收、显示、声音报警等功能编成独立的模块,在主程序中采用键控循环的方式,当按下控制键后,在一定周期内,依次执行各个模块,调用预置子程序、发射子程序、查询接收子程序、定时子程序,并把测量的结果进行分析处理,根据处理结果决定显示程序的内容以及是否调用声音报警程序。当测得距离小于预置距离时,声音报警程序被调用。主程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式。置位总中断允许位EA并给显示端口P0和P2清0。然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1 ms(这也就是超声波测距仪会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。由于采用的是12 MHz的晶振,计数器每计一个数就是1 s,当主程序检测到接收成功的标志位后,将计数器TO中的数(即超

17

德州职业技术学院毕业设计

声波来回所用的时间)按式(3)计算,即可得被测物体与测距仪之间的距离,假设当前温度是20℃, 则声速为344 m/S,则有:d=(cxt)/2=172To/10000cm(3)其中,To为计数器T0的计算值。测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。

图5-1 主程序流程图

图5-2定时中断服务子程序

18

汽车倒车雷达防撞报警系用的设计

6、系统误差分析及改进

超声波测距仪的制作和调试都比较简单,安装时探头时应保持两换能器中心轴线平行并相距4~8cm,其余元件无特殊要求。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C的大小,以获得合适的接收灵敏度和抗干扰能力。系统调试完后对测量误差和重复一致性进行多次实验分析,不断优化系统使其达到实际使用的测量要求。

6.1发射器探头对接收器探头的影响

超声波从发射到接收的时间间隔是由控制器内部的定时器来完成的。由于发射器探头与接收器探头的距离不大,有部分波未经被测物就直接绕射到接收器上,造成发送部分与接受部分的直接串扰问题。这一干扰问题可通过软件编程,使控制器不读取接收器在从发射开始到\虚假反射波\结束的时间段里的信号。这样,就有效的避免了干扰,但另一方面也形成了20cm的“盲区”。此“盲区”很小,对本系统没有影响。

6.2回波检测对时间测量的影响

超声波从超声传感器发出,在空气中传播,遇到被测物反射后,再传回超声传感器。整个过程,超声波会有很大的衰减。其衰减遵循指数规律。设在距离超声接收器x 处有被测物,则空气中传播的超声波波动方程描述为:

A=A(x)cos(ax+kt) (公式5-1)

其中A为超声传感器接收的振幅;A0 为超声传感器初始振幅;α为衰减系数;x 为超声波传播距离;w角频率;k 为波数。衰减系数α=b·f。其中b为空气介质常数,f为超声波频率。由此可见,超声波频率越高,其衰减越快。同时超声波频率的过高会产生较多的副瓣,引起近场区的干涉。但是,超声波频率越高,指向性越强,这一点有利于距离测量。由于超声回波随距离的增加而变得十分微弱,所以在设计超声接收电路时,要设计较大放大倍数(万倍级)和较好滤波特性的放大电路,使回波易于检测。

19

德州职业技术学院毕业设计

6.3超声传感器所加脉冲电压对测量范围和精度的影响

制作超声传感器的材料分为磁致伸缩材料和压电材料两种。超声测距常用压电材料传感器,例如TCT40压电超声传感器。超声传感器外加脉冲电压的幅值会影响压电转换效率。当压电材料不受外力时,其应变S与外加电场强度E 的关系为:

S=d·E (公式5-2)

其中d 为应变电场常数。超声传感器外加的脉冲电压影响压电材料的电场强度,从而影响其应变量和超声转换的效率,进而影响超声波幅值。这些会直接影响超声波的回波幅值。所以,为提高压电转换效率,提高超声测距精度和范围,应尽量提高超声传感器外加脉冲电压的幅值。

6.4针对误差产生原因的系统改进方案

在实际应用中,为了方便处理,超声波常调制成具有一定间隔的调制脉冲波信号。测距系统一般由超声波发送、接收、时间计测、微机控制和温度测量五个部分组成。如何提高测量精度是超声测距的关键技术。其提高测距精度的措施下:

(1)合理选择超声波工作频率、脉宽及脉冲发射周期;

据经验,超声测距的工作频率选择f=40kHz 较为合适:发射脉宽一般应大于填充波周期的10倍以上即:T>0.25s,考虑换能器通频带及抑制噪声的能力,选择发射脉宽1ms;脉冲发射周期的选择主要考虑微机处理数据的速度,速度赶快,脉冲发射周期可选短些。

(2) 在超声波接收回路中串入增益调节(AGC)及自动增益负反馈控制环节; 因超声接收波的幅值随传播距离的增大呈指数规律衰减,所以采用(AGC)电路使放大倍数随测距距离的增大呈指数规律增加的电路,使接收器波形的幅值不随测量距离的变化而大幅度的变化,采用电流负反馈环节能使接收波形更加稳定。

(3)提高计时精度,减少时间量化误差;

如采用芯片计时器,计时器的计数频率越高,则时间量化误差造成的测距误差就越小。例如:单片机内置计时器的计数频率只有晶振频率的十二分之一,当晶振频率为6MHz时,计数频率为0.5MHz此时在空气中的测距时间量化误差为0.68mm;当晶振频率为12MHz时,计数频率为1MHz,此时测距时间量化误差为

20

汽车倒车雷达防撞报警系用的设计

0.34mm。若采用外部硬件计时电路,则计数频率可直接引用单片机的晶振频率,时间量化误差更小。

(4) 补偿系统电路的时间延迟。

系统电路的时间延迟可通过实验测定,通过测试两个已知标准距离S1、S2所得到的时间t1、t2,可求出系统电路的延迟,(s1·t2-s2·t1)/(s2-s1)。

结论

21

德州职业技术学院毕业设计

本文所设计的汽车倒车防撞报警器是保障汽车倒车安全的辅助系统,通过超声波探头发出超声波,使用高速单片机计算距离,并加入了温度补偿电路,提高了距离计算的精度。系统安装的液晶显示器可以直观的显示温度和距离,给驾驶员提供了方便。倒车时当汽车与障碍物的距离小于所设定的安全距离时,系统便通过语音集成电路发出报警,提醒驾驶员,防止汽车的碰撞或擦伤,具有很强的实用性。由于探头安装位置的关系,车后上方的障碍物一般是无法探测到的;此外,当车后方的障碍物过低(坑洼、小水沟)或角度超过探头侦测的范围时,譬如台阶、石头等,对一些较细的东西,如铁丝等,倒车防撞报警器同样无能为力。倒车防撞报警器只能作为司机朋友的一种辅助设备,但不能过分依赖防撞报警器,必要时应下车观察路况及周边环境。如果将报警器加以改进发展,使其可以在倒车时能重复发出“倒车,请注意”的语言警告声提醒行人注意。在声光报警之后再加上一个报警电路, 随时监测蓄电池电压,当电压低于11.2V时,发出声光警告声提醒驾驶员注意充电,以保证仪器及汽车能正常工作。加入数据采集系统,可以实现倒车过程中,驾驶员不回头便可看到车后情况。但基于我现在的水平,一些功能还未能实现,在今后的工作实践当中,我会认真学习这方面的技术,争取实现全部的功能或作出更大突破。

在这个过程中,我们学会了独立思考,坚持不接的精神,让自己的动手实践能力得到了锻炼。虽然课程设计只有两周的时间,但这段时间我们学到的东西却是真正能在今后用的到的。把书本知识运用到实践中,活学活用,这是我们所欠缺的。另一方面,我们也发现平时的理论知识掌握的不够好,当真正用到时才意识到理论的重要性。课程设计是一个不断发现不足,查漏补缺的过程,对于即将毕业的我们来说至关重要,关系到我们今后在实践中能否运用在校知识,能否独立解决问题。今后,我们平时也应该多动手进行设计,将书上的知识用于实践中,这样才能发现问题并获得进步。

22

汽车倒车雷达防撞报警系用的设计

致 谢

首先,要谢谢我的几位好同学,我在大学的专业课学得不是很好,所以一些重要知识都没有掌握。但在我写论文的期间,我的这几位同学不厌其烦的指点我,是我能在短时间掌握这些重要的专业知识,是我在写论文时不会遇到那么多难题。其次要谢谢我的指导老师田老师,在没有任何思路的时候,他给我很多宝贵的建议,是我能够短时间內找到一条的好的思路,思路是一篇论文的核心,所以我要谢谢我的指导老师。这篇论文是我用了15天的时间完成的,15天里我学到很多的东西,我明白了写论文只是一个过程,而不是最终的目的。领导老师们只是给了我们一个目标,要怎么完成只能靠我们自己,这时候你要去寻求同学、老师、朋友的帮助,这样有助你更好的完成你这个目标。当然我也要谢谢给我帮助的网友们,我有个习惯,一遇到什么问题我会第一时间去网上问答,征求网友的意见。很多都会给你意见,这些意见有好的有不好,我把好吸收进来,所以我要谢谢给过我意见的网友们。

在这三年的学习生活中,感谢电子系给了我发挥的机会和展现自我的舞台。在那里我学到了知识,结识了一帮有着共同爱好的朋友,我们大家共同学习,为完成毕业设计打下了坚实的基础,在此我向他们表示诚挚的祝福。

最后,我感谢我的家人和朋友,他们对我的支持和付出是我的毕业设计得以顺利进行的保障。

谢谢大家!

23

德州职业技术学院毕业设计

参考文献

[1]沈进棋.移动机器人多路超声波数据采集系统的研究与实现[J].电子技术,2003,(6).

[2]马义德.汽车防撞系统的研究[J].交通管理,2004,(7).

[3]杨自栋.简易超声波测距仪的软硬件设计[J].农业装备与车辆工程,2005,(4).

[4]左震.黄芝平.骆潇.超声波测距仪与嵌入式SPT-K控制器在汽车自动刹车系统中的应用.中国半导体设备与材料网,wwwEsosemi.net 2006,5.

[5]韩赞东.超声定位技术在汽车安全预警系统中的应用[J].测控技术,2002,(8).

[6]雷辉.基于AT89C2051的智能型汽车防撞报警器的设计[J].电子工程师.2003年2期.第11-12

[7] 戴佳,戴卫恒,刘博文.51单片机C语言应用程序设计实例精讲 [M].北京:电子工业出版社(第二版),2008.12

[8] 江思敏,陈明.Protel电路设计教程 [M].2版.北京:清华大学出2009.11

24

汽车倒车雷达防撞报警系用的设计

附 录

#include #include sbit RX=P0^1; sbit TX=P0^2; unsigned int time=0; unsigned int timer=0; unsigned int wei=0; unsigned long S=0; bit flag =0; unsigned

char

const

table_d[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF,0xff};

unsigned char const table_w[]={0xef,0xf7,0xfb}; unsigned char cfs[]={0,0,0,0};

/********************************************************/ void Display(void)

{

if(wei==0)

{P1=(table_d[cfs[wei]])&0x7f;} else

{P1=table_d[cfs[wei]];} P2=table_w[wei]; if(++wei>=3) wei=0; }

/********************************************************/ void jisuan()

25

德州职业技术学院毕业设计

{

time=TH0*256+TL0; TH0=0; TL0=0;

S=(time*1.7)/100; if((S>=450)||flag==1) { flag=0; cfs[0]=10; cfs[1]=10; cfs[2]=10; } else {

cfs[0]=S/100; cfs[1]=S0/10; cfs[2]=S; } }

/********************************************************/ void zd0() interrupt 1 {

flag=1; }

/********************************************************/ void zd3() interrupt 3 {

TH1=0xf8; TL1=0x30;

26

汽车倒车雷达防撞报警系用的设计

Display(); timer++; if(timer>=400) {

timer=0; TX=1;

_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0;

}

}

27

德州职业技术学院毕业设计

/*********************************************************/

void main()

{

TMOD=0x11;

while(1) {

while(RX==0); TR0=1;

TH0=0;

TL0=0; TH1=0xf8; TL1=0x30;

ET0=1; ET1=1; TR1=1; EA=1;

while(RX==1); TR0=0;

jisuan(); }

}

#include #include

#include

#define uchar unsigned char

#define uint unsigned int

28

汽车倒车雷达防撞报警系用的设计

sbit RX=P0^1; sbit TX=P0^2;

sbit bee=P0^7;

sbit DATA=P3^6; //DS18B20接入口

sbit che0=P3^4; sbit che1=P3^5; unsigned int time=0; unsigned int timer=0; unsigned int wei=0; unsigned long S=0; bit flag =0; int v;

int temp; //温度值

unsigned

char

const

table_d[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF,0xff};

unsigned char const table_w[]={0xef,0xf7,0xfb}; unsigned char cfs[]={0,0,0,0};

/********************************************************/

void delay(uint i) { }

/********************************************************/ void delay_d(uint num) {

uchar x,j; for(j=0;j

while(num--) ;

29

德州职业技术学院毕业设计

}

//DS18b20温度传感器所需函数,分为初始化,读写字节,读取温度4个函数 Init_DS18B20(void) { }

ReadOneChar(void) //读一个字节 { }

30

//传感器初始化

uchar x=0;

DATA = 1; //DQ复位 delay_d(10); //稍做延时 DATA = 0; //单片机将DQ拉低

delay_d(80); //精确延时 大于 480us //450 DATA = 1; //拉高总线 delay_d(20);

x=DATA; //稍做延时后 如果x=0则初始化成功 x=1则初始化失败 delay_d(30);

uchar i=0; uchar dat = 0; for (i=8;i>0;i--) { }

return(dat);

DATA = 0; // 给脉冲信号 dat>>=1;

DATA = 1; // 给脉冲信号 if(DATA) dat|=0x80; delay_d(8);

汽车倒车雷达防撞报警系用的设计

WriteOneChar(unsigned char dat) //写一个字节 { uchar i=0;

for (i=8; i>0; i--) { DATA = 0;

DATA = dat&0x01;

delay_d(10); DATA = 1; dat>>=1; }

delay_d(8);

}

int ReadTemperature(void) //读取温度 { uchar a=0; uchar b=0; int t=0; float tt=0; Init_DS18B20();

WriteOneChar(0xCC); // 跳过读序号列号的操作 WriteOneChar(0x44); // 启动温度转换 Init_DS18B20();

WriteOneChar(0xCC); //跳过读序号列号的操作

WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器)就是温度 a=ReadOneChar();//低位 b=ReadOneChar();//高位 t=b;

t<<=8;

31

前两个 德州职业技术学院毕业设计

}

t=t|a; tt=t*0.0625; t= tt/10+0.5; return(t);

/********************************************************/ void Display(void)

{

if(wei==0)

{P1=(table_d[cfs[wei]])&0x7f;} else

{P1=table_d[cfs[wei]];} P2=table_w[wei]; if(++wei>=3) wei=0; }

/********************************************************/ void jisuan()

{

float t;

time=TH0*256+TL0; t=time*0.00001; TH0=0; TL0=0; S=5*v*t;

if((S>=450)||flag==1) { flag=0; cfs[0]=10;

32

汽车倒车雷达防撞报警系用的设计

cfs[1]=10; cfs[2]=10; } else {

cfs[0]=S/100; cfs[1]=S0/10; cfs[2]=S; } }

/*********************************************************/ void ceju()

{

while(RX==0); TR0=1;

while(RX==1); TR0=0;

jisuan();

}

/********************************************************/ void zd0() interrupt 1 {

flag=1; }

/********************************************************/ void zd3() interrupt 3 {

TH1=0xf8; TL1=0x40;

33

德州职业技术学院毕业设计

Display();

timer++;

if(timer>=400) {

timer=0; TX=1;

_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0;

}

}

34

汽车倒车雷达防撞报警系用的设计

/*********************************************************/

void main()

{

temp=ReadTemperature();

v=sqrt(1+(temp/268.15))*346.4+0.5;

TMOD=0x11;

TH0=0;

TL0=0; TH1=0xf8;

TL1=0x40;

ET0=1; ET1=1; TR1=1;

EA=1;

che0=1;

che1=0; while(1) {

ceju();

if(S<=50) bee=0; else if(50

while(1) { bee=0; delay(90);

bee=1;

35

德州职业技术学院毕业设计

ceju();

if(S>150||S<=50) break;

}

} else

bee=1; }

}

36

本文来源:https://www.bwwdw.com/article/7k8p.html

Top