论文-多功能智能探测小车_第1页
论文-多功能智能探测小车_第2页
论文-多功能智能探测小车_第3页
论文-多功能智能探测小车_第4页
论文-多功能智能探测小车_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、-. z毕业设计说明书 多功能智能探测小车摘要主控制系统的功能主要是启动小车、电机控制、LCD速度显示。系统主要由红外避障模块、声控模块、光电寻迹、电机驱动及语音播报模块组成。传感器检测控制系统通过各传感器检测引导线将控制信号送入单片机,经单片机判断、处理后,控制驱动电机和舵机的运行状态,以到达控制小车行进方向和速度的目的,使自动装载小车成功避障。动力系统,采用PWM波控制电机与舵机运行状态,同时采用PID方法实现对速度的闭环控制,使智能车系统能平稳的运行。LCD液晶速度显示器实时显示智能车的运行速度。采用AT89C51单片机作为智能小车控制核心。系统能实现对线路进展寻迹,小车可以前进或后退,

2、遇到障碍物可以自行停顿并可以实现反向运行,系统可以利用声音控制小车的启停。整个系统小巧紧凑,控制准确,性价比高,人机互动性好。关键词:AT89C51单片机;红外避障;线路寻迹;直流减速电机-. zABSTRACTThe main controlfunction of the systemis to start thecar, motor control, LCDspeed display. System is mainly by infrared obstacle avoidance module, voice module, opto-electronics and motor drive

3、tracing module.Sensor measurement and control systemthroughtheguidelinesofthe varioussensors to detectthecontrolsignalinto the microcontroller, MCUjudgment, treatment, andcontrolthe operational statusofthedrive motorand steeringin order to achievethe purpose ofcontrol ofthecarmovingdirection and spe

4、ed, automatic loadingcarobstacle avoidance.Power systems, PWM wavecontrol the motorand the steering gearrunning state, while usingthePID methodto achieveclosed-loop controlofspeed, smart car systemrunning smoothly.The LCD speed displayreal-time displayspeedofthesmartcar.Used as a single-chip smart c

5、ar AT89C51 control core. System can realize the tracing lines, cars can go forward or backward, encountered obstacles can stop and reverse operation can be achieved, the system can use voice to control the start and stop car. pact the entire system to control the accurate, cost-effective, good human

6、-puter interaction.Keywords: AT89C51MCU, Infrared obstacle avoidance, Tracing, DC motor speed-. z目录 TOC o 1-3 h z u HYPERLINK l _Toc327123002摘要 PAGEREF _Toc327123002 h IHYPERLINK l _Toc327123003ABSTRACT PAGEREF _Toc327123003 h IIHYPERLINK l _Toc327123004第一章 引言 PAGEREF _Toc327123004 h 1HYPERLINK l _T

7、oc3271230051.1 课题的目的及意义 PAGEREF _Toc327123005 h 1HYPERLINK l _Toc3271230061.2 主要任务及技术指标 PAGEREF _Toc327123006 h 2HYPERLINK l _Toc3271230071.3 论文容与安排 PAGEREF _Toc327123007 h 2HYPERLINK l _Toc327123008第二章 系统总体方案设计 PAGEREF _Toc327123008 h 4HYPERLINK l _Toc3271230092.1. 主板设计框图 PAGEREF _Toc327123009 h 4H

8、YPERLINK l _Toc3271230102.2 车体设计 PAGEREF _Toc327123010 h 4HYPERLINK l _Toc3271230112.3电机的选择 PAGEREF _Toc327123011 h 5HYPERLINK l _Toc3271230122.4电机驱动模块 PAGEREF _Toc327123012 h 5HYPERLINK l _Toc3271230132.5 控制器模块 PAGEREF _Toc327123013 h 6HYPERLINK l _Toc3271230142.6 线路跟踪电路 PAGEREF _Toc327123014 h 7HY

9、PERLINK l _Toc327123015第三章 硬件电路设计 PAGEREF _Toc327123015 h 8HYPERLINK l _Toc3271230163.1 光电对管寻迹模块 PAGEREF _Toc327123016 h 8HYPERLINK l _Toc3271230173.2 电机驱动电路的设计 PAGEREF _Toc327123017 h 9HYPERLINK l _Toc3271230183.3 红外避障模块 PAGEREF _Toc327123018 h 10HYPERLINK l _Toc3271230193.4 RS485接口电路的设计 PAGEREF _T

10、oc327123019 h 11HYPERLINK l _Toc3271230203.5 黑线检测模块电路设计 PAGEREF _Toc327123020 h 12HYPERLINK l _Toc3271230213.6 红外线发射接收对管 PAGEREF _Toc327123021 h 13HYPERLINK l _Toc3271230223.8 LCD速度显示模块 PAGEREF _Toc327123022 h 15HYPERLINK l _Toc3271230233.9 小车的测速模块 PAGEREF _Toc327123023 h 15HYPERLINK l _Toc327123024

