孟凡宇
摘 要:随着现代工业技术的进步,古代沿袭的接触式测距方式在某些特殊情景存在难以接触目标的缺陷,例如,在进行深油井深度测距时工作人员难以直接接触井底。该文针对接触式测距的局限性,利用超声波高精度、无损、非接触等优势,设计了一种基于单片机AT89S52的超声波测距仪。
关键词:超声波 测距 AT89S52 HC-SR04 LCD1602
中图分类号:TP274.53 文献标识码:A 文章编号:1672-3791(2020)01(b)-0075-03
Abstract: With the advancement of modern industrial technology, the contact ranging method that was handed down in ancient times has the defect of being difficult to reach the target in some special work scenes. For example, when measuring the depth of deep oil wells, its hard for workers to directly reach the bottom of the well. In view of the limitations of contact ranging, this paper designs an ultrasonic range-finder based on single chip microcomputer AT89S52 by taking advantages of the high-precision and non-contact of lossless ultrasonic.
Key Words: Ultrasonic; Ranging; AT89S52; HC-SR04; LCD1602
1 引言
1.1 课题研究的背景和意义
随着时代的发展进步,接触式测距逐渐展露弊端:极端工作环境(如化工厂液位测量、隧道长度勘测等),工作人员难以直接接触测量目标,传统的接触式测距很难实现精准测量;另外,长距离下接触式测距不能保证时效性,在要求实时测距的工作场合会影响工程进度,因此接触式测距被非接触式测距逐渐替代。非接触测距是以现代科学中微波、电磁、传感器等技术为基础,结合电子设计产品进行不接触被测目标而得到距离信息的方法,其中激光测距与超声波测距作为现如今实现非接触测距的两种首要手段,在实际工作中发挥了很大作用,但由于激光技术要求高,制造激光发生设备花费十分昂贵,所以仅仅作为军事测距手段不适于大规模推广,相比之下超声波测距凭借相对较低的技术难度与低廉的成本在民用市场脱颖而出。超声波测距检测迅速、方便、易于实时控制。与此同时,单片机技术作为一种新兴的电子技术火速兴起如日方升,能够在稳定高效地完成任务的同时保证电子系统的安全性,且经济适用。单片机无需占用很大的空间,通过使用科学的算法就可以充分发挥其强大的数据处理功能,这使得其在工业应用中的地位举足轻重。
1.2 主要内容
该文在已有的理论知识基础上,设计一种测距仪使用超声波技术并利用单片机技术作为核心进行一定范围内的距离实测。该系统使用超声波测距模块HC-SR04作为非接触测距的实现手段,以单片机AT89S52为核心控制HC-SR04发出超声波脉冲进行测距。考虑到温度会影响声波的传播速度,系统设计有温度检测电路,选用温度传感器DS18B20进行温度补偿,减小测量误差。同时,测距仪的显示功能由LCD1602液晶显示屏完成,显示测距仪测距数据与空气温度数据。由于该系统测距范围有限,配有蜂鸣器报警功能,提醒使用者超出测距范围。
2 系统概述
2.1 简介
声音是由于物体振动产生的,当振动频率过高或过低超出人耳的听觉范围时人类将无法听辨这种声音,振动频率超过20000Hz的声波就是超声波。声音再空气等介质中传播,遇到障碍物会反射回来,这就是声波的反射特性。如果已知声波速度v,只需获得声波开始发射到返回结束的时间t,将数据带入公式(1),就可以计算得到声波传播的距离D,这就是超声波的测距原理:回声探测法。该文所设计的超声波测距仪在工作时,单片机会控制定时器产生触发信号,使超声波模块HC-SR04的发射探头发射超声波脉冲信号,同时HC-SR04模块接收探头不断检测回波,当接收到反射回来的超声波时记录所用时间并将数据返回单片机,计算得到距离信息并在屏幕上显示出来。
2.2 系统设计方案
出于低成本、高精度的目的,该文设计了一种基于单片机AT89S52的超声波测距仪,采用AT89S52芯片控制定时器产生超声波脉冲并计时,计算超声波从发射至接收的往返时间,利用HC-SR04模块测量距离,将距离数据传给单片机,单片机对数据进行分析处理;选用温度传感器DS18B20检测当前环境温度,并在LCD1602上显示距离、环境温度信息,实现对距离实测;同时该系统设计了蜂鸣器报警电路,以保证在超出测量范围时报警提醒。其中,超声波测距仪的关键模块包括HC-SR04超声波测距模块、单片机AT89S52最小系统、显示模块以LCD1602及数字温度传感器DS18B20。
3 系统调试与分析
3.1 介绍
此章对基于单片机AT89S52的超声波测距仪进行软硬件联调,包括系统Proteus仿真、硬件实现与测试分析。首先,在软件Proteus 8 Professional进行系统电路的仿真,确保所搭建的系统电路和所编写程序的正确性;其次,搭建硬件系统,将程序通过烧录软件AVR Fighter,使用ISP下载线烧录进已经焊接好的硬件中;最后,对超声波测距硬件系统进行测试与分析。
3.2 仿真分析
超声波测距仪系统仿真电路如图1所示。
运行仿真,可以看到图1右上方的LCD1602液晶屏显示出距离温度信息“Temperature:25℃,Distance:209CM”,如图2所示。
3.3 硬件调试与分析
系统开机后,超声波测距仪正对墙壁,初始测量数据显示为“Temperature:27℃,Distance:068CM”。与测量尺测量结果进行对比,如图3所示。
4 结语
该文所设计的基于单片机AT89S52的超声波测距仪主要包括单片机最小系统、HC-SR04超声波测距模块、驱动显示电路及报警电路和温度检测电路4个部分。该文所设计的基于单片机AT89S52的超声波测距仪,硬件模块和系统程序在经过多次的修改和調试后可以实现距离和环境温度的实时检测与显示,并在测量距离超过所设量程时报警,测量距离范围可以达到0.02~4m、测量精度为0.01m。通过对环境温度的实时检测,提高了测量数据的精确度,实现了利用超声波测距原理测量距离并且将距离信息显示在LCD1602屏幕上。因此,系统的设计与测试达到了预期目标,满足了系统设计需求。
参考文献
[1] 罗紫阳,陈鹏.基于单片机控制的超声波测距系统设计与实现[J].数字通信世界,2019(6):91.
[2] 田桥,郑颖.基于单片机的汽车倒车测距仪[J].计算机产品与流通,2019(6):127.
[3] 周晴.基于单片机的超声波测距仪系统设计[J].电脑知识与技术,2018,14(35):216-217.