资源描述:
《基于stc89c52单片机的智能超声波跟随与避障小车》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
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系
4、统硬件各模块的设计2.1超声波测距模块超声波传感器是本控制系统的核心模块之一,其相当于小车的眼睛,小车启动后,超声波就开始寻找跟随物以确定小车前进方向,进行判断后再进行控制,控制模块是决定系统将要进行什么工作的,如小车应该左转弯、右转弯还是向前进,小车行驶过程距离障碍物(跟随物)有多少。超声波传感器原理图如图2所示图2:超声波模块原理图超声波模块与单片机的P30、P31连接,其1脚接电源,2脚连接接收端Echo,3脚连接控制端Tr1g,4脚连接VCC。另外,超声波模块的时序图如图3所示图3:超声波模块时序图以上的时序图表明只需提供一个10uS以上脉冲触发信号,该
5、模块内部将发生8个40KHz的周期电平并检测回波。一但检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测得距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米或者uS/148=英寸;或是距离=高电平时间*声速(340M/S)/2;建议测量周期为60MS以上,以防止发射信号对回响信号的影响。2.2语音提示模块设计此模块是用来提供语音提示的,当小车距离障碍物距离(这个距离可以自行设定)很近时,小车的控制系统会发出“在距您车前方x米的地方有一障碍物,请您注意避让”的语音提示。此功能是用ISD1760语音芯片来实现,预先给语
6、音芯片录入“在距您车前方”,“米的地方有一障碍物,请您注意避让”,“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”等语音信息,在通过单片机程序来控制语音芯片的定点放音,来实现语音提示。图4语音提示模块原理图由总体电路图,用单片机的P2.2到P2.5四个I/O口来控制ISD1760语音芯片的定点放音。ISD1760工作原理:如图所示,通过REC键来进行录音,录音时要一直按住REC键,录完一段语音后松开REC键,按动PLAY键可以对刚才的录音播放出来;VOL键可以加减音量,每按动一次VOL键,声音就增大一级,由于只有8级音量调
7、节,所以在第9次按动VOL键时,声音又回到了最小音量;ERASE键可以对已经录入的语音进行擦除,短按此键可以擦除上一段录音,长按此键可以擦除所有录音;通过SS、SCLK、MISO、MOSI脚与单片机进行SPI通信,单片机就是通过这几个脚实现对ISD1760的定点放音。2.3最小系统STC89C51单片机此模块是小车的最重要部分,它控制着超声波测距模块、数码管显示模块、L298N直流电机驱动模块、语音提示模块和信号提示模块的工作。单片机通过计时器记录超声波发射和接受的时间差,来计算出小车距离障碍物的距离,控制P1口的高低电平来控制数码管显示,通过输出不同频率的脉冲
8、来控制步进电机的工作,通