




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编号审定成绩重庆邮电大学毕业设计(论文)设计(论文)题目基于单片机的超声波模块设计学院名称自动化学院学生姓名刘晓林专业电气工程与自动化班级0831106学号2011212684指导教师林海波答辩组负责人王平填表时间年月重庆邮电大学教务处制重庆邮电大学本科毕业设计(论文)I诚信承诺书本人慎重承诺和声明本人在毕业设计(论文)过程中遵守学校有关规定,恪守学术规范,在指导教师的指导下独立完成,没有剽窃和抄袭他人的学术观点、思想和成果,未篡改研究数据,若有违规行为的发生,我愿接受学校处理,并承担一切法律责任。论文作者签名年月日重庆邮电大学本科毕业设计(论文)II摘要单片机作为微型计算机的一个分支,具有集成度高、使用方便、控制功能强的特点,其应用领域非常广泛。超声波频率高、波长短、绕射现象小,特别是方向性好,能够成为射线而定向传播,传播距离较远,而且能量耗损缓慢。超声波测距制作方便、成本较低,此外测量比较迅速而且计算简单,便于实时控制。超声波避障模块在社会中已经有广泛地应用。如汽车倒车雷达、石油化工、航海等工业领域,此外也广泛应用于医学、生物学、材料科学等领域。本文主要设计一种基于单片机的超声波避障模块。该系统的硬件部分由单片机系统、四路通道电路、超声波发射电路、超声波检测接收电路及显示电路等部分组成,其中超声波传感器包括超声波发射电路和超声波检测接收电路。软件部分采用C语言编程,主要由主程序、超声波测距程序及显示子程序等组成。本文设计的超声波避障系统采用STC89C52单片机作为微处理器,利用单片机对超声波接收信号进行处理,单片机程序使用KEIL软件调试,通过HCSR04超声波传感器实时的采集障碍物的距离和方向,通过串口同步发送距离和方向数据给上位机,做出准确的判断避开障碍物。本文的超声波测距部分采用HCSR04超声波测距模块,该模块可提供2CM400CM的非接触式距离感测功能,测距精度可达到02CM,即障碍物最大检测距离为4M,精度为02CM,远远小于2CM;障碍物最小检测距离为2CM,经过不断测试,系统检测到障碍物的概率为100,满足设计要求。【关键词】单片机超声波测距避障重庆邮电大学本科毕业设计(论文)IIIABSTRACTSINGLECHIPMICROCOMPUTERASABRANCHOFMICROCOMPUTERITHASBROADRANGEOFAPPLICATIONSWITHHIGHINTEGRATION,EASEOFUSE,ANDPOWERFULCONTROLFEATURESULTRASONICWAVEHASFEATURES,SUCHLIKEHIGHFREQUENCY,SHORTWAVELENGTH,SMALLDIFFRACTIONPHENOMENON,ANDESPECIALLYWELLDIRECTION,WHICHMAKEITBERAYANDCANDIRECTIONALPROPAGATIONWITHLONGDISTANCES,ANDHAVESLOWENERGYLOSSRATEULTRASONICRANGINGISCONVENIENTANDLOWCOSTINADDITION,THEMEASUREMENTISFASTANDCALCULATIONISSIMPLE,WHICHISSUITABLEFORREALTIMECONTROLTHEULTRASONICOBSTACLEAVOIDANCEMODULEHASALREADYBEENWIDELYUSEDFOREXAMPLE,CARREVERSINGRADAR,PETROCHEMICAL,NAVIGATIONANDOTHERINDUSTRIALFIELDSINADDITION,ITISWIDELYUSEDINMEDICINE,BIOLOGY,MATERIALSSCIENCEANDOTHERFIELDSTHISPAPERMAINLYSTUDIESULTRASONICOBSTACLEAVOIDANCEMODULEBASEDONMCUSYSTEM,ANDINTRODUCESTHEDESIGNINFORMATIONOFSOFTWAREANDHARDWARETHEHARDWARESECTIONINCLUDESMCUSYSTEM,PARTOFTHEULTRASONICTRANSMITTINGCIRCUIT,THEULTRASONICDETECTIONRECEIVINGCIRCUIT,DISPLAYCIRCUITANDPOWERCIRCUIT,ETCSOFTWAREINCLUDESMAINPROGRAM,ULTRASONICRANGINGPROGRAM,DISPLAYSUBROUTINE,ANDOTHERCOMPONENTS,VIACLANGUAGEPROGRAMMINGTHISPAPERDESIGNEDPCOBSTACLEAVOIDANCESYSTEMBYUSINGMCUASMICROPROCESSORINTHISWAYTOTAKEACCURATEACTIONTOAVOIDOBSTACLESUSINGMCUTOPROCESSTHEULTRASONICRECEIVEDSIGNALS,ANDDEBUGGINGTHEPROGRAMVIAKEILSOFTWAREREALTIMEDISTANCESANDDIRECTIONSCANBECOLLECTEDVIAULTRASONICTRANSFORMER,THEN,SENDTHESECOLLECTEDDATATOPCSOFTWAREVIASERIALSYNCHRONIZATIONINTHISPAPER,THEULTRASONICRANGINGPARTADOPTSHCSR04ULTRASONICRANGINGMODULE,THEMODULECANPROVIDEFROM2CMTO400CMNONCONTACTDISTANCEMEASUREMENTFUNCTION,RANGINGACCURACYCANREACH02CM,NAMELYOBSTACLESMAXIMUMDETECTIONRANGEIS4M,PRECISIONIS02CM,FARLESSTHAN2CMOBSTACLESMINIMUMDETECTABLEDISTANCEIS2CM,AFTERCONTINUOUSTESTING,THESYSTEMDETECTEDOBSTACLESPROBABILITYOF100,MEETTHEDESIGNREQUIREMENTS【KEYWORDS】SCMULTRASONICRANGINGOBSTACLEAVOIDANCE重庆邮电大学本科毕业设计(论文)IV目录前言1第一章绪论2第一节课题背景及意义2第二节超声波避障应用现状及发展前景2一、应用现状2二、发展前景3第二章超声波避障模块总体方案设计4第一节硬件总体方案设计4第二节软件总体方案设计4第三节本章小结5第三章超声波避障系统硬件设计6第一节单片机最小系统6一、电源部分6二、晶振电路7三、复位电路7第二节四路通道开关7一、CD4051介绍7二、CD4051工作原理8第三节超声波测距模块9一、超声波9二、HCSR04超声波传感器10三、超声波测距11第四节显示模块12一、LCD1602显示12二、上位机显示14第五节本章小结15第四章超声波避障系统软件设计17第一节编译环境17一、单片机编程17二、编程软件18第二节程序设计18重庆邮电大学本科毕业设计(论文)V一、显示程序19二、超声波测距程序20第三节本章小结20第五章系统的制作流程及功能调试21第一节系统的制作流程21一、原理图绘制21二、PCB板制作21三、电路焊接与调试22四、软件调试与功能实现23第二节系统功能调试23第三节本章小结25结论26致谢27参考文献28附录29一、英文原文29二、英文翻译40三、工程设计图纸49四、源程序50重庆邮电大学本科毕业设计(论文)1前言随着科技的高速发展,一种新的、有蓬勃生命力的智能机器人已经出现,正在给人们的生活带来越来越多的惊喜,同时也使人们的生活变得越来越舒适和安逸。要想机器人在移动过程中的路径准确,就必须将其安装测距避障系统,获取障碍物的距离和方向,及时避开障碍物。超声波作为避障的重要手段,避障实现方便,计算简单,便于实时控制,测量精度也能达到实用的要求。随着科技的快速发展,超声波在未来必将得到广泛应用。但就目前技术水平来说,人们可以利用的超声波技术还十分有限,因此这是一个正在蓬勃发展而又有无限前景的技术及产业领域。这些年来,随着超声波技术研究的不断深入,再加上其具有的高精度、无损、非接触等特点,超声波的应用变得越来越普及。目前已经广泛地应用在机械制造、电子冶金、航海、石油化工、交通等工业领域,此外在材料学、医学、生物学等领域也占据重要地位。超声波避障技术在社会生活中已广泛应用于倒车雷达等,它的测量精度一般偏低,目前对超声波高精度测距系统的需求越来越大。展望未来,超声波作为一种新型的非常重要的工具在各方面都有很大的发展空间,它将朝着更加高定位、高精度的方向发展,以满足社会日益发展的社会需求。未来的超声波避障技术将朝着更高精度,更大应用范围,更稳定方向发展。本文共有五章,第一章是绪论,主要讲述了课题背景及意义和超声波避障应用现状及发展前景;第二章是超声波避障模块的总体方案设计,包括硬件总体方案设计和软件总体方案设计;第三章是超声波避障系统的硬件设计,包括单片机最小系统、四路通道选择、超声波测距模块和显示模块,其中显示模块又分为LCD1602显示和上位机串口显示;第四章是超声波避障系统的软件设计,介绍具体的编译环境,以及系统编程开发软件,并进行主要模块的软件程序编写,包括超声波测距程序和显示子程序;第五章是系统的制作流程和功能测试,系统的制作流程包括原理图的绘制、PCB板的制作、电路的焊接与调试和软件的调试与功能的实现,不断调试,使系统能够正常工作,满足设计的要求。重庆邮电大学本科毕业设计(论文)2第一章绪论第一节课题背景及意义近年来,随着电子测量技术的发展,运用超声波测出障碍物的距离和方向,并且准确避开障碍物已成为可能。超声波拥有许多优点超声波以测量精度高、成本低、性能稳定而备受青睐。超声波是指频率在20KHZ以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量。随着科技水平的不断提高,超声波测距技术已被广泛用于人们日常工作和生活中。由于超声波测距是一种非接触检测技术,不受光线、被测对象颜色等的影响,较其他仪器更卫生,更耐潮湿、粉尘、高温、腐蚀气体等恶劣环境,具有少维护、不污染、高可靠、长寿命等特点。因此可广泛应用于纸业、矿业、电厂、化工业、水处理厂、污水处理厂、农业用水、环保监测、食品(酒业、饮料业、添加剂、食用油、奶制品)、防汛、水文、明渠、空间定位、公路限高等行业中。可在不同环境中进行距离准确度在线标定,可直接用于水、酒、糖、饮料等液位控制,可进行差值设定,直接显示各种液位罐的液位、料位高度。因此,超声波测距在特殊环境下有较广泛的应用。利用超声波检测往往比较迅速、方便、计算简单、易于实时控制,并且在测量精度方面能达到工业实用的指标要求,因此为了使移动机器人能够自动躲避障碍物行走,就必须装备测距系统,以使其及时获取障碍物的位置信息(距离和方向)。因此超声波测距在移动机器人的研究上得到了广泛地应用。同时由于超声波测距系统具有以上的这些优点,因此在汽车倒车雷达的研制方面也得到了广泛的应用1。第二节超声波避障应用现状及发展前景一、应用现状随着传感器和单片机控制技术的不断发展,非接触式检测技术已被广泛应用于多个领域。目前,典型的非接触式测距方法有超声波测距、CCD探测、重庆邮电大学本科毕业设计(论文)3雷达测距、激光测距等。其中,CCD探测具有使用方便、无需信号发射源、同时获得大量的场景信息等特点,但视觉测距需要额外的计算开销。雷达测距具有全天候工作,适合于恶劣的环中进行短距离、高精度测距的优点,但容易受电磁波干扰。激光测距具有高方向性、高单色性、高亮度、测量速度快等优势,尤其是对雨雾有一定的穿透能力,抗干扰能力强,但其成本高、数据处理复杂。与前几种测距方式相比,超声波测距可以直接测量近距离目标,纵向分辨率高,适用范围广,方向性强,并具备不受光线、电磁干扰等因素影响,且覆盖面较大等优点。目前,超声波测距已普遍应用在液位测量、移动机器人定位、汽车倒车雷达和避障等领域,应用前景广阔2。二、发展前景超声波测距作为非接触式检测技术的典型方法之一,以其价格低廉、信号处理可靠、不受电磁、天气影响等优势,必将拥有广阔的市场前景。综合分析国内超声波研究现状,超声波测距技术的发展前景有以下三点目前,超声波换能器多采用压电陶瓷材料和磁致伸缩材料来制造。这两种材料制造的换能器存在一定的阻抗失配问题,即在驱动脉冲结束后,由于惯性会继续振动产生盲区,进而影响系统的测量精度。因此,超声换能器制造材料的改进是超声波测距技术发展的一个重要方向。随着回波信号处理方法的逐渐完善,选择更合理的超声波发射脉冲、研发更高性能的超声波换能器,来提高超声波测距系统的有效作用距离、分辨力、测量精度和抗干扰性等性能,是超声波测距理论的又一个重要研究方向。此外,基于超声波测距、CCD探测、雷达测距、激光测距等多种非接触式检测技术均具有各自优点,将多种非接触式传感器合理地冗余复合使用,充分发挥各检测方法的优势,可以得到更精确的检测结果,这也将成为测距技术发展的一个热点3。重庆邮电大学本科毕业设计(论文)4第二章超声波避障模块总体方案设计第一节硬件总体方案设计硬件总体设计部分主要由单片机控制电路、四路通道电路、超声波发射电路、超声波检测接收电路、显示电路等部分组成,其中超声波测距模块包括超声波发射电路和超声波检测接收电路。硬件整体设计的结构框图如图21图21硬件设计结构框图本设计以STC89C52单片机为主控芯片,通过超声波测距获得距离障碍物的距离和方向,并显示出来。系统上电复位,进入工作状态。单片机编程产生一串40KHZ的20US的高电平,经四路通道开关CD4051加到超声波发射与回波接收电路,若有障碍物,则有信号返回,通过I/O口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,计算出发射点离障碍物的距离S,即SCT/2。C是超声波在空气中的传播速度,在常温25时,C约为346M/S。若发射出的超声波在测距范围内未遇到障碍物,则无信号返回,具体电路图和实物图见附件。第二节软件总体方案设计本设计可以用C语言编程序,也可以用汇编语言编程序,本人选择了用C四路通道电路单片机控制电路显示电路超声波测距重庆邮电大学本科毕业设计(论文)5语言编写程序。C语言的本身不会依靠与底层的硬件系统环境,所以说,只要通过简单的I/O口对应修改,以及头文件的修改,就可以将程序移植到不同的硬件系统中,而且C语言本身就有很多丰富的模块化程序,可以提供给我们直接使用,能够大大的缩短开发时间,提高开发效率。用C语言来编写程序,程序主要由超声波测距程序和显示程序构成。程序设计中,开始后首先初始化LCD1602,然后初始化超声波测距模块(串口初始化),再读取各通道的值,通过LCD1602和上位机显示。如果显示的通道值小于设定值,则串口发送数值。最后按键设定阈值,并且判断显示的通道值是否小于阈值,如果是,则相应标志位置位,不断循环,依次读取1、2、3、4的通道值。超声波测距程序,首先选择通道,超声波输入,关总中断,延时20US,产生20US的脉冲,然后等待,捕捉ECHO端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉ECHO的下降沿,当捕捉到下降沿,读出定时器的时间,这就是超声波在空气中运行的时间,由高电平持续时间计算出障碍物的距离,若无回波,则距离为0,依次循环扫描1、2、3、4四个超声波传感器的前方是否有障碍物。第三节本章小结本章主要介绍了超声波避障系统的硬件总体方案设计和软件总体方案设计。其中硬件设计由单片机系统、四路通道电路、超声波发射电路、超声波检测接收电路及显示电路等部分组成,其中超声波测距模块包括超声波发射电路和超声波检测接收电路;软件设计用C语言编写,由超声波测距程序和显示程序等组成。重庆邮电大学本科毕业设计(论文)6第三章超声波避障系统硬件设计硬件设计部分主要由单片机控制电路、四路通道电路、超声波发射电路、超声波检测接收电路、显示电路等部分组成,其中超声波传感器包括超声波发射电路和超声波检测接收电路。第一节单片机最小系统图31为单片机最小系统,一般来说,单片机的最小系统包括电源部分,晶振部分和复位电路4。P101P112P123P134P145P156P167P178RST9P3010P3111P3212P3313P3414P3515P3616P3717X118X219GND20P2021P2122P2223P2324P2425P2526P2627P2728PSEN29A/P30EA/VPP31P0732P0633P0534P0435P0336P0237P0138P0039VCC40U1STC89C52RC22PFC412Y1XTAL22PFC5GND10UFC3SS1KR4RXTX单片机最小系统GNDVCCVCCVCC123456789RNHEADER9D0D1D2D3D4D5D6D7ERSABCTRIG1TRIG2TRIG3TRIG4ECHOS1S2图31单片机最小系统一、电源部分引脚VCC(引脚40)接5V电源,引脚GND(引脚20)接地线。为提高电路的抗干扰能力,1个01UF的瓷片电容和1个10UF的电解电容通常被接在引脚VCC和接地线之间。重庆邮电大学本科毕业设计(论文)7二、晶振电路晶振是一种能够产生稳定震荡周期的电子元器件,在单片机里的时钟源就是由晶振电路提供的,晶体常用的振荡频率是1212MHZ,系统内部的时钟频率会随晶振的震荡频率而变化,也就是说越高的运行速度也越快。所以晶振电路在单片机系统中发挥着重要的作用,形象的比喻就像人体的脉搏一样。单片机通常选取6MHZ或者12MHZ的晶振,而单独的晶振是无法提供时钟源的,但通过选取有效的负载电容焊接起来组成晶振电路,并且所选取电容的大小在一定程度上影响振荡频率、稳定性、起振的速度,电容C4、C5对频率有微调作用,电容容量的选择范围为20PF30PF。本设计中电容选择22PF。所选用晶振通过与两个22PF的电容相连,组成了该单片机的晶振电路,将该电路与单片机的XTAL1和XTAL2引脚连接在一起,由此组成一个稳定的自激振荡器。单片机通过晶振输出的时钟脉冲,来对程序进行编写。三、复位电路单片机的复位是由外部的复位电路实现的。复位电路通常采用上电自动复位和按钮复位两种方式。本设计中采用按钮复位方式。复位是单片机的初始化操作。当单片机进行复位时,PC初始化为0000H,使单片机从程序存储器的0000H单元开始执行程序。除了进入系统的正常初始化之外,当程序运行出错或操作错误使系统处于死锁状态时,也需要复位键让RST脚置为高电平,使单片机摆脱“跑飞”或“死锁”状态而重新启动5。第二节四路通道开关一、CD4051介绍超声波避障系统要检测前后左右四个方向的障碍物,需要用到4个中断,因此选择CD4051芯片。图32为CD4051。CD4051就是一种单端8通道多路开关,它带有三个输入端A、B、C和一个禁止输入端INH。从A、B、C输入的信号来选择8个通道中的一个。INH1时,通道断开,禁止模拟量输入。当INH0时,通道接通,允许模拟量输入。CD4051芯片允许双向使用,即可用于多到1的切换,也可用于1到多的切换。重庆邮电大学本科毕业设计(论文)84162COM37455INH6VEE7VSS8C9B10A11312013114215VDD16U2CD4051VCCGNDABCECHOECHO1ECHO2ECHO3ECHO4电子开关图32CD4051CD4051还设有另外一个电源端VEE,以作为电平位移时使用,从而使得通常在单组电源供电条件下工作的CMOS电路所提供的数字信号能直接控制这种多路开关,并使这种多路开关可传输峰峰值达15V的交流信号。例如,若模拟开关的供电电源VDD5V,VSS0V,当VEE5V时,只要对此模拟开关施加05V的数字控制信号,就可控制幅度范围为5V5V的模拟信号。本文中VSS0V,VEE0V。使用十六进制代码就可以对CD4051进行操作了。比如说P10X07,这样CD4051就选择的是7号(二进制111)通道了。引脚功能描述A0A2地址端I0/O0I7/O7输入输出端INH禁止端O/I公共输出/输入端VDD正电源VEE模拟信号地VSS数字信号地二、CD4051工作原理CD4051的工作过程如下当禁止端INH为1时,译码器输出为全0,此时八个通道全部断开,即禁止输入。重庆邮电大学本科毕业设计(论文)9当INH输入为0时,译码器正常工作。此时若C0,B0,A0,则译码器Y0端输出1,通道0接通。当C0,B0,A1时,译码器Y1端输出1,通道1接通。当C0,B1,A0时,译码器Y2端输出1,通道2接通。当C0,B1,A1时,译码器Y3端输出1,通道3接通。当C1,B0,A0时,译码器Y4端输出1,通道4接通。当C1,B0,A1时,译码器Y5端输出1,通道5接通。当C1,B1,A0时,译码器Y6端输出1,通道6接通。当C1,B1,A1时,译码器Y7端输出1,通道7接通。本设计中只采用通道0、1、2、3四个通道6。第三节超声波测距模块一、超声波声波是一种机械波,它可以在气体、液体和固体等介质中传播。超声波是指频率高于20KHZ,在弹性介质中传播的一种机械振荡。正常人的听觉可以听到20赫兹(HZ20千赫兹(KHZ的声波,低于20赫兹的声波称为次声波或亚声波,超过20千赫兹的声波称为超声波。超声波是声波大家族中的一员,和可闻声本质上是一致的,它们的共同点都是一种机械振动,通常以纵波的方式在弹性介质内传播,是一种能量和动量的传播形式,其不同点是超声频率高,波长短,在一定距离内沿直线传播具有良好的束射性和方向性。郎之万第一次采用居里兄弟发现的压电晶体作为超声波发射和接收的核心部件,是超声波技术发展的一个里程碑。产生超声波的装置有机械型超声换能器例如气哨、汽笛和液哨等)、利用电磁感应和电磁作用原理制成的电动超声换能器、以及利用压电晶体的电致伸缩效应和铁磁物质的磁致伸缩效应制成的电声换能器等。超声波按照波沿传送方向的波动方式可分为纵波,横波,表面波和板波。我们常见的是纵和横波,本设计中用到的超声波是纵波。纵波是指介质中的质点的振动方向与波的传播方向相互平行或一致的波,用L表示。当介质质点受到交变拉压应力作用时,质点之间产生相应的伸缩变形,从而形成纵波。这时介质质点疏密相间,故纵波又成为压缩波或疏密波。凡能承受拉伸或压缩应力的介质都能传播纵波。固体介质既可承受拉力又可承受压缩力,因此固体介质重庆邮电大学本科毕业设计(论文)10可以传播纵播。液体和气体介质虽不能承受拉力,但能承受压应力产生体积或容积的变化,因此液体和气体也可传播纵波。二、HCSR04超声波传感器超声波传感器是利用超声波的特性研究而成的传感器。超声波是一种振动频率高于声波的机械波,由换能晶片在电压的激励下发生振动产生的,它具有频率高、波长短、绕射现象小,特别是方向性好、能够成为射线而定向传播等特点。超声波对液体、固体的穿透本领很大,尤其是在阳光不透明的固体中,它可穿透几十米的深度。超声波碰到杂质或分界面会产生显著反射形成反射成回波,碰到活动物体能产生多普勒效应。因此超声波检测广泛应用在工业、国防、生物医学等方面以超声波作为检测手段,必须产生超声波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声换能器,或者超声探头。超声波探头主要由压电晶片组成,既可以发射超声波,也可以接收超声波。小功率超声探头多作探测作用。它有许多不同的结构,可分直探头(纵波)、斜探头(横波)、表面波探头(表面波)、兰姆波探头(兰姆波)、双探头(一个探头反射、一个探头接收)等。超声波传感器的主要性能指标,包括工作频率。工作频率就是压电晶片的共振频率。当加到它两端的交流电压的频率和晶片的共振频率相等时,输出的能量最大,灵敏度也最高。工作温度。由于压电材料的居里点一般比较高,特别是诊断用超声波探头使用功率较小,所以工作温度比较低,可以长时间地工作而不产生失效。医疗用的超声探头的温度比较高,需要单独的制冷设备。灵敏度。主要取决于制造晶片本身。机电耦合系数大,灵敏度高;反之,灵敏度低。本文采用HCSR04超声波传感器,其主要技术参数为使用电压DC5V静态电流小于2MA电平输出高5V,低0V感应角度不大于15度探测距离2CM4M精度02CM重庆邮电大学本科毕业设计(论文)11三、超声波测距利用单片机输出一个触发信号,把触发信号输入到超声波测距模块,再由超声波测距模块的发射器向某一方向发射超声波,在发射的同时单片机通过软件开始计时,超声波在空气中传播,遇到障碍物返回,接收器接收到反射波产生一个信号反馈给单片机,此时计时停止。在常温25时,超声波在空气中的传播速度为346M/S,根据计时器记录的时间T,就可以计算出发射点距障碍物的距离S,即S346T/27。该部分采用HCSR04超声波测距模块,该模块可提供2CM400CM的非接触式距离感测功能,测距精度可达到02CM,模块包括超生波发射器,接收器与控制电路。工作原理采用IO口TRIG触发测距,给至少给10US的高电平;模块自动发送8个40KHZ的方波,自动检测是否有信号返回;有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离(高电平持续时间声速(346M/S)/2图33时序图以上时序图表明,只需提供一个10US以上的脉冲信号,该模块内部将发出8个40KHZ周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到接收到回响信号的时间间隔可以计算得到距离8。优点超声波检测障碍物的精度高,反映灵敏,受外界干扰小,计算简单、易于做到实时控制。重庆邮电大学本科毕业设计(论文)12第四节显示模块一、LCD1602显示1、LCD1602简介液晶显示的主要原理是通过电流刺激液晶分子再配合背部灯管形成点、线、面等画面。通常来讲,液晶显示按照显示方法来分类,被分为段式、字符式、点阵式等。LCD1602是一款工业字符型液晶,可以同时显示16X2个字符,即16列2行,它是采用HD44780液晶芯片控制,HD44780具有较强的指令集,它可以控制字符的闪烁,移动等功能。LCD1602的字符发生存储器已经存储了160个点阵字符图形,其中包括英文字母,阿拉伯数字,常用符号等字符,且每一个字符图形对应一个地址9。本次设计所采用的LCD1602,一共有16个引脚,带有背光接口,如图34图34LCD1602LCD1602液晶显示各个引脚名称及功能,如下表31所示表31LCD1602引脚功能介绍引脚功能及作用VSS接地端VCC接正极电源(5V)V0液晶显示对比度调整端(接正极时,对比度最弱;接负极时,对比度最强)RS寄存器选择端(高电平选择数据寄存器,低电平选择指令寄存器)R/W读/写(高电平,读操作;低电平,写操作)12345678910111213141516P8HEADER16D7D6D5D4D3D2D1D0ERWRSV0GNDGND21310KRPGNDLCD1602显示模块VCCGNDVCC重庆邮电大学本科毕业设计(论文)13续表31E使能端(高电平,读取信息;下降沿,执行指令)DB0DB78位双向数据端BLA背光正极BLK背光负极2、LCD1602内部指令集LCD1602液晶显示模块的读写,光标等的控制都是依靠指令编程来实现的,该款芯片的内部控制器HD44780中共包含了11条控制指令,如下表所示表32指令介绍序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回0000000013置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L6置功能00001DLNF7置字符发生存储器地址0001字符发生存储器地址8置数据存储器地址001数据显示存储器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容3、LCD1602基本技术参数在实际的液晶应用中,还必须要考虑到,LCD1602的相关技术参数与环境,其中LCD1602的主要技术参数,如下表33所示表33LCD1602的主要技术参数显示容量162个字符工作电压4555V重庆邮电大学本科毕业设计(论文)14续表33工作电流20MA模块最佳工作电压50V字符尺寸295435WHMM二、上位机显示本系统利用串口通信,将单片机和PC机通过串口进行通信,由于单片机提供的信号电平和RS232的标准不一样,因此要通过MAX232芯片进行电平转换。1、MAX232相关介绍下图为MAX232引脚结构图,其中图的上半部分电容C7,C8,C9,C10,V,V是电源变换电路部分。在实际应用中,器件对电源噪声很敏感,因此,VCC必须要对地加去耦电容C6,其值为01UF。按芯片手册中介绍,电容C7,C8,C9,C10,应取01UF/16V的电解电容,经大量试验及实际应用,这4个电容都可以选用01UF的非极性瓷片电容代替01UF/16V的电解电容,具体设计电路时,这4个电容要尽量靠近MAX232芯片,以提高抗干扰能力。图的下半部分为发送和接收部分。实际应用中,T1IN,T2IN可直接连接TTL/COMS电平的51单片机串行发送端TXD;R1OUT,R2OUT可直接连接TTL/COMS电平的51单片机串行接受端RXD;T1OUT,T2OUT可直接连接PC机的RS232串口的接收端RXD;R1IN,R2IN可直接连接PC机的RS232串口的发送端TXD。12P7HEADER2TXRXC11V2C13C24C25V6T2OUT7R2IN8R2OUT9T2IN10T1IN11R1OUT12R1IN13T1OUT14GND15VCC16U3MAX23201UFC1001UFC601UFC901UFC801UFC7VCCGNDRXTX1234P9HEADER4VCCGND串口电路12P10HEADER2TXRX图35MAX232芯片引脚结构图重庆邮电大学本科毕业设计(论文)15从MAX232芯片中两路发送、接收中任选一路作为接口。需注意其发送、接收的引脚要对应。假设使T1IN连接单片机的发送端TXD,则PC机的RS232接收端RXD一定要对应接T1OUT引脚。同时,R1OUT连接单片机的RXD引脚,PC机的RS232发送端TXD对应接R1IN引脚。本设计中,数据传输过程如下MAX232的脚T2IN接单片机TX端;TTL电平从单片机的TX端发出,经过MAX232转换为RS232电平后从MAX232的脚T2OUT发出,再连接到串口,至此计算机接收数据。2、上位机串口显示上位机和下位机,一般是指集中控制系统中的PC机和现场的工控机。上位机主要用来发出操作指令和显示结果数据。上位机软件一般用高级语言汇编,如BASIC、C,有比较丰富的图形界面。下图为上位机串口显示图图36上位机串口显示第五节本章小结本章主要讲述了硬件设计部分,该系统的硬件部分有单片机系统、超声波发射电路、超声波检测接收电路、显示电路及电源电路等部分组成。其中超声重庆邮电大学本科毕业设计(论文)16波传感器中包括超声波发射电路和超声波检测接收电路。首先简单讲述了本设计的四个模块以及需要实现的相关功能,并给出了设计的结构框图;其次,根据需要实现的功能,分别介绍了各个模块应用的相关元器件。对于元器件的介绍是比较详细的,包括期间的功能和引脚做了详细的介绍,以及该器件在本设计中起到的主要作用也都进行了相关说明。能够让读者更加清楚的了解到本设计的思路,以及怎样实现相关操作。重庆邮电大学本科毕业设计(论文)17第四章超声波避障系统软件设计第一节编译环境一、单片机编程本设计可以用C语言编程序,也可以用汇编语言编程序,本人选择了用C语言编写程序。主要编程序来控制定时、计时中断、和输出等。C语言是计算机程序设计语言中非常经典的一种语言,每一个理工类的大学都会把C语言作为一种教学方式,因为C语言在各种各样的环境中得到了广泛的应用。C语言的资料比较多,而且便于学习,能够支持很多环境编程。阅读起来也比较轻松,所以得到了广大程序设计人员的钟爱。目前很多的单片机开发都选择使用C语言作为主要的编程语言。C语言的本身不会依靠与底层的硬件系统环境,所以说,只要通过简单的I/O口对应修改,以及头文件的修改,就可以将程序移植到不同的硬件系统中,而且C语言本身就有很多丰富的模块化程序,可以提供给我们直接使用。能够大大的缩短开发时间,提高开发效率。而且随着单片机性能的不断发展和价钱的不断降低,现在利用C语言开发单片机应用程序,可以具有开发高效率,程序可读性强,后期维护方便,方便移植,成本低,时间周期短等优点,因此利用C语言进行单片机的开发已经成为主流10。单片机C语言编程和单片机汇编语言编程比较,单片机使用C语言进行编程具有以下优点单片机的内部汇编指令系统不需要进行精确的掌握,可以直接通过C语言编程,只需要在一些细节的地方注意套用程序就可以顺利的控制单片机;单片机内部的数据类型分配和其他细节的地方,编译器会自动进行处理,我们不需要操作;一个标准的编程格式,使用不同的功能组合,可以使程序结构易于维护和更新,含有大量的标准函数库;采用模块化的编程技术是经过大量的验证,比较成熟的。因此在不同硬件平台的程序可以方便地移植到其它硬件系统。C语言属于面向过程的程序语言,语法规范并不复杂,即使没有专门学过C语言,也可以在很短时间内掌握单片机C语言编程,并通过实验程序的编写,结合硬件电路,练习并消化如何使用C语言开发单片机程序。重庆邮电大学本科毕业设计(论文)18二、编程软件KEIL是一款专门用于开发单片机内部程序的专业编程软件,我们本次使用的是STC89C52。KEIL可以支持汇编也可以支持C语言,但是我们选择使用的是效率高的C语言来进行系统程序的编写。KEIL软件的界面也是常用的WINDOWS界面,操作起来比较顺手,上手简单,可以多人分层次的进行模块化编程,能够大大提高整个系统编程的效率。整个单片机开发项目的单片机编程流程如下首先需要使用KEIL来创建一个新的工程项目,项目的名字就可以起成能够便于识别的文件名,然后选择芯片,通过不同公司点击选择这个公司生产的某一种单片机芯片。然后配置开发环境。比如说需要输出HEX文件。新建一个空文档,用C语言或者汇编语言创建源代码,如果是C语言,文件就要保存为C文件,如果是汇编语言,文件就要保存为ASM文件。然后在这个文件里面编写程序,如果有多个文件,都需要添加到工程里面,然后编译,如果软件显示有语法错误的提示,就需要根据错误提示找到源程序对应的位置进行修改源代码。当把所有的语法错误都修改好后,再次进行编译。这里需要强调的是,KEIL软件编程环境只能显示语法错误,没有办法显示逻辑错误,当确定没有任何错误的时候,就开始进行后续的操作,生成HEX文件即可11。第二节程序设计程序设计中,开始后首先初始化LCD1602,然后初始化超声波测距模块(串口初始化),再读取各通道的值,通过LCD1602和上位机显示。如果显示的通道值小于设定值,则串口发送数值,在上位机上显示具体距离并且在LCD1602上会有相应的标志位置位。最后按键设定阈值,并且判断显示的通道值是否小于阈值,如果是,则相应标志位置位,不断循环,依次读取1、2、3、4的通道值。重庆邮电大学本科毕业设计(论文)19程序流程图为开始初始化LCD初始化超声波模块(串口初始化)读取通道值LCD1602显示通道值小于设定值串口发送数据按键设定阈值通道值小于阈值标志位无显示标志位置位否是是图41程序流程图一、显示程序首先LCD1602初始化,显示模式为设置16X2显示,5X7点阵,8位数据口(0X38),设置开显示,不显示光标(0X0C),写一个字符后光标加1(0X06),数据指针清零(0X01);其次是LCD1602的基本显示,第一行和第二行分别显示P1、P2和P3、P4的距离,并设置标志位,其详细程序见附录。LCD1602初始化程序流程图为开始LCD使能写命令完成LCD设置在相应位置写固定数据结束图42LCD1602初始化程序流程图重庆邮电大学本科毕业设计(论文)20二、超声波测距程序首先选择通道,超声波输入,关总中断,延时20US,产生20US的脉冲,然后等待,捕捉ECHO端输出上升沿,捕捉到上升沿的同时,打开外部中断0,定时器0开始计,再次等待捕捉ECHO的下降沿,当捕捉到下降沿,读出定时器的时间,这就是超声波在空气中运行的时间,由高电平持续时间计算出障碍物的距离,若无回波,则距离为0,依次循环扫描1、2、3、4四个超声波传感器的前方是否有障碍物。超声波测距程序流程图为开始给选择的传感器触发信号等待输出响应外部中断0触发定时器记录回响脉冲宽度产生回波距离为XX脉冲宽度转换为距离返回距离值结束否是图43超声波测距程序流程图第三节本章小结本章主要介绍超声波避障系统的软件设计,介绍具体的编译环境,以及系统编程开发软件,并进行主要模块的软件程序编写,包括超声波测距程序和显示子程序等。重庆邮电大学本科毕业设计(论文)21第五章系统的制作流程及功能调试第一节系统的制作流程一、原理图绘制首先,对整体方案进行设计,用PROTEL画出系统的原理图(原理图的设计主要是根据各元器件的性能,对各元件进行合理的搭建),画原理图时需要注意各器件的安放位置,有些器件可以适当靠近,有些器件必须远离,尽量减少走线的长度。然后对原理图进行编译,对各元器件进行封装,总结出需要的器件,列出器件清单,完成采购工作12。电路图如图51所示图51超声波避障系统电路图二、PCB板制作PCB板的选择根据本次设计的实际情况,我们选择使用单面板即能满足要求。因为单面板在设计线路上有许多严格的限制,如今,在一些较为简单的电路中仍然被使用。接下来对开发板进行测试,对开发板进行基本的连线,测试开发板功能,成功之后表示开发板可用,根据原理图和PCB板的大小合理的设计元器件的位置,以保证接线不交叉,如图52为本设计的PCB图D0LED012P1HEADER2GNDVCC1KR1S0SWSPSTP101P112P123P134P145P156P167P178RST9P3010P3111P3212P3313P3414P3515P3616P3717X118X219GND20P2021P2122P2223P2324P2425P2526P2627P2728PSEN29A/P30EA/VPP31P0732P0633P0534P0435P0336P0237P0138P0039VCC40U1STC89C52RC22PFC412Y1XTAL22PFC5GND10UFC3SS1KR4RXTX单片机最小系统GNDVCCVCCVCC123456789RNHEADER9D0D1D2D3D4D5D6D712345678910111213141516P8HEADER16D7D6D5D4D3D2D1D0ERWRSV0GNDGND21310KRPGNDLCD1602显示模块VCCERSGNDVCCABC1234P2HEADER41234P3HEADER41234P4HEADER41234P5HEADER412P6HEADER2GND12P7HEADER2TXRX4162COM37455INH6VEE7VSS8C9B10A11312013114215VDD16U2CD4051VCCVCCVCCVCCVCCGNDGNDGNDGNDGNDABCTRIG1TRIG2TRIG3TRIG4TRIG1TRIG2TRIG3TRIG4ECHOECHOECHO1ECHO2ECHO3ECHO4ECHO1ECHO2ECHO3ECHO4S1S2GNDS1S2S1S2C11V2C13C24C25V6T2OUT7R2IN8R2OUT9T2IN10T1IN11R1OUT12R1IN13T1OUT14GND15VCC16U3MAX23201UFC1001UFC601UFC901UFC801UFC7VCCGNDRXTX1234P9HEADER4VCCGND按键电子开关5V电源输入超声波接口串口电路12P10HEADER2TXRX重庆邮电大学本科毕业设计(论文)22图52超声波避障系统PCB图PCB电路板制作一般会发给集成电路制作公司制作,这样的话可以避免麻烦,增加准确性,还比较美观,但成本会高点;所以一般的电路板可以自己制作,首先需要准备器械或器材如下覆铜板、裁板机、砂纸、透明胶带、塑封机、硫酸铜腐蚀剂。先将覆铜板裁成所需大小和形状,利用砂纸擦去表面氧化层,将电路纸贴于准备好的覆铜板上,放到塑封机上加热塑封,大概10分钟之后(电路完全粘上覆铜板之后),取出电路图纸。然后把硫酸铜腐蚀剂溶于热水中,将制作好的覆铜板放于其中,震荡以加速死铜的溶解,大概十几分钟后(死铜完全溶解),取出电路板。用砂纸擦去电路板上的墨迹,电路板就只剩下需要的电路了。三、电路焊接与调试进行打孔,根据事先的安排在需要的地方有打孔机进行打孔,将器件插入后焊接,准备好焊锡丝和烙铁头进行焊接,在焊接时需注意在焊锡尚未完全凝固前不要晃动元件,以免造成虚焊。焊接的过程需要格外注意,尽量保持烙铁头清洁,同时集中注意力,避免造成虚焊或者错焊,并在完成焊接的情况下尽量保持美观。焊接完成后,对电路板进行测试,如果出现问题,则需要通过电路图来确定出错的位置,进行更改或者更换元器件后重新测试13。重庆邮电大学本科毕业设计(论文)23四、软件调试与功能实现硬件部分完成后,开始软件部分,用KEIL软件编写C语言程序,有些部分已经形成了固定的程序段,可以直接进行调用,调试程序无错误后烧入单片机(尽量消除警告),让系统整体运行,观察能否完成预想的功能,此时硬件部分应该不需要再进行调整,只需修改程序部分,不断调试细节,直至完成所需功能14。完成后的实物图如图所示图53超声波避障系统实物图第二节系统功能调试设计完全成型后,对系统的功能进行测试,具体实现过程如下首先,接电源,打开开关,系统上电,在4个超声波传感器的前面放置障碍物,则LCD1602会显示障碍物的距离和方向,P1代表前方障碍物的距离,P3代表后方障碍物的距离,P2代表左方障碍物的距离,P4代表右方障碍物的距离,图中按键设置阈值为15CM,若障碍物的距离小于阈值,则相应标志位置位,显示“”,如图54、55所示重庆邮电大学本科毕业设计(论文)24图54LCD1602显示图55LCD1602显示图54和图55中,P1代表前方障碍物的距离为11CM,P3代表后方障碍物的距离为79CM,P2代表左方障碍物的距离为46CM,P4代表右方障碍物的距离为8CM,图中按
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江苏扬州宝应县“乡村振兴青年人才”招聘67人笔试参考题库及完整答案详解1套
- 2024年度河北省护师类之妇产护理主管护师通关题库(附答案)
- 2025江苏苏州高新区管委会人才引进120人笔试备考题库及完整答案详解1套
- 2025年宝鸡市公务员考试行测试卷历年真题及答案详解参考
- 陕西省西安市部分学校联考2024-2025学年高一上学期12月月考物理试题(解析版)
- 内蒙古赤峰市名校2024-2025学年高一上学期期末联考物理试题(解析版)
- 河南省安阳市2024-2025学年高一下学期期中联考物理试卷(解析版)
- 山东省泰安市2023-2024学年高二下学期7月期末数学试题(解析版)
- 房地产项目的竞争分析与市场定位
- 鼓膜修复手术实况演示
- 2023-餐饮公司章程范本
- 住宅项目工程总承包(EPC)技术标
- 地下室SBS改性沥青防水卷材施工方案
- 蛛网膜下腔出血护理查房蛛网膜下腔出血教学查房课件
- 开油锅红袖章制度
- 眩晕诊疗方案总结优化
- 钢板仓气力输送粉煤灰系统安全操作规范
- 电梯钢带问题分析与对策
- 贵州省毕节地区金沙县2022-2023学年小学六年级数学毕业检测指导卷含答案
- DB32-T 4284-2022 居民住宅二次供水工程技术规程
- 高中化学-烃的衍生物复习教学课件设计
评论
0/150
提交评论