基于单片机的循迹避障小车的设计与实现论文.doc

上传人:wj 文档编号:2143630 上传时间:2023-05-02 格式:DOC 页数:32 大小:8.63MB
下载 相关 举报
基于单片机的循迹避障小车的设计与实现论文.doc_第1页
第1页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第2页
第2页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第3页
第3页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第4页
第4页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第5页
第5页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第6页
第6页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第7页
第7页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第8页
第8页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第9页
第9页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第10页
第10页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第11页
第11页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第12页
第12页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第13页
第13页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第14页
第14页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第15页
第15页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第16页
第16页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第17页
第17页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第18页
第18页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第19页
第19页 / 共32页
基于单片机的循迹避障小车的设计与实现论文.doc_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的循迹避障小车的设计与实现论文.doc

《基于单片机的循迹避障小车的设计与实现论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的循迹避障小车的设计与实现论文.doc(32页珍藏版)》请在冰点文库上搜索。

基于单片机的循迹避障小车的设计与实现论文.doc

华中农业大学楚天学院本科毕业论文(设计)

本科毕业论文

题目

基于单片机的循迹避障小车的设计与实现

DesignandImplementationofTrackedObstacleCarBasedonMicrocontrollers

姓名

学号

专业

计算机科学与技术

指导教师

职称/学位

讲师/硕士

中国·武汉

二○一七年五月

分类号 密级

华中农业大学楚天学院本科毕业论文

基于单片机的循迹避障小车的设计与实现

DesignandImplementationofTrackedObstacleCarBasedonMicrocontrollers

学生姓名:

学生学号:

学生专业:

计算机科学与技术

指导教师:

华中农业大学楚天学院

二○一七年五月

华中农业大学楚天学院毕业论文(设计)

原创性声明

本人郑重声明:

所呈交的毕业论文(设计),是本人在导师的指导下,独立进行研究所取得的成果。

除文中已经注明引用的内容外,本论文(设计)不包含任何其他个人或集体已经发表或撰写过的作品成果。

本人完全意识到本声明的法律结果由本人承担。

 

作者签名:

日期:

 年月日

目录

摘要 I

关键词 I

Abstract I

Keywords I

1绪论 1

1.1研究目的与意义 1

1.2国内外的研究现状 1

1.3本文的主要组织结构 1

1.4本章小结 2

2研究基础 2

2.1系统概述 2

2.2开发工具 3

2.2.1Keil 3

2.2.2STC-ISP 3

2.3本章小结 4

3 系统方案设计论证 4

3.1系统方案设计 4

3.1.1主控单元方案 4

3.1.2驱动单元方案 5

3.1.3电源单元方案 6

3.1.4循迹单元方案 6

3.1.5避障单元方案 8

3.2最终方案 9

3.3本章小结 9

4系统硬件设计 10

4.1主控单元设计 10

4.1.1STC89C52单片机 10

4.1.2主控单元功能 12

4.2 驱动单元设计 12

4.2.1驱动原理 12

4.2.2驱动电路 12

4.3循迹单元设计 13

4.3.1循迹原理 13

4.3.2循迹电路 14

4.4避障单元设计 15

4.4.1避障原理 15

4.4.2避障电路 15

4.5PWM调速 15

4.5.1PWM调速原理 15

4.5.2PWM调速实现 18

4.6本章小结 18

5系统软件设计 18

5.1系统整体设计 18

5.2驱动单元实现 18

5.2.1循迹驱动模块实现 19

5.2.2避障驱动模块实现 19

5.3循迹单元实现 20

5.4避障单元实现 21

5.5本章小结 22

6系统功能测试 22

6.1测试过程 22

6.1.1循迹传感器测试 22

6.1.2避障传感器测试 23

6.1.3电机调试 23

6.1.4综合测试 23

6.2本章总结 25

7设计总结 25

参考文献 25

致谢 26

摘要

现代交通快速发展,科学技术不断进步,私家车数量也是稳步提升,因此对于车辆智能化的研发也受到人们大量的关注,所以智能汽车是未来的汽车行业的一种必然趋势。

在此背景下,本课题提出了基于单片机的循迹避障小车系统的分析与研究。

本文的主要研究工作是实现基于单片机的循迹避障小车。

首先研究国内外相关课题,对小车循迹避障的各个模块进行设计,最后完成了小车硬件的详细设计方案,包括智能小车的硬件与软件。

