当前位置:文档之家› 超声波传感器的测距系统

超声波传感器的测距系统

超声波传感器的测距系统
超声波传感器的测距系统

超声波传感器的测距系统

安全避障是移动机器人研究的一个基本问题。障碍物与机器人之间距离的获得是研究安全避障的前提,超声波传感器以其信息处理简单、价格低廉、硬件容易实现等优点,被广泛用作测距传感器。本超声波测距系统选用了senscomp 公司生产的polaroid6500 系列超声波距离模块和600 系列传感器,微处理器采用了atmel 公司的at89c51。本文对此超声波测距系统进行了详细的分析与介绍。

超声波传感器及其测距原理

超声波是指频率高于20khz 的机械波[1]。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应[1]的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波测距的原理一般采用渡越时间法tof(timeofflight)[2]。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离,即

1、硬件电路设计

我们设计的超声波测距系统由polaroid600 系列传感器、polaroid6500 系列超声波距离模块和at89c51 单片机构成。

2.1polaroid600 系列传感器

此超声波传感器是集发送与接收一体的一种传感器。传感器里面有一个圆形的薄片,薄片的材料是塑料,在其正面涂了一层金属薄膜,在其背面有一个铝制的后板。薄片和后板构成了一个电容器,当给薄片加上频率为49.4khz、电压为300vacpk-pk 的方波电压时,薄片以同样的频率震动,从而产生频率为49.4khz 的

超声波。当接收回波时,polaroid6500 内有一个调谐电路,使得只有频率接近49.4khz的信号才能被接收,而其它频率的信号则被过滤。polaroid600 超声传感器发送的超声波具有角度为30 度的波束角[3],如图1 所示:

超声波传感器既可以作为发射器又可以作为接收器,传感器用一段时间发射一串超声波束,只有待发送结束后才能启动接收,设发送波束的时间为d,则在d 时间内从物体反射回的信号就无法捕捉;另外,超声波传感器有一定的惯性,发送结束后还留有一定的余振,这种余振经换能器同样产生电压信号,扰乱了系统捕捉返回信号的工作。因此,在余振未消失以前,还不能启动系统进行回波接收,以上两个原因造成了超声传感器具有测量一定的测量范围。此超声波最近可以测量37cm。

2.2polaroid6500 系列超声波距离模块

polaroid6500 系列超声波距离模块的硬件电路如图2 所示:

tl851 是一个经济的数字12 步测距控制集成电路。内部有一个420khz 的陶瓷晶振,6500 系列超声波距离模块开始工作时,在发送的前16 个周期,陶瓷晶振被8.5 分频,形成49.4khz 的超声波信号,然后通过三极管q1 和变压器t1 输送至超声波传感器。发送之后陶瓷晶振被4.5 分频,以供单片机定时用。tl852 是专门为接收超声波而设计的芯片。因为返回的超声波信号比较微弱,需要进行放大才能被单片机接收,tl852 主要提供了放大电路,当tl852 接收到4 个脉冲信号时,就通过rec给tl851 发送高电平表明超声波已经接收。

2.3at89c51 单片机

本系统采用at89c51 来实现对polaroid600 系列传感器和polaroid6500 系列超声波距离模块的控制。单片机通过p1.0 引脚经反相器来控制超声波的发送,然后单片机不停的检测int0 引脚,当int0 引脚的电平由高电平变为低电平时就认为超声波已经返回。计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。超声波测距的硬件示意图如图3 所示:

3、系统软件设计

系统程序流程图如图4 所示:

工作时,微处理器at89c51 先把p1.0 置0,启动超声波传感器发射超声波,同时启动内部定时器t0 开始计时。由于我们采用的超声波传感器是收发一体的,所以在发送完16 个脉冲后超声波传感器还有余震,为了从返回信号识别消除超声波传感器的发送信号,要检测返回信号必须在启动发射信号后2.38ms 才可以检测,这样就可以抑制输出得干扰。当超声波信号碰到障碍物时信号立刻返回,微处理器不停的扫描int0 引脚,如果int0 接收的信号由高电平变为低电平,此时表明信号已经返回,微处理器进入中断关闭定时器。再把定时器中的数据经过换算就可以得出超声波传感器与障碍物之间的距离。

4、实验数据处理

由于受环境温度、湿度的影响,超声传感器的测量值与实际值总有一些偏差,

表1 列出了本超声测距系统测量值与对应的实际值:

表1 超声测距系统测量值与实际值单位:cm

从表中的数据可以看出,测量值总是比实际值大出大约7cm,经过分析原因主要有三个方面:第一方面,超声波传感器测得的数据受环境温度的影响;第二方面,指令运行需占用一定的时间而使得测量的数据偏大;第三方面,为了防止其他信号的干扰,单片机开始计数时,驱动电路发送16 个脉冲串。对于单个回声的方式,当驱动电路接收到碰到障碍物返回的第四个脉冲时就停止计数,所以最终测得的时间比实际距离所对应的时间多出四个脉冲发送的时间。为了减小测量值与实际值的偏差,我们采用最小二乘法[4~5]对表1 的数据进行修正。

