基于单片机的超声测距系统设计Word文档格式.docx

上传人:b****3 文档编号:17010787 上传时间:2022-11-27 格式:DOCX 页数:19 大小:982.82KB
下载 相关 举报
基于单片机的超声测距系统设计Word文档格式.docx_第1页
第1页 / 共19页
基于单片机的超声测距系统设计Word文档格式.docx_第2页
第2页 / 共19页
基于单片机的超声测距系统设计Word文档格式.docx_第3页
第3页 / 共19页
基于单片机的超声测距系统设计Word文档格式.docx_第4页
第4页 / 共19页
基于单片机的超声测距系统设计Word文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

基于单片机的超声测距系统设计Word文档格式.docx

《基于单片机的超声测距系统设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的超声测距系统设计Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

基于单片机的超声测距系统设计Word文档格式.docx

此设备安全合理,抗干扰能力突出,实时显示性能良好,可以应用于实际生活之中。

关键词:

超声波;

单片机;

测距;

AT89C52

TheultrasonicrangingsystembasedonMCUdesign

Abstract:

Sincethedawnofthemodernsociety,therapiddevelopmentofscienceandtechnology,peopleinmanyways,thedistancebetweentheobjectparameterssuchasthedemandofmoreandmore,whichmakesrangingtechnologyismoreandmorewidelyusedinmodern.Ultrasonicrangingasarangingtechnologyisrelativelymature,researchonitsapplicationanddevelopmentismoreandmoregettheattentionofthepeople.Investigateitsreasonhasalotofways,ultrasoundisakindofmechanicalwavefollowsthecharacteristicsofthemechanicalwave,issuedandreceiveultrasonicequipmentpricecheapandrelativelyeasy,itsdetectionprecisionisnotsusceptibletosuchasweather,geographicalenvironment,etc.Lookingforwardtothefuture,supergodwaverangewilldevelopinthedirectionofthehighprecisionpositioning.Thereisnodoubtthatthefutureofultrasonictechnologyinautomation,intelligenttechnologiessuchascloselylinked,therewillbemoreinlinewiththehumannature,multi-functional,intelligentdevice.ThisdesignwithAT89C52single-chipcomputerasthecore,haslowcost,highprecision,miniaturization,digitaldisplayandintelligentalarm,andotherfunctions.ThewholecircuitUSESmodulardesign,mainlyincludesthemainprogram,interruptprogram,launchsubroutines,receivesubroutineanddisplaysubroutinemodules.Equipmentofallkindsofinformationitagreedtobysingle-chipmicrocomputerprocessing,finallyunifiedandeachequipmenttocompletethefunctionofultrasonicranging.Thepracticeproved:

theequipmentissafe,anti-interferenceabilityisoutstanding,real-timedisplayperformanceisgood,canbeappliedtopracticallife.

KeyWords:

Ultrasonic;

Singlechipmicrocomputer;

Measuredistance;

AT89C52

1基于单片机的超声测距系统设计

1.1系统方案选择

方案一:

采用单片机做控制和处理中心,具体测距模块用激光传感器。

由于采用激光测距,光速非常快,所以单片机计时时间上极小的误差也会造成测距参数极大的误差,这就要求单片机运算速度和反应速度非常快,且计时要求非常精确。

由于激光发射装置费用较高,且单片机计时精度无法达到要求,因此不采这张方案。

方案二:

以MCU作为微处理器设计测距系统,采用HS-CR40来发射和接收超声波,声音常温时在空气中的传播速度为340m/s,测量超声波的发出与接收时间后用单片机处理可得到距离参数,此种方案对单片机计算速度与计时精度要求不高,且超声波模块费用不高可以方便得到,简单易行。

所以选择方案二。

1.2系统的总体设计

基于单片机的超声波测距系统就是利用超声波的指向性好,遇到障碍物会返回的特性,超声波的接收与发射都由单片机控制并由计算其发出与接收的时间,然后传送给单片机来处理数据。

如果距离小于50cm,根据设计,系统达到了报警要求,系统发出报警。

由于单片机满足测距系统对数据处理器的要求,因此只要用c语言设计出满足要求的软件,并且调试通过即可。

