基于STC89C52单片机的智能超声波跟随与避障小车
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于STC89C52单片机的智能超声波跟随与避障小车
基于STC89C52单片机的智能超声波跟随与避障小车 广东技术师范学院天河学院电气工程系电气123班 小组:吴梓润 赖智彬 罗林昕
摘要: 智能超声波跟随与避障小车是以STC89C52单片机为控制核心,采用超声波传感器技术,主要由电源模块、避障与跟随模块(即超声波模块)、L298N 直流电机驱动模块、语音提示模块,四位数码管显示模块等组成的控制系统.小车通过软件程序与硬件的相互控制,启动后开始探索前方是否有障碍物(即跟随物),若有跟随物,距离大于30厘米,就向跟随物方向前进,且数码管显示距离,距离小于30厘米,跟随物变为障碍物,语音模块提示,小车自动避开,重新寻找跟随物.若前方无跟随物,小车就向前左转弯,转弯后再寻找跟随物。 关键字:STC89C52单片机,超声波,L298N 1 系统总体方案设计
该系统是以STC89C52单片机为控制核心,以超声波传感器为距离测量元件,对跟随物的探索与跟随,自动避障,
跟随与避障过程中,数码管显示距离与及语音提示避障的控制系统。如图1所示:
电
图1:智能小车跟随与避障系统
基于单片机STC89C52的智能小车跟随与避障系统是一种利用超声波测距然后自动跟随或避障的系统,其启动后自动寻找跟随物以及小于某一距离后自动避开障碍物,广泛应用于探测跟随、避障等场合,通过超声波传感器,由单片机向超声波传感器发送命令,读取超声波传感器测量的距离,再判断小车是否跟随或转弯避开。如果距离小于避障距离,语音模块进行提醒。它采用超声波传感器,超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达到3mm。模块包括超声波发射器、接收器与控制电路。本系统采用STC89C52单片机作为核心控制单元用于系统的控制, 小车安装了1个超声波传感器,装于小车前,用超声波检测障碍物,测出距离,程序根据测得的距离,实现小车是否跟随还是避障。
2 系统硬件各模块的设计
2.1超声波测距模块
超声波传感器是本控制系统的核心模块之一,其相当于小车的眼睛,小车启动后,超声波就开始寻找跟随物以确定小车前进方向,进行判断后再进行控制,控制模块是决定系统将要进行什么工作的,如小车应该左转弯、右转弯还是向前进,小车行驶过程距离障碍物(跟随物)有多少。超
超声波模块与单片机的P30、P31连接,其1脚接电源,2脚连接接收端Echo ,3脚连接控制端Tr1g ,4脚连接VCC 。另外,超声波模块的时序图如图3所示
以上的时序图表明只需提供一个10uS 以上脉冲触发信号,该模块内部将发生8个40KHz 的周期电平并检测回波。一但检测到有回波信号则输出回响信号。回
响信号的脉冲宽度与所测得距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米或者uS/148=英寸;或是距离=高电平时间*声速(340M/S)/2;建议测量周期为60MS以上,以防止发射信号对回响信号的影响。
2.2语音提示模块设计
此模块是用来提供语音提示的,当小车距离障碍物距离(这个距离可以自
行设定)很近时,小车的控制系统会发出“在距您车前方x米的地方有一障碍
物,请您注意避让”的语音提示。
此功能是用ISD1760语音芯片来实现,预先给语音芯片录入“在距您车前方”,“米的地方有一障碍物,请您注意避让”,“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级音量
调节,所以在第9次按动VOL键时,声音又回到了最小音量;ERASE键可以对已
经录入的语音进行擦除,短按此键可以擦除上一段录音,长按此键可以擦除所
有录音;通过SS、SCLK、MISO、MOSI脚与单片机进行SPI通信,单片机就是通
过这几个脚实现对ISD1760的定点放音。
2.3最小系统STC89C51单片机
此模块是小车的最重要部分,它控制着超声波测距模块、数码管显示模块、
L298N直流电机驱动模块、语音提示模块和信号提示模块的工作。
单片机通过计时器记录超声波发射和接受的时间差,来计算出小车距离障碍物的距离,控制P1口的高低电平来控制数码管显示,通过输出不同频率的脉冲来
控制步进电机的工作,通过SPI协议与ISD1760语音芯片进行通信,来控制语音芯片的定点放音,实现语音提示功能。原理图如图5所示:
图5:最小系统单片机原理图
3 系统软件设计
3.1系统主程序设计
该系统的主程序框架主要由避开障碍、测量
距离、跟随物体、电机驱动、数码管显示距离和
语音提示等子程序构成,如图6所示。根据各硬
件电路功能来设计子程序模块,最后再将各模块
嵌入主程序中。
图6:系统主程序框图
4 系统调试与实现
4.1 系统调试
在测试过程中,先把小车放在空旷的地板上且放一物体,启动小车后测试其的探索跟随物的能力,搜索到后,若物体在其前方小于30厘米处,就可以测试小车的避障能力。若物体与其距离大于
30厘米处,此时移动物体,可测试小车的跟随能力。
4.2 系统实现与结果分析
1
.首先把小车放于空旷的地板上,启动小车后自动开始寻找跟随物体