智能仪器完结-基于超声波定位原理的停车辅助系统 - 图文(4)

2020-04-14 02:40

王治国:基于超声波原理的停车辅助系统

后经3位数码管将测得的结果显示出来。 3.2.1 超声波测距单片机系统

超声波测距单片机系统主要由:AT89S51单片机、晶振、复位电路、电源滤波部份构成。由K1,K2组成测距系统的按键电路。用于设定超声波测距报警值。如图3.2。

图3.2 超声波单片机系统 Fig. 3.2 Ultrasonic SCM system

3.2.2 超声波发射、接受电路

超声波发射如图3.3,接收电路如图3-4。超声波发射电路由电阻R1、三极管BG1、超声波脉冲变压器B及超声波发送头T40构成,超声波脉冲变压器,在这里的作用是提高加载到超声波发送头两产端的电压,以提高超声波的发射功率,从而提高测量距离。接收电路由BG1、BG2组成的两组三级管放大电路构成;超声波的检波电路、比较整形电路由C7、D1、D2及BG3组成。

40kHz的方波由AT89S51单片机的P2.7输出,经BG1推动超声波脉冲变压器,在脉冲变压器次级形成60VPP的电压,加载到超声波发送头上,驱动超声波发射头发射超声波。发送出的超声波,遇到障碍物后,产生回波,反射回来的回波由超声波接收头接收到。由于声波在空气中传播时衰减,所以接收到的波形幅值较低,经接收电路放大,整形,最后输出一负跳变,输入单片机的P3脚。

- 9 -

王治国:基于超声波原理的停车辅助系统

图3.3 超声波发送电路

Fig. 3.3 Ultrasonic transmitter circuit t

该测距电路的40kHz方波信号由单片机AT89S51的P2.7发出。方波的周期为1/40ms,即25μs,半周期为12.5μs。每隔半周期时间,让方波输出脚的电平取反,便可产生40kHz方波。由于单片机系统的晶振为12M晶振,因而单片机的时间分辨率是1μs,所以只能产生半周期为12μs或13μs的方波信号,频率分别为41.67kHz和38.46kHz。本系统在编程时选用了后者,让单片机产生约38.46kHz的方波。

图3.4 超声波测距接收电路

Fig. 3.4 Ultrasonic Ranging receiving circuit

由于反射回来的超声波信号非常微弱,所以接收电路需要将其进行放大。

- 10 -

王治国:基于超声波原理的停车辅助系统

接收电路如图3.4所示。接收到的信号加到BG1、BG2组成的两级放大器上进行放大。每级放大器的放大倍数为70倍。放大的信号通过检波电路得到解调后的信号,即把多个脉冲波解调成多个大脉冲波。这里使用的是I N 4148检波二极管,输出的直流信号即两二极管之间电容电压。该接收电路结构简单,性能较好,制作难度小。 3.2.3 显示电路

本系统采用三位一体L E D 数码管显示所测距离值,如图3.5。数码管采用动态扫描显示,段码输出端口为单片机的P2口,位码输出端口分别为单片机的P3.4、P3.2、P3.3口,数码管位驱运用PNP三极管S9012三极管驱动。

图3.5 显示单元

Fig. 3.5 The display unit

3.3.4 供电电路

本测距系统由于采用的是LED数码管用为显示方式,正常工作时,系统工作电流约为30-45mA,为保证系统统计的可靠正常工作,系统的供电方式主要交流AC6-9伏,同时为调试系统方便,供电方式考虑了第二种方式,即由USB口供电,调试时直接由电脑USB口供电。6伏交流是经过整流二极管D1-D4整流成脉动直流后,经虑波电容C1虑波后形成直流电,为保证单片机系统的可电,供电路中由5伏的三端称压集成电路进行稳压后输出5伏的真流电供整个系统用电,为进一步提高电源质量,5伏的直流电再次经过C3、C4滤波。

- 11 -

王治国:基于超声波原理的停车辅助系统

图3.6 供电电路 Fig. 3.6 Power supply circuit

3.2.5 报警输出电路

为提高测测距系统的实用性,本测距系统的报警输出提供开关量信号及声响信号两种方式。

方式一:报警信号由单片机P3.1端口输出,继电器输出,可驱动较大的负载,电路由电阻R6、三极管BG9、继电器JDQ组成,当测量值低于事先设定的报警值时,继电器吸合,测量值高于设定的报警值时,继电器断开。

方式二:报警信号由单片机P0.2口输出,提供声响报警信号,电路由电阻R7、三极管BG8、蜂鸣器BY组成,当测量值低于事先设定的报警值时,蜂鸣器发出“滴、滴、滴?..”报警声响信号,测量值高于设定的报警值时,停止发出报警声响。报警输出电路如图3-7。

图3.6 报警电路 Fig. 3.6 Alarm circuit

4 系统软件设计

4.1 主程序设计

- 12 -

王治国:基于超声波原理的停车辅助系统

超声波测距的软件设计主要由主程序、超声波发生子程序、超声波接收程序及显示子程序组成。超声波测距的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言编程。

主程序首先是对系统环境初始化,设定时器0为计数,设定时器1定时。置位总中断允许位EA。进行程序主程序后,进行定时测距判断,当测距标志位ec=1时,测量一次,程序设计中,超声波测距频度是4-5次/秒。测距间隔中,整个程序主要进行循环显示测量结果。当调用超声波测距子程序后,首先由单片机产生4个频率为38.46kHz超声波脉冲,加载的超声波发送头上。超声波头发送完送超声波后,立即启动内部计时器T0进行计时,为了避免超声波从发射头直接传送到接收头引起的直射波触发,这时,单片机需要延时约1.5 -2ms时间(这也就是超声波测距仪会有一个最小可测距离的原因,称之为盲区值)后,才启动对单片机P3.5脚的电平判断程序。当检测到P3.5脚的电平由高转为低电平时,立即停止T0计时。由于采用单片机采用的是12 MHz的晶振,计时器每计一个数就是1μs,当超声波测距子程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式(2)计算,即可得被测物体与测距仪之间的距离。

设计时取15℃时的声速为340 m/s则有: d=(c×t)/2=172×T0/10000cm其中,T0为计数器T0的计算值。 测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。

4.2 超声波测距子程序及其流程图

void wdzh() {

i=yzsj; {

- 13 -

TR0=0; TH1=0x00; TL1=0x00; csbint=1; sx=0; delay(1700); csbfs(); csbout=1; TR1=1;

while(i--)


智能仪器完结-基于超声波定位原理的停车辅助系统 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:普罗米修斯盗火

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: