摘 要
摘要
走迷宫智能小车主要是基于自主反应式智能系统原理。利用反射式红外传感器来导引,采用与地面颜色有较大差别的导引线,红外一体化接
收头来检测障碍物的位置,通过改变单片机产生的 PWM 方波的占空比,使其能在设计范围内可实现任意角度移动,实现小车识别路线,进行自主
迷宫探路,判断并实现自动避障,选择正确的行进路线。驱动电机采用直流电机,电机控制方式为单向 PWM 开环控制。控制核心采用 MSP430 单
片机,仅用一块单片机就实现了信号采集,路线判断,电机控制。该技术可以应用于无人工厂,仓库,服务机器人等领域。
总体规划
对于走迷宫小车控制系统设计主要有三个方面:一、控制电路设计;二、传感器选择以及安放位置设计;三、程序设计。从总的方面来考虑,
传感器的使用数量应该尽量少以减少单片机的信号处理量,但是又必须能使小车行驶自如。控制电路要根据选用的电机和传感器来设计,主要
考虑稳定性,抗干扰性。
关键词:MSP430 迷宫算法 避障 寻迹 PWM
Abstract
A maze-running intelligent car is mainly based on the principle of automatic response intelligent system. It uses reflective infrared sensor to guide
and the pilot wires are vary different from the ground in color. It uses infrared receiver to detect the position of the obstacle and is by change of PWM
square-wave produced by MCU to realize arbitrary angle moving among the designed range and indentifying the route. It can touches maze automatically,
judge and avoid the obstacle automatically, and choose the right marching route. It uses DC Motor as the driving motor. The control mode of the motor is
unidirectional PWM open-loop control. This control makes MSP430 MCU as its core. It only uses one MCU to realize the signal collection and route
estimation and motor control. This Technology can be applied in the fields such as unmanned factory and warehouse and Service Robot.
The overall plan:
The design of the control system of maze-running intelligent car mainly includes three parts:
First: the design of the control circuit; Second: the choosing of the sensor and the design of the mount position; Third: Program Design. From a overall
perspective, you should use the sensors as few as possible so as to reduce the signal processing amount of the MCU and at the same time you must make the
car march freely. The control circuit must be designed according the motors and sensors chosen, mainly take the stability and the noise immunity into
account.
Keywords: MSP430
maze algorithm
obstacle avoidance
PWM
2
寻迹避障小车走迷宫
目 录
i
目录
第一章 绪论 ......................................................................................................................................................................1
第二章 各部件的工作原理 ............................................................................................................................................... 2
2.1 前轮(导向轮)...............................................................................................................................................................2
2.2 电机...................................................................................................................................................................................3
2.3 反射式红外传感器...........................................................................................................................................................3
2.4 红外一体化接收头...........................................................................................................................................................4
第三章 硬件电路.............................................................................................................................................................. 6
3.1 电机驱动电路...................................................................................................................................................................6
3.2 反射式红外传感器电路...................................................................................................................................................7
3.3 红外一体化接收头电路...................................................................................................................................................8
3.4 处理器电路.........................................................................................................................................................................8
第四章 电路原理图 ........................................................................................................................................................ 10
第五章 控制算法............................................................................................................................................................ 11
5.1 黑线位置判别..................................................................................................................................................................11
5.2 巡线算法..........................................................................................................................................................................11
5.3 搜线算法..........................................................................................................................................................................12
5.4 障碍物位置判别....................................................................................................................................................12
5.5 转弯控制..........................................................................................................................................................................13
5.6 迷宫探路控制...................................................................................................................................................................13
第六章 相关软件..........................................................................................................................................................14
第七章 总结 ................................................................................................................................................................. 17
7.1 本文总结............................................................................................................................................................................17
7.2 进一步的工作...................................................................................................................................................................17
致谢 ...................................................................................................................................................................................18
参考文献......................................................................................................................................... 错误!未定义书签。
附录一............................................................................................................................................................................... 19
附录二............................................................................................................................................................................... 19
第一章 绪论
1
第一章 绪论
当今社会,科学技术日新月异,时代前进的步伐越迈越宽,应用自动化设备,计算机处理,现代化通讯,数字化信息,现代化显示设备等高新技
术而建立的现代化智能,监控等系统已经得到充分的发展与应用,智能机器人也就应运而生。同时,在建设以人为本的和谐社会的过程中,智能服
务机器人能够完成考古发掘,海底揭密,宇宙探索等危险作业,以保证人身安全。《国家中长期科学和技术发展规划纲要》一文指出:智能服务
机器人是在非结构环境下为人类提供必要服务的多种高技术集成的智能化装备。以服务机器人和危险作业机器人应用需求为重点,研究设计方法、
制造工艺、智能控制和应用系统集成等共性基础技术。重点研究低成本的自组织网络,个性化的智能机器人。2006━2020 年,既是国家中长期技
术发展计划实现阶段,也是我们最具有活力和最激情洋溢的时段。
该智能小车模型是一辆完全由 PCB 拼装的小车。所有的机械结构和零部件都安装固定在电路板上。因此完全不需要机械加工,非常适合实验
阶段机器人的研制。本文简述了智能巡线避障小车自主走迷宫的设计思路和实现过程。包括小车的机械结构、电路、软件、控制算法、调试方法
等。可作为一般的设计参考。
小车的左右后轮分别由 2 只 6V 直流减速电机提供动力;前导向轮是一只万向轮。430 单片机的 PWM 发生器产生 4 路(分为两组)占空比可变
的方波,经三极管进行扩流后分别驱动后轮左右电机。控制 4 路 PWM 的比例,不仅可以调节小车向前运动的速度,还可通过 4 路 PWM 占空比的差
异,改变小车运动方向。
5 只反射式红外传感器位于小车前方,3 只位于小车后方,小车周围还分布有 7 个红外一体化接收头来实现测距功能,将物体与小车的距离分为
八个阶段,当物体离小车很近时实行相应的程序以躲避障碍,并用反射式红外传感器查找黑线位置,避免其脱离。
2
走迷宫智能小车的研究与实现
第二章 各部件的工作原理
2.1 前轮(导向轮)
前轮是决定小车能否灵活拐弯的关键部分。这辆小车和汽车不同,不是靠前轮摆舵来控制转弯,而是靠左右后轮速度差来实现转弯控制。这
样前轮实际上是从动轮。下图中,当小车左轮的速度高于右轮时,小车右转弯;反之,当小车右轮的速度高于左轮时,
小车左转弯。前轮的速度可以分解为前进的速度和水平侧移的速度。普通的定轴的前轮只能垂直方向前进,水平方向是无法左右滑动的。因此小
车不可能实现拐弯(实际的结果是:因为前轮不能活动,右轮也成了从动轮,两轮速度一样,直线前进)。所以前轮一定要能够侧滑,并能转向。
最简单的方法是使用万向轮。一般机械上使用的万向轮非常的笨重,实验效果很不理想。这里我们设计了一种简易的万向轮:用一根镀锌铁
丝弯成半圆形作为支架,穿一个小轮。
当小车右转弯时,小轮相对于支架左滑动(其实是小轮因为地面摩擦而不动,支架右滑),转弯角也随之改变;小轮还会根据转弯量自动地调
整到合适的角度。这种结构小轮是自由的,只要有轻微的力,就能使小轮滑动,转向非常灵活。
图 2.1
前轮的结构
需要注意的是万向轮的安装。要将 U 型半圆支架平行于地面,否则当小车左右转时
第二章 各部件构成原理
3
极易发生坍塌现象。而且前轮对小车的运行轨迹影响很大,所以出了在安装时要保证 U 型支架平行于地面外,还需要对 U 型支架作相应的
处理,比如润滑、将 U 型支架两端持平,以及还应保证前轮的活动空间,避免与前端的传感器和后端的电池盒发生碰撞、摩擦。
实际我们所用的万用轮中间的孔较大,所以很容易发生侧移,我们可以用皮箱下面的小轮来代替现在我们所用的前轮,效果可能会好很多。
2.2 电机
电机是我们的生活中不可缺少的动力源,常用的有交流电机和直流电机。这里小车的动力采用直流减速电机直接驱动,省去了齿轮组、传
动部件等复杂的机械结构。这里选择了 6V/300rpm 的电机,速度和力矩都比较适中。
直流电机的构造:在绕有线圈的铁芯(转子)的外周,有相同数目的定子(永久磁铁)相向包围。通过整流器的电刷转子断续地得到电流,
转子与定子的永久磁铁反复相吸、排斥,结果无论他们的相互位置如何,转子始终能够沿着一定的方向回转。在永久磁铁(NS)之间的线圈有电
流通过时,产生电磁力,对应于永久磁铁产生的磁场,N 极产生向上的力,S 极产生向下的力。结果导致线圈旋转。
在线圈旋转的同时,整流器也随之旋转,这样就能保证电流流向的自动切换以便维持转子向同一方向的连续转动。于是,线圈中不断地产
生相同方向的旋转力。
直流电机中的电刷与整流器实际上属于机械接触,由于在转轴转动的过程中他们的接触状态不断发生变化,往往产生电气噪声,这可能成
为诱发 CPU 电路误动作的原因,因此为了克服噪声干扰,一般在电机电源端子上并联一个电容器。
电机的安装采用焊接。电机背面 2 个电源端子用粗铜丝焊在电路板上,克服电机自由转动。电路板上刻有一比电机略长的槽口,卡住电机,
用拉紧的铜丝焊在电路板将电机固定,克服前后运动。
图 2.3
电机
改进:减速电机成本高,且 300rpm 以上的电机需 12V 供电,不方便。竞速车可改为录音机的磁带驱动电机(约 3000rpm,车轮要减小)。
用于固定电机的铜丝一般应用多股细铜丝线。若用单股而比较粗的铜线的话有可能会因为小车的抖动而使电机发生滑动,从而需要不断的对
电机进行加固。
2.3 反射式红外传感器
反射式红外传感器 ST188 采用高发射功率红外广电二极管和高灵敏度光电晶体管组成。检测距离可调整范围为 4-15mm;采用非接触检测方
式。可用于 IC 卡电度表脉冲数据采集、集中抄表系统数据采集和传真机纸张检测等。
4
走迷宫智能小车的研究与实现
图 2.4 反射式红外传感器工作原理
反射式红外传感器中包含一个发射器 LED 和一个光探测器(光敏二极管/光敏三极管)。着两个元件被封装在同一个塑料壳体中,并且排列
成适合他们工作的理想位置。LED 发出的一束光被一个表面反射后又回到探测器中。
图 1.4 是反射式红外传感器的工作原理图。封装在矩形壳体中的是发射器 LED(由左侧的白色方块表示)和探测器装置(在右侧)。虚线表示
光线从发射器 LED 中发出并反射回探测器;探测器检测到的光强大小取决于物体表面的反射率,而这一光强就是传感器的输出值。
如图所示,选通信号(高电平)经过三极管扩流后送到传感器的 K 脚,如果检测到黑线,传感器 C 脚输出高电平;否则输出为低电平。
图 2.5 反射式红外传感器及其检测距离与转换效率的关系图
反射式传感器在高度受控的理想环境下的工作性能更好,因为影响它输出的外界因素有很多,如环境光的变动、传感器与被探测物体之间的
距离,以及被探测物体的反射率等。为了减少环境光的干扰,首先需要调整传感器的方位使环境光不能直接射到探测器。
反射式红外传感器 ST188 的最佳探测距离为 6-14mm。所以将传感器垂直于地面并且调整传感器与地面的距离,大约在 10mm 左右。传感器引
脚很细,容易晃动,需要穿过一块支撑板以增加强度;同时还可以通过铜柱的高度或增加垫片来细调传感器离地面的距离。
图 2.6 传感器安装图
2.4 红外一体化接收头
电视机、唱机等家电中广泛使用红外线遥控器。红外遥控器发出 38KHz 调制的红外线,在接收端,被一体化红外接收头接收,解调出原始键
码值。
因为红外遥控使用广泛、成熟、大批量,所以相关红外接收、发射元件价格很低。本方案使用通用遥控器的一体化红外接收头作为检测元件。