11、3.10 电源模块 PAGEREF _Toc327123024 h 17HYPERLINK l _Toc3271230253.11 运转模式的选择模块 PAGEREF _Toc327123025 h 18HYPERLINK l _Toc3271230263.12 单片机最小系统 PAGEREF _Toc327123026 h 18HYPERLINK l _Toc327123027第四章系统的软件设计 PAGEREF _Toc327123027 h 20HYPERLINK l _Toc3271230284.1 主程序框图 PAGEREF _Toc327123028 h 20HYPERLINK l

12、 _Toc3271230294.2 小车运动状态程序 PAGEREF _Toc327123029 h 21HYPERLINK l _Toc3271230304.3 循迹模块程序图 PAGEREF _Toc327123030 h 24HYPERLINK l _Toc3271230314.4 中断子程序 PAGEREF _Toc327123031 h 25HYPERLINK l _Toc3271230324.5 显示子程序 PAGEREF _Toc327123032 h 27HYPERLINK l _Toc3271230334.6 避障模块子程序 PAGEREF _Toc327123033 h 2

13、8HYPERLINK l _Toc327123034第五章 结论 PAGEREF _Toc327123034 h 30HYPERLINK l _Toc327123035参考文献 PAGEREF _Toc327123035 h 32HYPERLINK l _Toc327123036致及声明 PAGEREF _Toc327123036 h 33HYPERLINK l _Toc327123037附录 PAGEREF _Toc327123037 h 34-. z第一章 引言1.1 课题的目的及意义智能化的产品是新诞生的产品,是今后现代社会开展的主要方向,他可以按照预先设定的操作模式在特定环境中,不需要

14、人工管理,我们可以完成预期必需的或一个更高的目标。与遥控车相比,遥控车需要人为控制转向、启动和停顿,倒退,而更加先进的远程控制的汽车可以控制它的速度,智能汽车可以用计算机编程来实现它的行驶方向,启动和停顿,和速度的控制,无须人工干预,包括一些环境感知、规划和决策、自动驾驶功能于一体的综合系统,它是集中使用计算机、传感器、信息、通信、导航、人工智能和自动控制技术,是一个典型的高科技复杂。现在的智能小车可以作为机器人的典型代表。它可以分为三大组成局部:传感器检测局部、执行局部、CPU处理局部。智能汽车能够实现自动避障,跟踪等功能,而且还可以延长寿命和对障碍物的认知。可以实现汽车自动识别路线,选择正

15、确的路线,并检测自动避开障碍物。基于上述要求,检测的一局部,考虑到汽车一般不需要感知清晰的图像,只需要一个粗略的看图功能就可以应用可能不是很贵的CCD传感器,所以你可以放弃考虑使用廉价的红外传感器反射传感器。智能车的执行局部,是作为直流电动机,主要是控制方向的车轮运转方向和速度。单芯片驱动直流电动机一般有两种选择:第一,不要需要占用的单芯片资源,选择具有PWM功能的微控制器,可实现准确控制;第二,可以通过软件调制的模拟PWM输出,你需要消耗很多单片机资源而且很难准确的进展速度控制,对微控制器的资源利用率,对主要单芯片型号的选择,所以我选择了第一个方案。可以预计,中国的智能类小车的快速开展,经济

16、实力将提供一个更加广阔的前景。因此,智能小车深入细致的研究,不仅可以提高课堂的理论知识,更加投入到实际应用的理论,为未来智能化的开展奠定了坚实的根底。1.2主要任务及技术指标1检测距离小车左右两侧1080cm以的障碍物,并根据此距离的大小使小车车轮转向不同的角度,以避开障碍物。2使小车沿着黑线行走,偏离轨道时,可以自动调整。3检测车轮转速,通过比拟测速电路测得的实际转速与理论转速的差距,判断小车是在较为平坦的地面行驶,还是在下坡或爬坡。假设实际速度小于理论速度,则说明小车在爬坡,此时应增大PWM占空比,增大车轮电机驱动电压来使小车加速,帮助小车爬坡。相反,假设实际速度大于理论速度,则说明小车正

17、在下坡,此时减小PWM占空比,减小车轮电机驱动电压来使小车减速,节省功率消耗。通过测速、调速过程,实现小车转速的闭环控制。1.3 论文容与安排本文主要介绍了多功能智能探测小车的设计思想、电路原理、方案论证以及元器件的选择等容,整体上分为硬件局部设计和软件局部设计。本次设计的容安排可以分为三局部:第一局部是硬件设计,包括方案的设计、元器件的选择等。具体的硬件电路包括红外线发射电路、接收电路以及89C51单片机的外围电路。在实验板上每一个硬件电路焊接完成后,每一局部单独调试,在各个局部调试成功后,联调整个硬件电路,最后做出分析,得出结论。第二局部是软件设计,软件采用C语言编写,软件设计的思想主要是

