APP下载

基于单片机的自动避障小车设计

2013-05-17

苏州市职业大学学报 2013年1期
关键词:障碍物小车单片机

嵇 萍

(江苏海事职业技术学院 电气工程系,江苏 南京 210017)

在很多应用场合,要求机器人在复杂环境中不依赖人的操纵能够自主行走,这就要使机器人具备类似于人类的视觉感官和识别功能,能够进行自动避障.因此,有必要研究机器人的避障问题.自动避障小车属于轮式机器人中的一种,在生产、生活和科学研究中得到了越来越广泛的应用,其避障问题也逐渐成为研究热点.本文以AT89C52单片机作为控制核心、红外反射式传感器作为检测元件,设计了一个自动避障小车.要求小车在自动行驶过程中能够及时、灵活地避开障碍物.具体要求如下:如果小车前方无障碍物,小车直走;如果仅在小车右前方有障碍物,小车向左拐弯;如果仅在小车左前方有障碍物,小车向右拐弯;如果小车直前方有障碍物,小车后退并右转.

1 控制系统总体方案

自动避障小车的控制系统总体设计方案如图1所示.该系统主要由单片机、感测模块、电源模块、驱动模块等组成.具体工作原理为:首先,利用感测模块检测是否有障碍物,如果检测到障碍物,将障碍物位置信号送入单片机;然后,由单片机进行程序处理,根据不同的障碍物位置信号输出相应的控制信号,控制电机驱动模块;最后,由电机驱动电路输出不同电压,使得左右两个车轮产生速度差,从而实现转向,最终达到自动避障的目的.

图1 总体方案

2 硬件设计

2.1 车体框架

在淘宝网上有很多专门用于智能小车开发的成品车架,它们具有易于控制、工作可靠、价格低廉等优点,可直接用于自动避障小车的开发.另外,这些成品车架装配紧凑,使得各种所需电路的安装十分方便,看起来也比较美观.因此,在本设计中选用的是在淘宝网上购买的一个成品车架.

2.2 主控模块

主控模块电路如图2所示.主要由AT89C52单片机、电源、时钟电路、复位电路和存储器选择电路构成.单片机控制模块是自动避障小车控制系统的核心部分,主要包括检测障碍信息、控制电机运行等.

图2 主控模块申路图

2.3 电源模块

采用2节3.6 V锂电池作为电源,可以直接用于驱动小车电机,也可降至5 V后给单片机及其他逻辑单元供电.这两节电池的体积和重量都比较小,便于安装在小车底座,不会造成电机负载过大,而且价格低、电流驱动能力强.为了给单片机及其他逻辑单元供电,必须将锂电池组的电压降至5 V,这里采用1117-5 V稳压芯片进行降压,稳压电路如图3所示.

图3 稳压申路

2.4 感测模块

红外反射式传感器是集发射与接收于一体的光电传感器.具有探测距离远(最远可达到80 cm)、受可见光干扰小、体积小、功耗低、应用方便等特点[1].而且它检测障碍物的距离可以根据实际要求通过尾部的电位器旋钮进行调节,非常适用于小车避障.

在本设计中选用的是E18-D80NK红外反射式传感器,它的使用非常方便,只需将传感器检测到的开关信号直接送入单片机处理即可,使用电路如图4所示.无障碍物时传感器输出高电平,有障碍物时输出低电平,并且传感器尾部指示灯亮起.

图4 E18传感器使用申路

2.5 驱动模块

驱动模块电路如图5所示.L293D是一款单片集成的高电压、高电流驱动芯片,接收标准的TTL逻辑电平信号,可直接与单片的I/O口相连,驱动2个两相电机[2].使用L293D电机驱动芯片,不仅可以简化驱动电路,而且功率容量大,有利于电机转速的稳定.

3 软件设计

软件部分是避障小车工作的指挥官,小车能否自动避障取决于编程算法是否合理.小车的控制程序主要由主程序、避障子程序、小车驱动子程序、延时子程序等组成[3].主程序流程如图6所示.

4 仿真测试

在PROTEUS仿真软件环境中,建立了避障小车控制电路仿真图,如图7所示.由于在PROTEUS软件中没有红外传感器,所以选择使用2个开关模拟2个红外传感器的工作,通过开关的状态表示有无障碍物.另外,使用2个电机的转动方向代表左右2个车轮的运动方向[4].

在PROTEUS软件中仿真运行系统先将2个开关全部断开,即小车前方没有障碍物时,2个车轮全部正转,且速度不断增加,小车全速前进.然后仅按下S1开关,即小车左边有障碍物时,小车右轮仍然正转,但减速,左轮仍然正转并加速,小车向右转弯等等.针对各种障碍变化情况进行仿真测试,发现系统仿真结果符合预期设计要求,接着开始进行避障小车实物制作与测试.

在设置有障碍物的房间内,将自动避障小车放在地上,打开电源开关,电源指示灯点亮,系统开始工作.经过长时间运行测试后,发现该自动避障小车可及时、灵活地避开障碍物,达到了预期的设计要求.

图7 自动避障小车控制申路仿真

5 结论

本设计制作完成的自动避障小车达到了预期的设计要求,基本实现了自动避障的功能.但是,该自动避障小车还存在一些不足的地方,比如在探测障碍物时还存在有一些盲区,不能探测到地面线缆等高度较低的障碍物.采用性能更好的传感器、更优的控制算法,可以进一步提高自动避障小车的性能.

[1]周继明,江世明. 传感器技术及应用[M]. 长沙:中南大学出版社,2005.

[2]赵俊生. 单片机技术项目化原理与实训[M]. 北京:电子工业出版社,2009.

[3]谢维成,杨加国. 单片机原理与应用及C51程序设计[M]. 北京:清华大学出版社,2009.

[4]李学礼. 基于Proteus 的8051单片机的实例教程[M]. 北京:电子工业出版社,2008.

[5]来俊鹏. 基于STC89C52和L298的智能循迹与控制系统研究[J]. 三门峡职业技术学院学报,2011,9(2):112-115.

猜你喜欢

障碍物小车单片机
大车拉小车
自制小车来比赛
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
刘老师想开小车
两轮自平衡小车的设计与实现
Microchip推出两个全新PIC单片机系列