超声波身高测量仪(自己写的)_第1页
超声波身高测量仪(自己写的)_第2页
超声波身高测量仪(自己写的)_第3页
超声波身高测量仪(自己写的)_第4页
超声波身高测量仪(自己写的)_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江商业职业技术学院 2011 届毕业论文 目录 摘 要.2 引 言.4 第一章 系统方案设计.5 1.1 设计要求 .5 1.2 设计思路 .5 1.2.1 超声波的接收与处理 .5 1.2.2 身高测量算法构思 .5 1.2.3 硬件部分调试分析构思 .6 1.2.4 设计思路总结 .6 第二章 设计原理及设计框图.7 2.1 设计原理 .7 2.2 设计框图 .7 第三章 传感器和电源的比较与选择.9 3.1 传感器设计的方案选择 .9 3.1.1 超声波 T/R40-10 传感器设计电路 .9 3.1.2 超声波 LM1812 传感器设计电路 .9 3.2 电源电路设计的方案选择.10 3.2.1 采用二极管稳压电路设计: .10 3.2.2 采用 7805 三端稳压器电源: .11 第四章 系统硬件电路设计.12 4.1 单片机系统及显示电路 .12 4.2 超声波发射电路 .14 4.3 超声波检测接收电路 .14 4.4 共阴极七段 LED 数码管 .15 第五章 系统软件设计.16 5.1 程序流程图 .16 5.2 主程序设计 .17 5.3 超声波发射子程序和接收中断程序设计 .17 5.3.1 超声波发射子程序.17 5.3.2 超声波接收中断程序.18 第六章 电路调试与分析.20 6.1 硬件部分调试与分析 .20 6.2 程序调试与分析 .20 参考文献.21 附 录 .22 附录 A 主要原理图.22 附录 B 产品及市场成品图.23 附录 C C 语言程序 .24 浙江商业职业技术学院 2011 届毕业论文 第 1 页 共 27 页 超声波身高测量仪 摘 要:论文首先介绍了超声波测身高的基本原理,随后对几种可性的方案进行了方 案论证,确定最后的设计方案,并对整个的设计方案作了详细的介绍。在此本设计 中硬件设计电路主要由单片机系统及显示电路、超声波发射电路和超声波检测接受 电路组成。软件设计由主程序、超声波发生子程序、超声波接收中断程序及显示子 程序等部分。本次设计用超声波良好的反射性能,采用回波测距法来实现。使用在 空气中效率较高的中心频率为 40KHz 的超声波探头来完成发射与接收功能,用四位 数字显示以达到 1cm 的分辨率和 1-3m 的测量范围。公式如下:d=s/2=(c*t)/2 。d 为被测物与测发生器的距离,s 为声波的来回路程,c 为声速,t 为声波来回所 用的时间。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功 能模块。相关部分附有硬件电路图、程序流程图。 关键词:关键词: AT89C52 超声波 发射 接收 浙江商业职业技术学院 2011 届毕业论文 第 2 页 共 27 页 Ultrasonic height measuring instrument Abstract:Paper first introduces the basic principle of ultrasonic distance measurement, then the solution of several can be carried out of the demonstration program to determine the final design, and design a whole were described in detail. In this design, hardware design of the circuit mainly by the SCM system and the display circuit, ultrasonic transmitter and ultrasonic testing to accept circuit. Software design from the main program, subroutine ultrasound, ultrasound receiver interrupt program and display routines and other parts. The design of ultrasonic sound reflection properties, the use of echo ranging method to achieve. Higher efficiency in air using a center frequency of 40KHz ultrasound probe to complete transmit and receive functions, with four figures in order to achieve a resolution of 0.1cm and 1-3cm of the measuring range. The following formula: d = s / 2 = (c * t) / 2. d for the measured object and measuring the distance between generator, s is the sound of the round-trip distance, c is the speed of sound, t is the sound back and forth the time spent. On this basis, the overall design of the system program, and finally achieved through various hardware and software modules. With the relevant parts of the hardware circuit, the program flow chart. Keywords: AT89C52,Ultrasonic,Launch,Receive 浙江商业职业技术学院 2011 届毕业论文 第 3 页 共 27 页 引 言 超声波测身高就是利用反射特性,通过发生器不断发射出 40KHz 超声波遇到障 碍物后反射会反射波,在通过接收器接收发射波信号,并将其转换为电信号。相比 于其他技术,超声波定位技术体积小、成本高,制作也简易。非常适合短距离的测 量定位。 人体身高距离是在不同的场合和控制中需要检测的一个参数,测距成为数据采 集中要解决的一个问题。超声波检测往往比较迅速、方便、计算简单、易于做到实 时控制由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声 波经常用于距离的测量,况且它适合与高温,高粉尘,高湿度和高强电磁干扰等恶 劣环境下工作。其用途极度广泛,例如:测绘地形图,建造房屋、桥梁、道路、开挖 矿山、油井等。 超声测距仪在先进的机器人技术上也有应用,把超声波源安装在机器人身上, 由它不断向周围发射超声波并且同时接收由障碍物反射回波来确定机器人的自身位 置,用它作为传感器控制机器人等等。 单片机一般由中央处理器 CUP、存储器和输入输出 I/O 组成。自 1979 年第一台 单片机诞生以来,单片机作为微型计算机一个分支,以其体积小、功能多、应用灵 活等诸多优势,得到越来越广泛的应用。 展望未来,超声波测身高作为一种新型的非常重要有用的工具在各方面都将有 很大的发展空间,它将朝着更高定位更高精度的方向发展,以满足日益发展的社会 需求。 本设计采用超声波在空气中运行原理设计的一种光机电一体化的身高测量仪。 下面介绍本次设计的具体实现方法。 浙江商业职业技术学院 2011 届毕业论文 第 4 页 共 27 页 第一章系统方案设计 方案设计是整个设计首要解决的问题,没有好的方案就没有好的设计。下面做 本次设计方案的详细介绍。 1.1 设计要求 设计一个超声波测身高的作品,以空气中超声波传播速度为确定条件,利用超 声波的发射与反射时间差来测量待测的身高距离。要求电路简洁,制作方便、性能 可靠。测量范围不低于 13 米,测量精度为 1cm,能够清晰稳定地显示测量结果, 测量结果以每 1cm 往上递增,当高位为“0”时,则不显示,以达到省电的目的,当 测量距离低于最小距离时,则显示最小距离“30”cm。 1.2 设计思路 超声波是指频率高于 20KHz 的机械波。为了以超声波作为检测手段,必须产生 超声波和接收超声波。超声波传感器是利用压电效应的原理将电能和超声波相互转 化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则 将超声振动转换成电信号。 1.2.1 超声波的接收与处理 接收头采用与发射头配对的 UCM40R,将超声波调制脉冲变为交变电压信号,经 运算放大器 IC1A 和 IC1B 两极放大后加至 IC2。IC2 是带有锁定环的音频译码。集成 块 LM567,内部的压控振荡器的中心频率 f0=1/1.1R8C3,电容 C4 决定其锁定带宽。 调节 R8 在发射的载频上,则 LM567 输入信号大于 25mV,输出端 8 脚由高电平跃变 为低电平,作为中断请求信号,送至单片机处理。 1.2.2 身高测量算法构思 超声波发生器在某一时刻发出一个超声波信号,当遇到被测物体后阿佘回来。 被接收器所接收到。发出超声波信号到接受到返回信号所用的时间,就可以算出超 声波发生器与反射物体的距离。公式如下:d=s/2=(c*t)/2 。d 为被测物与测发 浙江商业职业技术学院 2011 届毕业论文 第 5 页 共 27 页 生器的距离,s 为声波的来回路程,c 为声速,t 为声波来回所用的时间。 1.2.3 硬件部分调试分析构思 在硬件方面将超声波接收电路用金属壳屏蔽起来,从而提高抗干扰能力。声波 发射和接收采用 15 的超声波换能器 TCT40-10F1(T 发射)和 TCT40-10S1(R 接收) ,中心频率为 40kHz,安装时应保持两换能器中心轴线平行并相距 48cm 。 根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容的大小,以 获得合适的接收灵敏度和抗干扰能力。在软件方面根据所设计的电路参数和程序, 测距仪能测的范围为 1m3m,测距仪最大误差不超过 1cm。 系统调试完后应对测量误差和重复一致性进行多次实验分析,不断优化系统使 其达到实际使用的测量要求。同时可以修改超声波发生子程序每次发送的脉冲宽度 和两次测量的间隔时间,以适应不同距离的测量需要。 由于采用的电路使用了很多的集成电路。对集成电路有很大的要求,对元器件 方面五特别的要求。因为外围的元器件不是很多,所以在调试方面应该不会出现很 大的问题,但在焊接方面需要留心,最好无误。 1.2.4 设计思路总结 由于超声波指向性强,能量消耗缓慢,在介质中传播距离较远,因而超声波可 以用于距离的测量。比如本次身高的测量。超声波测身高的原理一般首先测出超声 波从发射到遇到人体头部返回所经历的时间,再乘以超声波的速度就得到二倍的声 源与人体头部之间的距离。 超声波发生器可以分为两类:一类是用电气方式产生超声波,一类是用机械方 式产生超声波。本课题属于近距离测量,可以采用常用的压电式超声波换能器来实 现。 利用超声波检测身高,设计比较方便,计算处理也较简单,并且在测量精度方 面也能达到要求。超声波在标准空气中的传播速度为 331.45 米/秒,由单片机负责 计时,单片机使用 12MHz 晶振,所以此系统的测量精度理论上可以达到毫米级。 根据设计要求并综合各方面因素,可以采用 AT89C52 单片机作为主控制器,用 动态扫描法实现 LED 数字显示,超声波驱动信号用单片机的定时器完成。 浙江商业职业技术学院 2011 届毕业论文 第 6 页 共 27 页 第二章设计原理及设计框图 2.1 设计原理 该原理是主要利用超声波在空气中的传播速度为已知。根据测量声波发射到反 射回来的时间差计算实际身高距离。 由单片机系统及显示电路、超声波发射和检测接收电路三部分组成。采用 AT89C52 来实现对 CX20106A 红外接收芯片和 TCT40-10 系列超声波转换模块的控制。 单片机发出信号,经过放大输出,经过锁相环检波处理,气动单片机的中断程 序,测得时间 t,同时对系统软件进行分析、辨别、计算,得出数据,用动态扫描法 实现 LED 显示结果。超声波的驱动信号用单片机的定时器完成。 单片机通过 P1.0 引脚经反相器来控制超声波的发送,然后单片机不停的检测 INT0 引脚,当 INT0 引脚的电平由高电平变为低电平时就认为超声波已经返回。计 数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之 间的距离 S。 设其往返时间为 t,速度为 v,则得距离为 s=vt/2 。传感器通过声波的波长和 发射声波以及接收到返回声波的时间差就能确定人的身高,在发送脉冲的同时,接 收器的计数器启动并开始计数,直到接收传感器接收反射回波后,计数停止,该时 间差相当于测量的距离,从而测算出人体的身高。 2.2 设计框图 由单片机产生 40KHz 左右的脉冲并输出,经调制器将脉冲信号放大和振荡器振 荡后,由超声波发射器发射出超声波,遇到障碍物返回被超声波接收器接收到后, 经过接收检测装置对接受信号进行处理和计时器计时后,由单片机计算超声波发射 器到障碍物之间的距离,并将计算结果由显示器显示。 为此设计了超声波测身高原理框图如下(图 2.1): 浙江商业职业技术学院 2011 届毕业论文 第 7 页 共 27 页 超声波发射器 放大电路放大电路 单片机控制 LED 显示 扫描驱动锁相环检波 超声波接收器定时器 图 2.1 超声波测身高原理框图 浙江商业职业技术学院 2011 届毕业论文 第 8 页 共 27 页 第三章传感器和电源的比较与选择 3.1 传感器设计的方案选择 超声波测身高设计电路主要由电源电路、单片机系统及显示电路、超声波发射 电路和超声波检测接受电路组成。 下面方案选择具体介绍。 3.1.1 超声波 T/R40-10 传感器设计电路 电路主要由以下电路构成:超声波传感器 T/R40-10、超声波发射与接收构成的 收发电路;中央控制处理器 AT89C52 组成的主机电路;输出显示电路等。它是一种 性能优良的发射与接收配对的传感器。 该电路主要用电磁式输出与输入振荡电路,所输入的信号经过放大,直接发送 到单片机 AT89C52 单片机进行处理,通过编程可以进行自动控制。 该电路的主要特点有: 该产品的互换性好,响应速度快,抗干扰能力强,外围电路简单,不需要 布线直接通过发射模块进行无线发射。因此体积小。 该电路的测量精度很高,能在 TA = +25oC、UCC = +5V 的条件下,测量误差 不超过 2cm。 3.1.2 超声波 LM1812 传感器设计电路 电路采用 LM1812 并有时基电路来控制 LM1812 的发送与接收(LM1812 即发送又 接收) 。控制距离可用 5 千欧的电位器来调节。 LM1812 是一种性能优良,且既能发送又能接收超声波的通用型超声波集成器件。 芯片内包括:脉冲调制 C 类振荡器,高增益接收器,脉冲调制检测器及噪音抑制器。 它除了可用于遥控器、报警器、自动门控制及通信方面外,还可用于工业上的 料位或液位的测量与控制、测距及测厚等方面,应用广泛。 采用 LM1812 的特点有: (1)检测器输出可驱动 1A 的峰值电流 (2)器件内部有保护电路 (3)在电路中使用时不用外接晶体管驱动 浙江商业职业技术学院 2011 届毕业论文 第 9 页 共 27 页 (4)使用时不用外接散热器 (5)器件具有互换性 (6)可以使用一个发送/接收换能器工作,也可使用两个换能器分别发送和接收超 声波 (7)发送功率可达 12W(峰值) 所以此方案响应速度慢,抗干扰能力相对较弱,外围电路相对较复杂。 通过以上方案的分析,决定根据方案一作为设计方案。无论是在性能、特点、 还是电路材料上,或者是在原理图上、设计上等都具有简单、使用性强等特点。 32 电源电路设计的方案选择 电源系统通常由电源变压器、整流电路、滤波电路、稳压电路等构成。各种电 子线路均需要直流电源来供电,而电网能提供给我们的电源却是交流的,这就需要 有一个转换电路把交流电压变成比较稳定的直流电电压。 电源变压器将电网提供的交流电压变换到电子线路所需的交流电压范围,同时 还可起到直流电源与电网的隔离作用,可升压也可降压。实现这种功能的电路就叫 直流稳压电源,简称直流电源。 下面方案选择具体介绍。 3.2.1 采用二极管稳压电路设计: 在图 3.1 中,稳压二极管的稳压值为 5.1V,即当 D1 阴极加电压超过 5.1V 时, 二极管阴极电压就会保持 5.1V 不变。在电路中 R1 的作用是限流,这是由于 D1 阴极 电压超过 5.1V 稳压值后,稳压二极管被反向击穿,流过 D1 的电流将迅速增大,此 时 R1 上的电压也会随之而增大,以保证稳压管功耗限制在安全区内。此时即使输入 电压在一定的范围增加,输出端都会保持稳定电压。但若反向电流增大到一定数值 后,稳压二极管则会被彻底击穿而损坏。电路如图 3.1 所示,该电路是用硅稳压二 极管的反向击穿特性实现稳压的。不过该电路设计现在应用不广泛,一般都采用集 成稳压电路,所以此方案不选用。 R 1 270 D1 + - + - V iV o 浙江商业职业技术学院 2011 届毕业论文 第 10 页 共 27 页 图 3.1 二极管稳压电路 3.2.2 采用 7805 三端稳压器电源: 集成稳压器是将直流稳压电路的调整管、稳压管、比较放大器和多种保护电路 集成到一块芯片上的单片集成稳压电源。它具有体积小、可靠性高、使用简单安全 等特点。而三端集成稳压器又是集成稳压器最常用的一种。7805 是固定式三端集成 稳压器,其输出为+5v。它输出最大电流可达 1A(需加散热片) 。温度范围为 0 C125C。 如图 3.2 所示,7805 是由它只有三个外部接线端子,即输入端、输出端和公共 端(输出脚 VO,输入脚 Vi和接地脚 GND)组成。三端固定式集成稳压器有正稳压器 78XXX 系列和负稳压器 79XXX 系列。78L05 输出额定电压为 5V,最大输出电流为 100mA。78 系列与 79 系列的输出引脚号不同,在使用时应特别注意。 电路中C1为主滤波电容,对额定输出电流 100mA,500mA,1.5A 的稳压电路, C1最好分别用 220F、1000F、3300F 以上,以取得良好的滤波效果,C2、C3在印 制板上要尽可能靠近集成稳压器的输入输出端以消除可能产生的高频自激振荡。 它们的输入电压至少比输出的额定电压大 3V 以上(本设计中输入电压为 12V) , 才能有良好的稳定电压输出,但两者差别太大,集成稳压器上的管耗大,发热量也 大。 1 2 3 4 D1 C1 220u C2 0.1 vinvout gnd LM7805 C3 100u C4 0.1 V CC 220V8V 图 3.2 7805 稳压电源电路 浙江商业职业技术学院 2011 届毕业论文 第 11 页 共 27 页 第四章系统硬件电路设计 4.1 单片机系统及显示电路 单片机采用 AT89C52 或其兼容系列。采用 12MHz 高精度的晶振,以获得较稳定 的时钟频率,减小测量误差。单片机用 P1.0 端口输出超声波转换器所需的 40KHz 方 波信号,利用外中断 0 口检测超声波接收电路输出的返回信号。显示电路采用简单 实用的 4 位共阳 LED 数码管,段码用 74LS245 驱动,位码用 PNP 三极管驱动。 单片机系统及显示电路如下图所示: 浙江商业职业技术学院 2011 届毕业论文 第 12 页 共 27 页 OUT S5 RST C1 10UF V CC R4 2K IN 12M V CC P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 RESET 9 RX D 10 TX D 11 IN T0 12 IN T1 13 T0 14 T1 15 WR 16 RD 17 X 2 18 X 1 19 P11 2 P10 1 GND 20 V CC 40 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 EA/V P 31 ALE/P 30 PSEN 29 P27 28 P26 27 P25 26 P24 25 P23 24 P22 23 P21 22 P20 21 A0 2 A1 3 A2 4 A3 5 A4 6 A5 7 A6 8 A7 9 E 19 DIR 1 B0 18 B1 17 B2 16 B4 14 B3 15 B5 13 B6 12 B7 11 GND 10 V CC 20 U1 AT89C52 U2 74LS245 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 U3 1K V CC V CC V CC R54K7 R6 4K7 R7 4K7 R8 4K7 V CC 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 U4 510 C2 30P C330P V CC Q1 9012 Q2 9012 Q3 9012 Q4 9012 a bf c g d e 11 7 4 2 1 10 5 a b c d e f g 3 dp dp a bf c g d e dp a bf c g d e dp a bf c g d e dp s1 12 s2 9 s3 8 s4 6 DS1 SMG056-4 图 4.1 单片机系统及显示电路 浙江商业职业技术学院 2011 届毕业论文 第 13 页 共 27 页 4.2 超声波发射电路 超声波发射电路原理图主要由反相器 74LS04 和超声波发射换能器 T 构成,单片 机 P1.0 端口输出的 40kHz 的方波信号一路经一级反向器后送到超声波换能器的一个 电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将 方波信号加到超声波换能器的两端,可以提高超声波的发射强度。 单片机产生 40KHz 的脉冲,由 P1.0 口输出,经 74LS04 六反向器将脉冲信号放 大后,由压电超声波转换器 T40-10 发射超声波。 压电超声波转换器的功能:利用压电晶体谐振工作。它有两个压电晶片和一个 共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电 晶片将会发生共振,并带动共振板振动产生超声波,这时它就是一超声波发生器。 如没加电压,当共振板接收到超声波时,将压迫压电振荡器作振动,将机械能 转换为电信号,这时它就成为超声波接收转换器。超声波发射转换器与接收转换器 其结构稍有不同。U4A 74ALS04 U4C 74ALS04 U4D 74ALS04 U4B 74ALS04 U4E 74ALS04 R20 1K R19 1K T US_T 1 V CC P1.0 图 4.2 超声波发射电路 输出端采两个反向器并联,用以提高驱动能力。上位电阻 R19、R20 一方面可以 提高反向器 74LS04 输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼 效果,缩短其自由振荡时间。 4.3 超声波检测接收电路 考虑到红外遥控常用的载波频率 38 kHz 与测距的超声波频率 40 kHz 较为接近, 可以利用集成电路 CX20106A 制作超声波检测接收电路如图 4.3。这是一款红外线检 波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频 率 38KHz 与测距超声波频率 40KHz 较为接近,可以利用它作为超声波检测电路。 浙江商业职业技术学院 2011 届毕业论文 第 14 页 共 27 页 1N 1 C 1 2 C 2 3 GND 4 F O 5 C 3 6 OUT 7 V C C 8 U7 C X 20106A RUS _R 1 C 7 0.056uF C 8300pF R 23 10K R 22 200K R 21 200K C 93.3uF C 10 3.3uF V C C IN V C C 图 4.3 超声波接收电路 验证明用 CX20106A 接收超声波(无信号时输出高电平),具有很好的灵敏度和较 强的抗干扰能力。适当更改电容 C4 的大小,可以改变接收电路的灵敏度和抗干扰力。 4.4 共阴极七段 LED 数码管 数码管是常用的数值数据显示组件,通常实现一位数码管显示的控制,是使用 静态的控制方式,将显示的数据送到数码管后程序可做其他事情,这在程序设计上 十分容易。但是在设计多位数码管显示控制时,静态的控制方式就比较浪费 I/O 的 控制线了,对于多位数码管显示的实现,最常用的认识方法是扫描法。 当工作时,每次只点亮一位数字进行显示,延迟一小段时间后再点亮下一位数 字进行显示,因为人们视觉暂留的现象,而感觉 4 位数字同时被点亮。 浙江商业职业技术学院 2011 届毕业论文 第 15 页 共 27 页 第五章系统软件设计 超声波测身高的软件设计主要由主程序、超声波发射子程序及超声波接收中断 程序组成。 5.1 程序流程图 软件分为两部分, 主程序和中断服务程序, 如图5.1所示。主程序完成初始化工 作、超声波发射和接收顺序的控制。定时中断服务子程序完成超声波回波接收, 外 部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。 开始 超声波脉冲发射 接收超声波脉冲 初始化 计数并储存数据 0.5s 关闭定时器 中断关闭 读取时间值 设置距离结束标志 输出数据 中断打开 返回 数码管显示 声波接收到? N Y 开始测量 图 5.1 主程序及外中断程序流程图 浙江商业职业技术学院 2011 届毕业论文 第 16 页 共 27 页 5.2 主程序设计 主程序首先对系统环境初始化,设置定时器 T0 工作模式为 16 位的定时计数器 模式,置位总中断允许位 EA 并给显示端口 P0 和 P2 清 0。然后调用超声波发生子程 序送出一个超声波脉冲,为避免超声波从发射器直接传送到接收器引起的直接波触 发,需延迟 0.1ms(这也就是测距器会有一个最小可测距离的原因)后,才打开外中 断 0 接收返回的超声波信号。由于采用 12MHz 的晶振,机器周期为 1us,当主程序检 测到接收成功的标志位后,将计数器 T0 中的数(即超声波来回所用的时间)按下式 计算即可测得被测物体与测距仪之间的距离,设计时取 20时的声速为 344m/s 则有: d=(C*T0)/2=172T0/10000cm(其中 T0 为计数器 T0 的计数值)。 测出距离后结果将以十进制 BCD 码方式显示,然后再发超声波脉冲重复测量过程。 5.3 超声波发射子程序和接收中断程序设计 超声波发射子程序的作用是通过 P1.0 端口发送 2 个左右的超声波信号频率约 40KHz 的方波,脉冲宽度为 12us 左右,同时把计数器 T0 打开进行计时。超声波测 距器主程序利用外中断 0 检测返回超声波信号,一旦接收到返回超声波信号(INT0 引脚出现低电平),立即进入中断程序。进入该中断后就立即关闭计时器 T0 停止计 时,并将测距成功标志字赋值 1。如果当计时器溢出时还未检测到超声波返回信号, 则定时器 T0 溢出中断将外中断 0 关闭,并将测距成功标志字赋值 2 以表示此次测距 不成功。 5.3.1 超声波发射子程序 #define k1 P3_4 #define csbout P3_5 /超声波发送 #define csbint P3_7 /超声波接收 #define csbc=0.034 #define bg P3_3 unsigned char csbds,opto,digit,buffer3,xm1,xm2,xm0,key,jpjs;/显示标识 unsigned char convert10= 0 x3F,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;/09 段码 unsigned int s,t,i, xx,j,sj1,sj2,sj3,mqs,sx1; bit cl; 浙江商业职业技术学院 2011 届毕业论文 第 17 页 共 27 页 void csbcj(); void delay(j); /延时函数 void scanLED(); /显示函数 void timeToBuffer(); /显示转换函数 void keyscan(); void k1cl(); void k2cl(); void k3cl(); void k4cl(); void offmsd(); 5.3.2 超声波接收中断程序 void main() /主函数 EA=1; /开中断 TMOD=0 x11; /设定时器 0 为计数,设定时器 1 定时 ET0=1; /定时器 0 中断允许 ET1=1; /定时器 1 中断允许 TH0=0 x00; TL0=0 x00; TH1=0 x9E; TL1=0 x57; csbds=0; csbint=1; csbout=1; cl=0; opto=0 xff; jpjs=0; sj1=45; sj2=200; sj3=400; k4cl(); TR1=1; 浙江商业职业技术学院 2011 届毕业论文 第 18 页 共 27 页 while(1) keyscan(); if(jpjssj3) buffer2=0 x76; buffer1=0 x76; buffer0=0 x76; else if(ssj1) buffer2=0 x40; buffer1=0 x40; buffer0=0 x40; else timeToBuffer(); else timeToBuffer(); /将值转换成 LED 段码 offmsd(); scanLED(); /显示函数 if(ssj2) bg=0; bg=1; 浙江商业职业技术学院 2011 届毕业论文 第 19 页 共 27 页 第六章电路调试与分析 6.1 硬件部分调试与分析 超声波发射和接收采用 15 的超声波换能器 TCT40-10F1(T 发射)和 TCT40-10S1(R 接收),中心频率为 40kHz,安装时应保持两换能器中心轴线平 行并相距 48cm,其余元件无特殊要求。若能将超声波接收电路用金属壳屏蔽起 来,则可提高抗干扰能力。 在对该电路进行调试时,VCC应输出 5V 直流稳定的电压,接通电源后电源指示 灯亮,正常发光。 一对电源部分进行调试。先将整流、滤波部分元件焊上,然后接上电源变压器, 用交流档测变压器输出电压为 12V 左右,再用直流档测整流滤波后的电压为直流 14.4V 左右,测试正常后,接上三端稳压(7805)后再测其输出电压,为 5V0.25V, 这些数据说明电源部全部工作正常。 二根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容 C7 的大小, 以获得合适的接收灵敏度和抗干扰能力。 三硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。根据 实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间, 以适应不同距离的测量需要。 四在实际测身高调试中,当测量距离在 13m 范围内时,测量值与实际值相差 2cm 左右;当测量距离在 1.5m2.5m 时,测量值与实际值相差 3cm 左右。 系统调试完后应对测量误差和重复一致性进行多次实验分析,不断优化系统使 其达到实际使用的测量要求。 6.2 程序调试与分析 多步调试:完成程序后,我首先采用了多步调试,时间正常显示与更新,但定 时到了继电器不会吸合。由是我采用断点调试。 断点调试:在程序中插入断点,即为断点调试。但由于不太会用,所以也未能 找到错误。 单步调试:由于程序在设计过程中产生了错误,而多步调试及断点调试又找不 出错误所在,这时就要采用单步调试,终于找到错误所在。经过思考与多次调试, 错误被更正。 浙江商业职业技术学院 2011 届毕业论文 第 20 页 共 27 页 参 考 文 献 1罗忠辉.提高超声波测距精度的方法J.机械设计与制造,2005 年 1 月第一期. 2张有志.一种新型超声波测距系统J.山东大学学报,2003 年 2 月第 3 卷第 1 期. 3王霞、曹茂永。超声测距数字信号采集系统J.电测与仪表,2000 年第 8 期. 4刘晔。王峰等。超声波测距仪的研究J.计算机测量与控制.2002,10(7): 480-482. 5老虎工作室 赵晶.电路设计与制版-Protel 99 高级应用M.北京:人民有 点出版社,2000. 6张谦琳.超声波检测原理和方法.北京:中国科技大学出版社,2006.10. 7苏伟、巩壁建.超声波测距误差分析.传感器技术,2004. 8张义和.Protel PCB99 设计与应用技巧M.北京:科学出版社,2000. 9隋卫平.高精度实时超声波测距技术研究D.国防科学技术大学硕士论文,2003 年 1 月. 10恒清、张靖.加强单片机系统抗干扰能力的方法.通化师范学院学报,2004.10. 浙江商业职业技术学院 2011 届毕业论文 第 21 页 共 27 页 浙江商业职业技术学院 2011 届毕业论文 第 22 页 共 27 页 附录 附录 A 主要原理图 OUT S5 RST C1 10UF VCC R4 2K IN 12M VCC P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 RESET 9 RXD 10 TXD 11 INT0 12 INT1 13 T0 14 T1 15 WR 16 RD 17 X2 18 X1 19 P11 2 P10 1 GND 20 VCC 40 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 EA/VP 31 ALE/P 30 PSEN 29 P27 28 P26 27 P25 26 P24 25 P23 24 P22 23 P21 22 P20 21 A0 2 A1 3 A2 4 A3 5 A4 6 A5 7 A6 8 A7 9 E 19 DIR 1 B0 18 B1 17 B2 16 B4 14 B3 15 B5 13 B6 12 B7 11 GND 10 VCC 20 U1 AT89C52 U2 74LS245 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 U3 1K VCC VCC VCC R5 4K7 R6 4K7 R7 4K7 R8 4K7 VCC 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 U4 510 C2 30P C330P VCC Q1 9012 Q2 9012 Q3 9012 Q4 9012 a bf c g d e 11 7 4 2 1 10 5 a b c d e f g 3 dp dp a bf c g d e dp a bf c g d e dp a bf c g d e dp s1 12 s2 9 s3 8 s4 6 U5 SMG056-4 U4A 74ALS04 U4C 74ALS04 U4D 74ALS04 U4B 74ALS04 U4E 74ALS04 R20 1K R19 1K T US_T1 VCC P1.0 单单单单单单单 单单单单单单单 1N 1 C1 2 C2 3 GND 4 FO 5 C3 6 OUT 7 VCC 8 U7 CX20106A RUS_R1 C7 0.056uF C8300pF R23 10K R22 200K R21 200K C93.3uF C10 3.3uF VCC IN VCC 单单单单单单单 浙江商业职业技术学院 2011 届毕业论文 第 23 页 共 27 页 附录 B 产品及市场成品图 浙江商业职业技术学院 2011 届毕业论文 第 24 页 共 27 页 附录 C C 语言程序 #include #include #pragma interrupt_handler intt0:10 /T0 溢出中断 #pragma interrupt_handler icp_timer1:6 /T1 捕捉中断 #pragma data:code /设定数据区为程序存储器 const unsigned char tab1=0X28,0XEE,0X32,0XA2,0XE4, 0XA1,0X21,0XEA,0X20,0XA0;/七段译码字型表(lm,cm) const unsigned char tab2=0X08,0XCE,0X12,0X82,0XC4, 0X81,0X01,0XCA,0X00,0X80;/七段译码字型表(m) #pragma data:data /设定数据区回到数据存储器 unsigned char ledbuff=0X08,0X28,0X28;/显示缓冲区 unsigned char count; uns

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论