1、2011笠第6期仪表技术与传感器Instrument Technique and Sensor201lNo6基于STC89C52的超声波测距防撞系统设计郭 清(哈尔滨工程大学工程训练中心,黑龙江哈尔滨150001)摘要:为了实现超声波测距并在达到危险距离时实现自动减速,设计研发一款基于STC89C52单片机的超声波测距防撞系统。采用74LS04、CX20106A为核心器件实现测距功能,LCDl602显示测量距离。由于超声波受外界温度影响较大,提出一种温度补偿电路,可有效提高测距精度,且硬件开销不大。测试结果表明,该测距系统满足设计要求,具有性价比高及系统性能稳定等优点。关键词:超声波;温度补偿
2、;防撞;测距中图分类号:TP368 文献标识码:A 文章编号:10021841(2011)06007404Ultrasonic Ranging and Anti-collision System Based on STC89C52GUO Qing(Engineering Training Center,Harbin Engineering University,Harbin 150001,China)Abstract:This paper designed a kind of ultrasonic ranging and anticollision system based on STC89C
3、52 MCU,to achieve ultrasonie ranging and automatic deceleration in dangerous distanceThe measurement unit consisted of 74LS04CX20106A as corecomponent,using LCDl602 to display measuring distanceIt presented a temperature compensation circuit,for ultrasound influ-eneed by external temperatureThis met
4、hod Calleffectively improve measurement accuracy with less hardwareExperimental resultsshow that the ranging system meets the design requirements,with the advantages of COSteffective and system stability,eteKey words:ultrasonic;temperature compensation;crash;rangingO引言从20世纪80年代开始,世界发达国家就在积极地进行关于汽车安全
5、方面的研究。目前国内外已有很多关于汽车自适应驾驶理论和实验,汽车紧急避障是应用计算机模拟驾驶员的主动控制过程,是目前研究开发的一个重要课题。能够实现汽车防撞的传感器主要有超声波、红外传感器、微波雷达等口J。超声波传感器相对其他传感器而言,具有指向性强、能量消耗缓慢、在介质中传播距离远、不受环境限制等优点口J。利用超声波检测迅速、计算简单、易于做到实时控制,并且测量精度能够达到工业实用要求。基于智能程控车为载体,研发超声波测距防撞系统可应用于汽车倒车、储能飞轮超声波检测、动发一体机超声波测速以及一些工业现场的位置监控H J。为了试验超声波测距防撞系统的控制精度,使用程控车来模拟驾驶员操作,在铝制
6、车底板上加装型号为TR40160的超声波传感器,对车身周围物体实时测距,将测量数据显示在LCDl602上,由单片机检测的数据实现对程控车的智能防撞控制。该系统可在车与前方车辆间距小于10 m时自动减速并亮灯蜂鸣提示,以将交通危险系数降到最低。1系统设计原理采用超声波对障碍物的检测,当超声波接收端接收到反射波时说明该方向上有障碍物,从而实现自动转向以避开前进方向上的障碍物。超声波的速度相对于光速小得多,其传播时间基金项目:中央高校基本科研业务费专项资金资助项目(HEUCFl01706)收稿日期:20100930 收修改稿日期:20110326较易检测”1。因其避免了传感器直接与介质接触,是一种实
7、用的非接触测量方法。系统主要由STC89C52单片机最小系统、超声波发射电路和超声波检测接收电路、温度补偿电路及显示电路组成,如图1所示。根据波的反射原理,利用检测声波发出到接收被测物反射回波的时间来测量距离。旧1超声波为直线传播方式,在某一方向发射超声波,通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t由于超声波是一种声波,其速度c与温度有关1,利用温度传感器DSl8820测得温度r,根据公式C=3315+o607 T,可确定当前温度下的波速c波速确定后,再根据s=ct2,由LCDl602显示计算得到的距离值。超声波在空气中传播速度为33145 ms,单片机使
8、用12 MHz晶振,理论上系统测量精度可达到舢级。如想要更高的测距精度,可通过温度补偿方法加以校正。圈1系统结构原理豳2超声波发生和接收超声波发生和接收的实现方法:通过单片机P10端口发送超声波脉冲信号(频率约40 kHz方波),脉冲宽度为12岬,发射电路开始工作的同时启动单片机内部定时器T0计时,定时器计数功能记录超声波发射时间和收到反射波时间。使用外部中断INT0检测返回超声波信号,当接收到返回超声波信号(即INTO引脚出现低电平),在INTO端产生一个中断请求信万方数据第6期 郭清:基于STC89C52的超声波测距防撞系统设计 75号,单片机响应外部中断请求,执行外部中断服务子程序,进入
9、中断后先关闭计时器To停止计时,测得时间t,如图2所示。龆蒜乇到几几I厂叫f1几n厂接收电路后 : JU U UU U UUU矗t=T1-To;。21超生波发射模块超声波发射电路的功能是发射40 kHz的超声波,主要由反相器74LS04构成,如图3所示。采用定时器中断方式产生40 kHz方波信号,P10 121提供40 kHz超声波信号,经74ALS04芯片放大后,发射出超声波信号。圉3超声波发射电路图22超声波接收模块超声波接收电路作用是根据定时器中断计算超声波从发射到接收的时间间隔t。接收电路主要由集成电路CX20106A组成,CX20106A是一款红外线检波接收的专用芯片,常用于电视机红
10、外遥控接收器。由于红外遥控常用载波频率为38 kHz,与测距的超声波频率40 kHz较为接近,使用它来接收信号。图4中接收到的超声波信号送到CX20106的1脚,CX20106的总放大增益约为80 dB,其7脚输出的控制脉冲序列信号幅度在355 V范围内。总增益大小由2脚外接的尺;、c8决定,飓越小或c8越大,增益越高。c8取值为1心,如取值过大会使频率响应变慢。采用峰值检波方式检波,电容c6取33 pF,积分电容c7取330 pF经CX20106处理后的脉冲信号由7脚输出。图4超声波接收电路圈接收部分由CX20106A滤波放大后,传递给单片机外部中断INT0(P32)。实验证明用CX2010
11、6A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。适当改变电容容量,可提高接收电路的灵敏度。用金属壳屏蔽超声波接收电路,能够提高抗干扰能力。23温度测量模块温度测量电路主要作用是测量电子器件周围实时环境温度,如图5所示。超声波测距依据是基于超声波在空气中的传播速度,但波速会受温度影响,系统设计了一种克服该缺陷的测距方法,通过增加温度补偿电路,来解决实测精度不高的现象。采用DSl8820数字温度芯片采集当前空气温度,单片机通过单总线接口读到该数据,测温分辨率可以达到0012 5,该方法可有效地提高测距精度,且硬件开销不大。Vcc图5温度测量电路图3控制电路设计程控车控制电
12、路主要分为:单片机最小系统、光耦隔离电路、模拟电源电路、电机保护电路和1602LCD显示电路。功能结构图,如图6所示。采用舵机驱动四连杆机构完成转弯运动,采用L298控制芯片驱动直流减速电机完成直线运动。以下对重点部分进行简要的说明。 晤翮陌稠I射装置r I广。一 l。-一 I匪亚茎陋弛圉J糯簦H I电机I l舵机ll收装置广一 f吧仉|耽仉f圈6控制系统功能结构图31单片机最小系统选用5l系列单片机STC89C52做控制芯片,单片机最小系统提供数字电源。STC89S52有40个引脚(与其他5l系列单片机引脚兼容),其中电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I0引
13、脚32根。在单片机最小系统基础上主要扩展了发射、接收电路和驱动直流减速电机、舵机电路。32光耦隔离为避免L298N在工作时与单片机产生干扰,用光耦TIJP5214来隔离数字电路和模拟电路,光耦元件可以很好地解决供单片机使用的数字电路和供1298使用的模拟电路。单片机Po口输出低电平时,光耦元件左侧的发光二极管发光,使右侧的光敏三极管导通,输出低电平;单片机Po口输出高电平时,光耦元件左侧的发光二极管不发光,使右侧的光敏三极管截止,输出高电平。33驱动芯片1298N1298是双全桥步迸电机专用驱动芯片(Dual FullBridgeDriver),如图7所示。通过光耦隔离芯片,将单片机控制信号万
14、方数据76 Instrument Technique and Sensor JulL 2011传递给L298,再由L298控制电机与舵机的运行。圈7比孵电路图34模拟电源数字电路和模拟电路需要隔离,以避免相互干扰。模拟电源电路。电源上,数字电路和模拟电路需要分别供电,用不同符号表示数字电源(。)和数字地(DGND)及模拟电源(K。)和模拟地(SGND)。L298需要5 V电源供电,因此需要从模拟电源上稳出一个5 V4测距程序设计41软件流程图程序按照模块化流程编写,主要包括主程序、超声波发生子程序、超声波接收中断程序、防撞程序及显示模块程序。程序流程图如图8所示。小车停止3 sI骑擅指示灯亮点
15、亮二极管)I车饲退2sI小车右转l sI图8程序流程图42超声波收发程序首先系统初始化,设置定时器T0工作模式为16位定时计数器模式。置位总中断允许位EA,并给显示端口P0和P1清0。调用超声波发生子程序送出一个超声波脉冲,延时约200 m8,打开外部中断INT0接收返回的超声波信号。当主程序检测到接收成功的标志位后,将计数器rID中的数(即超声波来回所用的时间),按公式计算出被测物体与测距仪之间的距离。使用C语言编写主程序代码如下。void main(void)system_init();系统初始化display();LCDl602初始化delay_lms(200);延时TBI=0;关闭Tl
16、定时器TR0=0:Till=0x00;装入定时器初值while(1)EA=O;send n();发射子程序TBl=1;发射后立即打开计数器1ETl=1;delay_lms(1);EA=1;延迟后开总中断和外部中断EX0=1;while(PY2) 等待外部中断到来display();delay_Ims(1000);43程控车行驶程序说明首先定时器To初始化,调用drive函数调整车状态,设定车行走状态。定时器T0中断服务程序,每隔100 ps执行一次。PMW变量控制电机调速,duojipwm变量控制舵机。C语言程序代码如下:void drive(uchar direct,uchar出e,ucha
17、r side)车状态控制函数。direct为方向,ansle为转弯角度,side为转弯方向if(仰gle6)起保护作用(相对机械结构而言),angle的范围是0-5;if(side)side=1代表向右duoji_pwm:(13一sr培le):motor_run(direct。io);elseside=O代表向左duoji_pwm=(angle+13);motor_run(direct,10);angle,10);舵机和电机速度调整使用单片机内部定时器T0来实现,中断处理程序如下:舵机部分if(tt=duoji_pwm)duoji_pwm=6-26,约05-25 m8duoji=0;舵机控制线
18、置低电平else if(tt=200)约20 In8n=O;duoji=1; 舵机控制线置高电平直流电机PWM调速部分if(pwm=io)设置PWM调速周期为1 mspwm=O;Pol=OX04;PO口进行或运算。if(pwm=PWM_L)PWML=O一10;moor1_en=0:l5实验方式与结果分析检测是否超声波传感器检测到信号,可以使用硬件检测和软件检测2种方式,如图9所示。,软件测量方式:使用C语言编写算法实验方式一。,。r使用示波器观测波形 。硬件测量方式磊;万鬲妥磊i苫羞圈9实验方式圈万方数据第6期 郭清:基于5椰9C52的超声波测距防掩系统设计碰件测量方式 使用示艘器观剩,观测拄
19、收端能够测量刊较为标准的弦谴信号;发射端输出一系,0方渡,其宽度为发射超声的时间问隔。被洲物距离越大,脉冲宽度越太,辅出脉冲个数被测距离成比。硬件测量方式=:使用电表测量电压;无接收反射信号时端口电为5 v;当障碍物接近到一定程度时,端n电压产生跳变,电压跳变刊I 2 v明超卢注接收和发射功能能够实现通过程序即可寓现距离小于50帅时的转向防撞功能。软件测量方式根据试验情况罄改超声蛀发生子程序参数U适应不同距离的测量需要。侧距程序能检侧到的范围为0町55 ,删数据最大误差乐超过I cm每改测时连续测量3次取平均值作为铡量的结果,“减小偶然因素对测量结果的影响,在同一温度下测得的组数据,见表I,经
20、多次试骑后测得测量精度均小于5。表1测量数镕*差6结亲语通垃超声谊检测装口实现车辆与车辆之目或者乖辆与障日物之间的测距防掩从尽可能减少空通事故发生。衷测距防撞系统设计简单宴时性好具有良好人机交互界面,性能稳定在室内环境巾取得了预期的宴验结果。硬件设计中充分考虑回波信的复杂性和稳定性对其进行放大滤渡与检波处4井增加r温度朴偿装置恪E了声速困温度带来的馆差。该系坑具有抗于扰能力强、精度高和成本低等突出舯特点,可m广泛应月f实地勘测,智能玩具等领域市场前景广阔,经济效益良好。参考立献【1*女自Tf 5lHnm*m自目女m n*“j自自m 200534(5):76782 J i镕i赶m#$i十月#$2
21、a10(6)2022【3胡瑞周锅青if超*捧g*白目*m镕if#信E 2009(7):581241女*目,日i辞#i自p#支#拄术日女#镕I203S 16f10):l蛳一19005t-9f$“nF*目女*Hm 201026(2):44 46【6*#自p陈南;王金湘 基于51单片机的小车避障电路实现期刊论文-机械制造与自动化 2005(05)2.麦锦文 超声波技术在汽车防撞系统设计的应用期刊论文-装备制造技术 2010(06)3.胡瑞;周锡青 基于超声波传感器的测距报警系统设计期刊论文-科技信息 2009(07)4.彭太江;杨志冈;田丰君 轴系超声波悬浮支撑技术研究期刊论文-光学精密工程 200
22、8(10)5.王爱珍 基于单片机的超声波测距系统的设计与实现期刊论文-忻州师范学院学报 2010(02)6.张健 超声波测距系统的研究与设计期刊论文-合肥工业大学学报(自然科学版) 2004(06)7.王红云 基于超声波测距的倒车雷达系统设计期刊论文-国外电子元器件 2008(08)本文读者也读过(9条)1. 苑洁.常太华 基于STM32单片机的高精度超声波测距系统的设计期刊论文-电子设计工程2011,19(15)2. 陆冬妹.LU Dong-mei 基于温度补偿的超声波倒车测距系统的设计期刊论文-齐齐哈尔大学学报(自然科学版)2011(2)3. 魏泉.Wei Quan 超声波测距技术在轨道吊
23、防撞功能中的应用期刊论文-港口科技2009(7)4. 李晓明 超声波法检测钻孔灌注桩技术应用期刊论文-河南建材2011(2)5. 司春宁 基于超声波的距离测量系统的研究及其应用学位论文20096. 刘成安.孙涛.LIU CHENGAN.SUN TAO 智能超声波测距仪的研制期刊论文-微计算机信息2007,23(17)7. 朱爱红.朱宁文.ZHU Ai-hong.ZHU Ning-wen 基于AT89C2051的超声波测距系统期刊论文-信息技术与信息化2006(5)8. 程青.CHENG Qing 浅谈洁净能源汽车工程中心的安全管理和智能报警控制系统期刊论文-低压电器2007(4)9. 贺焕林
24、基于微处理器的超声波测距仪的性能分析会议论文-2008引证文献(5条)1.黄仕凰.刘政 基于uVsion的室内环境监控系统设计期刊论文-微处理机 2013(5)2.黄仕凰.刘政 基于单片机的室内环境控制系统期刊论文-实验室研究与探索 2012(6)3.周鹏 基于STC单片机的电子罗盘-超声波测障系统设计期刊论文-电子设计工程 2013(10)4.王学健.陈龙 基于单片机的智能避障小车的设计与实现期刊论文-岁月(下半月) 2012(1)5.刘富海.蔡军伟.王婷.陈栋.颜幸尧 超声波倒车雷达中电荷放大器的分析与选择期刊论文-中国计量学院学报2013(2)引用本文格式:郭清.GUO Qing 基于STC89C52的超声波测距防撞系统设计期刊论文-仪表技术与传感器 2011(6)