智跑机器车设计报告新.docx
- 文档编号:8562305
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:10
- 大小:102.63KB
智跑机器车设计报告新.docx
《智跑机器车设计报告新.docx》由会员分享,可在线阅读,更多相关《智跑机器车设计报告新.docx(10页珍藏版)》请在冰豆网上搜索。
智跑机器车设计报告新
2013年江西省大学生电子设计竞赛
智跑机器车设计报告
【A题】
2013年5月25日
概要
该智跑机器车是以STC12C5A60S2单片机为主控芯片,将红外线传感器、颜色传感器、漫反射式避障传感器所接收到的信号传至单片机分析处理,从而控制L298N芯片驱动电机,利用颜色传感器检测深绿色、深蓝色、深红色、白色等区域,红外对管检测边界黑色线,漫反射传感器探测障碍物进行避障。
整个系统电路布局合理,可靠性高,根据智能车各部分功能电路优化集成,再进行多次软件编程调试,直至成功。
关键词:
STC12C5A60S2L298N颜色传感器漫反射式避障传感器红外线传感器
一、智跑机器车系统的设计要求和总体方案设计、论证
1.1设计要求
1.1.1基本要求
1)智跑机器车行驶路线为:
出发区→平整区→转弯区1→障碍区→转弯区2→障碍区→转弯区3→障碍区→转弯区4→平整区→终点。
2)车体在没有障碍物的区域能够保持直线行驶,在有障碍物的区域能够自动识别并规避障碍物(规避障碍物的过程中允许碰触障碍物,但使障碍物移动应少于1cm)。
3)在行驶中车体不能越过边界线超过1/2。
4)应在5分钟内行驶完全程。
1.1.2发挥部分
1)智跑机器车在规避障碍物的过程中,不能碰触到障碍物。
2)在行驶中车轮不能压到边界线。
3)能够记录并显示智跑车的行驶时间,行驶路程等信息。
4)其他发挥部分。
1.1.3特殊加分项
1)在满足基本要求和发挥部分要求的
(1),
(2)项的前提下,按行驶时间进行相应的加分。
2)加分原则是:
所有满足条件的机器车按时间排序,用时最少的排名第一,用时最多的排名最后;用时最多的机器车不加分,用时第二多的机器车加2分,依次类推,用时越少加分越多。
1.2智跑机器车的工作原理
红外探测法:
即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到深蓝色、深绿色、深红色、白色区域发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。
单片机就是否收到反射回来的红外光为依据来确定边界黑线的位置和小车的行走路线。
通过查资料我们知道红外探测器探测距离有限,一般最大不应超过3cm。
颜色传感器检测:
该模块的芯片上集成有64个光电二极管。
这些二极管共分为四种类型,其中16个光电二极管带有红色滤波器,16个光电二极管带有绿色滤波器,16个光电二极管带有蓝色滤波器,其余16个不带有任何滤波器,可以透过全部的光信息。
这些光电二极管在芯片内是交叉排列的,能够最大限度地减少入射光辐射的不均匀性,从而增强颜色识别的精确度;另外,相同颜色的16个光电二极管是并联连接的,均匀分布在二极管阵列中,可以消除颜色的位置误差。
工作时,通过两个可编程的引脚来动态选择所需要的滤波器。
经过电流到频率转换器后输出不同频率的方波,不同的颜色和光强对应不同的频率的方波。
单片机通过颜色传感器检测深蓝色、深绿色、深红色、白色等不同区域,从而控制L298N芯片驱动电机正转、反转、停止。
1.3功能模块的方案比较与论证
根据智跑机器车的设计要求,本项目的系统主要包括:
主控制器模块、电源模块、12864液晶显示模块、传感器模块(红外线传感器、颜色传感器、漫反射式避障传感器)、直流电机及其驱动模块。
为较好的实现各模块的功能,我们分别设计了几种方案并分别进行了论证:
1.3.1主控制模块
方案一:
采用Atmel公司的AT89S51单片机作为主控制器。
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
方案二:
采用STC12C5A60S2系列单片机,该单片机是STC生产的单时钟/机器周期(1T)的单片机,是高速、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8—12倍。
内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强干扰场合。
从单片机运行的速度和抗干扰的能力的角度考虑,我们选择了方案二。
1.3.2电源模块
方案一:
采用10节1.5V干电池供电,电压达到15V,经7812稳压后给直流电机供电,然后将12V电压再次降压、稳压后给单片机系统和其他芯片供电。
但干电池电量有限,使用大量的干电池给系统调试带来很大的不便,因此,我们放弃了这种方案。
方案二:
采用2节3.7V可充电式锂电池串联共7.4V直接给直流电机供电,再经7805稳压后给单片机系统和其他芯片供电。
使用了少量的电池,有效的减轻了车身的重量,提高了行驶速度,因此采用了此方案。
1.3.3显示模块
方案一:
使用八段数码管显示机器车行驶的时间、路程等信息,八段数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的数字或字母。
数码管显示虽然价格便宜且在现实生活中应用广泛,但只能显示数字和几个字母,显示信息单调,因此我们放弃了此方案。
方案二:
使用12864液晶显示机器车行驶的时间、路程等信息,12864液晶显示屏的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。
液晶体积小、功耗低、显示操作简单,能够显示数字、字母、汉字、图像。
为了能更直观地显示出各种信息,我们决定采用此方案。
1.3.4传感器模块
方案一:
在避障模块中,选择超声波避障,优点是反应速度灵敏,距离远,受外界干扰小。
如果利用超声波传感器进行避障的话,由于空间小声波在小空间不同方向里会进行多次反射,左右前后的传感器之间互相干扰,使控制中心不能明确判断出那个方向遇到了障碍物,从而动作絮乱,不能实现要求。
方案二:
使用红外接收头和发射管配合,利用38K频率解决灵敏度问题。
38K调制和发射电路。
使用一个定时器的快速PWM模式产生38K调制信号,通过剩余的四个施密特触发器缓冲,推动8050三极管和红外发光管发射已经调制的红外线。
期中2个N148接单片机IO脚控制左右红外发光管轮流发射。
后面串接的可见光LED是为了方便用户调试而设置的,让用户知道当前是否在发射红外线。
通过调节PWM的占空比,调节红外发光管的亮度,从而实现调节感知障碍物距离的功能。
方案三:
选择光电漫反射式避障传感器,当开关发射光束时,目标产生漫反射,发射器和接收器构成单个的标准部件,当光电开关有足够的组合光返回接收器时,开关状态发生变化,从而一起输出端电平的变化,继而利用电平进行障碍物的判断。
经过对三种传感器各方面性能考虑,我们采用了方案二和方案三,用两个漫反射式传感器和一个红外线传感器配合使用实现避障功能。
1.3.5直流电机及其驱动模块
方案一:
采用专用芯片L298N作为电机驱动芯片。
L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。
用该芯片作为电机驱动,操作方便,稳定性好,性能优良。
我们采用方案一。
方案二:
对于直流电机用分立元件构成驱动电路。
由分立元件构成电机驱动电路,结构简单,价格低廉,在实际应用中应用广泛。
但是这种电路工作性能不够稳定。
二、系统硬件电路设计
2.1主控制器模块的设计
采用STC12C5A60S2单片机,包括时钟振荡电路、复位电路、外扩张口、P0口上拉10K排阻。
单片机最小系统原理图
2.1.1时钟电路
系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。
STC12C5A60S2单片机内部有一个用于构成振荡器的高增益反相放大器。
引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。
这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。
外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。
对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。
因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22pF。
更好地保证震荡器稳定和可靠地工作。
2.1.2复位电路
复位是由外部的复位电路来实现的,复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路。
2.2跑道边界(黑线)检测模块
检测边界黑线的传感器用红外对管,是一种一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,而接收器是一个高灵敏度,硅平面光电三极管当发光二极管发出的光反射回来时,三极管导通输出低电平,电路如图,可调电阻R3可以调节比较器的门限电压,经示波器观察,输出波形相当规则,可以直接给单片机查询使用。
而且经试验验证给此电路供电的电池的压降较小。
因此我们选择此电路作为我们的传感器检测与调节电路。
红外对管检测电路
2.3电机驱动模块
电机的驱动使用专业集成式全桥驱动芯片L298N。
L298N内部包含4通道逻辑驱动电路,可以方便的驱动两个直流电机,或一个两相步进电机。
L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压,4脚VS接电源电压,VS电压范围VIH为+2.5~46V,输出电流可达2.5A,L298N的OUT1,OUT2和OUT3,OUT4之间可分别接电机。
我们选用两通道来驱动小车的电机,通过调节占空比控制电机转速。
在L298N的4脚使能信号有效(逻辑电平1)时,当5脚和7脚的电平为10时,电机1B正转;当5脚和7脚的电平为01时,电机1B反转;当5脚和7脚的电平为00或11时,电机1B不工作。
2B与1B控制原理相同。
小车电机驱动电路的原理图如下:
电机驱动模块电路图
2.4漫反射式避障模块
如图:
该传感器是一种集发射与接收于一体的光电传感器。
其检测距离可以根据要求进行调节。
它是光电式传感器(光电开关)NPN常开。
其易于装配、使用方便,使用时红色线接4.5~5V电源高电平,绿色线接电源低电平,而黄色线直接接单片机端口,输出TTL电平给单片机检测。
从而控制电机驱动模块。
三、小车软件设计与实现
系统软件采用C语言开发,在Keil环境下编程调试并实现功能。
主程序流程如图所示,进入主程序并初始化后,判断相应的子模块程序。
软件程序设计采用模块化的结构,便于分析和实现功能。
系统主要由4个模块组成:
单片机最小系统、电机驱动、黑线检测、避障。
单片机最小系统为该小车的控制核心。
自锁开关按下,单片机控制电机驱动小车直线行驶,同时红外对管开始检测黑带,检测到转弯标志线(白线)小车延时拐弯,进入障碍区后,小车的避障模块检测障碍物,单片机通过不断扫描检测所接受到的各传感器的信号来控制电机,每个传感器的功能可变,通过对白色标志线来计数判断是否到达功能变更区,若到达则改变传感器检测功能。
传感器信息处理子程序流程图
软件主程序:
#include
#include"12864.h"
#include"ad.h"
#include"motor.h"
#include"key.h"
sbitbull=P1^0;
ucharad[4];
uintzuo,you;
voidceshi();
main()
{bull=0;
time0_nit();
inPWM();
init_adc();
lcd_int();
xianshi();
while
(1)
{ceshi();
if(zuo<800&&you<100)
{
motor(1,mo1);
motor(2,mo2);
}
if(zuo>800&&you<100)
{motor(1,mo1);
motor(2,-mo2);
}
if(zuo<800&&you>100)
{
motor(1,-mo1);
motor(2,mo2);
}
}
}
voidceshi()
{
uchari;
zuo=ADC(6);
ad[0]=zuo/1000;
ad[1]=zuo/100%10;
ad[2]=zuo/10%10;
ad[3]=zuo%10;
lcd_pos(0,4);
for(i=0;i<4;i++)
{
write_dat(ad[i]+0x30);
}
you=ADC(7);
ad[0]=you/1000;
ad[1]=you/100%10;
ad[2]=you/10%10;
ad[3]=you%10;
lcd_pos(1,4);
for(i=0;i<4;i++)
{
write_dat(ad[i]+0x30);
}
ad[0]=':
';
ad[1]=mo1/100+0x30;
ad[2]=mo1/10%10+0x30;
ad[3]=mo1%10+0x30;
lcd_pos(2,2);
for(i=0;i<4;i++)
{
write_dat(ad[i]);
}
ad[0]=':
';
ad[1]=mo2/100+0x30;
ad[2]=mo2/10%10+0x30;
ad[3]=mo2%10+0x30;
lcd_pos(2,6);
for(i=0;i<4;i++)
{
write_dat(ad[i]);
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机器 设计 报告