经过拟合,我们得到下面的方程:y=1.0145x-9.3354(其中:y 为实际值,x 为测量值)修正后本超声波测距系统测量值与实际值的对应关系如表2 所示:

表2 修正后超声测距系统测量值与实际值单位:

从修正后的数据我们可以看出,系统的测量误差在±2%以内,满足我们的测量要求。

5、结论

利用超声波传感器进行测距,其中主要的就是要保证在电路设计上一定要满足电路工作的可靠性、稳定性。经过实验与分析,我们认为用6500 系列距离模块和600 系列超声波传感器进行距离的测量简单、经济、可靠,测得数据的误差比较小。

超声波传感器测距原理

芀一、超声波测距原理 肅超声波测距原理是通过超声波发射器向某一方向发射超声波,在发射时刻的 同时开始计时,超声波在空气中传播时碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为v ,而根据计时器记录的测出发射和接收回波的时间差△t ,就可以计算出发射点距障碍物的距离S , 即: 膂S = v·△t /2 ① 芀这就是所谓的时间差测距法。 蝿由于超声波也是一种声波, 其声速C与温度有关,表1列出了几种不同温度下的声速。在使用时,如果温度变化不大, 则可认为声速是基本不变的。常温下超声波的传播速度是334 米/秒,但其传播速度V 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高1 ℃, 声速增加约0. 6 米/ 秒。如果测距精度要求很高, 则应通过温度补偿的方法加以校正(本系统正是采用了温度补偿的方法)。已知现场环境温度T 时, 超声波传播速度V 的计算公式为: 螅V = 331.45 + 0.607T ② 芄 声 速 确 定

后, 只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理。 薂二、系统硬件电路设计 腿图2 超声波测距仪系统框图 蒆基于单片机的超声波测距仪框图如图 2 所示。该系统由单片机定时器产生 40KHZ 的频率信号、超声波传感器、接收处理电路和显示电路等构成。单片机 是整个系统的核心部件,它协调和控制各部分电路的工作。工作过程:开机,单 片机复位,然后控制程序使单片机输出载波为40kHz 的10 个脉冲信号加到超声 波传感器上,使超声波发射器发射超声波。当第一个超声波脉冲群发射结束后, 单片机片内计数器开始计数,在检测到第一个回波脉冲的瞬间,计数器停止计数, 这样就得到了从发射到接收的时间差△t;根据公式①、②计算出被测距离,由显示装置显示出来。下面分别介绍各部分电路: 莅1 、超声波发射电路 螀超声波发射电路如图3所示,89C51 通过外部引脚P1.0 输出脉冲宽度为250 μ s , 40kHz 的10 个脉冲串通过超声波驱动电路以推挽方式加到超声波传感器而发 射出超声波。由于超声波的传播距离与它的振幅成正比,为了使测距范围足够远, 可对振荡信号进行功率放大后再加在超声波传感器上。 薈图3中T为超声波传感器,是超声波测距系统中的重要器件。利用逆压电效应 将加在其上的电信号转换为超声机械波向外辐射; 利用压电效应可以将作用在它 上面的机械振动转换为相应的电信号, 从而起到能量转换的作用。市售的超声 波传感器有专用型和兼用型,专用型就是发送器用作发送超声波,接收器用作接

51单片机超声波测距程序

//晶振:11.0592 //TRIG:P1.2 ECH0:P1.1 //波特率:9600 #include #include #include #define uchar unsigned char #define uint unsigned int sbit RX=P0^2; sbit TX=P0^3; unsigned int time=0; unsigned int timer=0; float S=0; bit flag =0; void Conut(void) { time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.87)/100; //算出来是CM if(flag==1) //超出测量 { flag=0; printf("-----\n"); } printf("S=%f\n",S); } void delayms(unsigned int ms) { unsigned char i=100,j; for(;ms;ms--) { while(--i)

{ j=10; while(--j); } } } void zd0() interrupt 1 //T0中断用来计数器溢出,超出测距范围{ flag=1; //中断溢出标志 } void StartModule() //T1中断用来扫描数码管和计800ms启动模块{ TX=1; //800MS启动一次模块 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; } void main(void) { TMOD=0x21; //设T0为方式1,GATE=1; SCON=0x50; TH1=0xFD; TL1=0xFD; TH0=0; TL0=0;

基于单片机的超声波测距系统实验报告

基于单片机的超声波测距系统实验报告

