




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要洛阳理工学院毕业设计(论文)PAGEIVPAGE2基于51单片机的超声波测距仪设计摘要利用超声波进行测距有许多优点比如不受光强度、色彩和电磁场等外界因素的影响,而且超声波传感器的价位较低、结构也较为简单,超声波以声速传播,方便收发与计算。在汽车倒车雷达、移动机器人的避障、特别是测量距离等许多方面都已有了非常普遍的应用。本次毕业设计的超声波测距仪是在STC89C51单片机的基础上设计的,在分析和了解了超声波的一些优点和特性后,又查看了利用超声波测距的基本原理。最后决定使用51单片机系统和超声波传感器共同组成。设计的超声波测距仪的硬件部分主要包括电源及复位模块、单片机与超声波模块组成的超声波发射模块、超声波接收模块、LED数码显示模块和扩展报警模块。软件部分主要包括单片机主程序、根据超声波发射与接收计算距离程序、LED距离显示程序、按键控制程序和蜂鸣器报警程序,这样安排使得系统具有模块化的特点。系统容易进行控制,具有可靠地的性能,具有较高的测量精度,最重要的是能对距离进行实时测量。关键词:单片机,测距仪,超声波,实时测量
DesignofUltrasonicDistanceMeterBasedon51MCMABSTRACTUsingultrasonicranginghasmanyadvantagesforexample,fromtheeffectsoflightintensity,colorandelectromagneticfieldandotherexternalfactorsandpricelowerultrasonicsensors,thestructureissimple,ultrasonicsoundsvelocity,convenienttransceiverandcalculation.Inthecarreverseradar,mobilerobotobstacleavoidance,especiallymeasuringdistanceandmanyotheraspectshavebeenverycommonapplication.ThegraduationdesignofultrasonicrangefinderbasedonSTC89C51MCUdesign,analysisandunderstandingofthesomeadvantagesandcharacteristicsofultrasonicandlookedattheuseofthebasicprincipleofultrasonicdistancemeasurement.Finally,thecompositionofthe51single-chipmicrocomputersystemandultrasonicsensorisdecided..Thedesignofultrasonicrangefinderhardwarepartconsistsofthepowerandresetmodule,SCMandultrasonicmoduleconsistsofultrasonicemissionmodule,ultrasonicreceivingmodule,LEDdigitaldisplayexpansionmoduleandalarmmodule.SoftwarepartmainlyincludesMCUprogram,accordingtotheultrasonictransmittingandreceivingcomputingprogramdistance,thedistanceofLEDdisplayprogram,keycontrolproceduresandbuzzeralarmprocedures,thisarrangementenablesthesystemtohavethecharacteristicsofmodular.Thesystemiseasytocontrolandhasthereliableperformance,andhasthehigheraccuracy,andthemostimportantisthereal-timemeasurementofthedistance.KEYWORDS:Singlechipmicrocomputer,Rangefinder,Ultrasonic,Real-timemeasurement前言目录摘要 I目录 III第1章绪论 11.1研究背景 11.2研究的主要意义 1第2章系统电路设计 32.1系统结构设计 32.2电路总体设计方案 32.2.1发射与接收电路设计方案 32.2.2显示电路设计方案 52.2.3报警电路设计方案 62.2.4系统复位电路设计 6第3章系统硬件设计 93.1单片机概述 93.1.1STC89C51主要性能 93.1.2STC89C51外部结构及特性 93.1.3STC89C51内部组成 113.2超声波测距模块 133.2.1超声波传感器介绍 133.2.2HC-SR04超声波测距芯片的性能特点 133.2.3超声波时序图 153.3驱动显示电路及报警电路 163.3.1LED数码管显示电路 163.3.2蜂鸣器报警电路 173.4HC-RS04超声波测距原理 183.5按键设置电路 19第4章系统软件设计 214.1系统主程序 214.2显示距离子程序 224.3报警子程序 224.4按键子程序 24第5章系统仿真 255.1系统仿真环境——Proteus 255.2仿真 255.3误差及特性分析 27结论 28谢辞 29参考文献 30第1章标题第1章绪论1.1研究背景超声波测距法是通过超声波测量从已知位置到被测物体表面的距离的利用超声波的方法。超声波也是一种机械波,是一种频率在20kHz以上的声波。超声波测距是人们根据蝙蝠通过超声波反射进行捕食的方法发现的,也是仿生学中非常出名的例子,对生产领域产生了很大的影响。跟着电子测量技术的不断飞速发展,已经可以利用超声波实现精准测量了。测量技术在经济的不断发展下得到了越来越广的应用,因此超声波凭借着性能稳定、成本低廉、精度高等优点得到了重视。机器人技术在出现后发展迅猛,机器人的用途也不在局限在工业生产而是进入了人们的日常生活。普遍的应用对于增加群众对机器人技术的认识变得非常重要。机器人能够通过特有的感知系统感知并确定前面障碍物的位置和周围的环境以完成躲避障碍物、自动寻路、测距等功能。超声波测距具有其他的测距技术没有的特点,比如测量精度高,成本低廉,对环境的要求低,使用简便等。将红外、灰度等传感器和超声波结合在一起将可以共同作用使机器人实现自动寻路和绕开障碍等功能。超声波由于传播方向较稳定、并且在介质里传播时能量削减缓慢,能够发送很远的距离,所以在测量距离的时候经常用到。超声波最普遍的应用是在汽车倒车雷达、物位测量仪、测距仪、研发移动机器人以及一些特殊工业现场等场合。以后超声波传感器很可能将会智能化、自动化,实现更加方便高效的测距仪器。1.2研究的主要意义超声波测距技术是一种非常有前景的的技术,近距离的超声测距不会被光线影响,并且结构比较简单,成本经济实惠。超声波测量最重要的优点是:环境介质很普遍,空气、液体和固体都能使用,因此适合使用的范围非常大。更重要的是使用超声波检测能很大程度的降低劳动强度,可以避免工作人员在恶劣工作环境中可能受到的伤害,还能够提高距离结果的准确度;另外,超声波测距仪也可以作用到别的功能系统中,如在机器人的避障系统、车内置防撞系统、自动停车系统和倒车雷达,因此超声波测距仪对电子测量技术发展是非常重要的。REF_Ref168484390\r\h错误!未找到引用源。REF_Ref168484424\h错误!未找到引用源。PAGE6PAGE8第2章系统电路设计2.1系统结构设计图2-1所示的是超声波测距仪的系统设计结构图。主要由单片机、超声波传感器、按键、复位电路、LED显示电路、蜂鸣器及电源电路组成。系统主要功能包括:发射与接收超声波,通过计算收发时间差得到测量的距离;LED显示测量距离;接收用户按下按键的相应指令并做出处理;系统运行出错时,使用电平式开关和上电复位电路进行复位处理。4位LED显示器4位LED显示器3键键盘复位电路AT89C51超声波发射电路超声波接收电路超声波接收电路路蜂鸣器蜂鸣器电源电路电源电路图2-1超声波测距仪的系统结构图2.2电路总体设计方案2.2.1发射与接收电路设计方案对于此次超声波测距仪的系统,难点就是如何生成稳定40KHz信号。由于此次使用的是中心工作频率为40KHz的超声波传感器,当偏移这个频率时,接收端的敏感程度将有所下降,从超声波传感器的特性曲线中可以看出具体下降的幅度。当发射端的频率为40KHz时,接收端能收到的强度最强的信号,因此计算的距离也就最大,但如果偏移中心频率时,测量距离就会产生缩短,这一点是本次设计的可能忽略的关键点。如何生成一个40KHz的驱动信号,有多种方法,可以选择用电感、电容振荡器件做出一个产生信号的发生器,不过这种方式产生的信号频率稳定性较差,调准比较难,所以很难制作成功。而此次设计中,选择用单片机产生一个稳定信号,因为使用了频率稳定性较好的晶振元件作为系统的时钟,所以系统频率有极高的稳定性,也能产生频率非常平稳的驱动信号,当编入的程序的要求不同的时候,也能够轻松地取到需要的频率。电路中决定前面是否被障碍物阻挡是根据接收到的信号强度值的,所以本设计制作成功非常关键性的一点就是起控点的选择。由于反射回来的超声波信号的强弱受环境因素的影响,因此需要很细心的进行调试。这时还要仔细观察随着距离的变化,电路中的直流控制电压的变化,从而选择出最合适的电压比较的起控点,这样才能实现当距离达到设置好的值时进行报警。超声波测距仪开始测量距离时,单片机便开始执行相应程序。此时P01口产生10us的TTL,51单片机也开始不断循环生成八个40kHz的脉冲信号,通过自身自动放大,而且将连续发射200us。当P32口收到信号的时候会产生一个回响信号,此回响信号和测量的距离是有一个固定的比例关系。使用51单片机执行程序后,P01端会发出一个40kHz的脉冲信号,然后使用三极管进行放大用来驱动超声波模块的发射端,发出超声波信号。之后接收端要和发射端匹配,就收后需要把超声波进行调制转换成交变电压型信号。之后在进行运算放大器的两级放大,电路内部的中心频率为f0=1/1.1r8c3的压控震荡器,电容的作用是选择锁定带宽。输入信号则放大25mv,输出端P32的电平也会有高变化成低,然后用来当中断请求的信号,在放到单片机内部当超声波发射端打开的时候单片机的内部T0定时器也同时打开,然后根据定时器自身的计数功能计出超声波从发射到接收一共用了多长时间。每次接收到反射回来的超声波时,接收电路的输出端就会发生负跳变,这时还会发生一个请求信号去请求中断,单片机接收到此外部请求中断后便会主动执行外部中断对应的服务子程序,并读出超声波发射接收时间差在据此计算距离。图2-2发射与接收电路2.2.2显示电路设计方案显示设备是使用最普便的并很经典的输出设备,大部分电子设备都需要有显示器,之间的不同之处也就只是显示器的结构类型的不同。显示器中最简单的就是LED发光二极管组成的。其中还有结构功能都比较完整的CRT监视器,还有LCD液晶屏是显示器里屏幕比较大的。在考虑到超声波测距仪的需求和对单片机资源的节省,所以选择使用LED驱动设备显示并使用串行的方式。超声波测距仪需要显示的距离是在6米以内的,加上设置需要,所以使用4位LED数码管进行显示,距离使用厘米为单位。LED显示器在单片机系统中经常使用的驱动方式有两种,一种是静态显示驱动,另一种是动态驱动显示。其中静态显示驱动指的是让恒定的电流驱动需要亮的二极管,但是这样就需要让每个LED显示器的输入引脚都去对应一个独立的能进行锁存的I/O口。这样的优点是显示时单片机向接受口传送的字形码不需要改变,当显示的数据发生变化时,只需要重新发送一个字形码即可。这样做对单片机的使用较小,节省性能,但是对于硬件的要求太冗杂需要很多寄存器的设备。而且如果增加显示位数也会非常麻烦,会大幅增加系统器件容量。动态显示驱动是利用不同时间显示的方法对LED进行短暂驱动,之后逐位驱动显示各个LED,这需要一直循环显示每一位,而且LED的亮度取决于亮暗持续的平均水平。在分析了这两种显示方式的优缺点后,最终确定使用动态驱动方式进行数据显示。此次设计用P0口进行对LED的字形输出,使用八路输出的透明锁存器74hc573进行对数据的锁存,同时加上上拉电阻增加驱动电流是LED的亮度增加。用P1口对LED显示的位进行控制,同时采用共阴型的LED显示器,避免刚上电时数码管闪烁。2.2.3报警电路设计方案系统报警电路需要有运算放大电路和蜂鸣器等原件。其中放大电路用PNP三极管完成。放大电路采用负反馈方式,也就是反相比例运算电路,反相比例运算电路主要的特点,就是输入信号是从反向输入端进行输入的,而且输入端还要接地处理。因此由于“虚短”和“虚断”电路具有的特性,就是u-=u+,i-=i+=0。其中常说的“虚短”就是使用理想的集成运放原理:Au0→∞,因此能够看成是两个输入端中间的差模电势差基本是0,也就是Uid=u+≈0,即u-=u+,不过u0是确实有值的。因为两个输入端之间的电势差等于0,但是又真的不是短路,所以叫做“虚短”。而“虚短”是根据理想的集成运放中输入的电阻Rid→∞,因此也可以当成输入端没有电流,即i-=i+≈0,这样的话输入端又等于是断路,不过又没有断开,这就成了“虚断”。在电路里,反相输入端和接地端的电位一样,不过2.2.4系统复位电路设计在平常使用单片机的时候,单片机系统除了会正常初始化,有时也会因为程序在运行时发生错误,或者人员操作时失误都有可能让系统变成锁死的状态。所以需要有复位电路让系统能够重新开启来解决系统锁死的问题。可见,系统中复位电路是非常必要的而且很重要。单片机系统基本是全部使用外部的电路来进行复位的,在单片机时钟电路正常工作的时候,如果单片机上的RST端口上出现了连续的24个以上的时钟振荡脉冲产生的高电平,这时单片机就会进行复位变成初始化的状态。设计制作复位电路的时候需要提供非常稳定的复位,也就是必须让RST端处于高电平。需要注意的是如果RST端口的高电平一直不变,那么单片机就会出现重复复位。单片机系统的复位电路一般使用下面的三种方式:(1)上电自动复位在系统通电的一瞬间,因为R•C电路会进入充电状态,所以RST端口就能够一直保持高电平,这样就能让单片机稳定的复位。图2-5上电复位电路(2)按键电平复位让电路的复位按键和RST端口经过电阻和电源端VCC连接在一起,通过直接按键完成复位。(3)正常较大的应用系统里,希望能确保复位电路的工作的可靠性,经常会把RC电路接到施密特电路之后,在跟单片机RST端和外围的电路复位端进行连接。此方法在干扰较大的使用场合、工作环境中的电压波动较大等时候使用较普遍,而且,在系统中有许多的复位端时,就要求能同步复位,这种方法就能保证进行可靠的同步复位。此次设计的超声波测距仪系统结构不是很复杂,所以为了拥有较好的复位效果又控制成本,所以决定使用上电自动复位方式。第3章REF_Ref168484495\h错误!未找到引用源。洛阳理工学院毕业设计(论文)PAGE20第3章系统硬件设计3.1单片机概述3.1.1STC89C51主要性能STC89C51是STC公司推出的一款抗干扰能力强,可靠性高,集成度高,性能好,低功耗的CMOS8位单片机。片内含4kbytes的能够反复擦写的Flash只读程序存储器和256bytes的RAM(随机数据存储器),此芯片使用了STC公司的高密度、非易失性存储技术生产而成,能够和标准的MCS-51指令系统以及8052系列产品的引脚相兼容,芯片还内置了通用的8位中央处理器(CPU)和Flash存储单元。STC89C51单片机凭借着强大的功能在各种各样的复杂的场合都有得到广泛的使用REF_Ref421026169\r\h[5]。3.1.2STC89C51外部结构及特性STC89C51的封装外形有两种形式:一种是双列直插式的40脚封装(DIP),另一种是方形的44脚封装(PLCC),其中直插式40脚封装(DIP)结构如图3-1所示,外部的总线分布如图3-2所示。图3-1STC89C51引脚排列图3-2仿真结构STC89C51的4个8位I/O口的功能说明如下:(1)P0口:P0口可以当成通用的I/O口使用,能够输入和输出数据。当成输出口使用时,每一位可以驱动8个TTL逻辑电平。当P0端口被写入“1”时,引脚就会被用作高阻抗输入口。在进行外部程序访问和数据存储器时,P0口也可以被当成是低8位的地址/数据复用端。在这种使用模式下,P0就会有内部上拉电阻,不在是漏极开路。在flash编程时,P0口又可以用来接收指令字节;当程序进行校验时,输出对应指令字节。但是此时就要在外部加上上拉电阻了REF_Ref421026169\r\h[5]。(2)P1口:P1口不在内置上拉的FET,但是却有一个上拉电阻。只是这个上拉电阻的阻值比较大,所以他的上拉驱动能力很弱,如果不是应用系统需要有很低的功耗这种特殊要求,其他还是再外接个10K左右的上拉电阻比较好。P1内部的下拉FET还有,所以当P1当做输入使用时,依旧需要首先对端口的数据锁存器发出1,让输出驱动FET变为截止,确保数据在读入时的正确性。另外,P1.0和P1.2两个端口也能作位定时器/计数器方式2的外部计数输入,也可以作为定时器/计数器2的触发输入。当进行flash编程或校验的过程中,P1口能够进行低8位地址字节的接收。(3)P2口:P2口也是一个内部拥有上拉电阻的8位双向I/O口。当向P2端口写入“1”的时候,上拉电阻就会把端口拉高,这样P2口就能用来数据的输入了。P2口当输入口使用时,引脚会让给外部电路拉低,因为内置的电阻缘故,会输出电流。当单片机访问外部的程序存储器或用16位地址进行读取外部的数据存储器的时候,P2口就会输出高八位的地址。当这样使用的时候,P2口就会利用内置的上拉电阻发出“1”。当进行flash编程或校验的时候,P2口也能接收到高8位的地址字节和部分控制信号REF_Ref421026028\r\h[4]。(4)P3口:P3口也是内置了上拉电阻的8位双向I/O口,跟P2口比较类似。而且P3口还能实现AT89C52的一些独特的作用,如下所示。表3-1P3口对应功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INTO(外部中断0输入口)P3.3INT1(外部中断1输入口)P3.4TO(定时器0外部输入)P3.5TI(定时器1外部输入)P3.6WR(片外数据存储器写选通)P3.7RD(片外数据存储器读选通)3.1.3STC89C51内部组成STC89C51单片机将下列的CPU、RAM、ROM、定时器/计数器、看门狗和多种功能的I/O口等元件集成到了一块半导体芯片上,基本上具有了大部分计算机才有的基本功能部件。STC89C51单片机内包含的具体部分如下:一个8位CPU。一个芯片内置的振荡器和时钟电路。4KBFlash程序存储器。128BRAM数据存储器。三个16位计数器/定时器。可寻址64KB的外部数据存储器。64KB的外部程序存储器。32条可编程的I/O口(4组8位并行I/O端口)。一个可编程全双工串口通信口。8个中断源。两个优先级嵌套中断结构。STC89C52单片机的系统框图如图3-3所示,通过内部总线将各个模块进行连接。振荡器及振荡器及定时电路51CPU8K程序存储器256K数据存储器看门狗3个16位定时器/计数器64K总线扩展控制可编程I/O可编程串行口中断控制并行I/O口串行输入串行输出频率基准源计数器中断中断图3-3STC89C51单片机框图3.2超声波测距模块3.2.1超声波传感器介绍超声波传感器是根据仿生学的超声波原理制作出来的一种传感器。超声波也是机械波,他是比声波的震动频率还要高的波。通过电压对换能芯片的触发使其震动并发出超声波。具有许多优点,如高频率、不容易发生散射、波长较短,还有最重要的特点就是方向性非常好,所以能够形成固定方向发射的信号。超声波的穿透能力也非常好,不仅能在空气中传播,还能在固体和液体中传播,特别是一些不透光的固体,超声波能够传送几十米这么远。超声波在传播过程中如果遇到了物质分界面或一些杂质都会形成较明显的反射波,如果是遇到了运动的物体还会发生多普勒现象。由于超声波的这些特性,所以在国防、医学和工业生产中都得到了普遍的使用。要想让超声波作为测量等操作的条件,就必须能够产生超声波并能够接收到超声波。通常将能够满足这种要求的设备叫做超声波传感器,有时候也叫做超声探头。超声波传感器是用压电晶片构成的,不仅能够进行超声波的发射,而且还能对超声波进行接收。功率较小的超声传感器一般用来探测。且拥有很多不一样的结构,比如可分直探头(纵波)、斜探头(横波)等。3.2.2HC-SR04超声波测距芯片的性能特点1.管脚简介HC-SR04超声波传感器共有四个引脚,一个超声波发射头和一个超声波接收头组成。四个引脚的作用分别是:(1)VCC为5V电源;(2)GND为地线;(3)TRIG信号输入;(4)ECH0输出回响信号。管脚排列情况如图3-4所示。VCCVCCTRIGECH0HC-SR04GND图3-4外形及管脚排列图下图是超声波传感器的实物图,跟上图的管脚排列一一对应。图3-5超声波传感器2.HC-SR04的电气参数HC-SR04超声波元件是以在直流5V为正常工作电压。电流15毫安。频率为40赫兹。有效使用范围在2cm~5cm。测量角度为15度。当有得到10us的高平电信号的TTL脉冲时,便能有回响信号出现。规格尺寸为45*20*15mm。详细的参数如表3-1。表3-2电气参数电气参数HC-SR04超声波模块工作电压DC5V工作电流15mA工作频率40Hz最远射程4.5m最近射程2cm测量角度15度输入触发信号10us的TTL脉冲输出回响信号输出TTL电平信号,与射程成比例规格尺寸45*20*15mm3.2.3超声波时序图观察下面的超声波传感器的时序图,可以发现需要有一个10us以上的脉冲对系统传感器进行触发,这样传感器内部才能够自己产生8个40KHZ的周期电平并且对发射波进行接收。当接收端发现有反射波时就会产生回响信号。测量的距离跟回响信号的脉冲宽度是成正比的。然后就能够根据统计发射信号发出到接收到回响信号的时间差算出实际的测量距离了。由于统计的是一个来回的时间所以需使用公式:距离=高电平时间*声速/2触发信号触发信号模块内部发出信号输出回响信号10us的TTL循环发出8个40KHz脉冲回响电平输出与检测距离成比例图3-6时序图需要注意的是:超声波器件应尽量避免带电连接,如果必须带电连接,就必须先将器件的GND端做接地处理,不然将对器件的正常工作产生不好的影响。测量距离的时候,需要测量的物体外表需要尽量大于0.6平方米而且让被测面尽可能的平坦,不然测量出来的距离会不稳定或产生误差。3.3驱动显示电路及报警电路3.3.1LED数码管显示电路超声波测距仪的显示部分使用了一个4位的8段LED二极管,主要是在显示测量距离时和设置警报值时使用。数码管采用了共阴极的方式,共阴方式就是把LED二极管的所有阴极全部都接到一块,作为一个公共的阴极。所以在使用共阴形LED数码管时必须把公共的阴极与GND相联。哪一个二极管需要发光就让他的的阳极变成高电平。在显示数据时使用动态扫描的方式进行显示,使用前先把LED数码管的8个对应位的端口a~g和dp的名字一样的连在一起,然后让I/O口对每个LED的公共阴极COM分别进行驱动。当单片机输出端进行字形码输出的时候,每个LED都能够得到这个字形码,但是具体是让哪个LED亮,就要看COM端的电平了。用单片机的I/O口与COM口接在一块。这时单片机会把位选码发送到I/O口上,决定究竟是哪一个LED需要发光。利用这种方法逐个输出字符时,每一个LED亮的时间都是非常短的,不过人眼是分辨不出来的,所以看起来好像是每一位都一直在显示,没有熄灭过。这样也能体现出动态显示方式很省电的优点,因为动态显示的时候一个时间点只能有一个LED是发光的。具体的原理图如图3-7。图3-7显示电路3.3.2蜂鸣器报警电路蜂鸣器是使用直流电压进行供电的使用整体结构的电子发声器,在计算器、儿童玩具、车辆电子设备、固定电话、传真机、打印机、各类报警器、定时装置等产品的发声模块中都有非常普遍的使用,使用较多的蜂鸣器有两种,一种是压电式蜂鸣器,另一种是电磁式蜂鸣器。压电式蜂鸣器的结构包括压电蜂鸣片、多谐振荡器、阻抗匹配器及共鸣箱、外壳等。多谐振荡器是用集成电路跟晶体管做成的。当直流工作电源接到蜂鸣器上后,多谐振荡器由于开始震动便能产生一个1.5到2.5kHz的声音信号,然后阻抗匹配器就会促使压电蜂鸣片震动发声。还有一种用电磁线圈、振动膜片、振荡器、磁铁和外壳做成的蜂鸣称为电磁式蜂鸣器。当电源接在电磁式蜂鸣器上时,由振荡器发出的音频电流信号就会进入到电磁线圈中,使电磁圈发出磁场。由于磁铁和电磁线圈的共同影响,振动膜片会产生周期性的震动并发出声音。这次超声波测距仪用的就是电磁式蜂鸣器,蜂鸣器会在测量距离达到设置好的报警值或超出测量距离时发出报警声。根据电磁式蜂鸣器的工作原理可以知道,要想让他发出声音,必须有一个特定的驱动电流驱动他。然而如果用单片机I/O口电流进行驱动的话明显太小,应为单片机接口的TTL输出电平太小不够驱动蜂鸣器,所以这时就需要添加一个用来放大的电流的电路,可以使用PNP型三极管8550作为放大电路驱动蜂鸣器。放大电路原理图3-8。图3-8蜂鸣器驱动电路3.4HC-RS04超声波测距原理超声波测距就是根据超声波模块不断发出接收脉冲统计时间完成的。假如信号从超声波发射端发出到接收端接收到一共用了t秒,在空气中超声波的速度是v,可以算出超声波传感器到被测目标的距理S为:S=vt/2。模拟框图如图3-9所示。基本原理:首先超声波发射头发出一个波长6mm,频率是40khz的超声波。当此超声波信号被物体挡住了的时候就会产生反射波,超声波接收头是一个具有压电效应的换能器,然后接收头就能收到超声波并产生一个mV级别的小电压信号。障碍物超声波发射障碍物超声波发射超声波接收定时器40k振荡调制40k振荡调制控制控制增益放大计时增益放大计时计算计算传输传输图3-9系统框图3.5按键设置电路单片机使用最多的按键是矩阵式按键和独立按键:独立按键的用法和程序相对简单,也能使系统稳定性更好,一个I/O口只能安装一个按键,按键的另外一头要接地或接VCC;矩阵式按键的优点是使用的I/O口比较少,但缺点是矩阵式的程序和接法都比较复杂,容易出错。这次超声波测距仪的设计对按键的需求较小,所以选择用独立按键。判断独立按键是否被按下,可以通过判断单片机相应的I/O口读到的电平的高低来确定。可以将正常是打开的按键一口接在I/O口上,另一口接GND,单片机上电后,平时不按下按键时让这个I/O口保持高电平,一旦按下这个按键,对应的I/O口便被短路,此时这个I/O口便成了低电平。当按键一松开,由于单片机内部的上拉电阻,此I/O口就会再次回到高电平状态。程序运行时为了知道某个按键是否有动作,需要找到对应的I/O口的电平高低。还有当单片机对键盘进行处理时需要有一个非常重要的环节,也就是键盘去抖动。键盘抖动也就是设备机械的抖动,键盘在按下刚触碰的到的时候会产生不稳定的电压,属于正常。这种情况即使操作时很小心也不能躲避的。抖动的时间基本在10到200毫秒内,这么短的抖动时间对单片机内以微秒为单位的时钟电路来说是非常慢的,单人们缺感觉不到。所以需要利用软件对抖动时间进行处理,过滤掉较短的抖动时间,当按键按下稳定时在处理请求,也就是去抖动。也可以利用电路对抖动进行处理,不过会增加系统冗余度。在比较后选用了软件去抖动的方法。具体实现方法是当按键对应的I/O口出现低电平时,立马开始延迟20毫秒,当延迟结束时判断此I/O口的电平,如果这次获取的是高电平说明I/O口处于低电平的时间较短,即为抖动现象,可以无视;如果获取的是低电平说明I/O口一直处于低电平,即按键确实被按下了,之后就可以处理相应的请求。电路如图3-10所示。图3-10按键电路图第3章标题PAGE8PAGE28第4章系统软件设计4.1系统主程序主程序的主要作用是把每个功能模块进行联系,读取出并计算HC-RS04的测量的长度、测量距离的显示、通过按键控制有效距离限制、当测量的值超过了最大测量值时,蜂鸣产生长响的报警声。当测量距离小于报警距离时,蜂鸣器根据距离的大小产生频率不一样的声音。如图4-1所示的是主程序流程图。开始开始初始化调用显示子程序障碍物存在读出距离值并显示结束 NYY图4-1主流程图4.2显示距离子程序显示距离子程序的功能是把超声波模块测量出的时间差经过计算后得到的距离值传到单片机内,单片机通过处理把距值动态输出到4位LED数码管上,每次显示一位,逐位显示。如图4-2所示是显示距离子程序的流程图。开始开始获取获取距离参数赋值显示赋值显示结束结束图4-2LED显示距离子程序流程图4.3报警子程序报警子程序的主要作用是在测量距离超出预设的最大测量距离时发出报警,蜂鸣器会一直发出声音;当测量距离小于设置好的报警距离时,蜂鸣器会出现断续响的报警声,并且蜂鸣器发出声音的频率跟距离成比例,距离小频率就高,也就是报警声越急促。图4-3所示的是报警子程序的流程图。 开始 开始 蜂鸣器报警 蜂鸣器报警 达到最大距离 达到最大距离Y Y NN蜂鸣器报警蜂鸣器报警小于报警距小于报警距离YNN结束结束图4-3报警子流程图4.4按键子程序按键子程序的功能是调节测量的报警距离,按功能键进入设置模式,进入后按增加按键就能够上调预设警报距离值,按下减小按键可以下调报警距离。每次按一下增加按键或减小按键只能增加或减小报警距离值1厘米。在设置模式下按下功能按键时离开设置模式。按键子程序的流程图如图4-4所示。开始开始 N按下功能N按下功能键YY设置设置报警距离N按下功能键N按下功能键YY结束结束图4-4按键子流程图
第5章系统仿真5.1系统仿真环境——ProteusProteusISIS是英国Labcenter公司开发出来的用于对电路分析和实物仿真的仿真软件。运行平台是Windows系统,可以用来仿真、解析各种集成电路与模拟元器件,Proteus拥有以下优点:能对SPICE电路和单片机进行仿真。能进行数字电路的仿真、模拟电路的仿真、单片机及其外围电路组成的系统电路的仿真、I2C调试器、SPI调试器、按键和LCD系统的仿真等功能;还能仿真各种虚拟仪器,如示波器、逻辑分析仪、信号发生器和电流计等;对常用单片机系统的仿真进行支持。目前支持的单片机类型有:8051系列、68000系列、PIC12系列、AVR系列、PIC18系列、PIC16系列、HC11系列、Z80系列还有其他的外部元件;提供的有软件的调试选项。在进行仿真时可以进行直接运行、单步运行、设置断点调试等多种调试能力,还可以查看每个变量、寄存器等元器件的运行状态与值,因此在proteus软件的仿真系统里,以上的方式也是很需要的;proteus还能支持其他的软件的编译或调试,比如KeilC51uVision2;原理图绘制功能非常强大,元器件非常全。所以本次毕业设计采用Proteus仿真与分析。5.2仿真录入源程序时在仿真图5-1中点击51单片机,鼠标打开单片机,会出来一个如图5-2所示的窗口,在“Programfile”下面选择已经能正常使用的hex文件,单片机选89c51,晶振选择12MHz,选完之后点击“OK”按钮,进行仿真并观察结论。图5-1系统仿真原理图图5-2单片机设置对话框5.3误差及特性分析由于超声波的一些特点,所以必须在满足特定条件是进行测量,否则会才出现误差:必须让被测物体与超声波测距仪尽量保持垂直;测量的物体外表应该尽量是平面;在超声波测距仪进行测量的时候旁边不能有其它能够反射超声波的东西影响。所以在用测距仪去测量距离的时候应该留心这些条件,否则容易造成接收到的信号有误差以至于测量结果不稳定或者直接测量不出结果。测量距离在小于2厘米时时间差太短,因而无法测量。又由于发射的超声波的功率强度有限,超声波测距仪测量不出6m以上的距离。结论结论我的毕业设计的做出一个基于单片机的超声波测距仪,需要完成的最终要求就是能够利用超声波进行距离的测量,并且通过LED以数字的形式显示出测量的结果。超声波测距是通过得到超声波从发射到接收的时间差计算出测量距离,从而确定测量距离。在硬件电路中需要有超声波传感器作为超声波发声和接受的元件,还要有显示器对结果进行显示,当达到报警距离时需要有蜂鸣器发出报警声。在最后经过调试,实现了可测量范围和允许误差内距离测量成功。虽然此次毕业设计完成的还算顺利,但还是遇到了一些问题,主要在程序方面,如蜂鸣器随距离缩小而响声频率变大,在重新设置完报警距离时,报警频率没有跟随距离逐级变化,后来重新定义了报警频率与测量距离和预设报警距离的关系接解决了该问题。再解决了问题后最终完成了此次超声波测距仪设计。致谢洛阳理工学院毕业设计论文16PAGE50谢辞在此我要由衷的感谢我的毕业设计导师***老师,感谢您在百忙之中仍给予我如此多的帮助和建议,让我能成功的做完这次毕业设计。在此期间,赵老师对知识严谨求实的态度和精益求精的作风都让我非常钦佩。大学的最后一次毕业设计能在赵老师的指导下完成我感到非常荣幸,您能在教学的过程中抽出这么多时间对我进行指导,令我很感动。再次向我的导师***老师表示崇高的敬意,谢谢您。在这里我还要感谢我的母校对我这四年的教育。在这四年里母校给了我如此优秀的环境和条件,让我能学到自己喜欢的知识和对我人生有用的技能。大学生涯在我人生中是非常重要的,让我的人生得到了升华,这里有我许多美好的回忆。最后祝福我美丽的母校昂扬前进、再创辉煌!附录PAGE16参考文献[1].林伟,梁家宁,李才安.便携式多功能超声波测距仪的设计与实现[J].电子测量技术,2008,26(01):29-31.[2].陈美銮,尹浩,黎飘,董博然.智能盲人导行仪的设计与实现[J].电子技术应用,2006,31(10):2-5.[3].罗庆生,韩宝玲.一种基于超声波与红外线探测技术的测距定位系统[J].计算机测量与控制,2005,14(04):1-3.[4].高飞燕.基于单片机的超声波测距系统的设计[J].信息技术,2005,5(07):43-45.[5]赵广涛,程荫杭.基于超声波传感器的测距系统设计[J].传感器与仪器仪表,2006,22(11):128-149[6]赵珂,向瑛,王忠,等.高精度超声波测距仪的研制[J].传感器技术,2003,22(2):55-57[7]肖质红.超声波测距仪在汽车安全系统中的应用[J].浙江万里学院学报,2007,(5):43-46[8]赵曰峰,马艳艳.基于单片机的倒车雷达设计[J].现代电子技术,2012,35(10):5-7[9]鞠永胜.基于嵌入式系统汽车倒车雷达的设计与实现[D].山东:山东大学硕士学位论文,2010[10]赵小强,赵连玉.超声波测距系统中的温度补偿[J].控制与检测,2008,(12):60-62[11]丁明亮,唐前辉.单片机原理及应用——基于Keil与Proteus[M].北京:北京航空航天大学出版社,2009.(5)102-150[12]吴琼,封维忠,马文杰.汽车倒车雷达系统的设计与实现[J].现代电子技术,2009,(9)190-192[13]王丰,栾学德.单片机原理与应用技术[M].北京:北京航空航天大学出版社,2007:(8)254-261[14]何希才.传感器技术及应用[M].北京:北京航空航天大学出版社,2005:(5)154-261[15]陶洁,肖桂凤,迟权德.基于AT89C52单片机的超声波测距仪的设计[J].电子设计工程,2012,20(2):135-140[16]王节旺.一种基于STC89C52RC单片机的计时系统的设计方案[J].微型机与应用,2011,30(6):28-30[17]陈海宴.51单片机原理及应用[M].北京航空航天大学出版社,2010:(3)54-71[18]戚新波.DS18B20与ATmega8单片机接口的C语言实现方法[J].微计算机信息,2005,21(7):70-72[19]rtoriS,ZHANGGX.GeometricErrorMeasurementandCompensationofMachines.AnnalsoftheCIRP.1995:599-609
附录单片机程序://接线:模块TRIG接P3.2ECH0接P3.3#include<reg52.H>//器件配置文件#include<intrins.h>//按键声明sbitRX=P3^2;sbitTX=P3^3;sbitS1=P1^4;sbitS2=P1^5;sbitS3=P1^6;//蜂鸣器sbitFeng=P2^0;//变量声明unsignedinttime=0;unsignedinttimer=0;unsignedcharposit=0;unsignedcharpinlv=5;unsignedlongS=0;unsignedlongBJS=50;//报警距离80CM//模式0正常模式1调整charMode=0;bitflag=0,flag_BJ;unsignedcharconstdiscode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0xff/*-*/};unsignedcharconstpositon[4]={0xfd,0xfb,0xf7,0xfe};unsignedchardisbuff[4] ={0,0,0,0};unsignedchardisbuff_BJ[4] ={0,0,0,0};//报警信息//延时100msvoiddelay(void)//误差0us{unsignedchara,b,c;for(c=10;c>0;c--)for(b=38;b>0;b--)for(a=130;a>0;a--);}//按键扫描voidKey_(){ //+ if(S1==0) { delay(); while(S1==0) { P1=P1|0x0f; } BJS++; if(BJS==151) { BJS=0; } } //- elseif(S2==0) { delay(); while(S2==0) { P1=P1|0x0f; } BJS--; if(BJS==0) { BJS=150; } } //功能 elseif(S3==0) { delay(); while(S3==0) { P1=P1|0x0f; } Mode++; if(Mode==2) { Mode=0; } }}/**********************************************************************************************************///扫描数码管voidDisplay(void) { //正常显示 if(Mode==0) { P0=0x00; if(posit==0)//数码管的米标志 { P0=(discode[disbuff[posit]])|0x80; } else { P0=discode[disbuff[posit]]; } P1=positon[posit]; if(++posit>=3) posit=0; } //报警显示 else { P0=0x00; if(posit==0)//数码管的米标志 { P0=(discode[disbuff_BJ[posit]])|0x80; } elseif(posit==3) { P0=0x76; } else { P0=discode[disbuff_BJ[posit]]; } P1=positon[posit]; if(++posit>=4) posit=0; }}/**********************************************************************************************************///计算voidConut(void){ time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.7)/100;//算出来是CM if(Mode==0) { if((S>=700)||flag==1)//超出测量范围显示“-” { Feng=0; flag=0; disbuff[0]=10; //“-” disbuff[1]=10; //“-” disbuff[2]=10; //“-” } else { //距离大于报警距 if(S<=BJS) { flag_BJ=1; } else { flag_BJ=0; Feng=1; } disbuff[0]=S%1000/100; disbuff[1]=S%1000%100/10; disbuff[2]=S%1000%10%10; } } else { Feng=1; flag_BJ=0; disbuff_BJ[0]=BJS%1000/100; disbuff_BJ[1]=BJS%1000%100/10; disbuff_BJ[2]=BJS%1000%10%10; }}/**********************************************************************************************************///定时器0voidzd0()interrupt1 //T0中断用来计数器溢出,超过测距范围{ flag=1; //中断溢出标志}/**********************************************************************************************************///定时器1voidzd3()interrupt3 //T1中断用来扫描数码管和计800MS启动模块{ unsignedintm; TH1=0xf8; TL1=0x30; Key_(); Display(); timer++; if(flag_BJ==1) { m++; if(m>=(S+10)) { m=0; Feng=!Feng; } } if(timer>=400) { timer=0; TX=1; //800MS启动一次模块 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; }}/**********************************************************************************************************///主函数voidmain(void){ TMOD=0x11; //设T0为方式1,GATE=1; TH0=0; TL0=0; TH1=0xf8; //2MS定时 TL1=0x30; ET0=1; //允许T0中断 ET1=1; //允许T1中断 TR1=1; //开启定时器 EA=1; //开启总中断 while(1) { while(!RX); //当RX为零时等待 TR0=1; //开启计数 while(RX); //当RX为1计数并等待 TR0=0; //关闭计数 Conut(); //计算 }}实物效果图:
外文资料翻译UltrasonicrangingsystemdesignUltrasonicrangingtechnologyhaswideusingworthinmanyfields,suchastheindustriallocale,vehiclenavigationandsonarengineering.Nowithasbeenusedinlevelmeasurement,self-guidedautonomousvehiclesfieldworkrobotsautomotivenavigation,airandunderwatertargetdetection,identification,locationandsoon.Sothereisanimportantpracticingmeaningtolearntherangingtheoryandwaysdeeply.Toimprovetheprecisionoftheultrasonicrangingsysteminhand,satisfytherequestoftheengineeringpersonnelfortherangingprecision,theboundandtheusage,aportableultrasonicrangingsystembasedonthesinglechipprocessorwasdeveloped1.Withthedevelopmentofscienceandtechnologytheimprovementofpeoplesstandardoflivingspeedingupthedevelopmentandconstructionofthecity.urbandrainagesystemhavegreatlydevelopedtheirsituationisconstantlyimproving.Howeverduetohistoricalreasonsmanyunpredictablefactorsinthesynthesisofhertimethecitydrainagesystem.Inparticulardrainagesystemoftenlagsbehindurbanconstruction.Thereforethereareoftengoodbuildingexcavationhasbeenbuildingfacilitiestoupgradethedrainagesystemphenomenon.Ifortisveryimportanttopeopleslives.MobilerobotsdesignedtoclearthedrainageculvertandtheautomaticcontrolsystemFreesewageculvertclearguaranteerobottherobotisdesignedtocleartheculvertsewagetothecore.ControlSystemisthecorecomponentofthedevelopmentofultrasonicrangefinder.Thereforeitisveryimportanttodesignagoodultrasonicrangefinder.2.Aprincipleofultrasonicdistancemeasurement2.1TheprincipleofpiezoelectricultrasonicgeneratorPiezoelectricultrasonicgeneratoristheuseofpiezoelectriccrystalresonatorstowork.Ultrasonicgeneratortheinternalstructureasshownithastwopiezoelectricchipandaresonanceplate.Whenitstwopluspulsesignalthefrequencyequaltotheintrinsicpiezoelectricoscillationfrequencychipthechipwillhappenpiezoelectricresonanceandpromotethedevelopmentofplatevibrationresonanceultrasoundisgenerated.Converselyifthetwoarenotinter-electrodevoltagewhentheboardreceivedultrasonicresonanceitwillbeforvibrationsuppressionofpiezoelectricchipthemechanicalenergyisconvertedtoelectricalsignalsthenitbecomestheultrasonicreceiver.Thetraditionalwaytodeterminethemomentoftheechosarrivalisbasedonthresholdingthereceivedsignalwithafixedreference.Thethresholdischosenwellabovethenoiselevelwhereasthemomentofarrivalofanechoisdefinedasthefirstmomenttheechosignalsurpassesthatthreshold.Theintensityofanechoreflectingfromanobjectstronglydependsontheobjectsnaturesizeanddistancefromthesensor.Furtherthetimeintervalfromtheechosstartingpointtothemomentwhenitsurpassesthethresholdchangeswiththeintensityoftheecho.AsaconsequenceaconsiderableerrormayoccurEventwoechoeswithdifferentintensitiesarrivingexactlyatthesametimewillsurpassthethresholdatdifferentmoments.Thestrongeronewillsurpassthethresholdearlierthantheweakersoitwillbeconsideredasbelongingtoanearerobject.2.2TheprincipleofultrasonicdistancemeasurementUltrasonictransmitterinadirectiontolaunchultrasoundinthemomenttolaunchthebeginningoftimeatthesametimethespreadofultrasoundintheairobstaclesonhiswaytoreturnimmediatelytheultrasonicreflectedwavereceivedbythereceiverimmediatelystoptheclock.Ultrasoundintheairasthepropagationvelocityof340m/saccordingtothetimerrecordsthetimetwecancalculatethedistancebetweenthelaunchdistancebarriersthatis:s340t/23.UltrasonicRangingSystemfortheSecondCircuitDesignSystemischaracterizedbysingle-chipmicrocomputertocontroltheuseofultrasonictransmitterandultrasonicreceiversincethelaunchfromtimetotimesingle-chipselectionof8751economic-to-useandthechiphas4KofROMtofacilitateprogramming.CircuitschematicdiagramshowninFigure2.Figure1circuitprinciplediagram3.140kHzultrasonicpulsegeneratedwiththelaunchRangingsystemusingtheultrasonicsensorofpiezoelectricceramicsensorsUCM40itsoperatingvoltageofthepulsesignalis40kHzwhichbythesingle-chipimplementationofthefollowingprocedurestogenerate.puzel:mov14h12hultrasonicfiringcontinued200mshere:cplp1.0output40kHzsquarewavenopnopnopdjnz14hhereretRanginginfrontofsingle-chipterminationcircuitP1.0inputportsinglechipimplementationoftheaboveproceduretheP1.0portina40kHzpulseoutputsignalafteramplificationtransistorTthedrivetolaunchthefirstultrasonicUCM40Tissued40kHzultrasonicpulseandthecontinuedlaunchof200ms.RangingtherightandtheleftsideofthecircuitrespectivelytheninputportP1.1andP1.2theworkingprincipleandcircuitinfrontofthesamelocation.3.2ReceptionandprocessingofultrasonicUsedtoreceivethefirstlaunchofthefirstpairUCM40Rtheultrasonicpulsemodulationsignalintoanalternatingvoltagetheop-ampamplificationIC1AandafterpolarizationIC1BtoIC2.IC2islockedloopwithaudiodecoderchipLM567internalvoltage-controlledoscillatorcenterfrequencyoff01/1.1R8C3capacitorC4determinetheirtargetbandwidth.R8-conditioninginthelaunchofthecarrierfrequ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 光的反射(教学设计)-2024-2025学年科学五年级上册人教鄂教版
- 2025年甘肃省兰州市单招职业适应性测试题库完整版
- 2025年河南女子职业学院单招职业倾向性测试题库学生专用
- 2025年湖北生态工程职业技术学院单招职业倾向性测试题库必考题
- 2025年度公司独家签约带货主播合作协议
- 宠物医院装修全包合同细则
- 2025年度数字经济平台运营人员聘用协议
- 2025年度美容美发门店联营合作合同
- 农村茶艺馆装修合同模板
- 2025年度手房买卖意向金支付与房屋交易风险控制合同
- 2025年湖南食品药品职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 企业数字化转型战略-深度研究
- 新种子法律法规培训讲解
- 2025年东营科技职业学院高职单招数学历年(2016-2024)频考点试题含答案解析
- 2025-2030年中国民用通信天线行业发展趋势规划研究报告
- 《幼小衔接家长会》课件
- 浙江省金华市婺城区2024-2025学年九年级上学期期末数学试卷(含答案)
- Unit 4 A glimpse of the future 说课稿-2023-2024学年高二下学期英语外研版(2019)选择性必修第三册001
- 乡村建设规划许可培训
- 加气站安全课件
- 北师大版二年级数学下册各单元测试卷
评论
0/150
提交评论