汽车行业汽车倒车防撞报警电路设计.docx
《汽车行业汽车倒车防撞报警电路设计.docx》由会员分享,可在线阅读,更多相关《汽车行业汽车倒车防撞报警电路设计.docx(23页珍藏版)》请在冰豆网上搜索。
汽车行业汽车倒车防撞报警电路设计
南京工程学院继续教育学院
毕业设计说明书(论文)
作者:
袁强学号:
1434181436
辅导站:
徐州函授站
专业:
机电一体化技术
题目:
汽车倒车防撞报警电路设计
指导者:
王书满
2017年3月
摘要
目前我国经济飞速发展,越来越多的人拥有了自己的汽车,同时由泊车和倒车所引发的事故也越来越多。
这些事故常常给驾驶员带来许多的麻烦,因此,有助于驾驶员泊车和倒车的倒车雷达应运而生。
倒车雷达全称叫“倒车防撞雷达”,也叫“泊车辅助装置”,是汽车泊车安全辅助装置,能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车和启动车俩时前后左右探视所引起的困扰,并帮助驾驶员扫除视野的死角和视线模糊的缺陷。
本文介绍了以AT89S52单片机为核心的一种低成本、高精度、微型化,并有数字显示和声光报警功能的倒车雷达系统,该倒车雷达根据超声波测距原理研制,采用温度补偿技术、开机自检技术和优化的软硬件技术,将测得的结果送至数码管显示,同时进行三级声光报警。
驾驶员只需坐在驾驶室就能做到心里有数,极大的提高了泊车和倒车时的安全和效率。
关键词:
倒车雷达;超声波;单片机AT89S52。
第一章倒车雷达工作原理
1.1单片机的发展及其应用……………………………………1
1.2超声波测距…………………………………………1
1.3超声波测距原理………………………………………2
1.4超声波倒车雷达系统工作原理…………………………3
1.5超声波倒车雷达的芯片选择……………………………3
1.6超声波倒车雷达的工作原理…………………………5
第二章系统硬件设计与相应的软件设计
2.1倒车语音及报警电路及控制程序………………………6
2.2超声波发射电路与接收电路及其距离测算程序………7
2.3超声波检测接受电路…………………………………7
2.4超声波测距仪的算法设计……………………………8
2.5距离计算程序…………………………………………8
2.6倒车语音电路和报警电路及其控制程序……………………9
2.6.1倒车语音电路………………………………………14
2.6.2倒车语音及报警控制程序…………………………16
第三章主程序
3.1主程序…………………………………………………18
3.2超声波发生子程序和超声波接收中断程序………………20
第四章安装调试及分析
4.1硬件部分………………………………………………23
4.2软件实现与操作……………………………………………25
第五章测距仪改进的设想………………………………………26
结论………………………………………………………………27
参考文献…………………………………………………………28
致谢………………………………………………………………29
第一章倒车雷达工作原理
1.1、单片机的发展及其应用
单片机又称微控制器,是在一块硅片上集成了各种部件化微型计算机,这些部件包括中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路。
单片机体积小、重量轻、具有很强的灵活性而且价格不高,越来越得到广泛的应用。
8051在小中型应用场合很常见,已成为单片机领域的实际标准。
80年代中期,Intel公司将8051内核使用权以专利互换或出售形式转给世界许多著名IC制造厂商,如PHILIPS、西门子、AMD、OKI、NEC、Atmel等,这样8051就变成有众多制造厂商支持的、发展出上百个品种的大家族。
90年代,PHILIPS推出支持16位计算的X4系列。
XA系列是16位单片机,又可完全兼容8051的指令系统。
Intel推出的80C51也是与8051在机器代码级兼容,这样保证了8051用户到21世纪技术的领先性。
随着硬件的发展,8051软件工具已有C级编译器及实时多任务操作系统(RIOS),单片机的程序设计更简单、更可靠、实时性更强。
因而8051系列是单片机教学的首选机型。
而有内部可擦写RAM的89C51/52是目前我们常用的芯片。
1.2超声波测距
1.2.1超声波测距的基本原理
1、超声波发生器
为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。
总体上讲,超声波发生器可以分为两大类:
一类是用电气方式产生超声波,一类是用机械方式产生超声波。
电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。
它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。
目前较为常用的是压电式超声波发生器。
2、压电式超声波发生器原理
压电式超声波发生器实际上是利用压电晶体的谐振来工作的。
超声波发生器内部结构如图1所示,它有两个压电晶片和一个共振板。
当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带
动共振板振动,便产生超声波。
反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。
1.3超声波测距原理
超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:
s=340t/2
1.3.1认识超声波
超声波是指振动频率大于20KHz以上的,其每秒的振动次数(频率)甚高,超出了人耳听觉的上限(20000Hz),人们将这种听不见的声波叫做超声波。
超声和可闻声本质上是一致的,它们的共同点都是一种机械振动,通常以纵波的方
式在弹性介质内会传播,是一种能量的传播形式,其不同点是超声频率高,波长短,在一定距离内沿直线传播具有良好的束射性和方向性,目前腹部超声成象所用的频率范围在2∽5MHz之间,常用为3∽3.5MHz(每秒振动1次为1Hz,1MHz=106Hz,即每秒振动100万次,可闻波的频率在16-20,000HZ之间)。
1.3.2利用超声波测距
超声波测距是单片机控制超声波传感器发射出超声波束,遇到障碍后返回,然后接收它的回波,利用发、收过程中产生的时间差,就可以计算出前方物体离超声波传感器的实际距离。
设计为了能测量汽车不同位置障碍物距离,设计成多传感器测距。
经分析可知:
频率为400KHZ左右的超声波在空气中传播的效率最佳,因此,为了方便处理,发射的超声波被调制成40KHZ左右、具有一定间隔的调制脉冲波信号,如图1所示。
1.4超声波倒车雷达系统工作原理
倒车雷达只需要在汽车倒车时工作,为驾驶员提供汽车后方的信息。
由于倒车时汽车的行驶速度较慢,和声速相比可以认为汽车是静止的,因此在系统中可以忽略多普勒效应的影响。
在许多测距方法中,脉冲测距法只需要测量超声波在测量点与目标间的往返时间,实现简单,因此本系统采用了这种方法。
1.4.1系统工作原理框图
如图A所示,驾驶员将手柄转到倒车档后,系统自动启动,超声波发送模块向后发射40kHz的超声波信号,经障碍物反射,由超声波接收模块收集,进行放大和比较,单片机AT89C2051将此信号送入显示模块,同时触发语音电路,发出同步语音提示,当与障碍物距离小于1m、0.5m、0.25m时,发出不同的报警声,提醒驾驶员停车。
图A系统工作原理框图
1.5超声波倒车雷达的芯片选择
1单片机控制芯片
AT89C2051简介:
AT89C2051是一个低电压,高性能CMOS8位单片机,片内含2kbytes的可反复擦写的只读Flash程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大AT89C2051单片机可为您提供许多高性价比的应用场合。
AT89C2051是一个功能强大的单片机,但它只有20个引脚,15个双向输入/输出(I/O)端口,其中P1是一个完整的8位双向I/O口,两个外中断口,两个16位可编程定时计数器,两个全双向串行通信口,一个模拟比较放大器。
同时AT89C2051的时钟频率可以为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口,系统唤醒后即进入继续工作状态。
省电模式中,片内RAM将被冻结,时钟停止振荡,所有功能停止工作,直至系统被硬件复位方可继续运行。
主要功能特性:
兼容MCS51指令系统
2k可反复擦写(>1000次)FlashROM
5个双向I/O口
6个中断源
两个16位可编程定时/计数器
2.7-6.V的宽工作电压范围
时钟频率0-24MHz
128x8bit内部RAM
两个外部中断源
两个串行中断
可直接驱动LED
两级加密位
低功耗睡眠功能
内置一个模拟比较放大器
可编程UARL通道
软件设置睡眠和唤醒功能
1.6超声波倒车雷达的工作原理
倒车雷达只需要在汽车倒车时工作,为驾驶员提供汽车后方的信息。
由于倒车时汽车的行驶速度较慢,和声速相比可以认为汽车是静止的,因此在系统中可以忽略多普勒效应的影响。
在许多测距方法中,脉冲测距法只需要测量超声波在测量点与目标间的往返时间,实现简单,因此本系统采用了这种方法。
如图A所示,驾驶员将手柄转到倒车档后,系统自动启动,超声波发送模块向后发射40kHz的超声波信号,经障碍物反射,由超声波接收模块收集,进行放大和比较,单片机AT89C2051将此信号送入显示模块,同时触发语音电路,发出同步语音提示,当与障碍物距离小于1m、0.5m、0.25m时,发出不同的报警声,提醒驾驶员停车。
图A系统工作原理框图
第二章系统硬件设计与相应的软件设计
2.1倒车语音及报警电路及控制程序
单片机采用89S51或其兼容系列。
采用12MHz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。
单片机用P1.0端口输出超声波转化器所需的40KHz方波信号,利用外中断0口检测超声波接受电路输出的返回信号。
显示电路采用简单实用的4位共阳LED数码管,段码用74LS245驱动,位码用PNP9012三极管驱动。
单片机系统及显示电路如下图所示:
2.2超声波发射电路与接收电路及其距离测算程序
发射电路主要由反向器74LS04和超声波发射换能器T构成,单片机P1.0端口输出的40kHz方渡信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后进到超声波换能器的另一个电极。
用这种推挽形式将方渡信号加到超声波换能器两端,可以提高超声波的发射强度。
输出端采用两个反向器并联,用以提高驱动能力。
上拉电阻R10、R11,一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。
压电超声波转换器的功能:
利用压电晶体谐振工作。
内部结构上图所示,它有两个压电晶片和一个共振板。
当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动产生超声波,这时它就是一超声波发生器;如没加电压,当共振板接受到超声波时,将压迫压电振荡器作振动,将机械能转换为电信号,这时它就成为超声波接受转换器。
超声波发射转换器与接受转换器其结构稍有不同。
2.3超声波检测接受电路
参考红外转化接收期刊的电路采用集成电路CX20106J4,这是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。
考虑到红外遥控常用的载波频率38KHz与测距超声波频率40KHz较为接近,可以利用它作为超声波检测电路。
实验证明其具有很高的灵敏度和较强的抗干扰能力。
适当改变C4的大小,可改变接受电路的灵敏度和抗干扰能力。
2.4超声波测距仪的算法设计
下图示意了超声波测距的原理
即超声波发生器T在某一时刻发出一个超声渡信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。
这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。
距离的计算公式为:
d=s/2=(c×t)/2
其中d为被测物与测距器的距离,s为声波的来回的路程,c为声速,t为声波来回所用的时间。
2.5距离计算程序:
***************************************************距离计算程序(=计数值*17/1000cm)***************************************************
work:
PUSHACC
PUSHPSW
PUSHB
MOVPSW,#18h
MOVR3,45H
MOVR2,44H
MOVR1,#00D
MOVR0,#17D
LCALLMUL2BY2
MOVR3,#03H
MOVR2,#0E8H
LCALLDIV4BY2
LCALLDIV4BY2
MOV40H,R4
MOVA,40H
JNZJJ0
MOV40H,#0AH;最高位为零,不点亮
JJ0:
MOVA,R0
MOVR4,A
MOVA,R1
MOVR5,A
MOVR3,#00D
MOVR2,#100D
LCALLDIV4BY2
MOV41H,R4
MOVA,41H
JNZJJ1
MOVA,40H;次高位为0,先看最高位是否为不亮
SUBBA,#0AH
JNZJJ1
MOV41H,#0AH;最高位不亮,次高位也不亮
JJ1:
MOVA,R0
MOVR4,A
MOVA,R1
MOVR5,A
MOVR3,#00D
MOVR2,#10D
LCALLDIV4BY2
MOV42H,R4
MOVA,42H
JNZJJ2
MOVA,41H;次次高位为0,先看次高位是否为不亮
SUBBA,#0AH
JNZJJ2
MOV42H,#0AH;次高位不亮,次次高位也不亮
JJ2:
MOV43H,R0
POPB
POPPSW
POPACC
RET
****************************************************
*两字节无符号数乘法程序*
****************************************************
R7R6R5R4<=R3R2*R1R0
MUL2BY2:
CLRA
MOVR7,A
MOVR6,A
MOVR5,A
MOVR4,A
MOV46H,#10H
MULLOOP1:
CLRC
MOVA,R4
RLCA
MOVR4,A
MOVA,R5
RLCA
MOVR5,A
MOVA,R6
RLCA
MOVR6,A
MOVA,R7
RLCA
MOVR7,A
MOVA,R0
RLCA
MOVR0,A
MOVA,R1
RLCA
MOVR1,A
JNCMULLOOP2
MOVA,R4
ADDA,R2
MOVR4,A
MOVA,R5
ADDCA,R3
MOVR5,A
MOVA,R6
ADDCA,#00H
MOVR6,A
MOVA,R7
ADDCA,#00H
MOVR7,A
MULLOOP2:
DJNZ46H,MULLOOP1
RET
****************************************************
*四字节/两字节无符号数除法程序*
****************************************************
R7R6R5R4/R3R2=R7R6R5R4(商)...R1R0(余数)
DIV4BY2:
MOV46H,#20H
MOVR0,#00H
MOVR1,#00H
DIVLOOP1:
MOVA,R4
RLCA
MOVR4,A
MOVA,R5
RLCA
MOVR5,A
MOVA,R6
RLCA
MOVR6,A
MOVA,R7
RLCA
MOVR7,A
MOVA,R0
RLCA
MOVR0,A
MOVA,R1
RLCA
MOVR1,A
CLRC
MOVA,R0
SUBBA,R2
MOVB,A
MOVA,R1
SUBBA,R3
JCDIVLOOP2
MOVR0,B
MOVR1,A
DIVLOOP2:
CPLC
DJNZ46H,DIVLOOP1
MOVA,R4
RLCA
MOVR4,A
MOVA,R5
RLCA
MOVR5,A
MOVA,R6
RLCA
MOVR6,A
MOVA,R7
RLCA
MOVR7,A
RET
delay_250:
pushpsw
push07h
movr7,#0ffh
delay_250_1:
nop
nop
nop
nop
djnzr7,delay_250_1
pop07h
poppsw
ret
END
2.6倒车语音电路和报警电路及其控制程序
SC1060是本公司最新开发应用于倒车雷达等的新型语音芯片,外围元件少,电路简单,控制方便,成本低.
引脚功能
脚号
名称
功能
1
CNT
脉冲触发信号
2
RST
脉冲计数复位
3
BUSY
工作状态反馈
4
IO
NC
5
VSS
电源负
6
PWM2/DAC
DAC信号输出
7
VDD
电源正
8
PWM1
NC
注:
NC脚悬空不接.
电路原理图
外接功放应用电路
2.6.2倒车语音及报警控制程序
报警设备是用单片机控制脉冲,在一定的距离让发光二极管发光,来作为报警信号,提示具体位置。
1.声光报警:
mm0:
MOVA,43h;
cjneA,#00h,nn1
mm1:
MOVA,42h;
cjneA,#00h,qq1
ajmpmm2
qq1:
cjnea,#05h,nn1
mm2:
MOVA,41h;
cjneA,#01h,qq2
lcallBJ1
qq2:
cjnea,#02h,nn1
lcallbj1
nn1:
setbet0
movth0,00h
movtl0,00h
SETBTR1;重新开启测距定时器
SETBEA
SJMPStart1
BJ1:
clrp1.6;40KHZ
lcallDELAY20MS
lcallDELAY20MS
lcallDELAY20MS
lcallDELAY20MS
lcallDELAY20MS
setbp1.6
RET
其他的硬件电路
复位开关电路
第三章主程序
主程序首先是对系统环境初始化,设置定时器TO工作模式为16位定时计数器模式,置位总中断允许位EA并给显示端口PO和P2清O。
然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声渡从发射器直接传送到接收器引起的直射渡触发,需要延时约0.lms(这也就是超声波测距器会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。
由于采用的是12MHz的晶振,计数器每计一个数就是1μs,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式(4-2)计算,即可得被测物体与测距器之间的距离,设计时取20℃时的声速为344m/s(不同温度下超声波产波速率不同)则有:
D=(c×t)/2=172TO/10000cm(4-2)
其中TO为计数器T0的计数值。
测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。
为了有利于程序结构化和容易计算出距离,主程序采用c语言编写。
下图为主程序流程图。
主程序流程图
3.1主程序如下:
********************************************
*主程序*
********************************************
START:
MOVSP,#4FH
MOVR0,#40H;40H-43H为显示数据存放单元(40H为最高位)
MOVR7,#0BH
CLEARDISP:
MOV@R0,#00H
INCR0
DJNZR7,CLEARDISP
MOV20H,#00H
MOVTMOD,#11H;T1为T0为16位定时器
MOVTH0,#00H;65毫秒初值
MOVTL0,#00H
MOVTH1,#00H
MOVTL1,#00H
MOVP0,#0FFH
MOVP1,#0FFH
MOVP2,#0FFH
MOVP3,#0FFH
MOVR4,#04H;超声波肪冲个数控制(为赋值的一半)
SETBPX0
SETBET1
SETBEA
SETBTR1;开启测距定时器
start1:
LCALLDISPLAY
JNB00H,START1;收到反射信号时标志位为1
CLREA
LCALLWORK;计算距离子程序
clrEA
MOVR2,#32h;#64H;测量间隔控制(约4*100=400MS)
LOOP:
LCALLDISPLAY
DJNZR2,LOOP
CLR00H
setbet0
movth0,00h
movtl0,00h
SETBTR1;重新开启测距定时器
SETBEA
SJMPStart1
3.2超声波发生子程序和超声波接收中断程序
超声波发生子程序的作用是通过P1O端口发送2个左右超声波脉冲信号(频率约40kHz的方波),脉冲宽度为12μs左右,同时把计数器T0打开进行计时。
超声波发生子程序较简单,但要求程序运行时间准确,所以采用汇编语言编程。
下图所示流程图,
超声波测距器主程序利用外中断O检测返回超声波信号,一旦接收到返回超声波信号(即INT0引脚出现低电平),立即进入中断程序。
进入该中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。
如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志宇赋值2以表示本次测距不成功。
程序如下:
超声波测距器
;IC:
AT89C51
;OSCCAL:
XT