您好, 访客   登录/注册

基于STM32F4的智能避障小车设计

来源:用户上传      作者: 罗晓 陈扬 姚宏杰 景若溪

  摘要:本文设计的智能车以STM32F405微控制器作为核心控制单元,通过3个红外传感器检测赛道信息,使用速度闭环控制,使智能车实现避障行驶。
  关键词:红外传感器;闭环控制;避障智能小车
  中图分类号:TP242 文献标识码:A 文章编号:1674-7712 (2012) 18-0001-02
  随着电子技术和智能控制技术的发展,智能车已经成为自动控制领域内的一个研究热点。本文研究的智能小车可以利用传感器自动获取目标道路信息,同时还能自动避开障碍物。
  一、总体设计
  为了让小车精确快速的通过赛道,我们设计了整个小车的外形(图1),使小车尽量的小并且轻。所以我们选用了玻璃纤维板作为底盘,并且只使用了两个电机,用差速转弯的方式控制小车行进,并且自行设计了电路板。最大化的减小的车的体积和重量,平衡了车的整体重心。
  二、硬件设计
  本设计采用ST公司Cortex-M4驱动的32位闪存微处理器STM32F405作为硬件平台,配以电源模块、电机驱动模块、传感器信号输入等相应的外围电路和输入输出接口电路等,构成一套完整的硬件系统(见图2)。
  (二)核心微处理器
  本系统采用STM32F405作为核心微处理器,这是由ST公司年推出的ARMCortex-M4处理器,是ARM专门开发的最新嵌入式处理器。
  在系统中,单片机主要执行以下工作:
  1.采集红外测障传感器信号,获取赛道路况信息;
  2.采集编码器脉冲数,进行速度PID环的运算;
  3.输出所需的左右轮PWM。
  (三)电机驱动模块
  本系统采用H桥集成芯片ZXMHC3F381N8作为电机驱动芯片,该芯片由4个MOS管集成而成,能满足系统电机的工作转矩和转速。
  本智能小车中采用脉宽调制方式(即PWM,PulseWidth Modulation)来调整电机的转速和转向。脉宽调制是通过改变发出的脉冲宽度来调节输入到电机的平均电压,也就是单片机提供给电机的信号是方波,通过不同方波的平均电压不同来改变电机转速。
  (四)红外测障传感器
  红外测障传感器(图4)连接到主控制板板数字输入口上。通过M3螺丝将传感器模块直接固定在智能小车底盘上。
  红外测障传感器在使用过程中,当前方有障碍物时,发射的红外就会被反射回来,红外接收传感器接收到反射光,认为此时传感器前方有障碍物。单片机采集到此信号后,控制小车运动。
  通过调节红外测障传感器上的电位器来改变其检测距离。当顺时针旋转电位器时,红外发射变强,检测距离变远;当逆时针旋转电位器时,红外发射变弱,检测距离变近。
  在使用中,红外测障传感器对于不同颜色与粗糙程度的障碍物,使用中其检测距离不一样。当障碍物颜色是黑色或深色时,会吸收大部分红外光,只反射回一小部分,有时会使红外接收传感器接收到的红外光强度不够,不足以产生有障碍的信号;当障碍物颜色是白色或浅色时,正好相反。
  三、程序设计
  系统电机使用闭环控制系统,在采集到编码器的脉冲信号后,进行速度PID闭环的运算。通过定期检测红外测障的数据,获得跑道数据信息后,进行路径规划,输出所需的左右轮的目标速度。加入PID运算。控制轮速以完成小车避障行驶。图5是程序流程图。
  其中stateL代表左红外测障传感器状态,若为“1”则表明未检测到左边缘,反之则表明检测到左边缘;stateR代表右红外测障传感器状态,若为“1”则表明未检测到右边缘,反之则表明检测到右边缘;stateM代表中红外测障传感器状态,若为“1”则表明未检测到前边缘,反之则表明检测到前边缘。
  在方向控制上,通过左右轮的转速差来控制。左轮较右轮转速快,则控制智能车右转,反之则控制智能车左转。
  四、结束语
  本文以追求智能车避障行驶稳定性为前提,提出了智能车的整体设计思想,硬件设计,软件设计。在机械结构方面,我们以电脑鼠作为设计思想,设计了轻巧的车体结构。在电路方面,我们以模块形式分类,在最小系统、主板、电机驱动等模块分别设计,经过不断实验,最后决定了我们最终的电路图。在程序方面,我们使用C语言编程,经过不断讨论、改进,终于设计出一套比较通用稳定的智能避障程序。在这套算法中,我们结合路况调整车速,保证在最短时间内避障跑完全程。
  参考文献:
  [1]卓晴.学做智能车:挑战“飞思卡尔”杯[M].北京:北京航空航天大学出版社,2007.
  [2]黄志伟.STM32F32位ARM微控制器应用设计与实践[M].北京:北京航空航天大学出版社,2012.
  [3]谭浩强.C程序设计[M].北京:清华大学出版社,2003.
  [4]高海宾.AltiumDesigner10从入门到精通[M].北京:机械工业出版社,2012.
转载注明来源:https://www.xzbu.com/8/view-4375405.htm