红外测距-单片机课程设计说明书_第1页
红外测距-单片机课程设计说明书_第2页
红外测距-单片机课程设计说明书_第3页
红外测距-单片机课程设计说明书_第4页
红外测距-单片机课程设计说明书_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、意或於科访无也庇GuangDong Polytechnic Normal University单片机课程设计设计报告说明书设计题目:汽车距离自动测定系统课程名称:单片机课程设计所在院系:机电学院姓名:路小娃班 级:13机电师学号: 2指导教师:杨永小组成员:林韩路小娃黎桂雄日 期:2015年12月23日目录第1章 系统总体设计方案11一、设计目的及意义11二、设计报告11L设计题目:112主要功能、作用:11工主要技术性能指标:11£设计方案11色设计方案选择12第2章硬件系统132.1 .硬件系统的基本结构和原理图132.2 红外收发模块142.3 语音报警模块142.4 LCD显

2、示模块152.5 AT89c52单片机概述162.6 按键模块17第3章软件设计183.1 程序流程图18第4章 系统软硬件调试203.2 硬件调试203.3 软件调试203.4 测试结果绘图204.5 调试中遇到的问题21结论22参考文献23附录24附录一程序24附录二使用元器件一览表33附录三心得34第1章 系统总体设计方案一、设计目的及意义1 .在学习了单片机原理及开发这门课程之后,通过理论及实践结合的方式, 加深对理论知识的理解,启发思维。2 .通过一个简单、完整的设计,让大家熟悉设计步骤,将理论应用于实际,增强 应用能力,锻炼动手能力。3 .加深同学之间的了解,促进大家团结互助的精神

3、。二、设计报告1 .设计题目:汽车距离自动测定系统2 .主要功能、作用:1)设计一传感器系统,要求可以测定车辆前、后方距离。2)当车辆前、后方的距离达到一定值时,自动用语音报告距离的变化:3)随着距离的缩短,报告的声音要有一定的节奏变化。3.主要技术性能指标:1)驱动电路的运行状况;2)测距系统的测量准确度;3)显示和语音播报的准确度。4.设计方案方案一1)设计红外传感收发模块测距,STC12c5A60S2单片机作为主控模块;2)设定报警阈值(设定50CM,可用键盘调整阈值),随着距离的缩短,改变 蜂鸣器响的频率实现节奏变化;3)利用AT89C52的P1 口 AD转换功能,ISD1820语音播

4、放距离,并用 LCD 1602显示其距离值。方案二1)超声波测距器的系统设计,STC12c5A60s2单片机作为主控模块;2)用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完 成;3)单片机使用P1.0端口输出超声波转化器所需的40KHz方波信号ISD1820 语音播放距离,并用LED数字显示显示其距离值。方案三1)激光测距系统设计,STC12c5A60s2单片机作为主控模块;2)过单片机控制CPLD计时部分开始计时及停止计时,并通过软件计算控制 LED显示所测得的被测物的实际距离;3) CPLD计时部分采,40MHz的脉冲信号,单个周期为2.5ns,通过P0 口调 取到单片机

5、的方便,并用LED数字显示显示其距离值。5.设计方案选择我们小组考虑到红外测距的优点是便宜,易制,安全。激光测距存在诸多缺点,例如需要注意人体安全,且 制做的难度较大,成本较高,而且光学系统需要保持干净,否则将影响测量。超声波测距缺点是 精度较低,且成本较高。三者经过相互比较,从经济和我们所学的知识考虑。红外测距对我们初学者的锻炼是大于其 他两者的。并且红外测距的电路相对于其他两者比较容易焊接,容易检查和修改。第2章硬件系统2.1 .硬件系统的基本结构和原理图该系统主要由AT89c52芯片,红外测距传感器,ISD语音模块、LCD显示、电源模 块及键盘接口电路等组成。其主要组成构图如下:时钟电路

