智能小车论文.docx
- 文档编号:9681966
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:19
- 大小:1.26MB
智能小车论文.docx
《智能小车论文.docx》由会员分享,可在线阅读,更多相关《智能小车论文.docx(19页珍藏版)》请在冰点文库上搜索。
智能小车论文
河海大学常州校区
第三届智能小车竞赛
技术报告
学校:
河海大学常州校区
队伍名称:
EC101队
参赛队员:
凌明强林建宇荀倩
摘要
AT89S52单片机是一款八位单片机,他的易用性和多功能性受到了广大使用者的好评。
这里介绍的是如何用AT89S52单片机来实现智能小车的设计。
本系统以设计题目的要求为目的,采用AT89S52单片机为控制核心,利用红外光电管检测道路上黑线,快慢速行驶,以及自动停车,自动寻迹和寻光功能。
整个系统的电路结构简单,可靠性能高。
实验测试结果满足要求,本文着重介绍了该系统的软硬件各模块设计方法及测试结果分析。
采用的技术主要有:
(1)通过编程来控制小车循迹;
(2)使用PWM波来控制小车的速度和转向;
(3)光电管的有效应用;
(4)新型显示芯片的采用.
关键词AT89S52单片机、光电检测器、PWM调速、智能小车
目录
第一章引言2
第二章方案的选取3
2.1电机驱动调速系统3
2.2循迹系统4
2.3电源系统6
2.4系统原理图7
第三章小车硬件设计8
3.1电源模块8
3.2单片机最小系统设计8
3.3循迹模块设计9
3.4舵机转向模块设计10
3.5后轮驱动模块设计12
第四章小车软件设计13
4.1黑线检测程序14
4.2电机驱动和舵机转向程序15
4.3后轮电机的控制16
第五章测试数据及结论18
第六章总结19
第一章引言
本设计采用AT89S52单片机为简易智能小车的核心器件。
循迹模块由若干个光电管组成,通过反射红外线的变化判断黑线的有无以达到循迹的功能,电源模块采用电池两路供电,单片机与大电流器件分开供电,避免大电流器件对单片机造成干扰,电机驱动模块选用常用的H桥驱动芯片L298N结合单片机来控制电机工作,舵机转向模块是智能小车程序设计的重要模块,采用PWM波,控制舵机的转向和电机转速。
技术报告以智能小车的设计为主线,包括小车的构架设计、软硬件设计,以及控制算法研究等,共分为五章。
其中,第一章为引言部分;第二章主要介绍了小车的总体方案的选取,对单片机资源的分配作了说明。
第三章对小车的硬件设计进行了详细的介绍,主要介绍了电路的设计;第四章描述了小车的软件设计和相关算法。
第五章中叙述了我们在设计过程中遇到的问题和解决方法。
第二章方案的选取
根据设计的要求,确定如下方案:
在现有玩具车的基础上,加装加装一些模块,实现对电动小车的速度和方向的控制,自动循迹,由单片机根据所检测的各种信息实现对小车的智能控制。
这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。
智能小车系统主要包括以下模块:
C52单片机模块、电机驱动模块、舵机转向模块、循迹模块和电源模块一共五个模块。
整体结构框图如图2.1所示。
图2.1智能小车系统功能模块图
以C52为核心,设计寻线方案并尽在小车不冲出赛道的情况下尽可能的提高车速,是获得比赛胜利的关键。
2.1、电机驱动调速系统
方案一:
采用电阻网络或者数字电位器调整电动机的分压,从而达到降速的目的。
但是,电阻网络只能实现有级降速;而数字电阻的元器件价格昂贵。
最重要的问题是,一般电动机的电阻很小,电流很大,分压不仅降低效率,而且难以实现。
方案二:
采用继电器对电动机的开/关进行控制,通过开关的切换对小车的速度进行调整。
这个电路的优点是比较简单,但是继电器的响应时间比较慢、机械结构易坏、寿命较短、可靠性不高。
方案三:
采用达林顿管组成的H型PWM电路。
用单片机控制达林顿管使之工作在占空比可调的开关状态,可精确调整电动机的转速。
这种电路由于工作在饱和截止模式下,效率非常高;H型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也高,是广泛采用的PWM调速技术。
方案分析:
由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。
根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器进行调速。
脉宽调速系统的主电路采用脉宽调制式变换器,简称PWM变换器。
脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。
为顺利实现电动小汽车的前行与倒车,本设计采用了可逆PWM变换器。
可逆PWM变换器主电路的结构式有H型、T型等类型。
我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。
2.2、循迹系统
本系统采用反射式红外线光电传感器用于检测路面的起始、终点(2cm宽的黑线),玩具车底盘上沿黑线放置一套,以适应起始的记数开始和终点的停车的需要。
利用超声波传感器检测障碍。
光线跟踪,采用光敏三极管接收灯泡发出的光线,当感受到光线照射时,其c-e间的阻值下降,检测电路输出高电平,经LM393电压比较器送单片机控制。
红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。
单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。
红外探测器探测距离有限,一般最大不应超过15cm。
对于发射和接收红外线的红外探头,可以自己制作或直接采用集成式红外探头。
红外光的发送接收选用型号为ST168的对管。
当小车在白色地面行驶时,装在车下的红外发射管发射红外线信号,经白色反射后,被接收管接收,一旦接收管接收到信号,那么图中光敏三极管将导通,比较器输出为低电平;当小车行驶到黑色引导线时,红外线信号被黑色吸收后,光敏三极管截止,比较器输出高电平,从而实现了通过红外线检测信号的功能。
将检测到的信号送到单片机I/O口,当I/O口检测到的信号为高电平时,表明红外光被地上的黑色引导线吸收了,表明小车处在黑色的引导线上;同理,当I/O口检测到的信号为低电平时,表明小车行驶在白色地面上。
此种方法简单,价格便宜,灵敏度可调,但是容易受到周围环境的影响,特别是在较强的日光灯下,对检测到的信号有一定的影响。
方案一:
可见光发光二极管与光敏二极管组成的发射—接收电路。
此方案电路简单,原器件价格低廉。
但是环境光源对光敏二极管的干扰较大,一旦环境发生变化,很可能造成误判或漏判。
如果采用超高亮发光管,可以降低干扰,但同时增加了功率损耗。
方案二:
反射式红外发射—接收管。
采用红外管可以大大降低环境光源的干扰。
但是在车速较快的情况下,很可能会错过路面引导线,且无法再自动调整,而导致小车在转向时冲出轨道。
方案三:
八对反射式红外发射—接收管的组合使用。
它们分别安装在小车底两侧,正常行进中,检测线应在其间。
只要有一侧检测到黑线信号,立即转向信号方向,保证了小车能沿黑方向行进。
基于以上各种考虑,采用方案三。
图2-1电压比较器电路
2.3、电源系统
上图为LM2940-5.0封装和实物图
方案一:
所有元器件采用单一电源。
它供电简单,方便灵活,减小了车载质量和摩擦阻力。
但是电机启动瞬间电流很大,而且PWM驱动的电机电流波动较大,会造成电压不稳定、有毛刺干扰等,不适用于要求电源稳压的CPU,严重时可能造成系统掉电。
方案二:
单片机必须与大电流器件分开供电,避免大电流器件对单片机造成干扰,采用两路供电,这样可以使用其中一路单独为单片、指示灯供电,另外一路提供L298N、光电管、舵机的工作电压。
介于设计稳定性考虑,采用方案二。
2.4、系统原理图
第三章小车硬件设计
3.1、电源模块设计
电源模块为系统其它各个模块提供所需要的电源,设计中,除了要考虑到电压范围和电流容量等基本参数之外,还要在电源转换效率、降低噪声、防止干扰和电路简单等方面进行优化。
可靠的电源方案是整个硬件电路稳定可靠运行的基础。
为此,采用两路供电,这样避免大电流器件对单片机造成干扰。
图3.1
3.2、单片机最小系统设计
单片机是小车的控制中心,单片机最小系统的合理设计是小车平稳运行的前提,图3.2为52单片机最小系统的几个部分:
1、晶振电路,单片机要想工作必须有一个外部时钟源,这个时钟源有外部晶振产生,具体电路为图中的Y1、C2、C3.在做电路办事晶振和电容要靠近18脚和19脚放置。
2、复位电路,复位电路包括商店复位和手动复位两部分,51系列单片机多为高电平复位,即采用上电复位,其原理就是利用电容充电的一段时间将复位脚拉至高电平,使单片机完成复位。
3、ISP下载接口,改下载接口在实际制作是可以用双排的5*2的排针代替,电路是根据标准的ISP下载线来设计的,与常用的并口下载线,串口下载线和笔记本用的USBASP下载线兼容,只需将下载线接口插到本接口上就可以直接向单片机烧写程序。
图3.2
图3.3ISP实物接口
3.3、循迹模块设计
循迹模块完成的是黑线的识别功能,其主要采用多个红外光电管,红外光电管分为两部分,一部分为无色透明类似于LED的红外发射部分,另外一部分为黑色的红外接收部分。
图3.3为红外检测的基本电路图。
图中R1为限流电阻,R2、R3为分压电阻,LM339为电压比较器,为了保证在输出高电平时有5V左右的高电平输出。
只有多个红外光电管并联才能够起到良好的检测效果,在实际应用中光电管的排列方式,排列间距是有讲究的,为此,本作品采用“一”字型排列,将两个红外光电管的间距设置为黑线的宽度。
图3.4光电管布局
图3.5
3.4、舵机转向模块设计
舵机是小车转向的控制机构,具有体积小、力矩大、外部机械设计简单、稳定性高特点,舵机的主要工作流程为:
控制信号———>控制电路板———>齿轮组减速———>舵盘转动———>位置反馈电位计———>控制电路反馈.
图3.4为舵机的实物图,舵机一般有三根线,两根电源线,一根信号线,在电路设计中需将信号线连至单片机的引脚同时连好电源。
由于舵机的额定工作电压为6V,故使用LM1117等芯片单独提供6V的电压。
舵机的安装:
由于舵机不是360°可转的,因此必须保证车轮左右转的极限在舵机的转角范围之内。
图3.6舵机实物图
图3.7舵机内部结构
3.5、后轮驱动模块设计
图3.8L298的实物图和封装图
图3.5L298电路图
电路图中有两个电源,一路为L298工作需要的5V电源VCC,一路为驱动电机用的电池电源VSS。
图中的续流二极管是为了消除电机转动时的尖峰电压保护电机而设计。
第四章小车软件设计
系统软件设计说明
在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。
因此,软件设计在微机控制系统设计中占重要地位。
对于本系统,软件更为重要。
为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。
所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。
模块程序设计法的主要优点是:
1、单个模块比起一个完整的程序易编写及调试;
2、模块可以共存,一个模块可以被多个任务在不同条件下调用;
3、模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。
本系统软件采用模块化结构,由主程序﹑定时子程序、避障子程序﹑中断子程序显示子程序﹑调速子程序﹑算法子程序构成。
本作品的核心电路是一片AT89C52。
它是整个控制部分的核心,负责车速控制、电动机驱动、舵机转向、黑线检测等功能。
程序的总体设计:
头文件
全局变量定义
主函数
端口定时器设置
死循环
查询光电管状态
设定舵机转过角度
设定后轮转动方向和速度
中断服务函数
PWM波的产生
首先舵机的控制就是给一定占空比的方波来实现不同的转角的,其次后轮电机的调速也是通过不同占空比的方波来实现。
图4.1
图4.2快速PWM模式时序图
4、1黑线检测程序
单片机不断查询光电管探测传来的信号,调整小车转向收到信号的一侧。
在设计中,我们在两边各设了四对反射式红外发射—接收管,保证了小车沿黑线行进。
程序流程见图4.1所示
程序主要采用case语句实现黑线检测
4、2舵机的控制
图4.3为舵机的转角和高电平占空比关系图。
由图可知:
对舵机的控制信号时由一串周期18-20ms,其中高电平时间1-2ms的方波信号组成。
当高电平时间为1ms时舵机左转60°,当高电平时间为2ms时舵机右转60°转过的其他角度与高电平的时间呈线性关系。
也就是说每0.1ms的高电平变化就会影响舵机12°的转角。
4.3后轮电机的控制
因为后轮电机有单片机通过驱动芯片进行驱动,那么对后轮电机的控制很显然也就包括了方向和速度的控制。
方向的控制很简单,前面说过电机和至单片机的的1234四个是一一对应的,其中12是一个通道,使能为ENA脚控制,高电平有效,34是第二个通道,使能由ENB控制。
因此可以把电机接在12脚上,因此如果接单片机的12脚分别接在51单片机的P1.0,P1.1两脚如果在程序中令P1.0=1;P1.1=0;电机正转,则P1.0=0;P1.1=1;电机反转,而如果在程序中对P1.0或1.1脚产生一个PWM波来控制,那么不同的占空比就会让电机具有不同的速度。
对于电机的调速控制有以下两点说明:
1、注意选择合适的控制频率,过高可能导致电机不转,频率过低可能使电机间歇性转动。
2、使用不同占空比的PWM波控制电机时有时虽然在空转的情况下电机速度降低但是同时带负载的情况会严重降低,所以在以往的比赛中经常出现有的小车在转弯时出现跑不动的情况,因此应注意选择频率和占空比。
附:
程序头文件及变量说明
#include
#defineucharunsignedchar
#defineuintunsignedint
sbitENA=P1^0;/*L298的EnableA*/
sbitIN1=P1^1;/*L298的Input1*/
sbitIN2=P1^2;/*L298的Input2*/
sbitduoji=P1^3;//舵机信号控制
sbitqi=P1^4;//起跑线检测指示灯
sbitleft=P2^0;
sbitright=P2^7;
ucharS;
ucharscale0;//用于保存舵机转向占空比的输出"1"的时间份额最左边23,中间29最右边37
uintscale1;//用于保存控制速度占空比的输出"1"的时间份额
uinttt1,m,flag;//中断次数tt1
ucharangle[]={22,25,27,29,30,32,34,37};//角度预设,angle[0]表示小车处于最右左边时需要打的角度所对应的占空比scale0
第五章测试数据及结论
测试方法与仪器:
1、测试仪器
测试仪器包括秒表、数字万用表、信号发生器、示波器、飞思卡尔电池
2、测试方法
数字万用表主要用来测试分立元件的电阻、压降、漏电流、截止/导通状态等参数;
信号发生器与示波器用于测试各光电传感器信号的接收与传输;
直流稳压电源在测试期间为各待测系统供电;
秒表用于产品测试,按照任务书的基本要求对制成的电动车进行产品测试。
2、结论
在设计过程中,我首先边查资料,边在实验室焊接小车的线路板。
在焊接过程中,我感觉到即使是一个简单的电路,要想很轻松的焊好,也不是很容易的事情。
有时是“虚焊”的原因,有时可能是阻值选错。
在焊接显示电路时,我就错将680欧的电阻焊成了6.8千欧。
这使我深深感受到理论与实际间的差距。
通过这样的设计,提高了我的动手能力。
每天在实验室除了焊接线路板,还可以上机编程,使我软件调试知识也提高了。
本设计采用的是AT89S52单片机,这主要是因为该单片机的稳定性比较好。
还可以采用其它系列的单片机。
比如采用陵阳单片机,就可以简化编程,但其稳定性不是很好。
第六章总结
经过小组成员的一致努力,设计出了具有一定功能的智能小车,达到了预期的目的。
经实验,该智能小车可以沿黑线方向行进一圈,当光电管检测到十字交叉道是可以沿预期的方向运动,当第二次检测到起跑线时小车可以自动停止运动。
提高车速的主要方法:
1)在赛车的机械结构上作优化。
2)舵机的机械调整。
这一内容包括对舵机输出角度的机械放大、舵机反装等,其中心目的是提高舵机的反应速度。
3)增强驱动电机的加减速性能
4)在舵机控制算法上优化,使之过弯道走内弯、S型曲线直接冲过,其中心目的就是使赛车少走弯道,缩短行驶距离。
我们在实验中曾发现,如果不进行控制算法的优化,单纯增加赛车的直线速度并不总是能缩短单圈的时间,因为速度快到一定程度后,赛车在过弯时将发生侧滑,赛车走过的距离增加了,抵消了速度增加带来的优势。
由于时间有限,系统中尚存在许多问题有待改进:
1)抗干扰处理。
赛车在赛道上会遇到各种情况,如交叉线、断续线,以及还有实验赛道上的干扰点,以及由环境光线不均匀造成的干扰。
如何确保在任何情况下都能识别出赛道,或者判断出赛车在场上的位置,需要做进一步的努力。
2)参数计算的准确性。
虽然实现了斜率和曲率的计算,但是其精度仍然不够理想,特别是在能够识别的路径比较段的情况下,计算出的数据与实际有很大的偏差。
笔者曾设想了一种基于最小二乘法捏合圆的方法,但是发现计算极其复杂,简化了条件后得出的结果又不够理想。
这个方面值得继续探索。
3)小车的器件尽量选择价格低廉,保证性价比不要过低。
参考文献
1何立民,单片机应用系统设计,北京:
航天航空大学出版社,2~5,46~50
2李广弟,单片机基础,北京:
北京航空航天大学出版社,2001,56~64
3何希才,新型实用电子电路400例,电子工业出版社,2000年,60~65
4赵负图,传感器集成电路手册,第一版,化学工业出版社,2004,590~591
5陈伯时,电力拖动自动控制系统,第二版,北京:
机械工业出版社,2000年6月,127~130
6张毅刚,彭喜元,新编MCS-51单片机应用设计,第一版,哈尔滨工业大学出版社,2003,25~27,411~417
7.张友德赵志英涂时亮单片微型机,第五版复旦大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 小车 论文