毕业设计论文基于单片机的小车防撞系统的设计.doc

上传人:sccc 文档编号:4868783 上传时间:2023-05-20 格式:DOC 页数:23 大小:406.52KB
返回 下载 相关 举报
毕业设计论文基于单片机的小车防撞系统的设计.doc_第1页
第1页 / 共23页
毕业设计论文基于单片机的小车防撞系统的设计.doc_第2页
第2页 / 共23页
毕业设计论文基于单片机的小车防撞系统的设计.doc_第3页
第3页 / 共23页
毕业设计论文基于单片机的小车防撞系统的设计.doc_第4页
第4页 / 共23页
毕业设计论文基于单片机的小车防撞系统的设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《毕业设计论文基于单片机的小车防撞系统的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于单片机的小车防撞系统的设计.doc(23页珍藏版)》请在三一办公上搜索。

1、泉 州 师 范 学 院 毕业论文(设计)题 目 基于单片机的小车防撞系统的设计 Based on SCM car anti-collision system design 物理与信息工程 学 院 电子信息科学与技术 专 业 07 级 1班学生姓名 学 号 070303049 指导教师 职 称 讲师 完成日期 2011年4月 教务处 制2 基于单片机的小车防撞系统的设计物理与信息工程学院 07级电子信息科学与技术 指导教师 讲师【摘 要】本文介绍了AT89S51单片机的性能及特点,设计了以其为核心的一种低成本、高精度、微型化、数字显示的汽车防撞报警器。该防撞报警器将单片机的实时控制及数据处理功能

2、,与超声波的测距技术、传感器技术相结合,可检测汽车运行中后方障碍物与汽车的距离,通过数显装置显示距离,并由发声电路根据距离远近情况发出警告声。对防范汽车倒车事故的发生具有重要的意义。【关键词】单片机;超声波;防撞;报警目录引言31系统设计的目标和任务31.1系统设计的基本要求31.2系统设计的思路31.3方案论证31.3.1发送模块31.3.2接收模块32 AT89S51单片机与超声波简介42.1 AT89S51单片机的概述42.2 AT89S51单片机的特点42.3 超声波简介52.4 基于CX20106超声波测距的调试53系统软件部分设计53.1超声波系统主流程图53.2超声波硬件设计与软

3、件编程73.2.1复位电路83.2.2显示电路83.2.3超声波发送与接收模块93.2.4 报警模块104 调试及性能分析114.1 硬件调试114.2 软件调试114.3测试结果与分析115设计总结12致谢12参考文献13附录1电路原理图13附录2 PCB图13附录3程序14引言随着现代化城市的发展,城市密度越来越大,城市交通越来越拥堵,人们对自身的生命财产安全越来越重视,在公路上车辆行驶的安全性也得到了更多的关注,能否在高速行驶公路上及时提醒司机驾驶安全也变得更加重要。因此,设计一个小车防撞系统也就变得很有必要。目前测量距离一般都采用波在介质中的传播速度和时间关系进行测量。常用的技术主要有

4、激光测距、微波雷达测距和超声波测距三种1。超声波具有指向性强、能量消耗缓慢且在介质中传播的距离较远的优点,因此经常用于距离的测量。超声波测距主要用于建筑工地以及一些工业现场和移动机器人研制上,可在潮湿,多尘等环境下工作。相对于其他技术而言,超声波定位技术成本低、工作稳定、精度高、操作简单等优点,非常适用于距离测量定位。AT89S51为小车防撞控制系统提供了稳定、可靠的解决办法,充分利用它的片内资源,实现了超声波测距和报警 2。1系统设计的目标和任务1.1系统设计的基本要求本次设计的主要内容是设计一种基于单片机汽车防撞报警系统的硬件电路,主要利用单片机对超声波传感器采集的模拟数据的处理及存储。设

5、计的基本要求:1.快速自动报警功能:当超声波传感器检测到汽车后方障碍物与汽车的距离小于安全值时,系统能快速进行声光报警。2.准确地向终端报警:能够及时并准确地向司机进行报警,快速地实现安全检测。3.实时检测功能:监测模块能实时采集汽车与后方障碍物距离的变化,将这些数据定时传送给单片机,有利于及时了解当前所处情况是否处于安全环境之下3。1.2系统设计的思路该系统分为监测部分与终端接收部分。监测部分,通过超声波系统对碰到的障碍物进行检测,再通过单片机系统对接收到的数据进行处理,保证在终端能准确地接收信息,蜂鸣器同时工作;终端接收部分,终端通过单片机分析接收的相关信息,在LED上显示与障碍物的距离4

