超生波测距Verilog实验报告.doc

上传人:e****s 文档编号:61749628 上传时间:2022-11-21 格式:DOC 页数:24 大小:283.50KB
返回 下载 相关 举报
超生波测距Verilog实验报告.doc_第1页
第1页 / 共24页
超生波测距Verilog实验报告.doc_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《超生波测距Verilog实验报告.doc》由会员分享,可在线阅读,更多相关《超生波测距Verilog实验报告.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、南通大学电子信息学院实验报告册实验课程名称: 硬件描述语言课程设计 课 题: 超声波测距 班 级: 集091 姓 名: 杨龙龙 学 号: 0911002072 2021 2021 学年第 二 学期 目录一 概述 1 11.2 超声波的特性 11.3 设计的意义 11.4 超声波测距系统在国外的开展 2 2二 功能 3三 设计方案 33.1 超声波测距原理 33.2 软件系统设计框图 5四 设计与仿真 64.1 频率产生64.2 信号的发送与接收94.3 距离的显示 11五 结束语 13六 参考文献13七 附件147.1 完整代码 14 197.3 CX20216A的引脚注释 2021一 概述科

2、技飞速开展时至今日,超声波测距广泛应用于工业,农业,交通,环境,平安防护能源测量等科学领域,超声波测距的测量精度、测量距离,可靠性等性能指标对于提高相关应用系统的测控精度、可靠性,提高生产效率、促进科学技术的开展都具有极为重要的作用。随着经济的迅速开展,交通系统日益庞大,交通平安问题越来越被重视,平安防护现在变成为一个重要议题。近几年,船舶运输事故频发,复杂的水运环境,如大雨、大雾或夜间行驶常常导致航道的能见度降低,造成碰撞事故。由于超声波测距技术具有在黑暗、灰尘、烟雾等恶劣的环境下正常工作的特性,将超声波测距引入航运系统能切实可行的缓解这一问题超声波测距系统的设计结构多种多样,性能差异也各异

3、。目前市面上主流的超声波测距系统大多是以8位或者16位单片机为主空芯片,产生驱动信号,并负责接收处理回波,控制现实通讯。这样处理本钱固然降低了,但是测量精度,和测量距离,以及时序的控制能力有限。超声波测距的核心在于超声波信号的收发局部,传统单片机内部指令运行时存在较大延时误差其精度无法满足精密测量的要求,本设计将FPGA(现场可编程门阵列)引入超声波测距系统的设计内,利用其较高的运行速度和丰富的片内资源,取代单片机,提高对超声波工作频率的控制精度以及对超声波收发渡越时间的测量精度。1.2超声波的特性当物体振动时会发出声音。科学家们将每秒钟振动的次数称为声音的频率,它的单位是赫兹。我们人类耳朵能

4、听到的声波频率为20-20000赫兹。当声波的振动频率大于20000赫兹或小于20赫兹时,我们便听不见了。因此,我们把频率高于20000赫兹的声波称为“超声波16J。超声和可闻声本质上是一致的,它们的共同点都是一种机械振动,通常以纵波的方式在弹性介质内会传播,是一种能量的传播形式,其不同点是超声频率高,波长短。超声波是一种在弹性介质中的机械振荡,传播速度仅为光波的百万分之一,纵向分辨率较高超声波对色彩、光照度、外界光线和电磁场不敏感,对于被测物处于黑暗、有灰尘或烟雾、强电磁干扰、有毒等恶劣的环境下超声波有很强的适应能力。由于超声波的能量消耗缓慢,在介质中传播的距离较远,声波传播速度在相当大范围

5、内与频率无关等独特优点超声波被视为测距技术的一种良好选择在军事,工业,交通上上有很多的应用。设计意义距离在很多场合和控制中需要实时检测,所以,测距就成为数据采集中重要的一环。尽管测距有多种方式,比方:激光测距、微波测距、红外线测距和超声波测距等。但是超声波测距不失为一种简单可行的方法。虽然超声波测距电路多种多样,可是有的电路复杂、技术难度大,有的调试困难,有的元件不易购置,这就在一些方面限制了超声波测距系统的应用。本设计的电路,本钱低廉、性能可靠、所用元件易购,结合单片机的数据处理,电路实现容易,工作稳定可靠。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测