18、自顶向下,模块化设计,各个子模块逐一设计,分别再进展调试,最后的联调整个程序,判断是否到达预期的要求,做出结论。第三局部在软硬件模块调试都成功的前提下,进展硬、软件联调,这是整个设计的关键,也是设计的难点所在。论文具体容安排如下:第1章扼要介绍了该课题的产生背景、主要任务及容、任务的分析与实现、论文的主要容安排;第2章主要介绍的是系统方案论证;第3章具体介绍了多功能智能探测小车的硬件系统设计,包括红外线测距原理、红外线发射、接收电路、路面检测电路、lcd显示电路、黑线检测电路以及89C51单片机的外围电路的设计;第4章阐述了多功能智能探测小车的软件设计,包括主程序的设计、中断子程序的设计、lc

19、d显示子程序设计、小车的测速程序做出了分析,最后对小车的各程序进展相应的调试,最后完成小车的设计。-. z第二章 系统总体方案设计2.1.主板设计框图如图:图2-1 主板设计框图2.2车体设计方案1:使用玩具电动车。买来的玩具电动车虽然有组装完成的完整的框架,电机及其驱动电路。但在一般情况下,玩具电动车具有以下弊端:首先,因为这个玩具电动车装配紧凑,使得各种安装所需的传感器是非常不方便的。其次,这种电动车一般前轮转向后轮驱动,无法适应主体的设计要求的目的,不能轻易和迅速将保持坐标旋转90度或180度角。再次,玩具电动车电机和玩具直流电动机转矩小,无负载时速度快的时候负载性能差,难以长时间的工作

20、。而且玩具电动车一般都是很贵的。所以,我们选择放弃了这一方案。方案2:自己制作的电动车。比照与上面的一个方案反复,我们确定了一个专门工作于左,右后轮转向电机。左,右车轮安装的电动机,都是根本上是一样的速度和扭矩的直流电动机驱动的,安装在在小车前面是的脚轮。所以,当两个直流电动机反向,而在一样的速度,电动车可以旋转,它可以很容易地使汽车协调恒定沿不同的方向进展转弯。可以判断得出的是,这两个驱动电机可以同轴进展安装。当车向前,后面的两个脚轮及驱动轮,形成一个三角形的构造。这种构造使汽车更加稳定,还可以防止后轮过低,同时可以防止两个驱动轮的驱动力达不到设计的要求。这时前脚轮起到支撑作用,以防止汽车的

21、重心偏移。2.3电机的选择对于智能小车来说,其驱动轮的驱动电机的选择就显得十分重要。由于此题目要实现对寻迹路线的准确定位和准确测量,我们综合考虑了一下两种方案。 方案1:采用步进式电动机。步进式电动机的转矩等一些技术类要求达不到本次设计的要求,本次设计中的小车对速度改变的要求很高,这就应用到转矩的功能,而步进式电机在这一方面没有很好的效果。经综合比拟考虑,我们放弃了此方案。方案2:采用直流减速电机。直流减速电动机的转矩小,体积小,重量轻,组装简单,使用方便。其部的高速电机有带动变速减速齿轮组的原始动力,你可以有一个更大的扭矩,价格也比步进电机的廉价得很多。在本次设计中的电动机的主要技术参数是符

22、合设计要求的,而且有很好的灵活性,易于由单片机进展控制,所以在这次设计中采用直流减速电动机是能够到达设计要求的。为了能够较好的满足系统的要求,因此我们选择了此方案2。2.4电机驱动模块在本次多功能智能探测小车的设计中电机的选择是很重要的,我选择的小车后两个轮子装上电机进展驱动,前面的使用万向轮,这样就可以通过单片机控制小车在遇到不同状态下进展相应的调整。在电动机的选择上有两种方案可以进展比拟选择。方案1:使用9012,2SC8050,电机组成的驱动电路,如左下列图。 89C51单片机控制输出端口的高电平来控制2SC8050的切断,即电机停顿运行,三极管9012截止。当9012三极管时导通再通过

23、2SC8050传导,电机就启动运行。电路比拟简单,输出功率是足够大,足以驱动电机工作,电机工作时,晶体管的性能非常稳定。但是微控制器局部供电局部和电机功率的方案并没有完全别离,而电机开关时都会有一个巨大的反电动势,并且经常烧坏微控制器,并且很耗电。方案2:采用LM298和外部的一些辅助的电路和两个电机及相关的元器件构成相应的驱动电路。由单片机的控制口来接LM298的两个输入控制端IN1,IN2。L298的两个输出端OUT1(2),OUT2(10)接上电机。电机转动状态编码:如表2-1左电机右电机左电机右电机电动车运行状态1IN11IN22IN12IN21010正转正转前行1001正转反转左转1

