超声波测距系统的仿真.doc_第1页
超声波测距系统的仿真.doc_第2页
超声波测距系统的仿真.doc_第3页
超声波测距系统的仿真.doc_第4页
超声波测距系统的仿真.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

淮海工学院课程设计报告书 课程名称: 单片机控制系统课程设计 题 目: 基于单片机的超声波测距系统 系 (院): 东港学院 学 期: 2013-2014-2 专业班级: D自动化111 姓 名: 王佳力 学 号: 2011130874 评语:成绩:签名:日期:1 引言超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。系统的设计主要包括两部分,即硬件电路和软件程序。硬件电路主要包括单片机电路、发射电路、接收电路、显示电路和电源电路,另外还有复位电路和LED控制电路等。我采用以AT89C51单片机为核心的数字显示超声波测距仪的硬件电路。整个电路采用模块化设计,由信号发射和接收、供电、显示等模块组成。发射探头的信号经放大和检波后发射出去,单片机的计时器开始计时,超声波被发射后按原路返回,在经过放大带通滤波整形等环节,然后被单片机接收,计数器停止工作并得到时间。温度测量后送到单片机,通过程序对速度进行校正, 结合两者实现超声波测距的功能。软件程序主要由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。它控制单片机进行数据发送与接收,实现数据正确显示在LED上。另外程序控制单片机消除各探头对发射和接收超声波的影响。相关部分附有硬件电路图、程序流程图。实际的环境对超声波有很大的影响,如外部电磁干扰电源干扰信道干扰等等,空气的温度对超声波的速度影响也很大。此外供电电源也会使测量差生很大的误差。再设计的过程中考虑了这些因素,并给出了一些解决方案。1.1设计目的和要求本次课程设计是根据“自动化专业培养计划”而制定的。单片机控制系统课程设计是自动化专业的学生在学过相关专业课以后进行综合训练的教学环节,特别是自动控制系统、单片机原理及应用、计算机控制技术等专业课学完之后的一次实践教学。其目的在于使学生在课程设计过程中能够理论联系实际,在实践中充分利用所学理论知识分析和研究设计过程中出现的各类技术问题,巩固和扩大所学知识面,为以后走向工作岗位进行设计打下一定的基础。 在设计过程中,通过课程设计,使学生了解一般电气控制系统、自动控制系统和计算机控制系统设计的过程、步骤、要求、工作内容及设计方法。训练学生综合运用专业课的能力,提高学生工程设计的能力。1.2设计的内容综合运用微机原理及应用、单片机原理及应用、DSP技术原理及应用、计算机控制技术和检测技术与自动化仪表的知识,掌握单片机控制系统的组成、原理及工作方式,了解单片机控制系统的设计步骤与方法,特别是要了解单片机系统开发的整个过程,完成系统的软、硬件设计。2 设计电路发射探头2.1系统设计方案发射电路检测电路接受电路 目标物单片机处理单元显示模块接收探头图2-1系统设计方案图系统计划在实验室内实现小范围测距,测试距离约为0.2m3m米,系统的整体结构如图2-1所示。发射电路采用单片机 端口编程输出40kHz左右的方波脉冲信号,同时开启内部计数器TO。由于单片机端口输出功率很弱,为使测量距离满足要求,驱动超声传感器UCM-40T发射超声波距离足够远,故在此电路上加功率放大电路。从接收传感器探头UCM-40T传来的超声波的回波很微弱(几十个mV级),又存在着较强的噪声,所以放大信号和抑制噪声是放大电路必须考虑的。本系统设计此部分电路时采用一级放大和带通滤波电路,中心频率4OKHz左右,放大滤波电路均采用了高速精密运算放大器TL082,输出信号大约在5V左右。由于放大电路输出的信号是连续的正弦波叠加信号,而单片机所能接受的中断响应信号常为下降沿脉冲信号,故信号在放大电路后通过LM393构成的比较电路,将正弦信号转换成方波信号,用方波的负跳变作单片机的中断输入,使得单片机知道已接收到超声信号,内部计数器停止计时。显示电路采用动态扫描显示,主要是处于节省硬件的考虑。通过单片机编程将内部计数得到的时间数据转换为距离信息,通过3位LED数码管显示,数据XXX,单位cm。 2.2 单片机的选择 本系统硬件部分由AT89C51控制器、超声波发射电路及接收电路和LCD显示电路组成。由单片机AT89C51编程产生10us以上的高电平,由指定引脚输出,就可以在指定接收口等待高电平输出。一旦有高电平输出,即在模块中经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的处理,指定接收口即变为低电平,读取单片机中定时器的值。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。系统设计框图见图2-2。发射电路接收电路AT89C51LCDDS18B20图2-2系统设计总框图由图1-3时序图可以看出,超声波测距模块的发射端在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时间差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。 图2-3时序图2.3超声波部分的设计2.3.1超声波传感器的选择在超声波测量系统中,频率取得太低,外界的杂音干扰较多;频率取得太高,在传播的过程中衰减较大,检测距离越短,分辨力也变高。本文中选用的探头是4OKHz的收发分体式超声传感器,由一支发射传感器UCM-T40KI和一支接收传感器UCM-R4OKI组成,其特性参数如表2-4所示。型号UCM-T40K1UCM-R40KQ结构开放式开放式使用方式发射接收中心频率频带宽灵敏度声压指向角容量图2-4 传感器UCM-T40KI和传感器UCM-R4OKI特性参数2.3.2超声波发射电路设计超声波发射部分是为了让超声波发射换能器TCT4016T能向外界发出40 kHz左右的方波脉冲信号。40 kHz左右的方波脉冲信号的产生通常有两种方法:采用硬件如由555振荡产生或软件如单片机软件编程输出,本系统采用后者。编程由单片机P1.0端口输出40 kHz左右的方波脉冲信号,由于单片机端口输出功率不够,40 kHz方波脉冲信号分成两路,送给一个由74HC04组成的推挽式电路进行功率放大以便使发射距离足够远,满足测量距离要求,最后送给超声波发射换能器TCT4016T以声波形式发射到空气中。发射部分的电路,如图2-5所示。图中输出端上拉电阻R31,R32,一方面可以提高反向器74HC04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。图2-5超声波发射电路框图本系统用单片机P1.0发射一组方波脉冲信号,其输出波形稳定可靠,但输出电流和输出功率很低,不能够推动发射传感器发出足够强度的超声信号,所以在此间加入一个单电源乙类互补对称功率放大电路,如图2-6所示。图2-6 超声波发射电路2.3接收电路的设计接收换能器晶片接收到超声波垂直作用后,因谐振而形成逐步加强的机械振动。因压电效应晶片两面出现交变的等量异号电荷,电荷量很少,只能提供微小交变的电压信号,而不能提供电流信号。所以需要一个前置放大电路将这一微小交变电压信号充分放大,同时考虑可能出现干扰信号,放大有用信号的同时加入滤波电路,驱动后面的比较器输出电位跳变,作为确定接收到的时刻。前置放大电路单元的作用是对有用的信号进行放大,并抑制其它的噪声和干扰,从而达到最大信噪比,以利于后续电路的设计。图2-7前置放大电路图电路如图2-7所示,考虑到超声换能器的输出电阻比较大(一般数百兆欧姆以上),因此前置放大器必须有足够大的输入阻抗;同时,换能器的输出电压很小(数十毫伏),这就要求前置放大电路有很高的精度、很小的输入偏置电压 。前置放大电路是由一个高精度、高输入阻抗放大器TL082及电阻R、和R构成,组成反向比例放大电路,这样可以减小地线噪声的影响。2.4单片机LED显示电路设计显示器是一个典型的输出设备,而且其应用是极为广泛的,几乎所有的电子产品都要使用显示器,其差别仅在于显示器的结构类型不同而己。最简单的显示器可以使LED发光二极管,给出一个简单的开关量信息,而复杂的较完整的显示器应该是CRT监视器或者屏幕较大的LCD于显示的距离范围在4米之内,选用3位LED示,表示距离的XXXcm数值。液晶屏。综合课题的实际要求由数码管,通过单片机编程实现显示,表示距离的XXXcm数值。图2-8显示部分的电路图本单元电路设计如图2-8所示,采用3位共阴极数码显示管,显示字符由单片机P2口送至锁存器74HC574锁存,再经显示驱动芯片ULN2O03驱动数码管显示,P0.1-P0.3分别控制每一位的动态显示。74HC574为三态输出D型上升沿触发器,图2-9为其引脚图,在输入使能端有效时,当时钟脉冲CK有上升沿跳变,触发器发生翻转,将锁存的8路输入数据(即单片机P2口送出的字符数据)送出显示。其功能表,如表2-1图2-9 74HC574引脚图 图2-10ULN2003引脚图表2-1 74HC574功能表ULN2003为显示驱动芯片,抬升单片机的输出电流,提高负载驱动能力。其引脚如图2-10所示,其内部含七对达林顿放大管,其主要功能:当输入为高电平时,输出为低电平;输入为低电平时,输出为高电平。本课题让单片机P0.1-P0.3经此芯片提升驱动能力从而控制数码管的位选,实现数据动态扫描输出。2.4.1 LCD显示部分本设计显示部分采用字符型TC1602液晶显示所测距离值。TC1602显示的容量为2行16个字。液晶显示屏有微功耗、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点,与数码管相比,显得更专业、美观。使用时,可将P0与LCD的数据线相连,P2口与LCD的控制线相连,如图2-11所示。图2-11 TC1602液晶显示电路其中,TC1602第4脚RS为寄存器选择,第5脚RW为读写信号线,第6脚E为使能端。第714脚:D0D7为8位双向数据线。这里要注意的是,为了布线方便,单片机端的D0D7是接到LCD602的D1D0,正好相反,因此在编写软件时需要做处理,使读取正确。3 系统软件设计3.1 系统程序结构(1)DS18B20温度传感器接口模块,分为初始化程序、写入命令以及读取子程序等部分;(2)基于YB1602的显示模块,分为初始化子程序、写入子程序以及显示子程序;(3)本次设计使用C语言编写程序,C语言相比汇编有许多的优势;编译器使用Keil Version2进行程序编译,该软件功能强大使用方便。主程序,分为系统初始化、按键处理以及各个子程序的调度管理等部分。如图3-1所示描述了各个模块的关系:DS18B20初始化 距离计算LED显示模块超声波发射超声波接收按键处理 蜂鸣器鸣音 图3-1系统软件方框图3.2系统主程序:本设计主程序的思想如下:(1)DS18B20在12位精度下转换周期为750ms ,故900ms满足该速度要求;超声波每隔60ms发送一次。(2)按键S为测量启动键;(3)系统采用AT89S52的内时钟:12MHz;(4)没有使用看门狗功能;(5)超声波发送一定时间后才开始启动检测,避免直达信号造成误判。所以系统最小测量约为112mm;系统主程序如下:void main(void)uchar i,j;for(i=0;i255;i+)for(j=0;j255;j+); /延时,等待系统外围复位完成 sys_init(); /初始化display(); /显示sta_flag=0; /标准复位 waitforstarting: /检测按键while(START);for(i=0;i20;i+)delay1ms();if(START)goto waitforstarting;BUZZER=0; /蜂鸣器鸣音一次提示按键按下i=100000;while(i-);BUZZER=1;i=100000;while(i-);TR0=1; /启动定时器0while(1) if(sta_flag) /60MS到了,超声波已经发送 while(0=CSBIN); /等待超声波返回TR1=0;jsh=TH1; /停止计数temp=wd(); count=0;testtemp(); /重新启动转换display(); /刷新显示computer(); /计算距离hextobcd(); /转化成BCD码sta_flag=0; /标志清零 void sys_init(void) uchar i;for(i=0;i29;i+) /显示清零 numi=0;TMOD=0x11;TH0=0x15;TL0=0xA0;P0=0;CNT=0; /超声波发送关闭CSBIN=1;EA=1; /开放总中断Init_LCD();3.2实现距离计算float Dis_count()/距离计算函数float cm;cm=TH1*256+TL1;cm-=7610; /减去限制10M的初值+可调误差值cm*=speed; /计算距离uS*34650mcm/=20000; /转换为s 单程return cm;3.3系统原理图3.3.1系统PCB板图4 心得体会本次设计是对自动控制系统、单片机原理及应用、计算机控制技术等专业课学完之后的

温馨提示

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

评论

0/150

提交评论