《多功能智能小车系统设计.docx》由会员分享,可在线阅读,更多相关《多功能智能小车系统设计.docx(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、长春大学 毕业设计(论文)纸序号(学号):021240307长 春 大 学毕 业 设 计 (论文)多功能智能小车系统设计姓名 郭曦泽 学院 电子信息学院 专业 电气工程及其自动化 班级 12403 指导教师 李学军(教授) 年 月 日摘要 智能化是当今社会的新产物,也一个重要的发展方向在将来,未来智能化主要体现在不管理就可以按照人类的意愿需要人为的去控制就可以完成各项功能。这篇文章主要讲述以单片机为主控制芯片的多功能智能小车的系统控制过程。多功能智能小车是以自动引导机器人系统为基础的,可用以实现智能小车自动循迹,可以选择出正确的线路。多功能智能小车是一个运用传感器、单片机、电机驱动及自动控制等
2、技术来实现按照预先设定的模式下,不受人为管理时能够自动实现循迹导航的高新科技。该技术已经应用于无人驾驶机动车,无人工厂,仓库,服务机器人等多种领域。整个智能小车的设计主要是以STC89C52为主控制的核心,利用无线遥控功能来实现智能小车的各项运动,以及对智能小车各种功能模式的切换;采用了红外线光电传感器和接收器,实现智能小车的进行自动避障和循迹两种功能。这篇设计的各个模块都是独立的,综合的分析与对比,选择出实用性最强的方案来设计。从最智能小车的小系统到红外循迹功能和避障功能,都是非常谨慎的选择与对比试验才得出的结论。经过一系列的调试与检测,才得到准确的信号,将应该有的功能实现出来。在单片机的控
3、制下,可以将各模块整合在一起,达到所预期的设计想法,成功的完了本次的设计与制作,可以使智能小车实现智能化的各种功能。关键词智能小车 避障 循迹 智能化Abstract Intelligence is an important direction for the future development as a new product of modern society. It can operate automatically in a specific environment according to the predetermined pattern and will be able to
4、complete the intended target without users management. This paper discusses the intelligent tracing electric trolley control process. Automatic tracing is used to make the car indentify route automatically , and choosing the right route, based on the automatic guide robot system. Intelligent tracing
5、 electric trolley is an advanced technology to realize automatic tracing navigation. This dissertation discusses mainly on the design of the intelligent car in single-chip processor as the control core. To realize the car moving around and transform the mode of the small car function, it uses wirele
6、ss remote control; to realize the small car obstacle-avoidance function and comprehensively car tracing function, it uses the infrared sensor. This excogitation adopts the research methods of contrast selected, independent modules, comprehensive treatment method. After the comparison between Pros an
7、d cons, the best program design will be elected combining with the actual situation. It is complete in accordance with the rigorous scientific attitude from the smallest systems to the wireless remote control, infrared tracking and ultrasonic obstacle avoidance. The right signal outputs can be gotte
8、n to achieve its function by the debugging detection module. Finally on the commissioning of the module into the bodywork of the car, with procedure and by single-chip processor control, it will be effectively integrated with the module, achieve the intended objectives, final design and production t
9、hat can make cars intelligently operate in a certain circumstances.Key words Intelligent toy car; Obstacle avoidance; tracking; IntelligentII目录第1章 绪论41.1研究的背景和意义41.2国内外发展现状5第2章 系统方案设计82.1 主控制系统82.2电源模块92.3 电机模块92.4循迹模块102.5避障模块102.6测速模块112.7显示模块11第3章硬件设计133.1系统硬件设计133.2电机驱动143.2.1电机驱动原理153.3循迹电路163.
10、4避障检测电路173.5测速电路183.6显示电路193.7复位电路193.8晶振电路203.9单片机最小系统21第4章 软件设计224.1主程序模块设计224.1.1主程序的设计234.2电机驱动程序设计244.2.1电机驱动程序图244.2.2电机驱动程序的设计254.3循迹程序设计274.3.1循迹流程图2743.2循迹程序27总结30ii致 谢31参考文献32附录33ii第1章 绪论1.1 研究的背景和意义近年来计算机和微电子技术的高速发展使得各方对智能化技术的开发进程也随之加快,不但在其智能程度方面有所提高,在各个领域的应用也越来越广。智能小车系统以成熟的现代汽车电子技术为基础,涉及
11、到多个学科领域,如计算机、电子、传感技术和电子等。同时,当今机器人技术的发展日新月异,其应用于考古,探测,国防等众多领域。无人飞船,外星探测,智能化生产等等无不得益于机器人技术的发展。一些发达国家已经把机器人设计制作竞赛作为创新教育的战略手段。以某种角度来看,判定一个国家综合科技技术水平的高低,机器人技术在其中占比很大。而智能小车是机器人的雏形,它的控制系统的研究与制作将有助于推动智能机器人控制系统的发展1。随着智能化技术的发展,对于智能化技术的研究也越来越受关注。根据调查,近些年全国性的或者地方性的电子竞赛中,有关智能小车的赛题越来越常见,这也引起了全国很多重点高校对该项目的重视,其中部分高
12、校已经开始投入对其的研究,由此见得,对智能小车的研究重要意义。生活和生产的智能化大大提高了现代生活和工作的效率,同时也是今后的发展和研究方向。所谓智能,其实是在某种特定的情境下,依照提前设置的某种模式来进行自动化运行,我们不需要再投入些许精力去管理它的运作,就可以达到我们前面设定的目标。由于智能的高效化,越来越多的领域将其运用其中,比如工业控制、科学勘探、智能家居等领域。而智能的其中一个简单应用就是智能小车,市场上随处可见一些功能简单的智能小车,这也是众多智能化玩具种类中的其中一种,对玩家来说,智能化玩具的交互性和可控性较强,能够按照提前设置好的模式去自动运行,光是这一点,就深受人们喜爱。一些
13、功能较齐全的智能小车还可以应用于危险搜索和机器人研究的各个方面,所以智能小车的研究不光有现实意义,还拥有长远的应用前景和不可估量的市场价值。智能小车作为一个高新技术综合体,需要运用计算机结束、传感技术、信息技术、通信技术、导航技术、人工智能技术和自动控制技术去实现对环境的感知,自动规划决策及自动行驶。目前,它已经被军事、民用和科学研究等方面所应用,并且为解决道路交通安全的问题寻找到一条全新方法。随着各种交通工具的速度被不断提升,能够按照既定的行驶路线自动行驶并且能够自动避开途中的障碍物的智能汽车也在研究之列。本设计就把这一设想基本变成了现实,小车能够利用传感器装置实现对车体自身的智能控制,它不
14、仅可以沿着地面的黑线行驶,还能够自动检测并且避开前方设置的障碍,实现了对现代机器的基本智能控制。对小车进行远程遥控可以利用无线模块,通过控制小车的前进和后退,左转和右转及停止行驶来分别实现循迹模式、避障模式、以及遥控模式这三种模式之间的相互转换,所以它是一个相当典型的现代测控系统,更是现代测控技术应用中的典型。1.2国内外发展现状世界上对机器人的设计和制造是由80年代中期开始的,很快这股浪潮推动了一些著名的公司开始对移动机器人的研制(但此时主要是一些大学的实验室和特定的研究机构平台会用到),从而引申出更多的对移动机器人学的研究方向。90年代以后,研究人员把研制出高水准的环境信息传感器和信息处理
15、技术,适应性强的移动机器人住址技术和真实环境下的规划技术作为标杆,开始了更高层次的对移动机器人的研究。现代应用到机器人的领域越来越广泛,机器人的功能也越来越繁杂,但是总体层面上可以归类为轮式机器人和足式机器人,而轮式机器人中最基本,最简单的雏形就是智能小车,而且就是这样一种简单的智能小车就已经具备了机器人的大部分功能,综合国内外专家的解释,可普遍认为机器人一般是具有如下功能的机器:(1)动作机构具有类似于人或其他生物体某些器官(肢体、感官等)的功能;(2)有通用性,工作种类多样,动作程序灵活易变;(3)有一定程度的智能,如记忆、感知、推测、决策和学习等;(4)有独立性,完整的机器人系统在工作时
16、不依赖于人的操纵。随着人工智能技术、计算机技术、自动控制技术的迅速发展,智能控制必将迎来它的发展新时代。机器人领域近几年有如下几个发展趋势:(1)机器人的性价比在不断提高的同时,其性能在速度、精度可靠性便于操作性和维修方面也在提升,但是单价却与之成反比,呈下降趋势。(2)工业机器人为了实现标准化和网络化,其控制系统朝着基于PC机的开放性控制器的方向发展,与此同时,其器件的集成度也在很大程度上得到了提高,更促进了系统的可靠性。易操作性和可维护性。(3)众多领域对传感器的应用越来越频繁,更加显现出传感器作用的重要性,传统的传感器,如位置传感器、速度传感器、加速度传感器等已经远不能满足需要,而像视觉
17、、声觉、力觉、触觉等其他新兴的多种传感器早已被成熟融合运用于环境的建模和对决策的控制。(4)机器人中运用到的虚拟现实技术发挥的作用已经从一开始的仿真、预演发展到应用于对过程的控制,例如让遥控机器人的操作者根据在远处其他情境中的感觉来对机器人进行相关操作。(5)随着发展,遥控机器人系统追求的不是全自制系统,而是在发展中寻求操作者和机器人之间的相互控制,也就是说操作系统由人为的遥控再加上部分自主的系统能够然研制的智能机器人不再是实验室的常客,而是能够真正进入社会,被各个领域广泛应用。第2章 系统方案设计2.1 主控制系统单片机的另一个名称是单片微控制器,它不具有完成某一个逻辑的功能,是能把一个计算
18、机的系统集成到一个芯片上。概括的说:一块芯片就变成了一台计算机。它的体积很小、质量也轻、价格也比较便宜。单片机的内部有的模块和电脑功能相似。例如CPU,并行总线,内存,也有的存储器件和硬盘作用一样的。单片机它是一种集成电路的芯片,应用了很大规模的集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。因为单片机拥有价格相对较便宜,而且种类多、控制功能也非常的强大等优点,所以本次的设计就以STC89C5
19、2单片机作为整个智能小车的核心,它来控制智能小车使其能完成各项功能。STC89C52是一个拥有超低功耗的增强型51单片机,它与其他的51单片机对比下,它具有更快的运算速度,抗干扰能力也比其他的51系列单片机要强很多,它还可以在ISP在线编程,片上集成了512字节的随机存取数据存储器(RAM),并且片内含8k字节空间的可以反复擦写1000次的Flash只读存储器, 32个I/O口,以及3个16位可编程定时计数器。其指令系统和传统的8051系列单片机指令系统完全兼容,降低了系统软件设计的难度,电路设计简单、价格低廉,在实验中就可以发现,STC 89C52的准确度和运算速率非常的高可以更有效的完成智
20、能小车的各项功能。STC89C52单片机是一种功耗低、性能高CMOS8位微控制器,带8K字节闪烁可编程可除只读存储器。是拥有8位CPU的芯片,而且在系统还可以编程Flash。STC89C52单片机提供给为大多数嵌入式控制应用系统灵活高、非常有效的解决方案。 STC89C52单片机拥有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内设4KB EEPROM,还有两个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。此外,当在空闲模式下,CPU 已经停止工作,允许定时器/计数器、RAM、串口、中断继续工作。在掉电保护方式下,振荡器被冻结,RAM内容被保
21、存,单片机一切工作停止,直到下一个中断或硬件复位为止。2.2电源模块由于本系统需要给整个智能小车系统供电,考虑了以下几种方案:方案一:采用4节1.2V可充电电池组。在电充满时4节电池电压可以达到5v且可充电电池组具有较强的电流驱动能力及稳定的电压输出性能,但是直流电机工作时会对LCD1602液晶显示有一定干扰,使其显示不稳定。故放弃此方案。方案二:可采用两个电源供电,将9v可充电方块电池电压降压、稳压到5V后给单片机系统和LCD1602液晶和芯片的供电。另外选用4节1.2V可充电电池组为直流电机供电,经测试在用此种供电方式下,单片机和传感器工作稳定,直流电机工作良好,LCD显示也很稳定,小车也
22、能长时间工作。根据以上的参考,此次设计选择方案二能比方案一更好的为此设计的整个系统的供电。2.3 电机模块方案一:此次设计应用继电器控制电动机,采用转换电动机的开关从而调节小车的车速。电路非常简单是次设计的优点,可是他也有很多的缺点,比如说:继电器的响应时间相对来说比较慢, 可使用的时间也相对较短,并且很容易就会损坏,稳定性也不是很好。所以决定放弃这个设计方案。 方案二:采用专用的电机驱动芯片L298N来控制直流减速电机, L298N芯片是一个具有高电压大电流的全桥驱动芯片,单个L298N芯片可以对两个直流减速电机分别控制,当电压值为5至45V时,所提供的额定电流为2A,而且还拥有电流反馈检测
23、和当过热的时候自动关断的功能,稳定性非常高也非常的安全。L298N利用了TTL电平进行整体控制。利用单片机的IO口输出高电平和低电平对L298N控制端的输入电平进行改变改,也就完成了对电机进行的反转、正转和停止的几种操作。为了确保芯片可以正常的工作,还需要使用续流二极管。使用L298N驱动电机,提高了驱动的能力、更方便操作、具有良好的稳定性、安全系数大。L298N的综合性能要比继电器强,所以此次设计选用方案二作为多功能智能小车的电机驱动。2.4循迹模块方案一:探测是采用光敏电阻来进行的。当周围环境的光线增强或者减弱的时候可以改变光敏电阻的阻值。所以光敏电阻的阻值变化差异很大的时候是在黑色或白色
24、轨迹上。输出电平的高低取决于电压比较器输入的电阻值。当输出的电平信号有变化时,小车会收到来自单片机的左右转动和向前向后还有停止的指令,小车就会做出相应的工作状态。但是此方案的最终效果并不是非常的理想,因为小车受到环境因素的影响非常的大,极其容易产生较大的偏差,从而使小车不能正常的工作,所以此方案的实用性不大,而且不稳定,故放弃此方案。方案二:应用红外反射式光电管来实现小车系统的循迹。TCRT5000是一种一体化反射型的光电探测器,它的传感器是应用了高发射功率红外光电二极管和高灵敏度光电晶体管组成,它的发射器是一个砷化镓红外发光二极管,但是它的接收器却是一个灵敏度很高,硅平面的光电三极管。郑重探
25、测器运用了物理学中的光的反射,白纸被光线照射的时候,反射量相对来讲会较大,黑纸被光线照射的时候,反射量相对较小,原因是黑色可以吸收光,通过这个原理就能知道黑色轨迹的方向。它应用了红外线发射的原理,一些在外边的可见光对接的收影响并不是跟大,当检测黑色轨迹的时候采用红外管,之后经过LM393的检测来对比,取反,然后在单片机中进行处理。这个电路不是很复杂,并且可使用的寿命长,且具有稳定的工作性能。方案一的工作性能与方案二相比差了很多,系统的稳定性也不如方案二强,经过经测,决定放弃方案一,选取方案二为小车循迹系统。2.5避障模块小车的速度和反应会受到定的限制在小车近视避障的时候,当在障碍物距离小车还有
26、十五厘米的范围之中的时候小车做出避障反应,当顺利避开障碍物之后,就能找到合适的位置与方向。加入范围太大的话,就很可能产生对障碍物的检测失败;当在短距离避障过程中又非常的容易造成车身撞上障碍物或者已经避开了障碍物但是也不能找到合适的位置与方向。根据这几点要求,提出以下方案:方案一:利用激光传感器探测障碍物。激光传感器能够非常精确的测出障碍物的距离与方向,可是价格昂贵,并且设计难度高,所以此设计不使用它。方案二:利用红外线避障传感器进行小车的避障。用单片机产生的38KHz信号对红外线发射管进行调制发射,红外线接收管对被避障物反射回来的红外线进行调节,输出比较电平。外界对红外信号的干扰相对较小,并且
27、容易实现。使用寿命长,价格低廉。方案三:应用超声波传感器进行障碍物的探测。将小车的前边安装上超声波传感器,当在十五厘米范围内,当前方的障碍物被检测到的时候,信号由超声波传感器传送向单片机,信号被单片机检测后,小车会自动调节方向,从而使小车成功避开障碍物。并且超声波传感器具有频率高、波长短、绕射现象小,特别是方向性好、具有定向传播等特点6。综上所述,选用方案二为小车避障系统。2.6测速模块方案1:利用霍尔开关元器件来检测轮子上的磁感应来记录小车轮子转动的圈数,它的作用就是测速。霍尔元件质量小,安装方便,并且操作简单,使用寿命长,对外围电路的设计要求不多,电源的要求也不高。霍尔元件对具有一定强度的
28、磁场有用,不容易被干扰能,因此可以在车轮上安装小磁铁,而将霍尔器件安装在固定轴上,通过对脉冲的计数进行车速测量。 方案2:利用红外传感器来对小车测速。可测速的红外传感器有两种,一种是反射式红外传感器,另一种是对射式红外传感器,但是这两种红外传感器的价格相对较高,而且使用起来条件苛刻,稳定性也不高。 综上所述,选择方案一来作为小车的测速系统。2.7显示模块方案一:应用LED数码管作为小车进行显示系统。LED数码显示管具有操作方便简单,价格相对来讲较低等优点,但是一个数码管也只能显示一个数字,如果要显示多个数字时就要同时使用多个数码管,所以会增加额外的功耗,也使硬件电路的复杂程度大大提高,并且LE
29、D数码管不能显示数字以外的字符。因为LED数码管不可以显示过多的信息,所以不选用此方案为小车的显示模块。方案二:应用LCD液晶显示作为小车的显示模块。LCD液晶之所以被广泛的应用是因为它的功耗相对较低,并且显示的内容清楚和显示的容量大,它的速度也比LED块很多。它的运行电路并不复杂,所以选择此方案为小车的显示模块。综上所述,选择方案二来显示小车运行速度和路程。第3章硬件设计3.1 系统硬件设计 智能小车依靠前轮来进行驱动,即前轮的一左一右各会用到一个电机驱动,通过店家驱动芯片L298N来轮子的运动进而控制小车的转向,后轮是万向轮,它的作用是支持前轮的转向,在小车底座的前端装4个红外光电传感器,
30、这样一来,小车就可以由传感器对地面环境检测到的境况前进。 对小车速度的检测则要利用到槽型光电传感器,把码盘装在电机的转动轴上面,然后码盘会跟着电机的转动而转动,最后把对数据的检测情况传给单片机处理。小车要达到避障的目的就需要用到超声波避障模块HC-SR04,把这个模块放在车头,这样小车才能及时检测到前方障碍物,从而车体做出相应的避障运动。3.2电机驱动电机的驱动芯片需要用到L298N,这是一款能够承受高压大电流的全桥型直流、步进电压驱动器。表3-1 L298N引脚编号与功能引脚编号名称功能1电流传感器A在该引脚和地之间接小阻值电阻可用来检测电流2输出引脚1内置驱动器A的输出端1,接至电机A3输
31、出引脚2内置驱动器A的输出端2,接至电机A4电机电源端电机供电输入端,电压可达46V5输入引脚1内置驱动器A的逻辑控制输入端16使能端A内置驱动器A的使能端7输入引脚2内置驱动器A的逻辑控制输入端28逻辑地逻辑地9逻辑电源端逻辑控制电路的电源输入端为5V10输入引脚3内置驱动器B的逻辑控制输入端111使能端B内置驱动器B的使能端12输入引脚4内置驱动器B的逻辑控制输入端213输出引脚3内置驱动器B的输出端1,接至电机B14输出引脚4内置驱动器B的输出端2,接至电机B15电流传感器B在该引脚和地之间接小阻值电阻可用来检测电流3.2.1电机驱动原理 如上图:这是一个典型的控制直流电机的电路。因为它
32、的形状很接近英文字母H,其中,四个三极管就像是H桥的四条垂直的线,H中的横线就是电机,所以被称作“H桥驱动电路”。 如图所示,H桥电机驱动电路包括两个部分,第一个部分是四个三极管,第二个部分就是一个电机。电机要运转,一定要按照导通在对角线上的一对三极管,根据不同三极管导通的情况来控制电机的转向,电流不但可以从左至右流过电机,也可以反方向流通。当Q1管和Q4管导通时,电流就会由电源的正极经过Q1从左享有地流过电机,然后再由Q4流回到电源的负极,这样的电流流向才会驱动电机进行顺时针的转动。接下来将对另一对三极管Q2和Q3进行分析,在两个三极管同时被导通之后,电流的流向是从右向左流动,继而驱动机按逆
33、时针方向运动。电机被驱动前,一定要确保H桥上两边同侧的三极管没有被导通,若在同一时间把三极管Q1和Q2,电流的流向就会变成,由正极开始,经过两个三极管,最后回到负极,这种情况下,整个电路上的电流就可能达到最大值,因为除了三极管,整个电路中再无其他的负载,电流只受到电源性能的限制,所以可能会把三极管烧坏掉。由此可知,最好用硬件电路去控制实际驱动电路中三极管的开关。如图下图所示,它的电路已经在上述的基础上改进过,在H桥电路上加了四个二极管以达到对电路的保护目的。四个与门和同一个“使能”导通信号相接后,就能达到只利用一个信号来控制整个电路的开关的目的。如果采用上述方式,那么两个方向信号和一个使能信号
34、就能控制电机的运转。如果DIR-L信号为0,DIR-R信号为1,并且使能信号是1,当三极管Q1和Q4被导通后,电流的流向就会是从左到右流过电机;如果DIR-L信号变为:1,而DIR-R信号变为0时,导通的将会是Q2和Q3,电流的流向则会变反流过电机。小车运动逻辑使能端A使能端B左电机右电机左电机运行状态右电机运行状态小车运行状态IN1IN2IN3IN4111010正转正转前行111001正转反转右转111011正转停止以右电机为中心原地右转110110反转正转左转110101反转反转后退111110停止正转以左电机为中心原地左转3.3循迹电路循迹检测电路主要是由红外发射器和接受传感器组成。如图
35、所示。当物体被红外发光二极管以一定的光强照射时,电路中的三极管在接收到反射回来的红外线后导通,然后发出一个电平跳变信号。如果小车在不是黑色的地方运动时,当红外信号被发射管反射之后,就会被红外接受传感器接受,当接收管接收到信号的时候,光敏三极管就会导通,然后输出低电平,经过电压比较器传送给单片机进行控制。如果小车行驶到黑色轨迹上的时候,红外发射器的红外线信号就会被黑色轨道吸收,光敏三极管断路,然后输出高电平,这就是红外线信号检测的原理。把之前检测到的信号传送给单片机,当检测到的信号为高电平的时候,就说明小车在黑色的轨道上行驶,因为红外光会被黑色轨道吸收,如果单片机检测到的信号为低电平的时候,说明
36、小车没有在黑色轨道上行驶。图3-4 循迹检测电路循迹电路是可以利用电阻值得变化改变传感器的灵敏度,这样就你那个使小车在不同亮度的地方完成循迹功能。在车的底盘上安装了接受器,信号很难控制,调节可调电阻,灵敏度不高,因此采用在对管上套塑料管,屏蔽外界光的影响,灵敏度将大幅提升。在该电路中,加比较器LM339的目的是使模拟量转化为开关量,便于处理。3.4避障检测电路本模块主要有两部分组成,38KHz的红外发射模块和接收比较模块,采用38KHZ频率段是能有效的排除可见光的干扰10,实现避障有效距离50CM左右,更好的完成对电机的控制。如图3-11 红外线避障电路原理图。通过555芯片组成多谐振荡器,根
37、据F=1.43/(R1+2*R2)*C设计出38KHZ方波信号11。图3-6 红外避障原理图接通电源后,电容C被充电,当2脚VC上升到2VCC/3,使3脚V0为低电平,同时内部三极管T导通,此时电容C通过R2和T放电,VC下降,当VC下降到VCC/3时,V0翻转为高电平。当放电结束时,T截止,VCC通过R1、R2向电容C充电,上升到VCC/3时,电路又翻转为低电平,如此周而复始,于是,在电路的输出端就得到一个周期性的矩形波,由3脚输出,再通过三极管9013驱动后由发射管发出并由接收模块接收实现单片机控制。3.5测速电路通过霍尔元件感应磁铁来产生脉冲(当霍尔元件在离磁场较近时输出会是高电平,其它
38、时候是低电平),在小车的每一个轮子上都放上磁铁,这样就能知道每秒的脉冲数,然后就可以算出每秒小车车轮转了多少圈,小车的车轮周长可以通过测量算出,从而可以计算出小车的速度,同样也能计算出小车行驶的总路程。 3.6显示电路显示电路用LCD1602来进行数据的显示,显示电路的目的是显示行驶距离还有行驶时间,LCD液晶具有的优点有功耗相对较低、可以显示非常多的内容、显示出来的内容清晰,显示的信息量也很大,显示的速度快。LCD1602的亮度由滑动变阻器来挑动,电路原理图如下图。3.7复位电路复位电路的作用是在上电或复位过程中,控制CPU的复位状态:在这段时间里使CPU时刻保持复位的状态,而不是刚一上电或
39、刚复位完毕就工作,预防CPU发出的指令有错误、从而导致操作错误。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。施密特触发电路是一种波形整形电路,当电路检测出任何波形的信号的时候,输出在正饱和与负饱和之间转换,从而产生方波或脉波输出。与比较器不同的是,施密特触发电路的滞后区由两个临界电压组成,它的作用是防止在滞后的范围内受到噪声干扰电路的能继续正常工作。本设计采用的电容值为10F的电容和电阻采用1.5K和200的电阻。如图所示上电后,由于电容充电,使RST持续一段高电平时间。当单片机已在运行之中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作6
40、 7。38晶振电路在STC89C52单片机上内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。在1和XTAL2引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。从XTAL1接入,如图所示。由于外部时钟信号经过二分频触发后作为外部时钟电路输入的,所以对外部时钟信号的占空比没有要求。此电路采用12MHZ无源晶振、2个22pF电容,使一个机器周期是1s。晶振起到提供时钟信号的作用,两个电容的作用是并联谐振,若是把电容拿走,振荡电路就会停止震动,因为没有回路,电路就不
41、能正常运行。3.9单片机最小系统第4章 软件设计智能小车系统的软件设计在整个设计中起到至关重要的最用,软件设计可以使各个模块都正常运行。这个智能小车整体的灵魂就是软件系统,它可以控制硬件来实现智能小车的各项功能的正常运行。整个系统的功能是由软件和硬件共同来实现的,软件具有可伸缩性,才能实现的系统各项功能有很大的差别的可能。此次系统软件的设计采用模块化,这种方法可以大大减少的出错率,提高的系统的稳定性,而且这种方法容易编程。对软件设计检测的主要方法还有检查错误故障。在此次设计中,系统软件设计主要包括电动机控制程序设计、循迹模块程序设计、避障模块程序设计4.1主程序模块设计4.1.1主程序的设计v
42、oid main() Timer_Init(); /定时器初始化 INT0_Init(); /外部中断初始化 LCD_Init(); /LCD1602初始化 TR1=1; /启动定时器lcd_write_cmd(0x80);LED1 = 1;LED2 = 1;while(1) PWM();/pwm调速 track(); /调用循迹子程序lcd_write_cmd(0x80+0x09); lcd_write_dat(qian);lcd_write_cmd(0x80+0x0a); lcd_write_dat(bai2); lcd_write_cmd(0x80+0x0b); lcd_write_da
43、t(shi2); lcd_write_cmd(0x80+0x0c); lcd_write_dat(ge2); lcd_write_cmd(0x80+0x47); lcd_write_dat(bai1); lcd_write_cmd(0x80+0x48); lcd_write_dat(shi1); lcd_write_cmd(0x80+0x49); lcd_write_dat(ge1); if(flag1=1&flag2=1)csb(); /调用超声波子程序flag1=0; 4.2电机驱动程序设计电机驱动的程序流程图如下图,如果小车在黑色轨道上,那么小车前边的左右两个电动机同时转动,小车向前行驶
44、,如果小车在黑色轨道的右侧,那么小车的右侧电动机正转,左侧电动机反转,小车向左转弯,如果小车在黑色轨道的左侧,那么小车的左侧电动机正转,右侧电动机反转,小车向右转弯。若小车不在黑色轨道上,那么小车的两个电动机同时反转,小车向后行驶并回到初始位置,电动机停止转动。4.2.1电机驱动程序图4.2.2电机驱动程序的设计void goahead() /小车直走IN1 = 1;IN2 = 0;IN3= 1;IN4 = 0;void goback()/小车后退IN1 = 0;IN2 = 1;IN3 = 0;IN4 = 1;void turnright()/小车向右转IN1 = 1;IN2 = 0;IN3 = 0;IN4 = 1;void turnleft()/小车向左转IN1 = 0;IN2 = 1