24、000正转停以左电机为中心原地左转0110反转正转右转0010停正转以右电机为中心原地右转0101反转反转后退1111杀停杀停立刻停顿在表2-1所示的是设置两个L298的1IN1,1IN2,2IN1,2IN2控制端口的四个不同的编码,就可以得到电动车向前,向后的旋转运行状态,同时L298的整体电路将有最大输出2.0A的电流,将使电动车跑得更快。因此,使用方案2。2.5控制器模块方案1:用CPLD作为控制器的可编程逻辑器件。 CPLD可以实现各种复杂的逻辑功能,规模大,密度高,体积小,稳定性高,IO资源丰富,容易进展扩展。并行输入和输出的传输方式,提高了系统的处理速度,。在本次设计的系统并不需要

25、复杂的逻辑功能,数据处理速度的要求也不是很高。从实际的应用和经济上的角度来考虑,所以我们不得不放弃这一方案,。方案2:16位微控制器:16位微控制器具有以下优点,具有体积小,高驱动能力,高集成度,易于扩展,可靠性高,功耗低,构造简单,和中断处理的优点。处理速度高。但是,当凌阳应用到语音处理和识别中时,由于其占用的CPU资源很多和同时在处理其他任务的时候也减少了速度控制能力。该系统主要是进展跟踪检测和电机的控制。如果你只是在同一时间使用凌阳控制小车是容易出现不稳定的状况的。从系统的稳定和编程的简单性的考虑,我们使用凌阳确实是一个简单的方案,同时考虑其他的选择。方案3:采用AT89C51单片机,A

26、T89C51的是4K字节的FLASH存储器FPEROM闪存的可编程和可擦除读只读存储器,低电压,高性能的CMOS 8位微处理器,闪存程序存储器支持两个并行和串行在系统编程 ISP联系。并行编程方式提供团对编程页编程,降低编程本钱和完成编程的时间。 ISP允许在软件控制下对最终的产品的设备进展重新编程。应用固件/更新ISP的广泛应用从易用性的角度考虑,我们选择了方案3。2.6 线路跟踪电路方案1:CCD的单色相机与电脑的主板和图像采集卡一起进展线路的跟踪。白色背景,黑线识别技术做得更加成熟,效果相当不错。但本钱高,很难找到一个适宜的载体。方案2:颜色传感器。色彩传感器的应用越来越广泛,但是其结果

27、是很好的,然而,价格很贵,而且处理电路还是比拟复杂的,还需要在有光的条件下才能用,所以不是一个好的选择。方案3:红外光电发射接收管。该传感器不仅价格廉价,容易买到,处理电路简单,实际使用效果良好,并顺利引导小车根据线路的规定进展行走。所以本次设计就选择方案3。-. z第三章 硬件电路设计3.1 光电对管寻迹模块图3-1所示电路中,电阻R5220将起到限流电阻的作用,此时当光电对管u2上有反射光反射回来的时侯,光电对管u2中的三极管就将处于导通的状态,电阻R910k的下端就相当于接地,此时R9的上端就将变为高电平,此时光电对管中的三极管VT1就处于饱和导通的状态,此时三极管VT1的集电极此时就将

28、输出低电平,作为数字信号传给单片机进展处理。在实验中当光电对管上没有检测到有光反射回来的时侯,而此时的光电对管U2中的三极管VT1的状态是变为不导通得状态,就是此时的VT1三极管处于截至的状态,这时其三极管VT1的集电极就将输出的是高电平给单片机。三极管VT1在下面所示的电路中将起到的是整形滤波的作用。在此次的实验中我们经过反复的试验和示波器的相关的验证所得结果说明,该电路工作性能一般,输出的时候是还带有杂散的相关的干扰波的成分。但是如果输出的时候加上施密特触发器就能可以实现出良好的所需的输出波形。经过相关的实验所得的结果是,这种电路的用电量还是比拟大的,那还是因为给此种电路传感器的调理电路供

29、电的电池的电压降的还是比拟快的。那其中的原因,是因为电路中的光敏三极管VT1导通的时侯的导通电流是比拟大的。在实验中我考虑到要用到比拟器,所以下列图中给出的可调电阻R150k是可以用来调节比拟器的门限电压,通过比拟器的比拟的得出相应的结果,最后我将比拟的结果使用示波器来进展观察,此时就可以看出的是输出的波形还是相当的规则的,而且还可以直接能够让单片机进展相关的查询和使用。光电对管的使用时的检测电路变得简单而且实用,而且此时经过试验验证的给此电路供电的电池的压降还是较小的。因此我们在选择的时候确定此电路用来作为我们的传感器的检测和调理的电路来使用的。另外此光电对管是相当的简单的电路,而且此电路工