硬件设计方案有单片机的最小运行系统,小车驱动电路,为单片机提供稳定电压的稳压模块LM7805,L293D电机驱动电路,红外对管信号检测电路,红外对管避障电路等。

然后是软件设计部分,由主程序,电机控制程序,PWM调速程序等构成。

最后所实现的功能为自动循迹避障行驶。

关键词

循迹避障;L293D;单片机;PWM;

Abstract

Therapiddevelopmentofmoderntransportation,scientificandtechnologicalprogress,Thenumberofprivatecarsisalsosteadilyincreasing,sothereisalotofconcernaboutthedevelopmentofintelligentvehicles.Sosmartcarsareaninevitabletrendinthecarindustryofthefuture.Inthiscontext,thepaperpresentsanalysisandresearchofthetrackingsystembasedonsinglechipmicrocomputer.

Themainresearchinthispaperistorealizethetrackingobstaclecarbasedonsinglechipmicrocomputer.Firstofall,undertheconditionoftheresearchathomeandabroadrelatedtopics,designedanddemonstratedeachmodularofthecartrackingandobstacleavoidance,finallycompletedcardetaileddesignplanabouthardware,includingintelligentcarhardwareandthesoftwarethatdrivesit.Hardwaredesignprogramhasthesmallestsingle-chipoperatingsystem,cardrivecircuit,toprovidestablevoltageregulatormoduleLM7805,L293Dmotordrivecircuit,infraredonthetubesignaldetectioncircuit,infraredcontrolcircuitandsoon.Thenthesoftwaredesignpart,Itconsistsofthemainprogram,motorcontrolprogram,PWMspeedcontrolproceduresandsoon.Atlastrealizethefunctionthatfollowtheblackline,andturnautomaticallywhenencountertheobstacle.

Keywords

TrackingObstruction;L293D;Microcontrollers;PWM;

I

1绪论

1.1研究目的与意义

当今社会,各种技术都开始普及,智能技术也在许多领域中扮演着重要角色,智能车辆在工业领域更是受到特别的青睐。

近些年来,微电子技术、传感器技术、计算机技术、自动控制技术的结合,推动汽车产业的进步,智能车辆技术由此引得人们的高度关注。

之所以会引得如此关注度,是因为这项技术能够改变人们的生活方式,运用于日常交通运输,恶劣环境下的货物搬运等。

自动驾驶技术是智能车辆技术中的一个部分。

用通俗的话来讲,就是在我们常见的家用汽车加入一系列装置,比如传感器,微型控制器等,在辅一各种高科技手段,如最近火热的人工智能,CCD视觉技术等,最后实现了车辆能够在没有人力操作的情况下,自动的行驶的技术。

智能车辆在我国的十分有发展前景,之所以这样说,是因为我国对于该项技术的研究起步的时间在20世纪左右,比起自19世纪中期就开始的发达国家,着实有不小的差距。

在此背景下,本文设计了循迹避障小车。

该小车通过计算机编程,处理从外部传感器接收到的各种数据,实现对外部环境感知、自动行驶且不需要人为控制的功能。

本设计所做的工作有助于自己对自动驾驶技术有一个初步的了解,也给自动驾驶技术提供了一条合理可行的方案。

1.2国内外的研究现状

纵观世界百年,西方国家总是走在革命的前列,在科技领域同样也是。

各种智能技术在西方都有悠久的研究历史,智能车辆技术也不例外,它大体上可以分为一下几个阶段。

(1)第一阶段,20世纪50年代,世界上大多数的国家对智能车辆的研究就是从这个时间点开始。

最著名的、取得成就最高的应该就是美国在1954年,研究出了世界上最早的引导车系统AGVS,之所以取得最高成就,是因为这个引导系统具备了现代智能车辆的基本特征之一,就是无人驾驶。

(2)第二阶段,应该是开始与1980年左右,在这段时间内,发达国家对智能车辆的研究展开列大力支持,各个研究所如雨后春笋般,层出不穷,为智能车辆研究做出了巨大贡献。

同样是美国,国家资助成立了国家自动高速公路系统,同时也成立了专项基金会,为许多大公司提供智能车辆研究方面的优惠政策。

所以一大批世界著名的公司也加入了该项技术的研究。

