




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
超声波测距系统研究1.1项目研究背景及意义 如今社会里,科学技术不停地朝着更加先进的方向发展着,而科学技术创新也为电子产业的发展注入了新元素,车载电子安全也进入了一个新的平台。如今各种类型的车辆设计中几乎都不可否认地会用到倒车雷达,以至于倒车雷达在汽车安全中所占的地位越来越高。目前用在汽车的倒车雷达里面,大部分显示器件都是采用数码管或者液晶显示器,而报警部分往往都是用的蜂鸣器,控制核心几乎都是用单片机,本系统中选用的显示器件为LCD1602显示器。超声波测距扮演着越来越重要的角色,不论是液位高度探测还是水平距离探测都离不开它。在测距中往往要考虑到对象颜色和光线的影响,而超声波测距则不用考虑这些因素,因为它的检测方式为非接触式。并且同时还具有高可靠、不污染、少维护、寿命长等特点,所以相比其他的测距形式,超声波测距在高温、烟尘、气体腐蚀、湿润等低劣条件下更能优秀地完成工作。所以,在很多特殊环境的测距中,超声波受到了大多数人的青睐。同时,由于超声测试是一种相对快速、简单、计算量小的检测方法,而且易于实现实时控制试验物质,其测量精度可达到工业指标的实际要求。正是如此,汽车倒车雷达的制造过程中大多数都用的超声波测距。1.2 超声波简介 人类所能接受的声波的变动范围是20HZ20KHZ,并且把这个频率段内的声波称为可听声波。对于这个频率范围内的声波,比这更低的称为低频声波,在这频段以上的声波,我们称其为超声波。超声波有一个特别之处,那就是沿着直线传播。它的绕射能力与频率呈现反比关系,其反射能力与频率呈现出来的又是一种正比关系。 它的特性有几个,分别可表述为:透射、聚束、反射及定向。将超声波与不同物质相互作用的各种效应以及超声波的传播特性加以利用过后,超声波传感器就被制作出来了。其以检测迅速、计算简单、使用方便、精度高等优点而被广泛使用。1.3超声波检测简介 通过简单的外围电路发生和接收超声波,单片机通过采样获取到超声波的传播的时间,用软件程序部分来计算出距离。它的测量电路简单、精度高、反映速度快、可靠性好。超声波指向性好、能量损耗低、传播距离较远、不易受外界环境影响和对被测目标无损害等特点,利用超声波测量距离就可以解决传统测量方法中遇到的问题。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面也能达到工业实用的要求。1.4设计的内容本设计是一个以STC89C52单片机为控制核心、以HC-SR04超声波测距模块为检测元件的超声波测距系统。要求设计能够实现在2cm到4m内对距离进行检测与显示,并且如果检测到的距离值小于设定的值,系统就会进入报警状态。1.5论文结构 论文的各个不同内容安排如下: 第1章:绪论。对超声波发展的背景及意义、超声波和超声波检测进行了阐述,最后是本设计的内容以及论文的结构。 第2章:总体设计方案。提出了本系统设计的总体方案,对超声波测距技术和测距传感器的种类分别进行了介绍,同时对超声波测距进行了分析。第3章:硬件电路设计。在这部分里,对单片机和显示屏进行了分别的介绍,对硬件的各个组成部分进行了分析与设计,并且给出了各部分对应的电路图,最后是本系统总的硬件电路图。第4章:软件设计。软件设计部分一开始给出了本系统总的流程图,其后是各个部分设计方案与流程图,对每个部分分别进行了归纳与介绍,阐述了各子部分的运行方式。第5章:硬件性能测试。在这部分内容中,对本设计的实物进行了验证,给出了实物图以及不同距离下的测试情况,分析了本系统的一些不足之处以及出现误差的原因。第6章:设计的总结以及展望。这部分内容中对本设计进行了总结,并在本次设计的基础上,对其发展做出了预想。2.总体设计方案2.1总体方案 本次设计总体上包括两个设计部分,分别为硬件设计和软件设计。模块可从细划分为数据采集、数据判断、LCD显示、报警等不同子模块。通路构造可划分成:主控电路,传感器和蜂鸣器的搭建的电路。单片机在本次设计中作为中心单元,此系统是单片机的应用。以单片机为控制核心的系统中,构成部分共有两块,其为硬件和软件。硬件中包括有单片机、输入/输出设备(I/O)以及外围应用电路等。软件是各种工作程序的总称。在单片机应用系统的研制过程中,有几个不同的阶段,分别为总体设计、硬件设计、软件设计等。系统通过调用不同的子程序来对距离进行检测、计算分析、显示或者报警。系统的控制核心部分采用的是STC89C52单片机,检测部分采用的是HC-SR04超声波传感器,显示部分则是用了LCD1602液晶显示屏,声光报警采用的是蜂鸣器和红色指示灯。一次距离检测完毕过后,中断停止工作,单片机对检测得到的距离值进行计算,然后通过中央处理器将传感器检测得到的距离大小与事先设定好的值进行对比,对比过后如果处理器判断出距离大小值如果大于1m而小于3m,此时红色指示灯就会开始工作,发出红色灯光报警信号。如果检测得到的距离小于1m,则控制蜂鸣器报警,并且LCD1602都会实时显示距离值。 图2.1为本次系统方框图。图2.1系统方框图2.2超声波测距技术2.2.1超声波的特性 (1)吸收特性超声波在介质中传播时,它的强度会慢慢地不断降低。究其原因是因为这些介质要收取掉超声波的部分能量。声波在同样的传播介质中传播时,介质的能量吸收能力大小与声波的频率反应的是一种正比例关系。一定频率的声波在传播过程中,不同类型与性质的介质对声波能量的吸收程度大小也不尽相同,甚至可以说是完全不一样。从大的方面来讲,气体介质吸收能力最大,液体介质吸收能力次之,固体介质的吸收能力最低。同种类别的介质,如果构成的成分不一样,吸收能力也会随之不一样。 (2)束射特性超声波的波长比较短,和光线一样具备反射、折射和聚焦的能力,并且适用于所有几何光学定理。意思就是说,当超声波在传播过程中,与物质的接触面接触过后,就会产生“反射”的情况,角度大小满足入射角等于反射角这一特点。当光线进入不同密度物质而发生折射时,超声波传播方向将发生变化,折射率会随着两种介质的密度差的增大而增大。 (3)能量传递特性当超声波进入到某一种类别的介质中时,组成这种介质的物质中所含的分子会随着声波的传播而出现抖动的情况,这些分子抖动的频率和声波的振荡频率大小相等。这是出于声波的作用而引起的。物质分子因为抖动而获得的能量不仅同分子的振动速度的平方有关,同时也与分子本身质量的大小有关。虽然如此,前者却是占了主要部分。所以如果某一种声波的频率越高,那么它进入的物质的分子就能得到更大的能量。超声波可以使分子有更大的能量,这是因为它的频率比其他声波都要高。 (4)超声波的声压特性当声波进入一种物质时,由于振动的关系,因此,分子将在彼此之间出现拉伸和压缩的情况,较声波进入之前,物体就会出现压力差。我们将这种由声波振动而引发额外压力的现象称为声压效应。2.2.2关于声波的衰减 因为超声波是以直线传播的方式在材料中传播,也就是说,如果材料的内部构造紧凑、那么超声波在这种材料中的传播方式永远都不会出离直线传播的形式。反之,超声波传播时就会出现3种不同的情况。第一种:一部分波会直到把能量全部用完之前,都以直线的方式传播。这些能量被消耗殆尽,究其原因是因为波与构成材料的物质发生摩擦生成了热量,在术语上把这种情况称呼为吸收。第二种:另外一部分波与构成材料的物质粗颗粒碰撞之后出现了散射。这种情况下大部分都是直接在材料内部就把能量用完了。由于超声波散射的一些基本规律不能确定,所以无法用通过计算的方法来计算出超声波散射的相关参数。 第三种:最后还剩下的声波出现扩散的情况。扩散是波在传播中的一种正常的能量衰减存在方式。波基本上一直都在进行着扩散,这种说法从理论上来讲完全成立,即便就是介质均匀也依然如此。从这种层面上来讲,波在扩散的过程中,其分布在单位面积上的声能会随着传播距离的增加而逐渐减弱。超声波传播的过程中,它的能量会跟着传播距离的不断增加而慢慢降低。扩散、散射和吸收这三个负面影响在很大规模上直接影响着声波的能量衰减的大小度。声波在最优的介质中传播时,其能量的衰减大部分都来自于扩散的原因。意思就是说,声波在传播过程中,它的距离会不停地增加,正是这个原因,所以在单位面积上声能会慢慢减弱。检测分辨力和测量精度二者与频率的高低呈正比关系,频率越高,检测分辨力就越高,测量精度也就越高。由此,往往都只有超声波被用在实践之中,而其他类型的声波则没有被采用。在使用上可将声波技术分为两个类型:一是超声加工与处理技术,即功率超声使用。二是超声检测技术,即超声检测。就仅仅以超声波而言,它并不起什么作用,超声应用必须借助于超声探头来产生和接收超声波,并运用超声波的传播特性以及超声波和介质之间彼此影响的各种效应,才能够达到应用的目的。 直到现在,超声波技术已经被广泛使用在不同的行业,其中包括有:钢铁冶炼、船舶制造、机械加工、医疗器材等。使用的类型也多种多样,比如超声探伤,超声清洗,超声焊接等。并且超声波的各种测量和医学超声技术已经在社会效益和经济效益等方面有了较大的斩获。2.2.3超声波测距分析 在所有超声波测距的探测方法中,回声探测法是用得最多的一种方法。超声波发射器朝着某一方位将超声波发送出去,在发送的那一刻计时器开始工作。超声波在传播途中会遇到障碍物,在与障碍物出现接触的那一刻,超声波会出现反射的情况,而超声波接收器随时都在对回波进行探测,一旦收到回波时计时停止。已知超声波在大气中的传播速度为340m/s,然后根据计时器记下来的时间t,发射点和障碍物之间的距离S也就可以计算出来了,计算公式为:S=340t/2。 超声波的传播速度v与温度息息相关。有一种情况下可以近似认为超声波在介质中的传播速度基本保持恒定,那就是传播介质的温度波动范围很小的时候。如果对测距精度要求很高,则一般要对测量的结果采取数值校正,所用方法多为温度补偿法。当传播速度确定后,只要把超声波往返一次的时间计算出来,就可以求得距离。测距的原理如图2.2所示:图2.2 超声波的测距原理令L代表两探头之间中心距离的一半值,有公式(2-1)和(2-2): (2-1) (2-2)又已了解到超声波传播的距离计算公式: (2-3)其中:v 为超声波的传播速度; t 为超声波往返一次所需要的时间。将(22)、(23)代入(2-1)中得到计算公式如(2-4): ( 2-4) 其中,超声波的传播速度v基本上保持为某一个常数不变,当然,这是建立在温度也不变得基础上。假设需要测量的距离H相对于L要大出许多时,则公式(24)要更改为: (2-5) 也就是说,如果测量出超声波传播的时间t,就可以测量出与障碍物之间的距离H。2.3测距传感器的种类 (1)微波传感器。微波传感器是一种新的非接触式传感器。微波也从属于电磁辐射的范畴,它具备了电磁波的一切特性,介于红外线与无线电波之间。微波传感器不仅仅在军事科技方面有着普遍的应用,同时在通讯方面也有一些应用; (2)激光测距传感器。利用激光强方向性和良好传光性的特点制作而成的传感器。其优点在于它的测量精度大、测量范围广、并且还可以快速地对很远的距离进行探测。缺点是会对人体造成危害,而且研制难度大; (3)红外线测距传感器。优点是价格不算高,工艺不复杂,用起来也很安全和方便,然而测量距离近,精度低是它的主要缺点; (4)超声波传感器。根据工作原理的不同可将超声波传感器分为几大类别,分别是压电、电磁、磁致伸缩等。其中压电超声换能器是最常见的,所使用的探针是一种压电陶瓷材料。它是根据压电效应的原理工作的。逆压电效应时将电振动转换为与之频率相等的高频机械振动,于是超声波出现了。当正压电效应时,超声波振动又被转换为一电信号,这个时候作为一个接收探头。压电式超声波传感器制造部件有压电晶片,保护膜,接收块以及引线和其他各种部件。为了拥有导电极板,于是在压电晶片的两边各镀有银层。减少机械品质并且吸收声波能量就是阻尼块的主要职能。当在传感器两极处加上一个与压电晶片的固有振荡频率相等频率的脉冲信号时,压电镜片将会发生振动,产生超声波。相反地,如果没有外电压施加在两个电极之间,一旦收取了超声波,压电晶片就会出现抖动动作,把机械能转换成与之对应的电信号,此时作为接收器使用。图2.3 超声波传感器结构我们习惯上把完成超声波的产生和接收功能的装置称为超声波换能器,当然,在有些时候也习惯性地称作超声波探头,其实就是超声波传感器。它的两个探头的主要构成部件是一种压电晶片,超声波可以被发射和接收。它有许多不同的结构,可以分为表面波探头(表面波检测)、兰姆波探头(兰姆波检测)、线性探头(纵波检测),斜探头(横波检测)、双探头(一个发射、一个接收)等。 不同类型的材料可以生产出不同性质的晶片,方式多种多样。由于不同晶片的参数不一样,因此每个探头的性能都大相径庭。2.3.1超声波传感器的主要性能指标 (1)工作频率。压电晶片的共振频率。如果产生的能量以及它的灵敏度都达到了最大的话,就证明此时加至晶片两端的电压频率跟晶片本身的共振频率大小值一样; (2)工作温度。相对较低,因而可以工作很长的时间而不会降低性能甚至出现损坏; (3)灵敏度。主要取决于制造晶片本身。如果机电耦合系数较低,那么也只能拥有较低的灵敏度。3.硬件电路设计3.1电源设计 电源采用USB数据线插入USB插孔供电。3.2 STC89C52单片机 STC89C52是STC公司生产的一种CMOS8位微控制器,这种控制器的性能很高,并且同时还具有很低的功耗,不仅如此,该控制器还拥有着存储空间为8K的系统可编程Flash存储器。STC89C52在使用MCS-51的内核的基础上,有一些改进,添加了其他控制器不具备的性能。 该单片机具有以下标准功能: 32 位I/O 口线,内置4KB EEPROM,MAX810复位电路,8k字节Flash,512字节RAM, 4个外部中断,3个16 位定时器/计数器,看门狗定时器,一个7向量4级中断结构,全双工串行口。另外 STC89C52 可降至0HZ 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、中断、串口、定时/计数器继续工作。掉电保护情况下,将会保存RAM的内容,也会冻结振荡器,同时单片机也会停止工作,直到下一个中断或硬件复位后再继续工作。最高运作频率35MHZ,6T/12T可选。图3.1为STC89C52的外观图,图3.2为STC89C52的引脚图。图3.1 STC89C52外观图图3.2 STC89C52引脚图 1-8脚:I/O口,P1口(P1.0 - P1.7); 9脚:复位脚(RST); 10-17脚:I/O口,P3口(P3.0=RXD,P3.1=TXD,P3.2=,P3.3=,P3.4=T0,P3.5=T1,P3.6=,P3.7=); 18-19脚:晶振(18=XTAL2,19=XTAL1); 20脚:地(GND); 21-28脚:I/O口,P2口(P2.0 - P2.7); 29脚:外部程序存储器的选通信号输出引脚; 30脚:地址锁存使能信号输出引脚编程脉冲输入引脚; 31脚:内外存储器选择引脚/片内EPROM编程电压输入引脚; 32-39脚:I/O口,P0口(P0.7 - P0.0); 40脚:+5V电源。 其中I/O口总数为32,当复位时,P0是开漏输出,如果作为一个总线扩展,没有上拉电阻。但是如果是当作 I/O 口来用,就需要上拉电阻,在本设计中用到的上拉电阻的阻值是10。3.3 1602LCD显示屏1602液晶显示屏也称作是1602字符型液晶显示屏,它被专门用于显示符号、数字和字母等,从属于点阵型液晶模块。点阵字符型液晶显示器可以根据显示容量的大小分为1X16字、2X16字以及2X20字等形式。LCD1602模块为2X16字,由几个5X7或5X11等点阵字符位构成,每行之间有间距,位与位彼此之间也有间距间隔,每一位可以显示一个字符点阵字符,可以显示两行,每行16个字符。图3.3为LCD1602的外观图,图3.4为LCD1602引脚图。图3.3 LCD1602外观图图3.4 1602LCD显示屏引脚图 1脚:地(GND); 2脚:+5V电源; 3脚:对比度调整端。接电阻或者或者接地,基本上选择接地,此时对比度最高; 4脚:寄存器选择端。高电位为数据寄存器,低电位则是命令寄存器;5脚:读写选择端。高电位时状态为读,低电位时状态为写;6脚:使能端。高电位时读取信息,由高电位负跳变至低电位时执行指令; 7-14脚:8位双向数据端; 15-16脚:背灯电源。LCD1602构成硬件有几种,分别是驱动器HD44100、控制器HD44780和液晶板。HD44780是一种特别典型的液晶显示控制器,它集合了控制功能与驱动功能与一身,可驱动单行16字符或2行8字符。但是面于2行16字符的显示时就显得有点苍白无力,所以这种情况下就要增加HD44100驱动器。HD44780由自定义字符发生器CGRAM、字符发生器CGROM和显示缓冲区DDRAM组成。 其组成图如图3.5所示。图 3.5 LCD1602模块的组成CGROM中存储了各种各样各种不同类型的点阵字符图形,其数目总和有160个之多。这些字符中包括有数字字符、英文字母的大小写字符、常用的符号和日文字符等,每一个字符都配有一个与之相对应的固定的代码。3.4 超声波测试模块设计中的超声波模块为,这种模块具有非接触式距离感测功能,可检测的距离范围是 2cm-4m ,而且测距精度可达高到 3mm。模块含三个部分,分别是超声波发射探头,超声波接收探头与控制电路。基本工作原理:(1)采用 I/O 口 TRIG 触发测距,最少给 10 的高电平;(2)模块自动发送 8 个 40KHZ 的方波,并且自动检测是否有信号返回;(3)如果检测到有信号返回,则通过 I/O 口 ECHO 输出一个高电平,而高电平的持续时间就是超声波从发射到返回的时间。超声波模块实物如图3.6。图3.6 超声波模块实物图 其电气参数如下: (1)工作电压:DC 5V; (2)工作电流:15mA; (3)工作频率:40KHZ; (4)最远探测距离:4m; (5)最近探测距离:2cm; (6)探测角度:15; (7)输入触发信号:10TTL脉冲; (8)输出回响信号:输出TTL电平; (9)规格尺寸:45*20*15mm。3.5主控制模块图3.7为单片机主控电路图。 图3.7 单片机主控电路单片机是STC89C52,采用按键复位,接到单片机的第九引脚,即RST复位端。晶振电路接到单片机的XTAL2和XTAL1两个引脚上。当复位的时候,P0是开漏输出,如果作为一个总线扩展,没有上拉电阻。但是如果是当作 I/O 口来用,就需要上拉电阻。而上拉电阻一般都是一端接电源,一端接芯片的管脚。主要目的就是在电路驱动器关闭的时候给线路一个固定的电平,同时起到一个限流的作用。在本次设计中,P0口用于接1602LCD显示屏,所以这个时候P0是I/O口,需要加一个上拉电阻,在本设计中用到的上拉电阻的阻值是10。3.6 时钟电路的设计 时钟信号通常由两种方式产生,一是内部时钟方式,二是外部时钟方式。若是采用内部时钟方式,只要在单片机的XTAL1与XTAL2引脚外接晶振即可。而外部时钟方式则是把外部已有的时钟信号引入到单片机内,这种方式多用于多片单片机同时工作,并要求各单片机同步运行的场合。XTAL1与XTAL2分别是反向放大器的输入以及输出。可以通过采用陶瓷振荡或者石英晶体振荡的方式来把反相放大器配置为片内振荡器。如果采用外部时钟源来驱动器件,那么就不接XTAL2引脚。实际应用中通常采用外接晶振的内部时钟方式,晶振频率高一些可以提高指令的执行速度,但相应的功耗和噪声也会增加,在满足系统功能的前提下,应选择低一些的晶振频率。本系统选择产生时钟信号的方式为外接晶振的内部时钟方式。因为一个机器周期含有6个状态周期,而每个状态周期为2个振荡周期,所以一个机器周期共有12个振荡周期,假如外接石英晶体振荡器的振荡频率为12MHZ,一个振荡周期为,那么一个机器周期就为1。如图3.8所示为时钟电路。电容器和的作用是稳定频率和快速起振,电容值在530之间,晶振Y1的振荡频率要小于或者等于12MHZ,本设计中选用的电容的值为20,晶振频率为12MHZ。图3.8 时钟电路图3.7 复位电路的设计复位是使单片机或系统中的其他部件处于某种确定的初始状态,单片机的工作就是从复位开始的。当单片机的RST引脚加高电平时,单片机内部就执行复位操作。当加的是低电平时,单片机开始执行程序。复位方法一般有两种,一种是上电式复位,一种是上电与按键均有效的复位。对于上电式复位,要求是接通电源后,单片机自动实现复位操作。在上电的瞬间RST引脚获得高电平,随着电容的充电,RST引脚的高电平将逐渐下降。RST引脚的高电平只要能保持足够的时间,单片机芯片就会循环不断地进行复位。按键与上电均有效的复位原理和上电式一样,另外在单片机运行期间,还可以利用按键完成复位操作。复位后的P0口到P3口均置于高电平,这时程序计数器和特殊功能寄存器将全部清零。本设计采用的复位方式是按键和上电均有效的复位,因为设计中晶振频率12MHZ,所以取电容的值为10,而的值为10。 如图3.9所示为复位电路图。图3.9 复位电路图3.8 蜂鸣器报警电路的设计蜂鸣器、晶体管和一个电阻连接到P13引脚上,从而构成一个蜂鸣器报警电路。之所以选用了晶体三极管,是因为从单片机送过来的电压很低,通过电路的电流也很低。要想驱动蜂鸣器报警,单靠这种极低的电流是无法做到的,所以需要对电流进行放大。而晶体管是放大电路的核心元件,它能够控制能量的转换,将输入的任何微小变化都不失真地放大输出。当电流被放大后,输出电路中的电压也被放大,这样就能驱动蜂鸣器报警了。使晶体管工作在放大状态的外部条件是发射极正偏且集电极反偏。本设计中晶体管的基极连到单片机的第13号管脚。单片机从13号管脚往三极管发送一个低电压,经过晶体三极管的放大过后做到蜂鸣器响声报警。设计中电阻大小选择2,这样一来,就能保证三极管基极的电压足够小而使得三极管能够导通并且令蜂鸣器开始工作。如图3.10所示为蜂鸣器报警电路。图3.10 蜂鸣报警电路图3.9 显示模块 显示模块采用LCD1602。关于液晶显示器的驱动方式一般有两种,是静态驱动和时分割驱动。由于直流电压驱动LCD会使得液晶体产生电解和电极老化,从而大大降低LCD的使用寿命,所以现在用的驱动方式多属于交流电压驱动。液晶显示器除了段型液晶显示器外,还有点阵型液晶显示器,本设计中的用到的LCD1602就是点阵型液晶显示器,可以显示汉字、图形、曲线等。 在本设计中,P0口是作为连接外部电路的I/O口,所以LCD1602从第7管脚到第14管脚依次接到单片机的P0口的P0.0到P0.7口。第4、5、6号管脚是显示屏的控制端,应该分别接到单片机的第15、16、17口,作为显示器的控制引脚,对显示屏进行控制。其中,第3号管脚为对比度调整端,应该要接一个滑动变阻器,目的是可以调节阻值的量,以方便对显示器的对比度进行调节。或者选择接地,接地时的对比度最大,但是在本设计中直接选用了一个大小为2的电阻,以让显示器的对比度固定,在检测的过程中就不用再对对比度进行调节。图3.11为LCD1602显示电路图。图3.11 LCD1602显示电路图 3.10 系统总电路图 电路总设计如图3.10。根据分析知要用到器件有: 蜂鸣器、红色指示灯、STC89C52单片机和HC-SR04超声波传感器以及1602LCD液晶显示器。1602LCD中的DB0口到DB7口依次接到单片机的P0口,显示屏的第4、5、6号管脚依次接到单片机的第15、16、17号管脚作为显示屏的控制引脚,显示屏的第3号管脚接一个滑动变阻器以通过改变变阻器的阻值来调节显示屏的对比度。超声波传感器的2、3号引脚接到单片机的第12、13管脚以对超声波进行发射和接收。采用内部时钟方式,晶振电路接到XTAL2和XTAL1两个引脚。复位电路接到单片机的RST引脚,蜂鸣器电路和红色指示灯电路分别接到单片机的第4引脚和第1引脚。所有子模块的电源端都接到外接电源电路上,并且由开关控制。外接电源电路开关闭合后,电路上的指示灯发光,表明整个电路处于通电模式。图3.12为硬件电路总设计图。 图3.12 硬件电路总设计图4.软件设计4.1系统主流程图 YLCD显示“-.-”d4m?YN3md4m?Y1md3m?NN蜂鸣器响红色指示灯亮LCD显示距离值N显示完毕?YY再次检测?开始N检测距离LCD初始化结束 图4.1系统流程图 系统对距离进行检测,如果检测到的距离值大于4m,则LCD1602液晶显示屏显示字符 -。-,证明障碍物的距离超出了测量的范围;如果测量的值大于3m而小于4m,则显示屏显示测量的数值;如果测量的值大于1m而小于3m,则显示屏显示测量的距离值,同时系统令红色指示灯发出红色灯光报警;如果测量的距离值小于1m,则在显示距离值的同时,系统的蜂鸣器和红色指示灯同时工作,进入声光报警。系统循环不断地对距离进行检测与报警。4.2 距离测算部分 在倒车雷达的软件设计中都是编辑程序,其中有一块子程序专门用来计算车尾与障碍物之间的间隔大小,而这一块子程序就是口的中断子程序。一旦有了回波信号,超声波集成模块就会对这信号进行接收。接受完毕过后电路会产生一个低电平,随之将产生的低电平送到单片机,之后系统会转入中断子程序对接收的回波信号进行处理。而当系统进入中断处理后,定时器和外部中断将立即停止工作,在此同时还会读取出时间值,然后把回波接收标志位清零。即成功接收到回波信号。开始关闭中断将检测到的值送到处理单元处理单元调用程序进行判断判断的值送到显示器显示等待下一次中断返回开始图4.2 测距流程图4.3 报警模块设计主程序会检测并计算出与障碍物之间的距离,计算之后对距离进行判断。判断检测到的值是不是小于设定的值,如果小于设定的值,系统就进入到报警状态开始报警,报警完了过后对距离再一次进行检测。相反的,如果判断出来检测到的值大于设定的值,此时系统就认为这个距离没有危险,进入下一次的距离检测,之后再进行判断,如此循环不断执行。开始系统初始化检测到的值是否小于设定的值?NY开始报警返回图4.3 报警流程图4.4 计算及显示模块设计本设计中,采用了LCD1602来显示与障碍物之间的距离,其显示的过程是在外部中断0发生后才进行的。 一旦主程序给超声波发生器发送信号过后,中断和定时器0就会处于工作状态,并开始计时。一旦有了回波信号,超声波集成模块就会对这信号进行接收。接受完毕过后电路会产生一个低电平,随之将产生的低电平送到单片机。在单片机检测到该信号过后,定时器停止计时工作,定时器计数的次数同时也会被提取出来。通过计算就可以得到与障碍物之间的距离值了,该值的单位是cm形式。开始初始化选通LCD显示器读出要显示的值把值送到显示器本次显示是否完毕?NY返回图4.4 显示流程图5硬件性能测试5.1硬件整体外观图 图5.1中的A、B、C三图是本设计的元件焊接完毕后的实物图。硬件中最重要的几个模块分别是:1602LCD显示屏(如A),HC-SR04超声波测距模块(如B),STC89C52单片机(如C)。在实物中,最靠近显示屏的红色灯是电源信号灯,如果实物通上了电,这个灯就会亮。这个灯右下角是电源接线的USB接口,左下角的绿色按键是电源开关按键,左边的黑色按键是复位键。电路板左下角的红色灯是报警用的灯。ABC图5.1 实物整体外观图5.2性能测试部分 本次系统实物的性能测试地点选择的是实验室,这次测试的是实物是否能够满足本次设计的所有要求。5.2.1开机界面 当接通电源后,要求屏幕上要会出现在程序中编辑好的字符CeJu-System和一个笑脸 _ ,满足要求,如图5.2。图5.2 开机界面图5.2.2大于4m时 系统要求大于4m时,屏幕上会显示出符号 -。- ,验证成功,系统满足要求。如图5.3所示。图5.3大于4m5.2.3 在3m到4m之间时,红色指示灯不工作 当距离大于3m而小于4m时,显示屏会显示检测得到的距离值,但是此时红色指示灯不会发出光亮报警。验证成功,系统满足要求。图5.4 在3m到4m之间5.2.4 大于1m而小于3m时,红色指示灯亮,蜂鸣器不工作 系统要求实物满足:当检测的距离大于1m而小于3m的时候,一方面要通过显示屏将检测得到的距离显示出来,另一方面还要求红色指示灯发出灯光报警,但是蜂鸣器此时不动作。经过验证,系统满足这一要求。如图5.5所示。图5.5在1m到3m之间5.2.5 小于1m时,蜂鸣器和指示灯同时工作 系统要求检测得到的距离的值一旦小于1m,此时实物就要有三个方面的动作。一是显示屏显示测得的距离值,二是红色指示灯发出灯光报警,三是蜂鸣器会发出声音报警,整体上做到对距离的显示以及声光报警。经过测试,系统满足这一要求,如图5.6所示。图5.6小于1m 在本次硬件设计的验证过程中,发现系统还是有点缺陷,比如会有误差之类的,检测到的值跟实际的值有点出入。在量好了1m的距离上,用实物检测距离的时候居然小于1m,系统发出了报警,再一次检测的时候居然又大于了1m。出现这种误差的原因可能是本身当时事先量好的1m的值不对,或者是两次测量时所站的位置出现了变动,还有可能是传感器本身精度就不高或者周围环境温度等导致。但是在整体上系统还是满足本次设计的所有要求。6.设计的总结以及展望本设计的系统是一个超声波测距仪,设计中还包括有硬件和软件这两大部分。这个是满足精度可以达到0.3厘米级的设计系统,盲点也是只有2厘米级范围,能够远程测量和方便的控制,利用超声波集成调试模块也是很方便地进行调试,2cm4m是系统能够进行检测的范围,经过对设计硬件的相关测试后,确定可以满足种种要求。本设计做的虽然是超声波测距,但是针对的对象主要还是汽车的倒车雷达系统,但其精度水准还有待提高。而且,有一些对测距会产生负面影响的因素还没有考虑进去,比如温度。如果将温度补偿模块加入到设计中,再加入语音的报距和报警的话,系统的完善度会较之前有大大提升。另外就是如果是移动中进行测距的话,稳定性就不高,并且如果移动的速度太快也会导致误差增大。即便如此,系统的发展空间还是很大。本次系统用到的传感器只有一个,所以相对简单。又因为是基于倒车系统而设计的。所以考虑到更高的实用性和经济性的话,可以再增加传感器的数量,然后把程序部分更改过后,可以做到多个方位的距离探测与不同距离的不同显示。比如后方、左后方和右后方等人眼不方便观测的方位。在显示数值的基础上可以对各个数值进行对比,判断出是哪个方位上的距离更小,然后结合语音报警功能以对方位和距离进行报警,这样可以大大提高汽车行驶的安全性。答 谢能够如此顺利的完成这个设计,首先要感谢王涛老师的耐心指导与严格要求。感谢王涛老师在繁忙的工作中仍然抽出时间来给我提出了很多解决方法,更对论文中一些不足进行斧正。还要感谢我所有的授课老师,他们不辞辛劳给我们学生授课,不计得失地为我们传授知识,我才有完成这次设计的知识基础。同时,也要感谢我的所有在这次设计中帮助过我的各位同学,他们不厌其烦地帮助我攻克设计中遇到的难关。再次感谢!参考文献 1 宋文绪. 传感器与检测技术M. 高等教育出版社.2 余锡存. 单片机原理及接口技术M. 西安电子科技大学出版社.3 李全利. 单片机原理及接口技术M. 高等教育出版社.4 薛均义,张彦斌. MCS-51系列单片微型计算机及其应用M. 西安交通大学出版社.5 徐爱钧, 彭秀华. 单片机高级语言C51应用程序设计M. 北京航空航天大学出版社.6 康华光. 电子技术基础(模拟部分)M. 高等教育出版社.7 贾石峰. 传感器原理与传感器技术M. 机械工业出版社.附 录附录A:程序:#include /器件配置文件#include #include sbit RX = P32;sbit TX = P33;sbit RS=P35;sbit RW=P36;sbit EN=P37;sbit beep = P13;sbit RedLed = P10;#define LCM_RW RW /定义LCD引脚#define LCM_RS RS#define LCM_E EN#define LCM_Data P0#define Busy 0x80 /用于检测LCM状态字中的Busy标识void LCMInit(void);void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData);void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);void Delay5Ms(void);void Delay400Ms(void);void Decode(unsigned char ScanCode);void WriteDataLCM(unsigned char WDLCM);void WriteCommandLCM(unsigned char WCLCM,BuysC);unsigned char ReadDataLCM(void);unsigned char ReadStatusLCM(void);unsigned char code mcustudio = CeJu-System ;unsigned char code email = _ ;unsigned char code Cls = ;unsigned char code ASCII15 = 0,1,2,3,4,5,6,7,8,9,.,-,M;static unsigned char DisNum = 0; /显示用指针 unsigned int time=0; unsigned long S=0; bit flag =0; unsigned char disbuff4 = 0,0,0,0,;bit bSetFlag = 0,bTime_800ms = 0,bTime_600ms,bClrFlag;unsigned int Set_d = 144; /距离unsigned char a_a = 0;/写数据void WriteDataLCM(unsigned char WDLCM) ReadStatusLCM(); /检测忙LCM_Data = WDLCM;LCM_RS = 1;LCM_RW = 0;LCM_E = 0; /若晶振速度太高可以在这后加小的延时LCM_E = 0; /延时LCM_E = 1;/写指令void WriteCommandLCM(unsigned char WCLCM,BuysC) /BuysC为0时忽略忙检测if (BuysC) ReadStatusLCM(); /根据需要检测忙LCM_Data = WCLCM;LCM_RS = 0;LCM_RW = 0;LCM_E = 0;LCM_E = 0;LCM_E = 1;/读数据unsigned char ReadDataLCM(void)LCM_RS = 1; LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;return(LCM_Data);/读状态unsigned char ReadStatusLCM(void)LCM_Data = 0xFF; LCM_RS = 0;LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;while (LCM_Data & Busy); /检测忙信号return(LCM_Data);void LCMInit(void) /LCM初始化LCM_Data = 0;WriteCommandLCM(0x38,0); /三次显示模式设置,不检测忙信号Delay5Ms(); WriteCommandLCM(0x38,0);Delay5Ms(); WriteCommandLCM(0x38,0);Delay5Ms(); WriteCommandLCM(0x38,1); /显示模式设置,开始要求每次检测忙信号WriteCommandLCM(0x08,1); /关闭显示WriteCommandLCM(0x01,1); /显示清屏WriteC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 低压光伏并网电站调试技术方案
- 房建工程施工质量管理手册
- 简谐运动新课讲解
- 高考语文经典诗文阅读理解专项训练
- 商务谈判技巧与实操方案指导
- 小学语文说课稿撰写技巧示范
- 双星问题课件
- 威士忌饮法培训
- 居民死亡及安葬手续办理流程
- 养老保险销售技巧与沟通话术
- 【基于Creo的NGW型行星齿轮减速器设计9000字】
- DB64∕T 2023-2024 不动产登记操作指南
- 云南省云南师大附中2026届高考适应性月考卷地理及答案(一)
- oa数据安全管理制度
- 旋风除尘器设计选型
- 子宫纵膈微创治疗进展-洞察及研究
- 中医全科课件下载
- 休闲会所规划方案(3篇)
- 氧化还原反应学案高一上学期化学人教版
- 拒绝烟草诱惑向“吸烟”说不!课件-2024-2025学年高二下学期世界无烟日主题班会
- 月嫂证考试试题及答案
评论
0/150
提交评论