《自动避障小车课程设计.docx》由会员分享,可在线阅读,更多相关《自动避障小车课程设计.docx(47页珍藏版)》请在优知文库上搜索。
1、过由/本次厚单片机系统成绩评定表设计课题:自动避障小车学院名称:电气工程学院专业班级:自动1105学生姓名:学号:指导教师:设计地点:31-630设计时间:指导教师意见:成绩:签名:年月曰m由7本次,孽单片机系统课程设计课程设计名称:自动避障小车专业班级:自动11班学生姓名:学号:指导教师:课程设计地点:31-630课程设计时间:单片机系统课程设计任务书1概述441.1研究背景学生姓名专业班级学号题目自动避障小车课题性质产品设计课题来源自拟指导教师主要内容(参数)利用增强版51MCU设计一个自动避障小车,实现以下功能:1、自主判别障碍,自动避开障碍;2、识别出多障碍区和空旷区;3、能在空旷区快
2、速行进,在多障碍区适当速度行进。任务要求(进度)第1天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第2-5天:按照确定的方案设计电路。画出总体电路图,而且选好各个元件的参数、数量类型。然后由原理图生成PCB,用热转印法腐蚀这个电路板。第6-7天:构建硬件系统,并且测试确认都可以正常工作。之后完成机械部分和硬件部分的搭建。第8T1天:编写程序,设计软件,并且开始撰写课程设计报告。第12-13天:整体调试,逐步完善。第14天:完成课程设计报告。主要参考资料【1】张迎新.单片微型计算机原理、应用及接口技术(第2版)M.北京:国防工业出版社,20042单片机程序设计实例清华大学出版社【3】单
3、片机应用设计200例【4】单片机程序设计及应用李华军,电子工业出版社审查意见系(教研室)主任签字:年月日1.2设计思想及基本功能52总体方案设计52. 1方案论证43. 2系统框图52Qrp-i*-W-4-C3硬件电路设计73. 1电源电路83. 2晶振电路93. 3复位电路93. 4键盘电路93. 5显示电路103. 6超声波测距电路114. 7舵机电路124.8 电机驱动电路124.9 电机转速测量电路143. 10设计PCB和腐蚀电路板154系统软件设计173.1 分模块程序设计184. 2主程序设计205系统调试206总结21参考文献:22附录A硬件电路图24附录B源程序251概述1.
4、1 研究背景科技的发展趋势之一就是让几乎所有的东西具有一定的智能。这样的智能一方面可以避免人的复杂性带来的错误,另一方面,作为人的能力的延伸,快速、便捷地适应环境。本文研究的超声波自动避障小车,就是让小车具有一定的智能,可以作为有人驾驶车辆的一部分,帮助司机及早发现司机还未觉察的危险。另外,可以应用在无人控制系统里,代替人类完成信息接收、处理和判断。那么这样它还有更广阔的应用和发展空间。这个月我国嫦娥三号载着玉兔号月球车踏上了月球,已经开始探索活动。玉兔号月球车可以自动寻找有价值的目标,自动避开障碍物,自动寻找最优路径等等,这些功能在原理上都差不多,只是所用仪器以及控制算法的不同。1. 2设计
5、思想及基本功能小车设计的基本思路是:不断扫描前方180左右的水平面内的物体,根据反馈的距离和方位信息确定前方的地形是开阔还是多障碍。然后根据这些信息通过路径最优算法选择前进方向。小车的基本功能是识别空旷区和多障区;自动避开障碍物;能够在空旷区快速行驶。2总体方案设计1.1 方案论证首先是测距方案:方案一:激光测距优点:测速快,适应范围广,精确;不过相对于自动避障小车系统,有点大材小用。激光测距是点对点的测距,一般进行远距离测距比较精确。如是近距离激光测距,必须要涉及到微小时间测量,51MeU无法胜任。因此激光测距方案否定。方案二:超声波测距优点:结构简单,成本低,便于与MCU联机工作。测量范围
6、从5CM到几百米的距离内精度在毫米级。尽管它测量的是点到面的距离,但是定向性满足本小车系统的要求。而且,数据处理简单。可以考虑。方案三:雷达测距不太现实,受到本人技术水平限制,无法驾驭雷达测距系统,此外,雷达应用于较大范围的测量和监控,如果用于本小车,同样涉及到微小时间测量,以及雷达数据处理,51MCU难以胜任。否定!方案四:红外线测距优点:技术难度低,数据处理简单,但是测量开关信号比较好,测量连续信号不够准确。测量的精度有点低。因此不是一种较好的测距方法。综合各因素,选用超声波测距。其次是微控制器的选择:可选的微控制器有:51系列的STC89C52RCSTC12C5A60S2;Tl公司的MS
7、P430G2553;飞思卡尔的MC9S12XS128MAL;意法的STM32F407-Discover;(这些玩儿过一点,而且最小系统板手边都有)根据本系统的需求,需要两路同频率(50hz)的PwM控制两个舵机、一路PWM频率约几千赫兹控制电机、三个个定时器做脉冲捕捉、至少两个外部中断输入、一个并行6800总线接口。除了51系列的两款,其他一片足以胜任。而且对于意法的F407显得大材小用。飞思卡尔的S12比较合适;Tl的G2553的引脚有点少(20个),外围电路设计的会复杂一点,成本也会高一点。60S2用两片比较合适;用89C52比较麻烦,两片也不够。根据个人能力,以及时间和进度方面考虑选用6
8、0S2,60S2呢,它的资源有:完全兼容51的两个定时器TO、TI和两个外部中断;两路拥有独立波特率的串行口;一个PCA定时器,可产生两路同频的PWM;八个10位精度的AD转换通道;一个硬件SPl接口。2. 2系统框图系统框图如图2.2所示图2.2系统框图2.3总体方案设计两片60S2一个做主机,一个做从机,通过串行口通信,传递数据。主机用到的功能有:(1)、定时器TI和外部中断INTl,作用是:测脉宽,用到的IO是P33;P20作为超声波测距模块的触发功能引脚;(2)、定时器TO和PCA产生两路同频率的PWM,作用是:TO的溢出率作为PCA的计数脉冲产生50HZ的PwM控制两路舵机。使用TO
9、作为PCA的时钟源,可以通过改变TO的溢出率改变输出的频率。用到的IO是Pr3和P4;(3)、外部中断INTO接一个按键。(4)、串口一使用独立波特率发生器,与从机通P3P和P3T;(5)、并行数据接口:PO口作为6800并行总线的数据总线P2/、P2-6和P2作为控制总线,分别为:EN(总使能)、RW(读写控制)、CD(命令数据控制);地址总线CS接地,一直处于选通状态。从机用到的功能:(1)、串行口一使用独立波特率发生器P30和P3与主机通讯;(2)、PCA产生一路PWM,P2共同控制电机速度。(3)、定时器TO和Tl作为编码器脉冲计数和测脉宽使用,测量电机的转速。3硬件电路设计首先是单片
10、机的最小系统如图3.1、3.2所示S3OSW-PBIuFStCCrlS(CCr2M XTALINC2XL-Icrystal4 XTALOUTR T10T R1 1121314ECHO15KEYl16KEY217XTA LIN 18M XTALou节Pl .0ADC0CLKOUT2VCCPl .1 /ADClPO .0Pl .2ADC2ECTRXD2P0.1Pl 3/ADC3/CCP0/TXD2PO .2Pl .4ADC4CCP1SSPO .3Pl .5/ADC5/MOSIPO .4Pl .6ADC6MISOPO .5Pl .7ADC7SCLKPO .6R ST/P4 .7PO .7P3 .0/
11、R XDEX.LVDP4.6RST2P3.l /TXDALE/P4.5P3 .2/INTONA/P4 .4P3 .3/INTIP2 .7P3 .4,0CLKOUT0P2 .6P3 .5I/CLKOUTIP2 .5P3 .6P2 .4P3 .7P2 .3XTAL.0P2 .2XTAL. 1P2.IGNDP2 .0Ul38 Dl37 D236 D335 D434 D533 D632 D731302928 EN27 R-W26 C/D25242322 TRIG21 buzz+5 4T 39 DO图3.1单片机的最小系统图3.2单片机的最小系统然后是各个模块电路:2.1 电源电路本系统由7.5V可充电
12、电池供电,由开关电源LM2596转换成5V电压给单片机和测距模块供电。出于对系统的稳定性、可靠性和成本的考虑,选用了开关电源模块作为转换电路。电源部分电路如图3.3图3.4电源模块实物3. 2晶振电路虽然60S2内部有RC振荡电路作为时钟电路的输入源,但是外部连接一个无源晶振电路,可以使单片机的时钟频率更稳定,因而工作更可靠。电路参数:四个电容均为22PF,作为石英晶振频率的微调。石英晶振的频率为12MHZ。3.1 复位电路复位电路是单片机必不可少的基本电路,在调试阶段,可以按下复位按键,使复位引脚保持两个机器周期的低电平,就可以使单片机内部所有电路初始化。电路参数:电容IUF只要保证电容的时
13、间常数大于两个机器周期即可。电阻值为IK欧。3.2 键盘电路键盘电路如图3.5所示IZZlCZJ图3.5键盘电路可以利用外部中断法或查询法检测按键是否按下。这里都采用外部中断的方法检测。3. 5显示电路显示电路如图3.6所示图3.6显示电路采用1603液晶屏显示数字和字符。1603与1602的硬件接口完全一样。不同之处在于1603的RAM区的内容可以全部同时显示在屏幕上,没有屏幕内容的位移切换。可以显示四行。状态指示灯如图3.7所示图3.7状态指示灯这几个LED灯是作为状态指示用的,方便调试。3.6 超声波测距电路超声波测距模块如图3.8所示图3.8超声波测距模块这是超声波模块的接口电路。这个
14、超声波的工作原理是:(1)采用IO触发测距,给至少IOus的高电平信号;(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;(3)有信号返回,通过IO输出一高电平,高电平持续的时间就是(4)超声波从发射到返回的时间.测试距离=(高电平时间*声速(340MS)2;超声波模块测距工作时序图:触发信号(由单片机产生一个宽度大于IOUS的高脉冲,触发模块工作一次):_l模块内部发出的信号(循环发出8个40KHZ的脉冲):输出回响信号(回响信号的高电平持续时间正比于检测的距离):3.7 舵机电路舵机电路如图3.9所示图3.9舵机电路舵机驱动电路。舵机接口是信号线、电源正、地。信号线一般可以直接接到单片机的IO上,但是接多了就不行了,电流太大。这里用了一级三极管驱动。通常用的这种舵机,控制信号是一个周期为20ms占空比在2.5%-12.5%之间的PWM信号,分别对应舵机的控制角为0-180之间。舵机本身有反馈调节,因此,单片机给出一个占空比,舵机就到某一个角度。3. 8电