红外测距报告(精选4篇)
学 院:机电工程学院班 级:学 号:姓 名:刘丰源
11电气1班 1100103139 摘要
本次实验是设计一个红外测距电路,它由软件和硬件两部分组成。软件部分包括信号产生、AD接收、数据处理、液晶显示;硬件部分包括发射模块和接收模块。此电路可以测较短的距离,精度在0~5mm之间。
关键词
STC8051单片机;红外测距;
一、方案设计
1、发射模块
采用用单片机产生一个1khz的信号经红外发射管发射这样设计既简单又方便,电路也更加简单。
2、接收模块 放大电路:
采用5v电源供电,利用lm358芯片进行单电源放大。由于放大倍数在20到40倍之间,经过一级放大即可。
滤波电路:
由于经过放大以后的信号还有很多杂波,而我们需要的是接收到的1khz的信号,一般的滤波器很难解决干扰问题,所以直接选用有源二阶带通滤波器。
峰值检波电路:
根据要求的精度为5mm,最简单的峰值检波电路即可胜任,出于节约成本的考虑,决定不用带运放的高精度检波电路,假如还要进一步提升测量精度,就需要选用更好的峰值检波电路。
AD转换电路:
AD转换选用0809芯片,它是并行传输的,占用的IO口太多,但是软件编写非常简单。
单片机控制电路:
AD转换的数字信号传入单片机,通过软件自动求出所测的距离,显示正确的距离。
二、电路分析
1.发射模块
由8051的定时器产生一个1khz的方波,用一个三极管驱动,将信号加载到红外发射管上。2.接收模块电路设计
因为红外接收管接收到的信号只有一百毫伏左右,而且还有很多干扰,需要先放大再带通滤波,单片机只能接受数字信号,所以还需要通过峰值检波输出一个直流电压,经TLC1543芯片转换成数字信号输入单片机进行处理。
考虑到题目测量范围和接收到的信号大小,选取放大倍数为40倍左右,倍数太大回出现波形失真,使测量的最短距离变小,倍数太小信号强度不够,则能测量的最远距离会变小,放大倍数B=R4/R3=40; 关于有源二阶带通滤波器的设计:
令C=C3=C4,则req=R5//R6=(R5*R6)/(R5+R6)品质因数Q等于中心频率除以带宽
即Q=fc/BW=1/2*R7/req
由上边的公式,取中心频率f=1khz,增益A=2,品质因数Q=10,则令C=C3=C4=50nf,可以得到电阻值为R5=16K,R6=160,R7=64K;关于峰值检波电路的设计:
考虑到电容值越大检波效果越好,但是放电速度越慢,经过测试,选取了20uf的电容和100k的电阻以及1n4148构成最简单的峰值检波电路。
电路图及元件参数如下:
3.单片机控制模块
接收模块处理好的数据传入单片机,程序自动计算出此时的距离,再在1602液晶上显示。
三、软件分析
软件由4部分组成,信号产生模块、AD接收模块、数据处理模块和LCD显示模块,利用单片机的定时器0可以持续不断的产生1khz信号并输出,由于输出信号是稳定的,而接收管接收到的信号随着障碍物距离的变远而变小,所以我们可以通过检测信号的强弱来判断距离,我采用提前把正确的距离和信号强弱的关系先测量好,建成一张信号距离表,然后利用exelc将得到的数据汇成一条曲线,得到一个函数关系式,在程序中插入这个关系式,单片机得到一个信号,程序就会算出相应的距离,这样既简单又方便。处理好的数据直接传送到1602液晶屏显示即可。
四、调试和测试
调试中所用到的仪器设备主要有:有示波器,函数信号发生仪,稳压电源。数字万用表。调试过程如下:
首先调试发射部分,直接用示波器测量单片机输出的信号,为1khz;
再调试接收部分的放大模块:先用函数发生仪模拟一个接收信号,把放大电路和滤波电路断开,测量358芯片的1脚,输入信号为1khz,100mv的正弦信号,用示波器测量1脚为1khz,2.8v的正弦信号,放大倍数为28倍,由于有信号衰减,放大部分正常;
接下来调试带通滤波:把放大电路和滤波电路连好,输入函数发生仪产生的模拟信号,测量358芯片的7脚,得到一个稳定的正弦波,通过调节输入信号的频率,测得带通滤波器的中心频率为1.8khz,带通滤波器不正常。由于电阻自身的误差比较大,电容也有误差,再加上计算出来的电阻值没有刚好合适的,取得是相近的电阻元件,所以照成了较大的误差,我再在C3,C4上分别并联了一个相同容量的电容,再次测量中心频率变为880hz,截止频率400hz,这次滤波器可以满足要求了。然后接着测量整个电路的输出端,示波器打到直流档,调节信号强弱,发现检波电路工作良好。
最后我修改程序将输出信号改为880hz,接入红外发射和接收管,直接进行最终的整合调试,解决一些电路连接上的问题后,将电压再液晶上显示出来,用米尺画出一张标准距离图,测量出电压和距离之间的关系并做成表,最终填入程序中,再验证距离和长度的关系是否正确。整个红外测距电路到此结束。
五、心得总结
该电路设计简单,精度为5mm,但还可以进一步提高。虽然测量距离和超声波比起来短很多,但是精度高,适合短距离的高精度测量。但是当测量距离从近到远变化时,距离测量变化的灵敏度比较低。需要一个更好的峰值检波电路才能提高响应速度。
六、参考文献和资料
1.郭天祥编著《新概念51单片机c语言教程—入门、提高、开发、扩展全攻略》 2.TLC1543编程实例——百度文库 3.《运算放大器电路设计手册》
关键词:超声波传感器,红外传感器,复合测距,硬件设计
0 引言
近年来,移动机器人已成为高技术领域内具有代表性的战略目标,在现今的各个领域都有着越来越广泛的应用[1]。精确的测距是移动机器人实现其各种功能,完成相应任务的关键因素。测距系统不仅要性能稳定、精度高、鲁棒性高,而且要求其能在恶劣环境下进行作业,实现人机分离。目前,测距系统中广泛应用的传感器主要有视觉、红外、激光、超声波等[2]。其中,视觉传感器测距易受外界因素影响,存在目标缺失、模糊等问题,且激光和视觉传感器价格昂贵,对控制器要求较高,不利于其广泛使用。超声波传感器由于信息处理简单、距离分辨力强、实时性强和价格低廉等优点而广泛应用于各种移动机器人。但普通超声波传感器存在无法测量20cm以内的近距离测量盲区[3],且易受传播介质和反射介质的影响,波束发散严重,方向定位精度较差;红外传感器具有光束发散小,定向精度高,响应速度快等优点,可提高系统的测距和定向精度。现有的测距机器人大多以单一的传感器为主,难免存在着测距误差,而且不能实现人机分离,作业场所及范围都具有一定的局限性。
为了解决移动机器人动态测距存在的缺陷,在对超声波及红外线原理研究的基础上,结合超声波与红外线的优点,设计了一款多功能、低成本、高稳定性、重复性好,可人机分离作业的复合测距系统。它以超声波传感器为主,进行测量,同时采用红外传感器来补偿超声测量的盲区。以Mega16L单片机为控制核心,设计了发送电路、接收电路、无线传输模块以及系统设计等。采用无线通讯技术将系统测得的数据传送到PC机上,实现无线动态测距。
1 测距原理
1.1 超声波传感器测距原理
超声波传感器是利用压电效应将电能和超声波相互转化实现测距的功能,其原理如图1所示。
超声波测距原理是通过检测超声波发射后遇到障碍物反射的回波[4,5],记录从发射到接收回波这一过程所用的时间t,然后计算出障碍物的距离S,距离计算公式为:
其中,c为声波在介质中的传输速率,S为障碍物与检测装置间的距离。在空气中超声波的传输速度易受空气中的温度、湿度、压强等因素的影响,其中温度的影响最大[6]。因此,计算距离时需要进行温度补偿。在已知温度T的情况下,超声波速度计算公式:
1.2 红外传感器测距原理
红外传感器包括红外发射器件和红外接收器件。红外传感器测距的基本原理为发光管发出红外光,通过判断反射光的有无确定前方是否存在障碍物,进而确定障碍物的距离[7]。
红外光电开关是目前使用较多的一种传感器,其发射频率一般在38k Hz左右,探测距离较短。本测距系统采用的即为此种传感器。由于红外有发散性,常用红外测量障碍物,当发出信号后,碰到反射物被返射回,被测距仪接收到,由高低开关量在PC机上显示有或无,不需要复杂的处理。
2 系统总体硬件设计
超声红外复合测距的硬件系统主要由Mega16L单片机、超声波传感器、红外传感器、发送电路、接收电路、电源供电电路、无线收发电路等模块组成,布置在正前方的三个超声波和三个红外线传感器组成测距系统的测量部分,如图2所示。
系统以Mega16L单片机为控制核心,通过它来接收超声及红外传输来的数据,再利用无线传输把测量数据传到PC机,通过数据融合方法得到更加精确的数据。下位机设计的控制系统采用先进的实时操作系统,提高了系统的实时处理能力和工作可靠性。
3 硬件设计
3.1 传感器选择
超声波传感器都存在一定的测量盲区,同时超声测距还存在反射、噪声、交叉等问题。根据系统测距精度要求及传感器性能比较,采用美国Sens Comp公司的Smart Senor 600紧凑型超声波传感器。
基于红外传感器测距时存在的盲区问题,本设计中仅把红外测距作为超声测距的补充,用来补偿超声测距的盲区。所以选用的红外传感器的测距范围确定为超声波的测距盲区,约为0到0.5米。
3.2 发送电路设计
发送信号必须经过功率放大器才能驱动发送器,发送电路如图3所示,从ATmega16L单片机输出的信号经过缓冲器F和功率放大器(VT1、VT2)驱动发送器。VT1采用小功率晶体管,VT2可选功率场效应管。
3.3 接收电路设计
接收信号电路主要包括以下6部分:输入保护电路、阻抗匹配及电流放大器、两极电压放大器、带通滤波器、输出级放大器和电压比较器。
信号在传播过程中,其能量会随传输距离的增大而减小[8],从远距离障碍物反射的回波信号一般比较弱,经超声换能器变换为电信号后一般为mv级,必须经过放大才能使用,接收换能器输出阻抗非常大,第一级放大电路必须有足够大的输入阻抗,所以采用高输入阻抗的运算放大器TL061型单运放。
电压比较器选用LM339(现仅用其中一路)。带通滤波器中的中心频率应与接收器的中心频率相同。调节电位器可改变接收灵敏度,提高抗干扰能力。常态下LM339输出高电平,当接收到超声波脉冲的第一个上升沿时就输出低电平,送至ATmega16L单片机的接收引脚,使内部定时器停止计数。红外传感器弥补超声波传感器较近测量的盲区,只发送接收信号即可,在上位机上显示有无。
3.4 无线传输模块
随着未来网络通信市场的成熟,无线技术将获得充分的发展空间,而在技术逐渐成熟和应用领域进一步细分的基础上,各种无线技术将在自身优势基础上得到更好的发展。本系统选用低功耗、高可靠性,体积小,重量轻的FC-201/SP微功率无线数传模块,故可采用单片射频集成电路及单片MCU,外围电路少,可靠性高,可以方便地嵌入用户的电路板上;连接PC机和下位机进行短距离无线数据传输。
FC-201/SP提供了TTL、RS232、RS485三种接口方式,本论文选择RS232接口方式。
3.5 测距系统总体设计
ATmega16L单片机的高速、高集成、高性能等优点,适合于要求速度快、精度高、扩展功能强、动态连续的超声波及红外测距系统。ATmega16L单片机是采用先进的RISC结构[9],超声、红外测距系统的很多功能均可由该芯片实现,针对测距系统的特点和要求,在超声波红外测距系统中使用ATmega16L单片机,可使系统所需扩展电路及芯片大大减少,从而使系统再扩展成为可能,而且具有线路简单、便于维护的优点,因而有利于提高系统得稳定性和可靠性。故可采用ATmel公司的Mega16L单片机做下位机进行超声波和红外两种距离探测传感器的数据处,具体如图4所示。
超声波传感器与PA口相连,PB口与红外传感器相连。MAX232的R1IN和T1 OUT分别与PD0(RXD)以及PD1(TXD)相连。每次测距时,Mega16L单片机通过PA口与PB口接收超声及红外传感器传输来的数据,再由PD口传输到MAX232,并经其转化后,将数据传送给无线模块,利用无线通讯技术将数据传送到PC机上,实现上下位机之间的无线通讯,并在上位机上进行处理示,完成整个测距过程。当被测物体与传感器距离低于0.2m时,由于声波在空气中传输时间太短,接收芯片无法正常响应,则采取红外线测量。
4 实验结果与分析
在使用超声红外复合测距系统对前方障碍物进行检测时,20cm内的障碍物目标通过红外传感器探测完成,20~300cm之间的障碍物目标由超声波传感器探测完成。
为提高测量精度,数据采集的周期尽量选择的长一些,这样可以避免数据值得抖动,便于上位机进行读取。该系统在实际应用中,测量0~300cm范围内的距离时,其误差都在0~±2cm之内,所测障碍物的测量距离与实际距离之间的误差有些偏大,为了进一步提高其测量精度,基于Bayes估计的数据融合方法,对所得数据进行数据融合处理,处理后得到的测量数据与实际值的误差为0~±1mm之间。
5 结论
本文以超声波传感器为主,红外传感器作为超声测量盲区补偿,设计了超声红外复合测距系统。克服了单一传感器测距系统的不足,使系统的测距精度和定向精度都有了一定的提高,进一步提高了测量精度,采用基于Bayes估计的数据融合方法对数据进行处理。利用无线通讯技术实现了上下位机之间的无线通讯以及人机分离操作,扩大了复合测距系统的应用范围,并具有良好的人机界面,利于数据的实时显示。测量误差由原来的±2cm降到±1mm。实际应用结果明,所设计的复合测距系统达到了设计要求。
参考文献
[1]李磊,叶涛,谭民,等.移动机器人技术研究现状与未来[J].机器人.2002.24(5):475-480.
[2]曹小松,唐鸿儒,杨炯.移动机器人多传感器信息融合测距系统设计[J].自动化与仪表.2009.5:4-8.
[3]刘升平,王剑,葛红.超声波测距系统的开发与研究[J].计算机工程与应用.2009.45(25):78-81.
[4]张春光.基于单片机的超波测距系统的设计[J].机床与液压.2008.36(7):208-211.
[5]仇成群,胡天云.基于超声波的汽车防撞报警系统的设计[J].制造业自动化.2009.31(4):75-77.
[6]杨振宇,李琳,陈文芗.一种微控制器的倒车雷达系统的设计[J].计算机测量与控制.2007.15(1):68-70.
[7]杜洪超,李邓化,高晶敏.基于超声和红外传感器的探测系统设计[J].微计算机信.2010.26(22):95-99.
[8]管彦滨,贺西平,樊安仓,等.20kHz大距离超声测距仪硬件设计[J].陕西师范大学学报(自然科学版).2009.37(3):47-50.
实验报告
班级: 姓名: 学号: 指导老师: 学院:
北京邮电大学
一、实验要求
1、遥控对象8个,被控制设备用LED分别代替,LED发光表示工作。接收机与发射机的距离不小于2米。2、8路设备中的一路为LED灯,用指令遥控LED灯亮度,亮度分为8级并用数码管显示级数。
3、在一定的发射功率下,尽量增大接收距离。
4、增加信道干扰措施。
二、实验步骤
1、实验前的准备工作
分析题目,对各个模块进行详细的设计,查找要使用的芯片的管脚图、功能表等,设计整体电路,详细到各个管脚的连线、所接电阻电容的大小、电路工作频率等。
2、搭建电路
按照设计的电路图搭建电路,电路分为发射和接收两部分,搭建时一定要耐心细致,避免错误,连线应当清晰明了,方便后期电路的检查和调试,各模块间最好相互独立,搭线时注意VCC和地线的连接。总之,搭建电路就是要细心、耐心。
3、电路调试与改进
这是本次实验的重点和难点,也是最耗费时间和精力的部分。往往在电路调试中会发现实验电路的一些细节性错误。如果在电路确认无误的情况下却仍然得不到期望的结果,就要考虑电路的改进了,主要是要改变一些所连接的电阻和电容的值。当然,问题也可能出在面包板上,我们所用的面包板由于长期的使用,有一些插口之间发生了短路,或者接触不良,都将会影响我们的实验结果,所以这也是一个需要考虑和检查的地方。
三、芯片选择以及具体电路图
见《简易红外遥控系统设计方案》
四、实验截图
发射管的输出波形:
接收波形:
五、实验中遇到的问题及解决方法
1、无线接收问题。
很多同学都遇到了这个问题,使用有线连接时能够得到想要的输出,使用无线时却根本收不到信号。通过示波器对各个管脚输出进行检测,发现问题出在CX20106这个芯片。后来通过改变CX20106芯片管脚所接的电阻,得到了输出,接受到了信号。
2、数码管显示问题
在发射和接收都调试好后,我发现我的数码管在开关拨1和拨4的时候都只显示0,用示波器检查输出没有错误,怀疑是面包板插口下面短路了,于是重新换了个位置插,结果就输出显示正确了。验证了是面包板的问题。
六、心得体会
这次的小学期为期一周,我选择的题目是简易红外遥控系统设计,因为在网上找到了上一届学长的设计方案,因此方案设计这个较为困难的步骤就比较投机取巧地解决了。
然后是按照设计方案搭建电路,搭建电路是一件不困难但要细致的工作。事实也证明,我们大多数同学都很快的完成了电路的搭建,但调试却不那么顺利,最后检查会发现很多细节上的遗漏或错误。对于我们的电路而言,任何一个细节的错误都可能导致结果的失败。
在电路搭建完成并且检查完成后,我开始用示波器检查每个芯片的输出管脚,在发射模块的调制部分,一开始NE555D的输出不正确,检查电路连接也没有错误,芯片也是好的,最后只能重插了该电路,结果就对了,所以之前应该是面包板某个地方短路了,事实证明我们用的面包板某些插口间短路或者接触不良是个还比较普遍存在的问题。总之发射部分比较顺利。
至于接收部分,当我从发射部分直接连线过去,结果很快就出来了,本来还挺高兴,结果用无线时接收部分却一点反应都没有。由于对芯片的了解并不深,一开始只是盲目按照学长的设计方案连线,连线完成后结果出不来,瞬间有种手足无措的感觉,无奈只好自己又重新学习认识了一下用到的几块芯片,尝试着改变一些管脚所接的电阻和电容,后来又重新搭建了两次电路,调试了三天终于有了结果。
通过这次课程设计,我不仅提高了动手能力,还学会了一些道理,那就是不能投机取巧,打好基础最重要。试想如果一开始自己先好好研究芯片和电路而不是为了省事儿直接用学长的电路,后期的调试就不会那么困难,结果也应该会更快出来。
为了进一步巩固学校所学知识, 并对红外传感器及AD采样有更深的理解学习。因此选用了夏普的这一款红外传感器并结合单片机进行了一个对红外测距仪原理性实现的实验课题。
2 系统结构
红外测距仪硬件主要由AD转换器PCF8591, LCD1602, 单片机STC89C52最小系统以及GP2Y0A21YK0F传感器构成。红外测距系统框图如图1所示。
GP2Y0A21YK0F传感器是由红外发射管一个PSD和红外发射管以及相应的计算电路构成。Sharp公司的PSD有它自己独有的特征, 它能够探测到光点落在它上面的细微移动, 它的分辨率能精确到微米, 这个特征让它完成了几何方式测距。红外发射管发出的光束, 遇到障碍没有反射回来, 落在PSD上, 组成了等腰三角形, 由于PSD能够测量到三角形的底, 而两个底角是固定的, 由发射管确定, 此时可通过底边推算出高, 也就是所要的距离。
在实际使用过程中, 改模块测量距离的倒数与电压在一定区间以内具有线性关系, 即U=k/S.所以在采样取值时, 使用此公式进行确定。
3 系统调试及分析
3.1 系统调试 (图2、图3所示)
测试方法:在红外传感器前面放一把长尺, 用一块不透光的硬纸板在长尺上移动 (保证纸板在红外传感器正前方) 。然后比着直尺, 在直尺上移动纸板, 观察显示屏数据变化。
3.2 结果分析
根据显示结果与直尺比对, 发现在10~60cm内误差较小, 约正负1.5。而当距离小于10cm, 大于60cm后, 发现显示数据出现无规则跳动, 显示距离与实际距离差值较大。多以整体设计在10~60cm距离里面可以达到最初设计要求, 满足最初设计理念。
4 结语
对于此次设计。通过仿真、实物, 得到跟预期一样的结果。充分证明学习了红外测距的可行性, 与实际相符。进一步验证了红外测距的设计与实现。
摘要:红外测距的探测距离较短, 一般在几十厘米之内。本文介绍一种基于STC89C52单片机设计的红外测距仪, 可以测量短距离, 根据所取AD模块的精度不同, 则理论上测量的精度也可达到很高。本设计采用日本夏普公司生产的GP2Y0A21YK0F传感器作为测量组件, 设计红外测距仪。所设计的测试仪具有在1080cm可测量范围, 误差正负1CM。其中因改传感器为模拟量输出, 所以还使用到AD采样模块PCF8591。在实际测试中红外传感器采集距离形成模拟量输出, 经AD转换后曲线拟合计算出实际距离并在显示屏1602上显示出距离。
关键词:GP2Y0A21YK0F,STC89C52,AD采样,PCF8591
参考文献
[1]康华光.电子技术基础数字部分[M].第五版, 高等教育出版社, 2006年.
[2]郭天祥.新概念51单片机C语言教程[M].第一版, 电子工业出版社, 2009年.
[3]张毅刚.单片机原理及应用[M].高等教育出版社.2003年12月第1版.