一、实验目的 1.了解超声波测距原理; 2.根据超声波测距原理,设计超声波测距器的硬件结构电路; 3.对设计的电路进行分析能够产生超声波,实现超声波的发送与接收,从而实现利用 超声波方法测量物体间的距离; 4.以数字的形式显示所测量的距离; 5.用蜂鸣器和发光二极管实现报警功能。 二、实验容 1.认真研究有关理论知识并大量查阅相关资料,确定系统的总体设计方案,设计出系 统框图; 2.决定各项参数所需要的硬件设施,完成电路的理论分析和电路模型构造。 3.对各单元模块进行调试与验证; 4.对单元模块进行整合,整体调试; 5.完成原理图设计和硬件制作; 6.编写程序和整体调试电路; 7.写出实验报告并交于老师验收。 三、实验原理 超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距S=Ct/2,式中的C为超声波波速。由于超声波也是一种声波,其声速C与温度有关。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理,单片机(AT89C51)发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间t,再由系统软件对其进行计算、判别后,相应的计算结果被送至LED显示电路进行显示。 (一)超声波模块原理: 超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到 3mm。模块包括超声波发射器、接收器与控制电路。基本工作原理:采用 IO 口 TRIG 触发测距,给至少 10us 的高电平信号;模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回;有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。实物如下图1。其中VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四支线。

超声波测距程序(详细C语言数码管显示)

超声波测距程序(详细C语言数码管显示) #include //头文件 #include// _nop_() 函数延时1US用 #include #include #define uchar unsigned char #define uint unsigned int #define nop _nop_() sbit csb=P1^0;//超声波发送端口为P1.0 sbit bai=P2^2;//数码管百位 sbit shi=P2^1;//数码管十位 sbit ge=P2^0;//数码管个位 uchar flag;//超声波接收标志 float juli1;//距离变量,用来数码管显示用 int juli; uchar table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳数码管0到9的代码 int xianshi[3]; void delayshow(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void ledshow(void) { xianshi[0]=juli/100; xianshi[1]=((juli%100)/10); xianshi[2]=juli%10; bai=0; P0=table[xianshi[0]]; delayshow(2); bai=1; delayshow(2); shi=0; P0=table[xianshi[1]]; delayshow(2); shi=1;

超声波传感器的使用注意事项

探测范围和大小 要探测的物体大小直接影响超声波传感器的检测范围。传感器必须探测到一定声级的声音才可以进行输出。大部件能将大部分声音反射给超声波传感器,这样传感器即可在其最远传感距离检测到此部件。小部件仅能反射较少的一部分声音,从而导致传感范围大大缩小。 探测物体的特点 使用超声波传感器探测的理想物体应体积大、平整且密度高,并与变换器正面垂直。最难探测的物体是体积小且由吸音材料制成的物体,或者与变换器呈一定角度的物体。 如果液面静止且与传感器表面垂直,探测液体就很容易。如果液面波动大,可延长传感器的响应时间,从而取波动变化的平均值以获得更一致的读数。但是,超声波传感器还不能精确探测表面为泡沫状的液体,因为泡沫会使声音的传播方向发生偏离。这时可以使用超声波传感器的反向超声模式,探测形状不规则的物体。在反向超声模式下,超声波传感器会探测一个平整背景,如墙壁。任何穿过传感器和墙壁之间的物体都会阻断声波。传感器即可通过探测该干扰来识别物体的存在。 温度导致的衰减 传感器还设计了温度补偿功能,以调节环境温度的缓慢改变。但是,它不能调节温度梯度或环境温度的快速变化。 周围是否有振动 无论是传感器本身的振动还是附近机器的振动,都可能会影响测量距离时的精确度。可在安装传感器时用橡胶防振装置来减少这类问题。有时也可使用导轨来消除或降低部件振动。 环境导致的误测 附近的物体可能会反射声波。要准确探测目标物体,必须降低或消除附近声音反射表面的影响。为了避免误测附近物体,许多超声波传感器都装有LED指示灯,用于在安装时指示操作人员,以确保正确安装传感器并降低误测风险。 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有 10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路

超声波传感器及其测距原理

安全避障是移动机器人研究的一个基本问题。障碍物与机器人之间距离的获得是研究安全避障的前提,超声波传感器以其信息处理简单、价格低廉、硬件容易实现等优点,被广泛用作测距传感器。本超声波测距系统选用了SensComp公司生产的Polaroid 6500系列超声波距离模块和600系列传感器,微处理器采用了ATMEL公司的AT89C51。本文对此超声波测距系统进行了详细的分析与介绍。 1、超声波传感器及其测距原理 超声波是指频率高于20KHz的机械波[1]。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应[1]的原理将电能和超声波相互转 化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。 超声波测距的原理一般采用渡越时间法TOF(time of flight)[2]。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的

声源与障碍物之间的距离,即 1、硬件电路设计 我们设计的超声波测距系统由Polaroid 600系列传感器、Polaroid 6500系列超声波距离模块和AT89C51单片机构成。 2.1 Polaroid 600系列传感器 此超声波传感器是集发送与接收一体的一种传感器。传感器里面有一个圆形的薄片,薄片的材料是塑料,在其正面涂了一层金属薄膜,在其背面有一个铝制的后板。薄片和后板构成了一个电容器,当给薄片加上频率为49.4kHz、电压为300VAC pk-pk的方波电压时,薄片以同样的频率震动,从而产生频率为49.4kHz的超声波。当接收回波时,Polaroid 6500内有一个调谐电路,使得只有频率接近49.4kHz的信号才能被接收,而其它频率的信号则被过滤。 Polaroid 600超声传感器发送的超声波具有角度为30度的波束角[3],如图1所示:

