ImageVerifierCode 换一换
格式:DOCX , 页数:51 ,大小:348.73KB ,
资源ID:18955162      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18955162.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电动智能小车Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电动智能小车Word格式文档下载.docx

1、五 寻迹传感器电路 11六 避障传感器电路 11七 显示电路 12八 PWM输出控制电路 12九 声光提示电路 13十 电源电路 14第四章 软件设计 15一 软件流程 15二 代码分析 16第五章 小结 31致 谢 31参 考 文 献 32附录A 程序清单 33附录B 硬件原理图 45第一章 前 言随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定的设计类课题。设计的智能电动小车应该能够实

2、时显示时间,具有自动寻迹、寻光、避障功能,可程控行驶速度、准确定位停车。根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加装光电、红外线、避障传感器等电路,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。本设计采用MCS-51系列中的STC89C51单片机。以STC89C51为控制核心,利用超声波传感器检测道路上的障碍,控制电动小汽车的自动避障,快慢速行驶,以及自动停车,并可以自动记录时间,自动寻迹和寻光功

3、能。STC89C51是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。它是第四代单片机的代表。第四代单片机包括了Intel公司发展MCS-51系列的新一代产品。新一代的单片机的最主要的技术特点是向外部接口电路扩展,以实现Microcomputer完善的控制功能为己任,将一些外部接口功能单元如A/DPWMPCA(可编程计数器阵列)WDT(监视定时器)高速I/O口计数器的捕获/比较逻辑等。这一代单片机中,在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。Philips公司还为这一代单片机STC89C51系列8C592单片机引入了具有较强功

4、能的设备间网络系统总线-CAN(Controller Area Network BUS).新一代单片机为外部提供了相当完善的总线结构,为系统的扩展与配置打下了良好的基础。本设计就采用了比较先进的80C51为控制核心,80C51采用CHOMS工艺,功耗很低。该设计具有实际意义,可以应用于考古、机器人、医疗器械等许多方面。尤其是在足球机器人研究方面具有很好的发展前景;在考古方面也应用到了超声波传感器进行检测。所以本设计与实际相结合,现实意义很强。第二章系统功能描述及设计思路由于机械结构的不同,智能车有两种控制转向的方式,一种是采用四轮双电机结构,前面两个轮子用于控制转向,后面两个控制速度;另一种是

5、采用三轮双电机结构,前面采用一个万向轮,后面采用两台电动机分别控制两个轮子,利用两个轮子速度不同来实现转向。这里设计的简单智能小车采用的是第二种机械结构。一 系统功能描述如图1-1所示,设计制作一个智能小车,该小车能按照要求自行运动,按照虚线路径通过一个建筑物中曲折的道路,并完成规划的动作。设矩形建筑物有两个门A,B,门宽24cm,建筑物的墙壁是10cm高,2cm厚的矮墙,建筑物内无引导轨迹。具体功能如下:.要求智能小车从A门进入并开始自动计时,从B门出来,在行进过程中,能自动选择适当的路径,避开墙壁,找到通路,三分钟之内到达B门; .到达B门,停5s,小车自动计时并数字显示AB段所用的时间,

6、并声光报警; .自B门外,循环形引导轨迹BC前进(引导轨迹为2cm宽);.到达C点后,小车停止前进并停止计时,显示BC段所用的时间; B C 图1-1小车 A 二 设计思路在本次设计中,小车底盘选取的是三轮双电机结构,通过后轮电动机转速和转向的不同实现对小车方向的控制。左右两侧电动机控制采用电动机驱动芯片L298实现驱动,转速调节是通过单片机输出的PWM脉冲宽度方式进行调节。为了保证小车在建筑物内行进过程中不碰壁,因此选用一组光电开关实现障碍物的检测,当传感器检测到障碍物时进行及时避让和调整。另外,在小车离开建筑物时,可以通过安装在小车底部的光电开关检测黑色循迹线,使得小车沿线运行。第三章 硬

7、件电路设计一个单片机应用系统的硬件电路设计包含有两部分内容:一是系统扩展,即单片机内部的功能单元,如ROMRAMI/O口定时/记数器中断系统等能量不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统配置,既按照系统功能要求配置外围设备,如键盘显示器打印机A/DD/A转换器等,要设计合适的接口电路。一 STC89C51单片机硬件结构STC89C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上2。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器

8、。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。1 微处理器该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。2 数据存储器片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。3 程序存储器由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外

9、最多可外扩至64k字节。4 中断系统具有5个中断源,2级中断优先权。5 定时器/计数器片内有2个16位的定时器/计数器, 具有四种工作方式。6 串行口1个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。7 P1口、P2口、P3口、P4口为4个并行8位I/O口。8 特殊功能寄存器共有21个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。由上可见,80C51单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位

