遥控壁障小车_第1页
遥控壁障小车_第2页
遥控壁障小车_第3页
遥控壁障小车_第4页
遥控壁障小车_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机课程设计-数字时钟第十届电子设计大赛设计名称:红外遥控多功能小车 所在学院:电气与控制工程学院 专业班级:微电子学 09 学生姓名:熊佳云 郑 强 彭蕴博 学生学号:0906090220、0906090225、0906090217完成时间:2012/06/29 目录摘要31.设计背景及意义 42.方案设计与论证42.1主控制器方案比较与选择42.2电机驱动方案比较与选择52.3避障方案比较与选择62.4遥控方案比较与选择72.5显示方案比较与选择72.6报警方案比较与选择83.硬件电路设计83.1主控制器模块93.2红外遥控模块103.3电机驱动模块113.4显示模块123.5红外避障模

2、块123.6温度检测模块123.7报警模块134.软件设计144.1主程序流程图144.2部分主要模块的流程图154.2.1实时时钟模块的流程图154.2.2 LCD12864流程图165.系统调试及结果分析175.1 LED 12864的测试方法和结果175.2 DS18B20175.3遥控程序175.4产品最终调试175.5实际调试情况175.6功能及不足18参考文献19附录1:总体电路原理图20附录2:详细程序(主程序部分)21附录3:元器件清单28红外遥控多功能小车摘要: 本设计利用STC89C52单片机为核心,制作一款红外遥控小车,使其具有自动驾驶,手动驾驶,实时状态显示和温度监测等

3、功能。自动驾驶时,前进过程中可以避障。手动驾驶时,遥控控制小车前进、后退、左转、右转等操作。其中小车驱动由L298N驱动电路完成;小车状态用LCD12864显示;由红外对管检测障碍物;DS18B20检测实时温度;红外一体接收器HX1838与红外发射器(38K)遥控小车。关键字:STC89C52、DS18B20、L298N、红外遥控、12864液晶、避障Infrared remote control multi-function carAbstract: the design using STC89C52 as the core, making a infrared remote control

4、 car, make its have automatic driving, artificial driving, real-time status display and temperature monitoring etc. Automatic drive forward process can obstacle avoidance. artificial driving, remote control car forward, backward, left turn, turn right and operation. Among them the small car driven b

5、y L298N driving circuit is complete; The car with LCD12864 state display; To the test by infrared barrier; DS18B20 testing real-time temperature; Ir a HX1838 infrared transmitters and receivers (38 K) remote control the car.Key word: STC89C52, DS18B20, L298N, infrared remote control, 12864 LCD, obst

6、acle avoidance1. 设计背景及意义自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。该智能小车可以作为机器人的典型代表。现智能小车发展很快,从智能玩具到其它各行业都有实质成果。其基本可实现循迹、避障、检测贴片、寻光入库等基本功能,这几节的电子设计大赛智能小车又在向声控系统发展。比较出名的飞思卡尔智能小车更是走在前列。我此次的设计主要实现遥控,避障,温度监测这几个功能。2.方案设计与论证根据要求,确定

7、如下方案:手动设计小车车身硬件,加装各个控制模块,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。2.1 主控制器方案比较与选择方案一:采用各类数字电路来组成小车的控制系统,对外围避障信号,自动寻迹信号,无线遥控信号,语音控制信号进行处理。本方案电路复杂,灵活性不高,效率低,不利于小车智能化的扩展,对各路信号处理比较困难。方案二:采用STC89C52单片机来作为整机的控制单元。红外线探头采用市面上通用的发射管与及接

8、收头,经过比较芯片调制处理后由控制系统接收。路线寻找采用红外线管对路面信号采集,送到单片机系统处理,同样包括无线遥控信号和语音控制信号。此系统比较灵活,采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现,能很好地满足题目的要求。比较以上两种方案的优缺点,方案二简洁、灵活、可扩展性好,更能达到题目的设计要求,因此采用方案二来实现。图1 STC89C522.2 电机驱动方案比较与选择方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。方案二:采用电阻网络或数字电位器

9、调节电动机的分压,从而达到分压的目的。但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅回降低效率,而且实现很困难。方案三:采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的 H型桥式电路(如图2.1)。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的 PWM调速技术。现市面上有很多此种芯片,

