版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(一)设计目的采用超声波测量距离的方法,实时检测现场温度用以实现实际波速的校准,减小温度对测距产生的误差,最终由LCD液晶显示所测距离、温度及对应的波速,测量范围为7cm1m,误差±2cni(二)方案论证常用的测距方式主要有雷达测距、红外测距、激光测距和超声波测距等4种。雷达测距对天气的依赖性较强,且成本较高;红外测距量范围窄;激光测距精度高、抗干扰能力强但成本高,且光学系统需要细心维护;超声波测距指向性强、传输距离远、受环境影响小、传输时间容易检测,而且超声波传声器结构简单、行能可靠、成本低、易集成,因此本设计采用超声波测距的方式进行距离测量。在常温下,超声波的传播速度为340m/
2、s,但其传播速度V易受到空气中的温度、湿度、压强等因素的影响,其中温度的影响最大。一般温度每升高1摄氏度,声速增加约为0.6m/s。表1为超声波在不同温度下的波速值。表1一些温度下声速温度T/C-30-20-100102030声速v/m-s-1313319322331337344350由此可见温度对超声波测距系统的影响是不可忽略的。为了得到较为精确的测量结果,必须对波速进行温度补偿。通过实验可获得波速与温度之间的经验模型:V=331.5+0.607TT为现场温度,V为实际波速。从式中可看出,要获得精确的波速值,必须首先获取现场温度T的大小。本设计采用ds18b20检测现场温度,用以实现实际波速
3、的校准。超声波测距原理超声波传感器分机械方式和电气方式两类,它实际上是一种换能器,在发射端它把电能或机械能转换成声能,接收端则反之。本次设计超声波传感器采用电气方式中的压电式超声波换能器,它是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,就成为超声波接收器。在超声波电路中,发射端输出一系列脉冲方波,脉冲宽度越大,输出的个数越多,能量越大,所能测的距离也越远。超声波发射换能器与
4、接收换能器具结构上稍有不同,使用时应分清器件上的标志。超声波测距的方法有多种:如往返时间检测、相位检测法、声波幅值检测法。本实验采用往返时间检测法测距。其原理是超声波传感器发射一定频率的超声波,借助空气媒质传播,到达测量目标或障碍物后反射回来,经反射后由超声波接收器接收脉冲,其所经历的时间即往返时间,往返时间与超声波传播的路程的远近有关。测试传输时间可以得出距离。假定s为被测物体到测距仪之间白距离,测得的时间为t/s。超声波传播速度为v/m-s-1表示,则有关系式(1)s=vt/2温度补偿及其原理目前,大多数温度测控系统在进行温度测量时,通常采用模拟式温度敏感元件,如热电阻、热电偶、红外测温仪
5、等,将温度转化为电信号,经过信号放大电路放大到合适的范围,再由A/D转换为数字量。此种形式的温度测量结构复杂,测量精度易受原器件参数影响。DS18B2是Dalla於司开发的1-wire(单总线)高精度数字式半导体温度传感器,它具有节省I/O弦资源,结构简单,成本低廉,精度高,便于总线扩展和维护等诸多特点。1-wire是将数据线、控制线、地址线合为1根信号线。DS18B20勺测温原理如图1所示,图1中低温度系数的晶振的振荡频率受温度很小,用于产生固定频率的脉冲信号送给计数器1,高温度系数晶振随温度变化其振荡频率明显改变,产生的信号作为计数器2的脉冲输入图中还隐含着计数门,当计数门打开时,DS18
6、B2蹴对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55C所对应的基数分别置入计数器1和温度寄存器中,计数器1的温度寄存器被预置在-55C所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1-3-的预置值减到0时温度寄存器的值将加1,计数器1的预置将重新被装入,重新开始对低温度系数晶振产生的脉冲进行计数。如此循环直至计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图1中的斜率累加器用于补偿和修正测温过程中振荡器温度特性的非线性,以产生高分辨率的温度测量。其
7、输出用于修正计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值。由经验公式V=331.5+0.607T导出现场波速,实现温度补偿。图1另外,由于DS18B2弹总线通信功能是分时完成的,因此他有严格的时隙概念,因此读写时序很重要。系统对DS18B20勺各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)7发ROM能命令一发存储器操作命令-处理数据。(三)详细设计系统总体设计本系统由超声波发射、回波信号接收、显示和单片机等硬件电路部分以及相应的软件部分构成。系统原理框图如图2所示。显示温度补偿匚=>单片机超声波接收图2系统原理框图整个系统由单片
8、机AT89S5姓制,超声波传感器采用收发分体式,分别是一支超声波发射换能器TCT4匕16有口一支超声波接收换能器TCT4匕16R。超声波信号通过超声波发射换能器发射至空气中,遇被测物反射后回波被超声波接收换能器接收。进行相关处理后,输入单片机的INTCW产生中断,计算中间经历的时间,同时再根据具体的温度计算相应的声速,根据式(1)就可得出相应的距离用来显示。3.1 系统硬件电路的设计超声波发射部分超声波发射部分是为了让超声波发射换能器TCT40-16T能向外界发出40kH注右的方波月冲信号。40kHz4右的方波脉冲信号的产生通常有两种方法:采用硬件如由555振荡产生或软件如单片机软件编程输出,
9、本系统采用后者。编程由单片机P1.端口输出40kH近右的方波脉冲信号,由于单片机端口输出功率不够,40kH坊波脉冲信号分成两路,送给一个由74HC0铝成的推挽式电路进行功率放大以便使发射距离足够远,满足测量距离要求,最后送给超声波发射换能器TCT40-16T以声波形式发射到空气中。发射部分的电路,如图2所示。图中输出端上拉电阻R1,R6一方面可以提高反向器74HC0输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。图3超声波发射电路,超严波接收部分传统的接收电路采用LM386等功率放大器件,结合其他一些硬件电路实现,电路结构复杂,制作成本较高,且检测灵敏度没有保
10、障。本设计选用了索尼CX20106曲片,这是一款专用的红外信号接收芯片,内部集成了检波、除噪、放大电路,具有很高的信号检测灵敏度,且输出信号电平等级与单片机相同。上述TCT40-16T发射的在空气中传播,遇到障碍物就会返回,超声波接收部分是为了将反射波(回波)顺利接收到超声波接收换能器TCT40-16R®行转换变成电彳t号,经过索尼CX20106As片对此电信号进行放大、滤波、整形等处理后,得到一个负脉冲送给单片机的P3.2(INT0用脚,以产生一个中断。超声波接收电路图如图4所UiCX2CLCO图4超声波接收电路温度补偿电路温度采用DS18B2恭感器进彳f测量,P1.3®
11、DS18B2取据总线,控制DS18B2花行温度转换和传输数据,同时数据总线上还接10k的上拉电阻。本系统对DS18B2床用外部供电,其优点在于I/O线不需要强上拉,而且总线控制器无需在温度转换期间一直保持高电平。这样在转换期间可以允许在单线总线上进行其他数据传输,硬件结构如图5所示GNDd|图5单片机控制电路单片机采用STC89C54RC错用实验箱电路,单片机原理电路如图6所示A8A90234-%1-o/."l/."'Al'Al'Al'Al'Al'AlzzQi4!rJ丁I,!PPR2.P2.P2.P2.P2,P2.图6单片机原
12、理电路显示电路显示电路借用实验箱的彩屏电路,彩屏使用ILI9235主控芯片,显示主板上一个稳压芯片LM1117-3.3作用是把5Vfe压转换为3.3V,2个74hc245用户电平转换数据端:DB0-DB油P0口控制控制信号:S-指令/数据WR写控制CS-使能RST-复位具体接口电路如图7所示LCD1GNI>i|-vccj图7显示接口电路图CKJUNzlsjls?记爸之sd&T二sm一二一二FOCImEH二3.2系统程序设计系统软件设计采用模块化设计,主要包括主程序设计、T1中断服务程序、INT0外部中断服务程序、温度测量子程序、距离计算子程序、显示子程序、延时子程序等。系统软件编
13、制时考虑相关硬件的连线,同时还要进行存储空间、寄存器以及定时器和外部中断引脚的分配和使用。本设计中P1.0引脚连接到7HC04隹挽放大电路再连接到超声波发射传感器,P1.0引脚输出的将是软件方式产生的40kHz方波,而P3.2(INTO)则被用来接收回波。P1.3引脚连接18B208行温度测量。主程序首先要对系统环境初始化,设置定时器T0工作模式为16-10-位定时/计数器模式,置位总中断允许位EA并对液晶清屏,显示边框等基本显示;然后调用超声波发生子程序送出一个超声波脉冲,同时调用测温子程序进行现场温度的测量并由经验公式V=331.5+0.607T得出现场温度对应的波速。为了避免超声波从发射
14、器直接传送到接收器引起的直射波触发,需要延时约0.1ms后才打开外中断0接收返回的超声波信号。由于采用的是12mhz晶振,计数器每计一个数就是1us,所以当主程序检测到接收成功的标志位后,将计数器T0中的数按式(3-1)计算,即可得被测物体与测距之间的距离。则有CM(3-1)其中:为计数器T0的计数值,V为现场温度对应的波速。测出距离后,结果由液晶显示出来,然后再发超声波脉冲调用温补子程序重复测量过程。主程序流程图-11-开始-12-超声波发生子程序和超声波接收中断程序设计超声波发生子程序的作用是通过P1.0端口发送两个左右的超声波脉冲信号(频率为40khz的方波),脉冲宽度约为12us左右,
15、同时把计数器T0打开进行计时。超声波测距主程序利用外部中断0检测返回超声波信号,一旦接收到返回超声波信号(INT0低电平),立即进入超声波接收中断程序。进入该中断后,就立即关闭计数器T0,停止计时,并将测距成功标志子赋值1,寄存器用00h单元。温度采集及波速补偿程序设计DS18B20寸时序和电性参数要求很高,所以单片机在通过单总线接口访问DS18B20寸,其工作流程必须要遵守严格的操作时序,如果时序中任意一步缺少或顺序错乱,DS18B20若不会响应。DS18B20的操作顺序是:第一步:对DS18B20n始化;第二步:发送RO啼令;第三步:发送功能命令。超声波测距系统上电后,单片机开始初始化DS
16、18B20检测现场温度,软件控制DS18B20勺具体流程图如图9所示-13-图9通过以上程序,超声波测距系统上电启动后即可获得现场温度,在进行测距工作时单片机会把温度值通过公式V=331.5+0.607T补偿到超声波的波速中,使得现场的实际波速得到校正,从而降低温度对测距结果的影响,提高超声波测距系统的精度。(四)调试及性能分析超声波发射电路结构简单没有过多调试,主要对接收部分进行调试。超声波接收电路采用的是索尼CX20106A芯片,这是一款专用的红外信号接收芯片,电路结构简单但参数设置的不当会直接影响接收-14-的效果。其中2号脚与地之间连接RC串联网络,它们是负反馈串联网络的组成部分,改变
17、它们的数值能改变前置放大的增益和频率特性。增大R或减小C将使负反馈量增大,放大倍数下降,反之则放大倍数增大。在制作过程中R取4.7欧姆C取3.3uf,导致放大倍数过大,测距功能不能正常工作,后来R取4.7k,C不变,测距功能基本可以实现,最终为了方便调节放大倍数将R用10k电位器代替,以此达到最佳效果。5号脚与地之间接入的电阻用以设置带通滤波器中心频率f0,阻值越大,中心频率越低,本设计采用经验值200k,此时中心频率约为40khz。6号脚与地之间接的积分电容,标准值为330pf,由于手头没有330pf的就用两个680pf的电容串联,这样做对功能有一定影响但不是很大,具体规律是电容太大会导致探
18、测距离缩短。其它引脚不用调试。温度采集及显示的调试中出现数据显示的位置错误,原因是显示程序中存储数据的数组重复利用,在显示完一组数据后应对存储数据的数组重新赋值,这样问题就可得到解决。-15-测量数据表1距离实际距离(cm57102030507090100测量距离(cm67102029497192101表2温度及对应的波速当前温度()282930313233343536当前波速(m/s)348349349350350351352352353数据分析测量工距用两成为23cm的三角尺,挡板。最小有效测量距离为6cm,测量误差在1cm左右,重复性较好。误差原因主要有尺子短,温度补偿和距离计算中的数据
19、取整造成的误差。软件调试软件调试利用keil进行虚拟仿真调试-16-Tmer/ti»nhe-r(lrmjrEd。;iC'lDOEETU>HD口TA-2PGATE*wTtaTIASHAESlGeiBiearDiBBbi4Bie-aEnablelxe4tXill5nu岫qnUfiirwmrypt$nrhf«nTGffl|tTFIW|&S-TECiU3。ModePrppL:c.;.:,:,.-广:2J"t:'i'J:二二二:CiC:|舱口8/冉卜提4电皿n*日I口uww*yL|星|二曲隔|Counter1wzTC£>
20、IirTTNO&TTH!|bF2TLi:|arfF?IIhiFTFIPn1fsrtF团hiQEMqPtjflhenH-wH的小圳防BtQ丹uT卜轴fmjy嗅.幅团口国g(工K7epuRMEXL2MlM阿IkJriE置心见na.En.irE:i3cx:DPmiJMPbE口F1JFFFDMEE间做球iW沏幅ISO摩皿?DJRZ,EU&.DL1HET和再在x整字i-r+ca'17/000x1S勘d八,位门.比|£匚口明谭£|pitj::II=Nep&IhuPOSHPUSHEMI(五)课程小结在单片机课程设计中,经过选题、设计电路、购买元件、焊接电路
21、、程序编写调试等步骤,最终得到完整的作品。这次课程设计是本门课程课堂教学的延伸和发展,是理论知识与工程实践之间的衔接。通过本课程设计,我获益匪浅,增强了我对单片机专业知识的学习,加深了认识,进一步巩固了我的动手能力,培养独立自主、综合分析的思维与创新能力,最终使初步具有设计小型计算机控制系统的硬件及软件的能力。同时,通过资料搜集、方案分析、系统设计与报告撰写的一系列过程,得到一次科学研究工作的初步训练。从而,在专业知识与研究方法方面为日后的毕业设计乃至毕业后的工作奠定良好的基础。本次课程设计使我得到了锻炼,让我明白学习不知能是纸上谈兵,要能在生活生产中用到的具体使用。-17-(六)附录部分程序
22、清单主程序#include<reg52.h>#include"9325tp.h"#include"18b20.h"/*全局变量*/#defineTOP10#defineBOTTOM10#defineLEFT15#defineRIGHT10#defineDISTANCE20#defineCCOLOR0xffff#defineBCOLOR0x0000#defineulongunsignedlong#defineucharunsignedchar#defineuintunsignedintdatauchartestok;/超声测试成功unsigne
23、dinttemp;/温度临时变量/v为声速floattemperature,v;分别为声unsignedcharTempH,TempL;unsignedcharvph,vpl;/vph,vpl速判断时温度的十位个位的值datauchardispram5;/*函数声明*/voiddisp(void);externvoidcs_t(void);/超声波/externvoiddelay(uint);/延时/*主函数*/main()dataulongtime;/测距程序TMOD=0x11;IE=0x80;/测距程序-18-ILI9325_Initial();/初始化LCDCLR_Screen(BCOL
24、OR);/用背景色清屏/画矩形框Rectangle(LEFT,TOP,LEFT+100,TOP+140,CCOLOR);Rectangle(LEFT+1,TOP+1,LEFT+99,TOP+139,CCOLOR);LCD_PutString(LEFT+10,TOP+10,”当前声速:”,CCOLOR,BCOLOR);LCD_PutString(LEFT+10,DISTANCE+TOP+12,”m/s",CCOLOR,BCOLOR);LCD_PutString(LEFT+10,DISTANCE*2+TOP+10,”当前温度:”,CCOLOR,BCOLOR);LCD_PutString(
25、LEFT+10,DISTANCE*3+TOP+10,"C”,CCOLOR,BCOLOR);LCD_PutString(LEFT+10,DISTANCE*4+TOP+11,”g离:”,CCOLOR,BCOLOR);LCD_PutString(LEFT+10,DISTANCE*5+TOP+11,”cm”,CCOLOR,BCOLOR);/画中问问隔线Line(LEFT,TOP+DISTANCE+8,LEFT+100,TOP+DISTANCE+8,CCOLOR);Line(LEFT,TOP+DISTANCE*2+8,LEFT+100,TOP+DISTANCE*2+8,CCOLOR);Line
26、(LEFT,TOP+DISTANCE*3+8,LEFT+100,TOP+DISTANCE*3+8,CCOLOR);Line(LEFT,TOP+DISTANCE*4+8,LEFT+100,TOP+DISTANCE*4+8,CCOLOR);Line(LEFT,TOP+DISTANCE*5+8,LEFT+100,TOP+DISTANCE*5+8,CCOLOR);while(1)/测速cs_t();testok=0;EX0=1;ET0=1;/测速temp=ReadTemperature();/读取温度TempH=temp>>4;TempL=temp&0x0F;TempL=TempL
27、*6/10;/小数近似处理vph=(TempH%100)/10;vpl=(TempH%100)%10;v=331.5+0.607*TempH;/*switch(vph)case1:v=169;break;-19-case2:v=344;break;/case1:if(vpl<=5)v=169;elsev=172;break;/case2:if(vpl<=5)v=172;elsev=174;break;case3:v=349;break;*/if(1=testok)time=TH0;time=(time<<8)|TL0;time*=v/2;time/=10000;dispram0=(uchar)(time%10);time/=10;dispram1=(uchar)(time%10);time/=10;dispram2=(uchar)(time%10);dispram3=(uchar)(time/10);if(0=dispram3)dispram3=0;elsedispram0=0;dispram1=0;dispram2=0;dispram3=0;disp();/液晶显示信息/*显示处理函数*/voiddisp(void)unsi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蒙古舞教学课件
- 法纪法规教育体系构建与实施
- 手工超轻黏土课件
- 小班节能教育课程设计
- 初中物理核能课件
- 安全教育洗手规范与实施要点
- 山工艺展示设计
- 化疗患者健康教育
- 小班儿歌劳动教育设计与实践
- 教育的减法实施路径探索
- 中国成人ICU镇痛和镇静治疗指南解读
- 买房个人协议
- 中国革命战争的战略问题(全文)
- 2024年江苏南京金陵中学特长生选拔考试数学试题(含答案详解)
- DB12T 1341-2024 消防产品使用和维护管理规范
- MOOC 质量管理学-中国计量大学 中国大学慕课答案
- 车间划线及颜色标准
- 中国超重肥胖营养专家共识
- 安吉热威电热科技有限公司年产4000万件电热元件生产线扩建项目环境影响报告表
- 人教版初中中考物理电学专题试题及答案详解
- GA 1807-2022核技术利用单位反恐怖防范要求
评论
0/150
提交评论