首页 超声波智能小车

超声波智能小车

举报
开通vip

超声波智能小车机器人技术实训学院(系)专业::计算机学院计算机控制技术姓名:邹威指导老师:赵鹏举完成时间:2013—11-20目录TOC\o"1-5"\h\z一、实训任务3二、整体设计方案3三、硬件部分41、硬件部分的整体框架图42、电机驱动模块53、超声波模块8四、软件部分13(1)、程序流程图13(2)、程序内容14五、结果分析与调试(附图)22六、体会与心得23一、实训任务经过一学期的《机器人技术》的学习,我们打算做一个简易的超声波小车。这个超声波小车要能够躲避障碍物,或者能够按照程序的控制来...

超声波智能小车
机器人技术实训学院(系)专业::计算机学院计算机控制技术姓名:邹威指导老师:赵鹏举完成时间:2013—11-20目录TOC\o"1-5"\h\z一、实训任务3二、整体 设计方案 关于薪酬设计方案通用技术作品设计方案停车场设计方案多媒体教室设计方案农贸市场设计方案 3三、硬件部分41、硬件部分的整体框架图42、电机驱动模块53、超声波模块8四、软件部分13(1)、程序流程图13(2)、程序内容14五、结果分析与调试(附图)22六、体会与 心得 信息技术培训心得 下载关于七一讲话心得体会关于国企改革心得体会关于使用希沃白板的心得体会国培计划培训心得体会 23一、实训任务经过一学期的《机器人技术》的学习,我们打算做一个简易的超声波小车。这个超声波小车要能够躲避障碍物,或者能够按照程序的控制来完成相应的任务。在硬件部分,要求按照电路板焊接完成电机驱动电路,以及用万用板搭出单片机最小系统。软件部分,要求能够熟练的使用keil软件进行C编程,然后通过单片机开发板把程序下载到我们的单片机上面,反复调试,使之能够按照我们的程序完成相应的动作。、整体 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 系统整体框架:图一系统的大致工作原理就是:传感器把外部信号,转换为电信号,然后被单片机识别,当单片机识别出信号之后,会对信号进行运算处理,然后会得出判断,再吧判断的结果传给执行器,让执行器去驱动电机完成我们要实现的动作。照实训的要求,完成的小车必须要在碰到障碍物的时候,做出相应的反应.那么机器怎么来实现对客观事物的反应呢?这就需要用到传感器,传感器是根据一定的物理定律做出来的一种将物理信号转换成电信号的装置,只有电信号才能够被单片机系统识别。在这次实训中我们用的传感器是HC-SR04超声波模块。执行器主要就是对单片机的命令进行解释执行•就像人的手和脚,根据大脑的命令完成相应的动作一样,执行器可以根据单片机发出的电平命令,来实现电机的正反转和调速。在我们这个系统中由于用的是小功率的直流电机,所以我们采用L298电机驱动模块作为本系统的执行器。三、硬件部分1、硬件部分的整体框架图传递电信号转5V电压模块提供5V电源单片机系统传递单片机命令超声波电池电电机驱模块「提供5V电源源提供12V电源动模块整个系统的电源由一块12V、800mAH的锂离子电池提供,这块电池一方面为电机驱动器提供电源,用于驱动L298,另一方面接入到7805转5V的电压模块里面。超声波模块为了方便和单片机进行数据通信,采用TTL电平,所以超声波模块需要5V电源。单片机也是 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的TTL电平,所以也是5V电源供电。在电机驱动板的信号控制端,我们加了光耦隔离驱动,所以在信号控制端也必须有5V供电,用于让光耦工作起来.特别要说明的是:在L289电机驱动模块的信号输入端,一定要讲信号地线引出来,像我们这个系统采用一个电源供电还好,所有的电平都在一个参考电压下,如果信号电路和驱动电路采用的不是一个电源供电,而信号地线又没有接出来,那么就会导致,你输入的高低电平不会被驱动模块识别,因为两个电路没有共同的参考电压,那么就不知道多少伏是低电平多少伏是高电平了。2、电机驱动模块(1)模块简介这个电机驱动模块的核心部分就是有一块L298N电机驱动芯片。L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机L298N可接受标准TTL逻辑电平信号Vss,VSs可接4.5~7V电压.4脚M接电源电压,Vs电压范围Vh为+2.5〜46V。输出电流可达2.5A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号丄298可驱动2个电动机,0UT10UT2和0UT3OUT4>间可分别接电动机,本实验装置我们选用驱动一台电动机。5,乙10,12脚接输入控制电平,控制电机的正反转。£a,£b接控制使能端,控制电机的停转。为了防止电机突然转向和骤停产生的冲击电流对单片机和L298本身的伤害,我们在电路板的输入和输出端分别加了光耦隔离和续流二极管。(2)电路图的工作原理图三A、电路中的元件图中的P1是用于连接杜邦线的插针,D1—D4为发光二极管,U1为光电隔离器,U2为L298电机驱动芯片,S1为散热片,C1—C2为去耦电容,C3—C4为滤波电容,D5-D12为续流二极管J1—J3为插座。B、电路的工作原理:由L298的芯片资料可以得知,这个芯片只有在ENA和ENB都为高电平时,对方向控制端控制才会有电流输出。当方向控制端收到高电平时有效。在这个前提下进行分析如下:如果IN1输入的是低电平,那么2-1—2—3对应的那条线路就会通过排阻1导通,这样光耦内部的发光二极管就会发光,光耦内部的感光三极管,接收到光信号也会导通,这样6-16-15-5这条电路导通,那么L298N处的IN1就会呈现高电平,那么这时电机就会正转。其他的输入端IN2、IN3、IN4也是同样的道理。图中有两处电容,而且是一大一小。一处电容是为用于12V电源,一处是用于5V电源•大电容主要是起蓄能的作用,当电机在高速旋转或者突然转向的时候,会产生大量的高次谐波,会阻碍电流的流动,这时候会出现电机转速急剧下降的情况。所以要加一个大的电容,当电机运转正常时,电源对电容充电,当电机转速下降时,电容放电,作为电机的铺助电源。这样不断的充电、放电不间断进行,电机就会连续的转动了。那个小电容主要是滤除电源本身的高次谐波和电机转动产生的高次谐波。D5-D12为续流二极管,所有的感性负载都会连接上续流二极管,为的是保护驱动电路.(3)模块的控制9ttL298N功健楼块尸“!nlaX■I■一—停止’110iFK0IUK111\00图四从L298的芯片手册可以知道,当ENA、ENB片选端为高电平的时候,L298才可以工作,当IN1=0,IN2=1时,正转;当IN1=0,IN2=1时,反转;当IN1=1,IN2=1时,刹车;当IN1=0,IN2=0时,停止;3、超声波模块(1)、模块简介HC-SR04超声波测距模块课提供2CM—400CM的非接触式距离感测功能,测距精度可达3mm;模块包括超声波发射器、接收器与控制电路.基本工作原理:才有10口TRIG触发测距,至少10uS高电平信号;模块自动发送8个40Khz的方波,自动检测是否有信号返回;有信号返回,通过10口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间•测试的距离二(高电平时间*声速(340m/s)/2。(2)、电气参数:电气参数1IC-SR04趨声波模块工作电压DC5V匸作电流15mA匚作频率40Hz绘玩射程4m最近射程2cm测帚用度15度输入触发信号JOuS的TTL脉冲输出回响倍号输111TTL电平信号,与射理成比例规格尺寸45*20*15mm图五(3)、模块的控制:超声模块时序图:10uS削TTL融发佶号循环发出3吓40KHZ脉冲nririrlr=iHfhi換块内郅发出信号綸岀回响回响电平输出信号与检觊醍画咸叱例图六由模块的时序图可以知道,要驱动这个模块,只需要给一个10u以上的高电平信号,该模块内部将自动发送8个40K是方波信号,并自动检测回波。一旦检测有回波信号,就立刻输出回响信号•回响信号的脉冲宽度和测量距离成正比。4、单片机最小系统(1)、复位电路VCCC3O.OTpF:R1iokn图七看上电复位的情况:通电瞬间电容可以当短路(别问我为什么)所以RSTW为高电平•随着时间的飞逝(电容充电),稳定后VCC的电压实际上是加在电容上的。电容下极板也就是RST脚最终为0V。这样RST持续一段时间高电平后最终稳定在低电平,高电平持续时间由RC时间常数决定。这就是上电高电平复位。低电平复位也类似。判断是什么复位,你要看上电瞬间,RST是什么电平,是高电平就是高电平复位,是低电平就是低电平复位(电容在充电的一瞬间是看成短路的,至于这是什么原因,可以去看看电容充电曲线图,在充电一瞬间电容两端的电压是非常低的,所以可以看成等电势,也就是短路大电容旁边那个小电容一般是稳定电源电压滤波用的。(2)、晶振电路■i_图八晶振电路的作用是在电路产生震荡电流,发出时钟信号.它是时钟电路中最重要的部件,它的作用是向IC等部件提供基准频率,它就像个标尺,工作频率不稳定会造成相关设备工作频率不稳定,就会容易出现问题。本文为互联网收集,请勿用作商业用途本文为互联网收集,请勿用作商业用途(3)整个最小系统电路rfl.niTdF田Ln4芒I卜GNU-xTuTFT-?J1II:r:P=2p=T£E£a££亠P04PCiJP0£咤HAFf1AU^SEKPX75Na氏」百l土mr*丈匿樣匚至Mg宣宦HEO图九戸二■宜4>:•四、软件部分(1)、程序流程图图十2)、程序内容#include#inelude〈intrins。h>#defineuintunsignedint#defineucharunsignedcharsbitTlrg=P2A0//触发信号sbitEcho二P2X;//回响信号//电机驱动引脚定义sbitIN仁P2A2;sbitIN2二P2A3;sbitIN3=P2A4;sbitIN4=P2A5;**************/**********************函数名称:delay_nms*函数功能:延时*函数调用:无*入口参数:m*出口参数:无**********voiddelay_nms(intm){uinti,j;for(i=m;i>0;i--)for(j=110;j〉0;j——)/************************函数名称:init()*函数功能:设定定时器,初始化接收口*函数调用:delay_nms()*入口参数:无*出口参数:无*************■A•兴*未-k*-k**-kvoidinit(){TMOD=0x01;//定时器0,工作用内部TRO控制计数,而处于16位计数模式TH0=0;TL0=0;Echo=0;delay_nms(3);Echo=1;}/************************函数名称:Ult_send()*函数功能:超声波脉冲发射*函数调用:delay_nms()*入口参数:无*出口参数:无************************/voidUlt_send(){Tlrg=0;delay_nms(3);Tlrg=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();Tlrg=0;}/************************函数名称:Ult_receive()*函数功能:接收超声波,并计算距离*函数调用:无*入口参数:无*出口参数:distance************************/uintUlt_receive(){uintnum,a,b,distance;while(Echo==0);//等待接收位变高,一变高,就开定时器,且定时器清零TH0=0;TL0=0;TR0=1;while(Echo==1);//等待接收位变低,一变低,就开TR0=0;a=TH0;b=TL0;num=a*256+b;distanee二num*0。172;returndistance;}/***************函数名称:go*函数功能:前进*函数调用:无*入口参数:无*出口参数:无********voidgo()IN1=0;IN2=1;IN3=1;IN4=0;}/***************函数名称:back*函数功能:后退*函数调用:无*入口参数:无*出口参数:无*************voidback(){IN1=1;IN2=0;IN3=0;IN4=1;}*******函数名称:left*函数功能:左转*函数调用:无*入口参数:无*出口参数:无************voidleft(){IN1=0;IN2=1;IN3=0;IN4=1;■A-未**********兴*函数名称:right*函数功能:右转*函数调用:无*入口参数:无*出口参数:无*************voidright(){IN1=1;IN2=0;IN3=1;IN4=0;}//主函数voidmain(){uintk;init();while(1){Ult_send();k=Ult_receive();if(k〈200)//判断前方障碍,是否小于20cm{delay_nms(50);back();//如果有障碍,先退后delay_nms(100);//延时right();//再右转delay_nms(100);//延时if(k〈200)//如果前方障碍,还是小于20cm,{delay_nms(50);left();//那么就左转delay_nms(100);}else{go();}}else{go();}}}五、结果分析与调试(附图)(1)、L298N调试在L298N的调试过程用,焊接好以后,可以先采取硬件测试的方式,找一块电源板,在上面取出12V和5V的电压,把12V接到电机驱板上面,把两个电机也接到电机驱动板上面,然后把ENA和ENB分别置为高电平,再在IN1-IN4端口输入高低电平看输入端口的LED是否点亮,如果量且电机可以转动起来,就表明这个模块已经焊接完成。(2)、超声波模块调试在触发端给10us以上的高电平以后,用示波器打回响信号端,看是否出现40K的方波,如果出现,这表明这个模块已经驱动完成。(3)、最小系统的调试在最小系统焊接完成以后,最简单的方法就是烧录一个点亮LED的程序进去,然后把一个LED灯接到单片机相应的10口上,看LED是否点亮,如果LED亮,表明最小系统已经可以工作。如果不能工作,那么首先检查焊接是否有虚焊、漏焊的情况.如果没有以上情况,就用示波器打晶振电路,看是否有方波,如果有,表明没有问题,晶振电路已经起振。如果晶振电路工作正常,那么再用示波器检测复位电路,在打开电源的瞬间,看低电平时间是否持续在10ms以上,如果是,那么表明复位电路也是正常的。如果这时候,最小系统还是不能工作,那就说明单片机芯片出了故障。六、体会与心得经过两天的机器人技术实训,使我对机器人的认识发生了根本性的变化。原来机器人不只是指外型像人类,而是指一类能够按照设置程序自动运行的机器,比如我们这次实训的超声波小车就是一个简单的机器人,还有生活中的自动售货机也可以称作机器人。在制作超声波的过程中,我们要自己焊接电机驱动板和最小系统板。在焊接的过程中常常出现,电路原理图都是一样的,但是焊接完成以后,有的可以工作有点却不可以工作的情况,后来和同学们商量讨论,再自己用万用表测试发现,是在焊接的过程中,焊点不牢固导致了虚焊,所以才会出现有的同学焊接的电路板无法工作的情况。通过这次实训,我深刻的认识到,如果要从事单片机方面的工作,一定要对电路有很深的理解,并且要具备很好的焊接技术。在程序的编写过程中,驱动超声波模块的时候遇到了很多问题。刚开始的时候,我完全按照时序图去写延时的时间,却发现干不起,后来我把时间延长原理的30%以后就可以了,这说明我们在写时序的时候不要完全照搬时序要在原来的基础上面留有一定的裕度.在调节超声波时序的时候,要用示波器去打你单片机上面的触发端,看出来的方波是否满足时序,如果满足,再用示波器打回响信号是否是40k的方波,如果是就表示此模块已经驱动起来了。
本文档为【超声波智能小车】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
zhouhe
暂无简介~
格式:doc
大小:191KB
软件:Word
页数:24
分类:
上传时间:2022-01-13
浏览量:1