6、。1.3方案论证1.3.1发送模块方案1:采用压电式超声波换能器。压电式超声波换能器是利用压电晶体的谐振来工作的。方案2:采用反向器74LS04和超声波发射换能器T构成震荡器。这种电路可以提高超声波发射强度,且电路简单,稳定性高。方案3:单电源乙类互补对称功率放大电路和UCM40T发射器。利用单电源乙类互补对称功率放大大路驱动发射器5。经论证比较,三种方案差距不大,但鉴于用74LS04电路简单。故选择方案2。1.3.2接收模块方案1:采用集成电路CX20106A。它是一款红外线检波接收的专用芯片,考虑到红外常用的载波频率38KHZ与测距的超声波40KHZ较为接近,可以利用它制作超声波检测接受电

7、路,且电路简单,灵敏度高,还有较强的抗干扰能力。方案2:采用uA741构成两级放大电路,这是专用运算放大器,高增益,增益带宽积大,抗干扰能力强,可测距离远,精度高6。经论证比较,虽然方案2相对方案1可测的更远,但方案1已可满足项目功能的要求,且方案1电路结构简单,方便调试,故采用方案1。2 AT89S51单片机与超声波简介2.1 AT89S51单片机的概述AT89S51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器。该器件采用ATMEL高密度非易失存储

8、器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案7。AT89S51单片机的引脚结构如图1所示。图1 AT89S51单片机引脚图2.2 AT89S51单片机的特点AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C5

9、1引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器8。 此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继

10、续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求9。 主要特性: 8031 CPU与MCS-51 兼容 4K字节可编程FLASH存储器(寿命:1000写/擦循环) 全静态工作:0Hz-33MHz 三级程序存储器保密锁定 128*8位内部RAM 32条可编程I/O线 两个16位定时器/计数器 6个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 .2.3 超声波简介超声波具有方向性好、在介质中能量消耗缓慢且速度远小于光速等特点,因而可用于距离测定。超声波测量

11、的思想是从超声波发射到接收到反射回波的时间间隔来计算距离。超声波传感器是实现声电转换的装置,又称为超声波换能器或者超声波探头。它是在超声频率的范围内将交变的电信号转变成声信号的能量转换器件。考虑到实际情况,利用超声波测距时,选用频率为40KHz的超声波。采用异地反射式来测距,即所测距离是声波传输距离的一半。测量发射和接收回波的时间差T,在声速V已知的情况下求出距离S10。距离的计算公式如下:S=(V*T)/22.4 基于CX20106A超声波测距的调试CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38KHz与测距的超声波频率40KHz较

12、为接近,所以把它用于超声波检测接收电路。实验证明用CX20106A接收超声波,具有很高的灵敏度和较强的抗干扰能力。当超声波接收头接收到40KHz 方波信号时,将会将此信号通过CX20106A 驱动放大送入单片机的外部中断0 口。单片机在得到外部中断0 的中断请求后,会转入外部中断0 的中断服务程序进行处理,在移动机器人的避障工作中,可以在中断服务程序设定需要单片机处理的最短距离,比如0.5m。对于距离大于0.5 m 的障碍物,可以不做处理直接跳出中断服务程序11。3系统软件部分设计 3.1超声波系统主流程图图2主程序流程图图3 按键中断处理流程图3.2超声波硬件设计与软件编程综合考虑,控制模块

13、采用单片机AT89S51控制;发射模块采用反向器74LS04;接收模块采用CX20106A;显示模块采用液晶显示器LED显示;报警模块采用蜂鸣器。其系统框图如图4所示。单片机AT89S51发送模块接收模块LED显示报警 图4超声波系统框图3.2.1复位电路单片机外围需要一个复位电路,复位电路的功能是:系统上电时提供复位信号,直至系统电源稳定后,撤消复位信号。该设计采用含有电阻的复位电路,复位电路可以有效的解决电源毛刺和电源缓慢下降(电池电压不足)等引起的问题,在电源电压瞬间下降时可以使电容迅速放电,一定宽度的电源毛刺也可令系统可靠复位。复位电路的设计图如图5所示:图5 复位电路 3.2.2显示

