新闻中心

EEPW首页 > 物联网与传感器 > 设计应用 > 基于智能车非匀速行驶记忆算法的研究和实现

基于智能车非匀速行驶记忆算法的研究和实现

—— Research and Realization of Remembering Algorithm in Smart Car with Non-Fixed Speed
作者:袁三男,汪剑光,张云峰,吕尧时间:2009-06-19来源:电子产品世界收藏

  摘要: 本文对基于非匀速行驶状态下光电的记忆算法进行了深入研究,详细介绍了系统硬件设计、原始数据的记忆、数据处理和记忆算法的实现。实践表明,使用记忆算法之后,由于对整个赛道有了超前的预知性,的速度有了较大幅度的提高。随着比赛赛道的长度和复杂程度的进一步加大,记忆算法正进一步地发挥着作用。

本文引用地址:http://www.eepw.com.cn/article/95472.htm

  1、概述:

  作者参加了第二届“杯”全国大学生比赛,在智能车设计和比赛过程中得到了一些经验和结果,特别是针对记忆算法进行了研究和不断改进。按照竞赛规定,智能车在以白板为背景、中间黑线作为引导线的赛道上自动行驶,在不驶离赛道的前提下,以行驶的速度快慢为比赛成绩的好坏。因此必须使用采集系统将赛道信息采集后按照黑线行驶。比赛规则规定,在每轮比赛中每辆赛车在赛道上连续跑两圈,以起始线为计时点,以用时短的一圈计单轮成绩;每辆赛车以在两个单轮成绩中的较好成绩为赛车成绩。本文设计的赛车使用的采集系统为光电,光电只能采集当前的黑白信息,采集距离有限,无法预测前方道路,因此,为了实现各种优化算法,如转弯走内道、前方直线则预先加速、转弯提前减速等方法,必须借助于记忆算法,预先知道前方道路信息,而比赛规则的制订也为记忆算法的实现成为可能。

  记忆算法的原理分两部分,前一部分即第一圈采用边行驶边记忆道路信息。第二部分即第二圈按照记忆的数据就预先知道了前方的道路信息,从而可以实现各种优化算法。通常情况下,为了实现记忆算法,必须记住第一圈行使时每一点的转弯或直行信息,因此第一圈必须按照匀速行驶。为了更好地提高速度,本文采取第一圈就按照其他各类快速算法在非预先知道道路信息的情况下快速非匀速行驶,在行驶过程中按照特定的算法和数据格式存储道路信息,第二圈在此基础上按照预先记忆的道路信息实现更快地行使。这样在第一圈时就达到了最佳速度,即使第二圈由于其他原因冲出赛道,也能得到很好的成绩,而第二圈按照记忆算法和其他最佳算法的实现得到更快的速度。

  2、硬件实现原理:

  按照竞赛的某些规定,本文设计了如图1所示的硬件原理框图。  

 

  其中主控CPU规定使用Freescale的MC9SDG128B,系统供电为7.2V电池。为了提高效率,除了为MCU、Hall测速和红外传感器提供5V供电外,系统中还由LM2596提供6V供电给舵机,使得舵机灵敏度提高,而电机直接使用7.2V电池供电。红外传感器采用一排13对红外发射接收管,利用其接收的电平大小经过MCU的ADC后由MCU判断当前黑线所处的位置,为了降低功耗,系统中还增加了MOS开关管,当检测某红外传感器时该传感器供电打开,其余的则关闭,实验证明,增加该功能后,系统功耗减小很大,原来开了几圈后小车速度会因为电池供电不足而降速,而加了功率开关后开十几圈都不会降速。

  赛道中具有十字交叉路口,同时必须判断起始(即终止线),因此智能车预先可以配置当前赛道的总的十字交叉个数,同时通过软件算法可以判断出是否经过世纪交叉口(起始终止线可以作为一个十字交叉线)。

  系统运行时,按照红外传感器采集的信息可以判断出当前引导线的位置,即在小车的左边、中间或右边,偏离多少,MCU据此以及由Hall测速传感器获知的当前小车的速度确定小车当前的行为,主要控制舵机即小车的方向和电机即小车的速度。

  3、软件控制算法:

  系统软件控制主要包括两部分,也即记忆算法的两个过程,从行驶过程中看即第一圈和第二圈,其流程框图如图2所示。  


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