毕业设计初稿_第1页
毕业设计初稿_第2页
毕业设计初稿_第3页
毕业设计初稿_第4页
毕业设计初稿_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要超声波汽车倒车探测器是一种能够实时显示车后障碍物状况的汽车倒车辅助装置。在现实生活中应用十分广泛。本文根据声波在空气中可定向发射和反射的原理,以超声波换能器为接口部件,应用单片机技术设计了一套超声波测距系统。文章提出了微解决器控制的超声波汽车倒车测距系统的设计方案。微解决器计算超声波从发射到接受的时间,在数据解决中采用温度赔偿技术对超声波在空气中的传输速度进行修正,计算出距离,并根据障碍物与车尾的距离远近状况发出不同等级的报警声,同时显示车后障碍物与车体的距离。论文概述了超声波探测器的发展状况及基本原理。对测距系统发射、接受、检测、显示等部分的设计方案进行了分析。从系统的性能需求、实用规定出发,对系统构成、检测原理和办法作出选择并对软硬件进行了设计。文章具体叙述了系统的硬件设计过程,并给出了系统软件设计程序流程图,通过误差分析,阐明了系统应用的实用性。

AbstractTheultrasonicwaveautomobileback-draftdetectorisonekindauxiliaryunitthatcandisplaytheconditionoftheobstaclebehindthevehicleinrealtime.Itappliesextremelywidelyinthereallife.Inthispaper,accordingtothetransmissionreflectiontheoryofwaveintheair,usingsupersonictransducerasinterfaceunitandapplyingmonolithicmachinetechniquestodesignaseriesofbusultrasonicmeasuringsystem.ThispaperintroducesthedesignofultrasonicrangesysteminBackCarbasedonmicroprocessor.Themicroprocessorcontrolthetimeandtransmittingandreflectingbackofultrasonic,thedistancecanmeasurethroughcalculatingthespeedofultrasonicincar,andusethetemperaturecompensationamendmentinthedataofthespeedprocessing.Thesystemcanalertaccordingtothechangingdistance,thedistancecouldbedisplayedonrealtimeaswell.Thispapersummarizesthedevelopmentandfundamentalprincipleofultrasonicdetection.Andthenthetransmission,receiver,detection,displayschimeofthisdistancemetersystemisbroughtout.Startingfromtheperformancedemandandrequirementofutility,theopinionistochoosethesystemcomponent,testingtheoryandmethods,designboththehardandsoftware.Itdescribesthehardwaredesignofthesystemindetail,andprovidestheproceduralflowchartofsoftwaredesign.Itexplainstheappliedfunctionofthesystemthroughtheerroranalysis.KeyWords:ultrasonicdistancemeasurement;microcomputer前言随着社会的发展,汽车数量不停增加,人们便对汽车操作的便捷性更加挑剔。汽车倒车时的不便被汽车制造行业所重视。人们但愿有一种装置能够实现汽车“后视”功效,在倒车时能够提示人们汽车后方与否有障碍物以及障碍物与汽车的大致距离等。基于以上因素,出现了超声波汽车倒车探测器。超声波汽车倒车探测器是一种汽车泊车安全辅助装置,能以声音或者更为直观的显示告知驾驶员周边障碍物的状况,协助驾驶员扫除视野死角,提高驾驶的安全性。本文设计了一种超声波汽车倒车探测器,用超声波传感器发射和接受超声波测距,DS1820芯片测温,STC12C5A60S2单片机做解决器,解决数据并计算声速及距离,用LED本课题的重要研究内容有下列几个方面:(1)简述了设计和设计超声波汽车倒车探测器的目的和意义,以及超声波汽车倒车探测器的应用及发展状况。(2)简要叙述了超声波汽车倒车探测器的工作原理、基本构成,以及系统的方案,工作流程和系统的性能规定。(3)重点对超声波汽车倒车探测器硬件部分进行了分析与设计。重要是对超声波发射、接受、温度测量,报警及显示电路的分析与设计。(4)较为具体的阐明了系统软件流程,核心部分还给出了流程图和有关程序。(5)最后对超声波汽车倒车探测器研制过程中所做工作进行了总结。1概述1.1选题的意义汽车倒车探测器普通被称为“倒车防撞雷达”,也叫“泊车辅助装置”,能以声音或者更为直观的显示告知驾驶员周边障碍物的状况,解除了驾驶员泊车和起动车辆时前后左右探视所引发的困扰,并协助驾驶员扫除了视野死角和视线含糊的缺点,提高驾驶的安全性。1.2超声波汽车倒车探测器的应用和发呈现状超声波汽车倒车探测器,种类繁多,应用广泛,现在在市场上呈现了一种多个档次并存,高低搭配的局面。由于它实用性强,技术成熟,因此发展很快。从第一代通过短短几年时间便发展到第五代,从纯电路模式到使用高速解决器;从单纯轰鸣器报警到显示屏显示,语音报警。另外安装使用更加方便,精度及稳定性也有极大提高。在现实生活中的作用越来越大。(1)第1代使用超声波探头、轰鸣器倒车时,超声波探头发送,接受超声波,车体与障碍物距离的变化使电路中电压或电流产生变化给轰鸣器不同的信号,如果车后1.5-1.8m(2)第2代使用超声波探头、微解决器、数码波段显示屏倒车时,超声波探头发送,接受超声波,解决器进行解决,将解决后的信号送给距离显示设备,能够显示车后障碍物与车体的距离。如果是物体,在1.8m左右的距离开始显示;如果是人,在0.9m左右的距离开始显示。这一代产品有两种显示方式,数码显示产品显示距离数字,而波段显示产品由3种颜色来区别距离:绿色代表安全距离,表达障碍物与车体的距离有0.8m以上;黄色代表警告距离,表达与障碍物的距离只有0.6-0.8m;红色代表危险距离,表达与障碍物之间只有不到0.6m(3)第3代使用超声波探头、解决器、液晶荧屏显示屏这一代产品较前两代有了质的飞跃,特别是荧屏显示的使用表明开始出现动态显示系统。不用挂倒挡,只要发动汽车,超声波探头及解决器就开始工作,显示屏上就会出现汽车图案以及车辆周边障碍物的距离。动态显示,色彩清晰美丽,外表美观,能够直接粘贴在仪表盘上,安装很方便。但是液晶显示屏外观虽精巧,但敏捷度较高,抗干扰能力不强,因此误报也较多。(4)第4代使用超声波探头、解决器、魔幻镜显示屏结合了前几代产品的优点,采用了最新仿生超声雷达技术,配以高速电脑控制,可全天候精确地测知2m以内的障碍物,并以不同等级的声音提示和直观的显示提示驾驶员。魔幻镜倒车雷达把后视镜、倒车雷达、免提电话结合起来,并设计了语音功效,是现在市面上比较先进的倒车雷达系统。由于其外形就是一块倒车镜,因此能够不占用车内空间,直接安装在车内倒视镜的位置。并且颜色款式多样,能够按照个人需求和车内装饰选配,但是造价较高。(5)第5代使用超声波探头、后视摄像机、控制器、监视器超声波信号接入显示控制器,同时将视频监视子系统中的摄像探头信号接入显示控制器,通过安装在汽车内部的显示控制器的自动切换电路、字符叠加器、微解决器,将显示控制器的输出再接入监视器,这样实现自动切换图像、监视、超声波倒车测距、自动报警等功效。车载电视显示车后景物图像和车后障碍物距离。倒车探测器含有精确判断距离的优点,后视摄像对车后方的水沟、山崖、凸出的钢筋、竹竿等倒车安全上的死角极为有效;后者图像直观真实,前者可获得精确的距离,两者精确结合非常实用。此系统技术非常复杂,也不是很成熟,不适宜普及。即使各代探测器各有特点但是它们有着这类产品固有的缺点。车用倒车探测器首先要解决的技术难题就是误报。由于道路状况十分复杂,以及道路两旁的静态护栏、标志牌,尚有多个恶劣天气的影响等,使得探测器对目的的识别十分困难,误报率很高。要想完全解决好误报问题,还需要采用多传感器的信息融合技术。实现信息综合分析,运用数据间的冗余性和互补特性进行容错解决,克服单一传感器可靠性低、有效探测范畴小等缺点,有效地减少探测器的误报机率。生产超声波传感器的重要材料的价格始终居高不下,成为车用探测器推广应用的瓶颈。能够预见,随着新材料、新工艺在探测器制作中的应用,使低价格、高性能的车用探测器的实现和普及成为可能。超声波的汽车倒车探测器的发展趋势是:使用的解决器速度越来越快,系统反映时间越来越短;使用的传感器技术越来越先进,系统稳定性越来越高;使用的显示报警技术更加先进,探测器显示、报警方式会更加直观,更加人性化。多个减小误差电路的出现,会使系统精确性大大提高。总之,超声波汽车倒车探测器用起来会更加方便,更加令人放心。2设计方案分析2.1基于单片机和基于DSP的方案比较2.1.1基于单片机的倒车雷达设计测距方式对系统测量精度及稳定性都有较大影响。因此选择一种适宜的测距方式对系统性能提高有很大协助。现在汽车倒车探测器使用的距离测量方式多个多样,有基于单片机的倒车雷达设计和基于DSP的倒车雷达设计。本系统采用STC12C5A60S2STC12C5A60S2是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-2.1.2基于DSP倒车雷达设计本系统采用数字信号解决器(DSP)来作为控制芯片。由前视雷达AD模块、复杂可编程逻辑器件(CPLD)模块、模式控制模块、显示语言模块构成。系统框图如图2.1所示。图2.1基于DSP倒车雷达设计框图各个部分作用及特点:采用TMS320DM643,其内核TMS320c64XTM是TMS320C6000平台的一款最高性能的定点数字信号解决器系列。用dm642来完毕对其它各个模块的控制。前视雷达AD来实现模拟到数字的转换,将转换成果送给DSP解决。CPLD采用altera公司的MAX7000系列的EPM7128SL,该器件有2500个可用逻辑门、128个宏单元、8个逻辑阵列块、100个I/O引脚,工作频率为151.5MHz。显示模块采用LCD显示,模式控制有三个按键,分别用于选择前视、后视、倒车模式。若选择后视模式,倒车报警界限时,启动车后的报警器,给背面的车以警示;若选择倒车模式,则启动倒车语言;如选择前视模式,达成报警界限时,启动车内报警器。前后方的近来目的的距离和速度在LCD上显示。2.2方案拟定从经济等方面考虑,本次设计方案采用基于单片机的倒车雷达设计,DS1820芯片测温,STC12C5A60S2单片机做解决器,解决数据并计算声速及距离,用液晶屏显示距离,用蜂鸣器、倒车时倒档启动探测器系统,单片机STC12C5A60S2作为主控器,控制DS1820芯片并解决所测得的温度数据。控制由555定时器及超声波换能器TCT40构成的发射电路发射超声波,同时启动内部定时器T0开始计时。当超声波信号碰到障碍物时信号立刻返回,经滤波电容,放大器,电压比较器传给单片机的INT0口。如果INT0接受的信号由高电平变为低电平,此时表明信号已经返回,微解决器进入中断,关闭定时器。再把定时器中的数据通过换算结合由所测温度值换算出的声速值就能够得出车体与障碍物之间的距离。根据计算的车体与障碍物之间的距离值及其与设定距离值的比较成果给显示电路及提示电路不同提示信号,产生不同的声光效果,引发驾驶人员注意,方便采用对应行动。系统构造如图2.1图2.SEQ图表\*ARABIC1基于STC12C5A60S2单片机的系统框图2.2.1测距探测器方案除了上述方案分析比较中讲述的超声波测距所独有的优点外,超声波测距在某些特定场合尚有着明显的优点,超声波测距系统是运用计算超声波在被测物体和超声波探头之间的传输来测量距离的,因此它是一种非接触式的测量,因此它能够在某些特定场合或环境比较恶劣的环境下使用。考虑到所设计产品是重要服务于普通顾客,并且规定构造简朴、制作方便、成本低廉实用性强。因此选择运用超声波传感器来作为探测器。由发射波束特性知,由于扩散角的因素,超声波的角度分辨率较低,但距离分辨率较高(1cm左右),现在最大探测距15m,最小盲区0.3-0.4m。超声波传感器含有反映敏捷、探测速度快(一种测量周期仅需几十毫秒)传感器的工作频率是测距系统的重要技术参数,它直接影响超声波的扩散和吸取损失,障碍物反射损失、背景噪声,并直接决定传感器的尺寸。工作频率的拟定重要基于下列几点考虑:(1)如果测距的能力规定很大,声波传输损失就相对增加,由于介质对声波的吸取与声波频率的平方成正比,为减小声波的传输损失,就必须减少工作频率。(2)工作频率越高,对相似尺寸的换能器来说,传感器的方向性越锋利,测量障碍物复杂表面越准,并且波长短,尺寸分辨率高,“细节”容易辩识清晰,因此从测量复杂障碍物表面和测量精度来看,工作频率规定提高。(3)从传感器设计角度看,工作频率越低,传感器尺寸就越大,制造和安装就越困难。总而言之,由于本测距仪最大测量量程不大因而选择测距仪工作频率在40KHz,发射角与接受角均为60度的锥角。这样传感器方向性锋利,且避开了噪声,提高了信噪比;即使传输损失相对低频有所增加,但不会给发射和接受带来困难。因此本方案选用的探头是收发分体式40KHz的超声传感器。2.2.1超声波发射模块发射电路普通有调谐式和非调谐式。在调谐式电路中有调谐线圈(有时装在探头内),调谐频率由调谐电路的电感、电容决定。发射出的超声脉冲频带较窄。在非调谐式电路中没有调谐元件。发射出的超声频率重要由压电晶片的固有参数决定,频带较宽。本文采用非调谐式。为了将一定频率、幅度的交流电压加到发射传感器的两端,使其振动发出超声波,电路频率的选择应当满足发射传感器的固有频率40KHz。这样才干使其工作在谐振频率,达成最优的特性。发射电压从理论上是越高越好,由于对同一种发射传感器而言,电压越高,发射的超声功率就越大,这样能够在接受传感器上接受的回波功率就比较大,对于接受电路的设计就相对简朴某些。但是,每一种实际的发射传感器有其工作电压的极限值,即当工作电压超出了这个极限值后来,会对传感器的内部造成不可回复的损害。因此,工作电压不能超出这个极限值。发射部分的点脉冲电压很高,但是由障碍物回波引发的压电晶片产生的射频电压只达毫伏级,甚至微伏。要对这样小的信号进行解决就必须放大到一定的幅度。本文采用由555定时器构成的多谐震荡器驱动超声波传感器,驱动频率为40KHz。2.2.3超声波回波接受模块在超声波发射完毕后,再延迟一小段时间才干进行接受,目的是为了避免单片机对发射头直接传送到接受头的信号进行响应而不能正常工作。超声波回波通过超声波接受传感器,电容隔直滤波,一、二级放大,三级增益放大后进入比较器,这样在比较器的输出端将得到40KHz的方波输入到单片机INT0引脚以产生中断。但是由于超声波传感器固有特性,即盲区的存在,对回波的接受和解决造成了一定程度的影响。2.2.4温度测量及赔偿模块温度对超声波波速影响非常大,极大的影响测距精度,需要进行温度赔偿。本设计采用DS18B20芯片进行测温。由单片机解决后进行赔偿。DS18B20芯片是DALLAS公司生产的一线式数字温度传感器,温度测量范畴是-55℃到+120℃,可编程为9位到12位A/D转换精度,测温分辨率可达0.0625℃。2.2.5显示及报警模块倒车探测器在其侦测区内检测到障碍物时,LED批示灯及蜂鸣器会根据车与障碍物的距离发出警告声。同时液晶屏显示对应距离。这样顾客不仅能够很快的判断出障碍物的大概距离,还能够清晰的懂得具体距离。障碍距离批示灯与报警器响应方式:A段:当汽车尾部与障碍物距离不不大于5m时,可认为是安全状态,液晶显“――”标志;B段:在5m和1m之间时认为是正常的,液晶屏上则显示实测距离;C段:不大于1m时,应提示司机注意,系统发出声音报警功效,单片机向其端口发出PWM脉冲,随着距离的减小,通过控制PWM脉冲的占空比使蜂鸣的频率加剧;D段:不大于0.5m时,规定声光同时报警,由于闪光频率不能过高,通过单片机另一种端口控制其闪亮。3硬件电路设计3.1硬件框图单片机STC12C5A60S2作为主控器,复位端接上电+按钮复位电路。XTAL1和XTAL2接12MHZ晶振构成的时钟电路。P1.5脚控制DS18B20芯片并接受所测得的温度数据。P1.3控制由555定时器及超声波换能器TCT40构成的发射电路发射超声波。超声波信号碰到障碍物时信号立刻返回,经传感器,滤波电容,放大器,电压比较器传给单片机的INT0口一种低电平。P2.5和P2.6分别控制声音和LED灯报警电路。硬件框图如图3.1图3.1硬件框图3.2单片机最小系统设计单片机复位是使CPU和系统中的其它功效部件都处在一种拟定的初始状态,并从这个状态开始工作,复位后PC=0000H,使单片机从第—个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。单片机复位的条件是:必须使RST引脚加上持续两个机器周期(即24个振荡周期)的高电平。本文中时钟频率为12MHz,每个机器周期为1µs,则只需2µs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。复位电路由电容串联电阻构成,由图并结合“电容电压不能突变”的性质,能够懂得,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定。适宜组合RC的取值就能够确保可靠的复位。该电路除含有上电复位功效外,若要复位,只需按RESET键,此时电源经电阻、分压,在RESET端产生复位高电平。时钟电路重要任务是提供一种工作频率。单片机内部有一种用于构成震荡器的高增益反相放大器,此放大器的输入和输出端分别是XTAL1和XTAL2,在XTAL1和XTAL2上外接时钟源即可构成时钟电路。有内部和外部两种时钟产生方式。本设计采用内部时钟产生方式。电路接法如图3.2所示,在XTAL1和XTAL2两端跨接晶体谐振器(振荡频率为12MHZ),与内部反相器构成自激震荡器。其发出脉冲直接送入片内定时控制部件。另外,电容对频率有微调作用,由于外接晶振,电容选择20pF,实际应用时谐振器和电容尽量安装在单片机附近,减少寄生电容,确保振荡器稳定可靠的工作。图3.2时钟部分3.3超声波发送电路设计超声波发送电路涉及超声波产生电路和超声波发射控制电路两个部分,超声波探头(又称“超声波换能器”)选用TCT40。40KHz的超声波是运用555时基电路振荡驱动超声波探头产生的。由555定时器构成的多谐振荡器(如图3.3所示)。接通电源后,电源通过和对电容充电,当<1/3时,振荡器输出=1,放电管截止。当充电到≥2/3后,振荡器输出翻转成0,此时放电管导通,使放电端(DIS)接地,电容C通过对地放电,使下降。当下降到≤1/3后,振荡器输出又翻转成1,此时放电管又截止,使放电端(DIS)不接地,电源通过和又对电容充电,又使从1/3上升到2/3,触发器又发生翻转,如此周而复始,从而在输出端得到持续变化的振荡脉冲波形。脉冲宽度≈0.7,由电容放电时间决定;=0.7(+),由电容充电时间决定,脉冲周期T≈+。其振荡频率计算式为f=1.43/((+2))。超声波发射电路图(如图3.4所示)中将设计为可调电阻的目的是为了调节信号频率,使之与换能器的40kHz固有频率一致。图3.3555定时器构成的多谐振荡器采用555定时器构成的多谐振荡器能够实现宽范畴占空比的调节,并且电路设计简朴,占用面积小。555定时器的4脚是复位端,运用它来控制超声波脉冲的发射。当4脚为低电平时,555有振荡脉冲输出;为高电平时,555定时器清零,没有输出。因而,将4脚与单片机的控制信号相接就能够控制发射电路。为确保555时基含有足够的驱动能力,宜采用+12V电源即=12V。4脚为超声波发射控制信号输入端,由单片机进行控制。图3.4超声波发射电路图3.4超声波接受电路设计SHAPE超声波接受模块的作用是将反射的超声波转换成电压信号并放大解决成原则的数字信号,然后输出给下一级电路。超声波接受器涉及超声波接受探头、信号放大电路及波形变换电路三部分。超声波探头必须采用与发射探头对应的型号,核心是频率要一致,否则将因无法产生共振而影响接受效果,甚至无法接受。本设计采用集成电路CX6芯片。集成电路CX6是一款红外线检波接受的专用芯片,它由前置放大器、限幅放大器、带通滤波器、检波器、积分器和整型电路构成。由于经探头变换后的正弦波电信号非常弱,因此必须经放大电路放大。正弦波信号不能直接被单片机接受,必须进行波形变换。按照上面所讨论的原理,单片机需要的只是第一种回波的时刻。接受电路如图3.5所示。超声波在空气中传输时,其能量的衰减与距离成正比,即距离越近信号越强,距离越远信号越弱,普通在1mV~1V之间。不同接受探头的输出信号强度存在差别。由于输入信号的范畴较大,对放大电路的增益提出了两个规定:一是放大增益要大,以适应小信号时的需要;二是放大增益要能变化,以适应信号变化范畴大的需要。另外,由于输入信号为正弦波,因此必须将放大电路设计成交流放大电路。图3.5超声波接受模块电路CX6惯用于电视机红外遥控接受器。考虑到红外遥控惯用的载波频率38kHz与测距的超声波频率40kHz较为靠近,能够运用它制作超声波检测接受电路。如图4所示,超声波接受探头TCT40-10-R将接受到的反射超声波转换成毫伏级电压信号,送入CX6的1脚,CX6的总放大增益约为80dB,实际增益由2脚外接电阻R2和电容C1来决定,电阻R2越小或电容C1越大,增益越高,但取值过大易造成频率响应变差,本系统取电容为1μF。C2为外接峰值检波电容,C13为外接积分电容,调节RP电位器使内置带通滤波器的中心频率为40kHz,当接受到与滤波器中心频率相符的信号时,其7脚输出一种低电平直接接到STC12c5a60s2的INT0上,以触发中断3.5温度测量电路设计温度对超声波波速影响非常大,超声波波度c与环境温度的关系有以下经验公式:(m/s),因此温度每变化1℃,声波的速度变化约为0.16m/s。当温度从0~40℃变化时,将会产生大概7%的声速变化,在超声波测距仪中,把声速作为一种原则量,为了获得较精确的声速,引入温度赔偿是必要的。本文采用了DS1820进行测温。DS18B20是DALLAS公司生产的一线式数字温度传感器,电路连接非常简朴,但是必须确保时序与单片机严格同时。温度测量范畴是-55℃-+125℃,可编程为9-12位A/D转换精度,未编程时默认精度为12位,测量精度普通为0.5℃,软件解决后可达0.1℃。温度输出以16位符号扩展的二进制数形式提供,低位在前,以0.0625℃/LSB(最小可分辨信号)形式体现,高五位为扩展符号位。转换周期与转换精度设定有关,9位精度时,最大转换时间为93.75ms;DS1820温度传感器有两个晶振,低温度系数晶振和高温度系数晶振。低温度系数晶振的震荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其震荡率明显变化,所产生信号作为计数器2的脉冲输入。计数器1和温度寄存器被预制在—55摄氏度所对应的一种基数。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1摄氏度,计数器1的预置将重新被装入,计数器1重新开始对低温度系数产生的脉冲信号进行计数,如此循环至计数器2计数到实际测温电路如图3.6所示,图中DS1820管脚2与单片机P1.5口相连,单片机通过它以串口数据传诵方式读取测温成果。DS1820运用单线控制信号在总线上与单片机进行通信。由于所用设备通过漏极开路端(2脚)连在总线上,控制线需要一种上拉电阻。图3.6温度检测模块3.6声光报警模块设计报警电路的重要作用是在汽车尾部与障碍物距离较近时进行报警。根据实际状况,当汽车尾部与障碍物距离不不大于5m时,可认为是安全状态,液晶显示“――”标志;在5m和1m之间时认为是正常的,显示实测距离;不大于1m时,应提示司机注意,系统发出声音报警功效,单片机向其端口发出PWM脉冲,随着距离的减小,通过控制PWM脉冲的占空比使蜂鸣的频率加剧不大于0.5m时,规定声光同时报警,由于闪光频率不能过高,通过单片机另一种端口控制其闪亮报警电路如图3.7所示,采用单片机通过控制引脚(手动复位脚)的电平来控蜂鸣器和LED灯的工作。振荡频率为800Hz。单片机的P1.4控制555电路根据测量成果,产生不同频率的信号使报警电路发出不同长短报警声。在扬声器发出报警声时,时基电路555处在暂稳态,此时电源向电容充电,从而使555结束暂稳态回复到稳定状态输出低电平,使扬声器停止发出报警声。LED批示灯由单片机管脚控制,高电平点亮,低电平熄灭,其闪烁频率与声音报警频率相似。图SEQ图表\*ARABIC2.7声光报警模块3.7显示电路设计超声波测距仪的显示规定比较简朴,测量成果采用十进制数字显示。显示屏件可选用HJ1602A液晶显示屏。它含有体积小、功耗低、显示内容丰富等特点。HJ1602A能够显示2行16个字符,有8bit数据总线D0~D7,RS、R/W、EN三个控制端口,工作电压为5V,并且带有字符对比度调节和背光显示。第一行显示环境温度,第二行显示倒车雷达测量距离,液晶显示电路如图3.8图3.8液晶显示电路3.8电源电路设计3.8.1+5V和+12V稳压电源我们用到的稳压电源电路,能产生+12v、+5v和-5v共3组输出电压,可供采用正、负工作电源的数字电路或微解决器集成电路使用。并且带有充电蓄电池作为备用电源,当单片机电源正常工作时,蓄电池处在浮充电状态,时刻保持满电状态,当紧急状况下,如果单片机电源不能够正常工作,那么蓄电池提供+5v的稳定电源,直到电源故障解除为止。然后单片机电源恢复工作后再次对蓄电池充电。电源电路图如图3.9所示:图3.9电源电路3.8.2稳压电源电路图3.10是稳压芯片。采用7805芯片是我们最惯用到的稳压芯片,它的使用方便,用很简朴的电路即能够实现一种直流稳压电源,他的输出电压正好为5V,刚好是51系列单片机运行所需的电压。它有诸多的系列如ka7805,ads7805,cw7805等,性能有微小的差别,用的最多的还是lm7805。下面我简朴的介绍一下他的3个引脚以及用它来构成的稳压电路的资料。其中1接整流器输出的+电压,2为公共地(也就是负极),3就是我们需要的正5V输出电压了。图3.10稳压芯片稳压电路简图如3.11所示图3.11稳压电路上图中R1用220Ω,R2用680Ω的这个是用来调节输出电压的。输出电压公式Uo≈Uxx(1+R2/R1),此稳压电路可在5~12V稳压范畴内实现输出电压持续可调节。此三端集成稳压集成电路lm7805最大输入电压为35V,输入输出差需保持2V以上,这样该电路中由于稳压器的直流输入电压是正14V,故该稳压电路的最大输出电压为正12V。此电路的精度普通可达成0.04以上,用lm7805就能满足普通需求了3.9器件阐明3.9.1STC12C5A60S2单片机STC12C5A1).增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051;2).工作电压:STC12C5A60S2系列工作电压:5.5V-3.3V(5V单片机)STC12LE5A60S2系列工作电压:3.6V-2.2V(3V单片机)3).工作频率范畴:0-35MHz,相称于普通8051的0~420MHz;4).顾客应用程序空间8K/16K/20K/32K/40K/48K/52K/60K/62K字节......5).片上集成1280字节RAM;6).通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口)可设立成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达成20mA,但整个芯片最大不要超出55mA;7).ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器可通过串口(P3.0/P3.1)直接下载顾客程序,数秒即可完毕一片;8).有EEPROM功效(STC12C5A62S2/AD/PWM无内部EEPROM)9).看门狗;10).内部集成MAX810专用复位电路(外部晶体12M下列时,复位脚可直接1K电阻到地);11).外部掉电检测电路:在P4.6口有一种低压门槛比较器5V单片机为1.32V,误差为+/-5%,3.3V单片机为1.30V,误差为+/-3%;12).时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为+/-5%到+/-10%以内)1顾客在下载顾客程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟;常温下内部R/C振荡器频率为:5.0V单片机为:11MHz~15.5MHz3.3V单片机为:8MHz~12MHz;精度规定不高时,可选择使用内部时钟,但由于有制造误差和温漂,以实际测试为准;13).共4个16位定时器两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发生器再加上2路PCA模块可再实现2个16位定时器;14).2个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟;15).外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA模块,PowerDown模式可由外部中断唤醒,INT0/P3.2,INT1/P3.3,T0/P3.4,T1/P3.5,RxD/P3.0,CCP0/P1.3(也可通过寄存器设立到P4.2),CCP1/P1.4(也可通过寄存器设立到P4.3);16).PWM(2路)/PCA(可编程计数器阵列,2路)---也可用来当2路D/A使用---也可用来再实现2个定时器---也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持);17).A/D转换,10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次)18).通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器或PCA软件实现多串口;19).STC12C5A60S2系列有双串口,后缀有S2标志的才有双串口,RxD2/P1.2(可通过寄存器设立到P4.2),TxD2/P1.3(可通过寄存器设立到P4.3)20).工作温度范畴:-40-+85℃(工业级)/0-75℃(商业级);21).封装:PDIP-40,LQFP-44,LQFP-48I/O口不够时,可用2到3根普通I/O口线外接74HC164/165/595(均可级联)来扩展I/O口,还可用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了串口;3.9.2超声波换能器换能器是进行能量转换的器件,是将一种形式的能量转换成另一种形式的装置。普通所说的换能器普通都是指的电声换能器,凡能实现电能和声能间互相转换的换能器成为电声换能器,用来发射声波的换能器叫发射器,换能器在发射状态时,将电能转换为机械能,再转换成声能,用来接受的换能器叫接受器,换能器处在接受状态时,将声能转换成机械能,再转换成电能,普通状况下,换能器既能用来发射,也能用来接受。普通换能器都有一种电的储能元件和一种机械振动系统,当换能器用作发射时,从发射机的输出级送来的电震荡信号引发电储能元件中的电场或磁场的变化,这种变化借助于某种物理效应对换能器机械振动系统产生一种推动力,使其进入振动状态。从而推动与机械振动系统相接触的介质振动,向介质中辐射声波。接受的过程正好相反,这是介质声场作用在换能器的振动面上,是机械振动系统发生振动时,借助于某种物理效应,引发电储能元件中的电场或磁场发生对应的变化,从而是换能器的电输出端产生一种对应于声信号的电压或电流。按照实现机电转换的物理效应的不同,将换能器分为:电动式、电磁式、磁致伸缩式、电容式、压电式和电致伸缩式等。极化了的电致伸缩换能器,从换能原理和解决办法上能够当作压电换能器,普通也把它称作压电换能器。压电式超声波传感器事实上是运用压电晶体的谐振来工作的超声波传感器内部构造是:两个压电晶片和一种共振扳。当它的两电极间外加脉冲信号时,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,开带动共振板振动,便产生超声波,称为逆压电效应。反之,如果两电极间末外加电压.当共振板接受到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接受器了,称为正压电效应。同时它还含有频率特性,当施加的外力频率等于他的固有频率时,将产生机械谐振,谐振时振幅最大,弹性能量也最大,产生最大的压电信号。

