基于光电传感器的能自主识别道路的智能车 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

基于光电传感器的能自主识别道路的智能车

来源:中国一卡通网  作者:不详  发布时间:2012-10-23 09:31:02  字体:[ ]

关键字:自主识别  单片机  自动控制系统  

摘   要:  本文主要设计的是一辆自主识别道路的智能车。整个系统采用了16位单片机mc9s12dg128,模型车本身带有差速器和后轮驱动,需要设计完成基于单片机的自动控制系统使得模型车在封闭的跑道上自主循线运行。


  除了以上判断法则之外,还有两种情况需要考虑。即只有一个传感器检测到黑线的情况以及交叉赛道的情况。对于只有一个传感器检测到黑线的情况,同样需要检查上一时刻的传感器信号,例如,某一时刻只有s6检测到黑线,若上一时刻s5检测到黑线,则车模左转,若上一时刻s7检测到黑线,则车模右转。

  对于交叉赛道的情况,则利用一种“滤波”的思想将其“滤”除掉。遇到交叉赛道时,必然会出现同一排几个传感器同时检测到黑线的情况,此时就给模型车一个命令使其直线前进,将交叉赛道排除掉。

  这就是本系统基于经验逻辑判断的循线控制算法,在此基础上通过不断实验调整各个参数可达到较好的控制效果。
 
  三、实验结果

  硬件设计

  电机驱动电路

  电机驱动采用mc33886作为驱动芯片,其原理如图6所示。通过向in1、in2口送出pwm波来控制电机的正转和反转,正转为智能车加速,反转减速。改变pwm波的占空比,可控制电机的转动速率。 


  速度检测电路

  本文采用增量式光电编码器来测量车速,其输出脉冲的频率正比于转速,可以通过测量单位周期内脉冲个数或者脉冲周期得到脉冲的频率,具有较高的精度。

  电源变换电路

  智能车系统配有7.2v的蓄电池,可直接为直流电机供电。单片机、光电传感器和光电编码器所需电压为5v,伺服舵机为6v。这些电压则由7.2v蓄电池调节得来。

  单片机和光电编码器通过稳压芯片7805稳压输出5v电压供电。光电传感器数目多、功耗大,对电源稳定性要求更高,故单独采用效率较高的芯片lm2575对它供电。给舵机供电的芯片选用的是低压差可调输出三端线性稳压器lm1117,片上提供安全操作保护等功能。
  
  软件设计

  软件设计分模块实现,其中主程序包括时钟初始化、i/o口初始化、舵机电机初始化、采集信号和控制算法,程序流程见图7。 


  四、实验结果及其分析

  程序开发过程中完全采用了组委会提供的s12核心开发板,它是由mc9s12dg128单片机构成的最小系统。mc9s12dg128属于hcs12系列单片机,是motorola推出的高性能16位微控制器。它能够提供32-512kb的第三代快闪嵌入式存储器,总线速度可达50mhz,外围时钟可达25mhz。还具备编码效益、片上纠错能力,并与mc68hc11和mc68hc12结构编码向上兼容。mc9s12dg128单片机具有112个引脚,其中与cpu相关的引脚都是兼容的。

  s12开发板上有构成最小系统的复位电路、晶体振荡器及时钟电路,串行接口的rs-232驱动电路,+5v电源插座。单片机中已经写入了开发的监控程序。8个小灯用于调试应用系统。单片机的所有i/o端口都通过两个64芯的欧式插头引出。

  硬件调试时,分别对各模块功能进行测试,重点调节光电传感器,它感知黑白线时输出信号应不同,感知白线时经过比较器输出为低电平,感知黑线时输出为高电平。软件调试时,可利用bdm开发工具,显示单片机运行时其内部存储器中的数据。

  通过硬件软件的联合调试和实验,出现了一些问题,但通过对程序的完善和车模的重新装配后效果大大改善。最终车模可在跑道上循线运行,但仍存在功耗较大,转向延时等问题。

  结语

  本文基于自动控制原理,利用探路模块的道路偏差信号使智能车实现寻迹跟踪,利用pwm技术控制电机的转速和舵机的转向。

  本文重点介绍了光电传感器的排布“w”形布局以及循线控制算法,它们是保证智能车循线运行的关键。“w”形布局使智能车具备了道路预测能力,而循线控制算法使得车体转向快速正确。
 
  通过对智能车仿真和实验表明,整个系统的方案具有可行性,系统的控制策略和软硬件基本合理。控制方面,虽然经典的pid控制在电机调速方面有良好的控制效果,但由于车模的动力学模型因车况不同而变化等原因,使得pid控制效果受到影响,以后可考虑采用模糊控制,使算法更加智能化,系统的适应性更强。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