《基于单片机的超声波测距系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的超声波测距系统的设计与实现毕业论文.doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 基于单片机的超声波测距系统的设计与实现毕业论文目 录第一章 绪论11.1 研究的背景和意义11.2 国外研究现状11.3 课题研究容和意义2第二章 超声波测距的原理52.1 超声波介绍52.2 超声波传感器的介绍52.2.1 传感器的选择62.2.2 超声波测距的原理72.2.3 温度补偿82.2.4 测量盲区92.3 本章小结9第三章 系统硬件设计103.1 系统硬件设计103.2 单片机概述113.2.1 STC89C51主要性能特点113.2.2 STC89C51结构组成123.2.3 STC89C51部组成143.3 超声波发射电路设计153.3.1 发射电路设计方案153.3.2
2、超声波发射器的须知163.4 超声波接收电路设计173.5 LCD显示部分183.6 报警部分203.7 DS18B20部分213.8 本章小结21第四章 系统软件设计224.1 系统软件设计224.2 外部中断子程序244.3 定时器中断子程序254.4 重要功能实现264.4.1 实现温度读取功能264.4.2 实现温度转换声速274.4.3 实现距离计算274.5 实验测量数据284.6 本章小结28结论29参考文献30谢辞31附录一(实物图)32附录二(Proteus仿真图)3336 / 39第一章 绪论1.1 研究的背景和意义 随着科技的发展,超声波已经可以对实物做出精确测量。伴随着
3、社会经济的蓬勃发展,电子测量技术也逐渐被应用到各个领域,而超声波测距技术因拥有测量精确度高、成本消耗低、性能稳定度高等优点则成为其中的佼佼者。频率在20KHz以上的声波是超声波。也正是因为这些特性超声波才会被应用到测量距离中。科技在不断发展,人们的需求也在不断提高,因此,超声波逐渐被人们应用到生活和个行业(如医疗、工业、航天等)当中。 超声波是一种非常实用有效的测量方法,人们借用它不需要接触物体就可以进行精确测量。它还对环境因素(如光线、高温、腐蚀气体和潮湿等)的测量影响具有较高的抵抗性。而且还有测量精确度高,对环境无污染,基本上不用维护,使用寿命长等好处。所以能够广泛应用于化工、污水、环境监
4、测等诸多具有腐蚀性的行业中。对环境适应能力强,无论在什么样的环境中,都能够进行精确测量并标定准确度。可对多种液体(如水、酒和饮料等)进行液位控制,设定差值。还有一个很大的优点,能够对盛装液体的液位罐直接显示其液位高度。因此,超声波测距在空气和特殊环境中拥有较广泛的应用。超声波在机器人的研制和倒车雷达等实例中也被广泛使用。1.2 国外研究现状 实际上,在工程应用当中超声波检测技术存在两个突出的问题,一是:由于超声波自身传播的特性和某些材料的吸收特性,使得超声波在传播距离加长的同时,回波信号也随着变的异常微弱;二是:回波信号中夹杂着许多干扰信号,而回波信号自身较为微弱,很容易被噪声所淹没。因此传统
5、方法对提取回波信号已无效。 人们一直很重视如何降低输入信号的信噪比。从19世纪末,傅里叶变换理论和傅里叶级数问世,人们就高度重视对频率信号的检测,第一台锁相放大器在1962年问世,从而使提取淹没在噪声中的信号成为现实。在此之后不断涌现出新的检测理论和方法,成功研制出许多性能优良的测量仪器,并不断成功的降低微弱信号的测量下限。自20世纪90年代开始,经过十多年的发展,混沌理论作为一种新的检测方法出现,并在在微弱信号检测中具有巨大的潜力。 自从进入21世纪开始,国的广大学者和科研人员就对超声波测量精确度的提高方面进行了大量的尝试研究。其中有对超声波发射脉冲的选取和对新型超声波换能器的研发。主要研究
6、方向是如何提高超声波回波信号精度的处理方法。更是针对影响超声波测距精确度的措施提出了温度补偿等方法。就目前来说,国虽然对超声波回波信号的处理有了较为成熟的研究发展,由于它对超声波测距的探测定位具有关键性作用,因此国学者仍然将它作为重要研究方向之一。1.3 课题研究容和意义本设计系统打算实现在实验室进行小围的测距。测距量程约为0.02m4m,测量精度可达到毫米级。系统整体结构如图1.1所示。图1.1系统设计方案图 由图可知本系统硬件设计是由六部分组成,分别为: (1)发射电路。 (2)接收电路。 (3)单片机控制器。 (4)LCD显示电路。 (5)温度测量电路。 (6)声音报警电路。 实际测量时
7、,在LCD液晶显示屏上显示出所在地的实时环境温度。发射电路发射超声波经反弹后被接收电路接收。经过STC89C51单片机进行数据处理后将距离也显示到LCD上。如果距离超出设定的值,报警电路就会鸣叫,即提醒测量距离超出量程。超声波测距器的系统框图如以下图1.2所示。图1.2系统设计框图 从效益和成本出发,HC-SR04超声波测距模块是一个非常好的选择。由以下图1.3可看出,T0时刻由超声波模块的发射端发射一束方波,并于此时定时器开始工作计时。接收端收到回波后,产生一负跳变通到单片机的中断口。之后单片机会响应中断程序,同时定时器会停止计数。两次测得的时间差,就是我们所需要的超声波在媒介中的传播时间t
8、,通过进一步计算便可以得出距离。图1.3时序图通过本次设计,完善自我,学习了解单片机的相关知识。并且能够具体了解基于单片机的超声波测距的发展现状以与能进行简易测距仪器制作。这对我们以后的工作生活是非常有意义的。第二章 超声波测距的原理2.1 超声波介绍 所谓超声波就是频率超过20KHz人耳不能辨识的音波。如今超声波被应用到诸如工业、医疗、军事等各种行业当中。 超声波的特点: (1)超声波传播过程中,方向性很强,能量集中。 (2)超声波的传播适应于各种不同媒质,传播距离够远。 (3)超声波载体性很强,可作为载体进行治疗操作。 (4)超声波能够在固、液、气、固熔等介质中传播。 (5)超声波传递的能
9、量可以很强。 (6)超声波具有反射的现象。这是其之所以能够成为测量距离的重要方法之一的原因之一。 (7)超声波不但是一种波动形式,可作为媒介如B超等进行医疗诊断;同时也是一种能量形式,可对患者进行治疗。2.2 超声波传感器的介绍 超声波发生器可分为两大类: 一是电气方式产生超声波; 二是机械方式产生超声波。而压电式超声波发生器是目前常用的。超声波传感器结构如以下图2.1和图2.2。 图2.1超声波传感器外部结构 图2.2超声波传感器部结构2.2.1 传感器的选择 本课题设计选用的是HC-SR04超声波模块。HC-RS04模块不但性能比较稳定、测度距离精确,而且该模块的测量精度高,盲区小。 可用
10、于机器人避障,物体测距,液位检测,公共安全,停车场检测。 电气参数如下表2.1。表2.1超声波模块HC-SR04的电气参数电气参数超声波模块HC-SR04工作电压DC5V工作电流15mA工作频率40KHz最远射程4m最近射程2cm测量角度15度输入触发信号10uS的TTL脉冲输出回响信号输出TTL电平信号,与射程成比例规格尺寸45*20*15mm 基本工作原理: 采用I/O口TRIG触发测距。能够给出至少10us的高电平信号。 该模块将会自动向外界发送8个40KHz的方波。并且还能够自动检测是否有信号返回。当信号返回时,I/O口对此作出响应而输出一个高电平。这个高电平所持续存在的时间就是超声波
11、往返的时间。 本模块的使用方法非常简单。通过控制口发一个10s以上的高电平,然后在接收端等候高电平输出。当高电平输出时,定时器开始计时。这个端口的高电平经过一段时间后会变为低电平。变为低电平的一瞬间我们所读取定时器的值,就是这次测量距离的时间。这样就可以算出距离。通过不断的进行周期测量,就可以得出移动测量的值。2.2.2 超声波测距的原理超声波测距方法主要有三种:(1) 声波幅值检测法: 该方法虽然最廉价最简单但容易受反射波的影响,精确度却是最低,在此就不详细介绍了。(2)相位检测法: 相位检测法是利用发射波与反射波之间的相位差来实现超声波测距。设起始时刻为,则发射波的强度为(实际测量时的发射
12、波是方波,为了方便计算说明所以在此用正弦波举例)。接收调制波的强度为,则接收与发射时刻的相位差为,时间差为。根据时间和相位的关系,待测距离可以转换为。其中为波长,为整周期数,为非整周期的相位差值。可用计数器测出。该方法虽然测量精确度高精度高,但是检测围有限。(3) 渡越时间法: 首先通过检测计数从超声波传感器的发射端发出声波的时刻记为t1,超声波返回到传感器接收端的时刻t2,两者的时间差t=t2-t1,这个时间差就是渡越时间。设L为测量距离,t为往返时间差,超声波的传播速度为c,求距离L。则有L=ct/2。该方法简单而直接,极易实现。虽然精度相对于相位检测法差点,但好在测量距离足够远。综合以上
13、分析,本设计将采用渡越时间法。超声波测距原理如图2.3所示。图2.3超声波测距原理图2.2.3 温度补偿超声波也是声波,所以其声速c仍然与空气温度有关。一般来说,c随着温度每升高1,就增加0.6m/s。表2.2列出了几种温度下的声速。表2.2超声波声速随温度的变化温度()-30-20-100102030100声速(m/s)313319325323338334349386 测量时,若温度变化不大,则声速取值c=340m/s。若要求高精度,则可通过温度补偿或者软件改进提高精度。 在本设计中用STC89C51中的定时器来测量超声波传播时间,用DS18B20测量环境温度,达到提高测距精度的目的。空气中
14、声速与温度的关系可表示为: 公式2-(1) 声速确定后,只要得到超声波往返的时间,就可以求得距离: 公式2-(2) 增加角度补偿可使得测量数值更加的精确。公式2-(3)2.2.4 测量盲区我们都知道,超声波模块发射探头和接收探头是并排放置到铜板上的。而为了方便测量,再加上测量会有一个夹角,夹角越小越精确,因此他们离着很近。显而易见,发射探头所发出的超声波必然会先传播到接收探头。但该声波信号并不是反射回来的信号,只要检测到该信号,接收电路就会对其进行处理而产生中断信号,单片机也会跟着做出响应。但所测得值并不是我们要测的,是错误的操作。因此要等发送脉冲一段时间后才能让单片机接收中断信号。然而,该短
15、时间所走过的长度我们是不能检测到的,即为测量盲区。可用以下图2.4表示。图2.4超声波回波测距原理分析图2.3 本章小结 本章主要是介绍设计相关理论,对超声波和设计所用单片机作了简要概述,并对STC89C51的性能特点、外部结构和部组成做了相关阐述。超声波传感器的选择也很重要。最重要的是超声波测距的原理方法,这是根本,因此本章对此进行了相关介绍,并为对测量时产生的误差进行减免措施。第三章 系统硬件设计3.1 系统硬件设计 系统硬件主要由以下六部分组成: (1)单片机系统。 (2)超声波发射电路。 (3)超声波检测接收电路。 (4)温度补偿电路。 (5)显示电路。 (6)报警电路。其结构框图如图
16、3.1所示。图3.1系统硬件设计结构框图 社会在发展,科技在提高,超声波测距技术也随之更进一步。但超声波的发射和接收仍然是我们要研究的重要问题。超声波传感器的工作原理都是一样的。无论其大小、形状、灵敏度有什么不同。而要提高超声波测量的精度,则必须要从设计要求的关键和难点出发,即对超声波的发射处理和超声波的接收处理这两个重要方面。3.2 单片机概述 单片机就是一块由诸多功能模块构成的集成电路芯片。所以单片机会拥有一些特殊功能。然而这些功能的实现需要人为控制,即通过编程来控制,进而实现各种不同的功能。目前单片机应用领域很广泛:工业自动化。如数据采集、测控技术。智能仪器仪表。如数字示波器、数字信号源
17、、数字万用表、感应电流表等。消费类电子产品。如洗衣机、电冰箱、空调机、电视机、微波炉、IC卡、 汽车电子设备等。通信方面。如调制解调器、程控交换技术、手机等。武器装备。如战斗机、坦克和智能导弹等。3.2.1 STC89C51主要性能特点 STC89C51简单介绍: (1)STC 前缀,表示STC公司生产的产品。 (2)8表示该芯片为8051核芯片。 (3)9表示部含Flash EPROM存储器。 (4)C表示该器件为CMOS产品。 (5)5固定不变。 (6)1表示该芯片部程序存储空间的大小为4KB 。算法其实就是5后面的这个数乘上4KB。 主要性能: (1)STC89C51系列单片机是从引脚到
18、核都完全兼容标准8051的单片机。 (2)STC89C51 系列单片机是新一代的8051单片机。它具有高速/低功耗的优点,工作频率最高可达到25MHz50MHz。 (3)STC89C51系列单片机有较宽的工作电压。5V型号的可工作于3.4V6.0V。3.3V型号的可工作于2.0V4.0V。 STC89C51单片机还具有以下特点: (1)ISP与IAP编程方式。 (2)6时钟,机器周期模式。 (3)降低簟片机对外部电磁辐射。 (4)部扩展RAM。 (5)双DPTR数据指针。 (6)扩晨P4口。 (7)置看门狗电路。 (8)软复位功能。 (9)较高的性价比。3.2.2 STC89C51结构组成 其
19、外形封装直插式40 脚封装(DIP)如图3.2: STC89C51的 4 个 8 位I/O口的功能说明如下: (1)P0口(3932脚):P0 口是一个 8 位漏极开路的双向 I/O 口。每个口可独立控制。51单片机的P0口并不能正常地输出高电平或者低电平。这是由于在其部没有上拉电阻的原因,会造成其其处于高阻状态而无法正常工作。实际使用时,为使其能够正常工作我们需要为其添加上上拉电阻(一般选择10K)。高阻在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 (2)P1口(18脚): 是一个准双向8位I/O口,每个口可独立控制。是一个“准”双向口。这个“准”不是即将成为而差一点的意思,而
20、是准备的“准”。之所以称他为“准”双向I/O口,有两个原因。一是是因为其部含上拉电阻并且不能进行输入锁存。二是首先要先向P2口写入1才能把P2口作为输入口使用,也就是在这之前会有一个“准”备程序。 (3)P2口(2128脚):P2口也是一个准双向8位I/O口。每个口均可独立控制,带上拉电阻,与P1口相似。 (4)P3(1017脚)口:是一个准双向8位I/O口。每个口可独立控制,带上拉电阻。P3口拥有两个功能。一是作为普通I/O口使用。其第二功能如下表3.1所示。 表3.1 P3口各引脚第二功能定义标号引脚第二功能说明P3.010RXD串行输入口P3.111TXD串行输出口P3.212INT0外
21、部中断0P3.313INT1外部中断1P3.414T0定时/计数器0外部输入端P3.515T1定时/计数器0外部输入端P3.616WR外部数据存储器写脉冲P3.717RD外部数据存储器读脉冲图3.2 STC89C51引脚排列3.2.3 STC89C51部组成 STC89C51单片机包含的具体部分如下: (1)一个8 位 CPU。 (2)一个片振荡器与时钟电路。 (3)4KB Flash 程序存储器。 (4)128 B RAM 数据存储器。 (4)两个16 位定时器/计数器。 (5)看门狗。 (6)32 条可编程的 I/O线(4组8 位并行 I/O端口)。 (7)一个可编程全双工串口通信。 (8
22、)8 个中断源、两个优先级嵌套中断结构。 如图3.3是单片机STC89C51各部件关系的的框图。图3.3 STC89C51部组成3.3 超声波发射电路设计要完成超声波测量,首先需要超声波发射电路能够向外界发射出40KHz的方波脉冲信号。本系统设计使用软件(如用单片机软件编程)的方法输出该方波脉冲信号。由电路可看出需要在单片机的P1.0端口输出该脉冲信号,但其输出功率却不不能够达到我们所需要的要求。为了满足远距离测量,则脉冲信号的发射距离就需要够远也就要增大其功率。所以该脉冲信号分成两路,用来增大传输功率,以满足设计要求。最后送给超声波发射换能器TCT4016T以声波形式发射到空气中。发射部分电
23、路,如图3.4所示。图3.4超声波发射电路框图3.3.1 发射电路设计方案 对发射电路进行分析: (1)发射波必须具备良好的重复性。从而可以得到高分辨率。 (2)发射波尽量具备同一频率的振动。从而达到可以消除干扰和接收同一振动波峰的目的。 (3) 发射波需要用间断多脉冲发射的方式进行发射。从而达到可以测量较远距离的要求。 (4)单片机正常工作输出最大电压5V。要使得发射电路更合加理就需要进行功率放大。 综上所述,发射电路设计的主要解决问题是要提高发射到发射探头的输入电压和功率。本设计系统发射的方波脉冲信号,输出波形稳定,但输出电流和功率却很低。因此添加一个单电源乙类互补对称功率放大电路,如图3
24、.5所示。图3.5超声波发射电路3.3.2 超声波发射器的须知 超声波模块的工作原理:首先由超声波发射器向测量目的地发出发射波,定时器同时开始计时。到达目的地后会发生反射并立刻返回。当超声波接收器接收到反射波后定时器就会马上停止计时。 限制该系统最大可测距离有四个因素: (1)超声波的幅度。 (2)反射的质地。 (3)反射回波和入射声波之间的夹角。 (4)接收换能器的灵敏度。 测距误差主要来自以下四个方面: (1)超声波波束与探测目标的入射角影响。 (2)超声波的回波强度受测量距离的直接影响。一般来说,距离越远,强度越弱。然而实际测量时,却不一定是第一个回波过零点触发。 (3)超声波的传播速度
25、对测距有影响。然而超声波在传播媒质中传播时会受到温度(其次还受压力和密度)的直接影响。为提高测量精度需对声速进行修正。 (4)利用发射波的往返来进行距离计算是超声波测距的基本原理。实际上这种测量方法存在发射和反射夹角,设这个夹角的大小为2。当很小的时候,可近似的认为该夹角不存在,因此按公式进行距离的计算;当夹角很大时,就需要对距离进行修正,修正公式为: 公式3-(1) 在实际测量过程中,超声波测距板块上的发射探头和接收探头是并排在铜板上的,因此都会存在一个有效测量夹角。本设计所使用的超声波测距模块的有效夹角为15度。3.4 超声波接收电路设计 接收换能器晶片在接收到超声波垂直作用后,会产生谐振
26、。并因此会形成逐步加强的机械振动。因压电效应晶片只可以提供微小的交变电压信号,却不能提供电流信号。因此要用一个前置放大电路将该信号充分放大,并为了排除干扰信号,在放大有用信号的同时还应加入滤波电路。 为了后续电路的设计更合理实用,需要加一个前置放大电路。该放大电路能够对我们所需要的信号进行放大,对噪声干扰信号抑制。通过这样操作来达到所需要求的最大信噪比的目的。图3.6前置放大电路 前置放大电路的电路图如图3.6所示。为满足设计要求,前置放大器的输入阻抗要足够大。同时还必须有高精度、小输入的偏置电压。为减小该系统地线噪声的影响,需要采取相应的措施,通过采用前置放大器与其他元件组成反向比例放大电路
27、是其中一种非常有效的方法。 该放大器电路结构简单,本次设计用到的放大器是用R2和R3来调节电压的放大倍数的。图中Rp称为平衡电阻,是为了平衡两输入端的电阻而存在。为了满足系统设计需要,通过放大电路将输入信号放大200倍。3.5 LCD显示部分本设计系统所测量得到的距离会用LCD1602液晶显示屏来显示。显示屏的参数如表3.2。表3.2 1602参数显示容量16X2个字符芯片工作电压4.55.5V芯片工作电流2.0mA(5.0V)模块最正确工作电压5.0V字符尺寸2.95X4.35(WXH)mm液晶显示屏具有小体积、低消耗、使用方便和显示容丰富等优点。比数码管更专业、美观。在实际使用过程中,LC
28、D的数据线要与单片机的P0口连接,LCD的控制线要与单片机的P2口连接。如图3.7所示。图3.7 1602液晶显示电路 第1脚:vss为地电源。 第2脚:VDD接5V正电源。 第3脚:v0为液晶显示器对比度调整端。接正电源时对比度最低,接地电源时对比度最高。对比度过高会产生“鬼影”,可通过一个1OK的电位器调整对比度。 第4脚:RS为寄存器选择。低电平选用指令寄存器,高电平选用数据寄存器。 第5脚:RW为读写信号线。低电平时进行写操作,高电平时进行读操作。 第6脚:E端为使能端。当E端由高电平跳变成低电平时,液晶模块执行命令。 第7-14脚:DO-D7为8位双向数据线。 第15-16脚:空脚
29、为了布线方便,单片机端的D0D7与LCD1602的D7D0连接,正好反着接。因此在编写软件时要记得做相应处理,才能读取正确。3.6 报警部分采用一个蜂鸣器,由P1.2输出一定频率的信号。在连接到蜂鸣器之前,先由一个三极管9012的放大。报警部分的连线,如图3.8所示。图3.8 蜂鸣器报警电路3.7 DS18B20部分 DS18820部结构主要由四部分构成。分别为: (1)64位光刻ROM。 (2)温度传感器。 (3)非挥发温度报警触发器TH和TL。 (4)配置寄存器。 因声速与空气的温度有关,所以为了提高系统精度,采用温度补偿功能。本设计将采用DS18B20温度传感器进行环境温度采集。该温度传
30、感器具有简单体积小、精度高、连接方便和线路简单等特点。将DS18B20的数据线与单片机的P1.1口相连,这样温度传感器就能将检测到的环境温度发送到单片机达到温度测量的目的。如图3.9所示。图3.9 DS18B20温度测量电路3.8 本章小结 本章着重介绍了超声测距系统的具体硬件设计电路。全面详细的对该系统硬件的各个部分(主要是发射、接收、检测以与显示这四部分)电路的电路原理进行分析阐述。了解系统设计的一般情况。第四章 系统软件设计4.1 系统软件设计 系统程序结构: (1)DS18B20温度传感器接口模块。该模块首先要初始化程序,然后再写入命令最后进行读取子程序。 (2)基于TC1602的显示
31、模块。该模块和温度传感接口模块用法相似。 (3)温度补偿与距离计算模块。该模块需要对超声波发送控制程序、接收处理程序、温度补偿子程序等进行程序编写。 (4)本次设计使用C语言编写程序,C语言相比汇编有许多的优势;编译器使用KeilVersion 4进行程序编译,Keil功能强大使用方便。 系统软件的主程序可分为以下几部分: (1)系统初始化。 (2)按键处理。 (3)各个子程序的调度管理。 本设计主程序的思想如下: (1)温度为两位显示,距离为三位显示,单位为cm。 (2)温度每隔900ms就会进行一次采样。900ms符合DS18B20在12位精度下转换周期。所以满足该速度要求。每隔60ms超
32、声波就会发送一次。 (3)按键S为测量启动键。 (4)系统采用STC89C51的时钟。 (5)没有使用看门狗功能。 (6)超声波发送一定时间后才开始启动检测,避免直达信号造成误判。所以系统最小测量约为2cm。 如图4.1所示描述了各个模块的关系。图4.1系统软件方框图/主函数 void main()Init_ultrasonic_wave();/屏幕初始化Init1602();/温度初始化tmpchange(); t_=tmp();tmpchange();t_=tmp();tmpchange();t_=tmp();4.2 外部中断子程序如图4.2所示,中断服务程序是响应单片机的外部中断。由系统
33、主程序进行发射4OKHz的脉冲信号。该脉冲信号会在遇到障碍物后发生反射而产生反射波。反射波被接收检测电路接收后,将会产生能指挥单片机进行下一步操作的外中断信号。而在中断服务程序当中,首先需要对现场进行必要保护。然后再读取进入中断服务程序的计数。对该计数数据处理后再通过计算得取距离值,同时将得出的距离数值转换为十进制。最后送到P2口显示输出。图4.2外部中断子程序流程框图4.3 定时器中断子程序 定时器中断子程序流程图如图4.3所示。由于51单片机中的定时器是16位的,因而会存在一个最大计时时间,通过计算可是是65536us。当测量的距离很远的时候,定时器的工作出错,发生溢出现象。所以必须对溢出
34、中断进行相应的设置才能使得单片机正常工作。同时由于硬件原因,电路测量距离的最大量程为4米。当实际测量距离超出最大量程时,接收探头就检测不到回波。也就是不能产生外部中断更会因此而不能关闭定时器。图4.3定时终端子程序流程4.4 重要功能实现 在软件设计方面,要达到实验目的,实现基于单片机的超声波测距系统的设计与实现。除了以上程序需要编写外,还需要对温度读取功能、温度转换声速和距离计算进行编程实现。4.4.1 实现温度读取功能/温度初始化 StartModule();/启动超声波 while(!RX); /当RX为零时等待TR0=1; /开启计数while(RX); /当RX为1计数并等待TR0=
35、0; /关闭计数delayms(20); /20MStmpchange(); /温度转换t_=tmp(); /度温度4.4.2 实现温度转换声速/计算不同温度下的速度void JS_(uchar WD)/大于2030else if(WD20&flag=0)L_=(time*3.49)/; /算出来是CM; 其余温度下的计算方法与上面的程序所写的一样,只需更换系数即可。4.4.3 实现距离计算/距离计算 SD为当时的超声速度void Conut(uchar WD) time=TH0*256+TL0; TH0=0; TL0=0; JS_(WD);4.5 实验测量数据表4.1实验测量数据环境温度测量
36、值cm实测值cm误差%2114.514.30.01382125.625.30.01262025.625.40.01152225.625.20.01472195.685.10.0181 由上表4.1数据可看出,测量精度受温度和测量距离的远近的影响。一般来说随温度的升高和测量距离的加长而变大。4.6 本章小结 本章节就怎样实现该设计并得出结果进行了软件设计方面的分析阐述并简要地将相关C程序加以直观罗列。结论 本设计是以单片机STC89C51为核心,加以温度、和超声波传感器、LCD液晶显示屏以与蜂鸣器并利用超声波的特性设计出的一种简单易操作的测距系统。超声波检测比较简单易操作,测量精度也足够日常声波
37、使用。当然,通过增强扩展之后已能满足工业使用要求。随着科技的不断高速发展,超声波也将渗透应用于更加宽广的领域。就目前来说,超声波仍然存在局限性,因此需要对超声波进行更加有力的研究,使得超声波能够为人类世界体更更好的服务。 在设计之前,查阅了大量的资料。虽然这之间碰到过诸多问题,但通过求助老师和同学顺利地克服了它们。在设计的过程中,不但有了知识的增长,更是改进了自身的一些缺点不足,锻炼了自己的实际动手能力。这对以后的工作生活是很有意义的。参考文献1郭天祥.新概念51单片机C语言教程M.电子工业,2008.2锋,王巧芝等.51单片机应用系统M.中国铁道,2011.3向宇,秦龙.PIC单片机C语言M
38、.电子工业,2011.4贾伯年.传感器技术M.东南大学,2000.5丽霞.单片机在超声波测距中的应用M.电子技术,2002.6岂兴明,唐杰等.51单片机编程基础与开发实例详解M.人民邮电,2008.7鹏,有志.一种新型超生测距系统J.大学学报,2003,33(1).8大新,学同,周杏鹏.利用FPGA改进超声波测距模块设计M.传感器技术,2005,24(2):5759.9马忠梅,藉顺心等.单片机的C语言应用程序设计(第三版)M.航空航天大学,2003.10臧春华,步生,方,X晓平.现代电子技术(数字部分)M.航空航天大学,2005,2.11恒清,靖.加强单片机系统抗干扰能力的方法J.师学院学报,
39、2004,10.12晗晓,袁慧梅.单片机系统的印制板设计与抗干扰技术J.电子工艺技术,2004,6.13华兵.MCS-51单片机原理应用M.华中科技大学,2002,5.14田华等.可编程单总线数字式温度传感器DS18B2的原理与应用J.电子质量,2004,7.15姣秀.基于单片机的超声波测距仪的设计M.工业大学,2008.16Lee B R eview of the present status of optical fiber sensors J.Opt Fiber Techn 2003,9(2):57-59.17rtoriS,ZHANGGX.GeometricErrorMeasuremen
40、tandCompensationofMachinesJ.AnnalsoftheCIRP,1995:599-609.18XuL,HuiXL.Schem es and present status of optical current sensorJ.Optoelec Techn & Information,2004,17(1):39-43.谢辞 从开始做论文到论文基本完成,经历了很长一段时间,从开始的一知半解到现在的全面了解算是经历了一个漫长的过程。在这个过程中有无数人给了我莫大的帮助。完成本次设计,首先要感谢的是指导老师XXX老师。感谢他在此次毕业设计过程中给予的悉心指导与各方面的帮助,和所付出的心血热情。从论文的开始到完毕,这之间走过的任意一步都洒满了导师辛勤的汗水和心血,充满了勤劳热情的芳香,导师为我提供了非常专业的知识。我为导师严谨治学的态度、丰富的知识和无私奉献的精神所折服。在尊敬的导师那里,我不但学到了知识,还学到了做人的道理。我将铭记导师对我的教诲,争取做最好的自己。谢谢老师!其次感谢我要感谢与我度过四年大学生活的同学们,你们在大学的四年里给予我许多学习与生活上的帮助。附录一(实物图)附录二(Proteus仿真图)