10、处理器,它实际上是一个完整的1位微计算机,这个一位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-51单片机在设计的精美之处。二 最小应用系统设计STC89C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单可靠。用80C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图3.1STC89C51单片机最小系统所示。由于集成度的限制,最小应

11、用系统只能用作一些小型的控制单元。其应用特点:(1) 有可供用户使用的大量I/O口线。(2) 内部存储器容量有限。(3) 应用系统开发具有特殊性。图1-2 STC89C51单片机最小系统1、时钟电路STC89C51虽然有内部振荡电路,但要形成时钟,必须外部附加电路。STC89C51单片机的时钟产生方法有两种。内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。振荡晶体可在1.2MHZ到12MHZ之间选择。电容值无严格要求,但电容

12、取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CX1、CX2可在20pF到100pF之间取值,但在60pF到70pF时振荡器有较高的频率稳定性。所以本设计中,振荡晶体选择6MHZ,电容选择65pF。在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好的保证振荡器稳定和可靠地工作。为了提高温度稳定性,应采用NPO电容。2、复位电路STC89C51的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动

13、复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6MHZ时C取22uF,R取1K。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源Vcc接通而实现的。按键手动复位电路见图3.2。时钟频率选用6MHZ时,C取22uF,Rs取200,RK取1K。图1-3 STC89C51复位电路如图1-4所示,智能电动车的系统原理框图主要包括主控器,电动机驱动控制电路,避障红外传感器电路,寻线红外传感

14、器电路,显示电路,时钟电路,报警电路和电源电路等部分构成。电动机驱动控制显示电路避障红外传感器 主控器时钟电路寻线红外传感器报警电路电源电路 图1-4 智能电动车的系统原理框图三 主控器本系统中主控器需要对双电机进行控制,因此需要使用PWM脉冲信号输出。AT89S51是一种低功耗,高性能CMOS 8位微控制器,三个定时器/计数器,具有8KB在系统可编程Flash存储器。主控器外围电路如图1-5所示。 图1-5 主控器外围电路图 四 电动机驱动控制L298是SGS公司(意法半导体公司)的一款H桥电动机驱动芯片。该芯片内部有4通道逻辑驱动电路,具有两套H桥电路,可以方便地驱动两个直流电动机。电动机

15、驱动控制电路如图1-6所示。 图1-6 电动机驱动控制电路图五 寻迹传感器电路寻迹传感器电路采用TCRC5000L型红外对管进行设计。该型号的传感器内部由一个高发射功率红外光电二极管和高灵敏度光电晶体管组成,具有体积小,结构紧猝,灵敏度高,工作性能稳定等特点,能够满足本次设计的要求。传感器的工作原理如下:红外发射管发出红外线,若红外光照射到白色的平面将存在反射光线,传感器会输出一个低电平信号:反之,若红外光照射到黑色的平面将无反射光线,传感器侧输出一个高电平信号。 寻迹传感器电路如图1-7所示,通过一个电压比较器可以获取每个传感器的检测状态。如果传感器末检测到黑线,比较器LM324会输出一个低

16、电平;如果检测到黑线,LM324则输出一个高电平。为了节省单片机的I/O接口,这里通过74LS165将8个传感器输出信号转为串行信号送入单片机中。 图1-7 寻迹传感器电路六 避障传感器电路 避障传感器电路采用红外光电开关E3F-DS10C4进行避障。该型号的传感器具有操作简单,使用方便等特点。传感器内部将集发射器和接收器于一体,当有被检测物体经过时,物体将光电开关发射器发射的足够量的光线反射到接收器,于是光电开关就产生了开关信号。当有光线反射回来时,传感器输出低电平信号;当没有光线反射回来时,输出高电平信号。 避障传感器电路如图1-8所以,同样为了节省单片机的I/O接口,这里也通过74LS1

17、65将6个传感器输出信号转为串行信号送入单片机中。 图1-8 寻迹传感器电路七 显示电路 本系统需要显示的内容较少,主要是计时时间的显示,因此选用一个LCD1602即可实现该项功能。LCD1602液晶也称1602字符型液晶,是一种专门用来显示字母,数字,符号等的点阵型液晶模块,可以显示两行,每行16个字符液晶模块(显示字符和数字)。该显示模块具有微功耗,体积小,显示内容丰富,超薄轻巧等特点,常用在袖珍式仪表和低功耗应用系统中。本系统显示电路如图1-9所示。 图1-9 显示电路八 PWM输出控制电路PWM信号的产生电路如图1-10所示。8254所需的基准频率是由有源晶振Y2产生的。晶振Y2的震荡