6、单片机红外流距模块悬他转换电路图2.1电路结构图L!3GNDvcc11VCC决L2C 531 291P! 0 Pl 1 P1J Pl 5 Pi PlPLC PlRST P3 0 P3.1 P3 2 P3 5VCC POO P0.1 P0 2 POJ P0 4 P0.5 P0 6 P0?EAV ALE眼 31210Kvc<R2192_ vss T)D VO RS RW END邨).1W4II3LZvcc303556lUb.止6_J01?一 11v一X:KIK“J3g 9S_ 匚 0_-ED上胡29123三ZP/一 rQ30NTW27_28 27VCCILISD132DRd3_4P2.7Tt

7、1)NPN3P3 5 P3« P3 7 XTAL2 JCTALl GNDSTCS9C52RCrx qP2 5P2P2 3 ”2P2 1P2.0_26>S11-3V GPNDvcc15 iLulLCD16Or时ClJL12423uSI, cc-1HL:15PEAKERIiSF:19 a>斡S32VISUB>en aC2TjNDII1IISXV-PB30pFvcc2.2 红外收发模块红外发送管是用于发送信号,经过障碍物将信号反射,红外接收管接收到反射回来 的信号,然后根据信号强弱将对应的电压值显示在显示模块上,并将此时的距离记录下 来。然后整改程序,用红外收发模块进行测

8、距,就可在显示模块上显示出红外接收管 接收的信号强度对应的距离值。GP2Y0A02YK0F红外测距传感器20 150cmSG:D Y图2. 3红外传感器结构图图2. 4 protel中红外传感器如图2.4所示GP2Y0A02YK0F有3个端口,其中VCC接信号输入,V0接P1 口,GND 接地线。GP2Y0A02YK0F测量范围在20cm-150cm之间,测量误差小于0. 5cm,是一个距 离测量传感器单元,PSD的集成组合构成(位置敏感探测器),IRED (红外发光二极 管)和信号原理电路。2.3 语音报警模块2. 3.1 ISD1820可以播报实时距离图2.5 ISD1802电路图2. 3

9、. 2蜂鸣器及LED警示灯警报蜂鸣器,发声元件。当距离达阈值的时候,蜂鸣器响同时用LED警示灯进行闪烁报警提示。2.4 LCD显示模块LCD及单片机的接口电路如图2.7所示,单片机P0分别接D1-D7,同时接上排阻,而在排阻另一端接上vcc。单片机上的P3.4接E, P3.5接RS,单片机通过P0 口向LCD输送数据,显示测得的距离。值得注意的是,P0 口要接上拉电阻来保证对LCD的 成功驱动。2.5AT89C52单片机概述本次课程设计采用的是增强型8051单片机,型号STC12C5A60S2oSTC12C5A60S2/AD/PW系列单片机指令代码完全兼容传统8051,但速度快8-12倍。内部

10、集成MAX810专用复位电路,2路PWM, 8路 高速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。图 2. 8 STC12C5A60S2 单片机单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两 种电路形式得到:内部振荡和外部振荡。本次设计选择在单片机外接晶体振荡器构成内 部振荡方式,片内高增益反向放大器及作为反馈元件的片外石英晶体或陶瓷谐振器一 起可构成一个自激振荡器并产生振荡时钟脉冲。外接晶体以及电容C2和C1构成并联 谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30P左右,晶振频率选11. 0592MHzovcc20p ut

11、NxTwTEX”C2C3X1XTAL113CRYSTAL<rtxr>XTAL2RSTFO.OXADO FO.1XAD1 FO.2XAD2 FO.3XAD3 TO.4XAD4 FO.5XAD5 FO.6XAD6 FO.7/AD7383732R1 1。吐 i1k1k23- SISIPSEN ALE EAP2.0/A8P2.1/A9P22A10P2.3FA11P2.4fA12P2.5fA13P2.6 俄14P2.7fA15212223P1.O/T2P1 1/T2EXP1 2P1.3P1 4P1.5P1.6 P1 7P3.0/RXD P3/1 /TXD P3.2JTMTCT P3.3MFT