2基于单片机的超声波测距系统硬件系统硬件设计

超声波计算出发出与接收时间单片机,单片机处理完数据之后,对于数据结果进行判断如果符合数据要求就在数码管上显示出来,如果不符合要求就用报警模块发出报警信号。

判断采用选择语句,大于50cm就在数码管上显示结果,小于或者等于50cm就用报警模块发出报警信号。

系统原理图如下图3-1所示:

图2-1系统硬件原理图

硬件设计主要包括四个硬件电路:

单片机最小系统(包含使其工作的晶振模块与复位模块)、超声波收发模块、数据显示模块、报警模块即蜂鸣器模块。

2.1STC89C52单片机的最小系统设计

2.1.1STC89C52单片机简介

单片机作为微电子技术与集成电路技术成熟与发展的产物,已经应用于现代的许多家电、仪器仪表、玩具中,之所以会出现这种情况是由于把原来实现微型计算机功能的各个部分:

中央处理器、存储器、I/O接口、定时器计数器等集中在一块很小的芯片上,所以叫微型计算机。

她得出现可以说是集成电子电路快速发展的产物,其发展经历了五个阶段,单片机刚刚出现时功能不强,处理速度很慢,只能用在一些对数据计算要求不高的场合,如家用电器、小型计算机、洗衣机的控制单元。

随着大规模以及超大规模集成电路技术的成熟,在单片芯片上集成的电路数量越来越多,单片机的性能也越来越强。

如今已经出现了8位、16位、32位、64位的普通单片机,高性能的单片机也越来越多。

单片机具有体积比其他处理芯片小,重量轻,价格实惠,性价比远远超过很多的控制芯片,高度可靠,可以编程控制很多的设备,运行速度与大体积的相似处理器相当,低功耗低电压等一系列优点。

这些优点使得单片机应用的范围十分广泛,在生活工作中可以找出很多这样的例子。

从日常使用的智能仪表如数字示波器、医用仪器等核心处理器到通信设备如调制调解器、传真机、移动电话,举不胜举。

STC89C52是在现代仪器与家电中应用比较广泛的一款单片机。

其采用CMOS技术制作。

其作为一种常用的单片机,价格低、动能强、操作简单,已在现代电子行业中广泛应用。

其向下可以兼容MCS51单片机的指令系统,内部有空间大小为8k的FLASH,可以反复的擦除与写入程序。

还有512*8bit的RAM,4个8位的I/O双向接口P0、P1、P2、P3,具有看门狗功能,具有PDIP、PQFP、TQFP及PLCC等多种封装方式,可以在多种场合中使用。

与其他单片机相比AT89S52单片机具有以下特点:

a.8K字节程序存储空间;

b.512字节数据存储空间;

c.内带4K字节EEPROM存储空间;

d.可直接使用串口下载。

其引脚如图3-2所示:

 

图2-2STC89C52引脚图

2.1.2单片机的最小系统设计

单片机最小系统指的是能够维持单片机正常工作的必须具有的、必不可缺且使用元器件最少的电路系统。

显然单片机正常工作,必须有电源、复位电路和晶振电路。

单片机的复位方法是操作复位,即当用户按下按钮时单片机进入复位状态。

MCS-51系列单片机的复位引脚(RST引脚)只要持续时间在10ms以上的高电平时,单片机就会执行复位动作。

这种功能对于单片机跳出出现的出错状态、死锁状态有很大作用,所以当电容值取C=10UF时,由公式T=RC,可得到电阻R=10K。

本最小系统采用外加晶振为单片机提供时钟周期。

选用的晶振频率为11.0592MHZ,串口通信波特率为9600b/s,可以利用下面公式:

波特率=2SMOD/32*定时器T1的溢出率(3-1)

定时器T1的溢出率=fOSC/12*(1/(2k-初值))(3-2)

可以计算出定时器计数初值为

取T1的工作方式为1,则K=8;

fosc=11.0592MHZ;

SMOD=1,波特率翻倍。

所以T1的初值为250,化成十六进制为FA。

单片机采用的是片内存储器所以31引应加高电平或悬空。