6、量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比拟迅速、方便、计算简单。超声波智能测距仪具有广泛的实际用途,超声波测距仪广泛应用于生活、军事等各个领域,如施工建筑单位对空间距离的测量、汽车倒车防撞系统、潜水艇的超声波探测定位系统。超声波测距技术在社会生活中已有广泛的应用,如汽车倒车雷达等,它们测距精度一般较低。目前对超声波高精度测距系统的需求越来越大。展望未来,超声波作为一种新型的非常重要有用的工具在各方面都将有很大的开展空间,它将朝着更高精度,更大应用范围,更加高定位高精度的方向开展,以满足日益开展的社会需求。1.4 超声波测距系统在国外的开展一般认为,关于超声波的研究

7、最初起始于1876年F.Galton的气哨实验,这是人类首次有效产生的高频声波。在之后的三十年中,超声波仍然是一个鲜为人知的东西,由于当时电子技术开展缓慢,对超声波的研究造成了一定程度的影响。在第一次世界大战中,对超声波的研究逐渐受到重视。法国人Langevin使用一种晶体传感器在水下发射和接收相对低频的超声波。他提出的这种方法可以用来检测水中是否存在潜艇并进行水下通信。1929年,Sokolov首先提出用超声波探查金属物内部缺陷的建议。相隔2年,1931年Mulhauser获准一项关于超声检测方法的德国专利,不过他并未做更多的工作。4年之后,1934年sokolov首次发表了关于在液体槽子里

8、用穿透法作实物试验的结果,他用了各种方法做了实验,用来检测穿过试件的超声能量,其中之一是用简单的光学方法观察液体外表由超声波形成的波纹。德国人Bergrnann在他的论著?ULTRASONIC?中,详细的论述了有关超声波的大量早期资料,该论著一直被认为是该领域的经典之作。美国的Firestone首次介绍了脉冲回波探伤仪,使超声波检测技术开展到了更重要的阶段。在各种系统中,这是最成功的一种,因为它有最广泛的通用性,其检测结果也最容易解释。这种方法除可用于手工检测外,还可与采用先进技术的自动系统联用,自第一种脉冲回波仪器问世以来,根据相同的原理,有无数种其他仪器得到了开展,并有许多改良和精化。目前

9、,在超声无损检测中,脉冲回波系统仍是使用最为广泛的一种。 超声波测距技术作为检测技术的重要手段之一,在其开展过程中起着重要的作用。由于其信号的高频特性,超声测距早期仅使用模拟量信号的分析,大局部检测设备仅有A扫描形式,需要通过有经验的人员对信号进行人工分析才能得出正确的结论,对分析人员的要求较高,因此,人为因素对检测的结果影响较大,波形也不易记录和保存,不适宜完成自动化检测。八十年代后期,由于计算机技术和高速器件的不断开展,使超声波信号的数字化采集和分析成为可能。目前国内也相继出现了各类数字化超声波测距设备,并已成为超声波检测的开展方向。厦门大学的某位学者研究了一种回波轮廓分析法。该方法在测距

10、中通过两次探测求取回波包络曲线来得到回波的起点,通过这样处理后超声波传播时间的精度得到了很大的提高。另外,也有大量的文献研究采用数字信号处理技术和小波变换理论来提高传输时间的精度。这些处理方法都取得了较好的效果。目前国内外在超声波检测领域都向着数字化方向开展,数字式超声波测距系统的开展速度很快。国内近几年也相继出现了许多数字式超声波仪器和分析系统。随着测距技术研究的不断深入,对超声测距系统功能要求越来越高,单数码显示的超声测距系统会带来较大的测试误差。进一步要求以后生产的超声测距仪能够具有双显及内带有单板机的微处理功能。随后具有检测,记录,存储,数据处理与分析等多项功能的智能化检测分析仪相继研

11、制成功。超声仪研制呈现一派繁荣景象。其中,煤炭科学研究院研制的 2000A 型超声分析检测仪,是一种内带微处理器的智能化测量仪器,全部操作都处于微处理器的控制管理之下,所有测量值,处理结果,状态信息都在显像管上显示出来,并可接微型打印机打印。其数字和波形都比拟清晰稳定,操作简单,可靠性高,具有断电存储功能,其串口可以方便用户对仪器的测试数据进行后处理及有关程序的开发。与国内同类产品相比,设计新颖合理,功能齐全,在仪器设计上有重大突破和创新,到达了国际先进水平。二 功能给定超声波发射接收模块,通过DE2产生频率为40KHZ的超声波脉冲信号(脉宽为250-500us)送至超声波发射模块。将超声波接