12、P34/T0P35/T1P36破P2 .丁丽图2.9 ST89C52单片机最小系统2.6按键模块此模块采用4个独立按键来改变报警阈值。按键1 (加10CM)接PP4,按键2 (减 10CM)接 P05,按键 3 (RESET),接 Pl飞,按键 4 (RESET),接 Pl"。图2.10按键模块第3章软件设计3.1程序流程图在整个系统运行过程中。当红外系统被启动后,首先,对AT89c52单片机进行初 始化。然后,当AT89c52单片机接收到红外接收电路传输的电压信号后,经A/D转换程 序,将片外的模拟信号转换为单片机可识别的数字信号,并经电压一距离转换子程序, 将变化的电压转换为距离

13、。最后,在动态扫描LCD显示器上显示出来。主程序流程图 如图3.1所示。与设定值比较读漓量距离图3. 1程序流程图红外测距系统软件设计主要由主程序,延时函数,显示程序函数组成。程序开始,红外测距主程序第一步将显示屏1602初始化,并显示测量开始,笫二 步导入延时程序,并显示程序,显示电压和距离。其次子函数调用,读A/D并转换函数 得出电压值,再调用距离计算函数,得出距离值。此时主函数中显示函数会将电压和距离 显示出来,程序就此结束。此程序中多次使用调用子函数,读A/D,距离计算函数,算术平均滤波程序构成AD值的采集和计算;LCD忙标志判断函数,写数据子函数,写命令子函数,显示数 据调整函数,字

14、符串显示函数,显示子函数构成显示函数;1602初始化函数,LCD清 屏函数则构成清屏函数。不过完成程序并不是一次就能成功的,首先要先将AD采集程序写入单片机中,进 行实验,将固定距离所采集到的信号强度记录下来,然后将对应的数据加入程序中,最 后通过红外模块进行测量,便可显示出对应的距离值,主程序是整个程序的基础,也是 核心。此时距离计算函数才算完成,距离计算函数实际就是测量时得出距离电压关系, 我们反过来先拿出距离再得出电压,举例来说,用卷尺量50CM距离,再用红外测距 系统来量50cM距离,这时对应50cM距离的电压记下来。根据这个方法把其它各个 距离的电压记下来,把这个对应关系变成计算距离

15、的函数,再测距时就可以根据这个 函数来得出距离了。主编毋茂盛 副主编张建平张素君刘行兵图3.2单片机实物图第4章 系统软硬件调试4.1硬件调试红外测距仪的制作为了使信号稳定,最好给输入电源加上一个滤波电路,否则显 示屏上有闪烁,不稳定,会增加误差,但总体来说不影响结果。在本次设计中,主控 模块是非常重要的部分,它不仅是本次设计的核心,在本次硬件调试中也遇到了问题, 接上电源的时候,显示屏不亮,没有任何显示,于是我做了如下的工作:(1)检查电源是否通电,发现指示灯亮着;(2)编程使P1为低电平,检查到P1输出为低;(3)检查P0 口未接上拉电阻,接上显示屏发亮了。在本次硬件调试中还遇到了显示屏出

16、显示,但显示有很大问题,调节距离后,显 示还是不变,检查后发现LCD及vcc没接好,或RS, RW, E及单片机接触不良。4.2 软件调试硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。根据所设 计的电路参数和程序,测距仪能测的范围为20cm150cm,测距仪最大误差不超过 0.5cm。系统调试完后对各个距离进行多次测量,及预定值进行比较,对测量误差进行 多次实验分析,不断调节器件和修改程序使其达到实际使用的测量要求。为了更方便了解电压及距离之间的关系,我将程序做了些许修改,在显示距离的基 础上再把电压也显示出来了,这样结果一目了然。因为电压及距离之间的关系不是线 性关系,所用

17、用函数来表示会有误差,于是我将此函数修改,重新测量,每个距离对 应的电压记录下来输入程序,如此一来,测试更加准确,误差更小了。4.3 测试结果绘图图4.1是红外距离传感器GP2Y0A02YK0F电压距离关系图,图中所测电压对应的不同距 离值,图中横坐标代表距离,纵坐标是距离电压值,单位是cm。从图中可以看出,电 压及距离并不是线性关系,而是一条相对平滑的曲线。因此结果不一定十分准确,接 近此图即可。最终的红外测距系统可以实现20-150cm的近距离测量,测量误差为0.5cm, 可以计算出被测物体的距离。在测量距离精度方面,还有待于改进。表4.1 电压距离关系电压V2. 891.941.471.

