摘 要
自动避障小车是通过内部和外部传感器检测外部环境并在障碍物中工作的智能设备,可以执行避障循迹运动。本文提供了基于STM32嵌入式微处理器设计系统的技术。该小车采用四轮驱动设计作为其发动机平台和控制系统。选择STM32F103单片机作为主控制器,搭配驱动控制器L298N。整合了丰富的芯片外部资源,为智能设备提供了强大的平台。避开障碍和跟踪轨迹是智能设备应该具备的功能。本文介绍了硬件和软件工具、实现其功能的方法。避开障碍的方法主要有两种方式,红外线和超声波。这两种方法都使用传感器收集数据并传输到STM32F103的CPU,处理来自不同传感器的数据,并集成了前进、转向、后退等循迹避障功能。该过程简单且设置成本低。试验结果通过实验获得,实现了循迹避障功能。
软件设计使用Keil软件,以方便未来的更新和升级。第一章简要介绍了国内外自动化小车领域的研究环境,涉及自动避障、PC上位机和Android手机控制端的设计,并介绍了自动化小车在外太空领域的研究;第二章介绍智能小车硬件系统的设计;第三章介绍了设计软件系统,首先描述了Keil开发环境,然后详细说明了每个模块系统的软件程序;第四章接着描述了系统调试,描述了每个部分调试的细节;最后描述了该主题的工作愿景及不足之处
关键词:STM32F103单片机;红外测距;超声波测距;循迹;智能小车
智能小车结构选择
目前,智能避障小车使用的大多数小车都有轮式、轮辋式、腿式。轮式、轮辋式智能避障小车是良好路况的最理想选择,而腿式步行机器人则是恶劣路况的最理想选择。车轮、脚轮和轮辋可以一起使用,以适应不同的路况最流行移动机器人设计之一是 Mobile Wheel Robot (WMR) [6],它具有悠久的历史和非常先进的机械设计。这篇文章中智能避障小车设计背后的理念就像在街道环境中工作,让智能避障小车可以使用。智能避障小车的主体由小车底盘、电池、直流电机、STM32单片机和各种传感器组成,是所有小车的组成部分。
2.2 设计的可行性分析
本机型采用市场上广为人知的STM32处理器作为本系统的主控制器。Cortex-M3内核嵌入STM32系统,比ARM7更实惠。 STM32 系统设计减小了连接尺寸以实现集成电路。与其他处理器相比,它具有额外的功能,例如电源故障检测、电源复位、电源故障、定时器等类型的功能。电机驱动采用的是L298N,该芯片接收标准电平控制信号,并具有两个使能控制信号,用于检测外部电阻的变化并反转控制电路的变化。为了改变车速,采用PWM脉冲调速器对其进行控制,通过改变直流伺服电机电压来改变平均电压,从而改变车速[10]。
2.3 电源系统设计
当设计一个智能设备时,消耗的电量分为两部分:处理器和计算机。主控制器电压为+3.3V,而L298N驱动器电压为+5V,电机电压为+12V,因此可以选择择+12V作为系统电压。+12V为1.2V4500mAh锂电池的10相电路加上+5V和+3.3V,+12V串联可直接由电池供电。电源转换电路如图2.1所示。
图2.1 +5V电源电路
其他模块
红外光电传感器
红外图像传感器,也称为光电传感器,使用物体反射的红外光和红外电子设备来检测物体的存在位置。通过将输入电流转换为输出信号,接收器通过确定接收到的光的强度和类型来检测目标。发射原理如图2.2所示:
图2.2 红外发射接收原理图
系统硬件测试
首先是硬件部分测试。 硬件部分单元测试旨在确保整个系统完好且连接正确。 在此前提下进行电机控制测试,通过串口修复系统进行测试,将车速通过驱动芯片进行调整,观察电机动作。然后改变程序并检查不同的小车运动形式,如左、右、倒车、倒车、转弯,重复工作。其次,检查红外障碍物传感器是否工作正常,如果车身撞到障碍物,小车是否可以停下来。然后,检查超声波障碍物传感器是否工作正常,如果车身撞到障碍物,小车是否可以停下来。最后,检查红外光电循迹传感器是否工作正常,小车是否可以按照轨迹行驶。
为了测试电机驱动的特性,我编写让小车可以做出动作的程序,系统配置完成后,将编写的代码烧写到智能小车的开发板上,在烧写无误的情况下,即可启动小车。小车动作效果图如图 1。
图1小车效果图
自动避障功能测试
超声波避障功能测试
超声波避障模块的安装调试步骤:
1.将2路探头呈一行布置在智能车前方,探头朝前面,可以采用铜柱+螺丝方式固定;
2.将中控板固定在车身上;
3.正确连接中控板和超声波避障探头的杜邦线;
4.正确连接控制STM32主板;
5.将小车放到地面上,前方10cm处放物体,调节电位器,保证超声波避障探头在经过物体时,LED的状态变化。
6.如果无论怎么调节电位器,LED状态都不变化,则应该是杜邦线接触不好,要更换。
超声波避障2路传感器接线图如图 2所示
图2超声波避障2路传感器接线图
参 考 文 献
[1]王大庆编制.美国 “机遇" 号成功着陆火星[EB/OL]. http://news3.xinhuanet.com/ziliao/2004-01/29/content_1290040.htm,2004一01—29
[2]新华网.机遇号、勇气号都达标美火星探测计划成功[EB/0L]. http://tech.sina.com/other/2004—04—27/1418355367.shtml,2004—04—27
[3]徐国华,谭民.移动机器人的发展现状及其趋势[J].机器人技术与应 用,2001(3):7—14
[4]新华网.中国月球车制造完毕2013搭嫦娥三号探月[EB/OL] http://news.xinhuanet.tom/tech/2010—04/10/content 13331069.htm , 2010-04-10
[5]李宁基于MDK的STM32处理器开发应用2008.10.
[6]蔡自兴,贺汉根,陈虹未知环境中移动机器人导航控制理论与方法2009.1
[7]广州周立功单片机发展有限公司.ARM Cortex-M3处理器简介.2006.1
[8]周立功等编著.ARM嵌入式系统软件开发实例[M].北京:北京航空航天大学出版 社,2005.
[9]杜春雷编著.ARM体系结构与编程[M].北京:清华大学出版社,2003
[10]曾德怀,谢存禧等.行走机器人的超声波测距系统的研究[J].机械科学与技 术,2004,23(5).613"–616.
[11]曹玉华超声测距系统设计及其在其在机器人模糊避障中的应用中国海洋大学 论文2007.5
[12]Roland Siegwart,Il lah R.Nourbakhsh.自主移动机器人导论.西安:西安交通大 学出版社,2006.
[13]贾一.美国的火星探测器机器人机器人技术与应用,2001(3):1’7
[14]李磊,曹志强等.基于行为的轮式移动机器人导航控制.控制与决策.2004年第6 期:707-710
[15]邱瑛,富大伟,王惠森等.移动机器人模糊控制系统避障研究.河北工业大学学 报.2007年第6期:86-89
[16]庞思红,李维,李春书等.移动机器人模糊逻辑控制系统避障研究.微计算机信 息.2007年第12—2期:250-252
[17]程智远,谭宝成.移动机器人运动控制的模糊逻辑系统设计.电子元器件应用 82008年第1期:54-56
[18]孟伟,黄庆成,韩学东,洪炳榕.一种动态未知环境中自主机器人的导航方法.计算 机研究与发展(J),2005,42(9):1538—1543
[19]张纯刚,席裕庚.动态未知环境中移动机器人的滚动路径规划.机器人 (J),2002,24(1):71—75
[20]徐撞,唐振民.动态环境中的移动机器人避碰规划研究.机器人(J),2003,25(2): 117-122
[21]丛爽.神经网络、模糊系统及其在运动控制中的应用.中国科学技术大学出版社.2001
[22]李贻斌,李彩虹,刘鲁源.不确定环境下移动机器人路径规划算法研究.杭州电子 科技大学学报(J),2005,25(2):i0—13
[23]A.Zelinsky.A mobile robot exploration algorithm.IEEE Transactions on Robotics and Automation,1992,8(2):707-717
[24]Koenig,S.;Likhachev,M.:Fast Replanning for Navigation in Unknown Terrain.IEEE Transaetions on RobotiCS and Automation.Volume21,Issue3,June 2005 Page(S):354—363