单片机的最小系统如下图所示:

图2-3单片机最小系统

2.1.3单片机实物图

图2-4单片机89C52实物图

2.2HC-SR04超声波测距模块

2.2.1产品特点

HC-SR04超声波测距模块性能稳定,测距准确,其价格低廉,但是性能可达到国外顶级的相似器件精度水平。

其利用超声波的发出与接收时间差来实现测距功能,其测距盲区为2CM,由于发射功率的问题最多可以测量400CM,测距精度可以达到3mm;

基本可以满足工业和生活中一般的应用需求,其误差水品也比前一代产品有大幅度减小。

基本工作原理:

①单片机可以通过控制模块的控制端口(TRIG)的高低电平来控制模块的工作状态,当该端口出现10us以上的高电平信号是,模块启动进入工作状态;

②当模块在单片机的控制下启动后,设备中的超声波发射探头立即执行发送8个40kHZ的方波的动作,并且开始检测是否有信号返回;

③当接收探头接收到返回信号时,通过与单片机相连的ECHO端口输出一个高电平给单片机,高电平持续的时间就是超声波发出遇到障碍物返回的时间。

单片机计算出高电平的时间,则测试距离=(高电平时间*声速(340M/S))/2。

2.2.2HC-SR04超声波测距模块实物图

如下图所示,5V的工作电压由VCC输入,GND为地线,TRIG与单片机的I/O端口相连以获取模块的启动信号,ECHO回响信号也与单片机的I/O相连为单片机输入高电平以提供计算需要的时间参数。

图2-5HC-SR04超声波测距模块实物图

2.2.3HC-SR04超声波测距模块电气参数

表2-1HC-SR04超声波测距模块电气参数

电气参数

属性

工作电压

DC5V

工作电流

15mA

工作频率

40HZ

最远射程

4m

最近射程

2cm

测量角度

15度

输入触发信号

10uS的TTL脉冲

输出回响信号

输出TTL电平信号,与射程成比例

规格尺寸

45mm*20mm*15mm

2.2.4超声波时序图

图2-6超声波时序图

HC-SR04超声波测距模块的发出与接收超声波的动作都要单片机与其相连的引脚上的出现的高低电平来作为启动信号。

由以上时序图可知:

只要单片机与模块的控制端口(TRIG)相连的I/O端口出现10uS以上的高电平时,模块就是启动并进入工作状态。

当模块的控制端口(TRIG)收到端口的同时,超声波的发射探头便会想被测物体循环发出8个40KHz的脉冲信号,并同时开始检测返回信号。

如果超声波的接收探头收到返回信号时,便会通过ECHO端口发出一个持续的高电平作为回响信号,此高电平的时间为超声波的收发时间。

单片机在计算高电平的时间,带入相应的公式即可得到距离参数,另外应尽量保证测量时间的长度,不能太短,使发射信号对回响信号不存在相互干扰。

另外使用此模块需要注意的是:

此模块不允许在带电的状态下安装调试,如果需要在带电状态下调试,必须把模块的GND端先链接,否则模块将无法正常使用,甚至在有些情况下会烧毁模块,为了安全起见,请不要在带电状态下调试。

在使用时,要求被测物体面积要大一些而且表明平整不能有毛刺,否则会影响测量结果。

2.2.5实物规格

图2-7实物规格

2.3报警电路

2.3.1模块简介

本设计采用了一个有源蜂鸣器,输出一定频率的声音信号,在连接到蜂鸣器之前,经过一个三极管放大。

2.3.2电路原理图

图2-8蜂鸣器原理图

2.3.2实物图

图2-9蜂鸣器实物图

2.4数码管显示电路

2.4.1模块简介

显示电路属于输出电路,在很多电子设备上面都有应用。

从单片机的显示处理数据到智能仪器的液晶显示,其应用十分广泛。

显示电路主要用于显示设备运算得到的结果,可以分为液晶显示,与LED发光数码管显示。

本设计需要用到显示电路,显示电路比较简单,只要可以显示四位的数字即可,两位整数与两位小数即可。

本设计只需要显示两位整数与两位小数,精度为0.01米。