18、180. 98测距cm1930415162实距cm20304050604.5 调试中遇到的问题在焊接过程中一些地方出现虚焊等接触不良的问题,导致显示不稳定有闪烁。接 线过程中用插针接线容易导致接线松动,没接到或者接触不良。环境问题:红外线在空气介质的传播过程中会有很大的衰减,其衰减遵循指数规律。一般情 况下能测150cm,但是空气介质发生改变,如尘埃过多,导致红外线强度降低,测量 发生误差,且测量距离变小。周围有其他辐射源,并且强度很大时会影响测量结果。对所设计的电路进行测量、校准发现其测量范围在20cm-150cm内的平面物体做 了多次测量发现,其最大误差为0. 5cm,且重复性好。该测距仪

19、稳定性比较高、灵敏 度比较高,测量时在红外线测距仪周闱没有其它物体。但是在检测过程中会有一些不 便的地方:1 .测量时在红外线测距仪和目标物体之间周没有其它可阻挡的物体,由于是根据 反射能量法,且发射功率有限,反射回来的红外线能量容易过低而无法采集,测距仪 无法测量150cm外的物体。2 .必须在干净清新的空气环境下测量,空气中一旦尘埃过多,会对反射红外线强度有 极大的干扰,最终影响计算距离的值。3 .不能够实现不同温度下的测距功能。4 .因为超声波是将空气作为媒介所以受电磁干扰比较大。红外线测距仪的原理有两种:一种是红外线传播的时间来计算出传播距离;一种 是根据发射光的强弱可以判断所测的距离

20、,由于接收管接收的光强是随及发光管的距 离变化而变化的,因而,距离近则接收光强,距离远则接收光弱。由上述的分析知,如果能够干净清新的空气环境,稳定的温度下,无其它电磁干扰, 阻挡的物体,能够获得较高的测量精度。参考文献1张明峰,PIC单片机入门及实战,北京航空航天大学出版社2窦振中,PIC单片机应用设计及实例,北京航空航天大学出版社3谢自美,电子线路综合设计,华中科技大学出版社,2006-64康华光,电子技术基础:模拟部分(第五版),高等教育出版社,20065潘永雄,沙河.电子线路CAD实用教程M.西安:西安电子科技大学出版社: 2007.6 51单片机C程序设计100例.7康华光主编.电子技

21、术基础M.第四版.北京:高等教育出版社,19998单片机原理及应用实验.武汉大学珞珈学院9一种红外线测距技术的探讨10红外测距传感器的原理及设计最终版11刘坤,51单片机典型应用开发范例大全中国铁道出版社12彭伟,单片机C语言程序设计实训一基于8051+Proteus仿真电子工业出 版社13薛小玲、刘志群、贾俊荣编著单片机接口模块应用于开发实例详解北 京航空航天大学出版社201014谭浩强,著C程序设计(第三版)清华大学出版社200515何桥、段清明、邱春玲编著单片机原理及应用中国铁道出版社200416曲波肖圣兵吕建平编著工业常用传感器选型指南清华大学出版社200217陈鸿茂编著常用电子器件简

22、明手册中南矿业大学出版社2001附录附录一程序include <REGX52.H>#definc uchar unsigned char#definc uint unsigned int#definc ADC_POWER 0x80#definc ADC_FLAG 0x10#define ADC_START 0x08#define ADC_SPEEDLL 0x00#define ADC_SPEEDL 0x20#define ADC_SPEEDH 0x40#define ADC_SPEEDHH 0x60uchar code tablet=n0123456789*1;uchar code

23、 table l=nLl=H;uchar code table3=,L2=n;uchar code table2=wSET:,r;sbit deng=P3A3;sbit lcden=P3A4;sbit lcdrs=P3A5;sbit yin=P2A4;sbit dula=P2A7;sbit keyl=P2A0;sbit key2=P2Al;sbit key3=P2A2;sbit key4=P2A3;sfr ADC_CONTR = OxBC;sfr ADC_RES = OxBD;sfr ADC_LOW2 = OxBE;sfrPLASF = 0x9D;int distance_danger=30;

