本文是根据第三届全国大学生“飞思卡尔”杯智能汽车大赛要求设计自主识别道路的智能车。整个系统采用了组委会提供的16位单片机mc9s12dg128为核心,模型车本身带有差速器和后轮驱动,需要设计完成基于单片机的自动控制系统使得模型车在封闭的跑道上自主循线运行。
车模与控制器构成一个自动控制系统,如图1,系统硬件以单片机为核心,配有传感器、执行机构以及它们的驱动电路,而信息处理与控制算法由单片机软件完成[1]。系统设计要求单片机把路径的迅速判断、相应的转向伺服电机控制以及直流驱动电机的控制精密的结合在一起。
智能车的设计是在保证模型车可靠运行的前提下,以电路设计简洁、车体灵活性高为原则。设计的两大重点,一是光电传感器的布局和电路设计,一是循线控制算法的设计。
本文第二节主要介绍了光电传感器的电路设计和布局,这是信号采集的关键,相当于智能车的“眼睛”;第三节主要介绍了循线控制算法,这是控制的核心,相当于智能车的“头脑”;最后在第四节对智能车的硬件、软件设计及实验情况进行了大体说明。
光电传感器
光电传感器的选择及电路设计
光电传感器位于智能车的最前方,起到预先判断路径的作用。其发射的光对白色和黑色有不同的反射率,因此能得到不同的电压值,采进单片机后通过一定的算法比较电压来判断黑线的位置,从而控制舵机的转动[2]。这种方法易于实现,响应速度快,实时性好,成本低。
本文选用性价比基本适合的反射式红外传感器tcrt5000。红外光电传感器电路的设计形式多种多样,由于本文算法中采用的是传感器阵列经验判断方法,为了控制简便采用数字量输出传感器电路,如图2所示。
光电管采用脉冲调制式发光,即vo是震荡电路产生的脉冲电压,这样易滤除外界干扰。虽然电路相对复杂,但足以保证模型车的稳定行驶[3]。