(3)第三阶段,可以从20世纪90年代开始计算,对于该项技术的研究已经进入了一个成熟的研究阶段。

最引人注目的成就是美国的一所著名大学,完成了对机器人的自主研究,标志这人工智能进入了一个全新的阶段。

现如今,第三阶段正是我们所处于的智能车辆发展阶段。

虽然我国起步比国外发达国家晚但是我们对该技术的研究进度很快,大致能追赶上国外的研究进度。

在近些年我们也取得了不少可喜的研究成果。

改革开放三十年,我国的经济也进入了飞速发展的时代,可以断定,我国必将为世界智能车辆技术的研究做出重要贡献。

1.3本文的主要组织结构

第一章绪论:

本章的主要内容为介绍本设计的研究目的与意义,对国内外研究现状的分析。

第一节对本设计的研究目的与意义做出了简单的论证与介绍。

国内外研究现状则在第二节进行了详细的分析。

第三节就对本文的结构进行了介绍。

第二章研究基础:

本章主要介绍了全文用到的基本概念,使用到的开发工具。

对全文基本概念的介绍在第一节中。

第二节则是对本文进行所用到的开发工具进行了介绍。

第三章系统方案设计论证:

本章的主要内容是对本设计所采用的硬件方案的可行性进行分析。

第一节是对各个模块的硬件方案进行详细阐述。

第二节是进行分析论证之后最终确定的硬件方案。

第四章系统硬件设计:

本章的主要内容是根据第三章中所确定的硬件方案进行硬件的资源分配与整合,最终完成硬件平台的搭建。

第五章系统软件设计:

本章的主要内容为对本设计的软件设计部分进行介绍。

主要分驱动程序、循迹程序、避障程序。

第一节对本设计的电机驱动流程及程序进行简单介绍。

第二节讲解了小车循迹的流程和驱动程序。

第三节对小车的避障程序进行了介绍。

第四节对小车PWM调速算法进行了简单介绍。

第六章实验与验证:

本章的内容是对整个系统的功能进行测试,对出现的问题与改进提出了解决方案。

第一节是对本设计的功能测试。

第二节是本设计的测试结果及分析,提出一些本设计的问题与进一步改进的空间。

第七章设计总结:

本章是对本设计以及本论文的总结和展望。

1.4本章小结

本章为绪论,是整篇论文的准备部分。

先介绍了此设计的研究目的与意义,再对国内外的研究现状进行了讨论,最后对本文的主要组织结构做出了简单介绍。

2研究基础

2.1系统概述

本设计需要用到几个领域的综合知识,以下对全文要用到的基本概念做简要的介绍。

单片机:

一种高集成度的电路芯片,可以形象的将其理解为计算机的CPU。

图2-1为一种型号的单片机。

图2-1单片机

传感器:

一种能够检测外界特定物理量的装置,并将检测到的物理量按一定规律转换为电信号输出。

图2-2为一种型号的传感器。

图2-2传感器

2.2开发工具

2.2.1Keil

Keiluvision4软件包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

旨在提高开发人员的生产力,实现更快,更有效的程序开发。

图2-3为Keil应用程序界面。

图2-3Keil界面

2.2.2STC-ISP

STC-ISP为宏晶公司提供将Hex文件烧录到下位机中的软件。

图2-4为ISP界面。

图2-4STC-ISP界面

2.3本章小结

本章是本设计的研究基础。

第一部分是基本概念,为本系统的相关知识提供一个解释;第二节为研究基础,对单片机,Keil编辑器给出详细的介绍及用处。

3系统方案设计论证

3.1系统方案设计

3.1.1主控单元方案

本设计的要求为在无外力干扰下小车能自动循黑线行进,避开障碍物功能。

方案一:

采用树莓派三代作为本设计的核心控制芯片,实现控制与处理功能。

图3-1为此型号树莓派。

树莓派是一款基于ARM芯片的微型电脑主板,自带多种接口,自带完整的Linux操作系统,就是说我们可以使用自己熟悉的计算机编程语言来开发应用程序,既然是微型电脑,那么后台运行多种进程自然也是不在话下。

图3-1树莓派三代

方案二:

采用STC89C52单片机,来作为本设计的核心控制单片机,处理外界收集到的信号,依次来控制小车的行进状态,最终实现本设计所要求的功能。

