基于单片机与超声波测距技术的行车安全辅助系统计算机本科学位论文.docx
《基于单片机与超声波测距技术的行车安全辅助系统计算机本科学位论文.docx》由会员分享,可在线阅读,更多相关《基于单片机与超声波测距技术的行车安全辅助系统计算机本科学位论文.docx(19页珍藏版)》请在冰点文库上搜索。
基于单片机与超声波测距技术的行车安全辅助系统计算机本科学位论文
基于单片机与超声波测距技术的行车安全辅助系统
摘要
单片机的应用和发展是计算机技术自桌面技术和网络技术之后,IT产业和IT技术的又一个新的重大进展。
在日常生活中,单片机技术和其他技术相结合,可以很大程度的发挥嵌入式系统的优势。
即快速,准确,高效。
文章主要介绍了嵌入式系统与超声波测距技术结合并应用于汽车领域的实例。
详细阐述超声波测距仪的设计原理。
该系统的硬件电路的核心是AT89S51单片机,其他主要功能模块包括超声波发射电路,超声波接受电路。
此设计着重考虑了系统的可行性、实用性、方便性。
而且该系统有着很强的可拓展性,在实际应用中,有着很广泛的适用性。
关键词:
AT89S51单片机超声波测距超声波传感器
ABSTRACT
TheuseanddevelopmentofSCMtechnologyfromthedesktopcomputertechnologyandnetworktechnology,anewandsignificatprocessinIT.Indailylife,single-chiptechnolopyandothertechnolopycanplayalargeextenttheadvantagesofembeddedsystems.Theembeddedsystemisveryfast,accurateandefficient.Thepaperintroducedtheembeddedsystemstechnologyandultrasonicrangeappliedanexampleoftheautomtivesector.Ultrasonicrangefinderonthedesignprincipleindetail.ThesystemisthecoreofthehardwarecircuitAt89S51microcontroller,theothermajorfunctionalmodules,includingultrasonictrandmitterandultrasonicciruittoreceive.Focusonthedesignofthesystemtoconsiderthefeasibility,practicalityandconwvenience.Andthesystemcanhaveastrongexpansioninthepracticalapplication,hasabroadapplicability.
Keywords:
Single-chipAT89S51UltrasonicDistanceMeasurement
Ultrasonicsensor
目录
一前言1
二探测仪测距原理及实现2
2.1测距原理2
2.2测距仪硬件实现框图2
三超声波发射器3
3.1发射器技术参数3
3.2发射器电路3
四超声波接受模块4
4.1超声波接受模块电路4
4.2LM567音频译码器5
五AT89S51单片机7
5.1单片机功能基本介绍7
六报警电路及时钟电路10
6.1报警电路10
6.2时钟电路11
七整体电路12
7.1系统电路图11
八编码实现及软件流程图13
8.1部分代码13
8.2软件流程图14
九结论15
谢辞16
参考文献17
一前言
据统计2007年,全国共发生道路交通事故327209起,造成81649人死亡、380442人受伤,直接财产损失12亿元,我国有世界上1.5%的汽车,但交通事故数量却占到了全世界的15%,可以说我国的交通安全问题十分严重。
我所研究的课题正是基于这样的问题,在夜间或恶劣天气行车时,能够比较准确的判断出盲区车辆的位置和距离,为司机提供一些参考,来帮助减少交通事故的发生。
在高速路行驶时,司机往往需要在左侧前方速度较慢的车辆进行超越,如果在可见度很高的晴朗天气,司机可以通过后视镜对侧向进行观测。
但是,在雨天的时候,后视镜上布满了雨滴,形成了漫反射,司机在后视镜中看到的景象是十分模糊的。
这样的情况下,完全凭感觉超车、并道是十分危险的。
该系统将对汽车两侧的盲区及盲区以外5米之内的范围额进行探测,将采集到的数据及时准确的传递给单片机进行分析。
如果在被测区域探测到有其他车辆,则系统自动进行报警,报警的方式是语音提醒。
此时,司机就不会盲目的进行超车动作。
当报警结束的时候,方可以进行超车。
另外,对于车长较长的货车来讲,就更需要这样的系统来进行报警提示。
货车在转弯的时候,需要的转弯半径是很大的,但司机的视野有时会被车身所遮挡,这种情况是相当危险的。
如果打开了该系统,在转弯时,系统对于左右两侧盲区及附近区域进行探测,并把结果反馈给司机,司机就可以根据实际情况进行相应的操作,以减少交通事故的发生。
对于实际使用来讲,该系统并没有采用世界上先进的红外探测成像技术,而是采用了简单易行的超声波探测技术,目的在于,在保证安全实用的情况下尽量降低成本。
该系统的报警系统采用语音系统,在不分散司机视觉注意力的前提下,能够给予帮助。
这一点更体现了设计者的人性化设计。
二探测仪测距原理及实现
2.1测距原理
对于测距问题,方法有很多种。
我们最早接触的可能就是蝙蝠即使在漆黑的夜也能看清楚物体,当然,这就是利用超声波定位的技术。
超声波是指频率高于20KHZ的机械波,为了以超声波作为测距手段,就必须有产生和接受超声波的工具。
完成这种功能的工具是超声波传感器,它不仅能产生超声波,也能接受超声波。
超声波传感器利用的是压电效应的原理,将电能超声波相互转换。
即在发射的时候,将电能转化为超声波;在接受的时候,将超声波信号转变为电信号。
超声波测距的原理是渡越时间法。
首先测出超声波从发射到被物体反弹回来,并被接收器接受到的时间t,注意的是,这里的时间是超声波往返的时间。
因此,以超声波的速度乘以这段时间的二分之一,便是声源与障碍物之间的距离,
即距离S=1/2*声速*t
其中,声速是受温度和传播介质影响的,不同的温度和传播介质会改变声波的传播速度。
但是在本系统中,传播介质就是空气,温度取常温25摄氏度,故声速为常数340秒/米。
2.2测距仪硬件实现框图
图2-1测距硬件实现框图
三超声波发射器
3.1发射器技术参数
在本系统中,超声波发射器采用T/R40系列。
T/R40系列是收发一体的超声波换能器,其中T系列表示发射器,R表示接收器。
其中本系统的发射器采用的器件具体技术参数见表3-1。
表3-1发射器技术参数表
型号
工作温度
频率(KHz)
阻抗(Ω)MAX
余振时间(ms)MAX
灵敏度(mV)
静电电容
T40-14C
-40~80
39.7~40.5
800
1.0
250~400
1.6~2.0nF
正因为余震时间的存在,所以该系统并不能够在超声波发射器发射超声波之后,就马上记录时间。
因此该系统存在着一个理论上的最小测距距离。
根据声波的传播速度340米/秒,可以计算出最小的测距距离为17cm。
3.2发射器电路
图3-1发射器电路图
在图3-1中,由单片机发射脉冲信号,由于发射器的工作频率是40KHZ,所以,单片机输出40KHZ的脉冲信号,经三极管放大后对发射器进行共振。
产生预期的脉冲信号。
四超声波接受模块
4.1超声波接受模块电路
图4-1超声波接受模块电路图
在图4-1所示电路中,接收头采用与发射器相匹配的R40-14C,将超声波调制信号脉冲变为交变电压信号,因为接收头接收到的电压信号是非常微弱的,不能被单片机所测量,所以要经过运算放大器DC1A和DC1B两级放大后加至DC2。
运算放大器的放大倍数分别由R3,R4和R5,R6决定。
本系统采用的是反向放大器。
DC2是带有锁相环的音频译码集成块LM567,其内部的压控振荡器的中心频率fo=1/1.1*R8*C3,电容C4决定其带宽。
调节R8到一个合适的电阻,则LM567输入信号大于25mV,输出端8脚由高电平越变为低电平,这样产生一个跳变,触发器下降沿有效,作为中断请求信号,送至单片机处理并执行中断程序。
测距电路的输出端接至单片机的INTO端口。
在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。
当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。
4.2LM567音频译码器
图4-2LM567音频译码器图
LM567的主要技术参数见表4-1
表4-1LM567的主要技术参数
中心频率
电源电压
静态工作电流
最高工作频率
8脚最大吸收电流
0.01~500KHz
5V~18V
8mA
500KHz
100mA
LM567由相位比较器、压控振荡器、正交相位检波器、逻辑输出放大器等几部分构成。
有三种基本功能,分别是选频、调制和解调。
在本系统中,用到了它的选频功能。
具体引脚连接见图4-3。
图4-3LM567引脚连接图
如果在第3脚输入音频信号的调制信号,且调制信号的中心频率fo与LM567内部压控震荡器中心频率fo相同,第2脚将输出调制信号的解调信号。
内部压控震荡中心频率fo≈1/1.1*R*C。
其中R表示5脚外接电阻,C表示6脚外接电容。
因为本系统的超声波换能器的中心震荡频率是40KHz,所以fo=40KHz.其①脚②脚通常分别通过电容器接地,形成输出滤波网络和环路单级低通滤波网络。
②脚所接电容决定锁相环路的捕捉带宽:
电容值越大,环路带宽越窄。
①脚所接电容的容量应至少是②脚电容的2倍。
③脚是输入端,要求输入信号≥25mV。
⑧脚是逻辑输出端,其内部是一个集电极开路的三极管,允许最大电流为100mA。
LM567的工作电压为4.75~9V,工作频率从直流到500kHz,静态工作电流约8mA。
五AT89S51单片机
5.1单片机功能基本介绍
AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准8051指令系统及引脚.它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中。
具体引脚图见图5-1。
图5-1AT89S51引脚图
AT89S51芯片的40个引脚功能为:
VCC电源电压。
GND接地。
RST复位输入。
当RST变为高电平并保持2个机器周期时,将使单片机复位。
WDT溢出将使该引脚输出高电平,设置SFRAUXR的DISRTO位(地址8EH)可打开或关闭该功能。
DISKRTO位缺省为RESET输出高电平打开状态。
XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2来自反向振荡放大器的输出。
P0口一组8位漏极开路型双向I/O口。
也即地址/数据总线复用口。
作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
Flash编程和程序校验期间,P1接收低8位地址。
P1口部分端口引脚及功能如表5-1所示。
表5-1P1口特殊功能
P1口引脚
特殊功能
P1.5
MOSI(用于ISP编程)
P1.6
MOSI(用于ISP编程)
P1.7
SCK(用于ISP编程)
P2口一个带内部上拉电阻的8位双向I/O口。
P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器时,P2口线上的内容在整个访问期间不改变。
Flash编程和程序校验期间,P2亦接收低8位地址。
P3口一个带内部上拉电阻的8位双向I/O口。
P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写“1”时,它们被内部的上拉电阻把拉到高电并可作输入端口。
作输入端口使用时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表5-2所示。
P3口还接收一些用于Flash闪速存储器编程和程序校验期间的控制信号。
表5-2
P3口引脚
特殊功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0外部输入)
P3.5
T1(定时器1外部输入)
P3.6
(外部数据存储器写选通)
P3.7
(外部数据存储器读选通)
程序储存允许输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次
有效,即输出两个脉冲。
当访问外部数据存储器,没有两次有效的
信号。
外部访问允许。
欲使CPU仅访问外部程序存储器,
端必须保持低电平,需注意的是:
如果加密位LB1被编程,复位时内部会锁存
端状态。
Flash存储器编程时,该引脚加上+12V的编程电压VPP。
六报警电路及电源电路
6.1报警电路
当单片机检测到在被检测区域有车辆时,就是要对驾驶员进行语音提醒,该系统采用最简单的“滴、滴”声报警,当被检测区域没有车辆时,报警关闭。
具体电路见图6-1。
图6-1报警电路图
6.2时钟电路
单片机工作需要一个稳定的时钟频率,具体的时钟电路见图6-2,其中电阻R10取10欧姆,电容C8取10uF。
图6-2时钟电路图
七整体电路
7.1系统电路图
该系统的全部功能部件连接图,见图7-1。
图7-1整体电路图
八编码实现及软件流程图
8.1部分代码
40KHz脉冲的产生与超声波发射。
测距系统中的超声波传感器采用T/R40的压电陶瓷传感器,它的工作电压是40KHz的脉冲信号,这由单片机执行下面程序来产生。
puzel:
mov14h,#12h;超声波发射持续200ms
here:
cplp1.0;输出40kHz方波
nop;
nop;
nop;
djnz14h,here;
ret
前方测距电路的输入端接单片机P1.0端口,单片机执行上面的程序后,在P1.0端口输出一个40KHz的脉冲信号,经过三极管T放大,驱动超声波发射头,发出40KHz的脉冲超声波,且持续发射200ms。
超声波的接收与处理接收头采用R40,将超声波调制脉冲变为交变电压信号,经运算放大器DC1A和DC1B两极放大后加至带有锁定环的音频译码集成块LM567,内部的压控振荡器的中心频率f0=1/1.1*R8*C3,电容C4决定其锁定带宽。
调节R8在发射的载频上,则LM567输入信号大于25mV,输出端8脚由高电平跃变为低电平,作为中断请求信号,送至单片机处理。
receive1:
pushpsw
pushacc
clrex1;关外部中断1
jnbp1.1,right;P1.1引脚为0,转至右测距电路中断服务程序
jnbp1.2,left;P1.2引脚为0,转至左测距电路中断服务程序
return:
SETBEX1;开外部中断1
popAcc
poppsw
reti
right:
...;右测距电路中断服务程序入口
ajmpReturn
left:
...;左测距电路中断服务程序入口
ajmpReturn
计算超声波传播时间在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。
当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。
其部分源程序如下:
RECEIVE0:
PUSHPSW
PUSHACC
CLREX0;关外部中断0
MOVR7,TH0;读取时间值
MOVR6,TL0
CLRC
MOVA,R6
SUBBA,#0BBH;计算时间差
MOV31H,A;存储结果
MOVA,R7
SUBBA,#3CH
MOV30H,A
SETBEX0;开外部中断0
POPACC
POPPSW
RETI
8.2软件流程图
图8-2软件流程图
九结论
本系统基本实现了对于汽车盲区有无车辆,以及车辆距离的探测任务。
但是在设计上,由于能力的限制还存在着一些问题,对于正常情况下,声波的传播速度是340米/秒,但是随着温度的变化,声波的传播速度是会改变的,然而在该系统中并没有加入一个温度补偿模块,可能在应用中会存在着一些微小的误差。
另外,该系统有着很强的功能扩展性,例如在车身的不同位置,安装若干个超声波探测器,就可以对车辆进行全方位的探测。
这些探测器不仅能够识别其他车辆的位置,还可以探测出现行的速度。
然后把这些信息汇总,传输给单片机进行分析。
再根据设计好的模型来判断,自身车辆的危险系数。
如果危险系数过大,该系统将强行对车速进行限制,反之则不做任何限制。
这样的话,汽车的智能化水平将大大提升,人为失误造成的车祸将减少。
总之,单片机技术的发展将是朝着智能化的目标前进,而遥感探测技术是智能化发展的坚实基础,这两项技术的结合对于科技的发展起着重要的作用。
谢辞
毕业设计是对大学四年所学的一次全面的总结,在将近半年的设计工作中,出现了许许多多的问题和疑难情况,这些问题如果没有老师和同学们的帮助,是很难在短时间内克服的。
通过本次毕业设计,我认识到了自身存在的很多的问题,以前的学习注重书本上条条框框,只是单纯的记住就觉得可以完成任务了,但是现在看来,书本上的知识和实例并不一定就是最好的,它只是一个例子而已,具体的问题还需要自己在课下进行深入的思考。
尤其是要联系实际,多和有经验的设计人员或爱好者进行沟通。
实际的问题总是错综复杂,自己的设计虽然能完成任务,但这还不是“科学技术转化为生产力”,还必须要考虑如何精简电路,降低功耗,降低生产成本以及提高使用寿命等实际问题,这对自己的提升是非常有帮助的。
在这次毕业设计中,我充分的体会到了独立思考的乐趣,把一个原本不会的问题,通过网上查资料,请教老师的方式弄明白之后的那种心情,是我难以用语言表达的。
我要真诚的感谢我的辅导老师,管印超老师,没有他的大力帮助和细心的辅导本次毕业设计是不会和大家见面的。
参考文献
[1]徐安,陈耀,李锐华等.微型计算机控制.科学出版社,2004年4月
[2]杨德麟,红外测距仪及检测.中国测绘出版社,1995年6月,350页~356页
[3]童诗白,华成英.模拟电子技术基础.北京:
高等教育出版社,2001年1月,446页~456页
[4]王秀杰,张畴光.模拟集成电路应用.西北工业大学出版社,1994年5月,154页~160页
[5]邱关源.电路.北京:
高等教育出版社,1999年6月,231页~257页
[6]赵晓安.MCS-51单片机原理及应用.天津:
天津大学出版社,2001年8月
[7]徐爱钧.KeilC51V7.0单片机高级语言编程与uVision2应用实践.电子工业出版社,2004年7月.
[8]Mo,Chuanmeng,Feng,Xiaoyun.DoubleCANcommunicatingbuildingblockbasedonembeddedsystemμC/OS-Ⅱ.
[9]周坚.单片机轻松入门.北京航空航天大学出版社,2007年5月
[10]孙传友.感应技术基础.电子工业出版社,2002年1月