word文档 下载后可自由复制编辑
智能迷宫小车
摘要:本系统采用飞思卡尔MC9SS12XS128做为主控芯片核心进行设计,合
理利用了该芯片上丰富的资源,应用三方位大功率红外检测,舵机控制作为动力,PWM速度控制等技术实现小车自动避障、选择路线、寻迹,能在迷宫中自动从起点寻找路线走到终点。
关键词: 舵机 自动避障,迷宫算法,机动小车,红外测距。
Abstract:
This system USES freescale MC9S12XS128 as main control chip design, reasonable utilization of core of the chip abundant resources and application of infrared testing, four bits of power steering gear control PWM steering gear, speed control technology, the choice of intelligent automatic car times route, tracing, can be in the maze looking for from beginning to end route.
Keyword: steering engine obstacle avoidance, motor vehicles, maze algorithm, infrared distance.
1 系统方案设计
1.1 系统总体方案设计
智能小车要求运行平稳,快速,高效的探索迷宫,这需要小车能够精确控制,能够自动地进行避障,很好地对各种路况进行判断和做出相应的操作,小车的灵活性就变得比较重要,至少需要三个检测路况的传感器,分别在前边,左右两边,并以适合的迷宫搜索算法作为车子的行进规则,进行所有路径遍历,得到最短路径方案。
根据分析我们得出以下设计方案:处理器采用飞思卡尔MC9SS12XS128 16位处理器,PWM控制电机转动速率,L293驱动两个电机,红外传感器测距,LM1117和LM2940高性能稳压芯片稳压,光敏三极管电路检测终点,采用舵机改装成小车的动力系统。
车子转动灵活,体积小,能原地左右转90度,45度,180度,舵机的转矩足够大,速度合适,运行平稳。经过实际比较验证得到以下的最终方案:
舵机1 电机驱动电路 舵机2 光敏三极管终点检测 直流稳压电路 7.2伏电池 XS12控制单红外线距离检测 LED指示灯 指拔开关 元
word文档 下载后可自由复制编辑
上电检查车子各部分是否正常 红外检测车子所处情况 遇到死路,原地180度转 偏左 控制舵机方向---小车走直线 有路口 偏右 车子按算法要求行进 转弯 分别控制舵机转向 光敏三极管检测终点红光信号 没有继续前进 有,车子减速,LED灯光报警 车子停止前进 所有路径遍历,得最短路径 1.2 主要模块方案选择和论证
1.2.0车子框架模块
搭建一个性能好的小车是我们工作的第一步,为了达到预期的目标,我们进行了五次方案的修改:
方案一:采用自带玩具小车,采用两个直流电机分别控制车子左右转向。缺点:车子过大过长,相对于20.4cm左右的跑道而言,四轮不能实现原地90度旋转,达不到要求。 方案二:直流电机来做车子方向的转向控制,采用三轮式结构,后面加一个万向轮,万向轮由自己设计。缺点:实践发现直流电机动力不够,转动速度过快
方案三:改用直流减速电机控制,电机转速慢,转矩大,动力强,容易控制。缺点:电机长度过长,做出来的车子宽度比较宽,车子不灵活,不易
控制。 整体总装图
方案四:用舵机取代减速电机,相对减速电机,舵机的转动速度一样慢,输出转矩大,相对直流电机角度控制精确度高。缺点:车子运行还是快。
方案五:用周长比较大的车轮换上,实践发现效果很好,决定用这一方案。 1.2.1 MUC的选择
处理器的选择我们首先考虑的是传统的51单片机,但对于红外线的测量,至少需要3个AD转换芯片,而且51总线频率低,如果采用ADC0809 8位逐次逼近型A/D转换器,不仅转换速度低,结构复杂,电路板布线困难,而且要用3片芯片,成本较高,小车的体积大,不利于小车在狭小的迷宫里灵活行走和拐弯。最终放弃该方案。
word文档 下载后可自由复制编辑
凌阳SPCE061 16位语音单片机有7路10位AD转换器,最高时钟频率达49MHZ,14个中断源,2路PWM,低电压低功耗供电(2.4V~3.6V),具有语音编程等强大功能,完全符合以上方案的要求,但由于SPCE061体积庞大,最小系统板也很大,不利于小车的小型化,况且SPCE061的特色功能是语音功能,在本方案中没有用到,大材小用,也放弃了该MUC方案。 飞思卡尔MC9SS12XS128处理器是Freescal公司专门为汽车电子而开发的微控制器,其集成度高,片内资源丰富,内部有自带16个12位高速AD转换器,8路PWM发生模块,多个外部、定时计数器中断,8KB RAM,128KBFLASH,2KB EPRROM,SCI,SPI,IIC,CAN,BDM,增强型定时捕捉器等,红外数据转换精度高,数据处理精确,总线时钟最高可96MHZ.PWM脉宽调制很方便,体积小,功耗低,最终选该芯片为本方案的主控制芯片。
1.2.2 测距方案的选择
测距的方案有超声波测距,激光测距,红外测距。
由于迷宫道路狭小,要求10CM以内精确测距,但超声波测距在近距离测距中很容易受到余波和迷宫回声、环境温度的干扰,测量精度和稳定性差,而且测量探头体积庞大,小车安装6个探头琪琪、极其困难,软件设计复杂,调试困难,放弃该方案。激光测距精确,稳定度高,受环境影响小,但价格昂贵,我们手头也没有激光传感器,于是也放弃了该方案。红外线测短距离精度较高,反射的红外线几乎和距离成线性关系,价格低廉,硬件简单,驱动程序简单易调试,但容易受到环境光线的影响。权衡之下,选择了红外测距方案。该方案有两种测量方法,一是“接近开关”式测量,即数字量检测,本方法是当红外线接收管接收到大于某一电压值时判断红外管前方有障碍物,否则认为无障碍物,用此探测有无墙壁和路口,此方法识别简单,但所得的信息量少。另一种采用模拟量测量的方法,通过AD转换测取接收管的所有电压值,并和距离一一对应,这样就得到了路况的模拟量,给控制策略提供了丰富的信息,最终采用红外线模拟量测距的方案。
1.2.3 动力驱动的选择
前进的动力源可以使用直流电机作为动力源,但直流电机直接驱动的时候速度过快,用PWM调小速度的时候驱动功率又不足,无法使小车缓慢平稳地前进。使用减速电机,速度慢,转矩大,但体积较大,两个减速电机合起来轮轴太长,不利于转向。最后采用了S3010舵机进行改装,S3010舵机使用电压为4.0~6.0V,角度控制为1度/400us,堵转力矩为6.5+0.02 Kg.cm,,改装后的舵机速度缓慢,平稳,转矩强大,体积小,非常适合跑本迷宫小径,完全符合要求。
舵机驱动芯片,可以使用达林顿管搭成H桥式电路,提供功率足,但硬件搭建麻烦,而且舵机的电机电功率不大,没必要用大功率达林顿管。可采用接线简单的驱动芯片,