【《基于51单片机的行车安全距离车载监测系统设计》12000字(论文)】_第1页
【《基于51单片机的行车安全距离车载监测系统设计》12000字(论文)】_第2页
【《基于51单片机的行车安全距离车载监测系统设计》12000字(论文)】_第3页
【《基于51单片机的行车安全距离车载监测系统设计》12000字(论文)】_第4页
【《基于51单片机的行车安全距离车载监测系统设计》12000字(论文)】_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

PAGEI基于51单片机的行车安全距离车载监测系统设计摘要本文设计主要内容包括基于51单片机的行车安全距离车载监测系统,目的实时监测车前方及侧方安全距离。系统控制核心采用STC89C52单片机,利用了超声波测距机技术实现对安全距离的监测。测距模块采用两个精度较高、资源较多的HC-SR04超声波测距模块。系统上电后,单片机立即发出电信号驱动超声波的发射及接收,单片机通过对收发得到的信号进行分析处理得到距离。测量距离若小于设定阈值,则声光报警系统工作,蜂鸣器报警配合LED灯点亮以提醒车主驾驶注意行车安全距离。本次系统设计经过多番硬件及软件的设计、修改和调试实现预期行车距离过近时预警功能。基于上述功能研究,结合目前国内外现状,在拥挤的公共交通场所及复杂的道路交通中,此系统设计保证了驾乘人员行车过程中车周身的安全。设计者衷心期望上述系统在实际中得到应用推广,减少因观察不足、反应不及时造成的交通事故等问题,以使驾驶员用车更放心,行人更安心。目录TOC\o"1-3"\h\u第一章绪论 1第二章系统方案选择与整体设计 42.1系统方案选择 42.1.1测距模块选择 42.1.2电控核心部分选择 52.2整体设计 62.2.1单片机系统 62.2.2超声波模块 72.2.3声光报警模块设计 7第三章系统硬件设计 83.1硬件设计概述 83.2单片机电路设计 83.3超声波测距模块设计 93.3.1测距模块工作频率 93.3.2指向角 103.3.3工作温度 103.3.4工作原理 113.4蜂鸣器报警电路设计 133.5灯光报警电路设计 14第四章系统软件设计 154.1程序设计主要流程 154.2超声波测距模块主程序设计 164.3声光报警系统程序设计 194.4人机交互模块设计 19第五章系统调试 245.1调试总结 245.2系统效果演示 24总结 26参考文献 27第一章绪论1.1 研究背景当今时代,造车技术愈发成熟,电车与人工智能结合应用热度持续上升,汽车行业明显出现回暖趋势。近期,政府及大多汽车企业在工作报告中指出逐步稳定增加汽车消费,扩大汽车产品内需,更加大力发掘我国国内汽车市场潜力,改善民生拓展需求,为人们提供更多优质的产品服务[1]。转眼间,汽车制造行业应运而起一波新高潮。当前汽车行业研究、生产重心逐渐倾向于电车方向,大小企业为尽早抢占市场大力发展电动汽车一时成为潮流。更多老百姓生活质量快速提升,购买电动汽车的意愿逐步增强。私家车的数量迅速增长,使得很多公共交通场所变得愈发拥堵。在车辆驾驶过程中对车前及车两侧行人及障碍物距离观察不当,容易出现松懈、放松警惕的情况而不注意车身周围,车体碰擦到两侧或前方车辆、行人或障碍物事件增多。上述驾驶员的错误操作及判断尤其容易在较窄道路会车、转弯盲区等复杂车况下发生。这种事故常常被界定为驾驶员经验不足、观察不充分,而缺少实际有效的设施及硬件设计来减少此类事故发生。本文研究设计的行车安全距离车载监测系统则切实的避免驾驶员在上述情况中反应、判断不及时而发生交通事故。城市机动车道路的宽窄密切关系到日常出行的安全、效率等。车道过宽容易造成同车道车辆并行挤占车道,后果扰乱交通秩序,造成危险。驾驶员在过窄的车道行驶时又可能因为视觉距离判断出错,反应不及时,发生事故。在国外大部分都市设定的机动车道宽度规则,城中主干路段一般为3.25至3.65米,而小型汽车专用车道一般为3.25至3.35米[2]。我国车道宽度根据情况合理取值,车道宽度值的范围为2.8至3.8米左右[3],较外国标准,下限与上限值都较高。我国标准针对不同条件下的车道设定了不同宽度取值,交叉路口车道宽不能低于标准下限值。在较为普遍的有车道线的城市交通道路,驾驶员维持车道中间行驶即可保证横向行驶安全距离。若道路为3.75m宽,相对的车子横向安全间隔应适当加大,车速在30km/h以下时,车辆的横向安全距离不低于0.5m。在无车道线的窄路上车辆异向相会时,应先尽量放低车速,不能驾驶车辆过于贴近两侧车道线,较为考验驾驶员驾驶经验的判断。在天气情况恶劣、视线不清等情况下,更要保持前后及横向行车安全距离。在科技和行业发展的背景下,无线测距技术在车辆的应用上变得更加实际可靠。无论工业还是民用车辆在行驶过程中,对距离的要求实际都较为严苛,避让前方及两侧车辆、行人、障碍,保持安全行车距离等各种情况下,行车安全距离车载监控系统都起到至关重要的作用。超声波测距不断发展、成熟,成为了相较于激光测距、红外测距等测距技术更简易、精准、实惠的选择。因此,设计行车安全监测系统时运用的超声波技术也成为智能车辆的一个关键和重点。基于51单片机的超声波测距报警系统因为其小巧、便捷、性价比高的特点,非常适合本文设计中安装于车身的实际场景。测距技术与时俱进的发展,超声波测距技术在智能产品中的推广及应用,该技术将会在社会生活,交通运输中起到更广泛、实际的作用。上述这些特性也让本文的行车安全车载监测系统设计有希望在实际运用中得到更多的推广。1.2 研究意义当今,经济实力快速提升增长了人们的消费自信,不论城市或是乡镇,拥有私家车成为生活水平提升的标配,而不仅仅是用作代步。汽车数量的增多助使路况的愈加混乱、繁杂,也成为导致意外频发的缘故之一。在实际的交通场景中,因为汽车数量的大幅增加,道路、转弯路口、桥梁隧道、停车场等地的车辆常常会十分拥挤。在上述这些人流、车流较为密集的车况下,一类非常常见但也同样易被人忽视的交通事故就出现了,很多车主在复杂道路交通情况下,行车时未能及时观察甚至忽视了周围车辆,而和路人或车辆发生剐蹭、撞击,引发不可估量的人身及财产损失。避免此类交通事故的有效手段之一便是在行车过程中时刻与障碍、行人等保持安全的距离,并且在出现较危险距离时,给予驾乘人员实时的提示以让其有充足的时间做出判断及反应操作。目前智能化的芯片配合汽车电器的搭载日趋普遍,这些芯片起到不可或缺的中心控制作用。其中单片机在微控制器领域中运用得更为普遍、成熟。单片机不仅是电子通信类相关专业最重要的技能之一,而且成为了车辆相关专业必修课程之一。51单片机即可成为车载行车安全距离监控系统的核心控制系统。通过学习和设计单片机相关系统,拓宽思维,提升自身动手动脑创造能力。这种过程是非常重要的尝试,对于后续的工作进行、更深入学习,以及课题系统设计的实现形成有效的指导,并为保障人们安全的交通出行提供了思路。1.3 研究内容行车安全距离车载监测系统设计首先以STC89C52为主导控制,集成其他硬件,实现测距告警功能。用户在行车时,车前方及侧方都有一个超声波测距模块,上电后,该模块立即发射声波并回收,经单片机处理,若实测间距小于预设阈值,则系统就会告警并配有LED常亮显示。该系统以此在驾乘人员在较为安全的行驶速度下,若忽视了侧方及前方的行车安全距离,起到了预警的作用。此次设计过程中采用的测距电路是精度更高、花费更少、使用更普遍的HC-SR04;选用台制STC89C52作为核心,提高升了整个测距报警的精确性,并使之更为稳定。在整个设计、调试过程中,对单片机有了进一步的理解,并且经过调试本设计具有较好的实用性,以满足实际需求。因为该系统设计中用到的大部分模块及控制器都较为普遍,其方便易学习性更适合本设计的应用与推广。1.4 论文结构安排在此设计系统中,研究的是一款运用到超声波无线测距技术的行车安全距离监测系统。此设计能够实现行车过程中安全距离测量并报警,抗干扰强,稳定可靠并且价钱低廉。本文具体结构安排如下:第一章绪论,详细分析行车安全距离车载监测系统研究背景第二章系统方案选择与整体设计第三章系统硬件设计第四章系统软件设计第五章系统调试总结,系统论述了本课题设计内容,在设计过程中做出的思考以及遇到的问题,仍然存在的问题与不足,后续改进的方向意见。第二章系统方案选择与整体设计2.1系统方案选择2.1.1测距模块选择当今有以下几种常见的测距方法:(1)红外测距系统以红外线为介质测量[4]。拥有相对较大的测量范围,响应快,主要应用到现代工农业领域。该测距方式因其测距较远,相应较快,多适合于恶劣的工业环境。但红外测距主要缺点是精度过低,方向性极差,易受外界干扰,因而不适合选作本多用于公共交通的测距系统设计。(2)激光作为高新的测距方法,和其他测距方式比,更为准确稳定。测距仪射出激光后,光电构件吸收目标反射的激光束,计时器测量时间间隔,以此计算出到目标的距离[5]。它主要优势在于精准,而劣势是该方式对人身具有一定的危害,且其制造的资源耗费较大,便捷性差,不易实现其功能,且对光学系统各方面要求较高,否则会影响测量。(3)超声波测距,它根据设定好的超声波在空气中的传播速度,加上超声波遇到阻挡物反射归来的特质进行丈量的。超声波在发射瞬时就开始了计时,收到反射波就当即中断计时,然后系统模块根据收集的时间跨度测算出实际距离。它因为具有方向性强、耗能低、传播距离长等特色,适用于测量。监测系统操纵超声波进行间距测算,设计简单明了,可满足测量精度方面的要求。本设计因上述原理偏向选用超声波测距方法。传感器探头主要起到电、声能彼此转化的功用。晶片接收到超声波的作用后,物理上因振动发生了变形,这个过程中即发生了电信号与声波信号的转换。超声波传感器通常由性价比较高的双压电陶瓷晶片制成,根据前述原理,用于超声波的发射与接收。在陶瓷晶片上添加预定频率的交流电,则发生同频机械振动,从而驱动其它媒介,射出超声波[6]。图2-1双压电晶片结构如果在两晶片之间加上交流电后,若A片电场方向与极化方向同向,则下方反向,晶片由此发生伸缩,根据一定频率造成超声波振动。图2-2双压电晶片等效电路图双压电晶片等效电路如图2-2所示,并联一个C0电容和R电阻。同时,将电容CM、电感LM以及RM串联形成回路。图2-3超声波模块内部结构图通过相关资料的学习以及实物的观察、研究,超声波硬件模块详细内部结构如上图所示[7]。内部采用双晶振子,利用先前说到的极化原理,使压电陶片粘连。其上下面均敷上电极,再通过接触金属连接至电极,下方通过引线接到另一电极端[8]。双晶振子两边凸起即为振动节点。金属板中心振子发送超声波时,振子具有较强方向性,因而可高效地发送超声波;接受超声波时,亦可产生高效地高频电压。超声波测距常用方法为渡越时间法[9],该方式也为本设计中使用。其公式为:s=vt/2(2-1)式中:s为声波经过的路程;v为超声波在空气中的速度;t为渡越时间。[9]2.1.2电控核心部分选择电控的主体是51单片机,选择宏晶科技公司生产的STC89C52单片机,高性能、高性价比,在实践中被大量使用。STC89C52有4个I/O端口,32根I/O线,4个端口都是准双向口。每个端口包含1个专用寄存器,1个输出驱动器和输入缓冲器,充足的I/O口可以满足车载监测系统的需求[10]。2.2整体设计经历前几部分的探究,整体对课题的监测系统设计有一定的思路。通过研究背景和系统功能需求的探索,对整个系统拥有一定的概念和见解。国内外的研究现状就是该设计的目前发展水平,通过对此的研究,积极地获取和研究现有的技术,取其精华,加入自己的思想,以此为基础进行设计,也让整个研究设计更进一步完善。硬件及软件设计是本文要重点论述的部分,我们从硬件到软件对整个系统设计进行介绍及解析,最后调试系统并展示设计效果。该系统设计控制核心采用成本较低,技术成熟,实际应用较多的的STC89C52单片机。单片机发出电信号驱动超声波测距模块发射超声波,该次发射得超声波发射到障碍物后返射回来,进入接收传感器。测距模块将声波信号转换为电信号,单片机接收后对其进行分析处理,从而得到测量距离值并根据设定安全距离阈值判断是否执行声光报警。设计采用HC-SR04模块作为安全距离测量系统核心模块,具备蜂鸣器和LED声光报警系统。2.2.1单片机系统STC89C52作为一类低耗、机能较卓越的微控制器,其标准功能包括8k字节Flash程序保存空间,512字节RAM数据存储空间,32位I/O口线,运作频率上限达到为35MHz[11]。晶体震荡电路提供可控的工作跳动脉冲,它产生固定周期的时钟脉冲信号,提供给整个系统使用。系统工作的机器周期都取决于本处晶振的频率。晶振频率愈高,系统反应速度更快[12]。复位电路主要负责系统开机及重启,保证系统能够牢靠的、统一协调的启动系统执行程序。复位信号引接至51单片机特定管脚9。RST脚加上需要保持给予高于24个脉冲周期的高电平信号。系统复位电路主要由3个器件构成,10KΩ电阻、10uf电容以及复位开关。按下开关后通电瞬间,产生高电平信号,然后对电容充电后上升为高电平周期,经过2us,芯片可靠复位,随后电平被电阻接地降至低电平。外部置有一手动复位开关,可通过按下开关使得系统复位。电源供电稳定性要求较高,纹波干扰少的直流电源给系统供电。供电正极接到单片机第40脚,负极接到第20脚。程序烧写电路把编写好的程序代码烧录到存储器中。达到单片机的程序控制工作。STC单片机只需使用串口通信就可以完成程序下载。2.2.2超声波模块超声波测距模块是本课题选用目前非常常用的HC-SR04,该模块的工作原理很简单,不需要外围电路就可以实现自动的检测。这类型测距模块常用频率范围为25KHz~300KHz的脉冲压力波[13];考虑上述因素,本文设计中超声测距中使用常用的40KHz频率超声波。收发之间存在隔离,使接收装置避免接收到后一次较强的声波信号。2.2.3声光报警模块设计为了完成实测距离低于预设阈值系统可以驱动报警的功能,本系统加入了蜂鸣器和两个红色发光二极管。两个发光二极管分别对应超声波测距模块1和2。超声波测距模块报警同时显示对应二极管发光,可以更好、更直观提醒用户进行注意到是与前方障碍物距离过近还是侧方距离过近,报警模块功能的实效性得到显著提升。第三章系统硬件设计3.1硬件设计概述本行车安全距离监测系统设计采用STC89C52作为微控制核心。上电后系统开始工作,内部编写既存程序检测会自主发出电信号驱使超声波传感器发射超声波的操作,并立即开始计时。超声波确实成功碰触光滑障碍物表面后,发生反射回接收器,接收器准确接收到,超声波经过时间并进行数据处理,得到测量数据。其次,系统具备蜂鸣器发声及LED灯光报警功能。3.2单片机电路设计此行车安全距离车载检测系统选用STC89C52微处理器。51系列单片机作为如今在普通高校中最易接触到的微控制器,显示其相较于其他微处理器具有易学习上手,操作简单的便捷性。虽然该型号单片机主要应用着力在低端市场,但因其资源丰富、稳定性强等优点,完全适用于本转载在车门的行车安全距离监测系统,具有极高的性价比。本次系统设计中的晶体震荡电路采用两个管脚的无源石英晶体振荡器,晶体外围搭配电容接地,主要用来稳定波形,起滤波作用。晶体震荡电路输入方波震荡脉冲到单片机特定的第18、19管脚上。系统工作的机器周期都取决于本处晶振的频率。图3-1晶振电路复位电路中的复位信号连接到单片机第9脚。在本测距仪的复位电路由10KΩ电阻、10uf电容和复位开关S5构成。若系统故障报错或程序运行出错,就可按下S5进行系统复位。图3-2复位电路电源要求稳定性高、干扰少的直流电源给系统供电。本系统采用5V的直流电模块供电。供电正极接到单片机第40脚,负极接到第20脚。在供电通道中,串接了一个黄色发光二极管显示电源是否上电。图3-3电源电路程序烧写的下载电路如下图示,4脚插座时程序下载接口,其中3、4脚是串口通信接口,连接到单片机的第30、31脚,将通过Keil完成编写的程序烧录至单片机存储器后运行,以查验功能是否实现。图3-4程序烧写电路3.3超声波测距模块设计3.3.1测距模块工作频率当在压电晶片两头横加的交变电压频率达到中频大小,向外输出能力最强。在中心频率最高的前提条件下,测量距离越近,则越易辨别。空气中,超声波的衰减系数[14]为:α=αa·αs=Aƒ2+Bƒ4(3-1)所以,在空气中,频率ƒ是超声波衰减的紧要影响因素。要求合理选择超声波频率,一般超声波频率选择在40KHz较为合理。超声波测距模块在工作过程中,发射超声波、反射超声波过程中以及超声波碰撞到障碍物时都会有损失,则合理的频率选择更加重要。确定工作频率时主要需要考虑以下几点要素:(一)由式(3-1)可知,物质对超声波的接受能力与超声波频率的平方同比增长,因此,若对超声波测距模块的测量抗干扰能力要求要求较高,减小超声波传播损失,则需要降低工作频率。(二)工作频率同时影响着测距模块的方向性。在其他因素相同的条件下,超声波测距模块的工作频率越高,其超声波传播的方向性越强,精度相对较高。对于车载安全距离监测系统来说,应对的工况较为复杂,则对测量精度要求较高,所以作为主要影响因素之一的工作频率不能过低,而要尽量提高。综上,由于此车载行车安全距离监测系统设计中最大量程不大,尺寸不宜过大,并结合诸多因素考虑,选择工作频率在40KHz。这样传感器方向性较强、精度较高,且规避了噪声部分杂音,即同时信噪比提升。3.3.2指向角指向角决定着超声波测距模块的测量方向,其方向性随着指向角的减小而增强。图3-5超声波测量原理图图示,超声波测距模块测距基本原理图。发射端发出超声波,传播至目标被测物后,由被测物表面反射回,再由测距模块接收端接收反射脉冲。测距模块测量出超声波发出到接收经过的时光,经过公式计算可得距离。3.3.3工作温度由式(2-1)可知,声速大小直接决定了测距系统的测量精度高低。由于空气中气体具有反抗压缩变化力作用,超声波由机械振动产生,能够实现其传播。超声波的传播速度受到气体密度、温度及分子成分的影响[15]。气体压强公式为:P=RTV式中:R为普通常量8.134kg/mol;T为气体温度;M为气体分子量;空气为28.8×10-3kg/mol。Cs=γRT式中Cs为超声波声速;γ为定压热容与定容热熔比值,空气为1.4。由上式可知,温度与超声波在空气中传播速度为正比关系。变化公式:Cs=20.067T(m/s)根据上式可以计算出,超声波受温度影响较大,其速度与温度关系如表3-1所示。环境温度每增加1℃,超声波速度增加大约0.607m/s。用这个值作为温度补偿的系数,波速在0℃时为331.45m/s。表3-1温度℃-20-100102030100速度m/s316325331338344350386声速在空气中以344m/s传播的温度条件约为20℃。但因本设计多为短时间内的高频率测距工况环境,温度不会瞬间发生过多变化,采用344m/s作为声速值在后续设计中为依据实现功能。3.3.4工作原理HC-SR04超声波测距模块使用IOTRIG端口来触发距离测量,当它发出高电平信号时,模块将自动发送方波来检测是否有返回信号。ECHO端口主要用来接收返回信号,并针对每次确实接收到的返回信号,进行信号转换。图3-6超声波测距模块实物图HC-SR04超声波测距模块主要电器参数如表3-2:表3-2模块电器参数工作电压工作电流工作频率最远射程最近射程测量角度5V15mA40KHz4m2cm15°此外该模块规格尺寸为45*20*15mm。超声波时序图[16]如下所示图3-7时序图获得收发信号时间间隔后即可根据下式计算得到距离。公式:距离=高电平时间*声速(340M/S)/2(3-5)为防止后发出的发射信号对之前一次的回响信号产生过多负面影响,测量周期一般为60ms以上。图3-8超声波模块基本电路图上图是HC-SR04超声波测距模块基本原理图。微控制器为超声波测距模块发送电信号,使其发出超声波,同时,它还打开了外部计时器。发射的超声波被物体反射并返回到接收换能器,微控制器立即进入定时器中断处理。测距模块将接收到的声学信号转换为电信号,然后进入单片机,通过单片机程序处理得到测量距离。图3-9超声波测距模块1电路图上图为超声波测距模块1接线图,TRIG即3号脚连接至单片机P32,ECHO连接至P10。图3-10超声波测距模块2电路图图示为超声波测距模块2接线图,接线方式与超声波测距模块1相同。两个超声波测距模块输出端都连接至蜂鸣器。超声波测距模块1测得距离小于阈值会触发蜂鸣器报警同时发光二极管LED1发光报警;超声波测距模块2测得距离若小于阈值同样会触发蜂鸣器报警同时对应的LED2发光报警。3.4蜂鸣器报警电路设计图3-11蜂鸣器模块电路图蜂鸣器模块与微处理器P10引脚相连,当该引脚输出低电平时,PNP三极管导通,由于蜂鸣器需要的电流比微控制器的输出电流大,所以必须由三极管驱动。由于蜂鸣器是一个电感式部件,所以电流不会迅速变化,但如果电源-蜂鸣器-三极管电路断裂,已经储存的电流可能会在蜂鸣器两端产生较高的数十福特电压,这会对驱动三极管及整个电路系统造成负面影响。三极管在这个报警电路中起到了电门的作用,所以当基极为低电平时,三极管就会导通,蜂鸣器就会响。当距离低于阈值时,报警模块会触发频率为5KHz警报。3.5灯光报警电路设计超声波测距模块1和超声波测距模块2测量数据低于阈值时会分别触发LED1和LED2发光二极管点亮,由此分辨是前方的超声波测距模块1还是侧方的超声波测距模块2测距低于阈值而发出预警。图3-12灯光模块电路图图示为灯光模块接线图,LED1串联1k电阻保护电路,连接至单片机P11,LED2则连接至单片机P12脚。判断是前方测距的超声波测距模块1报警还是侧方测距的超声波测距模块2报警则通过两者对应的LED灯直观显示。第四章系统软件设计4.1程序设计主要流程该部分主要阐述系统功能实现的软件设计流程。系统上电后,系统初始化。单片机发出一组脉冲信号,信号经过放大电路驱动超声波传感器发射端发出超声波,同时内部定时器计时开始。超声波发射出去后遇到被测物体后,声波反射,返回到超声波测距模块接收端产生数字脉冲信号到达单片机外部中断管脚。单片机外部中断服务函数启动,获取计时器时间后,设置成功获取信号标志位。成功获取信号后,单片机分析处理得到测量距离。测量数值与设定阈值比较,若小于设定值则声光报警模块系统工作,启动报警;若大于设定值,则不报警,重复之前测距工作。图4-1程序设计流程简图上图示为此行车安全距离车载监测系统主要程序流程设计流程简图。下面展示整体程序设计中主要运用的函数头文件及定义变量、引脚设定。后续超声波测距程序设计以及报警模块程序设定中都有应用,便于简化及优化设计内容。图4-2头文件头文件包含拿来即用的52单片机标准头文件以及intrins.h。intrins.h头文件包含了一些与汇编对应的函数,直接翻译成对应汇编指令,例如左右位移、nop这类。主要为了避免自己在想用这些汇编指令功能时只能内联汇编的情况。这些函数确实是由编译器实现,C51中就是直接换成对应汇编指令而不会进行函数调用。图4-3部分定义4.2超声波测距模块主程序设计当微控制器发送一个10us以上的高电平脉冲驱动信号时,超声波模块开始发波,定时器1立即被触发,开始对发波进行计时。微控制器在上电时初始化定时器,并接受一个外部中断。只要超声波遇到回波故障到达接收换能器,回波口就会产生一个数字信号到达单片机接收口的外部中断INT1,接收的外部中断立即启动,服务功能在外部中断上启动,定时器检索时间值,停止定时器并设置标准测量数据位。此时,时间值被带入缓冲区,当主功能转到测量数据参考时,进入测量数据处理模块,进行超声波测距的计算过程,得到测量距离。以下为测距功能实现的部分主程序代码:图4-4部分主程序代码在完成一个完整程序循环后,意味着一次超声波的收发测距完成。不论前一次测量成功与否,在系统工作过程中,程序需要不断的循环进行收发测距过程。图4-5程序循环超声波测距模块接收到回波信号后产生一个电平触发外部中断,单片机给予一个读取成功标记并取出计时器数据代入进行计算处理。主要程序代码如下:图4-6计时数据定存代码成功获得回拨信号后,数据处理的主要代码:图4-7测量数据处理代码上示为超声波测距模块1距离计算处理,则超声波测距模块2的测得数据处理方法相同,代码相似。两处区别处代码仅仅如下所示:}if(succeed_flag==0) {distance_data2=0;//没有回波则清零}4.3声光报警系统程序设计系统初始阈值设置为500即50cm,根据计算得到的距离与设定阈值比较,若超声波测距模块1测得距离1小于阈值则对应LED1发光二极管点亮,同时蜂鸣器报警。若超声波测距模块2测得距离2小于阈值则对应LED2点亮,同时蜂鸣器报警。用户通过观测系统LED灯的亮灭情况判断前方测距模块1报警还是测距模块2报警。if(distance_data<yuzhi1)//阈值设置 { beep=0; led1=0; num=0; } if(distance_data2<yuzhi2) { beep=0; led2=0; num=0; }num++; if(num>10) { beep=1; led2=1; }超声波测距模块测距功能的实现及配合的声光报警系统功能的实现主要部分代码如上示,利用公式2-1对收发超声波信号经过的时间进行计算处理得到距离数值,通过与设定的阈值进行比较判断是否在阈值范围内,并配合声光报警模块实现预警功能。4.4人机交互模块设计在系统调试过程中,虽然设计的行车安全距离车载监测系统本身是既定了安全距离阈值,并不添加显示模块和按键模块,目的使系统更加的便捷使用,但在系统调试过程中,为了实际验证功能实现,并且让测量结果更直观被观测到,避免反复对程序进行烧录,另外增加了一块LCD12864显示屏用以辅助调试。通过LCD12864模块显示测量距离实际值以及设置的阈值,更直观显示功能的实现与否。系统初始设置阈值为50cm,为了提升系统在调试过程中的便捷性及易操作修改性,增加了一个按键模块,分别控制两个测距模块阈值设置。图4-8LCD模块电路图上示为LCD12864显示模块电路设计图。该显示模块具有多种接口方式,其中包括4位/8位并行、2线或3线串行[17]。主要该模块还有国标一级、二级简体中文字库的液晶显示模块,操作指令方便、简单,可构成全中文的人机交互界面,非常适合辅助本系统设计的调试。其主要显示部分代码如下:sbitrs =P2^4;sbitrw =P2^5;sbite =P2^6;#definelcddataP0ucharcodedis1[]={"超声波测距系统"};ucharcodedis2[]={"距离1:"};ucharcodedis3[]={"距离2:"};ucharcodedis4[]={"阈值:"};图4-9图4-9液晶显示效果上图示为实现调试过程中LCD12864液晶显示效果。主要为验证测距报警功能的实现,设计通过控制变量法,设定固定的阈值,通过改变两个测距模块与障碍物之间的距离,观察测算出的距离与实际距离是否相近并且与设定阈值比较大小是否有效报警。同样为了提升调试过程的易操作性,利用了K1、K2、K3、K4四个按键组成的按键模块来分别对设定阈值大小进行调整,使测距功能的实现得到完整、有效的体现。图4-10按键模块电路图图5-3所示为调试过程中增加的按键模块电路设计。下为按键模块功能实现主要程序设计:if(KEY1==0){yuzhi1++; lcd_pos(4,4); dis9[0]=yuzhi1%1000/100+'0'; dis9[1]=yuzhi1%100/10+'0'; dis9[2]=yuzhi1%10+'0'; dis9[3]=0; print(dis9); }if(KEY2==0){yuzhi1--; lcd_pos(4,4); dis9[0]=yuzhi1%1000/100+'0'; dis9[1]=yuzhi1%100/10+'0'; dis9[2]=yuzhi1%10+'0'; dis9[3]=0; print(dis9); }if(KEY3==0){yuzhi2++; lcd_pos(4,6); dis10[0]=yuzhi2%1000/100+'0'; dis10[1]=yuzhi2%100/10+'0'; dis10[2]=yuzhi2%10+'0'; dis10[3]=0; print(dis10); }if(KEY4==0){yuzhi2--; lcd_pos(4,6); dis10[0]=yuzhi2%1000/100+'0'; dis10[1]=yuzhi2%100/10+'0'; dis10[2]=yuzhi2%10+'0'; dis10[3]=0; print(dis10); } 第五章系统调试5.1调试总结早期试验调试过程中,没有人机交互的情况下,经常出现功能实现不全的问题,需要在Keil中对程序设计反复修改,再烧录至系统中,上电测试,如此反复。因为没有显示,所以测距模块的实测情况也不明了,只能通过借助外力,如尺,来进行判断,非常不准确。出现了一系列上述类型的问题。反复的烧写程序,还要不断通断电源,对微处理器模块及整个系统都有不利影响,而且使整个调试过程变得十分繁琐、缓慢。吸取了这样一些经验教训,增设的按键模块和显示模块,使得调试过程变得更加简单、高效。经过多次控制变量调试系统,此行车安全距离车载监测系统基本测距及报警功能得到有效实现,在测定距离小于500mm时,蜂鸣器报警并且对应LED灯发光报警。虽然在实际调试测试中发现此超声波测距存在主要对较为光滑完整的障碍物测距较为精确,而对相对复杂的障碍物或表面测距精确度稍逊的问题,但系统整体在行车过程中对安全距离的监测非常迅速、准确,基本实现目标测距预警功能。5.2系统效果演示图5-4系统效果演示1在超声波测距模块1前方放置一距离为40mm的障碍物,超声波测距模块2前方放置一距离为600mm的障碍物,此时超声波测距模块1测得与障碍物距离小于阈值500mm,超声波测距模块2测得与障碍物距离超过500mm时,蜂鸣器报警,LED1亮,LED2不亮,则表示系统功能实现,超声波测距模块1即车前方向行车安全距离车载监测报警实现。图5-5系统效果演示2在超声波测距模块1和超声波测距模块2前均放置一距离超过500mm的障碍物,实际测得距离超过500,高于设定阈值,LED1和LED2均不亮且蜂鸣器不报警,则表示系统实现前方及侧方行车安全距离大于设定阈值,则不会发出报警的实际功能。与上述试验方式相同,当在超声波测距模块1和2前均放置一距离小于500mm障碍物,测得距离低于阈值,蜂鸣器报警同时LED1和LED2均点亮,此行车安全距离车载监测系统设计功

温馨提示

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

评论

0/150

提交评论