基于单片机的智能小车设计Word文件下载.docx

上传人:b****1 文档编号:4462045 上传时间:2023-05-03 格式:DOCX 页数:23 大小:368.82KB
下载 相关 举报
基于单片机的智能小车设计Word文件下载.docx_第1页
第1页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第2页
第2页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第3页
第3页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第4页
第4页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第5页
第5页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第6页
第6页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第7页
第7页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第8页
第8页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第9页
第9页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第10页
第10页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第11页
第11页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第12页
第12页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第13页
第13页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第14页
第14页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第15页
第15页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第16页
第16页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第17页
第17页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第18页
第18页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第19页
第19页 / 共23页
基于单片机的智能小车设计Word文件下载.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的智能小车设计Word文件下载.docx

《基于单片机的智能小车设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的智能小车设计Word文件下载.docx(23页珍藏版)》请在冰点文库上搜索。

基于单片机的智能小车设计Word文件下载.docx

3.1驱动电路的设计与原理分析6

3.2信号检测模块的设计与原理分析7

3.3主控电路的设计与原理分析8

3.4直流电机电路的设计与原理分析9

4软件功能程序及分析11

4.1主程序框图11

4.2循迹模块设计12

4.3避障模块13

5总结14

6致谢15

7参考文献15

ABSTRACT16

Keywords16

网络工程专业鲁彦飞

指导教师黄勇

摘 要:

介绍了基于红外传感器的自寻迹小车以及利用传感器进行小车的自动避障设计和实现。

利用红外对管检测黑线与障碍物,自寻迹指小车可自主沿黑色引导线前进,在小车检测到周围有障碍物时进行相应的避障措施,并实现对直流电机的自动控制。

由于不同的颜色具有不同反射强度,通过合理安排红外传感器的数量和空间位置,智能车可以感知道路状况的变化。

系统控制核心采用STC89C52R单片机从当智能小车大脑,使用驱动芯片L298N驱动直流电机。

电机使用两个直流电机分别安装在小车左右两边,通过两个电机的配合达到转弯等动作,该技术可以应用于无人驾驶机动车、机器人等领域。

关键词:

智能小车;

STC89C52RC单片机;

L298N;

五路避障模块;

黑线跟踪

引言

智能化作为现代社会的新产物,是以后的发展方向,他可以按照预先设定的模式在一个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或是更高的目标。

中国自1978年把“智能模拟”作为国家科学技术发展规划的主要研究课题,开始着力研究智能化。

从概念的引进到实验室研究的实现,再到现在高端领域(航天航空、军事、勘探等)的应用,这一过程为智能化的全面发展奠定基石。

智能化全面的发展是实现其对资源的合理充分利用,以尽可能少的投入得到最大的收益,大大提高工业生产的效率,实现现有工业生产水平从自动化向智能化升级,实现当今智能化发展由高端向大众普及。

从先前的模拟电路设计,到数字电路设计,再到现在的集成芯片的应用,各种能实现同样功能的元件越来越小为智能化产物的生成奠定了良好的物质基础。

本设计以智能化全面发展的普及与应用为目的,整体开发过程简单易懂,所选择的平台与各电子元件恰当合理,无需花费过多的人力财力便可达到预期所要求各功能的实现,也符合课题研究的意义。

设计的理论方案、分析方法及特色与创新点等可以为国内自动运输机器人、采矿勘探机器人、家用自动清洁机器人等自动半自动机器人的设计与普及有一定的参考意义。

小车也可以作为玩具的发展对象,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值。

同时作为高校毕业设计研究课题,对学生的思维、动手能力以及总结论述等综合能力得到充分锻炼,有利于以后独立及全面的发展。

设计主要以简易智能机器人为开发平台,选择通用、价廉的51单片机为控制平台,选择常见的电机模型车为机械平台,通过细化设计要求,结合传感器技术、电机控制技术、无线通信技术等相关知识实现小车的各种功能。

设计完成以由无线电遥控、红外线对管的自动寻迹、红外线自动避障以及语音控制组成的硬件模块结合软件设计组成多功能智能小车,共同实现小车的前进倒退、转向行驶,自动根据地面黑线寻迹导航,检测障碍物后停止和语音信号的控制等功能,实现智能控制,达到设计目标。

1系统概述

1.1智能小车的意义和作用

自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。

近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。

人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。

随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。

视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。

视觉传感器的核心器件是摄像管或CCD,目前的CCD已能做到自动聚焦。

但CCD传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。

机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。

避障控制系统是基于自动导引小车(AVG—auto-guidevehicle)系统,基于它的智能小车实现自动识别路线,判断并自动避开障碍,选择正确的行进路线。