30、作性能还是十分的稳定。光电对管的寻迹检测电路图如下列图3-1所示:图3-1 光电寻迹检测及放大电路图3.2电机驱动电路的设计 根据设计要求采用L298N芯片来设计电机驱动电路,下面给出L298N的具体使用功能和构造。l298n是sgs公司生产的直流电机驱动集成电路,比拟常见的是15脚multiwatt封装的l298n。部包含4通道逻辑驱动电路,可以方便地驱动两个直流电机,或一个两相步进电机。工作电压一般为46v,输出电压最高可到达50v,可以直接通过电源来调整输出的电压;输出的电流一般可到达2.4a,最大可以到达3.9a,可以用来驱动带电感性的负载;也可以直接用单片机的输出/输入口来提供信号;

31、而且电路还比拟简单,使用起来比拟方便。l298n可接收标准的ttl逻辑电平信号vss,9脚vss可接4.66.9v的电压。4脚vs可以接电源电压,vs的电压围为2.445v。1脚和15管脚下的发射极就可以分别进展单独引出以用来方便接入电流的采样电阻,最终生成电流的传感信号。l298可以用来驱动2个直流电动机,此时2,3和13,14引脚之间可分别接到直流电动机上。IN1、IN2、IN3、IN4 4个端就可以接控制输入的电平,来控制电机正反转;6,11脚用来接控制电路的使能端,控制电机的运转状态。 为了获取更大的输出电流,l298n采取输入输出并联的连接方式,即in1与in45脚和12脚、in2与

32、in37脚和10脚、out1与out42脚和14脚、out2与out33脚和13脚分别连接在一起。 所以我们采用电机驱动芯片L298N作为电机驱动,驱动电路的设计如图3-2所示:图3-2 L298N驱动电路L298N的5、7、10、12四个引脚将接到单片机上进展控制,通过对单片机的编程就可以实现对小车的两个直流电机的PWM波进展调速以及小车正转或反转等功能。3.3红外避障模块通过红外线的发射和接收来检测是否有障碍物的存在,接着对信号的反应信息交由单片机进展处理。以下是单片机控制的红外检测电路的工作原理及相关的电路路图的工作情况:由led1发射红外线信号,led2则负责接收红外线信号。而芯片LM

33、567第R+、C+脚可以作为译码中心频率的设置端,一般通过调整其外接可变电阻的阻值来调整捕捉的中心频率。图中红外线载波信号是由LM567的第5角发出的,也就是说载波信号的频率与捕捉中心频率是一样的,经过这些处理,最终使得小车能够沿正确的路线行驶,使得小车抗干扰的能力得到很好的提高与保证,舵机的运转状态也能得到很好的控制,并且外界障碍物对小车的干扰在很大程度上也得到了的降低。当接收到的红外线载波信号和捕捉的中心频率是一致的时侯,这就说明了不是干扰,LM567的第8(OUT)角就输出低电平,进而触发三极管的导通,使红外发射管来发射信号,最后采用ST188一体红外接收头来接收反应回来的信号。当遇到障

34、碍物的时侯给单片机一个高电平信号来进展触发,由单片机进展处理,进而控制电机的运转。红外避障模块的电路原理图如下列图3-3所示:图3-3 红外避障电路图3.4 RS485接口电路的设计作为与单片机通信接口相连接的主要的接口电路,rs485在数据的传输通信方面是有很重要的功能的。以下给出单片机与rs485的通信相关的原理及相关的通信协议。89c51单片机的通信接口可以与rs485芯片进展连接,89c51单片机的通信接口的电平特性及标准符合一些常用的接口传输电路的标准,并且在本次设计中采用的6n137芯片可以对单片机和rs485接口电路进展相应的隔离,保证了单片机的通信工作不受外界的干扰,在此电路中

35、单片机的电源和6n137的电源是不太一样的,6n137的一侧使用与单片机一样的电源,而另一侧则使用独立的电源,以保证了通信的抗干扰能力,继而实现单片机侧rs485电路的相关的设计工作。根据单片机的通信功能和RS485的接口功能来确定系统与小车之间的数据的传输功能是实现整体重要的局部之一,本次设计对小车的接口电路进展相应的设计以满足对小车的实际的控制。单片机的通信有着不同的工作模式,而相对而言的RS485芯片的功能要简单一些。RS485采用的数据传输模式是差分传输模式,一般是两根线来传输,两根线之间的电压定义为不同的状态,主要有三种状态,同时 RS485还有一个控制使能端信号,用来控制发送器与传

36、输线之间的联系的关系。以下给出相应的单片机与RS485接口电路的设计电路图。单片机侧RS485接口电路如图3-4所示。图3-4单片机侧RS485接口电路3.5黑线检测模块电路设计黑线检测模块是关于小车正常运行的关键,因为要要小车沿着黑线进展行走,所以在黑线检测模块中采用红外线的相关原理来进展检测,以下给出红外探测的相关功能和主要实现方法。黑线检测模块中的控制类信号还是由单片机来提供,由集红外发射接收一体的ST188作为红外线的发射和接收装置来检测黑线的位置,最后输出相应的电平信号来给单片机进展处理,最后通过单片机来控制小车的运行状态。在黑线检测中根据红外发射及接收的原理,由于此模块电路与避障模

