第一届“飞思卡尔”杯全国大学生智能汽车邀请赛技术报告附件BABS思想在智能小车设计中的应用[注]学校:桂林电子科技大学队伍名称:蜗牛1号参赛队员:向斌牛晓东周子程带队教师:林科注:研究论文附录B等内容是可以选择部分。关于技术报告和研究论文使用授权的说明本人完全了解第一届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。参赛队员签名:带队教师签名:日期:i目录第一章引言..................................................1第二章智能小车设计简介.........................................3第三章机械结构安装与改造.....................................4第四章硬件电路设计............................................64.1电源管理模块............................................64.2、路径识别模块...........................................84.2.1识别模块.............................................84.2.2、传感器信号的处理....................................94.3电机驱动模块.............................................104.4测速模块..................................................124.5、显示与键盘电路...........................................134.5.1显示:..................................................134.5.2键盘:..................................................14第五章控制算法.................................................16第六章结论.....................................................206.1、模型车的主要技术参数说明:..................................206.2、制作小结:.................................................20参考文献.........................................................i附录A程序源代码...............................................ii附录BABS思想在智能小车设计中的应用..........................xxiv1第一章引言2006年8月,第一届“Freescale”杯全国大学生智能汽车邀请赛将于在清华大学拉开帷幕。该比赛提供了的专用汽车模型,轮胎,可充电式电池,直流电机,舵机等器件,用微控制器芯片MC9S12DG128B作为智能模型车的主控芯片,涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的大学生课外科技创意性比赛。参赛队伍要制作一个能够自主识别路线的智能车,在专门设计的跑道上自动识别道路行驶,最后组委会将综合各个参赛队伍的赛车单圈最短时间、技术报告质量等各项分数进行最终的评奖。由于此次比赛为第一届,所以给我们带来的既是机遇又是挑战,为了更好的制作出性能优异的智能车,这不仅需要我们参赛队伍能熟练的学习和应用组委会提供的嵌入式软件开发工具软件codewarrior和在线开发手段,而且要自行设计和制作可以自动识别路径的方案、电机的驱动电路、模型车的车速传感电路、模型车转向伺服电机的驱动,特别是微控制器MC9SDG128B控制软件的编程的优化,等等。本智能车的主要控制电路部分由自动识别路径电路,电源管理电路,电机驱动电路,自动识别路径电路,电机驱动电路,车速传感器电路以及舵机控制电路组成,我们将根据组委会统一提供的控制芯片MC9S12DG128B,电机以及舵机,对整个电路进行优化配置,以达到所能达到的最佳方案。在制作过程中,我们设计了很多种不同的方案,并对其一一反复实验,对每一种方案的优缺点进行分析论证,为实现最佳方案提供备份。特别是传感器部分,我们通过对不同个数的传感器之间的组合测试,来选择出最佳搭配方式。最后我们没有选择CCD与传感器组合的方式,而是倾向了双排传感器的组合。由于实现自动设别路径功能的硬件电路技术相对比较成熟,所以算法设计应该是各参赛队伍成败的关键所在,理所当然的也就成为了我们主要攻击的对象,以好的执行效果和可读性强的原则设计出比较优越的控制程序,根据电路与算法的结合,从而选择出搭配最有效的一种配置。硬件与软件的详细的设计过程和思路将在后续章节中论述!第二章主要介绍制作的主要思路及结构,第三、第四章介绍硬件电路的设计及机械结构的安装和固定,第五章着重分析小智能车的控制算法,第六章就是分析在在制作过程中遇到的问题和解决的方法,并提出小车控制方面的一些改进措施,在说明我们设计的智能车的主要性能参数此次比赛给予了我们比较长的准备时间,在这段时间里面,为了掌握之前并没第一届全国大学生智能汽车邀请赛技术报告2有使用过的组委会要求使用的MC9S12DG128B控制芯片,我们除了充分利用组委会提供的单片机嵌入式应用的在线开发方法一书外,还翻阅了大量的其它资料,如3886芯片,电机驱动资料等等。当然,为了设计出更加高效的算法,主要是PD算法,还参考了很多关于控制算法方面的相关文献。具体参考的文献资料名称将附在本技术报告后面的附录中!这一段时间以来知识的学习对于我们知识的成长起到了很关键的作用,队友间的相互协作也让我们更深刻的意识到团队精神的力量源泉。让我们更加有信心的去迎接这次挑战。最后,期待着我们这2支队伍都能够取得最理想的成绩!加油吧!速度没有极限,挑战无处不在!3第二章智能小车设计简介本设计以MC9S12DG128B为核心控制芯片。本设计充分地利用了该芯片的功能。使用了其中的15通道AD转换、一通道16位PWM(转向舵机控制)、一通道8位PWM(驱动电机控制)、一个16位的自由定时器和若干IO口等资源。本设计中MCU电源与舵机电源都使用稳压电路组成的电源,MCU电源与舵机电源是独立的,都是使用高效的开关稳压电路组成的稳压电源。路面的状况通过MCU自带的AD转换器采样红外传感器的电压后经过处理来识别,识别后经过PD算法通过一个16位的PWM通道直接把PWM波形送给舵机控制小车的转向;另外还有一个光电测速传感器的信号经过放大、整形和1/4分频后通过MCU计算两个脉冲的上升沿的时间,经处P算法处理后通过一个8位的PWM通道送到电机驱动电路控制电机的转速和转向。为了方便调整小车的一些参数,我们加了一些附加电路—键盘和显示电路。通过一个4X4的小键盘可能方便的调整小车的参数,通过一个LCD显示屏可直观地看到所设置的参数。系统结构框图如图2.1:图2.1系统结构图各个模块将在后面的章节中详细介绍!4第三章机械结构安装与改造根据小车配备的常规安装图的步骤,把小车的轮子装上后,我们把控制小车转向的舵机安装在车身前部,用来控制前轮的转向,电机的安装位置没有改变,依然安装在车身的后部,用来驱动后轮控制小车的前进、后退、加速或者减速甚至刹车。由于硬件电路中我们设计了测速电路,我们的测速电路是采取红外光电测速传感器,而红外光电测速传感器的安装位置及测速方式是我们需要考虑的问题,经过考虑和分析实验结果,我们用了一个直径约为16.0mm的带栅格的小轮同心地固定在一个直径约21.7mm的小轮上,然后把两个小轮用弹性较好的铁丝固定在小车后部车轮的中间,与红外测速传感器安装在一起。通过齿轮计算脉冲周期来计算小车速度。在前面一章中对于识别路径的红外传感器的安装已经做过简单介绍,前排12个传感器用铝条搭成的支架安装在离小车前轮正前方约16厘米处,而后排3个传感器直接用铜柱安装在舵机前方。小车的机械结构安装固定后的俯视图如下图3.1所示:车身模型确定后,主控板就可以量身定做了,从上面俯视图可知,主控板用支柱以及螺丝固定在身上中间的正上方,而液晶显示屏则设计在主控板前部,HCS12开发板则在主控板中间,4×4键盘控制电路就安装在主控板后部.第三章机械结构安装与改造5图3.1智能车模型俯视图第四章硬件电路设计4.1电源管理模块智能车系统根据各部件正常工作的需要,对配发的标准车模用7.2V2000mAh镍镉电池不能直接地供给单片机与舵机使用,必需经过稳压后才能送给单片机与舵机。其中,单片机的工作电压为5V,而舵机工作电压范围4.8V到6V,舵机的工作电流比较大。驱动电机的工作电流比较大,工作时有可能把电池的电压拉到7V以下。如使用一般的稳压芯片如7805作为稳压电路,其压差有2V之多,要把7V左右的电压稳定到5V,会很不稳定,由于7805是模拟电路的线性调节的,所以效率很低。如果要提供6V的电压给舵机,那更是不可能。为了解决这个问题,我们选择了开关稳压电路。本智能车的电源管理框图如图4.1电源管理框图我们用一块MAX639组成一个5V的稳压电路给单片机供电。MAX639能提供200mA的电流,其压差仅为0.5V,效率可达91%~94%。用一块MAX758A为循线电路和舵机供电。MAX758A能提供750mA的电流,其压差约为1.0V,效率可达85%~90%。直流电机可以使用7.2V镍镉电池直接供电。为了消除电机干扰,防止单片机死机,7.2V2000mAh镍镉电池供电需要经过一个滤波电路,电路原理图如下图4.2:第四章硬件电路设计7图4.2电源滤波电路MAX639电源稳压电路如图4.3,MAX758A电源稳压电路如图4.4图4.3MAX639电源稳压电路图4.4MAX758A电源稳压电路其中VCC给单片机以及测速电路供电,并且作为AD采样的参考电压;而SVCC第一届全国大学生智能汽车邀请赛技术报告8作为舵机的供电电压,AVCC作为循线电路的供电电压!调节滑动电阻RX1可以改变SVCC和AVCC的电压值,一般调节两个值在5V至6V之间。一个稳定的供电电路,可以保证智能车各个控制电路的正常工作,使小车更加稳定、快速地完成自动识别黑线路径的任务。4.2、路径识别模块4.2.1识别模块智能车的功能是在白底黑线的跑道上自动识别路线行驶,所以检测路面信息是实现小车功能的前提,只有准确收集路面信息,作出快速判断,才能更加稳定快速地在路径上前进!也就是说路径识别模块是智能车系统的关键模块之一,路径识别方案的好坏,直接关系到最终性能的优劣。关于循线方案的确定,对比现有的技术,采用CCD传感器循线、可见光、红外传感器循线的技术都是我们最为熟悉的技术。CCD传感器循迹方案的优点是可以更远更早地感知赛道的变化,但是信号处理比较复杂,运算量大,利用该比赛规定的微控制器很难实时地处理这么复杂的图像信号.而使用可见光循线电路虽简单,但是容易受环境光源的干扰。而红外传感器循线方案,电路也简单,信号的处理也比较快,受环境光源的干扰也非常小。红外循线传感器是由一系列红外发射管、红外接收管组成,由于赛道中存在轨迹指示黑线,落在黑线区域内的红外接收管接收到的反射光线强度与白色的赛道不同,由此判断小车与黑线的偏移量。但是红外传感器的排列方法、个数、彼此之间的间隔都与控制算法密切相关。如果没有设计好红外传感器之间的位置和它