4软件设计4.1系统软件构造在系统硬件构架了超声测距的基本功效之后,系统软件所实现的功效重要是针对系统功效的实现及数据的解决和应用。根据以上所述系统硬件设计和所完毕功效,系统软件需要实现下列功效:(1)信号控制在系统硬件中,己经完毕了发射电路、回波接受电路、温度赔偿电路的设计。在系统软件中,要完毕对发射脉冲信号、脉冲接受信号、时序及输出信号的控制。(2)数据存储为了得到发射信号与接受回波间的时间差,要读出此刻计数器的计数值,然后存储在RAM中,芯片所测出的温度值也要存在RAM中,并且每次发射周期的开始,需要对计数器清零,以备后续解决。(3)信号解决RAM中的温度值要转化为此温度下的声速,转换公式是:(m/s)。RAM中存储的计数值也不能作为距离值直接显示输出,计数值与实际的距离值之间转换公式为:,其中,t为发射信号到接受之间经历的时间,为方波信号作为计数脉冲时计数器的时间分辨率,N为计数器的值。在这部分中,信号解决涉及计数值与距离值换算,二进制与十进制转换。(4)数据传输与显示经软件解决得到的距离送给四位LED显示。由于采用了STC12C5A60S2单片机并考虑整个系统的控制流程,整个系统软件都由STC12C5ASTC12C5A60S2单片机和其开发应用系统含有语言简洁、可移植性好、体现能力强、体现方式灵活、可进行构造化设计、能够直接控制计算机硬件、生成代码质量高、使用方便等诸多优点。整个系统软件功效的实现能够分为主程序、子程序、中断服务程序等几个重要部分。该系统的主程序处在循环工作方式,当汽车挂倒档时,主程序开始调用测温程序、发射子程序、中断程序、并把测量成果用显示子程序及报警程序表达出来。

