毕业设计-超声波倒车雷达论文_第1页
毕业设计-超声波倒车雷达论文_第2页
毕业设计-超声波倒车雷达论文_第3页
毕业设计-超声波倒车雷达论文_第4页
毕业设计-超声波倒车雷达论文_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

.PAGE.超声波倒车雷达--毕业设计*****职业技术学院HunanIndustryPolytechnic毕业实践类别题目超声波倒车雷达系名称专业班级学生姓名学号指导老师完成日期年月日毕业实践课题及任务课题简介随着汽车的不断普及,保障行车安全的各个细节越来越受到车主重视。倒车雷达,又称泊车辅助系统,由超声波传感器、控制器及显示器等部分构成。驾驶员在倒车时,启动倒车雷达,装于车尾的探头发送超声波,遇到障碍物,产生回波信号。传感器在接收到回波信号后经控制器进行数据处理,判断出障碍物的位置,由显示器显示距离并发出警示信号。课题任务要求语音提示探测的0.35~1.5米范围内的障碍物;语音提示可指明哪一个方向〔或区域有障碍物在探测范围内;用三个LED来表示三个传感器探测范围内是否有障碍物,有时,LED以一定频率闪烁,闪烁的频率以距离定,距离越近,频率越高。要求:1、设计硬件框图及电路图;2、设计软件流程及编写程序;3、对软硬件进行调试;4、按"毕业实践规范",撰写毕业实践报告。进程安排暑假:根据课题要求,查阅相关资料、参考书,进一步加深对毕业实践课题的理解和认识;完成开题报告,并写出毕业实践的摘要及目录;第17周:根据课题要求,设计硬件电路,并写出工作原理;设计软件流程及编写程序,并对程序进行注释;第18周:进行硬件及软件安装、调试及软硬件联调;第19周:课题资料的整理、修改、完善、装订,并参加答辩。参考资料1《单片机应用系统设计》何立民北京航空航天大学出版社2《IBM-PC汇编语言程序设计》沈美明清华大学出版社3《流行单片机使用子程序机应用实例》杨振江XX电子科技大学出版社4《单片机原理及接口技术》梅丽凤清华大学出版社5《C程序设计》谭浩强清华大学出版社6《凌阳16位单片机应用基础》罗亚非北京航空航天大学出版社********学院毕业实践考核表系专业学生姓名班级学号课题名称课题完成情况及自我评价指导教师评价评语评分签名:年月日评阅教师评价评语评分签名:年月日答辩小组评价评语评分组长签名:年月日毕业实践评审组审核经综合考核该学生毕业实践得分分,评定为组长签名:年月日摘要倒车雷达又称泊车辅助系统,是汽车泊车安全辅助装置,能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高了安全性。一般由超声波传感器〔俗称探头、控制器和显示器等部分组成,现在市场上的倒车雷达大多采用超声波测距原理,驾驶者在倒车时,启动倒车雷达,在控制器的控制下,由装置于车尾保险杠上的探头发送超声波,遇到障碍物,产生回波信号,传感器接收到回波信号后经控制器进行数据处理,判断出障碍物的位置,由显示器显示距离并发出警示信号,得到及时警示,从而使驾驶者倒车时做到心中有数,使倒车变得更轻松。倒车雷达的提示方式可分为液晶、语言和声音三种;接收方式有无线传输和有线传输等。本方案采用语音提示的方式,本文介绍了以SPCE061A单片机为核心的一种低成本、高精度、微型化,并有数字显示和声光报警功能的倒车雷达系统。利用SPCE061A单片机所具备的单芯片语音功能,外接三个超声波测距模组,组成一个示例的倒车雷达系统,语音提示报警〔0.35m~1.5m范围内的障碍物。关键词:倒车雷达超声波单片机SPCE061A..AbstractCarparkingsensorisforthecurrentroads,streets,parkinglots,garagesandsomoreandmorecrowded,plusthereisthevisualblindspot,unabletoseetherearobstacle,thedrivercaneasilyscratchthecarwhenreversing,oreventhecircumstancesoftheaccidentaimedatreversingtheemergenceofaprotectionvehiclecollisionavoidancesystem.Thesystemisabletolowerthespeedofvehiclesreversingtheprocess,identifytheobstaclesoutofthebusback,andbeabletomeasurethedistancebetweenthevehicleandtheobstacleandcomeoutthroughthevoicebroadcasttoreminddriverstobrake.Thisdesignfromtheperspectiveofexperimentalresearchandanalysis.Annon-contactultrasonicdistancetestingsystembasedonsurplusSPCE061Amicroprocessorispresented,andthesoftwareandhardwareareintroduced.Thetimecountingandboththetransmitingandreceivingoftheultrasonicwavearecontrolledbythemicroprocessor.Themeasureddistancecanbecalculatedanddisplayedviatheechotimebytheassembler.Thefeaturesofthesimplehardware,stableoperationanddistinctprogrammeflowareincarnatedintheproposedsystemandtheresultscanalsobepronouncedinreal-time.Systemdesignusingthemodulardesign,simplifyingthedebuggingeffort,welldoneeventuallyreversingradar,ultrasonicdistancemeasurementsystemhardwaredesign,softwaredesignandsystemdebugging.Keyword:reverseradarultrasonicSPCE061A..目录引言1第一章实现功能2第二章核心器件简介32.1SPCE061芯片特性3简介3芯片特性42.2SPCE061A精简开发板42.3超声波测距模组52.4转接板9第三章系统总体方案设计113.1超声波的定义113.2超声波的物理特性11超声波的衰减11超声波的波形12超声波的传播速度133.3超声波传感器133.4超声波测距原理14第四章系统硬件设计164.1SPCE061A1616电源模块16放音模块174.2超声波测距模组电路原理17超声波谐振频率发生电路,调理电路17超声波回波接受处理电路18超声波测距模组电源接口18超声波测距模式选择跳线19超声波测距模组接口194.3转接板电路204.4显示电路21第五章系统软件设计225.1超声波测距原理225.2软件结构235.3各模块程序说明23超声波测距程序23语音播放程序27显示刷新程序28主程序29第六章连接与操作说明31参考文献34致谢35附录36电路原理图36程序39..引言倒车雷达又称泊车辅助系统,是汽车泊车安全辅助装置,能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高了安全性。一般由超声波传感器〔俗称探头、控制器和显示器等部分组成,现在市场上的倒车雷达大多采用超声波测距原理,驾驶者在倒车时,启动倒车雷达,在控制器的控制下,由装置于车尾保险杠上的探头发送超声波,遇到障碍物,产生回波信号,传感器接收到回波信号后经控制器进行数据处理,判断出障碍物的位置,由显示器显示距离并发出警示信号,得到及时警示,从而使驾驶者倒车时做到心中有数,使倒车变得更轻松。倒车雷达的提示方式可分为液晶、语言和声音三种;接收方式有无线传输和有线传输等。本方案采用语音提示的方式,利用SPCE061A单片机所具备的单芯片语音功能,外接三个超声波测距模组,组成一个示例的倒车雷达系统,语音提示报警〔0.35m~1.5m范围内的障碍物。第一章实现功能利用SPCE061A单片机、三个超声波测距模组实现超声波倒车雷达,具有下述功能:1.可以语音提示模组探测范围内〔0.35m~1.5m的障碍物;2.语音提示可指明哪一个方向〔或区域有障碍物在探测范围内;3.利用三个LED发光二极管表示三个传感器探测范围内是否有障碍物,当在探测范围内有障碍物时,发光二极管以一定频率闪烁,闪烁的频率以距离定,距离越近频率越高。本方案要求所有的语音资源、程序代码都存放在一颗SPCE061A片内Flash当中;当语音播报时,如检测到左后方有障碍物,则用语音播放:"左后方",如右后方有障碍物,则语音播方"右后方";当检查到中间的传感器探测范围内有障碍特时,语音播放:"后方"。而连续播放提示的间隔,要大于或等于3秒,以免过于频繁的播报语音。第二章核心器件简介本系统采用SPCE061A单片机作为主控制器,传感器模块采用"超声波测距模组"。另外,为了使这三个传感器模块能够组合在一起,并且可靠的工作,还需要一个转接板,可以利用4052模拟开关器件制作;需要外接三个发光二极管。下面分别介绍这些模块的特性。2.1SPCE061芯片特性2.1.1SPCE061简介SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,具有易学易用、效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,提供了语音录放和语音识别的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件:SPCE061A片内还集成了一个ICE〔在线仿真电路接口,使得对该芯片的编程、仿真都变得非常方便,而ICE接口不占用芯片上的硬件资源,结合凌阳科技提供的集成开发环境〔unSPIDE,用户可以利用它对芯片进行真实的仿真;而程序的下载〔烧写也是通过该接口实现。下图为SPCE061A单片机的内部结构框图图2.1SPCE061内部结构图2.1.2芯片特性..16位μ’nSP微处理器;..工作电压:内核工作电压VDD为3.0~3.6V<CPU>,IO口工作电压VDDH为VDD~5.5V<I/O>;..CPU时钟:0.32MHz~49.152MHz;..内置2K字SRAM;..内置32K闪存ROM;..可编程音频处理;..晶体振荡器;..系统处于备用状态下<时钟处于停止状态>,耗电小于2μA@3.6V;..2个16位可编程定时器/计数器<可自动预置初始计数值>;..2个10位DAC<数-模转换>输出通道;..32位通用可编程输入/输出端口;..14个中断源可来自定时器A/B,时基,2个外部时钟源输入,键唤醒;..具备触键唤醒的功能;..使用凌阳音频编码SACM_S240方式<2.4K位/秒>,能容纳210秒的语音数据;..锁相环PLL振荡器提供系统时钟信号;..32768Hz实时时钟;..7通道10位电压模-数转换器<ADC>和单通道声音模-数转换器;..声音模-数转换器输入通道内置麦克风放大器和自动增益控制<AGC>功能;..具备串行设备接口;..低电压复位<LVR>功和低电压监测<LVD>功能;..内置在线仿真<ICE,In-CircuitEmulator>接口。2.2SPCE061A精简开发板SPCE061A精简开发板〔简称61板,是以凌阳16位单片机SPCE061A为核心的精简开发-仿真-实验板,大小相当于一张扑克牌,是"凌阳科技大学计划"专为大学生、电子爱好者等进行电子实习、课程设计、毕业设计、电子制作及电子竞赛所设计的,也可作为单片机项目初期研发使用。61板除了具备单片机最小系统电路外,还包括有电源电路、音频电路〔含MIC输入部分和DAC音频输出部分、复位电路等,采用电池供电,方便学生随身携带!!!使学生在掌握软件的同时,熟悉单片机硬件的设计制作,锻炼学生的动手能力,也为单片机学习者和开发者创造了一个良好的学习条件和开发新产品的机会!61板上有调试器接口〔Probe接口以及下载线〔EZ_Probe接口,分别可接凌阳科技的在线调试器、简易下载线,配合unSPIDE,可方便地在板上实现程序的下载、在线仿真调试。61板上的主要功能模块如下:..SPCE061A单片机最小系统外围电路模块;..电源输入模块;..音频电路〔包含MIC输入、DAC音频功放输出模块;..按键模块;..I/O端口接口模块;..调试、下载接口模块;下图为61板的实物图图2.261板实物图2.3超声波测距模组超声波测距模组是为方便学生进行单片机接口方面的学习专门设计的模块,超声波测距模组可以方便地和61板连接,可应用在小距离测距、机器人检测、障碍物检测等方面,可用于验证方车辆倒车雷达以及家居安防系统等应用方案验证。下图2.3为超声波测距模组的结构框图:图2.3超声波测距模组结构图主要功能:三种测距模式选择跳线J1〔短距、中距、可调距:1.短距:10cm~80cm左右〔根据被测物表面材料决定;2.中距:80cm~400cm左右〔根据被测物表面材料决定;3.可调:范围由可调节参数确定;使用方法:一般应用时,只需要用10PIN排线把J8与SPCE061A的IOB低八位接口接起来,同时设置好J7、J1、J2跳线就完成硬件的连接了。不同测距模式的选择只需改变测距模式跳线J1的连接方法即可。提供给模组的电源必须在4.5V以上,而且尽量保持电源电压的稳定。模组工作的性能与被测物表面材料有很大关系,如毛料、布料对超声波的反射率很小,会严重影响测量结果。电源输入:模组提供了两种电源输入方式,一为用61板通过10PIN排线为模组供电〔61板上J5选择5V要求最好不要低于4.5V,此时要把J9跳到5V的一端;另一为直接为模组供电,通过模组上的电源输入口J7引入,此时需要把J9跳线跳到IN的一端。外接电源仅是为了给模组提高超声波发射功率、提高后级运放性能用,最高不要超过12V。模组外接电源接口〔J7以及供电方式选择跳线〔J9如图2.4所示:图2.4模组外接电源接口及供电方式选择跳线测距模式选择:声波测距时,超存在余波干扰问题,所以针对不同测距范围会有不同的处理方法。模组提供了测距模式选择跳线〔J1,可以选择短距测量模式、中距测量模式,或距离可调模式。而针对前两种测量模式,提供了不同参数的范例程序,跳线选择不同的模式时,要选用相对应的程序进行测量;跳线选择LOW时为近距测量模式,选择HIG时为中距测量例程,选择SET时为距离可调模式;凌阳科技大学计划网站上提供了短距测量模式和中距测量模式的完整源程序。如果用户对超声波测量原理有较深的了解,可以选用距离可调〔SET模式。模组测距模式〔测量距离范围选择跳线J1如图2.5所示:图2.5模组测距模式选择跳线使用方式:使用时,用户需把前面的电源输入跳线J7、模式选择跳线J1设置好后,还要把跳线J2短接起来,然后利用排线把J8与SPCE061A的IOB口低八位端口相接,即可使用了。使用时J2跳线和J8跳线的连接方法如下图2.6所示:图2.6J2跳线和J8接口的位置示意图2.4转接板因为使用多组超声波模组,本方案需要使用一块CD4052模拟开关制作的转接板。本方案设计,会涉及到多路传感器选通控制,所以为了可靠地实现硬件的连接,需要制作一个利用模拟开关设计的转接板。超声波测距模组在使用时,只需要两个端口就可完成测距,一个控制超声波的发射,一个是检测超声波信号的接收信号;而在超声波测距模组中,这两个信号都为数字信号,对模拟开关的要求并不严格,所以选用CD4052作为模拟开关器件。CD4052相当于一个双刀四掷开关,开关接通哪一通道,由输入的2位地址码A0、A1来决定。其真值表见下表。"/E"是禁止端,当"/E"=1时,各通道均不接通。此外,CD4051还设有另一个电源端VEE,以作为电平位移时使用,从而使得通常在单组电源供电条件下工作的CMOS电路所提供的数字信号能直接控制这种多路开关,并使这种多路开关可传输峰-峰值达15V的交流信号。例如,若模拟开关的供电电源VDD=+5V,VSS=0V,当VEE=-5V时,只要对此模拟开关施加0~5V的数字控制信号,就可控制幅度范围为-5V~+5V的模拟信号。CD4052的真值表INPUTSCHANNELONA1A0LLLLHLLHHXLHLHXY0A-ZA:Y0B-ZBY1A-ZA:Y1B-ZBY2A-ZA:Y2B-ZBY3A-ZA:Y3B-ZBNone图2.7CD4052的内部结构图图2.8CD4052的引脚图第三章系统总体方案设计3.1超声波的定义波是由某一点开始的扰动所引起的,并按预定的方式传播或传输到其他点上。声波是一种弹性机械波。人们所感觉到的声音是机械波传到人耳引起耳膜振动的反应,能引起人们听觉机械波频率在20Hz一20KHz,超声波是频率大于20KHz的机械波。在超声波测距系统中,用脉冲激励超声波探头的压电晶片,使其产生机械振动,这种振动在与其接触的介质中传播,便形成了超声波。3.2超声波的物理特性<1>超声波的传播类似于光线,遵循几何光学的规律,具有反射、折射现象,也能聚焦,因此可以利用这些性质进行测量、定位、探伤和加工处理等。在传播中,超声波的速度与声波相同,通常情况下,声波在空气中的传播速度约为344m/s;<2>超声波的波长很短,与发射器、接收器的几何尺寸相当,由发射器发射出来的超声波不向四面八方发散,而成为方向性很强的波束,波长愈短方向性愈强,因此超声用于探伤、水下探测,有很高的分辨能力,能分辨出非常微小的缺陷或物体;<3>能够产生窄的脉冲,为了提高探测精度和分辨率。要求探测信号的脉冲极窄,但是一般脉冲宽度是波长的几倍<如要产生更窄的脉冲在技术上是有困难的>,超声波波长短,因此可以作为窄脉冲的信号发生器;<4>功率大,超声波能够产生并传递强大的能量。声波作用于物体时,物体的分子也要随着运动,其振动频率和作用的声波频率一样,频率越高,分子运动速度越快,物体获得的能量正比于分子运动速度的平方。超声频率高,故可以给出大的功率。3.2.1超声波的衰减从理论上讲,超声波衰减主要有三个方面:<l>由声速扩展引起的衰减在声波的传播过程中,随着传播距离的增大,非平面声波的声速不断扩展增大,因此单位面积上的声压随距离的增大而减弱,这种衰减称为扩散衰减。<2>由散射引起的衰减由于实际材料不可能是绝对均匀的,例如材料中外来杂质金属中的第二相析出、晶粒的任意取向等均会导致整个材料声特性阻抗不均,从而引起声的散射。被散射的超声波在介质中沿着复杂的路径传播下去,最终变成热能,这种衰减称为散射衰减。<3>由介质的吸收引起的衰减超声波在介质中传播时,内于介质的粘滞性而造成质点之间的内摩擦,从而使一部分声能转变成热能。同时,由于介质的热传导,介质的稠密和稀疏部分之间进行热交换,从而导致声能的损耗,以及由于分子驰豫造成的吸收,这些都是介质的吸收现象,这种衰减称为吸收衰减。3.2.2超声波的波形由于声源在介质中施力的方向与波在介质中传播的方向可以相同也可以不同,这就可产生不同类型的声波,超声波的波形主要有以下几种。<l>纵波当介质中的质点振动方向和超声波传播方向相同时,此种超声波为纵波波型,以L表示。任何介质,当其体积发生交替变化时均产生纵波。由于纵波的产生和接收都较容易,所以纵波在超声波检测中得到了广泛应用。<2>横波当介质中质点振动方向和超声波的传播方向垂直时,此种超声波为横波波型,以T表示。因为液体和气体中缺乏横向运动的弹性力,所以横波不能存在,只有纵波才能存在,但在固体中纵波和横波都能存在。<3>表面波瑞利于1887年首先研究和证实了表面波的存在,因此称为瑞利波,用字母R表示。表面波是沿着固体表面传播的具有纵波和横波双重性的波。其振动质点的轨迹为一椭圆,质点位移的长轴垂直于传播方向,质点位移的短轴平行于传播方向,随着深度增加很快衰减,离表面一个波长以上的地方,质点振动的振幅很微弱。表面波的传播速度,只与介质的弹性性质有关,与频率无关。<4>板波板波亦称拉姆波,板波只产生在大约一个波长的薄板内,在板的两表面和中部都有质点的振动,声场遍及整个板的厚度。薄板两表面的质点振动是纵波和横波成分之和,运动轨迹为椭圆形,长轴于短轴的比例取决于材料的性质。板波可以分为对称型和非对称型两种。3.2.3超声波的传播速度声波的传输需要一种媒质,声波在媒质中的传播速度,称为声速。由声波产生的物理过程可知,声速与质点速度是完全不同的,声波的传播只是扰动形式和能量的传递,并不把在各自平衡位置附近振动的媒质点传走。某种媒质中的声速主要取决于该媒质的密度和温度。由于空气没有剪切弹性,只有体积弹性,因而气体中声波的传播形式只能是纵波。也就是说,在声扰动下,气体媒质中的质点在各自平衡位置附近运动,形成稠密和稀疏依次交替的传递过程,而且质点运动的方向与声波传播的方向一致。声波在相当大的频率范围内不随频率发生变化,也就是说超声波的传播速度与可听声波的传播速度是相同的,超声波在媒质中的反射、折射、衍射、散射等传播规律与可听声波并无质的区别,与一般声波相比,超声波具有更好的定向性,并且可以穿透不透明物质。在空气中超声波传播速度主要与温度有关,在空气中的传播速度c为:C=331.4*式中,T为环境温度。3.3超声波传感器超声传感器,也即超声换能器,是超声波测距系统中的重要组长部分。顾名思义,换能器就是进行能量转换的器件,是将一种形式的能量转换成另一种形式的装置。通常所说的换能器一般都是指的电声换能器。用来发射声波的换能器叫发射换能器。换能器处在发射状态时,将电能转换成机械能,再转换成声能。用来接收声波的换能器叫接收器。换能器处在接收状态时,将声能转换成机械能,再转换成电能。一般情况下,换能器既能用来发射,也能用来接收。通常换能器都有一个电的储能元件和一个机械振动系统。按照实现机电转换的物理效应的不同,可将换能器分成:电动式、电磁式、磁致伸缩式、电容式、压电式和电磁致伸缩式等。目前使用较多的是电气类中的压电式超声换能器。在超声测距中,压电换能器发射超声波要求振子振动的振幅较大,所以采用弯曲振动模式较为理想。为了与空气的声阻抗相匹配,将压电陶瓷与金属粘合在一起。两个压电陶瓷圆片中间粘接金属薄片构成三迭片压电振子,金属片和压电陶瓷片双层结构组成双迭片弯曲振动换能器。双迭片弯曲振动换能器更易于密封,而且金属片本身就可以作为声辐射面,不需要另外的声窗口。其中,压电陶瓷作为激励部件,当加上电压时,压电陶瓷片产生伸张运动,可使复合圆板产生弯曲振动,得到较大的振幅。一旦层与层之间出现任何滑动,将会显著降低弯曲振子的性能,因此胶合层要非常薄、坚固和稳定。金属与陶瓷之间的胶合,用低温环氧树脂较为适宜,在环氧树脂固化的过程中要加以适当的压力。金属薄片还可以充当保护膜,起到保护压电陶瓷和电极,防止磨损和碰坏的作用。金属片和压电陶瓷片构成的弯曲振动换能器具有结构简单、尺寸小、重量轻,易于与水和空气匹配等很多优点。但是目前对圆形压电振子弯曲振动的研究较少,例如三迭片压电振子,即两个压电陶瓷圆片中间粘接金属薄片,常用作空气超声换能器和水声换能器,如声压梯度水听器、声发射传感器、超声测距换能器等。为了能够得到较高的有效机电耦合系数,使用中金属片的直径大于压电陶瓷片的直径,这样就构成了带有环衬的unimorph。超声测距传感器按其作用距离可以分为大、中、小三种量程。其中,小量程探测距离小于2m,工作频率在60-300kHz之间;中量程探测距离约为2-10m,工作频率在40-60kHz之间;大量程探测距离约为20-50m,工作频率处在16-30kHZ之间。3.4超声波测距原理超声波测距的方法有多种,如相位检测法、声波幅值检测法和渡越时间检测法等。<1>相位检测法,将发射器发送的超声波信号作为参考信号,在每次发送超声波的终止时刻,立即开始对接收器的输出进行采样,并计算采样值与参考信号之间的互相关函数。若互相关函数出现峰值,则说明采样值是换能器前方目标反射回来的信号,而相关函数峰值出现的时刻就是射程时间。由此可见,相关估计法<也称为匹配滤波>既利用了回波信号的幅值又利用了回波信号的形状。假如超声波信号经目标反射后所产生的回波信号的波形基本不发生畸变,而且叠加在回波信号上的噪声是高斯白噪声,那么用互相关函数法的时延估计精度将高于与其它时延估计法。这种算法虽然精度高,但算法较复杂,单片机运行起来速度慢,测距实时性不好。<2>声波幅值检测法,这种方法是根据超声波在空气中传播不断衰减的特性,检测回波信号的幅值,对延迟时间作出一个判断,但是声波幅值检测法易受反射波的影响,测距精度不高。<3>渡越时间检测法,渡越时间检测法的工作方式简单,直观,在硬件控制和软件设计上都非常容易实现。超声测距最常用的是渡越时间检测法。其原理为:超声传感器发射超声波,在空气中传播至被测物,经反射后由超声传感器接收反射波,并转化为电信号,测量出发射和接收信号之间的时间差t,即渡越时间。利用,=tv/2,即可算得传感器与反射点间的距离。测距原理如图所示,由图可知,测量距离d=,若s>=h时,则d≈s;如果设计中采用收发同体传感器或使发射、接收传感器非常接近时,h≈0,则d=vt/2。hhsd目标图3.1测距原理其中,d为超声波发射器到被测物体之间的距离;v为超声波在媒体中传播的速度;t为从发射超声波到接收到超声波之间的时间差。..第四章系统硬件设计4.1SPCE061A4.1.1SPCE061ASPCE061A最小系统包括SPCE061A芯片及其外围基本模块,外围基本模块有:晶振输入模块〔OSC、锁相环外围电路〔PLL、复位电路〔RESET、指示灯〔LED等,如下图所示。图4.1SPCEA061A最小系统本系统,有关SPCE061A单片机最小系统的各个模块都做在61板中,可以查阅61板的电路原理图。4.1.2电源模块SPCE061A的内核供电为3.3V,而I/O端口可接3.3V也可以接5V,所以在电源模块〔61板上中有一个端口电平选择跳线,如图中的J5,但是为了本系统可以可靠的工作,需要给61板外接5V的电源,并将61板的端口电平选择为5V,即J5用跳线帽将V5和VDDH短接。下图为61板上的电源模块图。图4.2电源模块由于本系统需要的端口高电平为5V,所以图4.2当中的J5跳线需要跳到1和2上。4.1.3放音模块语音提示。放音利用的是SPCE061A内部的DAC,电路如图4.3所示。图中的SPY0030是凌阳公司的产品。和LM386相比,SPY0030还是比较有优势的,比如LM386工作电压需在4V以上,而SPY0030仅需2.4V<两颗电池>即可工作;LM386输出功率100mW以下,SPY0030约700mW。其他特性请参考SPY0030的数据手册。图4.3放音模块电路图4.2超声波测距模组电路原理4.2.1超声波谐振频率发生电路,调理电路NE555和电容电阻组成的电路产生40KHz的方波,以使超声波传感器产生谐振;而后面的CD4049则对40KHz频率信号进行调理。PLUS_EN1是超声波信号发射的使能控制端口,当该端口接低电平时,模组将不能发射超声波信号,即40KHz的方波。图4.4超声波谐振频率发生电路、调理电路4.2.2超声波回波接受处理电路超声波接收处理部分电路前级采用NE5532构成10000倍放大器,对接收信号进行放大;后级采用LM311比较器对接收信号进行调整,比较电压为LM311的3管脚处,可由J1跳线选择不同的比较电压以选择不同的测距模式。在放大器与比较器之间用PNP三极管〔8550作为通路选择,本方案需要将此通路选择跳线短接上,即把J2短接,固定使三极管导通即可。图4.5超声波回波接受处理电路4.2.3超声波测距模组电源接口J7为超声波测距模组的外部电源接口,最高电压不要超过12V,J9为电源选择跳线,VCC_5即为由61板通过10PIN排线引入模组的电源;VCC即为模组的放大器、调理电路供电电源。当用户使用61板为其供电时,要把VCC与VCC_5V短接〔本方案的用法;而使用外部电源时要把VCC与VCC_IN短接。图4.6外部单独电源输入接口及选择跳线4.2.4超声波测距模式选择跳线模组提供了测距模式选择跳线J1,可以选择短距测量模式、中距测量模式,或距离可调模式。跳线选择LOW时为近距测量模式,选择HIG时为中距测量模式;选择SET时为距离可调模式。本方案采用可调方式,即选择SET的模式,并将调节模组上的电位器,将比较电压调至3.5~3.2V〔保证模组测距能在0.35~1.5M的范围都能正常工作即可。图4.7测距模式选择跳线4.2.5超声波测距模组接口本方案采用的三个超声波测距模组都是利用其J8接口,每个模组接出两个控制、检测端口,然后会通过CD4052模拟开关进行选通,所以在实际使用当中,是分时地对每一个模组进行操作。超声波测距模组的J8接口如所图4.8示;图中的VCC_5在本方案当中由61板供电,即5V。图4.8超声波测距模组接口4.3转接板电路前面已简单介绍了转接板的作用,这里介绍一下它的原理图,如图4.9所示。图中J1直接与61板的J6相接,即与61板的IOB口低八位接口相接,可知图中的VDD为61板供电,即5V;而A0和A1分别接SPCE061A的IOB0和IOB1,以控制CD4052的两个地址位,以控制通道的选通。IOB2接PLUS_B,作为回波信号的检测输入,不过经过CD4052的选通,接到哪一个模组,由IOB0和IOB1的00000000000000000000000000000000000000000000000000000000000000输出决定;同样COM_EN为超声波测距模组的信号发射使能控制,接到SPCE061A的IOB3。CD4052的另外一端,接出COM_EN1/2/3分别接三个模组的发射使能,另外还用三个10K的电阻下拉到地,以保证没有选通的模组不会发射出超声波信号。J2、J3、J4分别接三个超声波测距模组的J8接口。图4.9转接板电路原理4.4显示电路显示电路较为简单,直接使用三个I/O口控制三个发光二极管。如图4.10所示:图4.10显示电路第五章系统软件设计5.1超声波测距原理超声波脉冲法测距原理:声波在其传播介质中被定义为纵波。当声波受到尺寸大于其波长的目标物体阻挡时就会发生反射;反射波称为回声。假如声波在介质中传播的速度是已知的,而且声波从声源到达目标然后返回声源的时间可以测量得到,那么就可以计算出从声波到目标的距离。这就是本系统的测量原理。这里声波传播的介质为空气,采用不可见的超声波。假设室温下声波在空气中的传播速度是335.5m/s,测量得到的声波从声源到达目标然后返回声源的时间是t秒,距离d可以由下列公式计算:d=33550<cm/s>×t<s>因为声波经过的距离是声源与目标之间距离的两倍,声源与目标之间的距离应该是d/2。超声波测距模组信号:图5.1为超声波模组上三极管Q1的集电极处测量的波形图,此时J2跳线短接,使Q1始终导通;而传感器距目标面的距离为2米。图5.1超声波信号测量图图中的波形为示波器抓拍图,1通道为Q1集电极测得波形,即上方的波形;通道2为发射端测得波形。图中可见,接收回路中测得的超声波信号共有两个波束,第一个波束为余波信号,即超声波接收头在发射头发射信号〔一组40KHz的脉冲后,马上就接收到了超声波信号,并持续一段时间。另一个波束为有效信号,即经过被测物表面反射的回波信号。超声波测距时,需要测的是开始发射到接收到信号的时间差,在上图中就可看出,需要检测的有效信号为反射物反射的回波信号,故要尽量避免检测到余波信号,这也是超声波检测中存在最小测量盲区的主要原因。软件控制脉冲发射、检测回波信号:程序设计时需要采用脉冲测量法,由SPCE061A控制模组发生40KHz的脉冲信号,每次测量发射的脉冲数至少要12个完整的40KHz脉冲〔程序中为20个左右。同时发射信号前要打开计数器,进行计时;等计时到达一定值后再开启检测回波信号,以避免余波信号的干扰。采用外部中断对回波信号进行检测〔回波信号送到单片机的为一序列方波脉冲。接收到回波信号后,马上读取计数器中的数值,此数据即为需要测量的时间差数据。为避免测量数据的误差,程序中对测距数据的处理方法是:每进行一次测距,利用时基中断测量4次,即取得4组数据,经过处理后得到这一次测距值。5.2软件结构本方案的软件系统主要包含下列模块:超声波测距程序:负责超声波测距的控制、结果计算等,另外有部分代码在中断服务程序中,主要码在UserFunction.c以及IntDocument.c文件。语音播放程序:语音播放控制,主要代码在Speech.h,而语音中断服务程序在isr.asm文件中,但为了使语音播放程序在初始化时不影响用户的其它中断,在isr.asm中还有一个中断初始化程序。中断程序:主要指IntDocument.c文件,包括超声波测距的中断服务代码,以及用于显示刷新的IRQ4中断服务程序。系统程序:主要指system.c文件,包含系统端口初始化、测量结果处理、以及显示刷新程序。主程序:主控程序负责控制整个系统的工作流程。5.3各模块程序说明5.3.1超声波测距程序主程序流程图以及相关的程序流程图如图5.2所示图5.2主程序流程图测距控制程序Demo程序中,超声波测距的功能函数流程图见图5.3。用户需要先调用测距初始化函数InitMeasure<>,再调用该函数BeginMeasure<>即可进行一次测距操作,函数返回值为测量结果。每一次测距要进行四次测量,这四次的测量结果需要经过处理后才可得到最终的测距返回值,而四次测量的控制以及测量结果的处理都是在这个函数中完成的,具体的处理方法:每一次测距中的四次测量的间隔时间用16Hz的时基中断来控制;每一次测量,先发射20个40KHz脉冲〔参见16Hz中断,然后使能测量时间基准计数器,当计数到4ms时,打开EXT1外部中断,等待回波反射到接收头。四次测量全部完成后,再对测量的结果进行处理、换算,以及出错处理,用户可以根据不同的应用对数据处理部分的程序作适当的调整。其中等待4ms的原因:压电式的电声传感器存在余波干扰,而有部份声波会沿电路板直接传到接收头,经接收电路的放大后,系统就有可能把它误认为是反射回来的回波信号。超声波测距的功能函数流程图见图5.3。用户需要先调用测距初始化函InitMeasure<>,再调用该函数BeginMeasure<>即可进行一次测距操作,函数返回值为测量结果。每一次测距要进行四次测量,这四次的测量结果需要经过处理后才可得到最终的测距返回值,而四次测量的控制以及测量结果的处理都是在这个函数中完成的,具体的处理方法:每一次测距中的四次测量的间隔时间用16Hz的时基中断来控制;每一次测量,先发射20个40KHz脉冲〔参见16Hz中断,然后使能测量时间基准计数器〔本方案当中使用TimerB,当计数到预设延时后,打开EXT1外部中断,等待回波反射到接收头。四次测量全部完成后,再对测量的结果进行处理、换算,。其中等待预设延时的原因:压电式的电声传感器存在余波干扰,而有部份声波会沿电路板直接传到接收头,经接收电路的放大后,系统就有可能把它误认为是反射回来的回波信号。图5.3超声波测距子函数流程图16Hz时基中断处理程序16Hz的时基中断处理程序里,主要进行检查上次测量是否超时,若超时便会转到超时处理程序;然后进行下一次的测量启动,即再次发送20个40KHz方波脉冲。16Hz中断流程图6.16Hz中断流程图。图5.416Hz中断流程图EXT1外部中断程序当回波触发控制器的外部中断后,程序会转到EXT1外部中断服务子程序中,读取测量结果,并作数据的初步处理。流程图见:图5.5EXT1外部中断流程图。图5.5EXTI外部中断流程图5.3.2语音播放程序全方案采用A2000的语音压缩算法,播放A2000格式的语音资源,作为语音提示的功能;为了让系统在语音播放期间,其它的中断能照常工作;因此在每一次语音播放前,进行中断的初始化操作,实际上是利用了SACM语音库当中使用到的一个中断设置变量:R_InterruptStatus。该变量在语音库支持文件:hardware.asm当中定义;每次进行语音播放的初始化操作时,语音库当中会从该变量读取之前用户设置的中断,并以此为基础设置语音库进行语音播放所需要打开的中断。所以,中断的初始化操作,也就是将当前中户的中断设置情况写入变量:R_InterruptStatus当中即可。另外,为了防止语音播报过于频繁,本方案采用2Hz时基进行计数,每次播放语音提示前,先判断距离上一次语音提示的播放是否超过3秒〔即2Hz中断当中计数6次以上?如超过则可以进行这次的播放,如果不符合要求,则退出。图5.6为语音播放程序的流程图:图5.6语音播放程序流程图IRQ5的2Hz中断服务程序当中,对一个用于计数〔时的变量进行累加,以配合语音播放程序当中对两次播放的时间间隔的判断。为了避免出现不断累加,而溢出清零,在中断服务程序当中加入了限制,即当计数的变量计数值大于6〔即超过了3秒,则关闭IRQ5的2Hz中断;等待下次播放语音时再打开2Hz中断。2Hz中断服务程序的流程图如图5.6:另外,语音播放程序还需要在FIQ的TimerA中断当中,调用语音播放的中断服务程序;由于比较简单,这里就不多作介绍,用户可以查看相关的实验指导书,原理上都是一样的。5.3.3显示刷新程序本方案使用IOA8、IOA9、IOA10三个端口控制三个发光二极管〔LED作为显示,每一个LED对应一个超声波测距模组,当探测到0.35m~1.5m的范围内没有障碍物时,对应的LED是常灭的;当探测到0.35m~1.5m的范围内有障碍物时,对应的LED则以一定频率闪烁,而且距离越近则闪烁的频率越高。系统以IRQ4的1KHz中断对显示进行扫描,并设置有三个变量保存对应传感器模组的频率设置数据,即Show_Freq_Set[0]、Show_Freq_Set[1]、Show_Freq_Set[2]。当频率设置数据的值为0时,系统则不对对应的LED进行显示翻转,则对应的LED不会闪烁;此外,系统还定义有三个变量〔Show_Counter_1KHz[x],x=0~2作为1KHz的计数器,对应用个LED,而当频率设置数据不为0时,计数器会不断地计数〔以1KHz,当计数器的计数值累加到与频率设置数据一样时,则会使对应的LED显示状态进行输出翻转,并对计数器进行清零,周而复始。由此可知,当频率设置数据非零时,该数据越小,则对应LED的闪烁频率越高。图5.7显示刷新程序图5.7为在IRQ4的1KHz中断程序当中调用的显示刷新程序流程图。注:图5.7当中仅给出了针对一路传感器模组状态显示的流程图,即Show_Freq_Set[0]的,其它两个LED的显示刷新程序流程图也一样类似,这里就不再给出。5.3.4主程序由于很多处理操作在中断当中完成了,所以本方案的主程序并不复杂,图5.8为本方案的主程序流程图。图中,系统使用的中断主要指IRQ4的1KHz中断,而测量通道选择即通过I/O端口选通CD4052的通道,以决定当前的测量是对哪一个超声波测距模组。图5.8主程序流程图通过主程序流程图可看出,系统是在不断的对三组超声波测距模组进行测距操作,并将每次测距的结果进行处理,以更新对应的LED显示频率设置,以及在符合要求的条件下进行语音提示播放。在测距结果处理程序当中,系统会针对每一个通道的测距结果进行判断、处理;当某一通道的测距结果大于1.5m时,则让对应的LED保持灭的状态,并将该通道的显示频率设置数据设为0;当测距结果小于1.5m时,则设置对应的显示频率设置数据,数据的大小与测量的结果按一定比例成正比即可。当测距结果处理程序会对当前的三组超声波测距模组所探测到的障碍物的距离进行判断,当有某一组或者一组以上的模组探测到障碍物在0.35m~1.5m的范围内时,会进行语音提示的播放。图5.9为测距结果处理程序。图中,后方、左后方以及右后方,表示的是三个不同的通道的超声波测距模组所测量的区域。图5.9测距结果处理程序流程图第六章连接与操作说明由于本系统对电源有一定的要求,所以在制作时,需要给61板接入5V的电源〔并非使用电源盒,并将61板上的端口电平选择跳线J5跳到5V一端,使端口的高电平为5V,并通过61板的I/O接口〔J6给转接板、超声波测距模组进行供电。本方案当中,可将转接板设计如图6.1所示;图中,J1接61板的J6,作为CD4052选通的控制端口,以及超声波测距的接口;J2~J4分别接三组超声波测距模组。图6.1转接板示意图而在使用超声波测距模组时,需要注意要将模组上的J2跳线短接,J1测距模式选择选在SET可调选项,并将模组上电位器调节,将比较电压调节至3.5V~3.2V之间。调节时,可测量J1靠近电位器的引针上的电压。另外,还需要将J9跳线设置在5V一端。整个系统的连线示意图如图6.2所示图6.2系统连接示意图系统硬件连接好以后,便可以将程序下载到61板当中;针对本方案,凌阳科技教育推广中心提供了参考的程序范例,用户可以直接对程序进行编译、下载。操作说明:按照前面所述制作好转接板、显示板后,再连接好61板和各个模组板,用户还需要为61板连接上电源〔外接5V、喇叭;如果之前没有下载本方案的参考程序,用户还需要将程序下载到61板中,并全速运行,然后才可以看到运行的情况,并对其进行操作。下载参考程序本方案的源代码提供在刻录CD文件夹当中的"参考源代码"中的"Car_Radar"文件夹当中;直接打开其中的Car_Radar.spj文件,即可打开工程;然后对所打开的工程进行编译。确认编译无误后,然后再确认一下61板的连线是否连接好,以及下载线/调度器等的连接;如果一切有关下载的设置、连接无误,便可以下载运行程序。调试本系统操作方法比较简单,系统工作后用户无需对61板进行操作;开始测试时将开关至于ON状态,此时控制板上的电源指示灯就会亮起,说明此时控制器进入工作状态。将三个超声波测距模组列开,并用物体挡在超声波测距模组上探头正对的前面,只要距离在0.35m~1.5m之内,就会有间断的语音提示,以示对应的模组前面有障碍物。如果测试时障碍物与探头之间的距离在30cm左右,雷达能够正常工作,而两者之间在1.5m时,雷达不能正常工作,则说明电源的电压有点低;如果测试时障碍物与探头之间的距离在30cm左右,雷达不能够正常工作,则应检查各连线接口连接是否接好,元器件的完好情况,及电压稳定情况等。按照本方案文档的接法,定义接1号模组的超声波测距模组为左后方探头,2号为正后方探头,3号为右后方探头。当各个位置的模组探头探测到障碍物,会有如表6-5中所示结果:情况一情况二情况三条件正后方、左后方与右后方有障碍物仅左后方有障碍物仅右后方有障碍物提示语音后方左后方右后方超声波测距模组V2.0版与61板进行中距测距应用接线实物图短/中距测距注意事项及声明:1.测距时保证传感器与被测物间,以及测量轴线上没有障碍物;2.尽量保证传感器轴线与被测物表面垂直;3.实际测距范围与被测物表面材料等因素有关,一般不要测量表面为毛料的物体表面.参考文献[1]罗亚非.凌阳16位单片机应用基础[M].北京:北京航空航天大学出版社.20XX12月[2]薛均义/张彦斌/.凌阳16位单片机原理及应用[M].北京:北京航空航天出版社.20XX2月[3]谭浩强.C程序设计[M].北京:清华大学出版社.1999年12月[4]沈美明/温冬婵.IBM-PC汇编语言程序设计[M].北京:清华大学出版社.20XX8月[5]林书玉.超声换能器的原理及设计[M].北京:科学出版社,2004.[6]邵卫平.超声及其应用[M].上海:上海科学技术出版社,2000.[7]孙江宏.Protel99电路设应用[M].北京:机械工业出版社,2003.[8]何立民.单片机应用程序设计技术.北京:北京航空航天大学出版社,2005[9]刘小荣.杨骁.u’nSP系列单片机实验指导书.XX科技大学印.2002致谢毕业论文暂告收尾,这也意味着我在xxxx大学的四年的学习生活即将结束。回首既往,自己一生最宝贵的时光能于这样的校园之中,能在众多学富五车、才华横溢的老师们的熏陶下度过,实是荣幸之极。在这四年的时间里,我在学习上和思想上都受益匪浅。这除了自身努力外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。论文的写作是枯燥艰辛而又富有挑战的。电子产业是理论界一直探讨的热门话题,老师的谆谆诱导、同学的出谋划策及家长的支持鼓励,是我坚持完成论文的动力源泉。在此,我特别要感谢我的导师周巍老师。从论文的选题、文献的采集、框架的设计、结构的布局到最终的论文定稿,从内容到格式,从标题到标点,他都费尽心血,没有xx老师的辛勤栽培、孜孜教诲,就没有我论文的顺利完成。感谢电子信息系的各位同学,与他们的交流是我受益颇多。最后要感谢我的家人以及我的朋友们对我的理解、支持、鼓励和帮助,正是因为有了他们,我所做的一切才更有意义,也正是因为有了他们,我才有了追求进步的勇气和信心。时间的仓促及自身专业水平的不足,整篇论文肯定存在尚未发现的缺点和错误。恳请阅读此篇论文的老师、同学,多予指正,不胜感激!附录电路原理图程序#include"SPCE061A.h"//下面的函数定义在Speech.c当中,播放A2000语音资源子程序externvoidPlaySnd_Auto<unsignedintuiSndIndex,unsignedintuiDAC_Channel>;unsignedintShow_Freq_Set[3]={0,0,0};unsignedintShow_Counter_1KHz[3]={0,0,0};//========================================================//语法格式: voidInitial_IO<void>//实现功能: 系统端口初始化程序//参数: 无//返回值: 无//========================================================voidInitial_IO<void>{*P_IOA_Dir=*P_IOA_Dir|0xff00;*P_IOA_Attrib=*P_IOA_Attrib|0xff00;*P_IOA_Data=*P_IOA_Buffer&0x00ff;*P_IOB_Dir=*P_IOB_Dir|0x0003;*P_IOB_Attrib=*P_IOB_Attrib|0x0003;*P_IOB_Data=*P_IOB_Buffer&0xFFFc;}//=========================================================//语法格式: voidChannel_Sel<unsignedintch>//实现功能: 传感器通道选择//参数:ch选择的通道号〔0~2//返回值: 无//=========================================================voidChannel_Sel<unsignedintch>{unsignedintuiTemp;ch=ch&0x0003;//只取低二位,因为系统设计仅使用了IOB0和IOB1uiTemp=*P_IOB_Buffer;//采用先读,再计数,再写的方式uiTemp=uiTemp&0xfffc;//保证其它端口状态不变uiTemp=uiTemp|ch;*P_IOB_Data=uiTemp;}//==========================================================//语法格式:voidResult_Check<unsignedintch,unsignedintResult[3]>//实现功能:测量结果处理程序更新状态显示频率设置值,更新状态显示//针对测量结果进行语音播报//参数:unsignedintch 通道号数//unsignedintResult 该通道的测量值//返回值: 无//==========================================================voidResult_Check<unsignedintch,unsignedintResult[3]>{if<Result[ch]<150>//判断测量结果是否大于150cm?{//小于,则设置显示频率值if<Result[ch]==0>//如果测得值为0,则是测量超时出错Result[ch]=155;//实际距目标距离是足够大的,所以这里重置为155if<Result[ch]>40>Show_Freq_Set[ch]=Result[ch]*6; //如果非零,则结果乘以6elseShow_Freq_Set[ch]

温馨提示

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

评论

0/150

提交评论