09信息-颜敏玲-智能小车.doc_第1页
09信息-颜敏玲-智能小车.doc_第2页
09信息-颜敏玲-智能小车.doc_第3页
09信息-颜敏玲-智能小车.doc_第4页
09信息-颜敏玲-智能小车.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“第七届”电子设计大赛作品名称: 智能小车 团队成员: 颜敏玲 许聪 周兴 指导教师: 2011 年 4月5日 摘 要:本设计基于STC89C52单片机为控制核心的智能小车。小车完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快速稳定的寻线行驶。小车系统采用红外对管获取赛道的信息,通过PWM控制技术来对小车的方向和速度进行控制。关键词:STC89C52 寻迹 L298N LM393Abstract: The design is based on STC89C52 microcontroller to control the core of the intelligent car. Car key feature is the ability to complete self-identified black guide lines and under the black line to achieve rapid and stable search lane. Car system uses infrared to obtain the track information management through the PWM technique to control the direction and speed of car control. Keywords:STC89C52 Search light shooting L298N LM393 一、方案论证与比较1电源部分:方案1: 采用6节1.5V干电池供电,电压达到9v,经7805稳压后给支流电机供电,给单片机系统和其他芯片供电。但干电池电量有限,使用大量的干电池给系统调试带来很大的不便,因此,我们放弃了这种方案。方案2:采用1节9V电池给直流电机供电,经过7805的电压变换后给支流电机供电,给单片机系统和其他芯片供电。但由于电压不太够,价格昂贵,因此,我们放弃了。方案3:直接采用7.2V直流充电电池,再经7805稳压到5V供单片机,电机使用。由于用于本次设计演示的标轨道不太大,在演示时我们可以人为控制电源线部分,而且比较耐用,所以我们采用此方案,因为它最经济实惠。2、电机驱动控制部分: 这部分采用专门的电机控制芯片L298,它可同时对两个电机进行驱动控制,电路简单,控制效果好,干扰小,因此我们采用此方案。 3传感器探测部分:方案1:用光敏电阻组成光敏探测器。光敏电阻的阻值可以跟随周围环境光线的变化而变化。当光线照射到白线上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。因此光敏电阻在白线和黑线上方时,阻值会发生明显的变化。将阻值的变化值经过比较器就可以输出高低电平。 但是这种方案受光照影响很大,不能够稳定的工作。因此我们考虑其他更加稳定的方案。方案2:用RPR220型光电对管。RPR220是一种一体化反射型光电探测器,经过测试没有良好的要求,故放弃此方案。 方案3:用红外发射管和接收管自己制作光电对管寻迹传感器。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平,因此我们采用此方案。 二、理论分析与计算小车在前进时,要实现寻迹功能,可以采用高灵敏度的红外对管对地面进行扫描,接收到的信号由单片机处理从而控制L298实现小车的寻迹,使满足题目要求。三、系统设计 3.1硬件电路总体设计小车的控制系统主要以STC89C52为核心,对联系较紧密的模块分别进行控制,以提高系统的整体性能。其硬件结构图如下:3.2主控制模块STC89C52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 STC89C52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K字节在系统可编程 Flash。本设计采用了STC89C52为控制核心,P3口主要用于控制小车两个直流电机的驱动,P1口红外寻迹模块、轨道基准检测。3.3直流电机驱动模块对于车轮的两个直流电机,我们采用了一片L298为车轮提供驱动。STC89C52为芯片提供驱动信号,信号经过光耦隔离后,传至PWM控制两个电机的转速,从而调整小车的前进速度和转向。芯片控制方法:EN端为高,芯片工作;EN端为低,芯片停止工作。在EN端为高时,单片机向IN+输入PWM波时,电机正转;向IN-输入PWM波时,电机反转。PWM波的占空比越大,电机转速越快。3.4寻迹模块小车在地面行驶时,红外发出的红外信号被反射,接收管收到信号后,输出端为低电平。而当红外信号遇到黑色导轨时,红外信号被吸收,接收管没有接收到信号,输出端为高电平。经过测试,发现接收管输出端的低电平输出大致为0.42V,高电平的输出大致为3.65V,波形也不稳定。为了使单片机更好的识别信号,所以在接收管信号的输出端使用比较器LM393对波形整形。单片机通过采集每个红外接收管的输出端电压,便可以检测出轨道的位置,并控制小车的转向,使小车一直沿轨道前进。我们采用的自己制作光电对管寻迹传感器,它的是采用红外光电二极管和光电晶体管组成。通过测试,其检测距离在4mm-22mm。原理如下图: 图3.1 红外模块的设计3.5电源模块本设计中采用的是7.2V电池供电,因为主控芯片采用的5V供电,直流电机采用7.2V供电,其余电路都采用5V供电。四、软件设计4.1设计原理在本设计中用到了一片STC89C52,主要用于控制小车的寻迹,检测黑线;三片比较器LM393,采集循迹过程中的电压高低,比较,以让小车能迅速做出反应,达到循迹的目的。 4.2寻迹部分单片机通过控制P1口红外传感器,单片机对采集回来的数据分析小车相对于轨迹的位置,适当的做出左转或右转。电机驱动部分由定时器产生PWM来控制,通过对其占空比的调节达到对车速的控制由P3控制。4.3软件设计结构图寻迹检测小车运动控制(左转,右转,直行,停止)电机控制超过基准点检测4.4软件设计流程框图开始启动寻迹程序探 测 黑 线是否探测到黑线判断处理程序(switch)右轮探测到黑线左轮探测到黑线左右轮同时探测到黑线向 右 转向 左 转继续前进继 续 前 进是否结束五、系统测试1、测试仪器序号类型型号序号类型型号1直流稳压稳流电源4白纸2万用表53黑胶带2、测试数据对于小车的整体来说测试按模块来进行,分为以下几个步骤: 1.首先测试电源的工作情况,各个模块能否得到良好供电。 2.光电管安装完成后测试每个光电管的电压变化情况,完成后根据测试数据调节电位器选择合适的参考电压然后依次测量比较器或运放的输出端有无根据检测到黑线的情况产生相应的电平变化,若没有则检查相应的电路和元件好坏,测试成功后进行下一步。 3.检查单片机能否正常的烧写程序和工作。 4.用单片机产生不同占空比的信号控制舵机进行转角测试,找出小车转向的参考点和对应的PWM设置参数。 5.测试后轮电机的工作情况,并试验在不同频率和占空比的情况下电机的驱动能力,记录相应的参数。 6.编写测试程序让小车初步运行。 经多次测试小车基本能在所设的黑线行驶,小车的转速不是很稳定,小车整体稳定性也有待改善。 六、结论通过这次电子竞赛,不仅锻炼了我们单片机硬件设计的能力,也进一步掌握了C51语言的编程,让我对自动控制领的相关理论有了更深刻的认识,同时也看到了教学知识与工业应用的差距。这次运用的处理器是C51单片机,程序是用C语言编写的,这不但要求设计者具有较强的编程能力,还要对硬件相当熟悉。在制作过程中我们也遇到了不少的问题,电机开始不工作,转速不一样,不能正常循迹,在调试的过程中,我们一起寻找问题,发现问题!最终解决问题,让小车最终达到设计目的.虽然小车已经达到循迹目的,但还可以扩展很多功能,比如说寻光避障等!现在专业知识有限,这也促使我们要努力学习,为更高的层次努力!附录一、相关设计图 图1.单片机电路模块 图2. 电机驱动模块 图3.红外检测模块附录二、相关设计程序 /*/ 说明 */单片机的P1口接比较后的红外信号,且低位口接左边的红外检测信号 */ 左 1号红外管信号入P10- 右边1号红外管信号 */从P15输入。 */L298N中ENA.IN1(前),IN2(后) 用于控制左轮 */ ENB,IN3(前),IN4(后) 用于控制右轮 */ * /*#includevoid timer0_init(); /扫描void timer1_init(); /产生PWM波 unsigned char countR; unsigned char countL; unsigned char count1; unsigned char PWM_signL; unsigned char PWM_signR; unsigned char PWM_TR; unsigned char PWM_TL; sbit ENA=P32; sbit ENB=P35; sbit IN1=P37; sbit IN2=P36; sbit IN3=P33; sbit IN4=P34; /*/函数名:main()/函数功能:主函数 用于返回扫描的值 设定PWM波的占空比/入口参数:无/函数返回值:无/*void main()IN1=1; IN2=0;IN3=1;IN4=0; PWM_TR=30; PWM_TL=30; timer0_init(); timer1_init();while(1)if(count1=10) count1=0; if(P1=0xfe) / 黑线在左1 管下PWM_signL=30; PWM_signR=1 ; P2=0X01; else if(P1=0xfc) / 黑线在左12 管下PWM_signL=30 ; PWM_signR=1 ; P2=0X02; else if(P1=0xfd) / 黑线在左2 管下 PWM_signL=25; PWM_signR=1 ; P2=0X04; else if(P1=0xf9) / 黑线在左23 管下PWM_signL=25 ; PWM_signR=1 ; P2=0X03; else if(P1=0Xfb) / 黑线在左3 管下PWM_signL=20 ; PWM_signR=1; P2=0X07; else if(P1=0XF8) /在左123下 PWM_signL=1; PWM_signR=30; P2=0X05; else if(P1=0xf3) / 黑线在中间34 PWM_signL=1 ; PWM_signR=1 ; P2=0XFF; else if (P1=0XC7) /在右123下 PWM_signL=1 ; PWM_signR=30 ; P2=0X28;else if(P1=0xf7) / 黑线在右3 管下PWM_signL=1 ; PWM_signR=20 ; P2=0X30; else if(P1=0xe7) / 黑线在右23 管下PWM_signL=1; PWM_signR=25; P2=0X18; else if(P1=0xef) / 黑线在右2 管下PWM_signL=1; PWM_signR=25; P2=0X20; else if(P1=0xcf) / 黑线在右12 管下 PWM_signL=1;PWM_signR=30; P2=0X10; else if (P1=0xdf)/ 黑线在右1 管下 PWM_signL=1 ; PWM_signR=30 ; P2=0X08; else if(P1=0xff) PWM_signL= 1; PWM_signR= 1; /*/函数名: timer0_init()/函数功能: 初使化定时器T0 用于产生PWM/入口参数: 无/函数返回值:无/*void timer0_init() EA=1; TR0=1; ET0=1; TH0=(65536-10000)/256; TL0=(65536-10000)%256; /*/函数名: timer0()/函数功能: 定时器T0 用于扫描红外对管 T=10ms /入口参数: 无/函数返回值:无/*void timer0() interrupt 1TH0=(65536-10000)/256; TL0=(65536-10000)%256; count1+ ; /*/函数名: timer1_init()/函数功能: 初使化定时器T1/入口参数: 无/函数返回值: 无/*void timer1_init()EA=1; TR1=1; ET1=1; TH1=(65536-10)/2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论