14、电路显示电路采用的是共阳极8位数码管,该显示器与驱动电路相连用于控制LED的显示。为使LED显示,只需在S1,S2,S3,S4依次置为低电平信号,再给LED延时一段很小的时间,使数码管分别显示,由于人眼的视觉暂留效应,数码管就像同时显示一样。LED显示电路的电路图如图6所示。图6 LED显示电路3.2.3超声波发送与接收模块(1)主程序首先对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式,设置总中断允许为EA,显示器接P0口,P2接蜂鸣器。然后调用超声波发生子程序送出一个超声波脉冲,为避免超声波从发射器直接传送到接收器引起的直接波触发,需延迟0.1ms秒后(这是测距器会有一个最小

15、可测距的原因),才打开外中断0接受返回的超声波信号。由于采用12MHZ的晶振,机器周期为1us,当主程序检测到接受成功的标志位后,将计数器T0中的数(即超声波来回所用的时间),按下式计算即可得到被测物体与测距仪之间的距离,设计时取声速为0.0347cm/um,则S=(V*T0)/2(V为声速,T0为声波来回传输的时间)。然后再用超声波脉冲重复测量。(2)超声波发送子程序和超声波接收中断程序。超声波发送子程序是通过P1.0端口发送4个左右的超声波信号频率约为40KHZ的方波,同时把计数器T0打开并进行计时。超声波测距离主程序利用外部中断0检测返回超声波信号,一旦接受到返回超声波信号(INT0引脚

16、出现低电平),立即进入中断程序。进入中断程序后就立即关闭计时器T0停止计时,并将测距成功标志子赋值112。超声波发送和接收模块如图7,图8所示。图7 超声波发送模块图8 超声波接收模块3.2.4 报警模块P2口接蜂鸣器,当小车离障碍物的距离小于80cm时,置P2.0为低电平,蜂鸣器发出报警;当小车距离障碍物的距离大于80 cm时,置P2.0为高电平,蜂鸣器停止报警。当小车距离障碍物的距离50cm时,蜂鸣器放出长报警。报警模块如图9所示。图9 报警模块4 调试及性能分析 4.1 硬件调试 此次制作外扩超声波的发送端和接收端,硬件调试采用WAVE6000/S仿真器,同时用数字万用表检测没有短路、虚

17、焊和各个端口的电压,各参数显示正常。电路连接基本确定没什么问题,主要调整的地方在于接收电路的电阻电容的调整,将电阻电容参数调到合适大小,接收效果明显增强。4.2 软件调试在WAVE编译器和WAVE6000/S仿真器仿真下进行软件调试。使用WAVE编译器时设定断点,对各段函数的调试,还结合硬件用WAVE6000/S仿真器进行仿真调试。软件调试过程中的存在问题就是测的不够远。其主要原因在于发送波的发送频率,经过多次调试确定最佳发送次数是4次,多一次少一次都影响测量距离。定时器1来定时控制发送40KHZ左右方波给超声波发送端。定时器1的定时时间不能太小,如果在较短的时间间隔内发送,那么也将影响接收

18、13。 4.3测试结果与分析 硬件测试过程中经过多次测试其能测的最远且较稳定的距离为426cm,最大误差不超过1cm。由于场地有限,不可避免的受到干扰。各距离段测量的结果如下表1所示。误差来源由于声速与温度有关,如果测距精度要求很高,则应通过温度补偿方法加以校正。实际值(cm)41.849.870.68098.8124.7144169.4196.7222.6测量值(cm)42507180100125144170197223实际值(cm)250.6278.5299.6329.7339.9349.8359.6387.5402.3425.5测量值(cm)25127930033034035036038

19、8403426表 1 实际测试数据记录5设计总结为了验证系统的测量精度,在试验室进行了实地测量。利用本系统在42426cm范围进行多次测量。经测量最大误差在1cm范围内,稳定性和重复行都比较好。系统结构简单、体积小、实时LED显示和报警、抗干扰能力好等优点。系统的误差主要来自发射探头的轴线而导致所反射回来的波可能是从不同点获得,还有电子器件自身的时延、干扰等也造成一定影响。可以根据具体场合,选择合适功率的探头,以及调整程序中脉冲的频率、宽度和个数等提高精度或测量距离,扩大系统的应用范围。致谢在本次毕业设计中, 得到了我的指导教师朱老师的大力支持,在电路功能的实现中提出了许多相当宝贵的意见,毕业

20、论文中也给予了悉心的指导,使我的毕业设计得以顺利完成,对此我表示衷心的感谢,同时也感谢陈泉勇、杨朝阳同学在毕业设计当中给我的帮助。参考文献 1 李光飞.单片机课程设计实例指导.北京航空航天大学出版社.北京:2003年6月2 李朝青.单片机原理及接口技术.北京航空航天大学出版社北京:1998年3 李永鉴.简易超声波测距仪的制作.五邑大学信息学院. 广东江门:2006年4 姜道连.用AT89C51设计超声波测距仪.天津理工学院光电信息与电子工程系.天津:2000年12月5 龚运新 单片机C语言开发技术 清华大学出版社 2006年10月6 段晨东 单片机原理及接口技术 清华大学出版社 2008年8月

