超声波测距仪原理图和程序的设计方案
超声波测距仪的设计与调试-接收部分PPT培训课件
如何实现高精度的测距,以及在多障碍物环境下如何准确判断障碍物的 位置和距离。
实际应用案例二
案例名称
机器人避障系统
描述
在机器人避障系统中,通过安装超声波测距仪,机器人能够实时感 知周围环境,检测障碍物的距离,自动调整行进路线,实现自主避 障。
技术难点
如何处理复杂环境下的噪声干扰,以及如何提高测距的实时性和准确 性。
接收部分的软件设计
数据采集
编写软件程序,通过ADC (模数转换器)实时采集 接收到的超声波信号数据。
信号处理算法
根据实际情况,设计适当 的信号处理算法,如滤波、 去噪、特征提取等,以提 高测距精度。
数据输出
将处理后的数据输出到显 示界面或通过串口发送到 上位机进行进一步处理。
03 超声波测距仪接收部分调 试
实际应用案例三
案例名称
管道检测系统
描述
在管道检测系统中,通过将超声波测距仪搭载在管道检测 设备上,能够实时检测管道内部的状况,如管道的腐蚀程 度、堵塞情况等。
技术难点
如何克服管道内部的复杂环境,如液体、气体等对超声波 传播的影响,以及如何提高测距的精度和稳定性。
THANKS FOR WATCHING
此外,随着物联网和智能传感器技术的发展,超声波测距仪 在智能家居、智能安防等领域的应用也越来越广泛。
超声波测距仪的发展趋势
未来,随着材料科学、微电子技术和算法的进步,超声波测距仪将朝着 更小、更轻、更准确的方向发展。
新型材料和制造工艺的应用将有助于减小测距仪的体积和重量,提高其 便携性和灵活性。同时,随着算法的改进和数据处理能力的提升,超声
等措施。
测量误差大
总结词
测量误差大是超声波测距仪常见的问 题之一,表现为测量结果与实际距离 存在较大偏差。
超声波测距仪的设计方案
软件算法优化
实验结果有效
采用时间戳和温度补偿的方法,提高了超 声波测距的精度和稳定性。
经过实验验证,该超声波测距仪的测量误 差在3mm以内,满足设计要求。
研究不足与展望
实验环境限制 硬件性能提升 软件算法优化 应用领域扩展
本次实验主要在室内环境下进行,对于室外复杂环境下的测量 精度和稳定性还需要进一步验证。
[2] 王晓华, 钱燕. 基于单片机的超声波测距 仪设计[J]. 仪表技术与传感器, 2020,(04): 56-60.
[3] 张志超, 王琳. 嵌入式超声波测距 仪的设计与实现[J]. 仪表技术与传感 器, 2021,(01): 78-82.
THANKS 感谢观看
可以考虑采用更高性能的单片机和传感器,以提高超声波测距 的精度和响应速度。
可以进一步优化软件算法,例如加入目标识别和跟踪功能,提 高超声波测距的应用范围。
超声波测距技术在机器人避障、自动驾驶、安防等领域都有广 泛的应用前景,可以进一步拓展应用领域。
07 参考文献
参考文献
[1] 张涛, 王超. 超声波测距仪的设计与 实现[J]. 电子测量技术, 2019, 42(11): 105-109.
计算距离
通过测量超声波从发射到 接收的时间,计算出距离 。时间乘以声速得到距离 。
数据处理及存储
数据处理
对采集到的数据进行处理,如滤波、去噪等,以提高测量精度。
数据存储
将处理后的数据存储到存储器中,方便后续分析和处理。
人机交互界面设计
显示测量结果
通过液晶显示屏或LED显示屏显 示测量结果。
按键输入
研究超声波测距仪的设计方案 有助于提高测量精度和可靠性 ,推动相关领域的发展。
课程设计实验报告-超声波测距仪的设计
超声波测距仪的设计一、设计目的本设计利用超声波传输中距离与时间的关系,采用STC51单片机进行控制和数据处理,设计出能够精确测量两点间距离的超声波测距仪。
同时了解单片机各脚的功能,工作方式,计数/定时,I/O口的相关原理,并稳固学习单片机的相关内容知识。
二、设计要求1.设计一个超声波测距仪,能够用四段数码管准确显示所测距离2.精度小于1CM,测量距离大于200CM三、设计器材元器件数量STC51单片机 1个超声波测距模块URF-04 1个电阻〔1K 200 4.7K〕 3 个晶振〔12MHz〕 1 个共阳极四位数码管 1 个极性电容〔33pF〕 2 个非极性电容〔22uF〕 1 个四、超声波测距系统原理331.45米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以到达毫米级。
超声波测距的算法设计: 超声波在空气中传播速度为每秒钟340米〔15℃时〕。
X2是声波返回的时刻,X1是声波发声的时刻,X2-X1得出的是一个时间差的绝对值,假定X2-X1=0.03S,那么有340m×0.03S=10.2m。
由于在这10.2m 的时间里,超声波发出到遇到返射物返回的距离如下:图1 测距原理超声波测距器的系统框图如下列图所示:图2 系统框图五、设计方案及分析〔包含设计电路图〕4.1硬件电路设计4.1.1 单片机最小系统控制模块设计与比拟方案二:采用STC51单片机控制。
STC51单片机是一种低功耗、高性能CMOS8位微控制器,具有 8KB的系统可编程Flash 存储器。
AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路,能够满足题目设计的所有要求,而且我们对STC51单片机也比拟熟悉,因此我们选择方案二。
最小系统电路图如图3所示图3 单片机最小系统显示模块设计采用四位共阳极数码管显示,连接电路简单,显示电路连接图如图4所示图4 数码管显示电路超声波测距模块a.本系统采用超声波模块URF04进行测距,该模块使用直流5V供电,理想条件下测距可达500cm,广泛应用于超声波测距领域,模块性能稳定,测度距离精确,盲区〔2cm〕超近。
超声测距设计与制作
达到超声波测距器设计要求。 制作工艺符合要求,有相应的工艺文件。
谢谢!
超声波测距 原理
利用超声波在空气中的传播速度为已知,测 量声波在发射后遇到障碍物反射回来的时间, 根据发射和接收的时间差计算出发射点到障 碍物的实际距离。 测距的公式表示为:L=C×T
式中L为测量的距离长度; C为超声波在空气中的传播速度; T为测量距离传播的时间差(T为发射到接收时 间数值的一半)
超声波测距 框图
超声波测距硬件电路
稳压电路:将交流电变压、整流、滤波,用集成稳 压块LM7812、LM7912、LM7805输出+5V、+ 12V、-12V供单片机、运算放大器、555芯片等电路 使用。 加减键功能: 超声波发射电路:运用555振荡产生振荡信号,经 过非门控制40KHz脉冲波形,通过超声波发射器发射 出去。 超声波接受电路:运用超声波传感器接收反射回来 的信号,通过LM358比较、放大后,将信号输入单片 机。 LED显示:将接收到的超声波信号,输入单片机, 程序处理,计算出反射物的距离,并用数码管显示距 离设置。
超声波测距 软件流程
超声波测距 调试
测试结果:
LED显示距离:30cm,实际距离35cm; LED显示距离:60cm,实际距离38cm; LED显示距离:90cm,实际距离99cm; LED显示距离:120cm,实际距离129cm;
测试结果表明:超声波测距器可以工作,测试结果有误差, 但在允许范围。
超声波测距仪制作方案
超声波测距仪制作方案该测距仪采用NE555电路、两级级放大电路和电平比较电路实现了超声波的发射与接收。
比较器为该测距仪的核心单元,实现发射电路的控制和接收数据的处理。
本系统具有很强的实用价值和良好的市场前景。
一总的方案 1.1可选方案 方案一:利用分立模块的超声波测距仪 系统包括超声波测距模组、LED数码显示模组、驱动模组控制模组及电源五部分。
超声波测距模块主要由发射部分和接收部分组成,超声波的发射受主控制器控制(如图1所示);超声波换能器谐振在40KHz的频率,模块上带有40KHz方波产生电路。
显示模块是一个8位段数码显示的LCD;测量结果的显示用到三位数字段码,格式为X点XX 米,同时还用两位数字段码显示数据的个数。
电源采用9V的DC电源输入,经稳压管后得出5V以及3.3V的电源供系统各部分电路使用。
图1 超声波测距的结构 图1 超声波测距的结构 方案二:基于PIC16F876A单片机的超声波测距仪 超声波测距仪主要以单片机PIC16F876A为核心,其发射器是利用压电晶体的谐振带动周围空气振动来工作的.超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器接收到反射波就立即停止计时。
一般情况下,超声波在空气中的传播速度为340m/ s,根据计时器记录的时间t ,就可以计算出发射点距障碍物的距离 s,即s=340×t/2,这就是常用的时差法测距。
在测距计数电路设计中,采用了相关计数法,其主要原理是:测量时单片机系统先给发射电路提供脉冲信号,单片机计数器处于等待状态,不计数;当信号发射一段时间后,由单片机发出信号使系统关闭发射信号,计数器开始计数,实现起始时的同步;当接收信号的最后一个脉冲到来后,计数器停止计数。
双向超声波测距仪的系统主要有几下部分组成(如图2所示): LED显示模块,PIC16F876A芯片,超声波发射模块,超声波接收模块,电源模块等五大模块组成。
毕业设计方案超声波测距仪的设计方案
摘要本设计采用以AT89S58单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。
整个电路采用模块化设计,由主程序、预置子程序、发射子程序、接受子程序、显示子程序、语音播报子程序等模块组成。
发射模块发射超声波,接受模块接受回波,单片机计算距离,显示测量结果。
各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。
在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。
相关部分附有硬件电路图、程序流程图。
超声波测距今年来得到了广泛的应用。
本设计的优点在于超声波明显特征是方向性好,穿透性强。
尤其是在光不透明的固体中,它碰到杂质或分界面就有显著地反射。
用超声波测距离时通过测量发射的超声波与接受到被测物体反射的回波之间的时间差来确定的。
关键词:AT89S51,超声波,测距目录第一章绪论11.1课题设计目的及意义11.1.1设计的目的11.1.2设计的意义11.2超声波测距仪的现状和发展11.2.1发展历史11.2.2 研究现状21.3本课题研究的主要内容3第二章系统方案论证42.1超声波测距仪的设计思路42.1.1超声波测距原理42.1.2超声波测距仪原理框图42.1.3课题设计的要求42.2超声波测距方法的选择42.3超声波发生器选择62.4超声波接受传感器62.5显示单元选择62.6语音播报电路选择72.7温度传感器的选择7第三章系统的硬件结构设计93.1 AT89S51单片机的功能及特点93.1.1主要性能参数93.1.2功能特性概述93.2单片机最小系统103.3单片机测距原理103.4超声波发射电路103.5超声波检测接收电路113.6温度补偿电路123.7显示单元电路133.7.1 12864液晶资料133.7.2 12864液晶基本特性143.8语音播报电路153.9无线发射与接收电路153.9.1APC240无线通信模块主要特点错误!未定义书签。
超声波测距电路图及程序
//#include <AT892051.H>#include <AT89X51.H>#define k1 P2_0#define csbout P2_7 //超声波发送#define csbint P3_2 //超声波接收#define csbc 0.034#define DQ P3_0unsigned char opto,digit;unsigned xm1,xm2,xm0,xm3,xm4,key,jpjs;unsigned sx1,mqs,buffer[5];unsigned convert[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//0~9bit cl; //段码unsigned int s,t,i, xx,j,sj1,sj2,sj3,sx1;typedef unsigned char byte;typedef unsigned int word;void js();void delay(int i); //延时函数void scanLED(); //显示函数void allToBuffer(); //显示转换函数void keyscan();void offmsd();void delay1(word useconds);byte ow_reset(void);byte read_byte(void);void write_byte(char val);char Read_Temperature(void);void main() //主函数{EA=1; //中断允许TMOD=0x11; //设定时器0为计数,设定时器1定时ET0=1; //定时器0中断允许ET1=1; //定时器1中断允许TH0=0x00;TL0=0x00;TH1=0x9E; ///定时器T1置为25msTL1=0x57;csbint=1; //p3.2置位csbout=1; //p2.7置位cl=0;opto=0xff;jpjs=0;sj1=20;sj3=600;TR1=1;while(1){keyscan();if(jpjs<1){js();if(s>sj3){buffer[2]=0x00;buffer[1]=0x00;buffer[0]=0x00;}else if(s<sj1){buffer[2]=0x00;buffer[1]=0x00;buffer[0]=0x00;}else allToBuffer();}else allToBuffer(); //将值转换成LED段码offmsd();scanLED(); //显示函数}}void scanLED() //显示功能模块{digit=0x01;for( i=0; i<5; i++) //5位数显示{P0=~digit&opto; //依次显示各位数P1=buffer[i]; //显示数据送P1口delay(20); //延时处理if(!(P0&0xEF)) //判断5位是否显示完key=0;digit<<1; //循环左移1位}}void allToBuffer() //转换距离数码管功能模块{int temperature;xm0=s/100;xm1=(s-100*xm0)/10;xm2=s-100*xm0-10*xm1;buffer[2]=convert[xm2];buffer[1]=convert[xm1];buffer[0]=convert[xm0];temperature=Read_Temperature();xm3=temperature/10;xm4=temperature-10*xm3;buffer[4]=convert[xm4];buffer[3]=convert[xm3];}void delay(int i){while(--i);}void js(){int temprature;temprature=Read_Temperature();if(cl==1){TR1=0; //定时器1关闭TH0=0x00;TL0=0x00;//定时器0清零i=10;while(i--){csbout=!csbout;} //连续取反10次发射5个周期超声波TR0=1; //开启计数器t0i=mqs; //盲区while(i--){}i=0;while(csbint){i++;if(i>=2450) //上限值{csbint=0;}}TR0=0;TH1=0x9E;TL1=0x57;t=TH0;t=t*256+TL0;s=t*(csbc+0.61*temprature)/2;TR1=1;cl=0;}}void keyscan() //健盘处理函数{xx=0;if(k1!=1) // 判断开关是否按下{delay(400); //延时去抖动延时3.6msif(k1!=1) // 判断开关是否按下{while(!k1){delay(30);xx++;}if(xx>2000){jpjs++;if(jpjs>4)jpjs=0;}xx=0;mqs=65; //while循环一周期9us ,20cm需要等待65*9us }}}void offmsd(){if (buffer[0] == 0x3f)buffer[0] = 0x00;}//ds18b20的完整程序(c51)(sparkstar)//DS1820 C51 子程序//这里以11.0592M晶体为例,不同的晶体速度可能需要调整延时的时间//sbit DQ =P2^1;//根据实际情况定义端口//延时void delay1(word useconds){for(;useconds>0;useconds--);}//复位byte ow_reset(void){byte presence;DQ = 0; //pull DQ line lowdelay1(29); // leave it low for 480usDQ = 1; // allow line to return highdelay1(3); // wait for presencepresence = DQ; // get presence signaldelay1(25); // wait for end of timeslotreturn(presence); // presence signal returned} // 0=presence, 1 = no part//从1-wire 总线上读取一个字节byte read_byte(void){byte i;byte value = 0;for (i=8;i>0;i--){value>>=1;DQ = 0; // pull DQ low to start timeslotDQ = 1; // then return highdelay1(1); //for (i=0; i<3; i++);if(DQ)value|=0x80;delay1(6); // wait for rest of timeslot}return(value);}//向1-WIRE 总线上写一个字节void write_byte(char val){byte i;for (i=8; i>0; i--) // writes byte, one bit at a time {DQ = 0; // pull DQ low to start timeslotDQ = val&0x01;delay1(5); // hold value for remainder of timeslot DQ = 1;val=val/2;}delay1(5);}//读取温度char Read_Temperature(void){union{byte c[2];int x;}temp;ow_reset();write_byte(0xCC); // Skip ROMwrite_byte(0xBE); // Read Scratch Padtemp.c[1]=read_byte();temp.c[0]=read_byte();ow_reset();write_byte(0xCC); //Skip ROMwrite_byte(0x44); // Start Conversionreturn temp.x/2;}。
自制不用单片机的超声波测距仪电路
自制不用单片机的超声波测距仪电路本超声波测距仪通过测量超声波发射到反射回来的时间差来测量与被测物体的距离。
可以测量0.35-10m的距离。
本款是国外不使用单片机的超声波测距仪。
实物图如下:一、电路原理原理图如下:1 超声波发射电路由两块555集成电路组成。
IC1(555)组成超声波脉冲信号发生器,工作周期计算公式如下,实际电路中由于元器件等误差,会有一些差别。
条件: RA =9.1MΩ、RB=150KΩ、C=0.01μFTL = 0.69 x RB x C= 0.69 x 150 x 103 x 0.01 x 10-6 = 1 msecTH = 0.69 x (RA + RB) x C= 0.69 x 9250 x 103 x 0.01 x 10-6 = 64 msecIC2组成超声波载波信号发生器。
由IC1输出的脉冲信号控制,输出1ms频率40kHz,占空比50%的脉冲,停止64ms。
计算公式如下:条件: RA =1.5KΩ、RB=15KΩ、C=1000pFTL = 0.69 x RB x C= 0.69 x 15 x 103 x 1000 x 10-12 = 10μsecTH = 0.69 x (RA + RB) x C= 0.69 x 16.5 x 103 x 1000 x 10-12 = 11μsecf = 1/(TL + TH)= 1/((10.35 + 11.39) x 10-6) = 46.0 KHzIC3(CD4069)组成超声波发射头驱动电路。
2 超声波接收电路超声波接收头和IC4组成超声波信号的检测和放大。
反射回来的超声波信号经IC4的2级放大1000倍(60dB),第1级放大100倍(40dB),第2级放大10倍(20dB)。
由于一般的运算放大器需要正、负对称电源,而该装置电源用的是单电源(9V)供电,为保证其可靠工作,这里用R10和R11进行分压,这时在IC4的同相端有4.5V的中点电压,这样可以保证放大的交流信号的质量,不至于产生信号失真。
用51单片机设计超声波测距系统的设计原理及电路(附源程序)
基于51单片机的超声波测距仪说明书引言超声波测距仪,可应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。
利用超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。
利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制。
一、性能要求该超声波测距仪,要求测量范围在0.08-3.00m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。
二、工作原理及方案论证超声波传感器及其测距原理超声波是指频率高于20KHz的机械波。
用超声波传感器产生超声波和接收超声波,习惯上称为超声波换能器或超声波探头。
超声波传感器有发送器和接收器.超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。
超声波测距的原理一般采用渡越时间法TOF(timeofflight)。
首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离。
根据要求并综合各方面因素,采用AT89C52单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,超声波测距仪的系统框图如下图所示:图1 超声波测距仪系统设计框图三、系统硬件部分硬件部分主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。
1.单片机系统及显示电路单片机采用AT89C52来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。
单片机通过P1.1引脚发射脉冲控制超声波的发送,然后单片机不停的检测外中断0口INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。
计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。
显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管驱动。
超声波测距
超声波测距超声测距该电子产品-超声测距仪是在按键的步进控制下实现在30cm~120cm的距离探测,并具有数码管实时显示探测距离值功能,设定距离值报警功能,手动调整报警范围等功能。
1.硬件电路原理设计该超声测距仪其硬件电路框图如图1所示(虚线框图电路不在机器内部PCB 电路板上)。
整个电路可分为电路板供电电路,超声波发射接收电路,控制、显示及报警电路三个大的部分。
交流220V的市电经经变压、整流滤波、稳压的处理后输出±12V和+5V的恒定直流电压供应整个电路各个部分电源使用。
脉冲产生电路产生的40KHz的脉冲信号经驱动电路驱动功率后进如超声波发射器,让其发出超声波。
超声波接收器接受到发射器发出的超声波信号后经信号方大、处理比较后进入单片机微控制器,单片机将进行计算分析后在数码管显示模块显示出当前测量距离值。
并与从按键处设定的报警上下限值进行比较,当超出其所设定值时,报警电路将启动,红色警报灯点亮。
图1 硬件电路框图下面将分别按照上面陈述的电路分三个部分进行分析,图2是其电路原理图图2 硬件电路原理图1.1 电路板供电电路设计电路板供电电路如图2所示,220V的市电经变压器变压后输出两路交流15V 电压,此电压经整流、滤波处理后输出±15V直流电压,分别经三端集成稳压芯片U1(7812),U2(7912),输出恒定的+12V电压和-12V电压,这两路电压提供运放芯片所需电源及PCB板电路部分需要电压。
+12V电压经U3(7805)后输出恒定+5V电压,供应单片机、555芯片等芯片所需电源。
图2 电路板供电电路原理图1.2超声波发射接收模块设计超声波发射接收模块电路如图4所示,单片机PD7端口控制脉冲产生电路的启动与否,脉冲产生电路由555芯片接成多谐振荡器,选取合适的元器件参数,U4(555芯片)第三脚将输出40KHz的矩形波脉冲信号,此信号经反相器U5(CD4049)接成的驱动电路后进入超声波发射器,由电压信号转换为机械信号,发射出超声波。
[转载]超声波测距原理图及程序
[转载]超声波测距原理图及程序原文地址:超声波测距原理图及程序作者:电子制作本超声波测距电路的单片机是AT89C51单片机,由四位数码管显示测量的距离,接收电路由CAX20106A组成,发射电路是74HC06组成。
#include<reg51.h>#include<math.h>#define uint unsigned int#define uchar unsigned charlong int time;bit CLflag;char cshu;#define T12us (256-12)sbit VOLCK=P1^0;//接收从P3^2口输入,采用外部中断方式sbit S1=P2^1;sbit S2=P2^3;sbit S3=P2^5;sbit S4=P2^7;sbit alam=P3^7; //报警unsigned char number[5];unsigned char temp_number[5];unsigned char fr_alam; //报警频率控制计数unsigned char icont; //距离计数char code table[]={0x5F,0x44,0x9D,0xD5,0xC6,0xD3,0xDB,0x45,0xDF,0xD7}; //数字0-9的编码//{0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};void delay( int j){int i;for(i=0;i<j;i++);}void display(void){P0=~table[number[4]];S1=0;delay(200);S1=1;P0=~(table[number[3]]|0x20);S2=0;delay(200);S2=1;P0=~table[number[2]];S3=0;delay(200);S3=1;P0=~table[number[1]];S4=0;delay(200);S4=1;}void init_CTC(void ){TMOD = 0x21;ET0 = 0;}void init_INT( ){IP=0x01;TCON=0;}void main(){init_CTC( );init_INT( ); CLflag=1; cshu=0;IE=0x80; ET1=1; ET0=1;TR1=0; TR0=0;TL1=T12us; TH1=T12us; while(1){CLflag=0;cshu=0;EX0=0;TH1=T12us;TL1=T12us;TL0 = 0; TH0 = 0; VOLCK=0;TR1=1;while(cshu<20) ;TR1=0;TR0=1;EX0=1;display(); //调用显示// Distance_Frequency(); //调用距离频率转化程序fr_alam++; //程序执行次数加1 用于控制报警频率与距离成正比if(icont>0) //表示距离控制位达到报警时{if(fr_alam>=icont){fr_alam=0;alam=~alam; //蜂鸣器取反一次,即响一声}}else //不报警时{alam=1;}}}//=========距离与频率之间的转化============== void Distance_Frequency(void){//以下语句用于计算距离与报警的频率大小if(number[3]>0) //表示距离大于1米时,不报警icont=0;else //否则{if(number[2]>0) //小于1米时,但分米大于0时,报警频率与分米的数据成正比{switch(number[2]){case 9: icont=9; break;case 8: icont=8; break;case 7: icont=7; break;case 6: icont=6; break;case 5: icont=5; break;case 4: icont=4; break;case 3: icont=3; break;case 2: icont=2; break;case 1: icont=1; break;default: break;}}else //距离只在厘米时,高频率输出报警{if(number[1]>0)icont=1;elseicont=0;}}}void Timetojuli(void){long i;i=(long)time*170;temp_number[4]=i/10000000;i=i-temp_number[4]*10000000;temp_number[3]=i/1000000;i=i-temp_number[3]*1000000;temp_number[2]=i/100000;i=i-temp_number[2]*100000;temp_number[1]=i/10000;i=i-(long)temp_number[1]*10000;temp_number[0]=i/1000;//以下用于控制是否测到距离,如全为0,表明没有测到距离资料来源于网络,由电子小制作_我爱制作_电子DIY制作套件整理。
基于51单片机超声波测距仪设计
基于51单片机超声波测距仪设计超声波测距仪是一种应用较为广泛的测量设备,可以用于测量物体与超声波传感器之间的距离。
本文将基于51单片机设计一个简单的超声波测距仪,并介绍其原理、硬件电路和程序设计。
一、原理介绍:超声波测距仪的工作原理是利用超声波传感器发射超声波,并接收其反射回来的波,通过计算发射和接收之间的时间差,从而确定物体与传感器之间的距离。
超声波的传播速度在空气中近似为331.4m/s,根据速度与时间关系,可以通过测量时间来计算距离。
二、硬件电路设计:1.超声波模块:选用一个常见的超声波模块,包括超声波发射器和接收器。
2.51单片机:使用51单片机作为控制器,负责控制超声波模块和处理测距数据。
3.LCD显示屏:连接一个LCD显示屏,用于显示测距结果。
4.连接电路:将超声波发射器和接收器分别连接到单片机的引脚,将LCD显示屏连接到单片机的相应引脚。
三、程序设计:1.初始化:包括初始化单片机的GPIO引脚、定时器以及其他必要的设置。
2.发送信号:发射一个超声波信号,通过超声波模块的引脚控制。
此时,启动定时器开始计时。
3.接收信号:当接收到超声波的反射信号时,停止定时器,记录计时的时间差。
根据超声波传播速度,可以计算出距离。
4.显示结果:将测得的距离数据显示在LCD显示屏上。
四、实现效果:通过以上设计,可以实现一个简单的超声波测距仪。
在实际应用中,可以根据需求扩展功能,例如增加报警功能、计算速度等。
总结:本文基于51单片机设计了一个超声波测距仪,包括硬件电路设计和程序设计。
通过该设备可以实现对物体与超声波传感器之间的距离进行测量,并将结果显示在LCD显示屏上。
该设计只是一个基本的框架,可以根据需要进行进一步的改进和优化。
毕业设计超声波测距仪设计
毕业设计超声波测距仪设计(以下内容仅供参考)一、设计要求1.设计一款超声波测距仪,最大测量距离为5米。
2.能够实现实时测量距离。
3.具有屏幕显示测距结果。
4.能够通过按键控制实现最大距离设置。
二、设计方案1.硬件设计2.软件设计1.硬件设计超声波测距仪主要由以下部分组成:1)Arduino UNO开发板Arduino UNO开发板是一款开源的硬件平台,基于ATmega328P单片机。
可以通过编写软件来控制它,从而实现各种功能。
在该设计中,我们使用Arduino UNO作为超声波测距仪的主控板。
2)超声波传感器超声波传感器是超声波测距仪的核心部分。
它通过发射和接收超声波,来测量被测物体和传感器间的距离。
在该设计中,我们使用HC-SR04超声波传感器。
3)1602液晶显示屏1602液晶显示屏是用于在超声波测距仪中显示测距结果的显示设备。
4)按键按键用于设置最大距离。
5)发光二极管发光二极管用于指示测量状态。
2.软件设计超声波测距仪的软件设计主要包括以下三个部分:1)超声波测距的程序设计该部分主要负责调用超声波传感器进行距离测量,并返回测量结果。
2)LCD1602数字显示的程序设计该部分主要负责在1602液晶显示屏上显示测量结果。
3)设置最大距离的程序设计该部分主要负责通过按键设置最大距离。
三、系统实现1.硬件实现超声波传感器通过引脚连接到Arduino UNO的第8、9、10、11号IO口(分别为Trig、Echo、Vcc、GND),1602液晶显示屏通过引脚连接到Arduino UNO的第12、13、6、7、5、4号IO口(分别为RS、EN、D4、D5、D6、D7),按键通过引脚连接到Arduino UNO的第3号IO口,发光二极管通过引脚连接到Arduino UNO的第2号IO口。
2.软件实现1)超声波测距程序设计:首先定义Trig、Echo两个引脚,然后定义pulseIn函数,这个函数的作用是等待Echo引脚输出一个高电平,然后返回Echo引脚的高电平持续时间(us)。
超声波测距仪硬件电路设计
第三章超声波测距仪硬件电路的设计3.1超声波测距仪硬件电路硬件电路可分为单片机系统及显示电路、超声波发射电路和超声波检测接收电路三局部。
3.1.1单片机系统及显示电路本系统采用AT89S52来实现对超声波传感器的控制。
单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。
计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。
超声波测距的硬件示意图如图3所示:单片机采用89552或其兼容系列。
采用12MHz高精度的晶振,已获得较稳定的时钟频率,减少测量误差。
单片机用口1.0端口输出超声波换能器所需的40KHz的方波信号,利用外中断0 口检测超声波接收电路输出的返回信号。
3.1.2显示的输出显示的种类很多,从液晶显示、发光二极管显示到CRT显示器等,都可以与微机连接。
其中单片机应用系统最常用的显示是发光二极管数码显示器〔简称 LED显示器〕。
液晶显示器简LCD。
LED显示器价廉,配置灵活,与单片接口方便,LCD可显示图形,但接口较复杂本钱也较高。
该电路使用7段LED构成字型“8〃,另外还有一个发光二极管显示符号及小数点。
这种显示器分共阳极和共阴极两种。
这里采用共阳极LED 显示块的发 光二极管阳极共接,如下列图3-1所示,当某个发光二极管的阴极为低电平时, 该发光二极管亮。
它的管脚配置如下列图3-2所示。
实际上要显示各种数字和字符,只需在各段二极管的阴极上加不同的电平, 就可以得到不同的代码。
这些用来控制LED 显示的不同电平代码称为字段码〔也 称段选码〕。
如下表为七段1日口的段选码。
表3-1七段1日口的段选码 显示字符共阳极段选码 dp gfedcba显示字符 共阳极段选码dp gfedcba0 C0H A 88H 1 F9H B 83H 2 A4H C C6H 3 B0H D A1H 4 99H E 86H 5 92H F 8EH 682HP8CHVCC图3-1图3-2come d c dp com7 F8H y 91H8 80H 8. 00H9 90H “灭〃FFH本系统显示电路采用简单实用的4位共阳LED数码管,位码用PNP三极管8550驱动。
超声波测距仪的设计与调试-发射部分
超声波发射电路基本原理
振荡电路
驱动电路
超声波发射头
基于555的超声波发射电路
01
控制电路部分
02
振荡电路部分
03
驱动电路部分
超声波发射电路——基于555的振荡器
本电路中采用555定时器构成振荡电路,2脚(6脚)及地之间的电容不断的进行充、放电,导致555时基电路处于置位与复位反复交替的状态,即输出端3脚交替输出高电平与低电平,输出波形为近似矩形波,此电路也称为自激多谐振荡器。
实训6:超声波发射电路的制作与调试
实训6:超声波发射电路的制作与调试
f ( kHz )
38K
38.5K
39K
39.5K
40K
40.5K
41K
41.5K
42K
( V )
表1:测试本实训系统的幅频特性
Control IC2组成超声波载波信号发生器。由IC1输出的脉冲信号控制,输出约1ms频率40kHz,占空比50%的脉冲,停止约70ms。
超声波测距仪的设计与调试 ——发射部分
添加副标题
汇报人姓名
本系统中超声波测距基本原理
由于超声波指向性强,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪、物位测量仪等。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此得到了广泛的应用。 在本系统中,我们主要应用的是反射式检测方式。即超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波后就立即停止计时。超声波在空气中传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离s。 即:s=340·t/2,这就是所谓的时间差测距法。
超声波测距仪的设计方案
超声波测距仪的设计方案一、引言超声波测距仪广泛应用于工业领域中的距离测量需求。
本文将介绍一种超声波测距仪的设计方案,以满足高精度、稳定性和可靠性的要求。
二、设计原理超声波测距仪的设计基于超声波测距原理,即通过发送超声波信号到目标物体,并测量回波信号的时间差来计算距离。
具体设计方案如下。
1. 发射装置为保证发射的超声波信号稳定且具有较高的频率精度,我们选用一种高品质的压电陶瓷振荡器作为发射装置。
该振荡器能够提供稳定的超声波信号,并具有快速响应和较低的失真率。
2. 接收装置为捕获和处理回波信号,我们采用一个高灵敏度的超声波接收器。
该接收器能够有效接收和放大回波信号,并通过滤波和放大电路将其转化为数字信号。
3. 信号处理为了准确计算距离,我们使用微处理器进行信号处理。
微处理器通过测量发射与接收之间的时间差,并根据声速来计算出距离。
三、主要模块设计为确保超声波测距仪的可靠性和性能,我们将其设计分为以下几个主要模块。
1. 信号发射模块该模块由压电陶瓷振荡器和驱动电路组成。
振荡器负责产生高频稳定的超声波信号,驱动电路用于提供所需的电源和信号放大。
2. 信号接收模块该模块包括超声波接收器、放大电路和滤波电路。
超声波接收器接收回波信号,并将其放大后传递给滤波电路,以去除噪声和杂散信号。
3. 信号处理模块该模块由微处理器和相关电路组成。
微处理器负责计算距离,并将结果显示在相关显示装置上。
四、性能优化与安全保障为提高超声波测距仪的性能并确保使用过程中的安全可靠,我们采取以下措施。
1. 信号干扰处理在设计中加入了信号滤波电路和抗干扰电路,以防止外界干扰对测距精度的影响。
2. 电源管理采用高质量的电源管理模块,以确保供电稳定并防止电源的波动对测距仪的正常工作产生影响。
3. 结构设计在外壳设计中考虑到机械强度和防水性能,以保证超声波测距仪在各种环境下的可靠性和耐用性。
五、应用场景超声波测距仪的设计方案可以广泛应用于以下情景:1. 无人驾驶超声波测距仪可用于无人驾驶汽车中的障碍物检测和距离测量,以确保行驶安全。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
超声波测距仪原理图和程序设计方案1 绪论当前社会经济的不断发展和工业科学技术的不断提高,汽车已逐渐进入不少百姓家。
汽车使用数量的不断增加,从而由此导致的倒车交通安全问题也非常严重,道路交通压力增加,交通安全问题也是面临严峻挑战。
在面临如此严峻的交通安全问题,许多涉及安全问题的汽车辅助系统也纷纷现世。
而本设计就是利用单片机知识、传感器知识等,进行的汽车防撞装置的设计,在汽车倒车时,这种装置可以在驾驶员对车尾与障碍物体的距离远近无法目测和判断时进行报警。
1.1 课题背景及意义我国社会经济的不断发展,人们对汽车这种交通工具的依赖性也越来越大,导致了车辆的日益增加在给城市交通不断施加压力的同时,也引发了非常多行车的安全问题。
一些由驾驶员反应不够迅速而导致的汽碰擦,还有很多时候是由于驾驶员对离障碍物的距离判断不准确而造成的,如果驾驶员能提前知道障碍物的存在并且知道障碍物的距离,那么驾驶员就能及时地采取措施,从而能避免事故的发生。
因此,许多安全系统也应运而生,诸如为了避免交通事故发生的主动安全系统和在发生事故时的防护安全的被动安全系统,而主动安全系统对汽车交通事故的发生能起到避免的作用,所以,主动安全系统的研究更为重要。
随着汽车数量的增加,停车场的数量也急剧增加,停车车辆密集,停车人多,所以汽车碰撞亦逐渐增多。
而本设计的汽车防撞装置就是主动安全系统,通过对汽车与障碍物之间距离的提示报警避免汽车与障碍物之间的擦碰。
本设计要求设计的汽车防撞装置能减少驾驶员的驾驶压力和判断错误,使驾驶员泊车倒车更加安全方便,本设计将对提高交通安全起到重要作用。
本设计基于单片机实现汽车防撞,将超声波测距和传感器联系在一起,利用单片机的实时控制和数据处理功能测量并显示汽车与障碍物之间的距离,并在不同距离利用蜂鸣器不同频率发出不同声音及时报警。
这样驾驶员就能通过测距的显示甚至不同的声音来直接判断汽车玉障碍物之间的距离。
本设计的设计简易,虽然精度不高,还不能测量过远的距离,但规模小,外围电路简单,调试也方便,成本也不高,器件更换容易,灵活性高,而且能完全满足驾驶员泊车时的需要,可以完全解除驾驶员在倒车过程中的顾虑和困扰,提高泊车的安全。
汽车防撞装置这种汽车安全辅助装置能大大减少汽车驾驶员在倒车的时候顾虑和对距离判断的失误,从而能够避免倒车的安全问题的发生,故此装置对于提高交通安全将起到重要的作用。
所以,本课题所要求设计的基于单片机的汽车防撞装置将具有极大的现实意义和市场。
1.2 国外研究现状本汽车防撞装置包含有单片机控制电路、超声波测距传感器、蜂鸣器报警电路及数码管显示部件等,装置将各部件有机地结合起来,实现超声波测距及蜂鸣器报警提示的功能。
倒车雷达系统的开始是以蜂鸣器报警为标志的。
汽车离障碍物距离越近,蜂鸣器报警声越急,蜂鸣器报警虽然使驾驶员知道有障碍物的存在,但却不能确定汽车车尾离障碍物有多远,所以,蜂鸣器报警对驾驶员帮助不是很大;之后一个质的飞跃就是液晶屏显示的出现,特别是液晶显示开始出现动态显示系统,驾驶员就是只要发动车辆,而且不用挂倒挡,液晶显示器上就会出现汽车图案以及汽车与周围的障碍物的距离,液晶显示是动态显示,液晶显示器的外表美观,显示的色彩也很清晰,而且可以直接粘贴在仪表盘上,安装也很方便[1]。
不过由于液晶显示的灵敏度比较高,而且它的抗干扰能力也不是很强,所以误报的情况也较多。
现在市面上的魔幻镜倒车雷达应该算是比较先进的倒车雷达了,它结合了前几代产品的优点,并采用了最新仿生超声雷达技术,并用高速电脑控制,可全天准确地进行探测2 m以的障碍物,并以不同的声音提示和直观的距离显示来提醒驾驶员;魔幻镜倒车雷达把后视镜、倒车雷达、免提、温度显示和车空气温度显示等多项功能整合在一起[1],并设计了语音功能,因为其外形就是一块倒车镜,所以可以不占用车空间,可以直接安装在车倒视镜的位置,而且它样式种类繁多,可以按照个人需求和车装饰选配,当然它的价格也是比较贵的[1]。
最新的一代倒车雷达是整合影音系统,除了具备前几代倒车雷达的功能外还兼有影音系统[1]。
随着科学技术水平的迅速发展,相关电子技术也是飞跃前进,当然,汽车电子产业也得到飞速发展,电子产业的飞速发展使得车载电子安全产品有很大的发展前景。
倒车雷达当然是每辆车必备的电子安全产品,如今市面上的主流的汽车倒车雷达基本都是以单片机芯片为控制核心的智能测距报警系统。
这些的倒车雷达能够连续测距并显示汽车与障碍物之间的距离,而且采用蜂鸣器的不同频率的鸣叫声进行报警提示和距离显示提示,从而能够尽量不占用驾驶员的视觉空间[1]。
此外,汽车电子系统的网络化的发展还要求作为汽车行驶安全辅助系统的倒车雷达要具有通信功能,并能够把数据发送到汽车总线上去[2]。
就目前市面上的产品来讲,目前的汽车倒车雷达主要是具备数码管或者液晶屏的距离显示并且带有蜂鸣器的语音报警为主的汽车安全系统。
这些系统主要采用的是以单片机为控制核心的智能超声波测距传感器和蜂鸣器报警系统,这种汽车安全辅助系统便宜耐用,而且达到了汽车电子系统网络化的发展需求。
1.3 课题研究容及章节安排本文所介绍的超声波测距报警系统在测距的时候采用的是两个超声波探头分别进行超声波发射和接收来进行距离的测量的。
本设计的汽车防撞系统能测量出倒车方向的障碍物与汽车之间的距离, 并通过数码管显示单元模块显示两者之间的距离,然后通过蜂鸣器发出不同频率的声响, 从而起到提示和报警的作用。
本系统利用一片89S51单片机对超声波信号循环不断地进行采集。
系统包括超声波测距单元(超声波集成模块)、89S51单片机控制、蜂鸣器报警模块和数码管显示模块。
这个设计的汽车倒车雷达要能够连续测距,数据经过单片机的处理后,用4位数码管显示所测量得到的距离,并利用不同频率使蜂鸣器发出不同的鸣叫声进行语音报警。
论文构成主要由以下部分组成:第1章主要介绍了本课题的背景意义和相关技术在国外的研究现状。
第2章介绍的是汽车防装系统的总体方案设计。
首先介绍汽车防撞系统的设计要求,然后分别对测距传感器的选择和显示报警系统的方案设计做了介绍,最后提出本系统的总体的设计方案,为硬件系统的设计打下了基础。
第3章对硬件系统的设计进行了介绍。
首先对超声波传感器的工作原理进行了分析,然后具体讨论了超声波测距模块中的超声波发射电路和超声波接收电路的硬件设计,最后介绍了显示模块电路和蜂鸣器报警电路的设计。
第4章主要是对系统的软件设计进行了介绍。
在软件设计中采用不同模块不同编程进行设计的,本设计分别对系统的主程序模块、中断子程序模块、超声波测距模块、蜂鸣器报警模块和数码管的显示模块的各个程序进行了设计。
第5章是硬件的组装及其性能进行分析。
首先对实物进行硬件排版组装和焊接,然后讨论了系统的性能产生的误差。
第6章是对本设计的总结和展望。
最后一章对全文进行了总结,并指明了系统设计的不足之处,最后也对本系统的倒车雷达报警系统的发展前景进行了展望。
2 总体方案论证本章从系统方案等一些方面来进行论证。
本设计主要是进行距离的测量和报警,设计中涉及到的容较多,主要是将单片机控制模块、超声波测距模块、蜂鸣器报警模块、4位数码管显示模块这几个模块结合起来。
而本设计的核心是超声波测距模块,其他相关模块都是在测距的基础上拓展起来的,测距模块是利用超声波传感器,之后选择合适单片机芯片,以下就是从相关方面来论述的。
2.1 设计方案论证2.1.1 测距传感器(1)激光测距传感器激光传感器利用激光的方向性强和传光性好的特点,它工作时先由激光传感器对准障碍物发射激光脉冲,经障碍物反射后向各个方向散射,部分散射光返回到接受传感器,能接受其微弱的光信号,从而记录并处理光脉冲发射到返回所经历的时间即可测定距离,即用往返时间的一半乘以光速就能得到距离。
其优点是测量的距离远、速度快、测量精确度高、量程围大,缺点是对人体存在安全问题,而且制作的难度大成本也比较高[3]。
(2)红外线测距传感器红外线测距传感器利用的就是红外线信号在遇到障碍物其距离的不同则其反射的强度也不同,根据这个特点从而对障碍物的距离的远近进行测量的。
其优点是成本低廉,使用安全,制作简单,缺点就是测量精度低,方向性也差,测量距离近[3]。
(3)超声波传感器超声波是一种超出人类听觉极限的声波即其振动频率高于20 kHz的机械波。
超声波传感器在工作的时候就是将电压和超声波之间的互相转换,当超声波传感器发射超声波时,发射超声波的探头将电压转化的超声波发射出去,当接收超声波时,超声波接收探头将超声波转化的电压回送到单片机控制芯片。
超声波具有振动频率高、波长短、绕射现象小而且方向性好还能够为反射线定向传播等优点,而且超声波传感器的能量消耗缓慢有利于测距[4]。
在中、长距离测量时,超声波传感器的精度和方向性都要大大优于红外线传感器,但价格也稍贵。
从安全性,成本、方向性等方面综合考虑,超声波传感器更适合设计要求。
根据对以上三种传感器性能的比较,虽然能明显看出来激光传感器是比较理想的选择,但是它的价格却比较高,而且安全度不够高。
而且汽车在行驶的过程中超声波传感器测距时应具有较强的抗干扰能力和较短的响应时间,因此选用超声波传感器作为此设计方案的传感器探头。
2.2 系统方案此方案选择51单片机作为控制核心,所测得的距离数值由4位共阳极数码管显示,与障碍物之间的不同距离利用蜂鸣器频率的不同报警声提示,超声波发射信号由51单片机的P3.6口送出到超声波发射电路,将超声波发送出去,超声波接收电路由CX20106A芯片和超声波接收探头组成的电路构成,报警系统由蜂鸣器电路构成。
本设计中将收发超声波的探头分离这样不会使收发信号混叠,从而能避免干扰,可以很好的提高系统的可靠性。
本设计的汽车防撞装置的系统框图如图2.1所示。
图2.1 汽车防撞装置的系统框图本设计由Keil编程软件对51单片机进行编程,51单片机在执行程序后由P3.6端口产生40kHz的脉冲信号通过74LS04电路进行放大并送到到超声波发射探头,产生超声波。
在超声波发射电路启动的同时单片机启动中断定时器,利用其计数的功能记录超声波发射超声波到接收到超声波回波的时间。
当接收回射的超声波时,接收电路的输出端产生负跳变输出到单片机产生中断申请,执行外部中断子程序计算距离。
结合各方面的因素考虑,依据设计的要求,查阅相关数据资料,选择了超声波测距传感器TR40-16Q(其中T表示超声波发射探头,R表示超声波接收探头),综合考虑设计的要求出于简便角度,选用了HC-SR04超声波集成模块。
此超声波模块的最大探测距离为5 m,精度可以达到0.3 cm,盲区为2 cm,而且发射扩散角不大于15°,更有利于测距的准确性。