




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录一、课程设计任务书2二超声波传感器测距原理421超声波传感器422超声波测距原理概述5三系统总体设计方案6四系统的硬件结构设计841单片机最小系统原理概述842超声波发射电路1443超声波检测接收电路1444超声波测距系统的显示电路设计1545PROTUES仿真硬件电路图15五系统软件的设计1651超声波测距仪的算法设计1652程序流程图1653主程序设计1854定时中断服务子程序设计1855超声波发生子程序和超声波接收中断程序设计19六调试结果20七系统误差来源及解决方案分析22八收获体会23参考文献24附录一超声波测距电路原理图25附录二程序清单26附录三元件清单36一、课程设计任务书智能仪器综合设计课程设计任务书题目超声波测距系统设计一、课程设计任务超声波测距主要应用于倒车雷达、建筑施工工地以及一些工业现场,如液位、井深、管道长度等场合。超声波测距的原理是,发射器发射出超声波,遇到被测物体后返回声波由接收器接收,测量出超声波发射和接收到回波的时间差,超声波波速与时间差乘积的一半即为被测距离。该超声波测距系统以AT89S52单片机为核心进行设计。二、课程设计目的通过本次课程设计使学生掌握1)智能仪器的一般设计、实现方法;2)超声波传感器测距的工作原理;3)智能仪器设计的实际调试技巧。从而提高学生对智能仪器的设计和调试能力。三、课程设计内容和要求1、掌握超声波传感器的测距原理,测量结果数显;2、根据超声波测距原理,设计超声波测距系统的硬件结构电路并画出原理图;3、用PROTUES对所设计的系统进行仿真;4、给出软件设计流程图;5、系统软硬件连调,给出该测距系统的性能指标,并对产生的误差进行分析。四、课程设计报告要求报告中提供如下内容1、目录2、正文(1)课程设计任务书;(2)超声波传感器测距原理;(3)系统总体设计方案;(4)超声波测距系统硬件电路的设计,包含发射电路、接收电路和显示模块的设计,用PROTEL软件绘制硬件原理图并列出器件清单,用PROTUES仿真;(5)软件设计程序流程图及清单(子程序不提供清单,但应列表反映每一个子程序的名称及其功能);(6)调试结果各个关键点波形和实测数据组;(7)系统误差来源及解决方案分析;3、收获、体会4、参考文献五、课程设计进度安排周次工作日工作内容1布置课程设计任务,查找相关资料2熟悉智能仪器综合实验平台所提供的相关资源3完成总体设计方案4画出硬件原理图并进行仿真第一周5完成硬件接线,编写程序并调试1编写程序并调试2编写程序并调试3编写程序并调试及准备课程设计报告4完成课程设计报告并于下午两点之前上交第二周5答辩本课题共需两周时间七、课程设计考核办法本课程设计满分为100分,从课程设计平时表现、课程设计报告及课程设计答辩三个方面进行评分,其所占比例分别为20、40、40。二超声波传感器测距原理21超声波传感器超声波是由机械振动产生的,可以在不同的介质中以不同的速度传播,其频率高于20KHZ。由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。超声波测距是一种非接触式的检测电路,因而利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到农业生产等自动化的使用要求。超声波发射器如今有两类,一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。本系统选用的是压电式超声波传感器。它是利用压电效的应原理,压电效应有逆效应和顺效应,实际上是利用压电晶体的谐振来工作的。超声波发生器它有两个压电晶片和一个共振板,当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。发射器发出的超声波以速度在空气中传播,在到达被测物体时被反射返回,由由接收器接收,其往返时间为T,由SVT/2即可算出被测物体的距离。由于超声波也是一种声波,其声速V与温度有关,表21列出了几种不同温度下的声速。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。表21超声波波速与温度的关系温度()3020100102030100声速(MS)31331932532333834434938622超声波测距仪原理概述超声波测距的原理一般采用渡越时间法TOF(TIMEOFFLIGHT)。其原理为检测从超声波发射器发出的超声波,经气体介质的传播到接收器的时间,即渡越时间。渡越时间与气体中的声速相乘,就是声波传输的距离。超声波发射器向某一方向发射超声波,在发射时刻的同时单片机开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。单片机发出40KHZ的信号,经放大后通过超声波换能射器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,读出时间为T,再由软件进行判别、计算,得出距离数并送LED显示。限制超声波系统的最大可测距离存在四个因素超声波的幅度、反射物的质地、反射和入射波之间的夹角以及接受换能器的灵敏度。接受换能器对声波脉冲的直接接收能力将决定最小可测距离。3系统总体设计方案超声波测距的原理是利用超声波的发射和接受,根据超声波传播的时间来计算出传播距离。实用的测距方法有两种,一种是在被测距离的两端,一端发射,另一端接收的直接波方式,适用于身高计;一种是发射波被物体反射回来后接收的反射波方式,适用于测距仪。此次设计采用反射波方式。测距仪的分辨率取决于对超声波传感器的选择。超声波传感器是一种采用压电效应的传感器,常用的材料是压电陶瓷。由于超声波在空气中传播时会有相当的衰减,衰减的程度与频率的高低成正比;而频率高分辨率也高,故短距离测量时应选择频率高的传感器,而长距离的测量时应用低频率的传感器。超声波测距系统主要由超声波接收器、发射器、放大电路、单片机和显示器几部分组成,其系统框图如下图31所示超声波接收器放大电路(三级放大)单片机控制定时器显示放大电路超声波放射器(40KHZ方波)障碍物图31超声波测距系统框图显示模块中,通过测得数据经P0口送至LCD进行显示,LCD显示原理液晶显示模块是12864点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字、16X16点阵、128个字符、8X16点阵及64X256点阵,显示RAMGDRAM可与CPU直接,接口提供两种界面来连接微处理机8位并行及串行两种连接方式具有多种功能光标显示画面移位睡眠模式等。显示资料RAM提供642个位元组的空间,最多可以控制4行16字和64个字的中文字型显示,当写入显示资料RAM时可以分别显示CGROMHCGROM与CGRAM的字型,ST7920A可以显示三种字型半宽的HCGROM字型CGRAM字型及中文CGROM字型,三种字型的选择由DDRAM中写入的编码选择,在0000H0006H的编码中将自动的结合下一个位元组,组成两个位元组的编码达成中文字型的编码,A140D75F各种字型详细编码如下1显示半宽字型将8位元资料写入DDRAM中范围为02H7FH的编码2显示CGRAM字型将16位元资料写入DDRAM中总共有0000H0002H0004H0006H四种编码3显示中文字形将16位元资料写入DDRAMK,范围为A1A1HF7FEH的编码。绘图显示RAM提供6432个位元组的记忆空间,最多可以控制25664点的二维绘图缓冲空间,在更改绘图RAM时,先连续写入水平与垂直的坐标值,再写入两个8位元的资料到绘图RAM而地址计数器AC会自动加一。在写入绘图RAM的期间,绘图显示必须关闭整个写入绘图RAM的步骤如下1关闭绘图显示功能2先将水平的位元组坐标X写入绘图RAM地址3再将垂直的坐标Y写入绘图RAM地址4将D15D8写入到RAM中5将D7D0写入到RAM中6打开绘图显示功能4系统的硬件结构设计硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波检测接收电路四部分。单片机采用AT89S52或其兼容系列。采用12MHZ高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P10端口输出超声波换能器所需的40KHZ的方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的LED。41单片机最小系统原理概述AT89S52单片机是整个系统的主控制器,欲使单片机正常工作,必须要设计单片机的最小系统。单片机最小系统,是指最少的元件组成的单片机可以工作的系统。对于51系列的单片机来说,最小系统一般应该包括单片机、晶振电路、复位电路。一般的晶振电路中晶振的负载电容为15P或125P,如果再考虑元件引脚的等效输入电容,则两个22P的电容构成晶振的振荡电路就是比较好的选择。单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。51单片机的最小系统原理图如下图41所示。图4151单片机最小系统原理图P1235678INTEA/VX9RSDWLUCYMHZPFGBUK产AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。片上FLASH允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。使用ATMEL公司高密度非易失性存储器技术制造。AT89S52具有以下标准功能8K字节FLASH,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在FLASH编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P10和P11分别作定时器/计数器2的外部计数输入(P10/T2)和定时器/计数器2的触发输入(P11/T2EX)。在FLASH编程和校验时,P1口接收低8位地址字节。引脚号第二功能P10T2(定时器/计数器T2的外部计数输入),时钟输出P11T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P15MOSI(在系统编程用)P16MISO(在系统编程用)P17SCK(在系统编程用)P2口P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器的内容。在FLASH编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在FLASH编程和校验时,P3口也接收一些控制信号。端口引脚第二功能P30RXD串行输入口P31TXD串行输出口P32INTO外中断0P33INT1外中断1P34TO定时/计数器0P35T1定时/计数器1P36WR外部数据存储器写选通P37RD外部数据存储器读选通RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需注意的是如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。XTAL1振荡器反相放大器和内部时钟发生电路的输入端。XTAL2振荡器反相放大器的输出端。特殊功能寄存器并不是所有的地址都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。用户不应该给这些未定义的地址写入数据“1”。由于这些寄存器在将来可能被赋予新的功能,复位后,这些位都为“0”。定时器2寄存器寄存器T2CON和T2MOD包含定时器2的控制位和状态位,寄存器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载寄存器。中断寄存器各中断允许位在IE寄存器中,六个中断源的两个优先级也可在IE中设置。定时器0和定时器1在AT89S52中,定时器0和定时器1的操作与AT89C51和AT89C52一样。为了获得更深入的关于UART的信息,选择“PRODUCTS”,然后选择“8051ARCHITECHFLASHMICROCONTROLLER”,再选择“PRODUCTOVERVIEW”即可。定时器0和定时器1在AT89S52中,定时器0和定时器1的操作与AT89C51和AT89C52一样。为了获得更深入的关于UART的信息,选择“PRODUCTS”,然后选择“8051ARCHITECHFLASHMICROCONTROLLER”,再选择“PRODUCTOVERVIEW”即可。定时器2定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON中的C/T2位选择(如表2所示)。定时器2有三种工作模式捕捉方式、自动重载(向下或向上计数)和波特率发生器。如表3所示,工作模式由T2CON中的相关位选择。定时器2有2个8位寄存器TH2和TL2。在定时工作方式中,每个机器周期,TL2寄存器都会加1。由于一个机器周期由12个晶振周期构成通过T2CON中的EXEN2来选择两种方式。如果EXEN20,定时器2时一个16位定时/计数器,溢出时,对T2CON的TF2标志置位,TF2引起中断。如果EXEN21,定时器2做相同的操作。除上述功能外,外部输入T2EX引脚(P11)1至0的下跳变也会使得TH2和TL2中的值分别捕捉到RCAP2H和RCAP2L中。除此之外,T2EX的跳变会引起T2CON中的EXF2置位。像TF2一样,T2EX也会引起中断。捕捉模式如图5所示。在计数工作方式下,寄存器在相关外部输入角T2发生1至0的下降沿时增加1。在这种方式下,每个机器周期的S5P2期间采样外部输入。一个机器周期采样到高电平,而下一个周期采样到低电平,计数器将加1。在检测到跳变的这个周期的S3P1期间,新的计数值出现在寄存器中。因为识别10的跳变需要2个机器周期(24个晶振周期),所以,最大的计数频率不高于晶振频率的1/24。为了确保给定的电平在改变前采样到一次,电平应该至少在一个完整的机器周期内保持不变。自动重载当定时器2工作于16位自动重载模式,可对其编程实现向上计数或向下计数。这一功能可以通过特殊寄存器T2MOD(见表4)中的DCEN(向下计数允许位)来实现。通过复位,DCEN被置为0,因此,定时器2默认为向上计数。DCEN设置后,定时器2就可以取决于T2EX向上、向下计数。DCEN0时,定时器2自动计数。通过T2CON中的EXEN2位可以选择两种方式。如果EXEN20,定时器2计数,计到0FFFFH后置位TF2溢出标志。计数溢出也使得定时器寄存器重新从RCAP2H和RCAP2L中加载16位值。定时器工作于捕捉模式,RCAP2H和RCAP2L的值可以由软件预设。如果EXEN21,计数溢出或在外部T2EX(P11)引脚上的1到0的下跳变都会触发16位重载。这个跳变也置位EXF2中断标志位。T2EX上的一个逻辑0使得定时器2向下计数。当TH2和TL2分别等于RCAP2H和RCAP2L中的值的时候,计数器下溢。计数器下溢,置位TF2,并将0FFFFH加载到定时器存储器中。置位DCEN,允许定时器2向上或向下计数。在这种模式下,T2EX引脚控制着计数的方向。T2EX上的一个逻辑1使得定时器2向上计数。定时器计到0FFFFH溢出,并置位TF2。定时器的溢出也使得RCAP2H和RCAP2L中的16位值分别加载到定时器存储器TH2和TL2中。定时器2上溢或下溢,外部中断标志位EXF2被锁死。在这种工作模式下,EXF2不能触发中断。中断源AT89S52有6个中断源两个外部中断(INT0和INT1),三个定时中断(定时器0、1、2)和一个串行中断。这些中断每个中断源都可以通过置位或清除特殊寄存器IE中的相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。IE6位是不可用的。对于AT89S52,IE5位也是不能用的。用户软件不应给这些位写1。它们为AT89系列新产品预留。定时器2可以被寄存器T2CON中的TF2和EXF2的或逻辑触发。程序进入中断服务后,这些标志位都可以由硬件清0。实际上,中断服务程序必须判定是否是TF2或EXF2激活中断,标志位也必须由软件清0。定时器0和定时器1标志位TF0和TF1在计数溢出的那个周期的S5P2被置位。它们的值一直到下一个周期被电路捕捉下来。然而,定时器2的标志位TF2在计数溢出的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。各控制位功能如下表42所示。中断允许控制寄存器(IE)(MSB)(LSB)中断允许控制位1,允许中断中断允许控制位0,禁止中断表42控制位功能符号位地址功能EAIE7中断总允许控制位。EA0,中断总禁止;EA1,各中断由各自的控制位设定IE6预留ET2IE5定时器2中断允许控制位ESIE4串行口中断允许控制位ET1IE3定时器1中断允许控制位EX1IE2外部中断1允许控制位ET0IE1定时器0中断允许控制位EX0IE0外部中断0允许控制位42超声波发射电路超声波由发射电路产生。通过电路产生一个27MHZ大小的方波。发射电路如图42。发射电路主要有反向器和超声波换能器构成,AT89S52单片机在P10口产生方波,由单片机产生的发射脉冲信号。一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电可极,用这种推挽形式将方波信号加到超声波换能器两端可以提高超声波的发射强度、增强驱动能力,输出端采用两个反向器并联,用于提高驱动能力。这样,两倍的反向器输出电压施加在传感器上。超声波传感器将输入的电信号转换为超声波信号传输出去,电容C可以除去直流分量,压电式超声波换能器是利用压电晶体的谐振来工作的。图42发射电路43超声波检测接收电路超声波接收电路包括一个放大电路,以更好的接受反射回来的超声波。如图43所示,为超声波检测接收电路。图43接收电路81432U7ALM5V0KWRUF6BGNDTSI9P44超声波测距系统的显示电路设计12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128X64全点阵液晶显示器组成。可完成图形显示,也可以显示8X416X16点阵汉字。如下图44所示P102345678INTEAVX9RSDWLUCBJKOG图44LCD驱动控制电路45PROTUES仿真硬件电路图硬件仿真电路如下图45所示,首先由555电路产生40KHZ的方波,经过74LS160电路进行100进制计数产生下降沿,下降沿触发AT89S52产生IT0中断,根据定时器T1记录的时间间隔由公式计算得出所测距离,传送至LCD显示。XTAL218XTAL119ALE301PSN29RST9P0/AD0391/18P02/AD2373/36P04/AD4355/54P06/AD637/72P1012P12334P14556P16778P30/RXD101/TP32/IN012/IT13P34/014P37/RD176/W65/T15P27/A1528P20/A8211/9P2/A0233/14P24/A2255/1366/47UAT89C51C11NFR10KY1CRSTALC230PFC330PF32184U1ALM35856784U2BLM35832184U7ALM35856784U7BLM35832184U8ALM35856784U8BLM358R170KR1810KR2010KR1910KR2810KR810KR2510KR10KR2310KR210KR2110KR610KC91NFC51NFC61NFC71NFC81NFC91NFRV11KRV21KRV31KRV41K12D1LM3852V5CS1122GND3VC405RS6/W7E8DB09110DB2312DB43514DB65716RST7VOUT18LCD1AMPIRE28X64RV51KR5110KR2710K图45PROTEUS仿真系统图5系统软件的设计软件分为两部分主程序和中断服务程序,主程序完成初始化工作、各路超声波发射和接受顺序的控制。51超声波测距仪的算法设计超声波测距的原理为超声波发生器T在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公式为DS/2CT/2,其中,D为被测物与测距仪的距离,S为声波的来回的路程,C为声速,T为声波来回所用的时间。在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。52程序流程超声波测距仪的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。工作时,先把P10口置0,启动超声波传感器发射超声波,同时启动内部定时器T0开始计时。当超声波碰到障碍物时信号立即返回,微处理器不停地扫描INT0引脚,如果INT0接受的信号由高电平变为低电平,此时表明信号已经返回,微处理器进入中断关闭定时器。再把定时器中的数据经过换算就可以得出超声波传感器与障碍物之间的距离。程序流程图如图51所示初始化LCD初始化定时器初始化开中断发送信号是否接收到信号计算传输时间显示否是开始结束主程序流程图定时器中断0服务子程序定时器初始化P10取反方波产生返回定时器0中断定时器1中断服务子程序定时器初始化超时标志OVERFLAG1返回定时器1中断53主程序设计软件分为两部分,主程序和中断服务程序,主程序完成初始化工作、各路超声波发射和接收顺序的控制。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。54定时中断服务子程序设计定时中断服务子程序完成超声波的发射,时间值的读取、距离计算、结果的输出等工作。主程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式。置位总中断允许位EA并给显示端口P0和P1清0。然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约01MS(这也就是超声波测距仪会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。由于采用的是12MHZ的晶振,计数器每计一个数就是1S,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式(2)计算,即可得被测物体与测距仪之间的距离,设计时取20时的声速为344M/S则有DCT/2172T0/10000CM,其中,T0为计数器T0的计算值。外部中断0服务子程序接收标志清零计算传输时间返回外部中断055超声波发生子程序和超声波接收中断程序设计超声波发生子程序的作用是通过P10端口发送2个左右超声波脉冲信号(频率约40KHZ的方波),脉冲宽度为12S左右,同时把计数器T0打开进行计时。超声波发生子程序较简单,但要求程序运行准确,所以采用汇编语言编程。超声波测距仪主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(即INT0引脚出现低电平),立即进入中断程序。进入中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2以表示此次测距不成功。前方测距电路的输出端接单片机INT0端口,中断优先级最高,中断优先级为先右后左。6调试结果超声波测距仪的制作和调试,中心频率为40KHZ,若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C4的大小,以获得合适的接收灵敏度和抗干扰能力。硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。根据实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。根据所设计的电路参数和程序,测距仪能测的范围为00755M,测距仪最大误差不超过1CM。系统调试完后应对测量误差和重复一致性进行多次实验分析,不断优化系统使其达到实际使用的测量要求。P10输入到超声波模块的方波波形如下图61所示图61输入波形P32口接收到超声波模块输出的波形如下图62所示图62输出波形表63数据测量序号123456理论值MM100200300400500600实测值MM103202303404498599相对误差311104017序号789101112理论值MM700800900100011001200实测值MM69978587597210701264相对误差01418827828273533根据以上测量实验数据所得测距仪能测的范围为02015M,测距仪最大误差不超过5CM。七系统误差来源及解决方案分析超声波测距无非就是发射然后接受反射,再计算时间差乘上速度。关键是要精确。用单片机产生超声波信号可以用定时中断,产生固定频率的方波信号,经过放大到换能器发射头,换能器把电信号转换成超声波发射出去。经过若干时间,有接受头其实还是换能器接受到返回的超声波信号,再次还原成固定频率的电信号,再处理这个信号,送到单片机产生一个接受中断,再用单片机计算时间差乘上现在的速度就是距离。所以,产生的误差可能会有一下几种测量距离传播的时间误差根据超声波测距公式LCT/2,可知测距的误差是由超声波的传播速度误差和测量距离传播的时间误差引起的时间误差因为当超声波发出后定时器开始计时,到超声波接触到物体的时候,此时的距离才是这个时候车到障碍物的距离。而后在接收到超声波的时候。此时车已经行驶一段距离,所以此时会产生一定的误差。在超声波的传播速度是准确的前提下,使用的12MHZ晶体作时钟基准的89C52单片机定时器能方便的计数到1S的精度,所以这个误差能够控制在很小的范围内。超声波传播速度误差超声波的传播速度受空气的密度所影响,空气的密度越高则超声波的传播速度就越快,而空气的密度又与温度有着密切的关系。已知超声波速度与温度的关系如下V2RRT/M,式中R气体定压热容与定容热容的比值,对空气为140,R气体普适常量,8314KGMOL1K1,M气体分子量,空气为288103KGMOL1,T绝对温度,273KT。近似公式为CC00607T,式中C0为零度时的声波速度332M/S;T为实际温度。对于超声波测距精度要求达到1MM时,就必须把超声波传播的环境温度考虑进去。例如当温度0时超声波速度是332M/S,30时是350M/S,温度变化引起的超声波速度变化为18M/S。若超声波在30的环境下以0的声速测量100M距离所引起的测量误差将达到5M,测量1M误差将达到5MM。八收获体会俗话说“好的开始是成功的一半”。通过这次实习,我们学到了很多东西。在进行课程设计时,我们应该做到以下三点首先,我认为最重要的就是认真研究老师给的题目。其次,在老师讲解的基础上认真研究硬件电路的设计,和软件流程的设计。最后,重点实现软硬结合的综合调试。这次课程设计的课题是超声波测距,用超声波测距的方法很常见,不过对于我们来说,亲自动手编写程序,进行整体设计还是很有挑战性的。查找资料是我们的第一步,我们通过各种途径,比如上网,图书馆以及询问老师等等方法收集了很多资料,然后汇总,将我们在这次课程设计中可能遇到的问题的解决方案都纳入了我们的资料库。接着就是硬件电路设计和软件设计,其实,这对我们每个人来说都是一个挑战。软件的设计调试是我最担心的设计,平时对这方面的知识理解的不是很透彻,比较欠缺,而且对于硬件模块我就更抓狂了。这时候小组的力量就体现出来了,各司其职,各尽其能。发挥了集体的效用。我们遇到问题,就向大家提出,然后寻找答案,共同解决,这样进展就好很多。我在这个过程中,受到了好多帮助,其实这次的课程设计我的最大的感受不是知识的获得,而是人格的磨练和交际的能力。”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义其实这次的课程设计我的最大的感受不是知识的获得,而是人格的磨练和交际的能力。课程设计这样集体的任务光靠团队里的一个人或几个人是不可能完成好的,合作的原则就是要利益均沾,责任公担。在团队中,当然也会出现一些矛盾,当然这是不可避免的。在产生小矛盾的时候,我们没有逃避。重要的是我们如何去解决它。我想经过这样的一个过程我们会学到很多,学会了怎样去和别人沟通,理解别人所做的事,别人也会宽容的对待我们,从而我们就在无形之中加强了我们的人际交往能力。这个经验对我们以后的人生将会发挥很大的作用。对我们来说,此次课程设计最重要的就是分工合作的精神。将理论知识充分运用到实践操作中,使我们的专业知识得到了进一步的巩固,为以后的工作打下了坚实的基础。对于我们以后学习、找工作也真是受益菲浅。在短短的一个星期中,让我们初步让理性回到感性的重新认识,也让我们初步的认识了这个社会,对于以后做人所应把握的方向也有所启发参考文献1胡萍超声波测距仪的研制计算机与现代化,2003102时德刚,刘哗超声波测距的研究计算机测量与控制,2002103华兵MCS51单片机原理应用武汉武汉华中科技大学出版社,200254李华MCU51系列单片机实用接口技术北京北京航空航天大学出版社,199365陈光东单片机微型计算机原理与接口技术第二版武汉华中理工大学出版社,199946徐淑华,程退安,姚万生单片机微型机原理及应用哈尔滨哈尔滨工业大学出版社,199967苏长赞红外线与超声波遥控北京人民邮电出版社,199378张谦琳超声波检测原理和方法北京中国科技大学出版社,1993109九州放大电路实用设计手册沈阳辽宁科学技术出版社,2002510樊昌元,丁义元高精度测距雷达研究电子测量与仪器学报,20001011苏伟,巩壁建超声波测距误差分析传感器技术,200412恒清,张靖加强单片机系统抗干扰能力的方法通化师范学院学报,20041013晗晓,袁慧梅单片机系统的印制板设计与抗干扰技术电子工艺技术,2004614丰,薛红宣采用软件抗干扰设计提高微机系统的可靠性电子产品世界,2004115占操,梁厚琴,曹燕单片机系统中的软件抗干扰技术电子技术,2003316华兵MCS51单片机原理应用武汉武汉华中科技大学出版社,2002517继兴,刘霞单片机系统软件抗干扰措施分析电子测量技术,2003附录一超声波测距电路原理图30PFC2GND1YMHZXVSWPBRUEAOLTU756AK8I94OEDR产SILJVC_QZ/附录二程序清单INCLUDEDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINEDISP_ON0X3FDEFINEDISP_OFF0X3EDEFINECOL_ADD0X40/列地址,Y地址,0列DEFINEPAGE_ADD0XB8/页地址,X地址,0页DEFINESTART_LINE0XC0/行地址,0行DEFINELCD_BUSP0/MCUP1LCMSBITMCSP21/MASTERCHIPENABLESBITSCSP22/SLAVECHIPENABLESBITENABLEP23/6800MODEENABLESINGLESBITDIP25/DATAORINSTRUMENTSELECTSBITRWP24/WRITEORREADSBITLE1P34/定义1616汉字结构体/STRUCTTYPFNT_GB16UNSIGNEDCHARINDEX2UNSIGNEDCHARMSK32STRUCTTYPFNT_GB16CODEGB1616SBITSQP10UCHAROVERTIME_FLAG,SEND_FLAG1,RECEIVE1UNSIGNEDLONGTIME,LENUCHARCODEASCII81696160X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,/“,0/0X00,0X00,0X00,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X33,0X30,0X00,0X00,0X00,/“,1/0X00,0X10,0X0C,0X06,0X10,0X0C,0X06,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,/“,2/0X40,0XC0,0X78,0X40,0XC0,0X78,0X40,0X00,0X04,0X3F,0X04,0X04,0X3F,0X04,0X04,0X00,/“,3/0X00,0X70,0X88,0XFC,0X08,0X30,0X00,0X00,0X00,0X18,0X20,0XFF,0X21,0X1E,0X00,0X00,/“,4/0XF0,0X08,0XF0,0X00,0XE0,0X18,0X00,0X00,0X00,0X21,0X1C,0X03,0X1E,0X21,0X1E,0X00,/“,5/0X00,0XF0,0X08,0X88,0X70,0X00,0X00,0X00,0X1E,0X21,0X23,0X24,0X19,0X27,0X21,0X10,/“,1/0X00,0X00,0X80,0X40,0X20,0X10,0X08,0X00,0X00,0X01,0X02,0X04,0X08,0X10,0X20,0X00,/“,4/0X00,0X70,0X48,0X08,0X08,0X08,0XF0,0X00,0X00,0X00,0X00,0X30,0X36,0X01,0X00,0X00,/“,5/0XC0,0X30,0XC8,0X28,0XE8,0X10,0XE0,0X00,0X07,0X18,0X27,0X24,0X23,0X14,0X0B,0X00,/“,0/0X00,0X00,0XC0,0X38,0XE0,0X00,0X00,0X00,0X20,0X3C,0X23,0X02,0X02,0X27,0X38,0X20,/“A“,1/0X08,0XF8,0X88,0X88,0X88,0X70,0X00,0X00,0X20,0X3F,0X20,0X20,0X20,0X11,0X0E,0X00,/“B“,2/0XC0,0X30,0X08,0X08,0X08,0X08,0X38,0X00,0X07,0X18,0X20,0X20,0X20,0X10,0X08,0X00,/“C“,3/0X08,0XF8,0X08,0X08,0X08,0X10,0XE0,0X00,0X20,0X3F,0X20,0X20,0X20,0X10,0X0F,0X00,/“D“,4/0X08,0XF8,0X88,0X88,0XE8,0X08,0X10,0X00,0X20,0X3F,0X20,0X20,0X23,0X20,0X18,0X00,/“E“,5/0X08,0XF8,0X88,0X88,0XE8,0X08,0X10,0X00,0X20,0X3F,0X20,0X00,0X03,0X00,0X00,0X00,/“F“,6/0XC0,0X30,0X08,0X08,0X08,0X38,0X00,0X00,0X07,0X18,0X20,0X20,0X22,0X1E,0X02,0X00,/“G“,7/0X08,0XF8,0X08,0X00,0X00,0X08,0XF8,0X08,0X20,0X3F,0X21,0X01,0X01,0X21,0X3F,0X20,/“H“,8/0X00,0X08,0X08,0XF8,0X08,0X08,0X00,0X00,0X00,0X20,0X20,0X3F,0X20,0X20,0X00,0X00,/“I“,9/0X00,0X00,0X08,0X08,0XF8,0X08,0X08,0X00,0XC0,0X80,0X80,0X80,0X7F,0X00,0X00,0X00,/“J“,10/0X08,0XF8,0X88,0XC0,0X28,0X18,0X08,0X00,0X20,0X3F,0X20,0X01,0X26,0X38,0X20,0X00,/“K“,11/0X08,0XF8,0X08,0X00,0X00,0X00,0X00,0X00,0X20,0X3F,0X20,0X20,0X20,0X20,0X30,0X00,/“L“,12/0X08,0XF8,0XF8,0X00,0XF8,0XF8,0X08,0X00,0X20,0X3F,0X00,0X3F,0X00,0X3F,0X20,0X00,/“M“,13/0X08,0XF8,0X30,0XC0,0X00,0X08,0XF8,0X08,0X20,0X3F,0X20,0X00,0X07,0X18,0X3F,0X00,/“N“,14/0XE0,0X10,0X08,0X08,0X08,0X10,0XE0,0X00,0X0F,0X10,0X20,0X20,0X20,0X10,0X0F,0X00,/“O“,15/0X08,0XF8,0X08,0X08,0X08,0X08,0XF0,0X00,0X20,0X3F,0X21,0X01,0X01,0X01,0X00,0X00,/“P“,16/0XE0,0X10,0X08,0X08,0X08,0X10,0XE0,0X00,0X0F,0X18,0X24,0X24,0X38,0X50,0X4F,0X00,/“Q“,17/0X08,0XF8,0X88,0X88,0X88,0X88,0X70,0X00,0X20,0X3F,0X20,0X00,0X03,0X0C,0X30,0X20,/“R“,18/0X00,0X70,0X88,0X08,0X08,0X08,0X38,0X00,0X00,0X38,0X20,0X21,0X21,0X22,0X1C,0X00,/“S“,19/0X18,0X08,0X08,0XF8,0X08,0X08,0X18,0X00,0X00,0X00,0X20,0X3F,0X20,0X00,0X00,0X00,/“T“,20/0X08,0XF8,0X08,0X00,0X00,0X08,0XF8,0X08,0X00,0X1F,0X20,0X20,0X20,0X20,0X1F,0X00,/“U“,21/0X08,0X78,0X88,0X00,0X00,0XC8,0X38,0X08,0X00,0X00,0X07,0X38,0X0E,0X01,0X00,0X00,/“V“,22/0XF8,0X08,0X00,0XF8,0X00,0X08,0XF8,0X00,0X03,0X3C,0X07,0X00,0X07,0X3C,0X03,0X00,/“W“,23/0X08,0X18,0X68,0X80,0X80,0X68,0X18,0X08,0X20,0X30,0X2C,0X03,0X03,0X2C,0X30,0X20,/“X“,24/0X08,0X38,0XC8,0X00,0XC8,0X38,0X08,0X00,0X00,0X00,0X20,0X3F,0X20,0X00,0X00,0X00,/“Y“,25/0X10,0X08,0X08,0X08,0XC8,0X38,0X08,0X00,0X20,0X38,0X26,0X21,0X20,0X20,0X18,0X00,/“Z“,26/0X00,0X00,0X00,0X
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025调解机构借用合同
- 2025临时工作合同模板
- 2025城市公寓买卖合同范本
- 2025年四期氧化铝炉环境服务合同
- 论文更名协议书
- 领取东西协议书
- 个人雇保安协议书
- 运营账号协议书
- 转让房地协议书
- 转让电车协议书
- 中国数据中心产业发展白皮书023年
- 西部计划面试题及答案
- 肿瘤科病历书写规范
- 粪便标志物筛选策略-全面剖析
- 岗位就业协议书范本
- 中医师承拜师合同公证书
- 金融市场学知到智慧树章节测试课后答案2024年秋齐鲁师范学院
- 2025年河南省安阳市滑县中考一模化学试题(含答案)
- 【沪粤版】2025-2026学年八年级物理下册教学工作计划(含进度表)
- 2025年中考语文备考之课内文言文主题阅读训练主题三:托物言志篇(原卷版)
- 人教版(2024)七年级下册英语UNIT 7 A Day to Remember 综合素质评价测试卷(含答案)
评论
0/150
提交评论