10、我选用了L298N(如图2.2)。这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。图2 L298N引脚图图3 L298N2.3避障方案比较与选择方案一:采用超声波避障,超声波受环境影响较大,电路复杂,而且地面对超声波的反射,会影响系统对障碍物的判断。方案二:采用红外线避障,利用单片机来产生38KHz信号对红外线发射管进行调制发射,发射出去的红外线遇到避障物的时候反射回来,红外线接收管对反射回来信号进行解调,输出比较电平。外界对红外信号的干扰比较小,且易

11、于实现,价格也比较便宜,故采用方案二。红外线避障方法,利用一管发射另一管接收,接收管对外界红外线的接收强弱来判断障碍物的远近,由于红外线受外界可见光的影响较大,因此通过调制信号产生38KHz的载波来减少外界的一些干扰。只要障碍物在限定范围内就会产生相对的电平供单片机控制,实现避障功能。图4 红外对管2.4遥控方案比较与选择方案一:由发射和接收两大部分组成红外遥控系统,应用编/解码专用集成电路芯片来进行控制操作,发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路等。一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线接

12、收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输,但使用的时候必须将遥控器前的红外发射孔对准接收管才可以。方案二:无线电遥控也由发射和接收两大部分组成,由于无线电遥控模块在市场上非常普及,加上无线电遥控有传输距离远、抗干扰能力强、无方向性等优点,对于小车的控制是一个不错的选择。方案三:超声波遥控是利用超声波来传送指令的遥控,可以应用于需要遥控、遥测的场合。采用AX5326与AX5327等构成的遥控系统具有体积小、功耗低、功能强大、抗干扰能力强等优点。但由于超声波遥控价格相对上面两种价格较贵,而且对于小车的遥控也太过于夸大化。结合三

13、种方案,方案一,模块简单一体化,方便使用。2.5 显示方案比较与选择方案一:直接要数码管或者7段数码管加MAX7219驱动显示。MAX7219驱动7段数码管采用低电压扫描驱动具有:可以节约单片机I/O口,耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远等特点;但是显示单一,只能显示数字和几个字母。就本设计而言需要显示很多的操作提示信息和报警信息,数码管是难以达到的;且本设计需要单片机I/O口并不多,就STC89C52的资源来说不必要考虑单片机I/O不必要考虑I/O口资源不足的问题。方案二:LED点阵显示。LED点阵可以显示多种字符以及图形,可视距离远,可用软件进行调制,有很强的兼

14、容性以及可操作性。但是需要占要很多系统资源来对其控制;而就STC89C52单片机的速度或系统资源来说控制LED点阵的效果并不很理想,而且LED点阵结构比较庞大,不利随身携带。方案三:LCD液晶显示。LCD液晶零辐射、低功耗、散热小、体积小、图像还原精确、字符显示锐利控制简单等。与数码管相比显得更为专业、漂亮;液晶显示屏以其微功耗体积小,显示内容丰富、超薄轻巧、使用方便等诸多优点,在通讯、仪器仪表、电子设备、家用电器等低功耗应用系统中得到原来越广泛的应用,使这些电子设备的人机界面变得越来越形象,目前已广泛的饿用于电子表、计算器、IC卡电话机机,液晶电视机、掌上玩具许多方面;虽然视觉范围较近,不太

15、利于远处观察。对于本设计来说只是做为红外遥控小车的温度显示及人机操作界面提示信息,不需要远距离观察,如果需要远距离观察的的话应该首选LED点阵显示。本例结合需要及实际经济情况综合考虑使用液晶LCD128*64作为时间、温度及信息显示。图5 LCD128642.6报警方案比较与选择方案一:采用DS1420语音芯片可分段录放音模块,音质自然、使用方便、单片机存储、反复录音、低功耗、能够给人以直观的提示等诸多特点。在本系统中可以要于随时提示时间和温度以及上下限播报不同报警音乐。但是价格比较昂贵,本设计的来说可以暂时不考虑。方案二:采用单片机产生不同的频率信号来驱动蜂鸣器和发光二极管产生声光提示,不同

16、的温度报警值对应不同的频率,此方案能完成声音提示功能,同时给人以提示可以类似电脑主机的蜂鸣报警,而且易于实现。故此红外遥控小车的报警方案采用方案二。3.硬件电路设计采用STC89C52为主控芯片、直流电机和绝缘板手工车身、L298N为电机驱动、DS18B20为温度传感器、(38k)小型红外21键发射模块为红外发射模块、一体化红外接收头位红外接收模块、显示模块利用蓝屏的12864液晶。Stc89c52LCD显示时钟电路复位电路报警电路电机驱动避障红外对管温度电路遥控电路图6 电路设计总框图3.1主控制器模块本模块采用51系列单片机作为核心处理器。单片机控制系统基本由最小系统和外围信号I/O口组成

