韩国智能模型车技术方案分析清华大学汽车安全与节能国家重点实验室黄开胜金华民蒋狄南摘要:韩国智能模型车竞赛是韩国汉阳大学举办的以单片机控制为核心的可以自行寻迹行驶、以速度快慢为主要评判指标的大学生课外科技竞赛,国内也将举办此类比赛。为了帮助参赛队伍更好地认识智能模型车的特点,提高参赛队伍水平,本文针对2005年韩国大学生智能模型车竞赛的16支队伍的技术方案,对电源管理、路径识别、电机驱动、转向控制、车速传感等硬件结构及软件控制特点进行了分析,对智能模型车的设计提出了建议。关键词:智能车;道路自动识别;单片机;控制引言韩国大学生智能模型车竞赛是韩国汉阳大学汽车控制实验室在飞思卡尔半导体公司资助下举办的以HCS12单片机为核心的大学生课外科技竞赛。组委会将提供一个标准的汽车模型、直流电机和可充电式电池,参赛队伍要制作一个能够自主识别路线的智能车,在专门设计的跑道上自动识别道路行驶,谁最快跑完全程而没有冲出跑道并且技术报告评分较高,谁就是获胜者。制作智能车,需要参赛队伍学习和应用嵌入式软件开发工具软件codewarrior和在线开发手段,自行设计和制作可以自动识别路径的方案、电机的驱动电路、模型车的车速传感电路、模型车转向伺服电机的驱动以及微控制器MC68S912DP256控制软件的编程,等等。其专业知识涉及控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科,对学生的知识融合和实践动手能力的培养,对高等学校控制及汽车电子学科学术水平的提高,具有良好的长期的推动作用。随着赛事的逐年开展,将不仅有助于大学生自主创新能力的提高,对于高校相关学科领域学术水平的提升也有一定帮助,最终将有助于汽车企业的自主创新,得到企业的认可。这项赛事在韩国的成功可以证明这一点。2000年智能车比赛首先由韩国汉阳大学承办开展起来,每年全韩国大约有100余支大学生队伍报名并准予参赛,至今已举办5届,得到了众多高校和大学生的欢迎,也逐渐得到了企业界的极大关注。韩国现代公司自2004年开始免费捐赠了一辆轿车作为赛事的特等奖项。德国宝马公司也提供了不菲的资助,邀请3名获奖学生到德国宝马公司研究所访问,2005年SUNMOON大学的参赛者获得了这一殊荣,图1为他们设计的智能车模型。我国将于2006年8月举办第一届大学生智能模型车竞赛。为了帮助参赛队伍更好地认识智能模型车的特点,提高参赛队伍水平,本文针对汉阳大学汽车控制实验室在网上公布的2005年韩国大学生智能模型车竞赛16支队伍的技术方案,对电源管理、路径识别、电机驱动、转向控制、车速传感等硬件结构及软件控制特点进行了分析,对智能模型车的设计提出了建议。图1韩国SUNMOON大学参赛车智能车系统方案智能车系统以MC68S912DP256为核心,为了使智能车能够快速行驶,单片机必须把路径的迅速判断、相应的转向伺服电机控制以及直流驱动电机的控制精密地结合在一起。如果传感器部分的数据没有正确地采集和识别,转向伺服电机控制的失当,都会造成模型车严重抖动甚至偏离赛道;如果直流电机的驱动控制效果不好,也会造成直线路段速度上不去,弯曲路段入弯速度过快等问题。智能车系统一般由电源模块、传感器模块、直流电机驱动模块、路径识别模块、通讯及调试模块、单片机模块等组成。其中,转向伺服电机一般由单片机直接驱动,转向伺服电机的型号主要有FUTOBA、SANWA和HITEC(HS)三种,其性能指标参数基本相同,国内竞赛统一采用了SANWA牌的转向伺服电机;为了调试的方便,有的参赛队伍在组委会提供的嵌入式单片机开发调试接口模块BDM、Codewarrior基础之上,还加上了蓝牙通讯模块;也有的参赛队伍在车上加装了LCD显示屏,几个主要的参数可以方便地显示和在线调整。车辆的后轮驱动是主流,但是也有参赛队采用了4轮驱动的方案。在速度控制上,为了提高行驶特别是弯道行驶的稳定性,有些队还采用了自行制作的解码器来感知车速的变化,从而更有效地控制了速度。系统结构简图见图2。智能车硬件结构特点电源管理模块图2系统结构简图智能车系统根据各部件正常工作的需要,对配发的标准车模用7.2V2000mAhNi-cd蓄电池进行电压调节。其中,单片机系统、路径识别的光电传感器和接收器电路、车速传感器电路需要5V电压,伺服电机工作电压范围4.8V到6V,直流电机可以使用7.2V2000mAhNi-cd蓄电池直接供电。智能车电压调节电路示例见图3。图3电压调节图最常见的电源管理芯片是7805和7806。考虑到由驱动电机引起的电压瞬间下降的现象,低压降的电压调节器如LM2940、LM2575等也被广泛地采用。路径识别模块路径识别模块是智能车系统的关键模块之一,路径识别方案的好坏,直接关系到最终性能的优劣。在以往比赛中光电传感器寻迹方案应用最多,单独采用CCD摄像头寻迹方案或者CCD摄像头寻迹与光电传感器寻迹结合在一起的方案也都有应用。所谓光电传感器寻迹方案,即路径识别电路由一系列发光二极管、接收二极管组成,由于赛道中存在轨迹指示黑线,落在黑线区域内的光电二极管接收到的反射光线强度与白色的赛道不同,由此判断行车的方向。光电传感器寻迹方案的优点是电路简单、信号处理速度快。光电传感器的排列方法、个数、彼此之间的间隔都与控制方法密切相关,彼此之间的影响将另文专门叙述。但一般的认识是,在不受到外部因素影响的前提下,能够感知前方的距离越远,行驶效率越高。图4多个光电传感器的寻迹电路由于光电传感器电路板不可能伸出车体太远,因此不少参赛队伍调整了光电传感器电路板与地面的夹角,使光电传感器可以感知更远一点的赛道情况。图5仅3个光电传感器的寻迹电路图4、图5是两种典型的光电寻迹方案。图4中模型车采用了8对光电传感器且分布得较宽,图5中模型车只采用了3对光电传感器,放置在向外伸出的小电路板上,探测的范围较小。具体何种方案合适,与光电传感器扫描前方的距离和宽度以及控制策略密切相关。在光电寻迹方案中,为了得到质量较高的接收信号,一般还附加了由电阻、电容组成的RC高通滤波器。这样就能够一定程度上避免由外部光线因素引起的路线识别不正确问题。有的模型车设计的传感器离地面较远,为了能够接收更多的从发光传感器反射过来的光线,也有使用凸透镜的情况。CCD摄像头寻迹方案的优点是可以更远更早地感知赛道的变化,但是信号处理比较复杂,如何对摄像头记录的图像进行分割和识别,加快处理速度是摄像头方案的难点之一。图6是一款以CCD摄像头为路径识别传感器的模型车。直流电机驱动模块直流电机的控制一般由单片机的PWM信号来完成,驱动芯片一般采用飞思卡尔半导体公司的半桥式驱动器MC33886。电路图示见图7。部分设计没有采用PWM的控制方式,直流电机的电压由一个可调电压的低压降电压调节器,如LM2575ADJ来完成,单片机控制LM2575ADJ的电压调节端口。部分设计没有采用飞思卡尔半导体公司的桥式驱动器MC33886,而是采用了MOSFET芯片IRF540等驱动。考虑到智能车在直线加速区间的末端可能会遇到突然出现的拐弯区间,部分模型车设计了专门的制动部。值得注意的是MC33886具有制动的功能,在行驶过程中可以通过单片机的控制使直流电机紧急制动。但是在韩国智能车的设计中没有见到类似的应用。智能车控制方案及软件流程单片机系统需要接收路径识别电路的信号、车速传感器的信号,采用某种路径搜索算法进行寻线判断,进而控制转向伺服电机和直流驱动电机的工作。单片机的控制功能框图见图8。韩国智能车控制策略可以分为速度优先型和稳定优先型两种,即有的控制目标锁定在尽可能快地行驶上,有的重点放在智能车行驶的稳定性上。总之,设计目标不同,接下来的控制方法也就随之不同,从而产生了各种各样的设计方案。智能模型车的路径搜索算法(LineSearchingAlgorithm)是智能车设计的关键部分,智能车设计的大部分工作都是围绕它来展开的。下面介绍三种不同的路径搜索方法。1、利用8对传感器进行道路识别,每个传感器间隔2厘米,成直线排列。传感器对白色的反射率设为最大,对黑色的反射率设为最小。把最大、最小值之间分为四个index(0,1,2,3)区间,通过对各个传感器index值的组合基本能够确定智能车的位置。但划分成4个区间不足以精确控制方向,因此,又把每一个区间划分成12个二重区间,即每一个传感器index区间增加到48个。此时对位置和行驶方向都能较精确的控制。但这种方法对识别道路的计算量大,计算时间较长。2、使用4对传感器,分别安装在智能车前部的左右两侧,4对传感器之间的间隔分别是4厘米、8厘米、4厘米。先使用内侧的两对传感器来识别路径,再使用外侧的两对传感器进行二次识别。当黑色路线在四个传感器的正中间位置时ADC值最小,而有偏离时ADC值就会变大。利用此原理得到路线相对位置偏差。传感器工作情况如图9所示。这种方法的特点是用了较少个数的传感器进行道路识别,而且充分利用MCU里的ADC(AnalogtoDigitalConverter)功能。3、采用三个传感器进行线路识别,传感器放置在伸出车体的小电路板上(见图5)。安装在两边的传感器,可以算出偏移量及偏移方向。中间的传感器主要负责判断智能车是否脱离路线。小电路板可以用一个伺服电机控制左右轻微摆动来寻线。转向伺服电机和驱动电机一般采用PID控制,部分设计仅对驱动电机采用PD控制,对伺服电机采用P控制,也能较好地完成速度和转向的控制。常见的其他控制方法,如模糊控制等,在2004和2005年公开的技术方案中没有涉及。下面简单介绍驱动电机的PID控制算法。对驱动电机的控制,通过下面公式实现。其中,、:当前和上次操作量:当前操作量微分、、:当前,上次,上上次偏差、、的数值通过实验得到。为了得到与目标速度的偏差,要利用电机解码器或者其他的转速传感器测量当前驱动电机的速度。图10是PID控制框图。智能车设计的注意事项根据韩国智能车竞赛参赛队在设计中得到的经验看,设计智能车时需要考虑以下几点。1、外部因素外部因素主要有环境光线、赛道材质等因素。以采用光电寻迹方案的智能车为例,如果接收的信号中有很多噪声成分,或者黑白区分不清晰,就很难识别路线,从而对后续的控制过程造成很大影响。因此,合理的传感器离地间隙和反射角度、较好的滤波电路设计都是需要考虑的。2、重量因素整车质量的增加,对系统动力性有较大影响。因此,除了智能车工作必须的电路之外,应尽可能减少车重。即使是必备部件,可应该采用轻量化的设计。比如为了测量模型车的速度,需要在驱动轮上加装转速传感器,一般购买的电机编码器重量都较大,有的队伍就利用鼠标上的光电电路设计制作了一个轻量化的转速传感器,从而大大减小了重量。3、发热因素韩国部分参赛队伍发现,当智能车行驶时由于追求快速,模型车动力源,即直流电机的发热现象很严重。因此,要采取适当的对策避免此现象的发生。4、车轮因素为了达到更快的速度,而且避免在拐角处的滑移现象出现,有的队伍重新选装了模型车的轮胎。在飞思卡尔半导体公司的产品中,有加速度传感器,可以利用MMA6260等双轴惯性传感器,感知前进方向和侧向的加速度变化,防止直线行驶时的车轮打滑和弯道行驶时的侧滑。5、过度转向的避免由于是后轮驱动,在弯曲的路线上加速可能会出现过度转向现象,因此在车辆弯道行驶时需要小心控制车辆的转向速度。6、根据国外的经验,为了提高行驶稳定性,很多设计都把重点放在了使传感器感知更远的距离上。7、提高转向伺服电机的反应速度。8、探索更有效的行驶算法以及设计快速识别路线的系统。为了适应各种各样具有挑战性的赛道,控制方法的简单、可靠往往比复杂的控制更能取得好的成绩。参考文献:•fttp://race.acelab.org.图6采用CCD摄像头寻迹的模型车图7MC33886电路示意图图8单片机控制功能框图图9传感器布置及发光二极管照射前方示意图图10PID控制块图