基于单片机的红外避障小车.docx
- 文档编号:10029428
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:32
- 大小:830.52KB
基于单片机的红外避障小车.docx
《基于单片机的红外避障小车.docx》由会员分享,可在线阅读,更多相关《基于单片机的红外避障小车.docx(32页珍藏版)》请在冰豆网上搜索。
基于单片机的红外避障小车
2013届毕业设计(论文)
题目:
基于单片机的红外避障小车
学院:
浦江学院
专业:
电子信息工程
班级:
电子0905
姓名:
徐博
指导老师:
杨小健
起讫日期:
2012-12-12~2013-06-10
2013年06月
摘要
随着科学技术的进步,智能化和自动化技术越来越普及,各种高科技技术也广泛应用于智能小车河机器人玩具制造领域,使智能机器人越来越多样化。
智能小车是一个多种高新技术的集成体,融合了机械,计算机硬件,软件,电子,人工智能等多种科学技术的知识,可以涉及到当今许多前言领域的技术。
本设计主要由单片机控制系统模块、电机驱动模块、红外避障模块、声控模块组成,系统以STC89C52RC单片机为核心,通过避障模块和声控模块接受到的信息来控制电机运行。
系统通过7节1.5V干电池通过降压电路降成5V稳定直流电对单片机和发动机进行供电。
本文介绍了红外避障的原理、系统整体设计及相关软件的介绍。
软件部分采用模块化设计思路,整个程序包括主程序,电机驱动程序,信号检测程序,通过小车运行时检测到的运行信息来调用左转、直行或停止函数来控制小车。
测试结果表明,本文的各项功能基本正常,除发动机转速不匹配外能实现本设计的所有要求。
关键字:
STC89C52RC小车避障单片机
Abstract
Withtheprogressofscienceandtechnology,intelligentandautomationtechnologyismoreandmorepopular,High-techtechnologyisalsowidelyusedinintelligentcarriverrobottoymanufacturing,intelligentrobotismoreandmorediversified.Intelligentcarisavarietyofhighandnewtechnologyintegration,integrationofmechanical,computerhardware,software,electronics,artificialintelligenceandsoonthemanykindsofknowledge,scienceandtechnologycanbeinvolvedinmanyoftoday'sintroductioninthefieldoftechnology.
Thisdesignismainlycomposedofsingle-chipmicrocomputercontrolsystemmodule,motordrivemodule,theinfraredobstacleavoidancemodule,voicecontrolmodule,systemwithSTC89C52RCsingle-chipmicrocomputerasthecore,throughtheobstacleavoidancemoduleandvoicecontrolmodulereceivesinformationtocontrolthemotorrunning.Systemby71.5Vdrycellbystep-downcircuitdownintoastabledc5Vforsinglechipmicrocomputerandenginepower.Thispaperintroducestheprincipleofinfraredobstacleavoidance,theintroductionofoverallsystemdesignandrelatedsoftware.Softwarepartadoptsthemodulardesignthinking,theprocessincludesthemainprogram,motordriver,signaldetectionprocedures,throughthecarrunstheoperationofthedetectedinformationcalltoturnleft,gostraight,orstopfunctiontocontrolthecar.
Testresultsshowthatthevariousfunctionsofthebasicnormal,inadditiontotheenginespeeddoesnotmatchtoachievealltherequirementsofthedesign.
Keywords:
obstacleavoidanceSCMSTC89C52RCcars
第一章绪论
1.1课题背景
目前,在科技技术不断提高、对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。
世界上许多国家都在积极进行智能车辆的研究和开发设计。
移动机器人是机器人学中的一个重要分支,出现于20世纪06年代。
当时斯坦福研究院(SRI)的NilsNilssen和charlesRosen等人,在1966年至1972年中研制出了取名shakey的自主式移动机器人,目的是将人工智能技术应用在复杂环境下,完成机器人系统的自主推理、规划和控制。
从此,移动机器人从无到有,数量不断增多,智能车辆作为移动机器人的一个重要分支也得到越来越多的关注。
智能小车,是一个集环境感知、规划决策,自动行驶等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航及白动控制等技术,是典型的高新技术综合体。
智能车辆也叫无人车辆,是一个集环境感知、规划决策和多等级辅助驾驶等功能于一体的综合系统。
它具有道路障碍自动识别、自动报警、自动制动、自动保持安全距离、车速和巡航控制等功能。
智能车辆的主要特点是在复杂的道路情况下,能自动地操纵和驾驶车辆绕开障碍物并沿着预定的道路(轨迹)行进。
智能车辆在原有车辆系统的基础上增加了一些智能化技术设备:
(1)计算机处理系统,主要完成对来自摄像机所获取的图像的预处理、增强、分析、识别等工作;
(2)摄像机,用来获得道路图像信息;
(3)传感器设备,车速传感器用来获得当前车速,障碍物传感器用来获得前方、侧方、后方障碍物等信息。
智能车辆技术按功能可分为三层,即智能感知/预警系统、车辆驾驶系统和全自动操作系统团。
上一层技术是下一层技术的基础。
三个层次具体如下:
(1)智能感知系统,利用各种传感器来获得车辆自身、车辆行驶的周围环境及
驾驶员本身的状态信息,必要时发出预警信息。
主要包括碰撞预警系统和驾驶员状态监控系统。
碰撞预警系统可以给出前方碰撞警告、盲点警告、车道偏离警告、换道/并道警告、十字路口警告、行人检测与警告、后方碰撞警告等.驾驶员状态监控系统包括驾驶员打吨警告系统、驾驶员位置占有状态监测系统等。
(2)辅助驾驶系统,利用智能感知系统的信息进行决策规划,给驾驶员提出驾驶建议或部分地代替驾驶员进行车辆控制操作。
主要包括:
巡航控制、车辆跟踪系统、准确泊车系统及精确机动系统。
(3)车辆自动驾驶系统,这是智能车辆技术的最高层次,它由车载计算机全部自动地实现车辆操作功能。
目前,主要发展用于拥挤交通时低速自动驾驶系统、近距离车辆排队驾驶系统等。
这种智能小车的主要应用领域包括以下几个方面:
(1)军事侦察与环境探测
现代战争对军事侦察提出了更高的要求,世界各国普遍重视对军事侦察的建设,采取各种有效措施预防敌方的突然袭击,并广泛应用先进科学技术,不断研制多途的侦察器材和探测设备,在车上装备摄像机、安全激光测距仪、夜视装置和卫星全球定位仪等设备,通过光缆操纵,完成侦察和监视敌情、情报收集、目标搜索和自主巡逻等任务,进一步扩大侦察的范围,提高侦察的时效性和准确性。
(2)探测危险与排除险情
在战场上或工程中,常常会遇到各种各样的意外。
这时,智能化探测小车就会发挥很好的作用。
战场上,可以使用智能车辆扫除路边炸弹、寻找和销毁地雷。
民用方面,可以探测化学泄漏物质,可以进行地铁灭火,以及在强烈地震发生后到废墟中寻找被埋人员等。
(3)安全检测受损评估
在工程建设领域,可对高速公路自动巡迹,进行道路质量检测和破坏分析检测;对水库堤坝、海岸护岸堤、江河大坝进行质量和安全性检测。
在制造领域,可用于工业管道中机械损伤,裂纹等缺陷的探寻,对输油和输气管线的泄漏和破损点的查找和定位等。
(4)智能家居
在家庭中,可以用智能小车进行家具、远程控制家中的家用电器,控制室温等等。
对这种小车的研究,将为未来环境探测术上的有力支持。
1.2课题研究的目的和意义
目前,国内外的许多大学及研究机构都在积极投入人力、财力研制开发针对特殊条件下的安全监测系统。
其中包括研究使用远程、无人的方法来进行实现,如机器人、远程监控等。
无线传输的发展使得测量变得相对简单而且使得处理数据的速度变得很快甚至可以达到实时处理”。
该智能小车可以作为机器人的典型代表。
它可以分为三大组成部分:
传感器检测部分、执行部分、CPU。
机器人要实现自动避障功能,还可以扩展循迹等功能,感知导引线和障碍物。
可以实现小车自动识别路线,选择正确的行进路线,并检测到障碍物自动躲避。
通过构建智能小车系统,培养设计并实现自动控制系统的能力。
在实践过程中,熟悉以单片机为核心控制芯片,设计小车的检测、驱动和显示等外围电路,采用智能控制算法实现小车的智能循迹。
灵活应用机电等相关学科的理论知识,联系实际电路设计的具体实现方法,达到理论与实践的统一。
在此过程中,加深对控制理论的理解和认识。
1.3本设计的内容及结构
1.3.1设计的内容
(1)障碍检测模块
(2)电源模块为5V;
(3)直流电机的驱动模块电路,及相应的驱动程序;
(4)控速模块
(5)复位电路模块
(6)声控模块
1.3.2本设计的结构
本论文结构如下:
第二章介绍了车体结构和硬件选择
第三章介绍了系统整体设计及各部分功能
第四章介绍了软件设计
第五章介绍了开发调试及效果模拟
第六章总结性描述。
主要是毕业设计的体会及收获。
第二章系统硬件选择
2.1车体结构
2.1.1车轮选择
小车为三轮结构,车的结构示意图如图所示。
其中前面两个车轮由2个发动机分别控制,通过控制2个发动机来调节小车的前进方向。
后面一个车轮起到稳定小车的作用,同时一个车轮可以更方便的实现小车的转向。
2.1.2电源选择
采用交流电供电的优势是电源驱动能力及电压稳定性好,且负载对电源影响也很小。
但由于需要电线对小车供电,极大的影响小车的灵活性及地形的适应能力。
考虑到小车需要灵活性好,固采用干电池供电,由于系统耗电量比较大,为保证电压稳定,所以采用7节1.5V干电池通过降压电路将成5V直流电对单片机和发动机供电。
2.2红外避障传感器
E18-D80NK-N这是一种集发射与接收于一体的光电传感器,发射光经过调制后发出,接收头对反射光进行解调输出。
有效的避免了可见光的干扰。
透镜的使用,也使得这款传感器最远可以检测80厘米距离的问题(由于红外光的特性,不同颜色的物体,能探测的最大距离也有不同;白色物体最远,黑色物体最近)。
检测障碍物的距离可以根据要求通过尾部的电位器旋钮进行调节。
该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,可以广泛应用于机器人避障、流水线计件等众多场合。
该红外传感器是个NPN型光电开关,其输出状态是0,1,即数字电路中的高电平和低电平。
在检测到目标是低电平输出,正常状态是高电平输出,输出时外加一个上拉电阻即可连接到IO口上。
其上拉电阻阻值一般在1K左右。
其实物图和原理图如下图
红外传感器E18-D80NK-N实物图
红外传感器E18-D80NK-N内部原理图
电器特性:
红色:
VCC;黑色:
GND;黄色:
OUT。
U:
5VDC
I:
100mA
Sn:
3-80CM
尺寸:
直径:
17MM
传感器长度:
45MM
引线长度:
45CM
机械特性:
颜色:
橙黄色
直径:
18MM
长度:
45MM
引线长度:
18CM
注意事项:
在接线的时候,请避免出现电源和地接错的现象,该操作有可能造成传感器永久性损坏;
信号输出端请加上拉电阻;
为保护动作的可靠和寿命长,请避免有关规定以外的温度外界(户外)条件下,接近传感器虽为耐水结构,若装上罩使用,勿使水和水容性切削油等淋到,则可更好地提高可靠性及寿命。
还请避免在有化学药剂,特别是在强碱、酸、硝酸、铭酸、热浓硫酸等气候中使用。
我将它与单片机的P3^3口连接。
正常小车行走时传感器给单片机输送的是高电平当遇到障碍物时,传感器则给单片机一个低电平,传感器给其原理图如下:
图2-2避障传感电路
2.3STC89C52RC单片机介绍
STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。
主要特性如下:
1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051.
2.工作电压:
5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机)
3.工作频率范围:
0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz
4.用户应用程序空间为8K字节
5.片上集成512字节RAM
6.通用I/O口(32个),复位后为:
P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。
7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片
8.具有EEPROM功能
9.具有看门狗功能
10.共3个16位定时器/计数器。
即定时器T0、T1、T2
11.外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒
12.通用异步串行口(UART),还可用定时器软件实现多个UART
13.工作温度范围:
-40~+85℃(工业级)/0~75℃(商业级)
14.PDIP封装
STC89C52RC单片机的工作模式
●掉电模式:
典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序
●空闲模式:
典型功耗2mA
●正常工作模式:
典型功耗4Ma~7mA
●掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备
STC89C52RC引脚图
STC89C52RC引脚功能说明
VCC(40引脚):
电源电压
VSS(20引脚):
接地
P0端口(P0.0~P0.7,39~32引脚):
P0口是一个漏极开路的8位双向I/O口。
作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。
在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。
此时,P0口内部上拉电阻有效。
在FlashROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。
验证时,要求外接上拉电阻。
P1端口(P1.0~P1.7,1~8引脚):
P1口是一个带内部上拉电阻的8位双向I/O口。
P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。
P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流(
)。
P2端口(P2.0~P2.7,21~28引脚):
P2口是一个带内部上拉电阻的8位双向I/O端口。
P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。
P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流(
)。
P3端口(P3.0~P3.7,10~17引脚):
P3是一个带内部上拉电阻的8位双向I/O端口。
P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流(
)。
(29引脚):
外部程序存储器选通信号(
)是外部程序存储器选通信号。
当AT89C51RC从外部程序存储器执行外部代码时,
在每个机器周期被激活两次,而访问外部数据存储器时,
将不被激活。
/VPP(31引脚):
访问外部程序存储器控制信号。
为使能从0000H到FFFFH的外部程序存储器读取指令,
必须接GND。
注意加密方式1时,
将内部锁定位RESET。
为了执行内部程序指令,
应该接VCC。
在Flash编程期间,
也接收12伏VPP电压。
XTAL1(19引脚):
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2(18引脚):
振荡器反相放大器的输入端。
特殊功能寄存器
第三章系统硬件设计
3.1系统设计框图
图3-1系统设计框图
系统设计框图如上所述,整个系统由单片机最小系统,红外检测模块,声音检测模块,电机驱动模块组成。
小车起始时是处于静止状态,当检测到声音信号时通过声音检测模块传到单片机P3~2端,单片机接受到信号后通过程序把P3~1,P1~1端状态取反,使小车前进。
当再次接受到声音信号时再次取反,小车停止前进。
当红外避障模块检测到障碍物时,将一个P3~3的高电平转成低电平,单片机额接受到信号后,通过程序将P1~5,P3~7端由高电平转成低电平,从而使小车左转。
小车运行状态相关程序如下:
/////////停止///////////////
voidStop(void)
{
L_L=1;
L_R=1;
R_L=1;
R_R=1;
}
/////////前进//////////////
voidForword(void)
{
L_L=1;
R_L=1;
_nop_();
_nop_();
L_R=0;
R_R=0;
}
////////左转/////////////
voidTurn_Left(void)
{
L_L=0;
R_R=0;
_nop_();
_nop_();
L_R=1;
R_L=1;
delay_ms(2400);
}
注:
L_L=P1^5;//左轮驱动口
L_R=P1^1;//左轮驱动口
R_L=P3^6;//右轮驱动口
R_R=P3^7;//右轮驱动口
3.2系统电路设计
智能小车采用STC89C52RC单片机进行智能控制,开始由手动启动小车电源,并复位。
当有声音信号时,根据信号进入相应的行驶状态,在运动过程中由红外光电传感器检测,遇到障碍时通过单片机控制小车进行转向,系统功能原理图如图所示。
图3-2系统电路设计
3.3供电电路
考虑到小车是个不断运动的实验设备,采用干电池供电。
总的供电系统是有10.5V的大功率电池储能,经过电压转换单元。
由一个10.5V转为5V对控制单元供电。
电机驱动和控制电路:
通过51单片机,控制端口对直流电机的转速和转向来对电机进行控制。
图3-3电源电路图
3.4声音检测电路
声音控制电路是在原基础上加的一项功能,通过电路去除杂音,对响度较大的声音进行识别(比如拍手声)。
正常说话声则被电路滤除,不会产生信息出入。
声音信号通过单片机,经程序使运行状态取反,完成小车的运行状态切换。
图3-4声音控制电路图
声音检测模块程序如下:
voidExtern_Int0(void)interrupt0using0
{
if(Int0_flag==0)
{
voice_flag=!
voice_flag;//检测到一次声音信号,状态取反一次
Int0_flag=1;
}
}
注:
Int0_flag初始值为0
当Int0_flag的值为1时调用前进程序,为0时调用停止程序。
3.5红外避障基本原理
常用的红外遥控系统一般分发射和接收两个部分。
发射部分的主要元件为红外发光二极管。
它实际上是一只特殊的发光二极管;由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。
目前大量的使用的红外发光二极管发出的红外线波长为940mm左右,外形与普通φ5发光二极管相同,只是颜色不同。
红外发光二极管一般有黑色、深蓝、透明三种颜色。
判断红外发光二极管好坏的办法与判断普通二极管一样;用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。
红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉锯法来粗略判判定。
接收部分的红外接收管是一种光敏二极管。
在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。
红外发光二极管一般有圆形和方形两种。
由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。
常用SM0038、BL9149等红外接收专用放大集成电路。
本设计通过E18-D80NK-N传感器,连接单片机P3~3端口,当正常运行时输入高电平,当检测到障碍时输入低电平。
单片机检测到低电平时先判断小车是不是在运行状态,如果是运行状态则通过程序执行左转,由于左转比较复杂,在这里通过延时函数和左转函数及停止函数连续调用,通过多次的测试下完成避障,电路图如下:
图3-5红外传感电路
红外避障模块程序如下:
voidExtern_Int1(void)interrupt2using1
{
if(voice_flag==1)//前进状态下,检测到障碍物
{
LED=0;
Stop();//停止
delay_ms(1000);
Turn_Left();//左转
Stop();//停止
delay_ms(1000);
}
elseif(voice_flag==0)Stop();//停止
}
注:
voice_flag是小车状态的表示,1为前进,0为停止,通过声控模块控制。
这里先要确保voice_flag==1才可能执行左转程序。
LED=P0~0是小车运行指示灯。
3.6电机驱动电路
直流电机驱动电路采用如下H型PWH电路,用单片机控制驱动电路,起始时程序初始化给R_L、R_R都输入高电平,电机不工作。
当检测到声音信号时R_R端变为低电平,发动机正常工作。
采用此电路的优点是可以实现转速和方向的控制,采用PWH进行直流电机调速,其实就是把波形作用于电机驱动电路的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 红外 小车