12、收模块数出的回波脉冲信号送至DE2,经处理后在3位数码管上面显示距离单位为cm。三 设计方案 超声波测距的原理是利用超声波在空气中的传播速度为,如果温度变化不大,那么可认为声速是根本不变的,根据测距方式超声波测距原理又分为直接测距和间接测距两种。直接测量法:测量超声波从发射端到接收端的渡越时间,根据超声波在环境温度中的速度计算出实际距离。测距的公式表示为:S=CxT间接测量法:测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时问差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。测距的公式表示为:S=CxT2式中:S为测量的距离长度;C为超声波在空气中的传播

13、速度;T为超声波的渡越传播时间。下表给出了系统软件设计的整体框架,实际上由于FPGA内的各个子进程都是并行执行的,且每个子进程都是是独立的模块,因此程序设计并不是按照顺序的方法设计的,而是别离成各个小的子模块进行设计综合的,需要严格控制时序。程序开始产生输出信号输出信号是否检测到回波信号否是将计数数据计算输出数码管显示超声波收发局部负责产生超声波驱动信号,要求频率为40KHz,占空比为50的方波信号以驱动超声波换能器,同时高速计数器开始计数,检测回波后,计数器停止计数,计算后控制显示输出。四 设计与仿真 4.1 频率的产生用于计时的时钟频率时钟信号2942clk-in17KHZ50MHZclk

14、-out2125040KHZclk-out2353&发送信号outclk-out117HZ产生40KHZ频率的的程序always (posedge clk_in )beginif(cnt = T-1) cnt = 0; else cnt = cnt+1b1;endalways (posedge clk_in)beginif(cnt T/2) clk_out = 0; else clk_out = 1b1;end产生17HZ频率的的程序always (posedge clk_out )beginif(cnt1 =2352) cnt1 = 0; else cnt1 = cnt1+1b1;endal

15、ways (posedge clk_out)beginif(cnt1 10) clk_out1 =1; else clk_out1 = 1b0;end产生17KHZ频率的的程序always (posedge clk_in )beginif(cnt2 =2941) cnt2 = 0; else cnt2 = cnt+1b1;endalways (posedge clk_in)beginif(cnt2 1470) clk_out2 = 0; else clk_out2 = 1b1;end产生发送信号的的程序always (negedge clk_in) out=clk_out&clk_out1;频

16、率仿真波形图频率说明:17KHZ: 17KHZ是由50MHZ分频而来的,因为50MHZ无法分频出标准的17KHZ的频率,所以分频而得的17KHZ的频率存在一定的误差周期变大,每个周期的误差为16ns17ns。 设q用于信号发出后,统计17KHZ频率的周期个数,那么所测距离L=q/2*1/17KHZ*34000cm/s=q,由此可见采用17KHZ的频率计时,周期个数即是所测距离,单位cm。40KHZ: CX20216A 的第5脚的电阻决定接收的中心频率,200k的电阻决定了接收的中心频率为40KHz。 17HZ: 17HZ用来跟40KHZ进行与运算,产生输出脉冲信号,用于检测距离。因为测量最大距

17、离为10m,脉冲从发射到接收最大传播距离为20m,那么所需时间为20/340=1/17s,所以选择17HZ的频率与40KHZ进行与运算,产生输出脉冲。信号未发送S0检测到有回波,转到S0检测到有信号发出,转到S1在S1状态停留3ms后转至S2S2S1检测有无回波信号已发送状态机处于S0状态s0: if(clk_out1) begin state=s1; ge0=ge0+1; shi0=0; bai0=0; end else begin state=s0; ge0=ge0; end状态机处于S1状态s1: if(shi0=5) state=s2; else begin ge0=ge0+1; if

18、(ge0=9) begin ge0=0; shi0=shi0+1; if(shi0=9) begin shi0=0; bai0=bai0+1; end end end状态机处于S2状态s2: if(!in) begin state=s0; ge=ge0; shi=shi0; bai=bai0; end else begin ge0=ge0+1; if(ge0=9) begin ge0=0; shi0=shi0+1; if(shi0=9) begin shi0=0; bai0=bai0+1; end end end状态说明:S0: 脉冲未发送时,状态机处于S0状态,一旦检测到脉冲发出,转换到S1

19、,同时bai0,shi0清零,ge0赋1。S1: 信号发送后,状态机处于S1状态,在S1状态停留约3ms,不进行回波检测,3ms后转到S2状态。因为超声波属于机械波,会引起机械振动,当脉冲从发射端口发射出去,引起机械振动,接收端口一旦检测到这个振动会误以为是回波,为了防止这个机械振动的干扰,在脉冲发射出去后3ms内不进行回波检测。S2: 在S2状态进行回波检测,一旦检测到回波,状态转至S0,同时将bai0赋给bai,shi0赋给时,ge0赋给ge。程序always (clk_in)begincase(ge) 4h0: HEX06:0 = seg0; 4h1: HEX06:0 = seg1; 4