使用传感器感知路线和障碍并作出判断和相应的执行动作。

该智能小车可以作为机器人的典型代表。

它可以分为三大组成部分:

传感器检测部分、执行部分、CPU。

机器人要实现自动避障功能,还可以扩展循迹等功能,感知导引线和障碍物。

可以实现小车自动识别路线,选择正确的行进路线,并检测到障碍物自动躲避。

基于上述要求,传感检测部分考虑到小车一般不需要感知清晰的图像,只要求粗略感知即可,所以可以舍弃昂贵的CCD传感器而考虑使用价廉物美的红外反射式传感器来充当。

智能小车的执行部分,是由直流电机来充当的,主要控制小车的行进方向和速度。

单片机驱动直流电机一般有两种方案:

第一,勿需占用单片机资源,直接选择有PWM功能的单片机,这样可以实现精确调速;

第二,可以由软件模拟PWM输出调制,需要占用单片机资源,难以精确调速,但单片机型号的选择余地较大。

考虑到实际情况,本文选择第二种方案。

CPU使用STC89C52RC单片机,配合软件编程实现。

1.2设计目标

本设计的主要任务就是设计一个以单片机为核心的智能小车,主要实现循迹及简单的障碍物检测功能。

通过装在小车前面的红外传感器,获取路面黑线位置信息,输入到单片机中,再由单片机输出控制信号,由驱动模块驱动电机实现小车的自主循迹行驶,同时当路线前方检测到有障碍物时,进行相应的避障措施。

1.3设计工具简介及运行环境

1.电路原理图.ddb文件,Protel99SE软件设计。

其主要包含两大部分:

电路工程设计部分和电路仿真与PLD部分。

2.程序代码.uvproj文件,KeiluVision2软件编写。

KeiluVision2是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统C语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。

3.运行环境:

其程序,电路图部分在win7环境下完成。

2.基于单片机的智能小车设计

根据要求,确定如下方案:

在现有玩具电动车的基础上,加装光电检测器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。

这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。

2.1基于单片机的智能小车的设计要求

本设计的主要任务就是设计一个以单片机为核心的智能小车,主要实现循迹及简单的躲避障碍物功能。

通过装在小车前面的红外传感器,获取路面黑线位置信息,输入到单片机中,再由单片机输出控制信号,由驱动模块驱动电机实现小车的自主循迹行驶,同时当路线前方以及左右方检测到有障碍物时,采取相应的避让措施。

2.2系统总体设计思路

智能小车采用前轮驱动,前轮左右两边各用一个电机驱动,调制前面两个轮子的转速起停从而达到控制转向的目的,后轮是万象轮,只是起支撑的作用。

将循迹模块装在车体前方,将红外对管的头对向地面,将壁障模块的距离调整适当。

当循迹模块左边的传感器检测到黑线时,主控芯片控制左轮电机停止,右轮继续向前转动,从而将车向左修正,当车身下右边传感器检测到黑线时,主控芯片控制右轮电机停止,左轮继续向前转动,从而将车向右修正。

当全部的传感器都检测到黑线时,主控芯片控制左右轮电机都停止,小车停止。

避障的原理和循线一样,分别在车身右边左边以及前方装一个光电对管,当其检测到障碍物时,主控芯片给出信号控制车子是继续向前还是左转或者右转,从而避开障碍物,在小车的转动角度的控制方面采用的时间电路的方法,通过不断的调试最终确定一个中断时间,让小车在转弯时可以转出个90度角。

这个时间的设定也不是一成不变的,不同的路面由于路面的摩擦力不同,时间的设定也会有所不同。

通过对上面这句话的深入理解和建模转化,最后设计出以下方案:

图1结构简图

本系统共分为5块模块。

1:

主控制模块,主要实现各个模块传输的数据处理,输出指令等功能。

2:

电机驱动模块,主要控制小车电机的启动和停止,使小车的电机在配合下达到小车的行走、停止、转弯等动作。

3:

循迹模块,通过小车前方的3个红外对管寻找地上的黑线,从而让小车按着黑线行走。

4:

避障模块,检测小车的周围是否有障碍物,向单片机传输信号,从而让小车避开障碍物。

5:

电源模块,分别用2个6伏直流电源给单片机和电机供电,并加大小车的重量,让小车在行走过程中更加稳定。

2.3系统主程序的流程图

图2程序流程图

2.4系统的硬件选择

2.4.1单片机的选择

采用单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指标。

充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。

这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。

因此,这种方案是一种较为理想的方案。

针对本设计特点——多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。