24、int a;int c: int e: int bai.shi.ge;int AD_result=O;int AD_result2=0;int count=0:int beep_count=0;int distancc=0.distance2=0;void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=l 10;y>0;y-);)void write_com(uchar com)(lcdrs=O;P0=com;delay(5);lcden=l:delay(5);lcden=0:)void write_data(uchar date)(lcd

25、rs=l;PO=date;delay(5);lcden=l:delay(5);lcden=0;)void init()lcden=0;write_com(0x38);write_com(OxOc);write_com(0x06);write_com(0x01);)void xianshi(int number,int adrcss)(write_com(0x80+adress);/84if (number>999llnumber<=0)(bai=0:shi=O;ge=0;wri te_data(tablefbai);delay(5);write_data(tableshi);del

26、ay(5);wri te_da t a( tab le ge );delay(5);)else if (number>99)(bai=number/100;shi=number% 100/10;ge=number% 100% 10; write_data(tab lefbai);delay(5);write_data(tableshi);delay(5);write_data(tablege);delay(5);)bai=O;shi=number/10;ge=numbcr%10;wri te_data(tab lebai);delay(5);write_data(tableshi);de

27、lay(5);wri te_da ta( tab le ge );delay ;)else(bai=O:shi=O;ge=number;wri te_data( tab le bai );delay(5);write_data(tableshi);delay(5);write_data(tablege);delay(5);)/write_com(0x80+0x42);void keyone()(if(key l=0&&key2=l &&key3= 1 &&a=0)(distance_danger+;a=l;)else if(keyl=l)a=0;

28、void keytwo()(if(key2=O&&key3= 1 &&key 1= 1 &&c=0)(distance_danger-;C=l;)else if(key2=l)(c=0;)void keythree()(if(key3=O&&key 1=1 &&key2= 1 &&c=0)(distance_danger=3O;e=l;)else if(key3=l)(e=0;)void InitADCO(PLASF = Oxff;ADC_RES = 0;/ADC.CONTR = ADC_POWER

29、 I ADC.SPEEDLL I ADC.START I ch;delay(2);)int AD_caculate(char ch)(int result=O;ADC CONTR &= !ADC FLAG:result=ADC_RES:/ch = 0;ADC.CONTR = ADC.POWER I ADC_SPEEDLL I ADC.START I ch;return result;)int pinjun(char ch)(int i;float sum 1=0;int he30;for(i=0;i<20;i+)(he i =AD_caculate(ch);suml+=hei;)

30、sum l=sum 1/20;return AD_caculate(ch);)void beep_tiine(int x)(becp_count+;if(beep_count>x)(beep_count=0;dula=-dula;yin=-yin;int AD_cal(int AD)(float y;if(AD>=98&&AD<140)(y=-0.0045*AD* AD+0.715*AD+3.1;)else/if(AD>=71 &&AD<=98)(y=00344* AD* AD-6554* AD+341.9;)if(y>60)

31、(y=60;)return y; /*/void beep_warning(int xgjnt yg)(if(yg<=distance_danger)(beep_time(yg*3);deng=l;)else if(xg<=distance_danger)beepjime(xg*3);/yin=-yin;deng=l;)else(dula=O;yin= 1 ;deng=O:)void niain()(int aa=0;init();InitADCO;/IE = OxaO;delay ;write_com(0x80+0x40);for(aa=0;aa<3;aa+)(write_

32、data(table laa);delay(5);)delay(5);显示“ L2="显示“ SET="write_com(0x80+0x48);for(aa=0;aa<3;aa+)(write_data(table3aa);delay(5);)vrite_com(0x80);for(aa=0;aa<4;aa+)wri te_data( tab lc2 aa );delay(5);)a=0;c=0;e=0;dula=O;yin=l;deng=O;while (count+;keyone();keytwo();keythree();AD_result=pinjun(O);AD_resuIt2=pinjun( 1);distance=AD_cal(AD_result)7/distance2=AD_cal(AD_result2);beep_warning(distance,distance2);if(count>150)(delay ;xianshi(distance_dangeL0xO4);del

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论