37、块电路类似,只是此模块使用集红外发射接收一体的ST188作为红外线的发射和接收装置来使用,电路所用其他一些器件的参数根本上是一样的,因此此电路的详细分析如上述的避障电路的分析的方法是一样的,红外线的发射和接收进展黑线的检测,当发出红外线时,会有两种情况反应给单片机,一是探测到的是黑线;这是给单片机一个信号来处理检测到的结果,二是,检测到的不是黑线,这时又给单片机一个信号进展处理。而信号以电平的上下来区分黑线或者非黑线,这就是黑线检测的原理,而检测的方法与避障的方法是一样的,所以以下只给出实际的电路原理图。实际电路如图3-5所示:图3-5 黑线检测模块硬件电路3.6红外线发射接收对管红外线的发射

38、和接收对管的作用是作为探测模块的重要组成成分,通过红外线的发射和接收来探测小车的运行轨迹和相关障碍物的位置,以下给出红外线发射和接收对管的工作原理和相关的工作原理图。以及如何设计红外线发射和接收对管的主要技术要求的规定。红外发射管和接收管的工作电流一般为100ma左右,在使用中长时间的超过额定的电流工作会造成元器件的损坏,此电路中限流电阻的阻值为200欧;即发射和承受二极管的限流电阻的阻值,则此时的工作电流应该为5/200为25ma左右;而此电路在实际测试中,传感器能检测到的距离应该为10-80cm左右从液晶显示模块上能看到电压变化,此时的距离应该为单程距离,从相关的资料中是可以看到的;在本次

39、设计中,如果小车的探测距离要增加的话,可以有几种方法可以实现探测距离的增加,可以减小发射极的电阻,还可以用单片机的脉冲信号来控制探测信号所需的电流强度,最后还可以有三极管来放大电流的大小,即即可改变小车的探测距离。此电路中所使用STC12C5A60S2具有的特殊功能是,P1口的部具有ADC转换的功能,而传统51单片机需要进展时延电路的更改,并且需要自己增加ADC转换模块.所以在单片机的选择上采用STC12C5A60S2芯片。以下是红外线发射接收对管的工作原理图。即实现红外线的探测功能。红外线发射接收对管的工作图如图3-6所示:图 3-6 红外发射接收管电路3.8 LCD速度显示模块下车的速度将

40、用lcd来显示,由于显示模块中主要是单片机进展相关显示的控制,所以显示模块主要是原理图上通过插针来引线最后连接显示的1602lcd显示器的相关电路。在显示模块中采用1602LCD,同时采用单片机的总线模式来进展相应的连接。同时单片机也可以用来控制lcd的反面光线,这样可以节省单片机的电源。如图3-7所示:图3-7 LCD显示接口电路3.9小车的测速模块小车的测速模块是根据相关的公式进展计算出来的,在本次多功能智能探测小车的设计中,测速模块是很重要的,因为要将所测得的速度进展lcd显示,所以对测速模块的设计主要采用以下方法。测速的方法决定了测速信号的硬件连接,测速实际上就是测频,因此,频率测量的

41、一些原则同样适用于测速。通常可以用计数法、测脉宽法和等精度法来进展测试。所谓计数法,就是给定一个闸门时间,在闸门时间计数输入的脉冲个数;测脉宽法是利用待测信号的脉宽来控制计数门,对一个高精度的高频计数信号进展计数。由于闸门与被测信号不能同步,因此,这两种方法都存在1误差的问题,第一种方法适用于信号频率高时使用,第二种方法则在信号频率低时使用。等精度法则对高、低频信号都有很好的适应性。图3-8是测速电路的信号获取局部,在电源输入端并联电容C2用来滤去电源尖啸,使霍尔元件稳定工作。HG表示霍尔元件,采用CS3020,在霍尔元件输出端引脚3与地并联电容C3滤去波形尖峰,再接一个上拉电阻R2,然后将其

42、接入LM324的引脚3。用LM324构成一个电压比拟器,将霍尔元件输出电压与电位器RP1比拟得出上下电平信号给单片机读取。C4用于波形整形,以保证获得良好数字信号。LED便于观察,当比拟器输出高电平时不亮,低电平时亮。微型电机M可采用 型,通过电位器RP1分压,实现提高或降低电机转速的目的。C1电容使电机的速度不会产生突变,因为电容能存储电荷。电压比拟器的功能:比拟两个电压的大小(用输出电压的高或低电平,表示两个输入电压的大小关系): 当“输入端电压高于“输入端时,电压比拟器输出为高电平; 当“输入端电压低于“输入端时,电压比拟器输出为低电平;比拟器还有整形的作用,利用这一特点可使单片机获得良