单片机应用_超声波测距器

单片机课程设计 一、需求分析: 超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。要求测量围在1m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。 本文旨在设计一种能对中近距离障碍物进行实时测量的测距装置,它能对障碍物进行适时、适量的测量,起到智能操作,实时监控的作用。 关键词单片机AT82S51 超声波传感器测量距离 二、硬件设计方案 设计思路 超声波传感器及其测距原理 超声波是指频率高于20KHz的机械波。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波测距的原理一般采用渡越时间法TOF(time of flight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离 测量距离的方法有很多种,短距离的可以用尺,远距离的有激光测距等,超声波测距适用于高精度的中长距离测量。因为超声波在标准空气中的传播速度为340米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以达到毫米级。 由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。 超声波发生器可以分为两类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。本课题属于近距离测量,可以采用常用的压电式超声波换能器来实现。 根据设计要求并综合各方面因素,可以采用AT89S51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,超声波测距器的系统框图如下图所示: 超声波测距器系统设计框图 主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。采用AT89S51来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。

高精度超声波测距系统设计

高精度超声波测距系统设计。 引言 利用超声波测量距离的原理可简单描述为:超声波定期发送超声波,遭遇障碍物时发生反射,发射波经由接收器接收并转化为电信号,这样测距技术只要测出发送和接收的时间差, 然后按照下式计算,即可求出距离: 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求, 因此,广泛应用于倒车提醒、建筑工地、工业现场等的距离测量。目前的测距量程上能达到百米数量级,测量的精度往往能达到厘米数量级。本文在分析现有超声波测距技术基础之上, 给出了一种改进方案,测量精度可达毫米级。 2 系统方案分析与论证 2.1 影响精度的因素分析 根据超声波测距式(1)可知测距的误差主要是由超声波的传播速度误差和测量距离传播 的时间误差引起的。 对于时间误差主要由发送计时点和接收计时点准确性确定,为了能够提高计时点选择的准确性,本文提出了对发射信号和加收信号通过校正的方式来实现准确计时。此外,当要求测距误差小于 1 mm时,假定超声波速度C=344 m/s(20℃室温),忽略声速的传播误差。则测距误差s△t<0.000 002 907 s,即2.907 ms。根据以上过计算可知,在超声波的传播速度是准确的前提下,测量距离的传播时间差值精度只要在达到微秒级,就能保证测距误差小于1 mm的误差。使用的12 MHz晶体作时钟基准的89C51单片机定时器能方便的计数到1μs的精度,因此系统采用AT89S51的定一时器能保证时间误差在 1 mm的测量范围内。

超声波传感器测距仪设计报告(全)-张哲铭

单片机、传感器、印制电路板 课程整合实训 电子产品设计与制作 技术报告 (2013——2014 学年第二学期) 项目名称:超声波测距仪设计 指导教师:卢建声,曾庆波,代瑶 专业:微电子技术 班级:12微电子 组长:张哲铭 组员:高金阁,李雨泽,苏程龙黑龙江信息技术职业学院·电子工程系

目录 任务书...................................................................... 错误!未定义书签。 一、工作任务 ................................................................. 错误!未定义书签。 二、工作目标 (3) 三、主要设计内容 (3) 1.原理设计 (3) 2.原理框图 (3) 3原理图 (4) 4元件清单 (4) 五、提交成果 ................................................................. 错误!未定义书签。 一、原理设计与技术路线 .............................................. 错误!未定义书签。 1、原理图绘制......................................................... 错误!未定义书签。 2、PCB图绘制.......................................................... 错误!未定义书签。 3、单元电路设计..................................................... 错误!未定义书签。 4、整机设计 ............................................................ 错误!未定义书签。 (5) (6) 六、总结报告 (10) 附录 (13) 超声波测距仪设计

超声波测距仪的设计说明

题目:超声波测距仪的设计 超声波测距仪的设计 一、设计目的: 以51单片机为主控制器,利用超声波模块HC-SR04,设计出一套可在数码管上实时显示障碍物距离的超声波测距仪。 通过该设计的制作,更为深入的了解51的工作原理,特别是51的中断系统及定时器/计数器的应用;掌握数码管动态扫描显示的方法和超声波传感器测距的原理及方法,学会搭建51的最小系统及一些简单外围电路(LED显示电路)。从中提高电路的实际设计、焊接、检错、排错能力,并学会仿真及软件调试的基本方法。 二、设计要求: 设计一个超声波测距仪。要求: 1.能在数码管上实时显示障碍物的实际距离; 2.所测距离大于2cm小于300cm,精度2mm。 三、设计器材: STC89C52RC单片机 HC-SR04超声波模块 SM410561D3B四位的共阳数码管 9014三极管(4) 按键(1) 电容(30PF2,10UF1) 排阻(10K),万用板,电烙铁,万用表,5V直流稳压电源,镊子,钳子,

导线及焊锡若干,电阻(200欧5)。 四、设计原理及设计方案: (一)超声波测距原理 超声测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。基本的测距公式为:L=(△t/2)*C 式中 L——要测的距离 T——发射波和反射波之间的时间间隔 C——超声波在空气中的声速,常温下取为344m/s 声速确定后,只要测出超声波往返的时间,即可求得L。 根据本次设计所要求的测量距离的围及测量精度,我们选用的是HC-SR04超声波测距模块。(如下图所示)。此模块已将发射电路和接收电路集成好了,硬件上不必再自行设计繁复的发射及接收电路,软件上也无需再通过定时器产生40Khz的方波引起压电陶瓷共振从而产生超声波。在使用时,只要在控制端‘Trig’发一个大于15us宽度的高电平,就可以在接收端‘Echo’等待高电平输出。单片机一旦检测到有输出就打开定时器开始计时。 当此口变为低电平时就停止计时并读出定时器的值,此值就为此次测距的时间,再根据传播速度方可算出障碍物的距离。 (二)超声波测距模块HC-SR04简要介绍 HC-SR04超声波测距模块的主要技术参数使用方法如下所述: 1. 主要技术参数: ①使用电压:DC5V ②静态电流:小于2mA ③电平输出:高5V

超声波测距传感器(硬件件篇)

自制一个由你掌控的 —— 超声波测距传感器(硬件篇) 一、背景 四年多前,我曾尝试自己制作一个超声波测距传感器。 当时是想为 LEGO 的 RCX 配套,因为我是Semia 的技术支持,那时RCX 还没有配置任何测距传感器。由于可查阅的资料有限,且不详细,最后以失败告终 /(也许在网络搜索上我属于“菜鸟”)。 为了达到目的,只好选用了 Sharp 公司的 GP2D12。但自制超声波测距传感器的愿望一直没被遗忘。一是觉得超声波用于测距从原理上讲应该效果不错(GP2D12的测距范围太小,只有 10 — 80 cm);二是市售成品不够灵活,为了适应它还得做转换接口,费力耗财。 前段时间协助一个单位搞项目,涉及到超声波测距;有幸的是解剖了一款进口的超声波测距传感器 —— SensComp公司的6500,使我对相关原理和技术有了比较透彻的了解。 本想项目结束后立刻动手设计一个自己的传感器,后因忙于“圆梦小车”耽搁了。 现在圆梦小车已初具雏形,可以腾出一点时间,而且小车也需要一些传感器与之配套,便着手实现了这个夙愿。

基于嵌入之梦工作室的宗旨 —— 为学习单片机的大学生服务,将设计和制作的细节与大家分享,希望能有助于读者做出属于你自己的超声波传感器,也让和我有类似想法的人不至于再次失望于网络。 二、需求分析 ?能在测距范围上弥补 GP2D12 的不足,将距离延伸到 80cm以外; ?可以提供给大学生和爱好者 DIY,具有学习功能; ?方便自己随时修改程序,使学习的作用得以充分发挥; ?成品具有一定的使用价值,可方便的应用于小车等需要测距的装置上。 三、概要设计 总体设计参照 SensComp公司(https://www.doczj.com/doc/698771991.html,)6500测距模块,其核心是两片专用的超声波测距IC:TL851和TL852。 TL852是一片专门设计用于超声波接收、放大、检测的芯片,集成了可变增益、选频放大器,可通过四根控制线变换11级增益,对于检测超声波信号十分有效。 TL851 与TL852 配套,它可实现超声波发射及控制TL852的增益变换,通过定时控制增益,使TL852的增益与回波时间相匹配,一方面提高了检测的灵敏度,同时减小了干扰。 如果不能随时间变换增益,为增加检测距离,就需要加大灵敏度;而开始时灵敏度就很高,无疑会收到一些不想要的信号。(6500测距模块的相关资料及芯片资料见附件) 解剖此模块时,对TL852的功能十分感兴趣,当初我制作时就是“栽”在这个环节;而TL851的功能基本属数字控制范畴,输出还需要配合单片机才能得到结果,接口也不是十分灵活,笔者认为完全可以用单片机替代。 所以,本次设计的主要改变就是用单片机替换6500模块的TL851。 单片机还是选用圆梦小车所用的STC12系列,一是考虑是51兼容,符合国内多数教材;二是下载程序方便。此次选用的是 STC12LE4052(4K FlashROM,256 RAM)。考虑体积因素,选择了SOP20封装。

超声波测距实验报告

电子信息系统综合设计报告 超声波测距仪

目录 摘要 (3) 第一章绪论 (3) 1.1 设计要求 (3) 1.2 理论基础 (3) 1.3 系统概述 (4) 第二章方案论证 (4) 2.1 系统控制模块 (5) 2.2距离测量模块 (5) 2.3 温度测量模块 (5) 2.4 实时显示模块 (5) 2.5 蜂鸣报警模块 (6) 第三章硬件电路设计 (6) 3.1 超声波收发电路 (6) 3.2 温度测量电路 (7) 3.3 显示电路 (8) 3.4 蜂鸣器报警电路 (9) 第四章软件设计 (10) 第五章调试过程中遇到的问题及解决 (11) 5.1 画PCB及制作 (11) 5.2 焊接问题及解决 (11) 5.3 软件调试 (11) 实验总结 (13) 附件 (14) 元器件清单 (14) HC-SR04超声波测距模块说明书 (15) 电路原理图 (17) PCB图 (17) 程序 (18)

摘要 该系统是一个以单片机技术为核心,实现实时测量并显示距离的超声波测距系统。系统主要由超声波收发模块、温度补偿电路、LED显示电路、CPU处理电路、蜂鸣器报警电路等5部分组成。系统测量距离的原理是先通过单片机发出40KHz 方波串,然后检测超声波接收端是否接收到遇到障碍物反射的回波,同时测温装置检测环境温度。单片机利用收到回波所用的时间和温度补偿得到的声速计算出距离,显示当前距离与温度,按照不同阈值进行蜂鸣报警。由于超声波检测具有迅速、方便、计算简单、易于做到实时控制的特点,并且在测量精度方面能达到工业实用的要求,因此在生产生活中得到广泛的应用,例如超声波探伤、液位测量、汽车倒车雷达等。 关键词:超声波测距温度测量单片机 LED数码管显示蜂鸣报警 第一章绪论 1.1设计要求 设计一个超声波测距仪,实现以下功能: (1)测量距离要求不低于2米; (2)测量精度±1cm; (3)超限蜂鸣器或语音报警。 1.2理论基础 一、超声波传感器基础知识 超声波传感器是利用晶体的压电效应和电致伸缩效应,将机械能与电能相互转换,并利用波的特性,实现对各种参量的测量。 超声波的传播速度与介质的密度和弹性特性有关,与环境条件也有关: 在气体中,超声波的传播速度与气体种类、压力及温度有关,在空气中传播速度为C=331.5+0.607t/0C (m/s) 式中,t为环境温度,单位为0C. 二、压电式超声波发生器原理 压电式超声波发生器实际上是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。 三、超声波测距原理 由于超声波指向性强,能量消耗缓慢,在空气中传播的距离较远,因而超声波

超声波测距C语言源程序代码

超声波测距C语言源程 序代码 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

/*{HZ即单位s的倒数}本晶振为12MHZ,因此外部的时钟频率为12MHZ,所以内部的时钟频率为(12M H Z)/12=1M H 即1000000HZ,而机械频率为1/(1MHZ),即每完成一次计算(即定时器的值加一)用时, 即1us(微秒).*/ /*************************************************************************** ********/ #include<> #define UC unsigned char #define UI unsigned int void delay(UI); sbit BX = P3^0;void TimeConfiguration(); a = 0; b = 0; c = 0; P2 =~ 0x00; goto loop; } time = TL0 + TH0*256; juli = ( int )( (time*/2 ); BAI = ( (juli%1000)/100 ); SHI = ( (juli%100)/10 ); GE = ( juli%10 ); /******************************************两种模式的距离显示 ********************************************/ if(juli > MAX) { Hong = 0; Lv = 1; while( t1-- ) { a = 0; b = 1; c = 1; P2 =~ CharacterCode[BAI]; delay(400); a = 1; b = 0; c = 1; P2 =~ CharacterCode[SHI]; delay(400); a = 1; b = 1; c = 0; P2 =~ CharacterCode[GE]; delay(390);

超声波传感器测量距离

一、超声波测距原理 超声波测距原理是通过超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播时碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为v ,而根据计时器记录的测出发射和接收回波的时间差△t ,就可以计算出发射点距障碍物的距离S ,即: S = v·△t /2 ① 这就是所谓的时间差测距法。 由于超声波也是一种声波, 其声速C与温度有关,表1列出了几种不同温度下的声速。在使用时,如果温度变化不大, 则可认为声速是基本不变的。常温下超声波的传播速度是334 米/秒,但其传播速度V 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高1 ℃, 声速增加约0. 6 米/ 秒。如果测距精度要求很高, 则应通过温度补偿的方法加以校正(本系统正是采用了温度补偿的方法)。已知现场环境温度T 时, 超声波传播速度V 的计算公式为: V = 331.45 + 0.607T ② 声 速 确 定 后, 只 要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理。 二、系统硬件电路设计

图2 超声波测距仪系统框图 基于单片机的超声波测距仪框图如图2所示。该系统由单片机定时器产生40KHZ的频率信号、超声波传感器、接收处理电路和显示电路等构成。单片机是整个系统的核心部件,它协调和控制各部分电路的工作。工作过程:开机,单片机复位,然后控制程序使单片机输出载波为40kHz的10个脉冲信号加到超声波传感器上,使超声波发射器发射超声波。当第一个超声波脉冲群发射结束后,单片机片内计数器开始计数,在检测到第一个回波脉冲的瞬间,计数器停止计数,这样就得到了从发射到接收的时间差△t;根据公式①、②计算出被测距离,由显示装置显示出来。下面分别介绍各部分电路: 1 、超声波发射电路 超声波发射电路如图3所示,89C51通过外部引脚P1.0 输出脉冲宽度为250μs , 40kHz的10个脉冲串通过超声波驱动电路以推挽方式加到超声波传感器而发射出超声波。由于超声波的传播距离与它的振幅成正比,为了使测距范围足够远,可对振荡信号进行功率放大后再加在超声波传感器上。 图3中T为超声波传感器,是超声波测距系统中的重要器件。利用逆压电效应将加在其上的电信号转换为超声机械波向外辐射; 利用压电效应可以将作用在它上面的机械振动转换为相应的电信号, 从而起到能量转换的作用。市售的超声

超声波测距实验报告

目录 1、课题设计的目的和意义 (3) 2、课题要求 (3) 2.1、基本功能要求 (3) 2.2、提高要求 (4) 3、重要器件功能介绍 (4) 3.1、CX20106A红外线发射接收专用芯片 (4) 3.2、AT89C51系列单片机的功能特点 (5) 3.3、ISD1700优质语音录放电路 (6) 4、超声波测距原理 (8) 4.1、超声波测距原理图 (8) 4.2、超声波测距的基本原理 (9) 5、硬件系统设计 (10) 5.1、超声波发射单元 (10) 5.2、超声波接收单元 (11)

5.3、显示单元 (11) 5.4、语音单元 (12) 5.5、硬件设计中遇到的难题: (12) 6、系统软件设计 (14) 7、调试与分析 (15) 7.1调试 (15) 7.2误差分析 (15) 8、总结 (16) 9、附件 (17) 9.1、总电路 (17) 9.2、主要程序 (18) 10、参考文献 (22)

1课题设计的目的及意义 随着科学技术的快速发展,超声波在测距仪中的应用越来越广,但就目前技术水平而言,人们可以利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。展望未来,超声波测距作为一种新型的非常重要有用的工具在各方面都有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求。如声纳的发展趋势:研究具体的高定位精度的被动测距声纳,以满足军事和渔业等的发展需求,实现远程的被动探测和识别。毋庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。 超声波测距在某些场合有着显著的优点,因为这种方法是利用计算超声波在被测物体和超声波探头之间的传输来测量距离的,因此它是一种非接触式的测量,所以他就能够在某些场合或环境比较恶劣的环境下使用。比如测有毒或者有腐蚀性化学物质的液面高度或者高速公路上快速行驶汽车之间的距离。 随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最注重发展到具有创造力。在新的时代,测距仪将发挥更大的作用。 2课题要求 以单片机AT89C51为中心控制单元,配以超声波发射、接收装置,实现超声波发射及接收其遇到障碍物发生反射形成的回波信号,并根据超声波在介质中的传播速度及超声波从发射到接收到回波的时间,计算出发射点距障碍物的距离,设计出一套基于单片机的脉冲反射式超声波测距系统,利用单片机进行操作控制,用数码管作输出显示,设计发射、接收、检测、显示硬件电路和测距系统软件。

用51单片机实现HC-SR04超声波测距程序

#include //包括一个52标准内核的头文件 #define uchar unsigned char //定义一下方便使用 #define uint unsigned int #define ulong unsigned long sbit Trig = P1^0; //产生脉冲引脚 sbit Echo = P3^2; //回波引脚 sbit test = P1^1; //测试用引脚 uchar code SEG7[10]={~0xC0,~0xF9,~0xA4,~0xB0,~0x99,~0x92,~0x82,~0xF8,~0x80,~0x90};//数码管0-9 uint distance[4]; //测距接收缓冲区 uchar ge,shi,bai,temp,flag,outcomeH,outcomeL,i; //自定义寄存器 bit succeed_flag; //测量成功标志 //********函数声明 void conversion(uint temp_data); void delay_20us(); void main(void) // 主程序 { uint distance_data,a,b; uchar CONT_1; i=0; flag=0; test =0; Trig=0; //首先拉低脉冲输入引脚 TMOD=0x11; //定时器0,定时器1,16位工作方式 TR0=1; //启动定时器0 IT0=0; //由高电平变低电平,触发外部中断 ET0=1; //打开定时器0中断 EX0=0; //关闭外部中断 EA=1; //打开总中断0 while(1) //程序循环 { EA=0; Trig=1; delay_20us(); Trig=0; //产生一个20us的脉冲,在Trig引脚 while(Echo==0); //等待Echo回波引脚变高电平 succeed_flag=0; //清测量成功标志 EX0=1; //打开外部中断 TH1=0; //定时器1清零 TL1=0; //定时器1清零 TF1=0; //

高精度超声波测距系统设计

高精度超声波测距系统设计 引言 利用超声波测量距离的原理可简单描述为:超声波定期发送超声波,遭遇障碍物时发生反射,发射波经由接收器接收并转化为电信号,这样测距技术只要测出发送和接收的时间差,然后按照下式计算,即可求出距离: 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此,广泛应用于倒车提醒、建筑工地、工业现场等的距离测量。目前的测距量程上能达到百米数量级,测量的精度往往能达到厘米数量级。本文在分析现有超声波测距技术基础之上,给出了一种改进方案,测量精度可达毫米级。 2 系统方案分析与论证 2.1 影响精度的因素分析 根据超声波测距式(1)可知测距的误差主要是由超声波的传播速度误差和测量距离传播的时间误差引起的。 对于时间误差主要由发送计时点和接收计时点准确性确定,为了能够提高计时点选择的准确性,本文提出了对发射信号和加收信号通过校正的方式来实现准确计时。此外,当要求测距误差小于1 mm时,假定超声波速度C=344 m/s(20℃室温),忽略声速的传播误差。则测距误差s△t<0.000 002 907 s,即2.907 ms。根据以上过计算可知,在超声波的传播速度是准确的前提下,测量距离的传播时间差值精度只要在达到微秒级,就能保证测距误差小于1 mm的误差。使用的12 MHz晶体作时钟基准的89C51单片机定时器能方便的计数到1μs的精度,因此系统采用AT89S51的定一时器能保证时间误差在1 mm的测量范围内。

带温度补偿的超声波测距程序

/**程序:基于HC-SR04得超声波测距系统 *单片机型号:STC90C51612MHz *说明:开始连续进行7次超声波测距,每次测距间隔80ms, *完成后对7次结果排序并将最大得2个数值与最小得2个数值去除,对剩余得 *3个数值取平均值。完成后指示灯灭,输出结果到LCD1602上。测量超出范围则发出报警声、 *使用两个IO端口控制HC-SR04触发信号输入与回响信号输出, *以及一个T0定时器用于时间计数。 * 使用DS18B20测量环境温度,声速公式:V=334。1m/s+Temperature*0、61, *单片机晶振为12Mhz(11、953M),计数时为T=1us *计算公式:S=(334。1m/s+Temperature*0。61)*N*T/2,N为计数值=TH0*256+TL0*/ /*包含头文件*/ #include 〈reg51。h> #include 〈intrins。h> #define Delay4us(){_nop_();_nop_();_nop_();_nop_();} /*宏定义*/ #define uchar unsignedchar?//无符号8位 #define uint?unsigned int//无符号16位 #define ulongunsigned long ?//无符号32位 /*全局变量定义*/ sbit BEEP=P1^5;??//报警测量超出范围 sbit Trig=P3^4; //HC-SR04触发信号输入 sbitEcho=P3^2;?//HC—SR04回响信号输出 float xdataDistanceValue=0。0;?//测量得距离值 float xdata SPEEDSOUND; ??//声速 float xdataXTALTIME; ?//单片机计数周期 uchar xdata stringBuf[6];??//数值转字符串缓冲 //LCD1602提示信息 uchar codePrompts[][16]= { ?{"Measure Distance"}, //测量距离 {"-Out of Range -"}, //超出测量范围 ?{"MAX range400cm "}, //测距最大值400cm {”MIN range 2cm"},?//测距最小值2cm {”"},?//清屏 }; uchar xdata DistanceText[]="Range: ";//测量结果字符串 uchar xdata TemperatureText[]="Temperature:";//测量温度值 /*外部函数声明*/ extern voidLCD_Initialize(); //LCD初始化 extern void LCD_Display_String(uchar*, uchar); externvoid ReadTemperatureFromDS18B20(); extern int xdataCurTempInteger; void DelayMS(uint ms);?//毫秒延时函数 voidDelay20us(); //20微秒延时函数 voidHCSR04_Initialize();//HCSR04初始化 float MeasuringDistance();?//测量距离

超声波测距原理概述

基于51单片机的超声波测距系统 贾源 完成日期:2011年2月22日

目录 一、设计任务和性能指标 (2) 1.1设计任务 (2) 1.2性能指标 (2) 二、超声波测距原理概述 (3) 2.1超声波传感器 (4) 2.1.1超声波发生器 (4) 2.1.2压电式超声波发生器原理 (4) 2.1.3单片机超声波测距系统构成 (4) 三、设计方案 (5) 3.1AT89C2051单片机 (6) 3.2超声波测距系统构成 (7) 3.2.1超声波测距单片机系统 (8) 图3-1:超声波测距单片机系统 (8) 3.2.2超声波发射、接收电路 (8) 图3-1:超声波测距发送接收单元 (9) 3.2.3显示电路 (9) 四.系统软件设计 (10) 4.1主程序设计 (10) 4.2超声波测距子程序 (11) 4.3超声波测距程序流程图 (12) 4.4超声波测距程子序流程图 (13) 五.调试及性能分析 (13) 5.1调试步骤 (13) 5.2性能分析 (14) 六.心得体会 (14) 参考文献 (15) 附录一超声波测系统原理图 (17) 附录二超声波测系统原理图安装图 (18) 附录三超声波测系统原理图PCB图 (19) 附录四超声波测系统原理图C语言原程序 (20) 参考文献 (25)

一、设计任务和性能指标 1.1设计任务 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个超声波测距仪器,用LED数码管把测距仪距测出的距离显示出来。 要求用Protel 画出系统的电路原理图,印刷电路板,绘出程序流程图,并给出程序清单。 1.2性能指标 距离显示:用三位LED数码管进行显示(单位是CM)。 测距范围:25CM到 250CM之间。误差:1%。

相关主题
文本预览
相关文档 最新文档