单片机的超声波测距系统的设计
来源:UC论文网2015-11-14 15:23
在人们的日常生活和工业生产现场中,经常会碰到一些需要非接触测距的场合,如带腐蚀的液体,强电磁干扰,有毒等恶劣条件下,测量距离存在不可克服的缺陷。超声波测距作为一种
1 超声波测距原理
超声波发射器向某一方向发射超声波,同时开始计时[2],当超声波接收器收到超声碰到障碍物后的反射波时,立即停止计时,记录时间[t。]根据超声波在空气中的传播速度和计时器记录的时间[t,]用速度距离公式,可以计算出发射点距障碍物的距离[S,]即:[S=340t2。]
在测距时,当传播介质温度变化不大时,近似认为超声波速度在传播的过程中是不变的,只要测得超声波往返的时间,即可求得距离,如图1所示。
图1 超声波的测距原理
[H=Scosθ] (1)
[θ=arctanLH] (2)
式中[L]表示两探头之间中心距离的一半。
超声波的传播距离为:
[2S=vt] (3)
式中:[v]为超声波的传播速度;[t]为从发射到接收所用的时间。
将式(2),式(3)代入式(1)中,得:
[H=12vtcosarctanLH] (4)
当需要测量的距离[H?L]时,则式(4)变为:
[H=12vt] (5)
所以,这里需要精确测量出超声波传播的时间[t,]就可以根据上述公式,计算出需要测量的距离[H。]
2 系统设计
本系统按模块划分为测距模块、控制模块、显示模块、报警模块[3],如图2所示。电路结构可划分为超声波传感器电路、报警电路、单片机控制电路。就此设计的核心模块来说,单片机就是该设计的中心单元。系统采用STC89C52单片机作为核心控制单元,当测得的距离小于设定距离时,主控芯片将测得的数值与设定值进行比较处理,然后控制蜂鸣器报警[4]。
2.1 硬件电路设计
硬件电路总设计如图3所示,该设计中要用到如下器件:STC89C52、超声波传感器、按键、四位数码管、蜂鸣器等一些单片机外围应用电路[5]。其中,D1为电源工作指示灯,电路中用到3个按键,一个是设定键, 一个加键,一个减键。
图2 系统组成图
超声波模块采用HC?SR04超声波模块,该模块包括超声波发射器、接收器与控制电路,具有2~400 cm的非接触测距功能,精度可达3 mm,模块采用I/O口TRIG触发测距,可自动发送8个40 kHz的方波,并检测是否有信号返回。若有信号返回,则通过I/O口ECHO输出一个高电平,该高电平的持续时间即为超声波从发射到返回[6]的时间t。
[测试距离=(高电平时间×340)2]
超声波模块如图4所示,供电电压[VCC]为5 V,TRIG为触发控制信号输入,ECHO为回响信号输出线。
图4 超声波模块实物图
本文设计采用定时器0进行时间测量,设置TCNTT0为预设值0XCE,8分频,当定时器0溢出中断发生2 500次时为125 ms,计算公式如下(单位:ms):
[T=(定时器0溢出次数×(0XFF?0XCE))1 000]
式中定时器0初值计算依据分频不同而有差异。
显示模块采用LCD1602字符型液晶显示电路,显示接口电路如图5所示。
图5 LCD1602显示电路
声音报警电路采用三极管、电阻和一个扬声器连接到主控制器的P13引脚上,构成一个声音报警电路,如图6所示。
本设计中复位电路采用在RESET端持续给出2个机器周期的高电平,复位电路如图7所示。
图6 声音报警电路图 图7 复位电路图
电源部分的设计采用3节5号干电池4.5 V供电。
2.2 软件设计
系统主程序工作流程如图8所示。
图8 主程序工作流程图
系统启动后,首先自动进行初始化,然后用测定距离和设定值进行比较,如果大于设定值则返回初始化,如果小于设定距离便启动报警器,然后进行距离比较,如果依然大于设定值便结束报警。
3 结 语
本文设计了一种基于单片机的超声波测距系统,并对系统的软硬件实现和电路连接图进行了详细描述,该系统能对中近距离障碍物进行实时测量,具有操作简单,可靠性高的特点。该系统可广泛应用于汽车倒车雷达等现实应用中,并为其他无线测距方案提供了借鉴。
参考文献
[1] 吴政江.单片机控制红外线防盗报警器[J].实用电子制作,2006(12):26?28.
[2] 宋文绪.传感器与检测技术[M].北京:高等教育出版社,2004.
[3] 余锡存.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2000.
[4] 唐桃波,陈玉林.基于AT89C51的智能无线安防报警器[J].电子设计应用,2003(6):49?51.