《基于STC89C52单片机的智能超声波跟随与避障小车.docx》由会员分享,可在线阅读,更多相关《基于STC89C52单片机的智能超声波跟随与避障小车.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 基于STC89C52单片机的智能超声波跟随与避障小车广东技术师范学院天河学院电气工程系电气123班 小组:吴梓润 赖智彬 罗林昕摘要: 智能超声波跟随与避障小车是以STC89C52单片机为控制核心,采用超声波传感器技术,主要由电源模块、避障与跟随模块(即超声波模块)、L298N直流电机驱动模块、语音提示模块,四位数码管显示模块等组成的控制系统.小车通过软件程序与硬件的相互控制,启动后开始探索前方是否有障碍物(即跟随物),假设有跟随物,距离大于30厘米,就向跟随物方向前进,且数码管显示距离,距离小于30厘米,跟随物变为障碍物,语音模块提示,小车自动避开,重新寻找跟随物.假设前方无跟随物,小车就
2、向前左转弯,转弯后再寻找跟随物。关键字:STC89C52单片机,超声波,L298N1 系统总体方案设计 语言提示模块 四位数码管模块超声波模块跟随与避障 STC89C52单片机控制模块 电源模块 L298N直流电机驱动模块该系统是以STC89C52单片机为控制核心,以超声波传感器为距离测量元件,对跟随物的探索与跟随,自动避障,跟随与避障过程中,数码管显示距离与及语音提示避障的控制系统。如图1所示: 图1:智能小车跟随与避障系统基于单片机STC89C52的智能小车跟随与避障系统是一种利用超声波测距然后自动跟随或避障的系统,其启动后自动寻找跟随物以及小于某一距离后自动避开障碍物,广泛应用于探测跟随
3、、避障等场合,通过超声波传感器,由单片机向超声波传感器发送命令,读取超声波传感器测量的距离,再判断小车是否跟随或转弯避开。如果距离小于避障距离,语音模块进行提醒。它采用超声波传感器,超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可到达3mm。模块包括超声波发射器、接收器与控制电路。本系统采用STC89C52单片机作为核心控制单元用于系统的控制, 小车安装了1个超声波传感器,装于小车前,用超声波检测障碍物,测出距离,程序根据测得的距离,实现小车是否跟随还是避障。2 系统硬件各模块的设计2.1超声波测距模块超声波传感器是本控制系统的
4、核心模块之一,其相当于小车的眼睛,小车启动后,超声波就开始寻找跟随物以确定小车前进方向,进行判断后再进行控制,控制模块是决定系统将要进行什么工作的,如小车应该左转弯、右转弯还是向前进,小车行驶过程距离障碍物跟随物有多少。超声波传感器原理图如图2所示 图2:超声波模块原理图 超声波模块与单片机的P30、P31连接,其1脚接电源,2脚连接接收端Echo,3脚连接控制端Tr1g,4脚连接VCC。另外,超声波模块的时序图如图3所示图3:超声波模块时序图 以上的时序图说明只需提供一个10uS以上脉冲触发信号,该模块内部将发生8个40KHz的周期电平并检测回波。一但检测到有回波信号则输出回响信号。回响信号
5、的脉冲宽度与所测得距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米或者uS/148=英寸;或是距离=高电平时间*声速340M/S/2;建议测量周期为60MS以上,以防止发射信号对回响信号的影响。2.2语音提示模块设计此模块是用来提供语音提示的,当小车距离障碍物距离这个距离可以自行设定很近时,小车的控制系统会发出“在距您车前方x米的地方有一障碍物,请您注意避让”的语音提示。此功能是用ISD1760语音芯片来实现,预先给语音芯片录入“在距您车前方”,“米的地方有一障碍物,请您注意避让”,“0”,“1”,“2”,“3”,“4”,“5”,“6” ,“7”,“
6、8”,“9”,“10”等语音信息,在通过单片机程序来控制语音芯片的定点放音,来实现语音提示。 图4语音提示模块原理图由总体电路图,用单片机的P2.2到P2.5四个I/O口来控制ISD1760语音芯片的定点放音。ISD1760工作原理:如下图,通过REC键来进行录音,录音时要一直按住REC键,录完一段语音后松开REC键,按动PLAY键可以对刚刚的录音播放出来;VOL键可以加减音量,每按动一次VOL键,声音就增大一级,由于只有8级音量调节,所以在第9次按动VOL键时,声音又回到了最小音量;ERASE键可以对已经录入的语音进行擦除,短按此键可以擦除上一段录音,长按此键可以擦除所有录音;通过SS、SC
7、LK、MISO、MOSI脚与单片机进行SPI通信,单片机就是通过这几个脚实现对ISD1760的定点放音。2.3最小系统STC89C51单片机 此模块是小车的最重要部分,它控制着超声波测距模块、数码管显示模块、L298N直流电机驱动模块、语音提示模块和信号提示模块的工作。单片机通过计时器记录超声波发射和接受的时间差,来计算出小车距离障碍物的距离,控制P1口的高低电平来控制数码管显示,通过输出不同频率的脉冲来控制步进电机的工作,通过SPI协议与ISD1760语音芯片进行通信,来控制语音芯片的定点放音,实现语音提示功能。原理图如图5所示: 图5:最小系统单片机原理图3 系统软件设计3.1系统主程序设
8、计该系统的主程序框架主要由避开障碍、测量距离、跟随物体、电机驱动、数码管显示距离和语音提示等子程序构成,如图6所示。根据各硬件电路功能来设计子程序模块,最后再将各模块嵌入主程序中。 主程序 测量距 离 子程序避开障碍子程序跟随物体子程序电机驱动子程序数码管显示子程序语音提示子程序 图6:系统主程序框图4 系统调试与实现4.1 系统调试 在测试过程中,先把小车放在空旷的地板上且放一物体,启动小车后测试其的探索跟随物的能力,搜索到后,假设物体在其前方小于30厘米处,就可以测试小车的避障能力。假设物体与其距离大于30厘米处,此时移动物体,可测试小车的跟随能力。4.2 系统实现与结果分析1首先把小车放
9、于空旷的地板上,启动小车后自动开始寻找跟随物体2找到跟随物体后,小车调整方向,向跟随物体方向前进。当距离小于30厘米后,跟随物变为障碍物,小车避开障碍物再前进。此时小车重新开始寻找新的跟随物体。小车就是如此循环的既跟随障碍物又避开障碍物。3在测试小车避障与跟随过程中,数码管会显示物体的距离,假设在避障距离内,语音模块进行提醒。4通过测试,小车在测试中能够按预想的设计要求,到达智能小车避障与跟随的功能。参考文献1 郭天祥.新概念51单片机C语言教程入门、提高、开发、拓展全攻略.北京:电子工业出版社,20092 宋戈,黄鹤松,员玉良,蒋海峰.51单片机应用开发范例大全.北京:人民邮电出版社,20103 阎石.数字电子技术基础第四版.北京:高等教育出版社,19984 刘伏文,王春华.MCS-51单片机存储器结构详解.电子制作,2007,(10)学习文档 仅供参考