




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕 业 设 计(论 文)题 目: 基于单片机的无线遥控小车控制 系统设计 学生姓名 XXXX 指导教师 XXXX 二级学院 XXXX 专 业 自动化 班级 自动化 学号 1XXX1 提交日期 2014年5月11日 答辩日期 2014年5月17日 52金陵科技学院学士学位论文 目录目 录摘 要IIIAbstractIV第一章 绪论11.1 前言11.2 单片机背景知识11.3 研究的主要内容2第二章 系统主要模块介绍32.1 系统总体设计32.2 主控模块及其原理分析32.2.1 单片机介绍42.2.2 晶振电路62.2.3 复位电路72.3 无线遥控82.3.1 无线遥控简介82.3.2 红外线遥控的工作原理92.4 传感器电路设计112.4.1 传感器的选择122.4.2 传感器原理132.4.3 寻迹小车的寻迹原理142.5 电机驱动模块152.5.1 如何转动电机152.5.2 电机驱动模块162.6 电源管理模块18第三章 系统软件设计193.1循迹流程图193.2小车控制算法203.2.1 方案选择203.2.1 最少拍控制算法介绍213.3 开发环境223.3.1 keil C51 介绍223.3.2 用keil软件编写软件223.3.3 烧录软件283.3.4 程序中的I/O口分配29第四章 焊接与调试31第五章 结论33参考文献34附录一(程序)35附录二(实物图)50致 谢51金陵科技学院学士学位论文 摘要基于单片机的无线遥控小车控制系统设计摘 要本毕业设计是以AT89C51单片机为控制核心的智能小车系统。AT89C51单片机是一款八位的单片机,它的易用性和多功能性受到了广大使用者的好评,因此普及率很高,各种软硬件的资料也很齐全。用这个单片机控制电机很方便,只要加上一片L9110电机驱动芯片,然后控制的程序编写正确就可以了。而检测模块采用了AT89S51与红外发射接收探头传感器相结合的方法,利用不同颜色反射回来的红外线多少的不同来控制小车前进的方向,发射探头传感器根据跑道颜色的不同检测到不同的信号,经过单片机处理就可以输出控制电机的信号,从而实现小车自动循迹。关键词:单片机;红外接收发射探头;循迹;智能小车金陵科技学院学士学位论文 Abstract Design of wireless remote control car system based on single chip microcomputerAbstractThis graduation design is the smart car control system based on AT89C51 single chip microcomputer. AT89C51 microprocessor is a eight bit microcontroller, its ease of use and multi-function suffer large users, so the popularity rate is very high, a variety of hardware and software of the data is also very complete. The microcomputer control of motor is very convenient, just add a L9110 stepper motor driver chips, and then control the program correctly on it. The detection module uses the method of AT89S51 and infrared emission receiving probe sensor combination, use different color infrared reflection of how much different to control the car direction, transmitting probe sensor to different signals according to different detecting runway color, you can control the electric car with automatic tracking.Key words: Single-chip;Infrared detector receiving launch;Tracing;Smart cars金陵科技学院学士学位论文 第一章 绪论 第一章 绪论1.1 前言汽车产业的大力发展,使关于汽车的研究也就越来越多。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的。本题目是结合科研项目而确定的设计类课题。设计的智能电动小车具有自动寻迹、避障功能,可程控行驶速度、准确定位停车。根据题目的要求,确定如下方案:在玩具电动车的基础上,加装光电、红外线、红外线传感器,实现对电动车位置和运行状况的实时测量,单片机对接收到的的数据进行处理,然后再输出控制信号实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。本设计采用MCS-51系列中的80C51单片机。以80C51为控制核心,利用超声波传感器检测道路上的障碍,控制电动小汽车的自动避障,快慢速行驶,以及自动停车,并可以自动记录时间、里程和速度,自动寻迹和寻光功能。80C51是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。它是第三代单片机的代表。1.2 单片机背景知识单片微型计算机简称单片机,是典型的嵌入式微控制器,单片机常用英文单词的字母缩写MCU(Microcontroller Unit)来表示单片机。单片机不是实现某一个逻辑功能的芯片,而是把一个完整的计算机系统经过技术加工集成到一个芯片上。单片机由运算器、控制器、存储器、I/O接口等构成,其实就是一个微型的计算机系统(一般称为最小系统),跟计算机(指的是台式机或者笔记本电脑)相比,单片机没有外围设备。总的来说:一块集成芯片就组成了一台计算机。单片机比起计算机有体积小、质量轻、价格便宜等很多优点,单片机最早是被用在工业控制领域,它的这些优点为我们学习、应用和开发提供了许多便利条件。同时,学习单片机是了解计算机组成原理与结构的最佳选择。由于计算机在工业控制领域的广泛应用,单片机由仅有中央处理器(CPU)的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统变得更小,从而容易嵌入一些对体积要求比较严格的设备中。INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。因为简单可靠且性能不错获得了一致好评。尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在,基于8051的单片机还在广泛的使用。在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。在我们日常生活中用的电子产品中,几乎每种电子产品中都会用到单片机。手机、电脑、平板电脑、游戏机、固定电话、计算器、家用电器、以及鼠标等都含有单片机。 一般汽车上安装有40多个单片机,高级一些的汽车能装有上百个单片机。现在世界上单片机的数量远远超过各种计算机的总和。这些足以证明单片机在我们日常生活中处处都有。1.3 研究的主要内容本毕业设计研究和解决的问题主要包括以下几个方面:1)本设计的主要任务是设计一款基于单片机的无线遥控小车控制系统,小车具有自动、遥控两种模式。遥控模式下小车可在1公里范围遥控到达指定位置,并在手持设备上显示小车位置坐标;自动模式下在封闭环境输入任意坐标,小车可自动运行到该位置。2)设计小车遥控控制系统的硬件电路和软件程序,包括详细的硬件设备配置,系统连接,程序调试等详细步骤;3)最终完成一篇符合金陵科技学院毕业论文规范的系统技术文档,包括各类技术资料,电路图纸,程序等;4)系统要有实际的硬件展示,并能够通电运行;5)本模块要与其他模块能够配合运行。金陵科技学院学士学位论文 第二章 系统主要模块介绍 第二章 系统主要模块介绍2.1 系统总体设计系统总体框架如图2.1:图2.1 系统框架图系统说明:智能寻迹小车能寻迹主要是由前方的两对红外发射与接收探头来完成的。根据光的反射特性,当红外发射器发出来的光线遇到物体时,就会形成反射的光线,而这个反射回来的红外光线就可以被红外接收器探头接收到。当红外接收探头接收到信号后,将信号送到单片机由单片机内部程序分析处理后再发送新的命令去控制直流电动机,由电动机完成小车的前进,转向等操作。2.2 主控模块及其原理分析主控模块就是单片机最小系统,单片机最小系统(或者称为最小应用系统)是指用最少的元器件组成的可以工作的单片微型计算机系统。对51系列的单片机来说,最小系统一般包括三部分:单片机、晶振电路、复位电路。下面给出一个51单片机的最小系统电路图2.2:图2.2最小系统原理图2.2.1 单片机介绍本设计采用STC89C52单片机,也可用与AT89S51/52或STC89C51/52系列兼容的其他单片机。单片机内部主要部件包含有:一个以ALU算术逻辑部件为中心的8位中央处理器、4/8KB的Flash内部程序存储器、ROM(51为4KB,52为8KB)、128 B的内部数据存取存储器RAM、21个特殊功能寄存器、一个程序计数器(独立的16位专用寄存器)、4个8位可编程并行I/O口、 一个UART串行通信口、2个16位定时/计数器、5个中断源(51的有5个,52的有6个),两个中断优先级的中断控制系统。如图2.3(a)所示的是一块STC89C52单片机。图中单片机的左侧有一个半圆形缺口,缺口下侧从左往右的引脚编号1-20引脚,具体引脚编号见图2.3(b)。图2.3(a) STC89C52单片机芯片 图2.3(b)单片机引脚单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。一、电源引脚: VCC(40引脚)芯片电源,接+5V、GND(20号引脚)接地端; 二、时钟引脚:XTAL1(19引脚 输入端)、XTAL2(20引脚 输出端)外接时钟电源。三、控制类引脚:控制线共有4根,如下介绍:1)ALE/PROG(30引脚):地址锁存允许/片内EPROM编程脉冲 ALE功能:用来锁存P0口送出的低8位地址 PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。2)PSEN(29引脚):外ROM读选通信号。3)RST(9引脚):复位信号输入端。4)EA/Vpp(31号引脚):内外ROM选择/片内EPROM编程电源。 EA功能:内外ROM选择端。当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行。 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 四、I/O口引脚:80C51共有4个8位并行I/O端口,分别为P0口(39-32引脚)、P1口(1-8引脚)、P2口(21-28引脚)、P3口(10-17引脚),共32个引脚。其中P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。通过这些端口可以控制各个外围模块的运行。2.2.2 晶振电路晶振电路就是时钟电路,但是时钟电路不一定是晶振电路,比如时钟电路有专门的时钟芯片(555时钟电路)。为什么要加此电路呢?计算机工作时,是在统一的时钟脉冲控制下一拍一拍地进行的。这个脉冲是由单片机控制器中的时序电路发出的。单片机的时序就是CPU在执行指令时所需控制信号的时间顺序,为了保证各部件间的同步工作,单片机内部电路必须在唯一的时钟信号下严格地按照时序来进行工作。既然计算机是在统一的时钟脉冲控制下工作的,那么,它的时钟脉冲是怎么来的呢? 要给我们的CPU提供时序,就需要相关的硬件电路,即振荡器和时钟电路。8051单片机内部有一个高增益反相放大器,这个反相放大器的作用就是用于构成振荡器用的,但要形成时钟,外部还需要加一些附加电路。8051单片机的时钟产生有以下两种方法:一、内部时钟振荡方式,使用单片机片内自有的振荡器,然后在引脚XTAL1(18脚)和XTAL2(19脚)的两端接晶振,就能构成一个比较稳定的自激振荡器,如图2.4(a)所示。其发出的脉冲直接送入内部时钟电路,外接晶振时,晶振两端所接的电容一般在10pF-30pF之间;这两个电容对频率有微调的作用,晶振的频率范围可在1.2MHz-12MHz之间。为了减少寄生电容,更好地保证振荡器能稳定可靠地工作,振荡器和电容与单片机芯片最好离得近一些。二、外部时钟方式,即将XTAL1接地,外部时钟源信号从XTAL2引脚接入,这样就能直接给CPU提供工作所需的时钟信号。如图2.4(b)所示。图2.4(a) 内部时钟方式 图2.4(b) 外部时钟方式典型的晶振频率可取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)或者取12MHz。本电路中取的是12MHz,一个12M的晶振,其计数脉冲的间隔(机器周期)是1ms。1个机器周期=6个状态周期=12个机器周期,在一个机器周期内,CPU可以完成一个独立的操作。2.2.3 复位电路复位电路由电容串联电阻构成,由图2.5并结合“电容电压不能突变”的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定。典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证复位的可靠性,一般建议电容C 取10u,电阻R取10K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机器周期的高电平。单片机复位电路如图2.5所示: 图2.5 复位电路图51单片机要复位只需要在9号引脚接上一个持续2us的高电平就可以实现单片机的复位,那这个过程是如何实现的呢?在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。 开机的时候为什么为复位?在复位电路图2.4中,电容C的大小为10uF,电阻R的大小为10k欧姆。所以根据电容充电原理,我们知道电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10k*10uF=0.1s。也就是说在电脑启动之后的0.1s时间内,上图中电容两端的电压是从0V增加到3.5V的。这个时候10k电阻两端的电压是从5V减少到1.5V的。综上所述我们知道,在0.1S内,RST引脚(9号引脚)收到的电压是在5V到1.5V范围内。在5V工作的51单片机中规定:将小于1.5V的电压信号视为低电平信号,而将大于1.5V的电压信号视为高电平信号。所以在单片机开机0.1s内,单片机系统会自动复位(RST引脚接收到的高电平信号时间为0.1s左右)。按键按下的时候为什么会复位?在单片机启动0.1s后,电容C两端的电压持续充电达到5V电压,这时候10k电阻两端的电压接近于0V,RST引脚处于低电平,所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平,使得单片机系统复位。单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行过程中,受到环境干扰出现程序跑飞的时候,按下右图中复位按钮后,内部的程序就会从头(用户程序区的0000H)开始执行。2.3 无线遥控2.3.1 无线遥控简介无线遥控技术是指在距离被控物很远就可以通过某种无线(相对于有线)遥控技术实现对被控物的操纵,就好像是手直接操作一样,在各种工业控制、家用电器、航空航天等领域应用非常广泛。无线遥控和有线遥控相比在空间上十分自由,可以根据外部环境改变位置,操作起来十分的灵活。这种优点使无线遥控技术在工业生产领域应用的越来越多。无线遥控系统有很多的种类和分类方法,主要几种方法有以下几种: 按传输控制指令信号的载体分为:无线电遥控、红外线遥控和超声波遥控; 按信号的编码方式分:频率编码和脉冲编码; 按传输通道数分为:单通道遥控和多通道遥控; 按同一时间能够传输的指令数目分为:单路遥控和多路遥控;按指令信号对被控目标的控制技术分为:开关型遥控和比例型遥控。 本设计中使用的是红外线遥控技术。2.3.2 红外线遥控的工作原理红外线遥控是目前使用最广泛的一种遥控手段。红外线遥控设备具有体积小、成本低、功能强、功耗低等优点,因而在应用到电视、录像机之后,又相继应用到录音机、空凋、遥控玩具等设备上。在工业设备中,尤其是在有高压、辐射、有毒气体等恶劣环境下,采用红外线遥控是非常不错的选择,将人与这种环境分隔开来从而能保证人身安全。图2.6所示的就是红外遥控模块的框图。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。图2.6 红外遥控系统图遥控器主要由发射遥控信号的芯片、晶体振荡器、放大晶体管、红外发光二极管以及键盘矩阵等组成。遥控器内装有一个编/解码专用集成电路芯片,芯片在制造时就已将各种按键的编码信息输入其中,遥控发射器只要发出与之对应的编码,然后被接收头接收到再解码后就可以实现遥控的目的了。通用红外遥控系统由发射和接收两部分组成,如图2.7(a)和图2.7(b)。图2.7(a) 红外发射器(遥控器) 图2.7(b) 红外接收头一、遥控发射器及其编码有很多种发射遥控信号的芯片,根据编码格式可以分成两大类,我们以uPD6121G芯片发射电路为例说明编码原理。当按下发射遥控器的按键后,事先约定好的遥控编码就经红外发光二极管发出,每个键都有不同编码,每个编码对应着一种操作,这样就能实现各种操作。如何编码具体原理如下:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0” 图2.8(a);以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”图2.8(b),其波形如图2.9所示。图2.8(a) 遥控编码的“0” 图2.8(b) 遥控编码的“1”(右)由32个上述“0”或者“1”组成的32位二进制码如图2.9(a),通过38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的,然后再通过红外发射二极管产生红外线向空间发射。按下遥控发射器在按键后,遥控器会连续不断的发出32位这种二进制编码,周期约为108ms。图2.8是这个32位二进制码的编码格式,由在这个编码之前要加上引导码(9ms高脉冲和4.5ms低脉冲组成)、用户识别码及其反码、操作码及其反码,为了能让接收器识别,意思就是接收器收到了引导码之后就会去解后面的编码。图2.9(a) 遥控编码信号波形图图2.9(b) 遥控信号周期性波形UPD6121G的遥控编码是一个32位的连续的二进制编码组,其中前16位为用户识别码,不同的电器设备在这16位的数字编码上是不一样的,这样就能防止不同设备的遥控码互相干扰。芯片厂商把用户识别码固定为十六进制的一组数,就是每个厂商有自己的编码,从而避免不同的遥控器混用;后16位为8位操作码(功能码)及其反码。UPD6121G最多支持128(2的7次方)种编码。按下遥控发射器在按键后,周期性地发出同一种32位二进制码,周期约为108ms。图2.9(b)为发射波形图。当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms-18ms),高8位地址码(9ms-18ms),8位数据码(9ms-18ms)和这8位数据的反码(9ms-18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。二、接收器及其解码一体化红外线接收器如图2.7(b),它是一种包含红外线接收和放大的器件,不用借助任何外接元件,就能够完成从红外线信号接收到输出与TTL电平信号兼容的所有工作,它的体积和三极管差不多大,很多红外线遥控和红外线数据传输都能用到它。图中3个引脚从左到右依次是 信号输出端 接地端 电源端(接+5V)。图中的接收器型号为TL1838,也可以用与之兼容的HS1838,编号中的后两位数字38表示红外线工作的频率为38KHz。2.4 传感器电路设计寻迹传感器模块的设计是整个智能小车设计中最重要的一部分,其作用相当于人的眼睛和耳朵,采集外部路面的信息并将其送入单片机进行数据处理,其能否正常工作直接影响着小车队路面的判断以及小车下一步的行动,因而其布局的合理性与有效对小车稳定而又快速的行驶起着关键的作用。我们认为在传感器的布局中,要解决两个问题:信息检测的精确度和信息检测的前沿性。2.4.1 传感器的选择传感器(英文名称:transducer/sensor)是一种检测信号的装置,能检测被测量量的信号,将测量到的信号转换为电信号输出。现在的各种设备都需要传感器,其首要环节就是检测信号,只有有了检测到的信号的输入,控制器才能处理并发射新的信号来控制设备,这就相当于人的大脑处理的信息是通过感官器官眼睛、鼻子或者手来获取的。现在传感器早已广泛应用于工业生产、航空航天、预防地震、石油探测、医学影像、天气预报等等非常之泛的领域。总之,从陆地到海洋,不管什么样的探测预防上工作,都离不传感器的帮助,没有了传感器就相当于人没了眼睛没了手,什么都感受不到了。在传感器方案的选择中,有以下两种方案供参考:方案一:使用CCD传感器来采集路面信息。CCD,英文全称:Charge-coupled Device,中文全称:电荷耦合元件。可以称为CCD图像传感器。CCD是一种半导体器件,能够把光学影像转化为数字信号。使用CCD传感器,可以获取大量的图像信息,可以全面完整的掌握路径信息,可以进行较远距离的预测和识别图像复杂的路面而且抗干扰能力强。但是对于本项目来说,使用CCD传感器也有其不足之处。首先使用CCD传感器需要有大量图像处理的工作,需要进行大量数据的存储和计算。因为是以实现小车视觉为目的,实现起来工作量较大,电路复杂。方案二:使用光电传感器来采集路面信息。使用红外传感器的最大优点就是实现起来比较,成本又很低,而且其结构简单,容易理解应用。但是,用红外传感器也有其不可避免的缺点,因为这种传感器是比较低级的,最基础的传感器,所以它测量到的信号可能就会用偏差有波动而且不稳定。因此只能识别黑色的路面和白色路面这两种颜色相反的路面。并且在检测过程中容易收到光线的影响,因此必须在光线良好的环境下测量。在本次设计中,赛道为黑色与白色两种颜色,小车只要能区分黑色就可以采集到准确的路面信息。经过综合考虑,在本设计中采用红外光电传感器作为信息采集元件。本设计中选用的无线传感器如图2.10所示,白色为:红外发射探头(连续的发射红外光线)。黑色为:红外接收探头(接收反射回来的红外光线)图2.10 红外发射管(白)与红外接收探头(黑)本设计中安装了三组红外探头,排成三角形,如图2.12。2.4.2 传感器原理传感器电路如图2.11所示,详细全图见附录图2.11 红外发射接收电路元件功能介绍:220电阻:红外发射器的降压与限流电阻(完成对红外发射器的保护)。因为单片机的电源是5V,流过放光二极管的电流小于20MA,放光二极管的管压降为1.7V2V。所以根据单片机电源减去二极管管压降除以流过二极管电流,就可以得到所需要的电阻。15K电阻:红外接收探器的光信号变电信号电阻(完成将反射回来的光信号)。15K的电阻选择是随意选择的,也可以选择10K,20K。因为红外接收探头在工作时,就相当于一个开关,所以电阻是随意的。红外发射与红外接收器V1红外发射器:主要完成红外线的发射;V2红外接收器:主要完成将反射回来的红外光线接收到后再由电阻转换为电信号。后面V3和V4,V5和V6与上面介绍的相同。小车车头上的传感器(红外探头)如图2.12:图2.12 小车传感器示意图2.4.3 寻迹小车的寻迹原理在图2.12所示,共有3对(一黑一白)传感器,其中两对垂直安放,用来循迹,还有一对水平朝前安放,用来避障。垂直安放的传感器用来检测地面的黑色跑道,白色的红外发射探头连续的发射红外光线,反射回来后被黑色的红外接收探头收到,当没有检测到黑色跑道时,传感器的光电转换出来的是一个低电平信号,单片机程序中检测到到这个低电平信号后,就执行控制电动机的程序来控制电机的转动从而实现小车的拐弯。比如,小车右转弯时,一开始是左侧传感器脱离黑色跑到,就检测不到跑道了,检测到的是白光,然后输出的是一个低电平,此时单片机收到信号,就控制右边的二极管亮,同时控制左边电动机转动,右边电动机停转或者反转,这样小车就可以循迹转弯了。寻迹小车之所以能够寻迹,主要是由前方的两对红外发射与接收探头来完成的。我们知道光有反射的特性。所以说当前方的红外发射出来的光线遇到物体时,就会形成反射的光线,而这个经反射的红外光线刚好被红外接收探头接收到。当红外接收探头接收到信号后,再将信号送到单片机由单片机内部的程序来控制小车的运行情况。那么如何知道是黑线还是白线呢?原来红外光线有一个反射特性。但对于不用的物体反射特性是不一样的,特别是对白色反光的物体,红外光线的反射量将会多一点。而对黑色不反光的物体,红外反射量将会大量的减少。那么我们就可以利用这个特性来完成黑与白的判断。通过电路的合理安装,可以将这种接收到的红外光线变化量转换为电压值传送到单片机中。返回的电压值为低电平,而单片机就可以进行各种智能化控制了。2.5 电机驱动模块2.5.1 如何转动电机单片机是不能直接连接电动机的,单片机要想控制电机,中间需要加一个“驱动电路”。直流电机的经典控制电路是H桥电路(如图2.13)控制的,可以控制一个直流电机正转、反转、停止、加速、减速等操作。图2.13 H桥电路下面介绍一下H桥电路的原理:图2.13中所示为一个典型的直流电机控制电路:H桥电路之所以这样命名,是因为它的样子看起来很像字母H。H桥式电机驱动电路由4个三极管和一个电动机构成。电机要运转的话,必须导通对角线上的一对三极管,注意不是同一侧的三极管。我们要想电机有不同的转法就必须对三极管有不同的导通方法。下面说下具体的导通方法。第一种情况如下图2.14(a)所示,当导通Q1和Q4时,电流从Q1流入,从左向右穿过电机给电机供电,然后再经 Q4流出。如图中电流箭头的指向,假设该流向的电流将驱动电机顺时针转动(正转)。2.14(a) 顺时针转 2.14(b) 顺时针转第二种种情况如上图2.14(b)所示,导通三极管Q3和Q2,电流Q3流入,从右至左流过电机,然后从Q2流出,从而驱动电机沿另一方向转动,假设该流向的电流将驱动电机逆时针转动(反转)。从上面不难看出,这两种电流的流向相反,电机的转向必然是相反的。具体接线时的正传反转要看实际的接线电路,上面所说的正转可能变成反转,反转也可能变成正转。2.5.2 电机驱动模块上面介绍的是由分立元件拼凑构成的电路,实际使用中制作麻烦,故障率高。当要控制多个电机时(本设计中要控制两个直流电机),通常采用集成的H桥驱动芯片,集成度高,使用方便,可靠性高。如L9110、L298N、LMD18200、TA7257P、SN754410、MC33886等等。这里我用的是L9110芯片,一个芯片控制一个电机,所以要两片,芯片如图2.15(a)所示。图2.15(a) L9110芯片图L9110引脚及引脚介绍见图2.15(b) 图2.15(b) L9110引脚及其介绍L9110芯片能控制和驱动电机,芯片引脚接线图详见图2.15(c)。它将上述的三极管构成的H桥电路集成在一个芯片中,方便使用且提高了安全性和稳定性。L9110被广泛应用于玩具汽车的电机驱动上。在这里用这个芯片还是很合适的。图2.15(c) L9110芯片引脚接线图 当小车直线运行过程中要转弯时,比如右转弯,根据前一节介绍的传感器发出的信号要使小车右转弯,此时左侧车轮执行2.5.1章节中的第一种情况(正转),右侧车轮执行第二种情况(反转),当热右侧车轮也可以不转动。因为如果要用一侧车轮转动快,一侧车轮转动慢来实现小车转弯的话需要用PWM(脉冲宽度调制)调速技术,这样整个调速系统非常复杂,我暂时还做不到那样子,所以只能用这个相对渐变许多的方法来实现。2.6 电源管理模块方案1:采用交流电经直流稳压处理后供电采用交流电提供直流稳压电源,电流驱动能力及电压稳定性最好,且负载对电源影响也最小。但由于需要电线对小车供电,极大影响了避障小车行动的灵活性及地形的适应能力。而且避障小车极易把拖在地上的电线识别为障碍物,人为增加了不必要的障碍。故放弃了这一方案。方案2:采用干电池组进行供电采用四节干电池降压至5V后给单片机及其他逻辑单元供电。这样电机启动及制动时的短暂电压干扰不会影响到逻辑单元和单片机的工作。所以采取此方案。金陵科技学院学士学位论文 第三章 系统软件设计 金陵科技学院学士学位论文 第三章 系统软件设计 第三章 系统软件设计3.1循迹流程图开始系统初始化执行主程序小车前进电机模式选择电机左转电机反转电机右转N偏离跑道否控制算法控制算法控制算法返回跑道否返回跑道否返回跑道否NNYNYYY流程图说明:首先开始启动,进入系统初始化定义引脚,执行主程序小车前进。根据小车的指示灯来判断小车的运行情况。如果小车偏离跑道,会给单片机一个低电平信号进入电机模式选择,例如:小车往左跑道偏出,传感器开始扫描,当红外接受探头接受到红外光线,给单片机低电平信号,这时经过单片机内部程序的处理设置合理的延时时间函数,同时左边电机转动,右侧电机停转。直到小车跑回跑道,正常前进。反复的重复这样的动作就可以实现循迹的功能。3.2小车控制算法3.2.1 方案选择在小车的运行中,有方向和速度的控制,即舵机和电机的控制,这两个控制是系统软件的核心操作,对小车的性能有着决定性的作用。对舵机的控制,要达到的目的就是:在任何情况下,总能给舵机一个合适的偏移量,保证小车能始终连贯地沿黑线以最少距离行驶。在舵机的控制方案中,有以下三种方案可供选择:方案一:比例控制这种控制方法就是在检测到车体偏离的信息时给小车一个预置的反向偏移量,让其回到跑道。比例算法简单有效,参数容易调整,算法实现简单,不需要复杂的数字计算。在实际应用中,由于传感器的个数与布局方式的限制,其控制量的输出是一个离散值,不能对舵机进行精确地控制,容易引起舵机左右摇摆,造成小车行驶过程中的振荡,而且其收敛速度也有限。方案二PID控制PID控制在比例控制的基础上加入了积分和微分控制,可以抑制振荡,加快收敛速度,调节适当的参数可以有效地解决方案一的不足。不过P,I,D三个参数的设定较难,需要凭经验来设定,还要不断的进行调试,因此其适应性较差。方案三:最少拍控制最少拍设计是指系统在典型输入信号(如阶跃信号,速度信号,加速度信号等)作用下,经过最少拍(有限拍),使系统输出的稳态误差为零。所以,最少拍控制系统,也称最少拍无差系统,最少拍随动系统,实质上是时间最优控制系统,系统的性能指标就是系统的调节时间最短或尽可能短。可以看出系统对闭环脉冲传递函数的要求是快速性和准确性。也就是说让小车在行驶出跑道后,能在最短的时间内回到跑道上。最少拍控制系统的设计与被控对象的零极位置有很密切的关系。在本次设计中小车只要求按照跑道行驶,跑道简单。能有快速性,准确性的反应就可以,经过综合考虑后,采用最少拍控制。3.2.1 最少拍控制算法介绍下面先从简单情形开始介绍最少拍控制器的设计。对最小拍控制系统设计的要求是:(1)调节时间最短,即系统跟踪输入信号所需的采样周期数最少; (2)在采样点处无静差,即对特定的参考输入信号,在达到稳态后,系统在采样点能精确实现对输入信号的跟踪; (3)设计出来的数字控制器必须是物理上可以实现的; (4)闭环系统必须是稳定的。最小拍闭环脉冲传递函数的确定首先根据对控制系统性能指标的要求和其他约束条件,构造系统的闭环脉冲传递函数。最小拍控制系统的设计要求是对特定的参考输入信号,在系统达到稳态后,系统在采样点处静差为零。根据此约束条件可以构造出系统的误差脉冲传递函数。典型计算机控制系统结构图如图3.1所示。其中,GP(S)为被控对象H0(S)为零阶保持器,D(Z)即为待设计的最少拍控制器。D(z)H0(S)GP(S)最少拍控制器零阶保持器被控对象R(S)T E(z)TY(S)TY(z)图3.1 最少拍随动系统框图由离散控制理论,最少拍控制系统的误差脉冲传递函数e(z)=1(z) (4-1) =系统偏差为:E(Z)= e(z)R(Z)一般控制系统有三种典型输入形式:(1)单位阶跃输入:r(t)=1R(Z)=(2)单位速度输入:r(t)=tR(Z)= (3)单位加速度输入:r(t)= R(Z)= 在本设计中采用单位阶跃输入,被控对象为直流电机,零阶保持器传递函数已知。只要查出直流电机传递函数就可以求得最少拍控制器D(Z)。由离散控制系统理论,可以求出图4-1所示的计算机控制系统的闭环脉冲传递函数为:(Z)= 由此可以得到数字控制器为D(Z)= 或D(Z)= 3.3 开发环境程序开发是在硬件设计与软件设计的基础上展开的,主要是把硬件与软件结合起来。经过编译、环境下载调试、单片机资源划分。3.3.1 keil C51 介绍keil C51是德国Keil Software公司(ARM公司之一)出品的51系列单片机开发系统。支持C语言和汇编语言的开发。我们用的是C语言,因为与汇编相比,C语言简单易学,执行效率仅比汇编语言低百分之十左右,而汇编语言虽然执行效率高但是相对较难。Keil提供了包括C编译器、库管理和一个功能强大的仿真调试器等,集成在一个大的开发环境(uVision)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 台州市椒江城市发展投资集团有限公司招聘考试真题2024
- 工业互联网平台生态构建策略在智能城市交通管理系统中的应用
- 2025简易农副产品买卖协议合同
- 2025建筑钢材采购合同(模板)
- 艺体生文化考试题型及答案
- 2025年关于养老保险权益转让合同
- 2025关于电子产品租赁的合同协议范本
- 2025装饰材料供货合同模板
- 昆明一中月考试卷及答案
- 2025标准借款担保合同范本
- 新媒体运营实务完整全套课件
- 桩基础平法施工图(平法施工图识读)
- GB/T 9113-2010整体钢制管法兰
- GB/T 23338-2018内燃机增压空气冷却器技术条件
- 海姆立克急救法完整版本课件
- 国家地表水环境质量监测网采测分离实施方案课件
- 控压钻井技术及实践培训讲义工艺课件
- 厚度仪点检表
- 北京市水利工程维修养护定额
- 自然拼读法在小学英语教学中的应用的实践研究
- 无领导小组面试评分表模板
评论
0/150
提交评论