基于单片机的自动避障小车设计与实现.docx
《基于单片机的自动避障小车设计与实现.docx》由会员分享,可在线阅读,更多相关《基于单片机的自动避障小车设计与实现.docx(29页珍藏版)》请在冰豆网上搜索。
![基于单片机的自动避障小车设计与实现.docx](https://file1.bdocx.com/fileroot1/2023-1/30/2a435858-ad19-425a-b087-1b084e2ef5dc/2a435858-ad19-425a-b087-1b084e2ef5dc1.gif)
基于单片机的自动避障小车设计与实现
郑州工业应用技术学院
本科生毕业设计
题目:
基于单片机的自动避障小车设计与实现
指导教师:
张朝阳职称:
讲师
学生姓名:
周红宇学号:
1102120515
专业:
电气工程及其自动化
院(系):
机电工程学院
答辩日期:
年月日
2015年月日
摘要
智能小车是一种能够通过编程手段完成特定任务的小型化机器人,主要是在自动化控制领域,它具有制作成本低,电路结构简单,程序调试方便等优点,具有很强的趣味性。
智能小车深受广大机器人爱好者以及高校学生的喜爱。
该设计利用单片机STC89C52RC作为主控芯片,该芯片是一种高速、低功耗、抗干扰能力强的芯片,其最高时钟工作频率为48MHz,用户应用程序空间为8K。
能够满足程序空间需要。
驱动采用L298N驱动芯片,它是一种双全桥步进电机专用芯片,通过对其输入端的控制可以实现小车的启动、转向、停止等动作.为节省成本,小车由两个直流减速电机加一个万向轮构成,并采用后轮驱动.采用了E18—D50NK红外光电开关组成的避障传感器来避障。
由于采用了6节干电池供电使系统的抗干扰性得到加强.充分利用STC89C52的系统资源,使智能小车完美的实现了障碍物检测、避开障碍物自动巡航等功能。
经实践验收测试,该智能小车的电路结构简单,调试方便,系统反映快速、灵活,设计方案正确、可行,各项指标稳定、可靠。
本文首先介绍了智能车的发展前景,接着介绍了该课题设计构想,各模块电路的选择及其电路工作原理,最后对该课题的设计过程进行了总结与展望,并附带各个模块的电路原理图和本设计实物图及完整的C语言程序。
关键词:
智能小车单片机避障红外线
Abstract
Smartcarisasmallrobottoaccomplishspecifictasksbyprogramming,mainlyinthefieldofautomationcontrol,ithaslowproductioncost,simplecircuitstructure,debuggingconvenient,hastheverystronginterest.SmartcarrobotloversaswellasbythemajorityofCollegestudents.
ThisdesignusesSTC89C52RCmicrocontrollerasthemaincontrolchip,thechipisachipofhighspeed,lowpowerconsumption,stronganti—interferenceability,andthemaximumclockfrequencyis48MHz,theuserapplicationspacefor8K.Tomeettheneedsofthespaceprogram.DrivenbytheL298Ndrivechip,itisakindofdualfullbridgesteppermotordedicatedchip,theinputendofthecontrolcanrealizethecarstart,stop,turn.Inordertosavecosts,thecarbytwoDCmotorandauniversalwheel,andtherearwheeldrive.TheobstacleavoidancesensorE18—D50NKinfraredphotoelectricswitchtoobstacleavoidance。
Duetotheadoptionofthe6batterysuppliespowertotheanti-interferenceofthesystemhasbeenstrengthened。
TomakefulluseofthesystemresourcesofSTC89C52,theperfectrealizationoftheintelligentvehicleobstacledetection,obstacleavoidanceautomaticcruisefunction.Throughthepracticeofacceptancetesting,circuitstructureofthesmartcarissimple,convenientdebugging,thesystemtoreflecttherapid,flexible,thedesignschemeiscorrectandfeasible,stable,reliableindicators。
Thispaperfirstintroducesthedevelopmentprospectsofthesmartcar,andthenintroducesthedesignidea,workingprincipleandcircuitofeachmodulecircuit,thedesignprocessoftheprojectaresummarizedandprospects,witheachmodulecircuitdiagramandthedesignofthephysicalmapandtheintegrityoftheClanguageprogram.
Keywords:
SmartCarsSingle—chipObstacleAvoidanceInfrared
1绪论
1.1课题研究背景及意义
随着第一台机器人的诞生,机器人的发展已经涉及到航空、交通、国防等领域。
近年来机器人的智能化水平不断提高,也在改变着人们的生活方式.人们在不断探讨、认识和改变自然的过程中,制造能代替人力劳动的机器一直是人类的梦想。
智能避障电动小车是一个运用传感器、单片机、电机驱动等来实现环境感和自动行驶为一体的高新技术综合体,它在民用和科学研究等发面已获得了广泛应用。
当前的电动小汽车大部分是直线行驶,也有一部分是在遥控下实现前进、后退、转弯、停车等动作.但这并不能满足某些特殊场合下的要求。
因此,本文设计了智能避障小车的控制系统。
它的主要功能是探测前方是否有障碍物,如果有障碍物时,经过判断障碍物的位置,实现避障功能.
智能是现代社会的标志性产物,是以后的发展趋势,它可以按照预先设定的模式在特定的环境里运作,无需人为操作,便可以完成预期达到的目的。
此设计主要体现小车的智能避障模式,设计中理论、分析方法及创新都可以为运输机器人、采矿机器人、家用清洁机器人等自动半自动机器人的设计提供一些依据。
同时小车也是玩具的发展方向,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济增长,形成商业价值。
我国是一个世界大国,在高科技领域也应占据一席之地,汽车的智能化是汽车产业发展的必然趋势,在这种情况下研究智能避障小车具有深远意义。
本智能小车的前景就可用于未来的智能汽车上了,当驾驶员因瞌睡或疏忽时这样的智能汽车的设计就能体现出它的作用。
如果汽车偏离车道或距离障碍物小于安全距离时,汽车就会发出报警,如果驾驶员没有及时作出反应,汽车就会自动减速或停止。
这样的小车同样可以用于月球探测的无人探月车,帮助我们传达月球上的信息,让我们更加的了解月球。
该智能小车是机器人的典型代表。
它有三大部分组成:
传感器检测模块、驱动电路和单片机模块。
机器人要实现自动避障功能,还可以发展循迹功能,感知引导物和障碍物.可以实现小车自动识别路线,选择正确的路线,还可以检测到障碍物自动躲避。
1。
2国内外研究现状
随着科学技术的不断发展,智能机器人在各方面的应用也越来越广泛。
这是一个蓬勃发展而又有无限前景的技术产业领域,在各方面都有很大的发展空间,它将会向着更高定位精度发展,随着智能机器人技术的进步,机器人将从具有单一的判断功能发展到具有学习功能、创新能力的全智能化机器人。
虽说目前我们对智能机器人的研究尚处于探索阶段,但是我们已经取得了很多不凡成就。
在70年代,斯坦福研究院研制出了名叫Shakey的自主智能机器人.目的是研究复杂环境下机器人的自主推理、规划和控制能力。
同时,首个步行机器人也研制成功,对此种机器人结构的研究是为了解决机器人在不平整地理状况下的运动问题。
在此基础上,研制成功了多足步行机器人,其中最著名的是GeneralElectricQuadruped的步行机器人。
从80年代开始美国国防高级研究计划局专门立项制订了地面无人作战平台战略计划。
如DARPR的“战略计算机"计划中的自主地面车辆计划.能源部制订了为期十年的机器人和智能系统计划,以及后来的空间机器人计划。
美国NASA研究的火星探测机器人于1997年登上了火星。
为了在火星上进行距离探测,又开始了新一代样机的研制,命名为Rocky7,并在Lavic湖的岩溶流上和干枯的湖床上进行了成功的实验。
美国的MDARS项目是在著名的保安机器人ROBART的基础上建立的一个多智能机器人平台,后来在指定地点执行巡逻任务。
德国研制了一种轮椅机器人,并在乌尔姆市中心车站的客流高峰期的环境中和1998年汉诺威工业商品展览会大厅环境中进行了超过36消失的考验,所表现出的性能是其它现存的轮椅机器人和智能机器人所不可比的。
日本开发出协助盲人行走的导盲机器人LZI。
清华大学智能机器人于1994年通过鉴定,涉及到五个方面的关键技术:
基于地图的全局路径规划研究;基于传感器信息的局部路径规划研究;路径规划的仿真技术研究;传感器技术、信息融合技术研究;智能机器人的设计和实现。
另外,还有中国科学院沈阳自动化研究所的AGV和防爆机器人;中国科学院自动化所自行设计制造的全方位智能机器人视觉导航系统;哈尔滨工业大学于1996年研制成功了导游机器人。
1.3单片机及直流电机的发展
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等共跟那个集成到一块硅片上的一个小而完善的微型计算机系统。
从上世纪80年代的4位、8位单片机,发展到现在的300M的高速单片机。
目前单片机已经参与到我们生活的各个领域,很难找到哪个领域没有单片机的影子。
导弹的导航装置,飞机上不同仪表的控制,计算机的通讯与数据传输,工业自动化过程的控制和数据处理,各种IC卡,豪华汽车的安全系统,录像机、摄像机、全自动型洗衣机控制,以及程控玩具、电子宠物等等,这些都离不开单片机.更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的高科技人才。
单片机的诞生是计算机发展史上的又一个里程碑。
近年来,随着高科技技术的发展,以及市场对产品功能和性能的要求不断提高,直流电动机的应用更加广泛,尤其是在智能机器人中的应用。
而作为其核心单片机,正朝着多功能、高速度、低功耗、大存储容量和强I/O功能等方向发展.随着计算机功能的不断完善,单片机已更加广泛地应用在各种领域的自动化、智能化等方面,特别是在直流电动机的调速控制系统中。
单片机具有体积小、功能全、抗干扰能力强、可靠性高、结构合理、指令丰富、控制功能强,造价低等优点。
所以选用单片机作为控制系统的核心。
直流电机PWM控制系统的主要功能包括:
对直流电机的加速、减速,能够很方便的实现电机的智能控制。
直流电机PWM控制模块电路主要由STC89C52单片机的I/O端口、定时计数器、外部中断扩展等控制直流电机的加速、减速以及转弯,并且可以调整电机的转速。
其间是通过STC89C52单片机产生脉宽可调的脉冲信号输入到L298驱动芯片来控制直流电机工作.
早期直流传动控制由模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂电压、零漂电压等,使得模拟直流传动的控制系统精度以及可靠性都比较低。
随着计算机技术的发展,微处理器已经越来越多的应用于直流传动系统,实现了全数字化控制。
微处理器已数字信号工作,控制手段灵活方便,抗干扰能力强.所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的时代。
随着集成电路级超大规模集成电路制造工艺的发展,微处理器性价比越来越高。
此外,由于电力电子技术的发展,制作工艺的提升,使得大功率电子器件的性能大大提高。
使微处理器普遍用于控制电机成为可能,利用微处理器控制电机完成各种新的、高性能的控制策略,使电机的各种能力得到充分发挥,使电机的性能更符合工业生产使用要求,还促使了电机生产商研发出各种如步进电机、无刷直流电机、开关磁阻电动机等便于控制且使用的新型电机。
对于简单的微处理器控制电机,只需利用微处理器控制继电器、电子开关元器件,使电路开通或关断就可实现对电机的控制。
现在带微处理器的可编程控制器已经在各种机床设备和各种生产流水线中普遍应用,通过对可编程控制器进行编程就可以实现对电机的自动化控制。
对于复杂的微处理器控制电机,则要利用微处理器控制电压、电流、转矩、转速、转角等,使电机按给定的指令工作。
通过微处理器控制,可使电机的性能有很大的提高。
交流电机,不论是异步电动机还是同步电动机,结构都比直流电机简单,工作也比直流电机可靠,但在频率恒定的电网上运行时,它们的速度不能方便的调节。
高性能的微处理器的实现,为采用新的控制理论和控制策略提供了良好的物质基础,使电机传动的自动化程度大大提高。
1.4课题主要研究内容
系统采用STC89C52单片机作为核心控制单元,小车车体前方的红外线传感器检测前方障碍物,用于判断是否需要转弯,防止小车碰到障碍物。
本设计题目为基于单片机的自动避障小车设计,主要研究小车的避障功能,小车遇到障碍物时,当距离障碍物大于25cm,PWM信号自增,驱动电机加速,小车加速前进,当小于15cm时,PWM信号自减,驱动电机减速,小车减速前进,并且小车采取相应的避障措施。
这里探测装置必不可少,因为红外在距离检测方面的准确定位.所以采用红外线传感器作为探测装置。
运用单片机搭建控制电路,把红外信号接到单片机上,通过单片机对信号的检测和处理,控制外围电路使小车转向,来避开障碍物。
通过H桥驱动电路来控制电机的转向和前进。
2工作原理及总体设计
2.1工作原理
在这里我们采用STC89C52作为控制电路,把两个红外信号接到单片机上,通过单片机对信号的接收和处理,控制外围电路使小车转向,来避开障碍物。
通过H桥驱动电路来控制电机的转向和前进。
通过为微控制芯片对数据进行处理,处理速度远远满足小车的运行和避障的需求。
也可以通过编写不同的程序,增加模块来增加小车的功能.
本小车使用STC89C52单片机作为主控芯片,它通过红外线传感器获知前方的障碍物情况,若不存在障碍物,小车直线前进;若左前方发现障碍物,左前放的红外传感器将信号传给单片机,单片机作出处理后控制小车向右转弯以躲开障碍物;若右前方发现障碍物,右前放的红外传感器将信号传给单片机,单片机作出处理后控制小车向左转弯以躲开障碍物;若正前方发现障碍物,则两个红外传感器将信号传给单片机,单片机作出处理后控制小车倒车至合适距离后,通过传感器传来的信号决定转弯方向,以躲开障碍物。
2。
2总体设计
通过学习相关技术资料可了解到,红外测模块是系统的关键模块之一,红外检测方案的好坏直接关系到整体性能的优劣,因此确定红外检测方案是总体方案的关键。
检测使用的红外传感器是专业的红外避障传感器,当有障碍物时,它能够反映出电平高低的变化,而且更加廉价易得,适合简单的避障。
系统总体设计方框图如图2-1所示.
图2-1系统总体设计方框图
根据系统方案设计,系统包括以下模块:
STC89C52主控模块、L298N电机驱动模块、电源模块、红外检测模块等。
各模块作用如下:
STC89C52主控模块,作为整个智能小车的“大脑",将根据传感器的信号,控制算法做出控制决策,驱动直流电机等完成对智能小车的控制。
电源模块,为整个系统提供合适而又稳定的电源。
红外检测模块,检测障碍信号,为单片机提供前方道路信息。
电机驱动模块,驱动直流电机完成智能车的加减速和转向控制。
3硬件设计
3。
1小车车体设计
小车的车体是整个智能小车的载体,在这个载体上,添加合适的控制单元以实现智能化,因此这个小车车体需要符合相关的设计要求。
我们有以下两种方案可以考虑:
方案1:
市场上存在很多不同型号的电动玩具小车,这种小车都有完整的车体和车轮以及电机和驱动电路.但是这种小车存在很多的缺点,由于是成品电动玩具车,一般都是装配紧凑,要想在其才车体上安装用于检测的传感器十分困难。
还有就是这种小车一般采用的都是前轮转向后轮驱动的模式,不能方便迅速的进行原地90度或180度旋转。
而且这种电动玩具车多为直流电机,力矩小,负载性能差,且不易调速,因此我们放弃了此方案。
方案2:
买现成的车模。
经过反复考虑论证,我们制定了买左右两轮分别驱动,后万向轮转向的车模方案。
即左右轮分别用两个转速和力矩基本完全相同的直流减速电机进行驱动,后装一个万向轮.这样,当两个直流电机转向相反同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车坐标不变的90度和180度的转弯。
综上考虑,本设计选择方案2。
3.2电源模块
本设计为避障小车的设计,由于小车需要独立运行进行避障,因此系统采用电池供电,我们考虑了如下几种方案为系统供电。
方案1:
采用12V蓄电池为系统供电。
蓄电池具有较强的电流驱动能力以及稳定的电压输出性能。
但是蓄电池的体积过于庞大,在小型电动车上使用极为不方便.因此我们放弃了此方案。
方案2:
采用6节1.5V干电池共9V做电源,经过7805的电压变换后为单片机,传感器供电.经过实验验证小车工作时,单片机、传感器的工作电压稳定能够满足系统的要求,而且电池更换方便.
综上所述,本设计采用方案2
3.3电机驱动模块
电机的驱动模块是小车运行的基础,也是小车实现自动避障的实现方法,因此合适的电机驱动模块就显得尤为重要。
我们有以下几种方案可以考虑。
方案1:
利用继电器控制电机,通过继电器的开关来切换小车的速度,此方案电路简单,但是其有严重缺点,就是继电器的响应时间较长,不利于小车较为精准的躲避障碍,且易损坏,寿命较短,可靠性不高。
方案2:
利用电阻或者电位器控制电机,电阻或电位器控制电机的电压,进而达到控制电机速度的目的。
但是,数字电阻元器件成本较高,且电机的电流较大,采用分压的方法会降低效率,而且是指操作困难。
方案3:
利用三极管控制电机,三极管控制电机的电路原理简单,而且加速性能强,利用功率三极管组成的H型桥式电路如下图3—1所示。
图3—1H型桥式电路
用单片机控制功率三极管在占空比可调的状态下工作,精准的对电动机的转速进行调整。
H型桥式电路工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现电机转速大小和运行方向的控制,由于电子三极管的开关速度很快,其稳定性也极强,是被广泛采用的PWM调速技术。
现市面上有很多此种芯片,我选用了L298N,L298N是一个具有高电压大电流的全桥驱动芯片,该驱动芯片的工作频率较高,而且一枚芯片可以控制两个直流电机的运行,还具有控制使能端。
利用该芯片作为电机驱动,操作方便,稳定性好,性能可靠优良。
因此本设计选用方案3。
3.4电机模块
本系统为智能自动巡航电动车,对于电动车来说,其驱动轮电机的选择就显得十分重要。
我们综合考虑了一下两种方案。
方案1:
采用步进电机,步进电机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电动机驱动器,它由脉冲发生控制单元、功率驱动单元、保护单元等组成.驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口。
虽然步进电机已被广泛地应用,但用好步进电机实非易事,它涉及到机械、电机、电子及计算机等许多专业知识.且步进电机输出力矩低,转速升高力矩会下降,在较高转速时会急剧下降,其转速较低,不适用于有特定速度要求的系统。
综合比较考虑,我们放弃了此方案。
方案2:
采用直流减速电机。
直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便.由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生大扭力。
能够较好的满足系统的要求,因此本设计选择此方案.
3.5检测模块
检测模块,是小车自动避障的“眼睛",它的存在至关重要,它为单片机提供障碍信号,为小车的运行提供参考数据.检测的方法很多,比如超声波检测、红外线检测等,综合考虑,红外线线检测更加实用,因此我们采用红外线检测,市场上有现成的红外E18-D50NK光电开关,完全符合我们本次设计的要求,且使用简单,因此我们采用这种红外避障传感器作为检测模块。
3。
6最终方案
经过反复论证,最终确定如下方案:
1、车模用两驱车模。
2、采用STC89C52单片机作为主控制器。
3、用6节干电池供电.
4、用红外E18—D50NK光电开关进行避障巡航。
5、L298N作为直流电机的驱动芯片。
4硬件实现及单元电路设计
4。
1主控制模块
主控制最小系统电路图如图4-1所示:
图4—1最小系统电路图
4。
2单片机的复位电路与振荡电路设计
本系统采用STC系统列单片机,相比其他系列单片机具有很多优点。
一般STC单片机资源比其他单片机要多,而且执行速度快;STC系列单片机使用串口对单片机进行烧写,下载程序较为方便;STC51单片机内部集成了看门狗电路;且具有很强抗干扰能力。
单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。
单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。
当复位电平持续两个机器周期以上时复位有效。
复位电平的持续时间必须大于单片机的两个机器周期。
具体数值可以由RC电路计算出时间常数。
复位电路由上电复位和上电与按键均有效的复位两种基本形式。
上电复位要求接通电源后,单片机自动实现复位操作.上电瞬间RST引脚获得高电平,随着电容器的充电,RST引脚的高电平将逐渐下降。
RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。
上电与按键均有效复位其原理和上电复位基本相同,另外在单片机运行期间,还可以利用按键完成复位操作。
本系统采用上电与按键均有效的复位电路,如下图4-2所示:
图4—2复位电路
单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,单片机的运行速度也就越快,单片机执行的所有指令都要依赖于这种时钟频率.
一般工作条件下,普通晶振频率绝对精度一般可达百万分之五十。
高级晶振频率的精度更高.压控振荡器(VCO)可以在外加电压的作用下于一定范围内调整频率。
晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。