其中一个LED发光二极管有g-a七个发光二极管,要想使其发光,只需要在相应的二极管的响应端口加入正负电压即可。

要实现显示数字的功能,只需要相应的数码管发光即可。

这便需要对应的译码电路。

出于使装置小巧,可节省器材的考虑,我在本设计中采用软件译码。

共阴极与共阳极接法是LED数码管链接驱动电路时的两种常见的接法,在实践中应用的也是比较广泛的。

所谓共阴极接法就是把LED发光二极管的阴极接在一起,在阳极加入相应的开通信号,共阳极相反。

如图3-10所示:

图2-10不同类型数码管示意图

本设计需要高亮度的LED数码二极管显示。

如果采用共阴极接法,会由单片机提供发光二极管的电源。

单片机端口的负载能力较弱,其结果会造成发光二极管亮度较暗,而且会加重单片机的负载。

我基于上面的考虑采用共阳极接法,阳极接在

DC5V的电源上,由电源提供LED发光二极管所需要的电压。

经调试发现:

这种方法可以达到亮度高,实现显示的功能。

2.4.1电路原理图

如图在LED数码管采用共阳极的接法,4个数码管阳极相连后接在DC+5V的电压上,有外界为其提供电源。

同时接入10K的电阻作为上拉电阻,阴极与经过三极管放大后的引脚相连。

3基于单片机的超声波测距系统硬件系统软件设计

3.1系统设计软件简介

本设计所用软件为KeilC51和STC-ISP。

KeilC51用于下位机编程和调试;

STC-ISP用于向单片机中烧录程序。

3.1.1KeilC51简介

KeilC51是由德国Keil 

Software公司开发的一款单片机开发软件,也是目前单片机编写程序是比较常见的一种程序编译软件。

Keil 

Software软件采用C语言来编写程序,C语言功能强、结构清新简单、可读性好、可维护性好,相对于汇编语言有巨大的优势。

Keil通过一个集成开发环境(uVision)将C51编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器部分组合在一起。

其可以实现程序的单独编写,可以编译后生成OBJ目标文件,与库文件经过定位生成绝对目标文件ABS文件,经转化后就会生成HEX文件。

KeilC51文件相比于其他的编程软件具有很多优势:

利用C语言编程,语句紧凑,目标代码效率很高,而且采用了Windows操作界面,操作性很强,使用起来也很方便。

使用KeilSoftware工具时的项目开发流程如下所示:

A.创建一个项目,从器件库中选择目标器件,配置工具设置。

B.用C语言或汇编语言创建源程序。

C.用项目管理器生成应用。

D.修改源程序中的错误。

E.测试连接应用。

其中工作界面如图4-1所示:

图3-1keilC51工作界面

3.1.2STC-ISP软件

①软件简介

STC-ISP是一款针对单片机烧录程序而开发的一款程序也是目单片机烧录程序比较常用一款软件,他使用的单片机类型多,性能高低搭配,从普通的小型电机所用的单片机到精密仪器所用的控制处理器。

②软件功能

STC-ISP集成了很多功能,操作界面简洁,可以向STC89C51、STC89C52等系列单片机内烧写程序。

可以设置波特率,串口等参数。

STC_ISP_V4.80是现在比较常见的一个版本,下面以STC_ISP_V4.80为例,介绍STC-ISP的适用方法与步骤。

③软件使用流程

第一:

打开STC_ISP_V4.80软件,首先需要根据实际情况确定最高,最低波特率,所使用的相应的串口等参数。

如图4-2:

图3-2STC_ISP_V4.80设置波特率串口数

第二:

打开所要下载的.hex文件,如图所示:

图3-3STC_ISP_V4.80下载hex文件

第三:

点击DownLoad,程序就开始烧写了。

如图4-4所示:

图3-4STC_ISP_V4.80烧制程序

3.2系统软件的总体设计

由于C语言具有编写简洁、可以实现复杂程序的编写,并且目标代码率很高,所以采用C语言来编写。

计算距离是所用的时间由单片机的2个定时器与计数器提供,因此不用编写计时程序。

应用单片机来控制和处理判断测量过程中的一系列参数,设计思路如下:

①4个LED数码管显示距离参数,显示的格式为XX.XX,由于整数部分只有两位,所以显示的最大值为99.99cm。

②设置有复位按钮,按下后单片机复位。

③当距离小于所设定的最低距离时,蜂鸣器发出报警信号。

本设计的软件主程序主要包括以下几部分:

超声波收发程序、中断程序、距离判断与报警程序、软件译码电路,采用模块化的编写。

各个软件模块之间存在一定的互相联系,如图4-4所示:

图3-5软件模块关系图

系统的所有程序流程图如下图所示:

图3-6软件流程图

3.3超声波发送和接收程序设计

超声波发送和接收数据模块中断服务子程序模块和外部中断服务子程序两个子程序模块组成。

如图4-6和4-7所示:

3-7定时中断服务子程序图3-8外部中断服务子程序

超声波发送和接收子程序模块的目的是单片机向超声波收发模块输出控制信号后进入中断状态,同时单片机内部的定制计数器开始计时,单片机进入中断状态。

当接收探头收到返回信号时,通过引脚想单片机发出高电平,单片机收到高定平信号后计算时间并且计算出距离并执行下一步骤。

完成后打开终端,为下一次测距做好准备。

3.4LED软件译码程序设计

本设计采用软件译码的方法,通过译码程序,可以把计算好的数值转化为十六进制的方式输出,单片机输出高低电平,驱动LED发光二极管完成相应的操作。

程序流程图如下:

3-9译码程序流程图

3.3距离判断模块

此模块的功能为判断计算好的距离参数是否符合要求,如果距离大于50cm,就在LED数码管上显示,否则蜂鸣器发出报警信号,其流程图如图4-9所示:

3-10距离判断与报警流程图

参考文献

[1]谭浩强.C语言程序(第2版)[D].清华大学出版社,2009

[2]张丽静,潘卫华,王红,张锋奇,余晓华.C++程序设计教程(第二版)[D],2009

[3]琚晓涛,谷立臣.行走机器人的超声波测距系统的研究[J].传感器与微系统,2014,4(5):

25~38

[4]刘雪林,史湘伟,黄兴洲,薛德宽,陈文娟.超声波测距声场仿真研究[J].现代电子技术,2014,(02):

8-10.

[5]王贤勇,赵传申.单片机原理与接口技术应用教程[M].北京:

清华大学出版社,2010.

[6]李胜,倪卫宁.阈值迭代超声波测距系统设计[J].自动化仪表,2014,(03):

8-10.

[7]王占选,赵冬娥,党浩淮,章晓眉,李颖.具有温度补偿功能的超声波测距系统设计[J].电声技术,2014,(04):

44-46.

[8]Ke-NungHuanga,Yu-PeiHuang.Multiple-frequencyultrasonicdistancemeasurementusingdirectdigitalfrequencysynthesizers[J],SensorsandActuatorsA:

Physical;

[9]OndrejSajdl,JaromirZak,RadimirVrba.Zigbee-BasedWirelessDistanceMeasuringSensorSystem[J],PersonalWirelessCommunications;

[10]许捷,叶宏.基于STC89C52单片机的客车安全系统设计与实现[J].安全技术,2014,2,19-21

[11]张长春,兰倩,陈冬,刘娜,叶知.基于单片机的智能避障寻路机器人系统设计[J].技术与市场,2013,12:

18-20

[12]明鑫.基于单片机的超声波传感器设计[J].科技信息,2013,06:

86-88

[13]张培仁.基于C语言编程的MCS-52单片机原理与应用.北京:

清华大学出版社,2012.4.

[14]罗胜彬,宋春华,韦兴平,李航.高精度超声波测距系统设计[J].机床与液压,2011.3:

13-24.

[15]杨国田,白焰,董玲.51单片机实用C语言程序设计[M].北京:

中国电力出版社,2013

[16]刘亿文,姚洪平,马恒.基于单片机的超声波测距系统的设计[J].电子世界,2013,6:

15-28.

[17]JamesR.Armstrong,F.,GallG.VHDLDesignRepresentationandSynthesisSecondEdition[M].北京:

机械工业出版社,2013.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1