20、h2: HEX06:0 = seg2; 4h3: HEX06:0 = seg3; 4h4: HEX06:0 = seg4; 4h5: HEX06:0 = seg5; 4h6: HEX06:0 = seg6; 4h7: HEX06:0 = seg7; 4h8: HEX06:0 = seg8; 4h9: HEX06:0 = seg9; default:HEX06:0 = seg0; endcasecase(shi) 4h0: HEX16:0 = seg0; 4h1: HEX16:0 = seg1; 4h2: HEX16:0 = seg2; 4h3: HEX16:0 = seg3; 4h4: HEX

21、16:0 = seg4; 4h5: HEX16:0 = seg5; 4h6: HEX16:0 = seg6; 4h7: HEX16:0 = seg7; 4h8: HEX16:0 = seg8; 4h9: HEX16:0 = seg9; default:HEX16:0 = seg0; endcase case(bai) 4h0: HEX26:0 = seg0; 4h1: HEX26:0 = seg1; 4h2: HEX26:0 = seg2; 4h3: HEX26:0 = seg3; 4h4: HEX26:0 = seg4; 4h5: HEX26:0 = seg5; 4h6: HEX26:0 =

22、 seg6; 4h7: HEX26:0 = seg7; 4h8: HEX26:0 = seg8; 4h9: HEX26:0 = seg9; default:HEX26:0 = seg0; endcase end 输出距离波形仿真图五结束语两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少

23、的过程千里之行始于足下,通过这次课程设计,我深深体会到这句千古名言的真正含义我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的根底。在这次设计过程中,表达出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的缺乏和薄弱环节,从而加以弥补。在此感谢老师.,老师严谨细致、一丝不苟的作风一直是我工作、学习中的典范;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次课程设计的每个实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。同时感谢

24、对我帮助过的同学们和研究生,谢谢你们对我的帮助和支持,让我感受到同学的友谊。 六 参考文献【1】 夏宇闻.?verilog数字系统设计教程?【第2版】【2】 刘宝琴.?数字电路与系统?.北京:北京清华大学出版社,1993七 附件module top(clk_in,out,in,HEX2,HEX1,HEX0);input clk_in,in; output out; output6:0 HEX0,HEX1,HEX2; reg clk_out,clk_out1,out,clk_out2;reg 11:0cnt,cnt1,cnt2; reg3:0 ge,shi,bai,ge0,shi0,bai0;r

25、eg6:0 HEX0,HEX1,HEX2;reg1:0 state;parameter T =1250, seg0= 7b1000000, seg1= 7b1111001, seg2= 7b0100100, seg3= 7b0110000, seg4= 7b0011001, seg5= 7b0010010, seg6= 7b0000010, seg7= 7b1111000, seg8= 7b0000000, seg9= 7b0010000, s0=2b00, s1=2b01, s2=2b10;initialbegin clk_out=0; clk_out1=0; clk_out2=0; out

26、=0; cnt=0; cnt1=0; cnt2=0; ge=0; shi=0; bai=0; ge0=0; shi0=0; bai0=0;endalways (posedge clk_in )beginif(cnt = T-1)cnt = 0; else cnt = cnt+1b1;endalways (posedge clk_in)begin if(cnt T/2) clk_out = 0; else clk_out = 1b1;endalways (posedge clk_out )begin if(cnt1 =2352)cnt1 = 0; else cnt1 = cnt1+1b1;end

27、always (posedge clk_out)begin if(cnt1 10) clk_out1 =1; else clk_out1 = 1b0;endalways (posedge clk_in )begin if(cnt =2940) cnt2 = 0; else cnt2 = cnt+1b1;endalways (posedge clk_in)begin if(cnt 1470) clk_out2 = 0; else clk_out2 = 1b1;endalways (negedge clk_in) out=clk_out&clk_out1;always (posedge clk_o

28、ut2 )begin case(state) s0:if(clk_out1)begin state=s1; ge0=ge0+1; shi0=0; bai0=0;endelse begin state=s0; ge0=ge0; ends1: if(shi0=5) state=s2;elsebegin ge0=ge0+1; if(ge0=9)beginge0=0;shi0=shi0+1;if(shi0=9)beginshi0=0;bai0=bai0+1;endendends2: if(!in) begin state=s0; ge=ge0; shi=shi0; bai=bai0;endelse begin ge0=ge0+1; if(ge0=9) begin ge0=0; shi0=shi0+1; if(shi0=9) begin shi0=0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理手册

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