17、,其中最小系统包括电源(地),CPU时序电路(一般使用11.0592M或者12M和30P电容组成),复位电路。有了以上三块,单片机就能够正常工作。STC89C52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C52引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的STC89C52可为许多嵌入式控制应用系统提供高性价比的解决方案。其应用范围广,性

18、能良好,可用于解决复杂的控制问题。利用STC89C52的IO端口对传感器信号进行实时判断监控来控制步进电机做出相应的反映。如图7是较为常见的带烧录接口的单片机最小系统图。图7 单片机最小系统3.2红外遥控模块此模块实现了无线电远距离控制小车的停启、方向行驶的功能,在整个小车系统中起到不可忽视的作用。 图8是无线电遥控设备方框图,由发射机、接收机及执行机构三部分组成。发射机主要包括编码电路和发射电路。编码电路由操纵器(操纵开关或电位器等)控制,操纵者通过操纵器;使编码电路产生所需要的控制指令。这些控制指令是具有某些特征的、相互间易于区分的电信号,例如:用频率为270Hz的正弦信号作为控制左舵的指

19、令,用频率为350Hz的正弦信号作为控制右舵的指令,即不同频率的正弦信号代表不同的控制指令。除了可利用频率特征外,还可用正弦信号的幅度及相位特征、脉冲信号的幅度、宽度及相位特征以及码组特征等表示各种指令。图8 无线电遥控设备方框图图9 红外接收电路3.3电机驱动模块小车电机为直流减速电机,带有齿轮组,考虑不需调速功能,所以采用电机驱动芯片L293D。L293D是著名的SGS公司的产品。为单块集成电路,高电压,高电流,四通道驱动,设计用来接收DTL或者TTL逻辑电平,驱动感性负载(比如继电器,直流和步进马达),和开关电源晶体管。内部包含4通道逻辑驱动电路。L293D可直接的对电机进行控制,无须隔

20、离电路。通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转,停止的操作,非常方便,用程序输入对应的码值,能够实现对应的动作,有效控制电机运动,如图3-13 电机驱动原理图。J16和J17控制左边电机,J18和J19控制右边电机。取左边电机为例,当J16输入数字电平“1”, J17输入数字电平“0”时实现正转;当J16输入数字电平“0”, J17输入数字电平“1”时实现反转;当J16输入数字电平“0(1)”, J17输入数字电平“0(1)”时实现停止;最后结合左右电机通过单片机共同实现小车的前后左右四个方向行驶。图 10 电机驱动原理图3.4显示模块 采用LCD12864液晶显示

21、,其中RS接P2.5;RW接P2.6;E接p2.7 ;D0D7接P0P7具体电路如图11:图11 液晶显示电路3.5红外避障模块红外避障模块主要实现小车的避障处理,当小车检测到前面有障碍物时,由单片机发出指令实现小车停止功能。其实现原理与红外线对管寻迹模块基本一致,只是为了实现更好的避障效果(主要是距离问题),所以采用了红外对管模块。市面上有很多红外传感器,在这里我选用TCRT5000型光电对管。图12 红外避障3.6温度检测模块DS18B20采用一线传输协议,可以使用外部电源工作方式也可以采用寄生电源工作方式,本设计中采用外部电源工作模式,具体电路如图13:图13 温度采集电路3.7报警模块

22、 闹铃模块由三极管驱动蜂鸣器构成。图14 蜂鸣器电路4软件设计4.1 主程序流程图开始初始化各端口查询按键有键按下?NY检测按键遥控控制?方向行驶避障控制?避障控制?停止结束YYYNNN中断保护现场温度刷新显示中断返回恢复现场图15 主程序流程图4.2 部分主要模块的流程图4.2.1避障模块的流程图开始后退一点,报警后退右转前进左转右转是否检测到障碍前进图16 避障流程图4.2.2 LCD12864流程图LCD12864的驱动是初始化,清屏。然后打开左半屏,输入左半屏的内容。关掉左半屏,打开右半屏,输入右半屏的内容。入口串口初始化12864液晶初始化时钟更新判断是否有标定键按下是否接受的角度信

23、号进行数据处理以便在液晶上显示键盘扫描液晶显示图17 LCD12864流程图5系统调试及结果分析为了提高调试的效率和成功率,我采用先分别调试各单元模块,再进行整机调试的方法来调试。5.1 LED128*64的测试方法和结果把编写的程序通过单片机仿真软件进行测试,如果在测试过程中,能够通过液晶显示屏正常显示读取时间的信息,那么说明子程序编写正确;如果测试中,显示的结果与我们要求的不一致,那说明程序在编写中出现错误,就应该修改子程序,直到能正确读取时间信息为止。 5.2 DS18B20的测试方法和结果利用仿真软件不断修改DS18B20仿真元件的温度实际值,结果显示的与之相同,说明读温度显示程序编写

