当前位置:文档之家› 红外遥控小车

红外遥控小车

红外遥控小车系别:电气电子工程系专业:电子信息技术姓名:魏来方艳霞班级:10级电子信息一班学号:*************2010010201028指导老师:汪*目录一、绪论二、方案设计与论证三、硬件设计1)控制器模块选取2)电机模块选取3)电机驱动器模块选取4)电源模块选取5)红外遥控模块选取6)工作原理四、软件设计五、调试中存在的问题六、致谢七、参考文献一、绪论:随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。

可见其研究意义很大。

本设计就是在这样的背景下提出的,指导教师已经有充分的准备。

根据题目的要求,确定如下方案:在现有电动车模型的基础上,加装无线控制模块,电机驱动模块,实现对电动车的无线遥控,并将数据传送至单片机进行处理,然后由单片机根据所接收到检测的数据实现对电动车的控制。

这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。

所以本设计与实际相结合,现实意义很强。

二、方案设计与论证本章围绕系统的总体设计,介绍系统的组成,并提出各个组成部分系统的各种方案,并综合比较,并选出最佳方案。

根据题目的要求,整个系统的构成是由两部分组成。

一部分是硬件系统,一部分是软件系统。

硬件方案确定如下:在现有电动车模型的基础上,加装无线控制模块,电机驱动模块,实现对电动车的无线遥控,并将数据传送至单片机进行处理,然后由单片机根据所接收到检测的数据实现对电动车的控制。

这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。

三、硬件设计1)控制器模块选取本设计采用MCS-51系列中的80C51单片机。

80C51是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。

它是第三代单片机的代表。

第三代单片机包括了Intel公司发展MCS-51系列的新一代产品,如8xC152﹑80C51FA/FB﹑80C51GA/GB﹑8xC451﹑8xC452,还包括了Philips﹑Siemens﹑ADM﹑Fujutsu﹑OKI﹑Harria-Metra﹑ATMEL等公司以80C51为核心推出的大量各具特色﹑与80C51兼容的单片机。

新一代的单片机的最主要的技术特点是向外部接口电路扩展,以实现Microcomputer完善的控制功能为己任,将一些外部接口功能单元如A/D﹑PWM﹑PCA(可编程计数器阵列)﹑WDT(监视定时器)﹑高速I/O口﹑计数器的捕获/比较逻辑等。

这一代单片机中,在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。

Philips公司还为这一代单片机80C51系列8xC592单片机引入了具有较强功能的设备间网络系统总线----CAN(Controller Area Network BUS). 新一代单片机为外部提供了相当完善的总线结构,为系统的扩展与配置打下了良好的基础。

本设计就采用了比较先进的80C51为控制核心,80C51采用CHOMS工艺,功耗很低。

该设计具有实际意义,可以应用于考古、机器人、医疗器械等许多方面。

尤其是在足球机器人研究方面具有很好的发展前景。

所以本设计与实际相结合,现实意义很强。

8051引脚12)电机模块选取直流电机控制精度不高,步进电机步距值不受各种干扰因素的影响。

如电压的大小,电流的数值、波形、温度的变化等。

误差不长期积累。

步进电机每走一步所转过的角度与理论步距之间总有一定的误差,从某一步到任何一步,也总有一定的累积误差,但是,每转一圈的累积误差为零,所以步距的累积误差不是长期的累积下去。

控制性能好,启动、停车、翻转都是在少数脉冲内完成,在一定的频率范围内运行时,任何运动方式都不会丢失一步,故采用步进电机。

3)电机驱动器模块选取方案1使用功率三极管作为功率放大器的输出控制直流电机。

线性型驱动的电路结构和原理简单,成本低,加速能力强,但功率损耗大,特别是低速大转距运行时,通过电阻R的电流大,发热厉害,损耗大,对于小车的长时间运行不利。

方案2采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。

方案3采用由双极性管组成的H桥电路。

用单片机控制晶体管使之工作在占空比可调的开关状态,精确调整电机转速。

这种电路由于工作在管子的饱和截止模式下,效率非常高;H桥电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也很高,是一种广泛采用的调速技术。

综合3种方案的优缺点,决定选择方案3,其电路原理图如所示:4)电源模块选取在本系统中,需要用到的电源有单片机的5V,电机的电源7-15V。

所以需要对电源的提供必须正确和稳定可靠。

为了使单片机工作环境稳定,所以,单片机和驱动各有单独的电源供电,单片机由3节7号电池供电,电机电源我使用了两节废旧的手机电池,即节约了成本,也很环保。

5)无线控制系统方案一:无线遥控系统无线电遥控器(RF Remote Control)是利用无线电信号对远方的各种机构进行控制的遥控设备。

这些信号被远方的接收设备接收后,可以指令或驱动其他各种相应的机械或者电子设备,去完成各种操作,如闭合电路、移动手柄、开动电机、之后再由这些机械进行需要的操作。

作为一种与红外遥控器相补充的遥控控制器种类,在车库门、电动门、道闸遥控控制、防盗报警器、工业控制以及无线智能家居领域得到了广泛的应用。

