基于超声波倒车雷达系统毕业设计
《基于超声波倒车雷达系统毕业设计》由会员分享,可在线阅读,更多相关《基于超声波倒车雷达系统毕业设计(22页珍藏版)》请在装配图网上搜索。
1、安徽机电职业技术学院 毕业设计说明书 基于超声波倒车雷达系统 系 (部) 电气工程系 专 业 机电一体化 班 级 机电3105 姓 名 尹 磊 学 号 1302103210 指导教师 刘苏英
2、 2012 ~ 2013 学年第 1 学期 摘 要 本方案分析了超声波倒车雷达的原理,介绍了利用SPCE061A单片机配合三个V2.0的超声波测距模组实现超声波倒车雷达的方案设计。方案中采用凌阳的SPCE061A单片机,并利用其丰富的资源,实现对多路传感器的控制;并结合其独有的语音特色,将语音提示的功能结合到方案当中。 关键词:单片机、SPCE061A 、超声波测距、倒车雷达、语音提示 目 录 摘 要 2 前 言 4 第一
3、章 设计任务及要求 5 1.1 任务 5 1.2 技术要求 5 第二章 总体方案设计 6 第三章 模块设计 7 3.1 各单元模块设计 7 3.2 超声波测距模组V2.0电路原理 8 3.3转接板电路和显示电路 11 3.4 系统连线图 12 第四章 系统软件设计 13 4.1 超声波测距原理 13 4.2 软件架构 13 4.3 各模块程序说明 14 第五章 系统组装、调试与测试 20 5.1 调试所用的基本仪器清单 20 5.2 把各部分电路连接起来组成完整电路 20 5.3设计发挥 20 设计总结 21 参考文献 22 前言 倒车雷达又
4、称停车辅助系统,一般由超声波传感器,控制器和显示器部分组成.车在倒车时,启动倒车雷达,在控制器的控制下,由装在车尾的探头发送超声波,遇到障碍物,产生回波信号,传感器在接收到回波信号后,经控制器进行数据处理,判断出障碍物的位置,由显示器(即3个发光二极管) 发出警告,得到及时警示,从而使驾驶者倒车时变得更为轻松,另外,车体的左右各有一个探头,与车尾的探头同样原理,当车在左右拐时可以发出警告. 第一章 设计任务及要求 1.1 任务 利用SPCEE061单片机.,三个超声波测距模组实现超声波倒车雷达; 可以语音提示模组探测范围内的0.31米~1.5米范围内的障碍物; 语音提示可指明哪一
5、个方向有障碍物; 利用三个LED发光二极管表示三个传感器探测范围内是否有障碍物.,当在探测范围在没有障碍物时,三个二极管以一定的频率周期性的闪烁;当在探测范围内有障碍物时.,发光二极管以一定的频率闪烁.,闪烁的频率以离障碍物的距离定.,距离越进频率越高. 1.2 技术要求 方案所需所有代码、资源都存放在一颗SPCE061A单片机当中. 第二章 总体方案设计 本系统以SPCE061A为核心,使用凌阳教育推广中心的61板,三个超声波测局距摸组V2.0依次排布 ,组成线阵的传感器阵列;另外,接有转界板,发光二极管显示模块,系统组成以下图所示. 图 2-1 系统硬件结构图 1
6、.SPCE061A弹片机作为主控心片,通过I/O端来控制CD4052,以选择不同的传感器通道;本方案采用IOB0和IOB1控制CD4052的A0和A1,而IOB2作为检测超声波摸组作为返回的信号,IOB9为SPACE061A的TIMERB复用,产生40KHZ的脉冲信号,作为控制超声波模组发射超声波的信号端口,这样通过CD4052的通道切换,就可以用最少的端口来完成多个模组的切换使用了. 2.在显示控制方面,系统分别利用IOA8、IOA9、IOA10三个端口控制三个发光二极管. 第三章 模块设计 3.1 各单元模块设计 3.1.1SPCE061A最小系统 SPCE061A最小系统
7、包括SPCE061A芯片及其外围基本模块,外围基本模块有:晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等,如下图所示. 图 3-1 SPCE061A最小系统 3.1.2 电源模块 SPCE061A的内核供电为3.3V,而I/O端口可接3.3V也可以接5V,所以在电源模块(61板上)中有一个端口电平选择跳线,如图中的J5,但是为了本系统可以可靠的工作,需要给61板外接5V的电源,并将61板的端口电平选择为5V,即J5用跳线帽将V5和VDDH短接.下图为61板上的电源模块图. 图 3-2 板上的电源模块图
8、 由于本系统需要的端口高电平为5V,所以图3-2当中的J5跳线需要跳到1和2上. 3.1.3放音模块 语音提示.放音利用的是SPCE061A内部的DAC,电路如图3-3所示.图中的SPY0030是凌阳公司的产品.和LM386相比,SPY0030还是比较有优势的,比如LM386工作电压需在4V以上,而SPY0030仅需2.4V (两颗电池)即可工作;LM386输出功率100mW以下,SPY0030约700mW. 图3-3 放音模块电路 3.2 超声波测距模组V2.0电路原理 图3-4 结构示意图 一般应用时,只需要用两条10PIN排线把J5与SPCE061A
9、的IOB口低八位连接,J4与IOB口高八位连接,同时设置好J1、J2跳线就完成硬件的连接了.不同测距模式的选择只需改变测距模式跳线J1的连接方法即可. 3.2.1 超声波谐振频率调理电路 由单片机产生40KHz的方波,并通过模组接口(J4)送到模组的CD4049,而后面CD4049则对40KHz频率信号进行调理;以使超声波传感器产生谐振. 3.2.2超声波回波接收处理电路 超声波接收处理部分电路前级采用NE5532构成10000倍放大器,对接收信号进行放大;后级采用LM311比较器对接收信号进行调整,比较电压为LM311的3管脚处,可由J1跳线选择不同的比较电压以选择不同的测距模
10、式. 图 3-5 超声波回波接收处理电路 3.2.3 电源接口 J3为外部电源接口,最高电压不要超过12V,J2为电源选择跳线,VCC_5即为由61板通过10PIN排线引入模组的电源;VCC即为模组的放大器、调理电路供电电源.当用户使用61板为其供电时,要把VCC与VCC_5V短接;而使用外部电源时,要把VCC与VCC_IN短接. 图 3-6 外部单独电源输入接口及选择跳线 J3为外部电源接口,最高电压不要超过12V,J2为电源选择跳线,VCC_5即为由61板通过10PIN排线引入模组的电源;VCC即为模组的放大器、调理电路的供电电源.当用户使用61板为其供
11、电时,要把VCC与VCC_5V短接;而使用外部电源时,要把VCC与VCC_ 3.2.4超声波测距模式选择跳线 模组提供了测距模式选择跳线J1,可以选择短距测量模式、中距测量模式,或距离可调模式.跳线选择LOW时为近距测量模式,选择HIG时为中距测量模式;选SET时为距离可调模式.本方案采即可,即将J1跳线跳到LOW端. 图3-7 测距模式选择跳线 3.2.5 超声波测距模组V2.0接口 本方案采用的三个超声波测距模组都是利用其J4、J5接口,每个模组接出两个控制、检测端口,然后会通过CD4052模拟开关进行选通,所以在实际使用当中,是分时地对每一个模组进行操作.超声波测距模组的
12、J4、J5接口如所图3-8示;图中的VCC_5在本方案当中由61板供电,即5V. 图3-8 超声波测距模组接口 3.3转接板电路和显示电路 3.3.1 转接板电路 前面已简单介绍了转接板的作用了,这里介绍一下它的原理图,图中J1直接与61板的J6相接,即与61板的IOB口低八位接口相接,可知图中的VDD为61板供电,5V;而A0和A1分别接SPCE061A的IOB0和IOB1,以控制CD4052的两个地址位,以控制通道的选通.IOB2接PLUS_B,作为回波信号的检测输入,不过经过CD4052的选通,接到哪一个模组,由IOB0和IOB1的输出决定;J2与61板的J7相连,即
13、COM_EN接入IOB9,将会由SPCE061A的TimerB产生40KHz的信号为超声波测距模组的提供超声波信号. CD4052的另外一端,接出COM_EN1/2/3分别接三个模组的发射使能,另外还用三个10K的电阻下拉到地,以保证没有选通的模组不会发射出超声波信号. J3、J4为一组,接一个超声波测距模组V2.0板上的J4和J5接口;而转接板上的J5、J6、J7、J8分别对应另外两个模组 图3-9转接板电路原理图 3.3.2 转接板示意图 由于本系统对电源有一定的要求,所以在制作时,需要给61板接入5V的电源(并非使用电源盒),并将61板上的端口电平选择跳线J5跳到5V一
14、端,使端口的高电平为5V,并通过61板的I/O接口(J6)给转接板、超声波测距模组进行供电. 本方案当中,可将转接板设计如图3-9所示;图中,J1接61板的J6,J2接61板上的J7,作为CD4052选通的控制端口,以及超声波测距的接口;J3~J8分别接三组V2.0版本的超声波测距模组而在使用超声波测距模组时,J1测距模式选择选在短距测距模式选项.另外,还需要将J2跳线设置在5V一端 图3-10 转接板示意图 3.3.3 显示电路 显示电路较为简单,直接使用三个I/O口控制三个发光二极管.如图3-11所示: 图3-11 显示电路 3.4 系统连线图 3.4.1整
15、个系统的连线示意图如图3-12所示: 图3-12 整个系统的连线示意图 第四章 系统软件设计 4.1 超声波测距原理 超声波脉冲法测距原理: 声波在其传播介质中被定义为纵波.当声波受到尺寸大于其波长的目标物体阻挡时就会发生反射;反射波称为回声.假如声波在介质中传播的速度是已知的,而且声波从声源到达目标然后返回声源的时间可以测量得到,那么就可以计算出从声波到目标的距离.这就是本系统的测量原理.这里声波传播的介质为空气,采用不可见的超声波. 假设室温下声波在空气中的传播速度是335.5m/s,测量得到的声波从声源到达目标然后返回声源的时间是t秒,距离d可以由下列公式计
16、算: d=33550(cm/s)t(s) 因为声波经过的距离是声源与目标之间距离的两倍,声源与目标之间的距离应该是d/2. 软件控制脉冲发射、检测回波信号: 模组配套的Demo程序采用的是脉冲测量法,由SPCE061A控制模组发生40KHz的脉冲信号,每次测量发射的脉冲数至少要12个完整的40KHz脉冲.同时发射信号前要打开计数器,进行计时;等计时到达一定值后再开启检测回波信号,以避免余波信号的干扰. 采用外部中断对回波信号进行检测(回波信号送到单片机的为一序列方波脉冲).接收到回波信号后,马上读取计数器中的数值,此数据即为需要测量的时间差数据.为避免测量数据的误差,Dem
17、o程序中对测距数据的处理方法是:每进行一次测距,测量多次,即取得多组数据,经过处理后得到这一次测距值. 4.2 软件架构 本方案的软件系统主要包含下列模块: 1.超声波测距程序:负责超声波测距的控制、结果计算等,另外有部分代码在中断服务程序当中,主要代码在ultrasonic.App.c以及IRQ.c文件. 2.语音播放程序:语音播放控制,主要代码在Speech.h,而语音中断服务程序在isr.asm文件中,但为了使语音播放程序在初始化时不影响用户的其它中断,在isr.asm当中还有一个中断初始化程序. 3.中断程序:主要指IRQ.c文件,包括超声波测距的中断服务代码,以及
18、用于显示刷新的IRQ4中断服务程序. 4.系统程序:主要指system.c文件,包含系统端口初始化、测量结果处理、以及显示刷新程序. 5.主控程序:负责控制整个系统的工作流程. 4.3 各模块程序说明 4.3.1 超声波测距程序 1.单次测距控制程序: 超声波测距的功能函数流程图见4-1.用户需要先调用模组接口初始化函数void Initial_ult(void),再调用该函数unsigned int measure_ult(unsigned int type)即可进行一次测距操作,函数返回值为测量结果.在单次测距函数当中,进入该函数进行测距,都会利用TimerB生成近似
19、40KHz的波形,通过IOB9口输出,而这样的波形输出仅会持续0.5毫秒左右(实际上保证发送出去的40KHz脉冲信号超过二十个以上,具体的时长或个数由测距模式定),然后将TimerB设置为计数器模式,用来计量超声波从发射到接收的时间间隔长度,并启动TimerB的计时;当TimerB计时达到一定值时(具体的时间值由测距模式定)打开EXT1外部中断,等待回波反射的接收.当EXT1外部中断检测到回波信号的脉冲时,会在中断服务程序当中读取TimerB的计数值,并通过全局变量通知单次测距函数已接收到回波信号,以及所读取的当次计数值. 每次测量接收到回波信号后,都会对测量的结果进行处理、换算,用户可以
20、根据不同的应用对数据处理部分的程序作适当的调整.其中等待一定时间才开启EXT1外部中断的原因:压电式的电声传感器存在余波干扰,而有部份声波会沿电路板直接传到接收头,经接收电路的放大后,系统就有可能把它误认为是反射回来的回波信号. 图4-1 超声波测距子函数流程图 ②EXT1外部中断程序 当回波触发控制器的外部中断后,程序会转到EXT1外部中断服务子程序中,读取测量结果,并作数据的初步处理.流程图见:图4.3.2 图4-2 EXT1外部中断流程图 4.3.3 语音播放程序 全方案采用A2000的语音压缩算法,播放A2000格式的语音资源,作为语音提示的功能;
21、为了让系统在语音播放期间,其它的中断能照常工作;因此在每一次语音播放前,进行中断的初始化操作,实际上是利用了SACM语音库当中使用到的一个中断设置变量:R_InterruptStatus.该变量在语音库支持文件:hardware.asm当中定义;每次进行语音播放的初始化操作时,语音库当中会从该变量读取之前用户设置的中断,并以此为基础设置语音库进行语音播放所需要打开的中断.所以,中断的初始化操作,也就是将当前中户的中断设置情况写入变量:R_InterruptStatus当中即可. 另外,为了防止语音播报过于频繁,本方案采用2Hz时基进行计数,每次播放语音提示前,先判断距离上一次语音提示的播放
22、是否超过3秒(即2Hz中断当中计数6次以上)?如超过则可以进行这次的播放,如果不符合要求,则退出. 图4-3为语音播放程序的流程图: 图4-3 语音播放程序流程 IRQ5的2Hz中断服务程序当中,对一个用于计数(时)的变量进行累加,以配合语音播放程序当中对两次播放的时间间隔的判断.为了避免出现不断累加,而溢出清零,在中断服务程序当中加入了限制,即当计数的变量计数值大于6(即超过了3秒),则关闭IRQ5的2Hz中断;等待下次播放语音时再打开2Hz中断.2Hz中断服务程序的流程图如图4-4 图4-4 IRQ5的2Hz中断服务程序 语音播放程序还需要在FIQ的Tim
23、erA中断当中,调用语音播放的中断服务程序; 4.3.5显示刷新程序 本方案使用IOA8、IOA9、IOA10三个端口控制三个发光二极管(LED)作为显示,每一个LED对应一个超声波测距模组,当探测到0.35~1.5m的范围内没有障碍物时,对应的LED是以一定的频率周期性的闪烁的;当探测到0.35~1.5m的范围内有障碍物时,对应的LED则以与原来不同的频率闪烁,而且距离越近则闪烁的频率越高. 系统以IRQ4的1KHz中断对显示进行扫描,并设置有三个变量保存对应传感器模组的频率设置数据,即Show_Freq_Set[0]、Show_Freq_Set[1]、Show_Freq_Set[2]
24、.当频率设置数据的值为0时,系统则不对对应的LED进行显示翻转,则对应的LED不会闪烁;此外,系统还定义有三个变量(Show_Counter_1KHz[x]., x=0~2)作为1KHz的计数器,对应用个LED,而当频率设置数据不为0时,计数器会不断地计数(以1KHz),当计数器的计数值累加到与频率设置数据一样时,则会使对应的LED显示状态进行输出翻转,并对计数器进行清零,周而复始.由此可知,当频率设置数据非零时,该数据越小,则对应LED的闪烁频率越高.图5.6为在IRQ4的1KHz中断程序当中调用的显示刷新程序流程图. 注:图4-4当中仅给出了针对一路传感器模组状态显示的流程图,即Show
25、_Freq_Set[0]的,其它两个LED的显示刷新程序流程图也一样类似,这里就不再给出. 图4-5 显示刷新程序 主程序由于很多处理操作在中断当中完成了,所以本方案的主程序并不复杂,图4-5为本方案的主程序流程图. 图中,系统使用的中断主要指IRQ4的1KHz中断,而测量通道选择即通过I/O端口选通CD4052的通道,以决定当前的测量是对哪一个超声波测距模组. 通过主程序流程图可看出,系统是在不断的对三组超声波测距模组进行测距操作,并将每次测距的结果进行处理,以更新对应的LED显示频率设置,以及在符合要求的条件下进行语音提示播放. 图4-6主程序流程图 在测距结果处理程序
26、当中,系统会针对每一个通道的测距结果进行判断、处理;当某一通道的测距结果大于1.5m时,则让对应的LED保持灭的状态,并将该通道的显示频率设置数据设为0;当测距结果小于1.5m时,则设置对应的显示频率设置数据,数据的大小与测量的结果按一定比例成正比即可. 此外,由于超声波测距模组V2.0版本的接口程序定义,当测量超时时,返回值为0,即当超声波模组测量的目标超出最大测量范围时,测量结果为0;所以程序里面可以对这个结果处理一下,将测量值为0时当作>1.5m处理. 当测距结果处理程序会对当前的三组超声波测距模组所探测到的障碍物的距离进行判断,当有某一组或者一组以上的模组探测到障碍物在0.35
27、~1.5m的范围内时,会进行语音提示的播放. 图4-7为测距结果处理程序.图中,后方、左后方以及右后方,表示的是三个不同通道的超声波测距模组所测量的区域 图4-7测距结果处理程序流程图 第五章 系统组装、调试与测试 5.1 调试所用的基本仪器清单 数字电路实验仪、数字万用表、计算机、直流稳压电源. 5.2 把各部分电路连接起来组成完整电路 对电路进行抗干扰能力检测.把雷达传感器模块的LOW接口短接,接通单片机电源开关,把三个雷达的接收/发射端口分别对准障碍物进行检测,同时观察对应发光二极管的闪烁频率,可得到如表6.1的调试结果: 表6-1 情 况
28、一 情 况 二 情 况 三 情况四 情 况 五 条件 无障碍物 两个方向及其以上以上有障碍物 仅后方有碍物 仅左后方有 障碍物 仅右后方 有障碍物 语音提示 不提示 后方 后方 左后方 右后方 发光二极管提示 三个二极管以一定的频率(该频率较有障碍物时小)周期性的闪烁 能同时提示三个方向 的障碍物.,离障碍物远.,闪烁频率小;离障碍近.,闪烁频率大 绿色二极管的闪烁频率增加 黄色二极管的闪烁频率增加 加 红色二极管 的闪烁频率增加 注:(左后方:黄灯.右后方:
29、红灯.后方:绿灯.) 我们实现了、语音控制和声音播报等功能,同时具有发光二极管显示效果,显示亮度有明显的变化. 调试效果能够满足题目基本要求和发挥部分的要求,而且效果良好. 5.3设计发挥 我们将小车和雷达结合在一起,组成了超声波倒车雷达系统,让雷达可以方便灵活地探测周围的障碍物. 设计总结 设计感言:对我们来说这是一项具有挑战性的工作,通过这么多天的努力,我们最终完成了项目的制作.这次活动让我们增长了见识,丰富了知识,磨练了意志.这期间有失败时的痛苦,也有成功时的喜悦.遇到问题时有老师和同学的帮助,这增强了我们的团队合作能力,在此,要特别感谢给我们提供帮助的老师和同学,离开他们的帮助我们的项目是不会成功的. 设计结果:如表6-1 参考文献 [1].谭浩强 《.C程序设计[M]》.北京:清华大学出版社.1999年12月第2版 [2].杨素行著《模拟电子技术简明教程》第二版 高等教育出版社 [3]、沈美明、温冬蝉.《IBM-PC汇编语言程序设计[M].》北京:清华大学出版社.2001年8月第二版 [4]、凌阳科技大学 《61板傻瓜教程》 22
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。