版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于单片控制的智能小车设计摘要本论文详细介绍了基于单片机的智能小型车的设计目的、硬件电路设计、软件设计和系统软件。整个小车的控制核心我选择的是单片机,主要包括单片机控制模块、遥控模块、避障模块、循迹模块、速度显示模块等模块。智能小车要实现自动避障功能、循迹行驶、显示实时速度和遥控功能。基于上述要求,传感检测部分考虑到小车一般不用感知清晰的图像,只要求大概感知即可,所以可以抛弃价格昂贵的超声波测距而考虑采用物美价廉的红外反射式传感器来充当,本文采用的是TCRT5000红外探头。智能小车的执行部分是用直流电机来实现的,本设计用到了2个直流电机,用了L298N和L293D来驱动,主要控制小车的前进
2、方向和速度。单片机我选择STC89C52单片机,此单片机能满足本设计的要求,电路设计也比较简单,价格便宜,电源模块采用2块3.7V的锂电池,需要稳压电路来输出稳定的5V电压,显示模块采用液晶LCD1602即可满足需求,红外接收采用1838红外接收头,红外遥控采用HT6221编码芯片,经过数次调试,虽然功能实现有些瑕疵,但是在大体上本设计还是基本实现了所要求的功能。关键词:LCD1602;直流电机;STC89C52RCIAbstract This paper introduces the design purpose, hardware circuit design, software desi
3、gn and system software of a smart small vehicle based on single-chip microcomputer. The control core of the entire car I chose is a single-chip microcomputer, which mainly includes a single chip microcomputer control module, a remote control module, an obstacle avoidance module, a tracking module, a
4、nd a speed display module. Smart cars need to achieve automatic obstacle avoidance, tracking, display real-time speed and remote control functions. Based on the above requirements, the sensor detection part takes into account that the car generally does not need to perceive a clear image, and only r
5、equires perception, so it is possible to abandon the expensive ultrasonic ranging and consider adopting an inexpensive infrared reflective sensor to act. The TCRT5000 infrared probe. The implementation part of the smart car is realized by a DC motor. This design uses two DC motors, which are driven
6、by L298N and L293D, and mainly control the forward direction and speed of the car. MCU I choose STC89C52 MCU, this MCU can meet the design requirements, circuit design is relatively simple, cheap, power module uses two 3.7V lithium battery, the need for voltage regulator circuit to output a stable 5
7、V voltage, the display module uses LCD1602 The screen can meet the demand. Infrared receiver adopts 1838 infrared receiver, and infrared remote controller adopts HT6221 encoder chip. After several debuggings, although the function is somewhat awkward, the design basically fulfills the required funct
8、ions.Key words: LCD1602; direct current machin; STC89C52RC II目录第一章 绪论11.1 课题背景和意义11.2 课题研究现状和发展趋势11.2.1 研究现状11.2.2 发展趋势21.3 课题内容和要求2第二章 总体方案设计与论证42.1 遥控控制模块设计与论证42.2 电机驱动模块设计与论证52.3 避障循迹模块设计与论证62.4 数据显示模块设计与论证62.5 转速测量模块设计与论证72.6 电源模块设计与论证7第三章 各模块硬件电路设计93.1 红外遥控发射器模块93.1.1 红外遥控模块的工作原理93.1.2 HT6221编码
9、芯片简介103.1.3 红外遥控发射器113.2 单片机控制模块123.2.1 单片机模块电路123.2.2 复位电路133.2.3 振荡电路143.3 红外接收器及解码143.4 电机驱动模块163.4.1 直流电机的工作原理163.4.2 L298N和L293D芯片简介17I3.4.3 直流电机驱动电路设计183.5 避障循迹模块193.6 转速检测模块213.7 数据显示模块223.8 电源模块23第四章 系统软件设计244.1 系统总体程序流程图244.2 避障循迹模块程序设计254.3 红外遥控模块程序设计4.4 数据显示模块程序设计27第五章 系统软件调试245.1 电机驱动的调试
10、195.2 红外探测的调试215.3 测速及显示模块225.4 红外遥控的调试23第六章 总结与展望286.1 总结286.2 改进与展望28参考文献29致谢30附录A 各模块电路图31附录B 程序39III第一章 绪论1.1 课题背景和意义自从进入信息时代,高新技术发展的十分迅速,未来的社会朝着智能化的方向发展。意思是我们可以先设定一个目标,不需要人去操作就可以达到目标。本设计的智能小车采用的技术可以为运输和探险领域提供相关的技术参考。相信大家都清楚,小车是可以作为玩具的,所以本设计也可以为玩具行业所借鉴。智能小车一般选择超声波来实现避开障碍物的功能,在将来的智能汽车行业中将会大量使用。我国
11、科技发展很快,在超声波应用在汽车的研究有大量的研究成果。我国汽车保有量巨大,每年发生的车祸带走了很多人的生命,除了意外车祸,还有大部分的酒驾,所以智能车可以代替醉酒的人驾驶,可以减少醉驾死亡率,还有一些疲劳驾驶,也可以提醒驾驶人员或者代替驾驶,可以拯救不少人的生命,这种类型的小车可以用来去探测外太空,还可以去一些环境十分恶略的地方,人们去的话会有生命危险,比如喜马拉雅山、南极、海底世界等地方,既能完成目的,也能减少人们的生命危险,所以说,本课题的研究意义远大。1.2 课题研究现状和发展趋势 1.2.1 研究现状一开始,科学家只能造出模仿人类动作的机器人,之后诞生了一款能自己移动的机器人,经过了
12、几十年的大力发展,智能化产品的功能越来越多,这些功能大部分都很实用,人们的需求越来越大,所以很多国家都投入大量科研人员和资金来研发智能领域。想要让机器人跟人一样,就必须有人的感知功能,所以法国提出了这样的计划去研究这样的功能,让机器人模仿人所处的环境,能自己去认知事物并且做出处理。但是美国人做出来的机器人更有趣味性了,它就像一个保姆,帮主人扫地、开门、送东西、洗衣服等等家务事,甚至还可以陪孩子们交流和读书,可以作为孩子们有烦恼时的倾诉对象。现在的医疗事故频发,由于医生的疏忽造成手术失败导致病人死亡是不能让人接受的,所以智能机器人可以精确的为患者做手术,安全性会大大提升。中国经历了几十年的发展,
13、智能领域硕果累累,在军事领域尤为突出,已经开发出危险作业机器人、仿人机器人等等在军事上实用性很高的机器人。同样国内很多大学也有相关的研究,并且取得了傲人的成绩,比如中国科学院研究的对话机器人,上海交通大学做出了具有很强翻越障碍物的机器人等等,我国正努力加大研发力度,超越其他国家争第一指日可待。 1.2.2 发展趋势现在各大高校相继开设智能机器人的专业课程,培养了大批智能领域的人才,将来的技术会越来越成熟,研发的机器人具备生物机电系统,所以也将会越来越智能化,更具有实用性和趣味性,为了方便使用,机器人会越来越轻盈和小巧,能无限接近人类的思想,但是无论如何发展,人类只会统治机器人,不会被机器人操控
14、人类,这是我们人类的底线和原则,不可侵犯,期待未来的机器人能实实在在得提高社会生产力,为人类创造更高的价值,并且会极大改变人们的生活方式,是人类的好朋友。1.3 课题内容和要求本设计的核心控制部分是由单片机来充当的,主要包括单片机控制模块、遥控模块、避障模块、循迹模块、数据显示模块等模块。要求能够实现以下几种功能:(1)遥控功能,即通过遥控器来控制小车的启动、停止、左转、右转、后退等动作。(2)自动避障功能,即小车在前方遇到障碍时可以立即做出反应,自动左转或右转躲避障碍。(3)自动循迹功能,即小车可以自动沿着规定的路线行驶。(4)能够实时显示小车行驶的速度。要求通过此次的实际动手设计掌握以下基
15、本技能:(1)熟悉电子产品的设计和开发流程;(2)掌握单片机原理、稳压原理、循迹原理等等;(3)能独立设计硬件电路和系统软件;第二章 总体方案设计与论证本设计方案选择AT89C52单片机作为整个系统控制的核心,主要由两部分组成,分别是红外遥控发射部分和智能小车。其中智能小车部分主要由以下子模块构成:单片机控制模块、电源模块、电机驱动模块、循迹避障模块、转速检测模块、红外接收器和数据显示模块组成;红外遥控发射部分主要由遥控按键、编码芯片、红外发射三个部分构成。其总体设计框图包括两个部分,如图2.1所示: a 遥控部分框图 b 小车部分框图 图2.1 系统总体设计框图2.1 遥控控制模块设计与论证
16、如今用的最多的遥控方式有2种,红外遥控控制系统和无线遥控控制系统。方案一:选择红外线遥控装置作为小车遥控器。红外遥控是通过遥控发射器中的编码芯片将关键信息调制成一系列的0和1二进制代码。然后通过红外线发射,最后由红外接收器接收和解码,然后用单片机识别解码后的码信息。然后根据不同的码信息进行不同的控制操作。方案二:选择无线遥控器作为小车的遥控器。无线电遥控是使用不同频率的无线电波来控制各种远程设备的遥控装置。当远程设备接收信号后,它们就可以在远处操控这些设备的运行了。红外遥控和无线遥控的区别是载波的差异,红外遥控通过红外线来发送信号,特点是具有不可阻挡性且有方向性,适用的范围较短,超过7m之后就
17、失效了,无线遥控用无线电来发送信号,不具备方向性并且可控制的距离大大提升,可达几十米甚至数千米。上述的两种思路都可以作为本设计的遥控器,虽然无线遥控控制的距离更远也更加精确,但是本小车只需要在数米范围内被控制就可以了,所以我选择的是方案一的红外遥控,优势是设计简单, 不需要过于复杂的设计。2.2 电机驱动模块设计与论证目前比较常用的小车驱动电机主要有两种选择:方案一:选择直流电机作为本车的动力驱动。直流电机是将直流电能转换为机械能的一种装置,因其转动力矩大、体积较小、质量轻,所以被人们广泛应用在一些小的电子产品上。直流电动机的运行方式是使其内的圆环磁铁产生磁场。当转子上的绕组被通电时,励磁线圈
18、在线圈中产生磁场中的洛伦兹力,转子旋转。当转子旋转时,励磁线圈中磁场的方向将改变,因此绕组上的电流也将改变方向。在恒定方向的洛伦兹力控制下,电机将继续顺时针或逆时针旋转。H桥电路直接驱动直流电机控制电机的正反旋转。通过软件编程,单片机输出具有不同占空比的PWM(脉宽调制信号),控制直流电机的转速,控制小车的运行速度。方案二:选择步进电机作为本车动力传动装置。步进电机将从输入端输入的电脉冲信号转换为转子的角位移,实现电机的精确定位。电机的转速取决于脉冲信号的频率,旋转次数取决于脉冲的数量,也就是说,当步进电机收到一个脉冲信号时,转子就会旋转一定的角度,如果步进电机收到持续不断的脉冲波形,它就会一
19、直旋转下去,这就是步进电机的工作原理了。本设计我选用的是直流电机,跟步进电机对比,直流电机则有快速反应、更大的启动转矩、更优秀的额定转矩性能,出故障后能快速和简单的维修,所需费用少很多。2.3 避障循迹模块设计与论证经过筛选,为了避障功能的实现我得出了以下两种方案:方案一:选择红外反射光电传感器、电压比较器和一些电阻器组成的障碍物检测电路用于检测汽车前面的障碍物。障碍物检测电路安装在小车前部的左右两侧,检测小车前部的障碍物。障碍物检测过程如下:红外发光二极管发射红外光,如果遇到在车前方的障碍物,红外线被物体反射回来的光被吸收,光敏三极管在这个时候是处于工作状态的,单片机就会收到输出端输出的低电
20、平信号,然后单片机调用循迹避障子程序,控制车子做出相应的避障动作。当左侧遇到障碍时,SCM将自动调用右转子程序来控制其右转。当右侧遇到障碍时,SCM将自动调用左转子程序来控制其左转。当没有障碍,发射的红外线光不反射,光敏三极管处于截止状态,输出高电平信号,车子继续向前。方案二:选用超声波原理检测道路的障碍。其原理如下:车子在行驶过程中遇到障碍物后,超声波发射器发射的超声波就会被反射回小车的接收装置,然后接收装置就会产生相应的电信号再转换为高低电平信号被单片机接收处理,车子就会做出相应的反应,假如接收到的是高电平说明车子遇到障碍物了,这时调用相应的程序就可以实现避障操作了。根据实际情况对比,我选
21、择了方案一来实现避障功能。2.4 速度显示模块设计与论证根据题目的要求小车可以实时显示其运动的速度。我挑选了以下两种方案来实现:方案一:显示电路由共阳极数码管和可编程的键盘接口芯片构成,把单片机的I/O口和接口芯片连起来,这样就可以精准的实现实时速度显示。方案二:把LCD和单片机直接连起来构成显示电路。LCD液晶显示屏可以实现字符和数字的显示,它由数个5x7或者5x11点阵字符位构成。一个字符占用一个点阵字符位。经过实际情况对比,现有一块液晶LCD1602显示屏,为了不浪费材料和金钱,采用LCD屏来显示实时速度,。2.5 转速测量模块设计与论证方案一:选择霍尔开关型传感器测量小车车轮转速。具体
22、流程是:把一块具有磁性的钢片安装在非磁性材料的转子上,霍尔开关传感器感知接收面和钢片的磁极对应,磁体随着转子运动,当然上述2个面相对时,此时霍尔传感器产生一个脉冲信号并且输出,转速就是脉冲的时间间隔来决定的。方案二:采用直射式光电检测器测量车子的轮速。具体方法是:在小车的驱动轮主轴上安装一个带有十个透光槽的圆形叶片,使叶片和驱动轮同步转动,然后在驱动轮旁安装一个直射式光电探测器。车轮的转动连续地切割红外发射管与红外接收管之间的红外通路。当叶片旋转到透光槽和红外线路径重合时,检测器打开,红外接收管通过电流,叶片旋转会遮住透光槽。当透光槽被挡住时,光通路切断。随着车轮的连续旋转,连续的脉冲序列将被
23、输出。脉冲的数量将被测量,叶片转过的孔数可以由脉冲的个数得出,然后就可以计算出车子的转角和转速,继而可以得出小车的转速了。虽然以上方案都可以用来实现小车的测速,但是小车的沉沦比较小,在车轮上安装数量众多的瓷片不切实际,因为太过于密集,相互之间的影响也会很大,所以本小车选择直射式光电检测器来实现测速功能。2.6 电源模块设计与论证小车要想运行肯定不能少了动力系统,所以必须要有电源来供电,小车能不能平稳的运行跟电源性能的质量密不可分,本设计的电源分为两大部分,分别是单片机控制电源模块和电机驱动模块,电源的设计方案有很多,为了实现稳定供电,有以下2种方案供选择。方案一:采用12V蓄电池直接给直流电机
24、供电,将电压降至5V后给单片机及其外围电路供电。蓄电池具有较长的续航能力以及电压输出的值基本稳定,但是蓄电池的质量和体积过于庞大,如果采用此方案会大大增加车子的质量而影响整个车子的运行,因此不适合本设计的使用,所以我们并没有使用蓄电池来供电。方案二:采用2节3.7V锂电池共计7.4V给直流电机供电,电池的连接方式是串联,经过LM7805芯片稳压后,得到稳定的5V给单片机和外围逻辑电路供电,所用到的锂电池质量和体积小,而且电量也足够小车运行,电量用完还可以再次充电,既环保且经济,最终我们选择了该方案作为小车的驱动电源。第三章 各模块硬件电路设计本小车硬件电路是由红外遥控发射器模块和智能小车部分硬
25、件模块组成,其中红外遥控发射模块包括编码芯片、遥控按键和红外发射。智能小车部分硬件包括单片机控制模块、电源模块、直流电机驱动模块、显示模块、红外接收器模块和最重要的循迹避障模块。3.1 红外遥控发射器模块 3.1.1 红外遥控模块的工作原理红外线遥控应用非常广泛,控制设备的是波长为0.76-1.5m的红外线。其体积小、价格便宜、使用方便,在我们常用的家用电器比如电视、DVD,录音机、空调等和一些小型电动玩具装置上均已应用了红外线遥控设备。但是红外遥控也有缺点比如容易受到空间和距离的限制,一般在7m的范围内有效且发射和接收之间不能被物体隔挡,但对于本设计的智能小车来说已经能够满足要求。红外遥控系
26、统是由红外发射部分和红外接收部分组成的。其原理如图3.1所示: 图3.1 红外遥控系统原理框图我们会根据需求去通过按键来实现需求,当按了按键之后,遥控器内的编码芯片将会对按键信息进行编码操作,大家都知道遥控器的头部都会有个类似LED灯的东西,这就是LED红外发射器,它发射出来的脉冲编码会被红外接收头接收,然后输出到单片机的外部中断系统,单片机会根据收到的编码去调用相应的程序来控制职能小车的操作。 3.1.2 HT6221编码芯片简介HT6221是合泰公司生产的多功能遥控编码芯片,工作电压在1. 8V-3.5V,其采用PPM(Pulse Position Modulation)进行编码,周期能编
27、码16位地址码和8位数据码,最多能同时支持32个活动键。其引脚结构如图3.2所示: 图3.2 HT6221引脚图其各引脚说明如下表3-1所示:表3-1 HT6221芯片引脚说明引脚号引脚名称 描述0 AIN低8位地址码输入1-8 C1-C8键盘列控制9 LED按键指示灯10-13 R1-R4键盘行控制, 高电平有效14 DOUT串行数据输出引脚, 38KHz发射频率15 VDD1.8V- 3.5V16 DT最重要数据位(DT)代码设置17、18 X2、X1455KHz振荡器输出,455KHz振荡器输入19 VSS接地 遥控编码有两种:位0和位1,其低电平脉宽相同但高电平脉宽不一样。采用脉宽调制
28、的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的脉冲表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的脉冲表示二进制的“1”。其波形如图3.3所示: 图3.3 遥控码的“0”和“1” 3.1.3 红外遥控发射器市面上的遥控发射芯片种类繁杂,数量庞大,本设计采用HT6221芯片。其电路如图3.4所示: 图3.4 遥控发射器电路原理图在上图中,随便一个按键按下后,按键指示灯(D1)发光,HT6221芯片能够产生脉冲编码,脉冲编码会被调制成38KHz的脉冲信号然后通过图中的红外发射二极管(D2)发射出去8。所按的按键不同其发出的编码脉冲也不
29、同,按键所代表的功能也就不同,其各按键的功能分配如下表3-2所示: 表3-2 按键功能分配表 按键 功能 K1 控制小车的启动 K2 控制小车的停止 K3 控制小车的加速 K4 控制小车的左转 K5 控制小车的右转 K6 控制小车的倒退3.2 单片机控制模块 3.2.1 单片机模块电路本设计我选用STC89C52单片机来控制系统核心,STC89C52单片机是STC89系列的标准型8位单片机,其与标准MCS-51指令系统和8052产品引脚兼容,功耗低、性能可靠、价格低廉应用在复杂的环境。STC89C52单片机的内部结构如下:一个以ALU为中心的8位中央处理器,256字节内部数据存储器(RAM),
30、8K字节用来存储程序的Flash内部程序存储器即片内ROM(可反复擦写1000次),4个8位可编程I/O口(P0、P1、P2、P3),3个16位定时/计数器,8个中断源,两个中断优先级的中断控制系统,一个全双工串行通信口,一个片内振荡器和时钟电路1。STC89C52单片机最小应用系统主要由单片机、复位电路、振荡电路等部分组成。本设计的单片机控制模块原理图如图3.5所示: 图3.5 单片机控制模块本设计中我们运用了STC89C52单片机的很多引脚,具体的引脚功能分配如下表3-3所示:表3-3 单片机引功能分配表 引脚 功能分配 P0.0-P0.7接LCD1602的D0-D7引脚,作为数据信息的输
31、出引脚 P1.0-P1.2接LCD1602的RS、RW、E引脚,作为数据信息的控制端 P1.3-P1.5、P1.7连接避障循迹电路的输出端 P1.6连接转速测量电路的脉冲输出端 P2.4-P2.7连接电机驱动芯片的脉冲信号输入端 P3.2外部中断,连接红外接收器的输出端VCC接+5V电源GND接地 3.2.2 复位电路单片机的复位是为了初始化单片机的工作状态,有时当程序运行错误或由于操作错误时,系统处于锁定状态。为了摆脱这种困境,可以通过按下复位键来重新初始化微控制器。RST引脚是复位信号的输入。为了实现复位操作,RST引脚必须保持在至少两个机器周期的高电平,然后从高电平复位到低电平。复位电路
32、由按钮复位和上电复位组成。本设计采用按键复位方式进行复位操作。单片机按键复位电路如图3.6所示: 图3.6 复位电路复位引脚和电阻R0和VCC相连接来实现按键复位功能,当按下复位键,REST引脚此时是高电平,松开按键后变为低电平,这是按键复位的原理。 3.2.3 振荡电路STC89C52单片机内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为芯片引脚XTAL2。只要在片外通过XTAL1和XTAL2引脚跨接振荡元件,就能组成一个稳定的自激振荡器,给单片机上电后就可以运行了。其外部振荡电路如图3.7所示: 图3.7振荡电路 STC89C52单片机的数据存储器容量较小,当单片机需要存
33、放大量数据时就必须扩展外部数据存储器。而且AT89C52单片机的I/O口数量和功能很有限,也常常要扩展外部接口芯片。但是本设计用不到很多的I/O口,内部程序存储器也满足需要,所以不用扩展外部数据存储器和外部接口芯片。3.3 红外接收器及解码红外接收器也称为一体化红外接收头。红外接收器由红外监测二极管、放大器、限幅器、带通滤波器、积分电路、比较器等组成。红外监测二极管接收红外信号后,将信号发送到放大器和限幅器,限幅器将脉冲幅度控制在一定的水平。交流信号进入带通滤波器。带通滤波器只允许30kHz负载波60kHz的通过。然后脉冲信号通过解调电路和积分器电路到达比较器。比较器输出高低电平信号来复原出发
34、射端的信号波形。红外接收器种类多样,通常具有电源引脚、信号输出引脚和接地引脚。根据发射端的不同调制载波,应该选择对应于解调频率的接收头。在本设计中,我们采用一体化红外接收头1838解调编码芯片HT6221编码。其实物图如图3.8所示: 图3.8 1838红外接收头因为红外接收头内部放大器存在比较大的增益,会有极大的概率造成干扰,所以在接收头的电源引脚上加上容量超过22uf的滤波电容。本设计的红外接收电路如图3.9所示: 图3.9 红外接收电路图其中U6是1838红外接收头,电容C4是滤波电容,解调信号的输出端是DOUT,直接和单片机的P3.2引脚相连8。 解码的重点是怎样识别位0和位1,由于位
35、0和位1的低电平脉宽相同但高电平脉宽不一样。所以要判断高电平的宽度区别位0和位1,如果从0.56ms低电平信号过后延时了0.56ms以后如果能读到低电平信号说明该位为0反之则为1,为了可靠起见延时必须介于0.56ms和1.12ms之间,否则如果该位为0读到的已是下一位的高电平,因此我们取其中间值即(1.12ms+0.56ms)/2=0.84ms。当按下遥控器的按键后,发出红外脉冲编码信号,在红外接收头接收和解码后,输出端检测到整形后的方波信号输出,然后直接输入到单片机的外部中断执行代码信息识别,再调用相应的程序执行操作。具体解码操作流程图如图3.10所示: 图3.10 红外接收解码流程图3.4
36、 电机驱动模块 3.4.1 直流电机的工作原理在直流电动机内部有固定环形永磁体,电流通过转子上的线圈以产生安培力。当转子上的线圈与磁场平行时,磁场的方向将继续改变。因此转子尾部的电刷和转换片交替地接触,使得线圈上电流的方向也发生变化,由此产生的洛伦兹力方向不变,因此电机可以沿一个方向保持旋转。 3.4.2 L298N和L293D芯片简介L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源
37、来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。L298N可接受标准TTL逻辑电平信号VSS,VSS可接457 V电压。4脚VS接电源电压,VS电压范围VIH为2546 V。输出电流可达25 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动两台电动机。将引脚接输入控制电平,控制电机的正反转。EnA,EnB接控制使能端,控制电机的停转。在L298N的输出端分别正确的接上小车的左右两个直流电机,通过L298N的输出
38、电流控制左右两个直流电机的停止或者前进,例如左轮不转右轮向前就做左转的动作,右轮不转左轮向前就做右转的动作,L298N引脚图如图3-3所示。L293D是一款单片集成的高电压、高电流、4通道电机驱动,设计用于连接标准DTL或TTL逻辑电平,驱动电感负载(诸如继电线圈、DC和步进电机)和开关功率晶体管等等。为了简化为双桥应用,L293D每个通道对都配备了一个使能输入端。L293D逻辑电路具有独立的供电输入,可在更低的电压下工作。此外,L293D还内置了箝位二极管。L293D适用于频率达5 kHz的开关应用。L293D的特性如下:1.L293D每个通道的电流输出能力达600 mA2.L293D每个通
39、道的峰值输出电流达1.2 A(非重复)3.便于使能4.L293D具有过温保护5.逻辑“0”输入电压高达1.5 V(高抗噪性)6.内置箝位二极管L293D的引脚布局图如下: 3.4.3 直流电机驱动电路设计本设计中我们采用两个直流电机作为小车的驱动电机,用2个3.7V的锂电池供电。采用L298N和L293D芯片直接驱动直流电机,直流电机驱动电路如图3.14所示:图3.14 步进电机驱动电路3.5 避障循迹模块在本设计中,采用红外反射式光电传感器、电压比较器和部分电阻构成障碍检测电路,直接连接到单片机的P1.4引脚,将检测到的模拟信号转换成高低电平信号,然后输入到单片机,单片机根据输入的高低信号判
40、断是否有障碍物,如果有,则调用自动避障程序来控制车子做出相应的避障动作。障碍物检测电路如图3.15所示:图3.15 障碍物检测电路图中的U3红外反射光电传感器由红外发光二极管和光电三极管组成。红外光发射二极管发射红外光,光电晶体管接收反射的红外光。红外接收器/检测器具有仅允许红外光通过的内置滤光片和仅允许约38.5 kHz的电信号通过的电子滤波器。这防止了外部光源与红外接收器的干扰。U4是一个电压比较器,它可以将输入的模拟电压信号转换成高电平和低电平信号。当3引脚电平大于4英尺时,输出引脚1输出为高电平,否则输出为低电平。障碍物检测电路安装在小车前部的左右两侧,检测小车前部的障碍物。障碍物检测
41、过程如下:红外二极管发射红外光。如果遇到汽车前方的障碍物,红外光被物体反射回来并被光电晶体管吸收。此时,光电晶体管被接通,并向输出端输出低电平信号。单片机,然后MCU调用跟踪避障子程序来控制步进电机做出相应的避障响应。当左边遇到障碍时,汽车向右拐,当右边遇到障碍时,汽车向左拐。当没有障碍物时,发射的红外光不被反射,光电晶体管被关闭,输出高电平信号,并且车辆继续向前移动。跟踪原理和避障原理是相同的。跟踪电路安装在汽车的底部。跟踪是通过区分黑色和白色进行的。工作过程如下:红外发光二极管发射红外光,当遇到黑色时,不反射红外光,比较器的输出高;当遇到白线时,红外光反射回来,比较器输出低。水平。MCU根
42、据输入电平的变化判断汽车行驶路线是否偏离,然后调用自动避障子程序实现汽车的自动跟踪。当左侧检测到白色时,汽车向右转弯,当右侧检测到白色时,汽车向左拐;当两侧的车在黑色时被检测到,而当两侧检测到白色时,汽车停止。3.6 转速检测模块施密特触发器是具有特殊功能的非门,当它的输入端的电压上升到某个值时,输出端会立即从高电平跳变为低电平,而当输入端的电压下降到某一个值时,输出端会立即从低电平跳变为高电平。本设计采用直射式光电检测器、施密特触发器、三极管和若干电阻构成的电路与单片机的P1.6引脚相连来测量小车车轮的转速,其实物图和电路图如图3.16所示: 图3.16 透射式光电测速实物和电路图具体转速检
43、测方法如下:在小车的驱动轮主轴上安装一个带有十个透光槽的圆形刀片,使叶片和驱动轮同步转动,然后安装一个直接式光电检测器。在驱动轮旁边。当轮旋转时,刀片连续地切断红外发射管和红外接收管之间的光路。当刀片旋转到透光槽和光路重叠时,光路被打开,光电晶体管通过电流,输出端输出低电平信号,当刀片旋转以覆盖透光槽时,光路为光盘。输出和输出将输出高电平信号。随着车轮的连续转动,光路不断地接通和断开,输出端将输出连续的脉冲序列。将发现脉冲的数量知道由刀片转动的孔的数量。由叶片转动的孔数可以知道车轮所做的匝数,可以计算车轮的转速,然后可以根据车轮半径计算出车辆的速度和距离11。3.7 数据显示模块本设计中的汽车
44、数据显示电路采用液晶显示器LCD1602,LCD1602具有8位并行2线或3线串行两种接口模式。LCD1602液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻质等优点。具体的液晶显示电路如图3.17所示: 图3.17 LCD液晶显示电路在电路中,LCD1602和AT89C52单片机采用并行数据通信。引脚1连接到电源的正端子,引脚0, 14和15连接到电源电压的负端子,以向LCD 1602提供功率和背光电源;2英尺连接到10K电位器来调节背光照明;3, 4和5 F。EET分别连接。P1.0、P1.1、P1.2引脚作为单片机输入输出信号的控制;613引脚连接到微控制器P0.0 P0.7引脚作为
45、单片机数据输入。数据显示的原理如下:首先,通过数据显示子程序计算汽车的速度、距离和其他数据信息,然后通过单片机的P0.0 P0.7引脚直接将这些数据信息输出到LCD 1602的DO-D7。R.PIN8。3.8 电源模块此设计中,我们使用两个3.7V锂电池串联到7.4V的直流电源,直接用于直流电机,用于驱动汽车电机,也可以减少到5V到微控制器等逻辑单元。这两款电池体积小,重量轻,易于安装在汽车底盘上,不会造成电机负载过大,且价格低廉,电流驱动能力强。为了给单片机和其他逻辑单元供电,锂电池组的电压必须降低到5V。这里我们使用LM7805稳压器芯片来降压。图3.18 5V稳压电路第四章 系统软件设计
46、在微机控制系统的设计中,除了系统的硬件设计外,很多工作是如何根据每个对象的实际需要来设计应用程序的,汽车能否达到所要求的功能取决于软件的编程是否合理。本设计采用模块化程序设计方法设计系统软件,分别实现了汽车的两个功能(遥控和跟踪),主要包括主避障跟踪程序、遥控子程序和主程序下的速度测量。程序、数据显示子程序和其他程序模块。4.1 系统总体程序流程图系统的总体程序流程图如图4.1所示: 图4.1 系统程序流程图在图4.1系统程序流程图中,开始时先是系统的初始化,包括定时器初始化,外部中断的初始化,液晶显示器的初始化。进而是功能选择键的检测。若检测到功能键1被按下,小车选择循迹功能;若检测到功能键
47、2按下,小车选择遥控功能;若检测按键无反应,则返回按键检测,知道检测为止。4.2 避障循迹模块程序设计 避障循迹模块程序流程图 图4.2 避障循迹模块程序流程图图4.2所示为小车循迹避障程序流程图,小车在行驶过程中由位于小车前部的红外装置不断检测小车周围环境,若遇到障碍物则将低电平信号输入至单片机,然后由单片机调用避障子程序控制小车作出相应的避障动作,即小车停止直行。如果左边遇到障碍则调用右转子程序,右边遇到障碍则调用左转子程序,前方遇到障碍则调用左转或右转子程序,没有遇到障碍则调用直行子程序。若检测到按键的功能变化了,小车退出红外循迹的功能状态。具体的程序请见附录B避障子程序。4.3红外遥控
48、模块程序设计小车红外遥控程序流程图,在遥控功能开始时系统初始化,包括LCD1602显示初始化,定时器初始化,中断初始化。然后开始红外接收头信号的持续检测。若检测到相应的信号,则调用相应的子函数,包括左转,右转,直行,后退,停止和加减速,具体程序请见附录B的红外通信模块程序。4.4数据显示模块程序设计 图4.4 数据显示程序流程图在图4.4数据显示程序流程图中,首先初始化LCD1602,然后在液晶的第一行显示“speed(m/s): ”然后由主程序不断调用数据显示程序不断刷新m/s后面的数字实现实时显示的目的。具体的程序请见附录B速度显示模块。第五章 系统软件的调试5.1 驱动电机的调试在驱动电
49、机的过程当中,使用PWM脉宽调制方法对小车的速度进行控制。在给电机7.2V的电压的条件下,小车的最快速度可以达到0.4m/s。起初,将每个周期中的高低电平时间划分为10个档位,但在小车的运行状况而言,占空比在30%及以下,小车会有严重的抖动,不适合行驶和较为粗糙的路面,所以在综合了速度档和小车行驶效果之后,本设计设置8个速度档位。在便于调节速度的想法下,本设计还设置了按键调速,红外遥控调速,使用者可自由地根据路面情况来调节速度。本设计还具有转弯角度的按键控制,在红外循迹的功能中,转弯的角度需要轨道的弧度进行调节,以成功地通过转弯道路。5.2 红外探测的调试本设计本着节约成本的理念,只采用了两对
50、红外线发射接收装置。在LM393电压比较器中,设置合理的标准对比值,以正确地辨别小车是否检测到黑线。设计者在多种路况的调试下,发现检测到黑线时,对应的电压始终在4.8V左右;未检测到黑线时,对应的电压始终低于1.0V,说明所选的红外发射接收装置的灵敏度足以让小车检测出黑线做出反应,所以设计者将标准电压对比值设置为1.5V。5.3 测速及显示模块本设计的测速模块采用了中断计数的方法,对左右电机的路程进行计算;采用了定时器定时的方法计算时间,结合两者的关系和单位转换,得出速度与路程,时间的表达式,从而计算出速度。本设计的显示模块采用的是八线驱动模式,无光标,两行显示。显示模块是嵌在电机驱动程序中直
51、行的,为了电机不发生电机抖动的现象,直行一次显示模块的时间不能太长,所以去除不必要的延迟函数和不影响显示操作的语句。但若显示函数的时间太短,LCD显示屏会发生闪烁现象。综合直流电机的运行状况和LCD1602显示屏的显示情况,软件调试时,将显示内容写入在第一行,第二行留空,以保证显示内容的清晰;将多余的语句减少,以保证电机的正常转动和调速。5.4 红外通信的调试本设计采用已有的监控器,并已知其发射的红外编码方式,将1838的红外接收头接入中断,在中断中采集用户码,用户反码,数据码,数据反码。通过判断起始位,“0”,“1”的高低电平时间不同进行判断。选择遥控器上的功能按键,通过软件调试知道每一个按
52、键的数据码,如0x18 0x08 0x5a 0x52 0x1c 0x0c 0x5e分别对应着遥控器中的 2 4 6 8 5 1 3键的数据码。判断是否接受到以上信号,若接受到,则执行相应的操作。本设计采用的方法接受到正确的信号可以达到100%。第六章 总结与展望5.1 总结本设计的智能小车基本上实现了题目要求的各项功能,可以用遥控来控制小车的启停、左转、右转、前进、倒退,小车能自动沿着黑线行驶,遇到障碍时能够自动躲避障碍,而且可以实时显示运行的速度。通过本次设计让我学会了电子产品的设计开发过程,掌握了红外遥控原理、直流电机的驱动原理、采用红外反射式光电开关检测障碍的原理、显示原理等自己以前并不
53、了解的新知识,对单片机的结构和其控制系统也有了更深的理解和认识,特别是在、自己最不擅长的软件编程方面也有了一定的提高。但是由于本人水平和能力有限,本设计中还存在一些不足之处。例如由于安装在小车上面的红外传感器检测范围有限,存在一些检测盲区,光电检测也容易收到外界环境和太阳光的干扰,有时可能会导致小车的循迹避障功能失效;小车是利用转速差来转弯的但是这种方法转弯不够顺畅也不能持续转弯并且对电机的损耗也较大,这些都有待进一步的改进和完善。5.2 改进与展望在本设计中我们可以采用超声波避障来代替红外避障以减少外界干扰;多安装几个寻迹电路,在小车的车头底部左右两边各一个,中间底部左右两边各一个,车尾底部左右两边各一个,这样可提高小车寻迹功能的可靠性和灵敏性;通过多组速度(不同脉冲所对应的速度)的实际测试,寻找更合适的转向速度,以提高转向的精确度。我们还可以为小车添加语音控制模块,用语音来控制小车的一些状态,这样将大大增加其人机交互控制的趣味性。参考文献1张靖武,周灵彬,方曙光.单片机原理及应用M.第2版.电子工业出版社,2011:17-32.2李群芳.单片机原理接口与应用M.北
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 开放创新与创业孵化制度
- 【寒假阅读提升】四年级下册语文试题-说明文阅读(二)-人教部编版(含答案解析)
- 算法设计与分析 课件 9.4-概率算法 - 蒙特卡罗算法
- 2024年乌鲁木齐2024年客运试题从业资格证考试
- 2024年西藏客运资格证紧急救护试题及答案
- 2024年内蒙古客车从业资格证模拟考试答题
- 2024年西安客运资格证考试试题模拟
- 2024年滨州客运从业资格证考试模拟
- 2024年重庆客运从业资格考试题库答案
- 2024年铜仁客运从业资格证试题
- 心理健康拒绝内耗课件
- 工厂反骚扰虐待强迫歧视政策
- 航测外业飞行作业指导书
- 部编本语文四年级上册第三单元教材解读-PPT
- 生活满意度量表(SWLS)
- 医疗器械质量管理体系文件模板
- 光伏工程 危害辨识风险评价表(光伏)
- 新老师培训专题讲座《扎根向下+向上生长》
- 患者-家属拒绝或放弃治疗知情同意书
- 2023年大学英语四级真题作文7篇
- 马克思主义中国化与青年学生使命担当学习通课后章节答案期末考试题库2023年
评论
0/150
提交评论