主程序是单片机程序的主体,整个单片机系统软件的功效实现都是在其中完毕的,在此过程中主程序调用了子程序及中断服务程序。如图4.1所示为系统的主程序流程。系统上电后来,首先对T0,各I/0口等进行初始化编程。P1.3输出启动信号,发射超声波,同时使T0计数器开始记数。如果没有收到回波信号,T0将溢出,同时显示屏将显示错误报警以阐明没有收到回波信号。如果收到回波信号,则INT0发出中断请求,执行中断程序。计数器T0停止计数,CPU读取T0计数值N并送存RAM。同时读取温度传感器DS18204.3测温电路程序测温数据读取:访问DS18B20必须遵照初始化、ROM命令、DS18B20函数命令这一次序,缺少其中任何一步或打乱次序,DS18B20都不会响应。因此与DS18B20的通信首先必须初始化:单片机发出复位脉冲,DS18B20以存在脉冲响应,这表达DS18B20已经在总线上并准备好操作。单片机在写时序写数据到DS1820,在读时序从DS18B20中读数据,每一总线时序传送一位数据。DS18B20有两种类型的写时序:写1时序和写0时序。单片机用写1时序写逻辑“1”到DS1820,用写0时序写逻辑“0”到DS18B20。全部写时序必须持续最少60µs,每个写时序之间必须有最少11µs的恢复时间。DS18B20在单片机发出写时序后的15-60µs的时间窗口内采样总线。如果在采样窗口期间总线为高,“1”就被写入;反之,“0”被写入。当单片机发出读时序时,DS18B20能够发送数据到单片机。全部读时序必须持续60µs,每个读时序之间必须最少有11µs的恢复时间。单片机DS18B20开始在总线上传送“1”或“0”。DS18B20通过保持总线为高发送“1”,将总线拉低发送0。子程序部分以下:voidinit() //初始化{ lcden=0; write_com(0x38);//设立16*2显示,5*7点阵,8位数据接口 write_com(0x0c);//设立开显示,不显示光标00001100 write_com(0x06);// 写一种字符后地址指针加1 write_com(0x01);// 显示清零,数据指针清零}//*******************************************************************voidds_init(void) // DS18B20初始化{uinti;DQ=1;//将数据线置高电平1i++;DQ=0;i=103;while(i>0)i--;//延时750usDQ=1;i=4;while(i>0)i--;}//*******************************************************************bitread_tempreadbit(void) //读1位{uinti;bitdat;DQ=1; i++;DQ=0;i++;i++;DQ=1;i++;dat=DQ;i=8;while(i>0)i--;return(dat);}//*******************************************************************ucharread_tempreadbyte(void)//读1字节{uchari,j,dat;dat=0;for(i=0;i<8;i++){ j=read_tempreadbit(); dat=(j<<7)|(dat>>1);}return(dat);}//*******************************************************************voidwrite_tempreadbyte(uchardat) //写1字节{uinti;ucharj;bittestb;for(j=1;j<9;j++){ testb=dat&0x01; dat=dat>>1; if(testb==1) { DQ=0; i++;i++; DQ=1; i=8; while(i>0)i--; } else { DQ=0; i=8; while(i>0)i--; DQ=1; i++;i++; } }}//*******************************************************************voidtempreadchange(void) //温度转化{ds_init();delay(1);write_tempreadbyte(0xcc);write_tempreadbyte(0x44);}//*******************************************************************uintget_tempread() //读取RAM中的温度数据{uchara,b;uinttemp=0,f_temp;ds_init();delay(1);write_tempreadbyte(0xcc);write_tempreadbyte(0xbe); //读RAM中的9位数据a=read_tempreadbyte(); //读低8位b=read_tempreadbyte(); //读高8位temp=b;temp=temp<<8;temp=temp|a;f_temp=temp*0.0625; //温度在RAM中为12位,分辨率为0.0625°temp=f_temp*10+0.5; //乘以10表达只取一位小数点,加0.5表达四舍五入f_temp=f_temp+0.05; // returntemp;}DS18B20完毕温度转换必须通过三个环节:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才干对DS18B20进行预定的操作。复位规定主CPU将数据线下拉500µs,然后释放,DS18B20收到信号后等待16-60µs左右,后发出60-240µs的存在低脉冲,主CPU收到此信号表达复位。通过对系统硬件电路和软件的合理设计,本系统能在-20℃到504.4中断程序设计在启动发射电路的同时启动单片机内部的定时器T0,利定时器的计数功效统计超声波发射的时间和收到反射波的时间值,当收到超声波反射波时,接受电路输出端产生一种负跳变。在INT0端产生一种中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,提取时间及温度值根据温度赔偿办法计算距离。温度赔偿普通采用办法是每次按照公式:v=331.5+0.6T(m/s)计算现在声速,进行温度赔偿。其特点是:根据当时的温度得到精确声速,从而计算得到的距离值也比较精确。中断测距程序流程图如图4.1所示。图SEQ图表\*ARABIC4.1中断程序流程图温度赔偿通过软件编程由单片机实现,系统采用软件来实现赔偿。其部分源程序以下://***************************************************************//外部中断0,用做判断回波电平INTO_()interrupt0//外部中断是0号{outcomeH=TH1;//取出定时器的值outcomeL=TL1;//取出定时器的值succeed_flag=1;//至成功测量的标志EX0=0;//关闭外部中断}//***************************************************************//定时器0中断,用做显示timer0()interrupt1//定时器0中断是1号{ TH0=0xfd;//写入定时器0初始值 TL0=0x77; switch(flag){case0x00:P0=ge;P2=0xfd;flag++;break; case0x01:P0=shi;P2=0xfe;flag++;break; case0x02:P0=bai;P2=0xfb;flag=0;break;}}//***************************************************************/*//定时器1中断,用做超声波测距计时timer1()interrupt3//定时器0中断是1号{TH1=0;TL1=0;}*/4.5报警及显示数据转换程序//******************************************************************//显示数据转换程序voidconversion(uinttemp_data){ucharge_data,shi_data,bai_data;bai_data=temp_data/100;temp_data=temp_data%100;//取余运算shi_data=temp_data/10;temp_data=temp_data%10;//取余运算ge_data=temp_data;bai_data=SEG7[bai_data];shi_data=SEG7[shi_data];ge_data=SEG7[ge_data];EA=0;bai=bai_data;shi=shi_data;ge=ge_data; EA=1;}//*****************************

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论