泊车用超声波测距仪的研制软硬件.docx
《泊车用超声波测距仪的研制软硬件.docx》由会员分享,可在线阅读,更多相关《泊车用超声波测距仪的研制软硬件.docx(56页珍藏版)》请在冰豆网上搜索。
泊车用超声波测距仪的研制软硬件
泊车用超声波测距仪的研制(软、硬件)
中文摘要
随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。
由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。
利用超声波检测距离,设计比较方便,计算处理也较简单。
它广泛用于防盗,水位测量,倒车雷达,建筑施工工地以及一些工业现场。
利用超声波测距原理,出于低成本、高精度的目的,本论文提出了一种基于STC89C52单片机的超声波测距系统。
介绍了超声波测距系统各个模块的功能构成,包括超声波传感器的原理和特性、STC89C52单片机的性能和特点、超声波发射接收电路、温度采集电路以及显示电路和声光报警电路。
设计出了以STC89C52单片机为核心的微型化数字显示超声波测距仪的硬件电路和软件控制系统,并基本完成课题所要求的参数标准。
该系统电路设计合理,具有性能良好、工作稳定、检测速度较快、计算简单、易于实时控制等优点。
关键词:
超声波;测距;单片机;LCD显示;软件设计;DS18B20温度补偿
AnElectronicProductionwithUltrasonicRangefinderforParking
(HardwareandSoftware)
ABSTRACT
Withtherapiddevelopmentofscienceandtechnology,ultrasoundwillbemorewidelyappliedintherangefinder.Ultrasonichasstrongabilityofdirectionanditsenergylossesslowlyandthepropagationdistanceisfartherandsoonotheradvantages.Thereforeultrasoundisoftenusedfordistancemeasurement.Itiseasierfordesignandmoresimplerfordisposingifuseultrasonicrangefinderformeasuredistance.Itiswidelyusedforsecurity,waterlevelmeasurement,reversingradar,theplaceofconstructionandsomeindustrialfields.
Usingultrasonicrangingprinciple,forthepurposeoflow-cost,high-precision,thispaperpresentsamicrocontroller-basedSTC89C52ultrasonicrangingsystem,anditintroducesthefunctionofeachmoduleofthecompositionultrasonicrangingsysteminthissubject.IncludingSTC89C52SCMperformanceandcharacteristics,theprincipleandcharacteristicsofultrasonicsensor,theultrasoniclaunchingreceivingcircuitanddisplayer,temperaturedataacquisitioncircuit,displaycircuit,soundandlightalarmcircuit.ThisarticlebasedonthetheoryofultrasonicrangingtodesignthehardwarecircuitofminiaturizationdigitaldisplayerofultrasonicrangefinderandcontrolsystemofsoftwarewhichisforthecorewithSTC89C52SCM,andthesubjectbasicallymeetstheparametersrequiredstandards.
Thisdesignofsystemcircuitisveryreasonable,andhasgoodperformance,itcanworkingsteadilywithhighspeedofexamination,what’smore,it'snotonlyeasytocalculate,butalsoeasytocontrolinreal-time,andetc.
KEYWORD:
Ultrasonic;ranging;microcontroller;LCDdisplay;softwaredesign;DS18B20temperaturecompensation
目录
第一章绪论1
1.1研究背景1
1.2研究目的和意义1
第二章超声波测距原理3
2.1超声波传感器3
2.1.1超声波传感器的原理3
2.1.2超声波传感器的特性4
2.2超声波测距原理5
第三章两种超声波测距方案比较6
3.1基于单片机的超声波测距系统6
3.2基于锁相环合成技术的超声波测距系统6
3.3设计的主要内容7
第四章STC89C52单片机简介8
4.1单片机基础知识8
4.1.1单片机内部结构8
4.1.2单片机的基本工作原理11
4.2STC89C52单片机引脚介绍11
4.3STC89C52的主要性能[6]13
第五章系统主要硬件电路设计15
5.1超声波测距系统总体设计方案15
5.2超声波发射电路和接收电路的设计15
5.2.1超声波发射电路15
5.2.2超声波接收电路16
5.3单片机主机系统电路17
5.3.1复位电路17
5.3.2时钟电路18
5.3.3温度测量电路18
5.3.4声光报警电路18
5.3.5LCD显示电路19
第六章系统软件设计21
6.1系统主程序21
6.2系统子程序21
6.2.1定时中断服务子程序21
6.2.2外部中断子程序22
6.2.3超声波发送子程序23
6.2.4DS18B20温度采集子程序23
6.2.5LCD显示子程序23
6.2.6声光报警子程序24
第七章电路调试和误差分析与测量25
7.1电路调试25
7.1.1硬件调试25
7.1.2软件调试26
7.2误差分析26
7.2.1单片机时间分辨率的影响26
7.2.2超声波回波声强的影响26
7.3测试结果26
总结28
参考文献29
致谢30
附录31
第一章绪论
随着社会经济的发展,交通运输业日益兴旺,汽车的数量在大副攀升。
交通拥挤状况也日趋严重,撞车事件屡屡发生,造成了不可避免的人身伤亡和经济损失。
超声波测距法是最常见的一种距离测距方法,其作为一种特殊的声波,同样具有声波传输的基本物理特性——折射,反射,干涉,衍射,散射。
超声波测距即是利用其反射特性,当倒车时,超声波距离传感器利用超声波检测车辆后方的障碍物位置,并利用指示灯及蜂鸣器把车辆到障碍物的距离通知驾驶人员,起到安全的作用。
1.1研究背景
随着科技的快速发展,越来越多先进的科技成果被广泛的运用到我们的生活中,给我们的日常生活带来了许多变了。
本设计就是利用超声波的一些特性,设计超声波测距仪,用于人类的生活。
超声波作为一种检测技术,采用的是非接触式测量,由于它具有不受外界因素的影响,对环境有一定的适应能力,且操作简单、测量精度高等优点而被广泛应用。
人们日常所听到的声音是由于物体震动而产生的,它的频率在20HZ-20KHZ范围内,通常超过20KHZ的声波称为超声波,低于20HZ的声波称为次声波。
常用的超声波频率为几十千赫兹到几十兆赫兹。
由于超声波指向性强,因而常用于距离的测量。
利用超声波检测比较迅速、方便,并且计算简单、易于做到时间控制,并且在测量精度方面能达到工业实用的要求。
因此在移动机器人,汽车安全,海洋测量等上得到了广泛的应用[1]。
本设计是一种液晶显示测距装置,该设计利用了发射接收一体化的超声波传感器和微处理器,采用超声波传感器分时工作来发射和接收超声波,利用声波在空气中的传播速率和发射脉冲到接收反射脉冲的时间间隔来计算障碍物到超声波测距器之间的距离。
并且采集环境温度进行测距补偿,提高了测量精度。
1.2研究目的和意义
距离通常是我们生活中经常要测量的重要参数,所以测距就成为数据采集集中要解决的问题。
虽然距离的测量方式有很多,例如,微波测距,激光测距,红外线测距,超声波测距等等。
但是,综合看来超声波测距无疑不是一种既简单又方便的可行方法。
超声波测距电路可以由传统的模拟或者数字电路搭建,但是基于传统电路搭建的系统往往可靠性差,调试困难,可扩展性差,所以基于单片机的超声波测距系统被广泛的应用。
通过简单的外围电路发生和接收超声波,单片机通过采样获取到超声波的传播时间,用软件来计算出距离,其测量电路小巧,精度高,反映速度快,可靠性好。
本设计就是利用单片机实现,成本低廉,性能可靠,所用的元器件也容易购买,并且利用测距原理,结合单片机的控制和数据处理原理,电路非常容易实现,无需调试,并且工作稳定可靠。
超声波测距系统主要应用于车辆的倒车雷达、机器人自动躲避障碍行走、建筑施工工地以及一些工业现场。
例如:
测量液位、管道长度、井深等场合。
也可应用于航海、宇航、石油化工等工业领域。
因此,研究超声波测距系统的原理有着很大的现实意义。
通过对本课题的研究和设计,设计者能够进一步提高自己的电路设计水平以及软件编程水平,深入对单片机和超声波传感器的理解和应用。
第二章超声波测距原理
超声波是一门以物理、电子、机械、以及材料科学为基础的、各行各业都要使用的通用技术之一。
该技术在国民经济中,对提高产品质量,保障生产安全和设备安全运作,降低生产成本,提高生产效率特别具有很大的潜在能力。
因此,我国对超声波的研究特别活跃。
2.1超声波传感器
2.1.1超声波传感器的原理
超声波是一种震动频率高于声波的机械波,它频率高,波长短,绕射现象小,尤其具有方向性好等特点。
现代科技需要超声波作为检测手段,就必须有一种产生超声波和接收超声波的器件,这种器件就是超声波传感器,也可称为换能器或者我们日常说的超声波探头。
总体上讲,超声波传感器可以分为两大类:
一类是用电气方式产生超声波,一类是用机械方式产生超声波。
电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等[2]。
它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也不相同。
目前较常用的是压电式超声波传感器。
本设计选用的是压电式超声波传感器。
压电式超声波传感器是利用压电晶体的谐振来工作的。
它有两个压电晶片和一个共振板。
当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。
反之,如果两极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了[3]。
超声波传感器结构如下:
图1超声波外部结构图2元件内部结构
图3超声波传感器实物图
2.1.2超声波传感器的特性
超声波传感器的核心是其塑料外套或者金属外套中的一块压电晶片。
构成晶片的材料可以有许多种。
晶片的大小,如直径和厚度也各不相同,因此每个传感器的性能是不同的,所以使用前必须先了解它的性能。
超声波传感器的主要性能指标包括:
(1)工作频率。
工作频率就是压电晶片的共振频率。
当加到它两端的交流电压的频率和晶片的共振频率相等时,输出的能量最大,灵敏度也最高。
(2)工作温度。
由于压电材料的居里点一般比较高,特别是诊断使用用超声波探头功率较小,所以工作温度比较低,可以长时间地工作而不产生失效。
医疗用的超声探头的温度比较高,需要单独的制冷设备。
(3)灵敏度。
主要取决于制造晶片本身。
机电耦合系数大,灵敏度高;反之,灵敏度低。
在特性方面,超声波传感器的带宽较窄,大部分是在标称频率附近使用,所以要采取措施扩展频带,例如,接入电感等。
另外,发送超声波是输入功率较大,温度变化使谐振频率偏移这也是不可避免的,所以对于压电陶瓷元件非常重要的是要进行频率调整和阻抗匹配。
由于超声波传感器方向性的特点,使它在较宽范围内具有较高的检测灵敏度,因此非常适用于物体检测和防护报警装置。
2.2超声波测距原理
超声测距从原理上可分为共振式、脉冲反射式两种。
由于应用要求限定,本设计使用脉冲反射式,即利用超声的反射特性。
超声波测距原理是通过超声波发射传感器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就停止计时。
由于超声波也是一种声波,其声速c与空气温度有关,一般来说,温度每升高1摄氏度,声速增加0.610米/秒。
表1列出了几种温度下的声速:
表1声速与温度的关系表
温度(摄氏度)
-30
-20
-10
0
10
20
30
100
速度(米/秒)
313
319
325
323
338
344
349
386
在使用时,如果温度变化不大,则可认为声速c是基本不变的,计算时取c为340m/s。
如果测距精度要求很高,则可通过改变硬件电路增加温度补偿电路的方法或者在硬件电路基本不变的情况下通过软件改进算法的方法来加以校正。
在本系统中利用STC89C52中的定时器测量超声波传播时间,利用DS18B20测量环境温度,从而提高测距精度。
空气中声速与温度的关系可表示为:
(2.1)
声速确定后,只要测得超声波往返的时间,即可求得距离:
(2.2)
第三章两种超声波测距方案比较
3.1基于单片机的超声波测距系统
由单片机编程产生波形,再经过放大电路,驱动超声波发射探头发射超声波。
发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路放大、整形等一系列处理,送至单片机。
单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。
其系统框图如图4所示。
图4基于单片机的超声波测距系统框图
这种以单片机为核心的超声波测距系统,通过单片机记录超声波发射的时间和收到反射波的时间。
当接收到超声波的反射波时,接收电路输出端会产生一个负跳变,在单片机的外部中断源输入口产生一个中断请求信号,此时单片机会响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,显示温度再把结果输出给LCD显示。
利用单片机准确计时,测距精度高,而且单片机控制方便,计算简单。
很多超声波测距系统都采用此设计方法。
3.2基于锁相环合成技术的超声波测距系统
采用锁相环频率合成技术,也可以实现我们所需要的超声波测距仪。
具体方案如下:
首先通过频率合成技术产生超声波所需要的频率,在通过信号线将采用锁频率相合成技术得到的频率引到超声波的发射头上,这样就可以实现超声波测距[4]。
它的优点就是工作频率可调,也可以达到很高的频率分辨率;缺点是要求使用的滤波器通带可变,实现很困难。
其系统框图如图5所示。
图5基于锁相环合成技术的超声波测距系统框图
3.3设计的主要内容
通过上节的两种方案介绍,可知,虽然基于锁相环合成技术的超声波测距系统也能够可靠的测得我们想要的距离数据,但是由于其实现上比较困难,而以单片机为核心的超声波测距系统的设计更为简单、方便,测距精度能够达到本设计所要求的性能,所以我选择用以单片机为核心的超声波测距系统设计。
通过超声波发射器向某个方向发射超声波,当遇到障碍物超声波就会立即反射回来,超声波接收器收到反射波就立即停止计时。
超声波在空气中的传播速度为c,根据计时器记录的时间t,就可以计算出发射点到障碍物的距离s。
本系统利用单片机控制超声波的发射和对超声波自发射至接收往返所需的时间。
超声波接收电路的输出端接到单片机的外部中断源输入口处。
系统定时发射超声波,在启动发射电路的同时启动单片机内部的定时器,利用定时器的计时功能记录超声波发射的时间和收到反射波的时间。
当收到反射波时,接收电路输出端产生一个负跳变,在单片机的外部中断源输入口产生一个中断请求信号,此时,单片机会响应外部中断请求执行外部中断服务子程序,读取时间差,显示温度,计算距离,然后再把结果输出给LCD显示并声光报警。
利用本测距系统测量距离,范围在0.25m—1.5m内,温度在-20—60℃,其最大误差控制在0.5%以内。
第四章STC89C52单片机简介
本次所设计的超声波测距系统是基于单片机控制的,在介绍电路设计之前,我们先来简单了解一下单片机的工作原理,由于此次设计的超声波测距系统是以STC89C52为核心的,所以,在本章先简单的介绍一下STC89C52的一些特性。
4.1单片机基础知识
在一块半导体硅片上集成了中央处理单元(CPU)、存储器(RAM/ROM)和各种I/O接口,这样的一片集成电路芯片具有一台微型计算机的属性,因而被称为单片微型计算机,简称单片机。
单片微型计算机是微型计算机的一个重要分支,也是一种非常活跃且颇具生命力的机种。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
CPU(CentralProcessingUnit,中央处理器)、存储器和I/O接口电路等。
因此,它只要与适当的软件以及外部设备相结合,便可成为一个单片机控制系统。
单片机的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。
从此,计算机技术在两个重要领域——通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。
自20实际70年代以来,单片机已广泛应用在工业自动化、自动检测与控制、智能仪器仪表、家用电器、机电一体化设备、汽车电子等各个方面。
4.1.1单片机内部结构
本系统采用STC89C52单片机。
STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
它在一块超大规模集成电路芯片上,集成了包括有CPU、RAM、ROM、定时器和多种I/O接口等电路。
也就是说,在一块单片机芯片中所具有的功能,包括了一台微型计算机的基本功能。
单片机内部结构如下图图6所示。
图6单片机内部结构图
由图6可见,中央处理器(CPU)是通过内部总线与ROM、RAM、I/O接口以及定时器/计数器相连的,这个结构并不复杂,但并不好理解。
为此,在分析单片机工作原理前,先对图6中各部件作一基本介绍是十分必要的。
1、中央处理器(CPU)
(1)运算器
运算器主要用于对二进制进行算术运算和逻辑运算,其操作顺序在控制下进行。
运算器是由算术逻辑单元ALU、累加器A、通用寄存器RO、暂存器TMP和状态寄存器PSW五部分组成。
其中,ALU(算术逻辑单元)主要由加法器、移位电路和判断电路等组成,主要用于对累加器A和暂存器TMP中两个操作数进行四则运算和逻辑操作。
累加器A(Accumulator)是一个具有输入/输出能力的移位寄存器,由8个触发器组成。
PSW(ProgramStatusWord,程序状态字)也由8位触发器组成,用于存放ALU操作过程中形成的状态。
(2)控制器
控制器是计算机的指挥中心,是发布操作命令的机构,相当于人脑的神经中枢。
控制器由指令部件、时序部件和微操作控制部件等三部分组成。
指令部件是一种能对指令进行分析、处理和产生控制信号的逻辑部件,也是控制器的核心。
指令是一种能供机器执行的控制代码,有操作码和地址码两部分。
时序部件由时钟系统和脉冲分配器组成,用于产生微操作控制部件所需的定时脉冲信号。
微操作控制部件可分为指令译码器输出信号配上节拍点位和节拍脉冲,也可与外部进入的控制信号组合,共同形成对应的微操作控制序列,来完成指定的操作。
2、存储器
(1)ROM
ROM(ReadOnlyMemory,只读存储器)一般为1-32K字节,用于存放应用程序,故又称为程序存储器。
为了提高系统的可靠性,应用程序通常固化在片内ROM中,根据片内ROM的结构,单片机又可分为无ROM型、ROM型和EPROM(ErasableProgrammableReadOnlyMemory,可擦除可编程只读存储器)型三类。
近年来,又出现了EEPROM(ElectricallyErasableProgrammableReadOnlyMemory,电擦除可编程只读存储器)和Flash型ROM存储器。
无ROM型单片机特点是片内不集成ROM存储器,故应用程序必须固化到外接的ROM存储器芯片中,才能构成有完整功能的单片机应用系统。
ROM型单片机内部,其程序存储器是采用掩膜工艺制成的,程序一旦固化进去便永远不能修改。
EPROM型单片机内部的程序存储器是采用特殊FAMOS管构成的,程序一旦写入,也可以通过一些特殊手段加以修改。
(2)RAM
单片机片内RAM(RandomAccessMemory,随机存取存储器)容量为64-256字节,最多可达48K字节。
RAM主要用来存放实时数据或作为通用寄存器、数据堆栈和数据缓冲器之用。
3、内部总线
单片机内部总线是CPU连接片内各主要部件的纽带,是各类信息传送的公共通道。
内部总线主要由地址线、数据线和控制线/状态线组成。
地址线主要用来传送存储器所需要的地址码或外部设备的设备号,通常由CPU发出并被存储器或I/O接口电路所接收。
数据线用来传送CPU写入存储器或经I/O接口送到输出设备的数据,也可以传送从存储器或输入设备经I/O接口读入的数据。
因此,数据线通常是双向信号线。
控制/状态线有两类:
一类是CPU发出的控制命令,如读命令、写命令、中断响应等;另一类是存储器或外设的状态信息,如外设的中断请求、存储器忙和系统复位信号等。
4、I/O接口
I/O接口电路有串行和并行两种。
串行I/O用于串行通信,它可以把单片机内部的并行8位数据(8位机)变成串行数据向外传送,也可以串行接收外部送来的数据并把它们变成并行数据送给CPU处理。
并行I/O口电路可以使单片机和存储器或外设之间并行地传送8位数据(8位机)。
4.1.2单片机的基本工作原理
单片机要能够听从指挥,实现设计者想得到的功能,就必须通过执行程序来工作。
执行不同的程序就会完成不同的任务,单片机执行程序的过程实际上就体现了单片机的工作原理。
所以程序的编写对于单片机功能的实现起着非常的作用。
每一种单片机都有它的指令系统。
指令是一种可以供计算机执行的控制代码有又可称为指令码,指令码由操作码和地址码构成。
操作码用于指示机器执行何种操作,地址码则是用于指示参加操作的数据在何处。