43、好稳定的输出信号,不至于丧失信号,能提高测速的准确性和稳定性。以下是测速模块的电路原理图:图3-8 测速模块电路图3.10电源模块单片机电源模块的设计是很重要的,直接关系到小车的程序控制模块的工作,所以在给单片机相关程序是首先要对单片机进展相关的电源电路的设计。在多功能智能探测小车的电源电路中,单片机的电源电路是通过外界电源转换电路来实现的,单片机的外接电路的电源的电路图3-9所示。图3-9 电源模块电路图3.11 运转模式的选择模块根据单片机的中断功能来对单片机中的两个中断口INT0和INT1的使用和本次设计中的感应铁片、感应速度中所使用到的中断口是一样的,都是通过一个相关的与非门和相关的按

44、键来控制的。进而来实现单片机对小车运转模式的选择,模式选择的原理图3-10所示:图3-10模式选择模块原理图3.12单片机最小系统复位电路的S1是复位键,是单片机的复位操作。也是重新启动CPU初始化操作,加上两个机器周期以上的高电平信号的微控制器的复位RESET引脚。为了实现单芯片系统时钟频率的设定,我们采用了振荡器电路,在晶体振荡器上加电容的主要目的是过滤掉不需要的信号波成分,这样可以使晶体振荡器的输出波形是很平滑的,同时也给单片机提供一个适宜的信号电平,这时电容的滤波效果是最好,并且在轻微的改变电容的大小的时候不至于对系统造成很大的影响。为了缓和信号变化的电容是为了保护芯片的而设计的。加1

45、K的电阻,以防止VCc电源接地,以造成短路,损坏的单片机电路的部件。单片机系统时钟频率在规定的时序下进展工作,以保护微控制器的正常的工作秩序,以实现最小系统图的相关功能。最小系统图实现了单片机本身通过与各单元电路的连接来实现控制整个小车,其中分别将于测速模块、显示模块、电机驱动模块、红外探测模块及循迹模块进展综合,在通讯协议方面采用RS485接口来实现单片机与各局部之间的对话,最小系统图实现了控制系统于各局部之间的连接关系,进而为实现整机电路做出大体上的规划。而后就可以完成整个小车核心局部的设计,进而对小车的整机电路进展完善,最后到达设计要求完成设计。图3-11给出了小车部的核心的最小系统图。

46、图3-11 最小系统图-. z第四章 系统的软件设计4.1主程序框图主程序框图主要描述了小车的主要功能,本设计以两直流电动机为主驱动,通过各类传感器件来采集各类信息,送入主控单元AT89C51单片机处理数据后完成相应动作,以到达自身控制。电机驱动电路采用H桥驱动模块-双L298步进/直流电机驱动板 ,能同时驱动4个直流电机和2个步进电机3;避障和避悬崖采用红外光电开关来完成,自动寻迹采用红外发射管和接收管光电对管寻迹传感器完成,超声波测距采用超声波发射器和接收器经锁相环电路检波完成,最后由控制单元处理数据后通过编程有序合理的将各模块信号整合在一起并完成相应动作,实现了智能控制,相当于简易机器人

47、.在满足设计要求的情况下完成小车的功能。本次小车的软件流程图中介绍了小车的循迹、避障等功能。其中包括一些传感器检测控制系统通过各传感器检测引导线将控制信号送入单片机,经单片机判断、处理后,控制驱动电机和舵机的运行状态,以到达控制小车行进方向和速度的目的,使自动装载小车成功避障。4.1 主程序框图4.2小车运动状态程序程序包括:前进、倒车、左拐、右拐、停车子程序。 前进:由小车的构造原理和驱动电路分析知:只要 1IN1 为高电平,1IN2为低电平,2IN1为高电平,2IN2为低电平即可实现小车的前进。前进子程序包括、置端口数据、启动定时器操作,该局部程序如下:void GoAhead() /前进

48、 *P_IOB_Data=0*0100;/前进*P_INT_Mask |= 0*0004;/开2HZ中断_asm(int fiq,irq);uiTimecont = 0; /清定时器倒车:由小车的构造原理分析和驱动电路分析知:只要 1IN1 为低电平,1IN2为高电平,2IN1为低电平,2IN2为高电平即可实现小车的倒退。倒退子程序包括置端口数据、启动定时器操作,程序如下:void BackUp() /倒退*P_IOB_Data=0*0200;/倒退*P_INT_Mask |= 0*0004;/开2HZ中断_asm(int fiq,irq); /允许总中断uiTimecont = 0; /清定

49、时器左转:由小车的构造原理分析和驱动电路分析知:小车左转需要两个条件:1.前轮左偏 2.后轮前进,这时对应的 I/O状态为:1IN1、2IN2为高电平,1IN2、,2IN1为低电平。左转子程序包括置端口数据、启动定时器操作,该局部程序如下:void TurnLeft() /左转*P_IOB_Data=0*0900;/前轮右偏Delay(); /延时*P_IOB_Data=0*0500;/前轮左偏*P_INT_Mask |= 0*0004; /开2HZ中断_asm(int fiq,irq); /允许总中断uiTimecont = 0; /清定时器在左转之前首先让前轮右偏,然后再让前轮朝左偏,这样