根据这些分析,我选定了STC89C52RC单片机作为本设计的主控装置,51单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是51单片机价格非常低廉。

在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC89C52RC单片机的资源。

2.4.2驱动模块的选择

用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。

这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的PWM调速技术。

现市面上有很多此种芯片,我选用了L298N。

这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。

因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。

图3H桥式电路

2.4.3循迹模块的选择:

采用红外一体化传感器。

此方案可以降低可见光的干扰,灵敏度高,同时其尺寸小、质量轻、价格也低廉。

外围电路简单,安装起来方便,电源要求不高,用它作为近距离传感器是最理想的.

2.4.4避障模块的选择

采用一只红外对管置于小车左右侧。

通过测试此种方案就能很好的实现小车避开障碍物,且充分的利用资源而不浪费。

2.4.5电源模块的选择

采用2个4支1.5V电池双电源分别给单片机与电机供电可解决问题且能让小车完成其功能。

3系统硬件的设计

3.1驱动电路的设计与原理分析

L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。

可以方便的驱动两个直流电机,或一个两相步进电机。

L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;

可以直接用单片机的IO口提供信号;

而且电路简单,使用比较方便。

L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压。

4脚VS接电源电压,VS电压范围VIH为+2.5~46V。

输出电流可达2.5A,可驱动电感性负载。

1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。

L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动两台电动机。

将引脚接输入控制电平,控制电机的正反转。

EnA,EnB接控制使能端,控制电机的停转。

在L298N的输出端分别正确的接上小车的左右两个直流电机,通过L298N的输出电流控制左右两个直流电机的停止或者前进,例如左轮不转右轮向前就做左转的动作,右轮不转左轮向前就做右转的动作。

图4L298N引脚图

图5驱动原理图

3.2信号检测模块的设计与原理分析

小车循迹原理是小车在画有黑线的白纸“路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”—黑线。

笔者在该模块中利用了简单、应用也比较普遍的检测方法——红外探测法。

  红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。

在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;

如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号,再通过LM324作比较器来采集高低电平,从而实现信号的检测。

避障亦是此原理。

电路图如图。

市面上有很多红外传感器,在这里我选用TCRT5000型光电对管。

图6循迹原理图

3.3主控电路的设计与原理分析

本模块主要是对采集信号进行分析,同时控制电机,起停。

以及再检测到障碍做出反映的作用。

其电路图如图。

STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低电压,高性能COMOS8的微处理器,俗称单片机。

该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

图7STC89C52RC单片机接口引脚图

STC89C52RC具体介绍如下:

(1)主电源引脚(2根)

VCC(Pin40):

电源输入,接+5V电源

GND(Pin20):

接地线

(2)外接晶振引脚(2根)

XTAL1(Pin19):

片内振荡电路的输入端

XTAL2(Pin20):

片内振荡电路的输出端

(3)控制引脚(4根)

RST/VPP(Pin9):

复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。

ALE/PROG(Pin30):

地址锁存允许信号

PSEN(Pin29):

外部存储器读选通信号

EA/VPP(Pin31):

程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。

(4)可编程输入/输出引脚(32根)

STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。

PO口(Pin39~Pin32):

8位双向I/O口线,名称为P0.0~P0.7

P1口(Pin1~Pin8):

8位准双向I/O口线,名称为P1.0~P1.7

P2口(Pin21~Pin28):

8位准双向I/O口线,名称为P2.0~P2.7

P3口(Pin10~Pin17):

8位准双向I/O口线,名称为P3.0~P3.7

STC89C52RC主要功能如表1所示:

表1STC89C52RC主要功能

主要功能特性

兼容MCS51指令系统

8K可反复擦写FlashROM

32个双向I/O口

256x8bit内部RAM

3个16位可编程定时/计数器中断

时钟频率0-24MHz

2个串行中断

可编程UART串行通道

2个外部中断源

共6个中断源

2个读写中断口线

3级加密位

低功耗空闲和掉电模式

软件设置睡眠和唤醒功能

3.4直流电机电路的设计与原理分析

3.4.1模块接口说明

+5V:

芯片电压5V。

VCC:

电机电压,最大可接50V。

GND:

共地接法。

A-~D-:

输出端,接电机。

A~D+:

为步进电机公共端,模块上接了VCC。

EN1、EN2:

高电平有效,EN1、EN2分别为IN1和IN2、IN3和IN4的使能端。

IN1~IN4:

输入端,输入端电平和输出端电平是对应的。

图8直流电机原理图

图9主控电路

4软件功能程序及分析

在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。

因此,软件设计在微机控制系统设计中占重要地位。

对于本系统,软件更为重要。

