基于51的避障循迹重力感应遥控的智能小车设计(C语言) 下载本文

2 方案设计及论证

2.1 总体设计

本课题设计主要是制作一款能进行智能判断并能做出正确反应的小车。小车具有以下几个功能:自动避障功能;寻迹功能(按路面的黑色轨道行驶);基于重力感应的遥控(通过倾斜方向和角度控制小车运动方向和速度)。

小车端以两直流电动机为主驱动,通过各类传感器件来采集各类信息,送入主控单元89C52单片机处理数据后完成相应动作,以达到自身控制。电机驱动电路采用H桥驱动模块--双L298步进/直流电机驱动板 ,能同时驱动4个直流电机和2个步进电机;避障采用漫反射式光电开关来完成,自动寻迹采用红外发射管和接收管光电对管寻迹传感器完成,最后由控制单元处理数据后通过编程有序合理的将各模块信号整合在一起并完成相应动作,实现了智能控制,相当于简易机器人。

遥控端由MPU0605陀螺仪和无线模块、按键模块、LCD显示模块组成,通过检测按键和陀螺仪数据送入89C52单片机处理后判断用户的指令,然后通过NRF24L01无线模块把指令发送到小车端,同时在LCD12864显示当前工作模式和小车的状态.

2.2 主控单元方案比较与选择

按照题目要求,控制器主要用于控制电机,通过相关传感器对路面的轨迹信息进行处理,并将处理信号传输给控制器,然后控制器做出相应的处理,实现小车的自动循迹和自动避障。

方案一:可以采用ARM为系统的控制器,优点是该系统功能强大,片上外

设集成度搞密度高,提高了稳定性,系统的处理速度也很高,适合作为大规模实时系统的控制核心。

方案二:采用AT89S52作为系统控制的方案。AT89S52单片机算术运算功能强,软件编程灵活、自由度大,功耗低、体积小、技术成熟,成本也比ARM低。

考虑到性价比问题,本设计选择 用AT89S52单片机做控制器。

2.3 电机单元方案比较与选择

方案一:采用直流电机,配合LM293驱动芯片组合。优点在于硬件电路的设计简单。当外加额定直流电压时,转速几乎相等。这类电机用于录音机、录相机、唱机或激光唱机等固定转速的机器或设备中,也用于变速范围很宽的驱动装置,但容易受到外部因素干扰,影响稳定的转速和转矩输出。

方案二:采用直流减速电机。直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便,小车电机内部装有减速齿轮组,所以并不需要考虑调速功能,很方便的就可以实现通过单片机对直流减速电机前进、后退、停止等操作。

综合以上考虑我们选择方案二的直流减速电机作为智能小车的驱动电机。

2.4 电源单元方案比较与选择

方案一:采用单电源供电,通过单电源同时对单片机和直流电机进行供电,此方案的优点是,减少机身的重量,操作简单,其缺点是,这样会使单片机的波动变大,影响单片机的性能,稳定性比较弱。

方案二:采用双电源供电,通过两个独立的电源分别对单片机和直流减速电机进行供电,此方案的优点是,减少波动,稳定性比较好,可以让小车更好的运作起来,唯一的缺点就是会增加小车的重量。

综合以上的优缺点,本设计决定采用第二种方案。

2.5 避障单元方案比较与选择

方案一:用超声波传感器进行避障。超声波传感器的原理是:超声波由压电陶瓷超声波传感器发出后,遇到障碍物便反射回来,再被超声波传感器接收。但使用超声波模块的成本比较高。因此我们考虑其它的方案,超声波传感器实物图如下图2所示:

图2 超声波传感器

方案二:用漫反射式光电开关进行避障。光电开关的工作原理是根据光线发射头发出的光束,被物体反射,其接收电路据此做出判断反应,物体对红外光由同步回路选通而检测物体的有无。当有光线反射回来时,输出低电平。当没有光线反射回来时,输出高电平。光电开关的是物图如下图3所示:

图3 光电开关

考虑到超声波测量的范围宽,使用非常灵活,帮助智能小车顺利绕过障碍,可以适应十分复杂的环境,我们最终选择了方案一。

2.6 寻迹单元方案比较与选择

方案一: 利用寻迹来引导小车到达用户所指定的地点。采用红外发射管和接收管光电对管寻迹传感器。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平。此方案存在的缺陷是对光线的亮度要求较高,在夜间难以正常工作。

方案二: 通过超声波定位模块来实时定位小车的位置。超声波定位的基本原理是通过接收几个固定位置的发射点的超声波接收器, 在小车上加入一个发射器,通过无线模块计算各模块接收到超声波的时间差,通过集成模块的内部算法得出小车所在位置和原设定位置的偏差情况,从而得到主体到这几个发射点的距离, 实现了超声波的定位,由于超声波在空气中的衰减较大, 它只适用于较小的范围,而且使用此方案还将面临着在家中的超声波各通讯线的布局,使用很不方便。

经实测发现方案一中的红外对管型寻迹模块只要给进行一定的改善,对环境的适应能力还是比较强的例如可以在晚上行进,这样就可以用低成本来实现我们你所需要的功能,所以就排除了方案二,以方案一作为小车在家庭中的行进方式。

3 硬件系统的设计

3.1 单片机控制模块

STC89C52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 STC89C52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。如图4是较为常见的单片机最小系统图。

图4 单片机最小系统

3.1.1 时钟电路

单片机的时钟产生有两种方法:内部时钟方式和外部时钟方式。