50、前轮的摆动围更大,惯性更大,摆幅也最大,能更好实现转弯。 右转:由小车的构造原理分析和驱动电路分析知:小车右转需要两个条件:1.前轮右偏 2.后轮前进,这时对应的 I/O状态为:1IN2、2IN1为高电平,1IN1、2IN2为低电平。右转子程序包括置端口数据、启动定时器操作,该局部程序如下:void TurnRight() /右转*P_IOB_Data=0*0500;/前轮左偏Delay(); /延时*P_IOB_Data=0*0900;/前轮右偏*P_INT_Mask |= 0*0004;/开2HZ中断_asm(int fiq,irq); /允许总中断uiTimecont = 0; /清定时

51、器4.3循迹模块程序图循迹模块是关乎小车正确行走的关键,循迹模块用到了一些光电管,在黑线检测模块中的控制类信号还是由单片机来提供,小车进入循迹模式后,即开场不停地扫描与探测器连接的单片机I/O口,一旦检测到*个I/O口有信号,即进入判断处理程序,先确定4个探测器中的哪一个探测到了黑线,如果左面第一级传感器或者左面第二级传感器探测到黑线,即小车左半局部压到黑线,车身向右偏出,此时应使小车向左转;如果是右面第一级传感器或右面第二级传感器探测到了黑线,即车身右半部压住黑线,小车向左偏出了轨迹,则应使小车向右转。,是否检测到有信号传输过来,并且由集红外发射接收一体的ST188作为红外线的发射和接收装置

52、来检测黑线的位置,最后输出相应的电平信号来给单片机进展处理,最后通过单片机来控制小车的运行状态。在经过了方向调整后,小车再继续向前行走,并继续探测黑线重复上述动作。图4.2所示即为循迹框图:开场前进扫描i/o口,看是否有黑线N右转左转左边 右边图4-2循迹流程图4.4中断子程序本设计的主要原理是超声波测距,核心的问题是一个时间差的测量。解决这个问题用到了单片机部的定时器T0和中断系统中的INT0。利用软件编程发射超声波的同时翻开定时器T0开场计时,当外部中断INT0检测到超声波的回波,立即进入中断效劳子程序。在中断效劳程序中主要实现了读取时间值,本次测距成功。定时器中断流程图与外部中断流程图如

53、图4-3、图4-4所示:定时中断入口开场定时器初始化发射红外线返回停顿发射NY外中断入口开场关外部中断读取时间值返回结果输出开外部中断是否发射完毕图4-3 定时器中断流程图 图4-4 外部中断流程图INT0端口中断优先级最高,局部源程序如下: unsigned int TIME;/存放返回时间的全局变量sbit sound=P10;/发射红外线的端口 在40khzfashe.c已定义sbit flag=P21;void the_time (void)Initial_intterupt();TR0=1;sound_launch();void Initial_intterupt(void)TMOD

54、=0*01; /定时器T0初始化TH0=0;TL0=0;ET0=1;IT0=1; /外部中断INT0初始化E*0=1;EA=1; /开总中断void int0 (void) interrupt 0ET0=0;TR0=0;/停顿计时E*0=0;EA=0;/关闭总中断info.TIME=(TH0*256+TL0); /记录时间到全局变量 TIMEvoid timer0 (void) interrupt 1/超程警告 =65536us 也就是11.14mEA=0;TR0=0;ET0=0;E*0=0;info.errormark=1;4.5显示子程序显示模块采用LCD1602用于显示速度和距离,其操作

55、较为简单。一般分为初始化设置和数据控制。初始化设置包括显示模式和光标显示的设置;数据控制包括数据指针设置、读数据、写数据和显示清屏、回车等。需要注意的是每次读写时需要进展忙检测。其流程图如4-5所示:开场初始化字符写完.返回向ROM写字符NY图4-5显示流程图局部原程序如下:void LCD_Initialise() Write_LCD_mand(0*01); /清屏Delay*us(5); Write_LCD_mand(0*38); /设置16*2显示,5*7点阵,8位数据接口Delay*us(5);Write_LCD_mand(0*0c); /画面开,制止光标显示闪烁Delay*us(5);Write_LCD_mand(0*06); /当读写一个字节后,光标自动加1Delay*us(5);void Set_LCD_POS(uchar pos)Write_LCD_mand(pos|0*80);4.6避障模块子程序我们的作品用五个传感器实现蔽障,前面两个用来判断前方是否有障碍物。左右靠前的位置有两个传感器,探测距离比拟近,防止左右碰壁。左边车身中间位置有一个传感器,此传感器探测距离比拟远,用来判断左边是否是出口。软件设计时当

温馨提示

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

评论

0/150

提交评论