在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。

数据处理包括:

数据的采集、数字滤波、标度变换等。

过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。

为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。

所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。

模块程序设计法的主要优点是:

(1)单个模块比起一个完整的程序易编写及调试;

(2)模块可以共存,一个模块可以被多个任务在不同条件下调用;

(3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。

本系统软件采用模块化结构,由主程序﹑前进子程序、左转子程序﹑右转子程序、后退子程序构成。

4.1主程序框图:

图10主程序框图

4.2循迹模块

循迹框图:

图11循迹框图

循迹程序:

voidfun1()//循迹子程序

{

if(P25==1&

&

P26==0&

P27==1)//直走P11是车前P10是车后

dr=1;

if(P25==0&

P26==1&

P27==1)//左拐

dr=2;

P27==0)//右拐

dr=3;

if(P10==0||P11==0)//进入壁障标志口

dr=4;

switch(dr)

{

case1:

P14=0,P15=1,P16=0,P17=1;

break;

//直走

case2:

P14=1,P15=0,P16=0,P17=1;

//左拐

case3:

P14=0,P15=1,P16=1,P17=0;

//右拐P14,P15,控制左电机

case4:

yy=1;

}

}

4.3避障模块

避障框图:

传感器全部检测到黑线

小车进入避障模式

小车左走

前右有障碍物前左有障碍物

小车右走

小车直行

Y

图12避障框图

避障程序:

voidfun2()//壁障子程序

{

if(P10==0&

P11==1&

P12==0)//两边测直走

P14=0,P15=1,P16=0,P17=1;

if(P10==0&

P11==0&

P12==1)//左中测右走

P14=1,P15=0,P16=0,P17=1;

//左拐

delay(1000);

if(P10==1&

P12==0)//右中测左走

P14=0,P15=1,P16=1,P17=0;

//右拐

P12==0)//全测到直走

//直走

P12==1)

//直走

P12==0)

{

P27==0)//车停

P14=1,P15=1,P16=1,P17=1;

TR0=0;

5总结

整个系统的设计以单片机为核心,利用了多种传感器,将软件和硬件相结合。

本系统能实现如下功能:

(1)自动沿预设轨道行驶小车在行驶过程中,能够自动检测预先设好的轨道,实现直道和弧形轨道的前进。

若有偏离,能够自动纠正,返回到预设轨道上来。

(2)当小车探测到前进前方的障碍物时,可以自动报警调整,躲避障碍物,从无障碍区通过。

小车通过障碍区后,能够自动循迹。

(3)自动检测停车线并自动停车。

从运行情况来看循迹的效果比较好,避障的效果不是很好,我认为是由于电源不能稳定而是的小车的速度不好控制,这也是我这次设计最大的误区,没有选取稳定的电源。

我相信如果实验条件和时间的允许下我肯定能解决这一问题。

通过本次设计我掌握了很多以前不熟练的东西,认识了很多以前不熟悉得东西,使我在人生上又进了一步。

也认识到很多的不足。

致谢

历时三个月的毕业设计已经告一段落。

经过自己不断的努力以及黄老师的耐心指导和热情帮助,本设计已经基本完成。

在这段时间里,黄老师严谨的治学态度和热忱的工作作风令我十分钦佩,他的指导使我对整个毕业设计的思路有了总体的把握,并耐心的帮我解决了许多实际问题,使我有了很大收获,本论文也是在黄老师的指导下修改完成的。

在此,我要对他表示由衷的感谢,同时也感谢在整个毕业设计中所有帮助过我的人。

通过这次毕业设计,我深刻地认识到了学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学四年的学习成果。

这三个月的设计是对过去所学知识的系统提高和扩充过程,为今后的发展打下了良好的基础。

虽然在这次设计中对于知识的运用和衔接还不够熟练,但是我将在以后的工作和学习中继续努力、不断完善。

由于自身水平有限,设计中一定存在很多不足之处,敬请各位老师批评指正。

本设计能够顺利完成,还承蒙黄老师以及身边的很多同学的指导和帮助。

在设计过程中,黄老师给予了悉心的指导,最重要的是给了我解决问题的思路和方法,并且在设计环境和器材方面给予了大力的帮助和支持,在此,我对黄老师表示最真挚的感谢。

同时感谢所有帮助过我的同学。

感些评阅老师百忙之中抽出时间对本论文进行了评阅。

参考文献

[1]郭惠,吴迅.单片机C语言程序设计完全自学手册[M].电子工业出版社,2008.10:

1-200.

[2]王东锋,王会良,董冠强.单

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

当前位置:首页 > 求职职场 > 简历

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

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