无线遥控器和红外遥控器的区别红外遥控器和无线遥控器是对不同的载波来说的,红外遥控器是用红外线来传送控制信号的,它的特点是有方向性,不能有阻挡;无线遥控器是用无线电波来传送控制的信号的,它的特点是无方向性,可以不面对面控制,距离远(可达数十米,甚至数公里),容易受电磁干扰,在需要远距离穿透或者无方向性控制领域。

但是成本较贵,故不采用!红外遥控接收电路方案二:红外遥控系统红外遥控器(IR Remote Control)是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的遥控设备。

特点:不影响周边环境、不干扰其他其他电器设备。

由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需要任何调试即可投入工作;编解码容易,可进行多路遥控。

因此,现在红外遥控在家用电器、室内近距离(小于10米)遥控中得到了广泛的应用。

本设计采用红外遥控控制小车。

红外遥控系统框图1通用红外遥控系统由发射和接收两大部分组成。

应用编/解码专用集成电路芯片来进行控制操作,如图所示。

发射部分包括键盘矩阵、编码调制、LED 红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

2 遥控发射器及其编码当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。

这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms 的组合表示二制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms 的组合表示二进制的“1”。

上述“0”和“1”组成的32 位二进制码经38kHz 的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。

然后再通过红外发射二极管产生红外线向空间发射,如图所示。

产生的遥控编码是连续的32 位二进制码组,其中前16 位为用户识别产生的遥控编码是连续的32 位二进制码组,其中前16 位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。

该芯片的用户识别码固定为十六进制01H;后16位为8 位操作码(功能码)及其反码。

遥控器在按键按下后,周期性地发出同一种32 位二进制码,周期约为108ms。

一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms 之间,遥控连发信号波形当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms 的编码脉冲,遥控信号连发波形这108ms 发射代码由一个引导码(9ms),一个结果码(4.5ms),低8 位地址码(9ms~18ms),高8 位地址码(9ms~18ms),8位数据码(9ms~18ms)和这8位数据的反码(9ms~18ms)组成。

如果键按下超过108ms 仍未松开,接下来发射的代码(连发码)将仅由起始码(9ms)和结束码( 2.25ms)组成。

3 遥控信号接收接收电路可以使用一种集红外线接收和放大于一体的一体化红外线接收器,不需要任何外接元件,就能完成从红外线接收到输出与TTL 电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。

接收器对外只有3 个引脚: Out、GND、Vcc 与单片机接口非常方便。

①脉冲信号输出接,直接接单片机的IO 口。

②GND 接系统的地线(0V);③Vcc 接系统的电源正极(+5V)6) 工作原理系统结构框图单片机最小系统H桥式驱动电路四、软件设计总体流程图在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。

因此,软件设计在微机控制系统设计中占重要地位。

对于本系统,软件更为重要。

在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。

数据处理包括:数据的采集、数字滤波、标度变换等。

过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。

为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。

所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。

模块程序设计法的主要优点是:单个模块比起一个完整的程序易编写及调试;模块可以共存,一个模块可以被多个任务在不同条件下调用;模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。

C语言源代码实现:#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar time,flag,time1,time1ok;uchar timedate[33];uchar shu1[4]; //存放解码后的数据sbit A0=P1^0;sbit B0=P1^1;sbit C0=P1^2;sbit D0=P1^3;uchar wei,lai;解码函数void shu(){uchar i,val,j,k;i=1;for(k=0;k<4;k++){for(j=0;j<8;j++){val=val>>1;if(timedate[i]>6){val=val|0x80;}i++;//}shu1[k]=val;}}延时函数void delay(uint z){uint i,j;for(i=z;i>0;i--)for(j=560;j>0;j--);}void chuli()控制函数{switch(shu1[2])//shul[2]是解码的数据正码{case 0x40: A0=1;B0=0;C0=1;D0=0;wei=1;lai=0;break;case 0x19: B0=1;A0=0;C0=0;D0=1;wei=0;lai=1;break;case 0x15: A0=0;B0=0;C0=0;D0=0;wei=0;lai=0;break;case 0x07: A0=0;B0=1;C0=1;D0=0;P0=0;break;case 0x09: A0=1;B0=0;C0=0;D0=1;P0=0;break;}}主函数void main(){TMOD=0x02;TH0=0;TL0=0;ET0=1;TR0=1;EA=1;IT1=1;EX1=1;P1=0;while(1){if(time1ok==1){time1ok=0;//shu();}chuli();}}void t0() interrupt 1 //定时器中断函数{time++;}void int1() interrupt 3 //外中断函数{if(flag==1){if(time>32){time1=0;}timedate[time1]=time;time=0; //time1++;if(time1==33){time1=0;time1ok=1; //数据接收完成标志}//}else{time=0;flag=1;}}五、调试中出现的问题历时一个月的设计过程中,我首先边查资料,边在实验室焊接小车的线路板。

相关主题