与树莓派相比,其缺点是完全比不上树莓派的运算水平,在软件编程方面则需使用汇编或C语言进行。

在程序运行方面,单片机之所以成为单片机,就是因为每次只能运行一个烧录进单片机中的程序,即用程序有多个流程。

功能与树莓派比起来是单一的。

针对本设计,只需要主控系统能够识别传感器返回的数字信号的特点,使用单片机已是绰绰有余,且占用体积小,价格低廉。

且单片机在每次复电之后能立即运行烧录的程序,而树莓派在复电之后需要漫长的服务启动时间,单论这开机启动这一点,单片机就拥有压倒性的优势。

综上所述,本设计最终选择方案二,将选用STC89C52单片机,作为本设计中的核心控制芯片。

具体区别见表3-1。

表3-1主控芯片方案对比

单片机

树莓派

运算水平

编程语言

C语言、汇编

任意高级程序语言

启动时间

极慢

功耗

第三方支持

网络资源丰富

网络资源丰富

成本

3.1.2驱动单元方案

方案一:

采用继电器,通过传感器输送的电平信号让继电器对开关的状态进行切换,进而控制直流电机的通电时间,从而起到对小车的速度进行调整。

图3-2为继电器。

本方案的优点是电路连线不复杂且容易理解,缺点是继电器响应时间慢,而小车一般工作时间长,从而容易烧坏电机,可靠性就变得很低。

图3-2继电器

方案二:

采用H型桥路作为本设计的驱动,其中H型桥路包含功率放大器,不用担心无法驱动直流电机。

此电路结构虽然不简单,但是响应速度快,稳定性极强,市面上也有相当多的此种芯片。

图3-3为市面上一种驱动芯片,L293D。

图3-3L293D驱动芯片

据此本设计选择了方案二,把L293D作为电机驱动模块,此模块可提供双驱动电流,高达600毫安,电压4.5V至36V,是直流电机驱动的不二之选。

具体区别见表3-2。

表3-2驱动单元方案对比

继电器

H型桥路

驱动电压

低,不稳定

高,稳定

响应速度

电路损耗

严重

电机转向

正转

正转、反转

电机数量

1

2

成本

3.1.3电源单元方案

方案一:

采用市面上常见的自带稳压芯片有线电源为本设计供电,可以为本设计提供稳定可靠的5V电压,缺点是开销过大,且在小车行进时电源线也会为小车提供阻力。

方案二:

采用两节3.7V蓄电池,为本设计整个系统供电。

图3-4为蓄电池。

蓄电池可直接安装在车身上,资源占用小,供电电压足够,不会出现电机电压不足无法转动的情况。

图3-43.7V蓄电池

综上所属选择方案二。

具体区别见表3-3。

表3-3电源单元方案对比

有线电源

蓄电池

电压

安装成本

3.1.4循迹单元方案

方案一:

采用简单的光敏电阻组成的传感器。

图3-5为光敏电阻模块。

之所以选择光敏电阻,是因为其特性,它的阻值不是固定的,会随着环境中的光线的增强,致电阻的阻值发生改变。

本设计小车在行进过程中有两种情况,一种是行进在白色纸板上,当光线照射到白色纸板时,光线发生强烈的漫反射;另一种情况是小车行进到黑线上时,光线同时照射到黑线上,大部分光线被吸收反射较弱。

根据这两种情况就可以发现,光敏电阻的特性在此处得到了发挥,在这两种情况里,它的阻值一定不是固定的。

因此将光敏电阻发生改变的阻值经过对比就可以向芯片输出不同的电平信号了。

图3-5光敏电阻模块

方案二:

采用红外发射管和接收管所组成的红外对管作为传感器。

图3-6为红外对管。

红外发射管发出红外线,当发出的红外线照射到黑色轨道上后被吸收,红外接收管不能接收到反射回来的光线则检测出黑线,继而输出高电平,反之输出低电平。

图3-6红外对管模块

通过比较,方案一中光敏电阻传感器受室外光线环境影响过大,不能稳定工作。

方案二中红外对管体积小,检测灵敏度高,更易操作,所以选择方案二。

具体区别见表3-4。

表3-4循迹单元方案对比

光敏电阻

红外对管

精确度

受外界干扰

易受干扰

不易受干扰

硬件电路

所需元件多

模块化,易安装