21、7 戴佳 51单片机C语言应用程序设计实例精讲第二版 电子工业出版社 2009年11月8 朱月秀.单片机原理与应用(第2版)北京:科学出版社2004.29 周良权,傅恩锡,李世馨.模拟电子技术基础(第二版)北京:高等教育出版社 2001.12 310 陈莹.基于单片机的超声波测距系统.华中科技大学硕士学位论文2004.4 11 邱平. 略论我国非金属超声波检测仪器的发展状况.工程质量1998.112 超声波探伤编写组编著.超声波探伤.北京:电力工业出版社,1980年13 李鸣华,余水宝.单片机在超声波料位测量中的应用. 电子技术应用,1998年Based on SCM car anti-col

22、lision system designThe College of Physics and Information Engineering07 class electronics information science and technology 070303049 gan jingchangFaculty adviser Zhu Chengquan lecturer【Abstract】This paper introduces the properties and the characteristics of AT89S51, designs a impact-proof alarm w

23、ith low cost, high precision, miniaturization, digital display taking it as the core . The impact-proof alarm takes SCMs real-time control and data processing functions combine with the Ultrasonic ranging technology,the sensor technologies. It is able to detecte the distance of rear obstacle and the

24、 automobile, through digital display device shows by sound circuit distance, and according to the distance situation warned. It has the vital significance to prevent automobile reverse accident.【 keywords 】 Microcontroller; Ultrasonic; Impact-proof; Alarm 12附录1电路原理图附录2 PCB图 附录3程序#include sbit k1=P34

25、; sbit csbout=P10; /超声波发送 sbit csbint=P32; /超声波接收 sbit bg=P33; #define LED P0 sbit LED1=P24; /LED控制 sbit LED2=P25; /LED控制 sbit LED3=P26; /LED控制 sbit bj=P20;/报警#define csbc 0.0347 unsigned char cl,mqzd,csbs,csbds,buffer3,xm1,xm2,xm0,jpjsunsigned char convert10=0x18,0x7b,0x2c,0x29,0x4b,0x89,0x88,0x3b,

26、0x08,0x09;unsigned int s,t,i,xx,j,sj1,sj2,sj3,mqs,sx1; void csbcj(); void delay(j); /延时函数 void scanLED(); /显示函数 void timeToBuffer(); /显示转换函数 void keyscan(); void k1cl(); void k2cl(); void k3cl(); void k4cl(); void offmsd(); void main() /主函数 EA=1; /开中断 TMOD=0x11 /设定时器0为计数,设定时器1定时 ET0=1; /定时器0中断允许 ET1

27、=1; /定时器1中断允许 TH0=0x00; TL0=0x00; TH1=0x9E; TL1=0x57; csbds=0; csbout=1; cl=0; csbs=8; jpjs=0; sj1=50;/测试报警距离 sj2=200; sj3=580; k4cl(); TR1=1; while(1) keyscan(); if(jpjssj3) /大于时显示“CCC” buffer2=0xC6; buffer1=0xC6; buffer0=0xC6; else if(ssj1) /小于时显示“- - -” buffer2=0xBF; buffer1=0xBF; buffer0=0xBF; e

28、lse timeToBuffer(); else timeToBuffer(); /将值转换成LED段码 offmsd(); scanLED(); /显示函数 if(s=40) csbds=0; cl=1; void csbcj() if(cl=1) TR1=0; TH0=0x00; TL0=0x00; i=csbs; while(i-) csbout=!csbout; TR0=1; while(i-) i=0; while(csbint) i+; if(i=4000) /上限值 csbint=0; TR0=0; TH1=0x9E; TL1=0x57; t=TH0; t=t*256+TL0;

29、t=t-29; s=t*csbc/2; TR1=1; cl=0; csbint=1; /if(s80)bj=1;/ if(s6) csbs=csbs-2; sj1=40; sj1=sj1+2; k4cl(); else if(s=sj3) if(csbs1000) jpjs+; if(jpjs3) k4cl(); jpjs=0; xx=0; switch(jpjs) case 1: k1cl();break; case 2: k2cl();break; case 3: k3cl();break; void k1cl() sj1=sj1+1; if(sj1100) sj1=50; s=sj1; void k2cl() sj2=sj2+5; if(sj2500) sj2=40; s=sj2; void k3cl() sj3=sj3+10; if(sj3600) sj3=600; s=sj3; Void offmsd() /百位为0判断模块 if (buffer0 = 0xC0) buffer0 = 0xFF; 22

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号