18、频率为1MHz,因此产生周期为1us的时钟信号。 图1-10 PWM输出控制电路九 声光提示电路 声光提示电路如图1-11所示,发光二极管的驱动采用灌电流的方式,当单片机驱动引脚LED为低电平时,发光二极管点亮。蜂鸣器使用一个PNP三极管进行驱动,当单片机BEEP引脚输出低电平时,蜂鸣器发出声音进行提示。 图1-11 声光提示电路十 电源电路 智能小车的驱动电机需要9V直流电,采用充电电池供电。因此,需要通过一个电源变换电源实现DC9V到DC5V的转换。这里选用一个开关电源芯片LM2576进行设计,该芯片是美国国家半导体公司生产的3A集成稳压电路,它内部集成了一个固定的振荡器,只需极少外围器件

19、便可构成一种高效的稳压电路,可大大减小散热片的体积,而在大多数情况下不需散热片,内部有完整的保护电路,包括电流限制及热关断电路等。电源电路如图1-12所示。图1-12 电源电路第四章 软件设计一 软件流程 简易智能电动车的主程序流程如图1-13所以。系统上电后,首先完成对定时器T0,T1和液晶的初始化,然后启动智能车前进,进入避障和循迹程序的检测。开始初始化定时器T0定时器T1初始化液晶小车前进避障,循迹检测 图1-13 主程序流程图 避障程序流程如图1-14所示,在该程序中,系统实时读取避障传感器的状态,更加各传感器的输入信号来判断智能车的行进位置及状态,并根据位置和状态信息及时调整车的走向

20、。图1-14 避障程序流程图 在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,。二 代码分析 智能车控制软件分为主程序,避障传感器检测程序,循迹传感器检测程序,电动机控制程序,显示程序,定时器T0,T1有关子程序,延时程序等,各部分程序功能如下: 主程序通过调用各个子程序,实现系统功能。 避障传感器检测程序用于检测

21、智能车在迷宫中的行进状态,并及时调整小车的位置避免与迷宫内的墙壁发生碰撞。 循迹传感器检测程序用于检测智能车在迷宫外的进行状态,通过这些传感器可以实现车沿着黑线进行,防止跑偏。 电动机控制子程序是实现对智能车实现前进,制动,左转,右转等控制。 显示程序主要是显示智能车的行进状态,并对行进过程进行计时。 定时器T0有关子程序包括完成对T0的初始化设置,以及在T0的中断服务程序中对定时器T0和8254的初值设置等功能。 定时器T1有关子程序包括完成对T1的初始化设置,以及在T1的中断服务程序中对定时器实现计时时间的计算。 延时函数用于在智能车行进过程中行走状态的保持。系统具体的程序代码如下。1.函

22、数声明及变量定义 为方便程序的编写,这里把部分常用的变量进行定义。由于本实列中显示器件选用的是LCD1602,该器件在前面的章节中已经进行了详细的介绍,这里就不在重述了。修改LCD1602.C文件中引脚定义,然后直接引用该头文件。#include intrins.habsacc.hLCD1602.h#define uchar unsigned char#define uint unsigned int#define Count0 XBYTE0x1fff /8254计数器0#define Count1 XBYTE0x3fff /8254计数器1#define Con_word XBYTE0x7f

23、ff /8254控制字/*引脚声明*/ 避障传感器输出sbit sen1dat = P31; / 74165数据引脚sbit sen1clk = P30; / 74165时钟引脚sbit sen1ld = P34; / 74165锁存引脚/ 循迹传感器输出sbit sen2dat = P32;sbit sen2clk = P33;sbit sen2ld = P35;/ 左侧电机sbit IN1 = P12;sbit IN2 = P13;sbit PWM0 = P16;/ 右侧电机sbit IN3 = P14;sbit IN4 = P15;sbit PWM1 = P17;/ 声光提示sbit b

24、eep = P17; / 声音提示sbit led = P16; / 发光提示/*变量定义*/bit OutFlag=0;bit h0,h1,h2,h3,h4,h5; / 障碍物检测标志位uchar hped,xped;uchar MeaTime=0;uchar MeaMs=0;uchar disbuffer2;uint time1=20000,time2=20000; /8254计数器0、计数器1初值uchar code DispTAB = 0123456789ABCDEF ; /显示代码uchar code Tab1 = Position:uchar code Tab2 = Time:uchar code Tab3 = A-Buchar code Tab4 = B-C/*函数声明*/uchar Sen1In(void); / 避障传感器信号uchar Sen2In(void); / 循迹传感器信号void initPWM(void); / 初始化PWM占空比void

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1