安装成本

较低

3.1.5避障单元方案

方案一:

采用常见的舵机加超声波模块置于小车底盘的前端。

图3-7为超声波避障模块。

当一定距离内超声波检测到障碍物之后,舵机转动检测,每次舵机都以不同方向的一定角度转动,检测超声波模块所对正前方是否有障碍物,若未检测到障碍物,小车朝此方向转动一定角度后直行。

反之则朝另一方向直行。

若都检测到障碍物,则后退一定距离。

图3-7超声波避障模块

方案二:

采用两只抗干扰红外传感器。

图3-8为抗干扰红外光电对管。

将它们分别置于小车底盘的前端,与小车前进方向平行的位置。

在小车行进过程中,在红外对管检测距离内出现障碍物时,将信号传给主控系统,让其控制小车的行进。

图3-8抗干扰红外光电对管

通过模拟比较,方案一中,超声波装置避障需要超声波模块与舵机模块,避障时我们能看到的要分为需要进行三个步骤才能实现转弯,且方向在程序中固定。

方案二中,红外对管避障与循迹原理大致相同,检测到障碍物之后能立即避开,且角度根据障碍物来改变。

综上所述,本设计采用方案二作为避障方案。

具体区别见表3-5。

表3-5避障单元方案对比

超声波

红外对管

检测距离

1~3m

4~10m

精确度

硬件电路

尺寸大,需舵机

尺寸小,易安装

避障延时

较长

软件编程

复杂

简单

成本

较低

3.2最终方案

经过前文的论证,最终得到贴合本设计各种情况的硬件方案设计,系统模块示意图如图3-9。

(1)主控系统:

采用宏晶科技公司单片机STC89C52作为本设计的主控芯片,控制小车的运动。

(2)电机驱动模块:

采用德州仪器的L293D电机驱动芯片控制电机。

(3)电源模块:

采用两节3.7V蓄电池经7805稳压模块稳压后为单片机及传感器供电。

(4)循迹模块:

采用四路红外对管传感器置于车身底盘采集信号。

(5)避障模块:

采用两路红外对管传感器平行置于车身两侧采集信号。

图3-9系统模块示意图

3.3本章小结

本章主要对本设计的硬件系统搭建进行了分析,提出了硬件中需要解决的问题和相应的解决方案和方法。

4系统硬件设计

4.1主控单元设计

4.1.1STC89C52单片机

STC89C52单片机是宏晶公司生产的一种型号的单片机。

它的功耗不高,性能也是本设计可以接受的程度,可靠性也不低。

其具有8K字节可编程的Flash程序存储器且可反复擦写,STC89C52使用了之前被广泛使用的8051系列单片机的内核,在传统51单片机的基础上,进行了优化与升级,添加了许多新功能。

而且指令代码也兼容8051系列。

表4-1为STC89C52的引脚描述。

表4-1引脚描述

名称

类型

功能

VCC

I

电源电压+5V

P0端口

I/O

P0口是一个漏极开路的8位双向I/O口。

作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。

在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。

此时,P0口内部上拉电阻有效。

在FlashROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。

P1端口

I/O

P1口是一个带内部上拉电阻的8位双向I/O口。

P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。

对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。

P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流

P2端口

I/O

P2口是一个带内部上拉电阻的8位双向I/O端口。

P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。

对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。

P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流

P3端口

I/O

P3是一个带内部上拉电阻的8位双向I/O端口。

P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。

P3做输入口

使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。

RST

I

复位输入。

当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。

看门狗计时完成后,RST引脚输出96个晶振周期的高电平。

特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。

DISRTO默认状态下,复位高电平有效。

ALE

I

地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。

在Flash编程时,此引脚也用作编程输入脉冲

PSEN

I

外部程序存储器选通信号是外部程序存储器选通信号。

当AT89C51RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而

访问外部数据存储器时,将不被激活。

/Vpp

I

访问外部程序存储器控制信号。

为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。

注意加密方式1时,将内部锁定位RESET。

为了执行内部程序指令,应该接VCC。

在Flash编程期间,也接收12伏VPP电压。

XTAL1

I

振荡器反相放大器和内部时钟发生电路的输入端。

XTAL2

I

振荡器反相放大器的输入端。

其中P1口的P1.0与P1.1和P3口有复用功能,具体见表4-2

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2