24、正确。5.3 遥控程序的测试方法和结果把编写的键盘程序通过单片机仿真软件进行测试,在测试过程中,能够实现时间的调整(自加、自减)功能,那么说明该子程序编写正确;如果测试的结果与要求的不一致,那么就应该修改该子程序,直到正确为止,在修改过程中,不必去改动其它部分程序。5.4 产品最终调试在分别调试成功每一个部分的程序后,我们就可以把整个系统的程序进行调试,在调试中,将整个项目的程序写入单片机中进行产品环境测试,该程序能按照系统预定的步骤运行,那么说明程序编写正确;如果在调试中出现了我们不需要的结果,那么说明程序出现错误,这时就应该检查主程序在调有子程序及子程序与子程序之间有没有出现错误,其次就检

25、查硬件连接正确与否。使用按键说明:K1,避障入口键;K2,前;K3,左;K4,停;K5,右;K5,后。5.5实际调试情况通过改变循迹板滑动变阻器器的大小来调试红外对管的灵敏度,通过改变延时程序来改变速度的大小。下表为小车运行的情况:表5.1 小车调试情况小车运行次数成功遥控次数成功避障次数1112213324425545.6功能及不足整个系统的设计以单片机为核心,利用了多种传感器,将软件和硬件相结合。本系统能实现如下功能:(1)当小车探测到前进前方的障碍物时,可以自动报警调整,躲避障碍物,从无障碍区通过。小车通过障碍区后,能够自动循迹(2)温度测量精确。(3)能较好的遥控控制。从运行情况来看避

26、障的效果比较好,遥控的效果不是很好,我认为是由于电源不能稳定而是的小车的速度不好控制,这也是我这次设计最大的误区,没有选取稳定的电源。我相信如果实验条件和时间的允许下我肯定能解决这一问题。 通过本次设计我掌握了很多以前不熟练的东西,认识了很多以前不熟悉得东西,使我在人生上又进了一步。也认识到很多的不足。参考文献1 柴钰.单片机原理及应用M.西安,西安电子科技大学出版社.20052 王法能.单片机原理及应用M.北京,科学出版社,20063 赛组委会.全国大学生电子设计竞赛获奖作品选编M.北京,北京理工大学出版社.20074郭惠,吴迅.单片机C语言程序设计完全自学手册M.北京,电子工业出版社,20

27、08.10:1-200.5王东锋,王会良,董冠强. 单片机C语言应用100例M.北京,电子工业出版社,2009.3:145-300.6韩毅,杨天. 基于HCS12单片机的智能寻迹模型车的设计与实现J.学术期刊,2008,29(18):1535-1955.7 王晓明. 电动机的单片机控制J. 学术期刊,2002,13(15):1322-1755.附录1:总体电路原理图图18 总电路原理图附录2:详细程序(主程序部分)#include #include 51-12864.h#include ds18b20.hsbit EA0=P00;sbit EA1=P01;sbit EB0=P02;sbit E

28、B1=P03;sbit mid_red=P14;sbit right_red=P15;sbit left_red=P16;sbit beep=P17; /蜂鸣器端口uchar table=多功能小车;uchar irtime;uchar startflag;uint irdata33; /引导码1位,客户码8位,客户码8位,数据码8位,数据反码8位uchar bitnum;uchar irreceok;uint ircode5;uchar irprosok;uchar irworke;uint disp8;uchar code tab=0x30,0x31,0x32,0x33,0x34,0x35

29、,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46;/0-fvoid front(void);void front1(void);void right(void);void left(void);void back(void);void stop(void);void bizhang(void);/延时函数,在12MZ的晶振频率下/大约50us的延时/*void delay_50us(uint t)uchar j;for(;t0;t-)for(j=19;j0;j-);void Temp() ReadTemp(); /开启温度采集程序 temp_to_str(); /温度数据转换成液晶字符 Write_Com(0x90+6); /液晶字符显示位置 Print(TempBuffer); /显示温度void timer0init(void) /定时器0定时方式2初始化TMOD=0x02;TH0=0x00;TL0=0x00;ET0=1;EA=1;TR0=1; void int

温馨提示

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

评论

0/150

提交评论