最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

基于51单片机的智能车设计与实现

来源:动视网 责编:小OO 时间:2025-09-23 21:16:40
文档

基于51单片机的智能车设计与实现

目录摘要IAbstractII1.引言11.1选题背景11.2设计目标12.设计方案22.1电机驱动方案22.2遥控控制方案22.3主控芯片的选择73.系统硬件构成83.1设计原理83.2系统电源电路93.3单片机最小系统电路93.3.1复位电路103.3.2震荡电路103.4系统显示电路113.5外围传感器电路113.6按键电路设计与实现124.系统软件设计134.1主程序控制流程134.2无线遥控控制实现144.3智能避障、智能循迹的实现144.4测速功能实现155.系统组装调试155.1
推荐度:
导读目录摘要IAbstractII1.引言11.1选题背景11.2设计目标12.设计方案22.1电机驱动方案22.2遥控控制方案22.3主控芯片的选择73.系统硬件构成83.1设计原理83.2系统电源电路93.3单片机最小系统电路93.3.1复位电路103.3.2震荡电路103.4系统显示电路113.5外围传感器电路113.6按键电路设计与实现124.系统软件设计134.1主程序控制流程134.2无线遥控控制实现144.3智能避障、智能循迹的实现144.4测速功能实现155.系统组装调试155.1
目  录

摘  要    I

Abstract    II

1. 引  言    1

1.1 选题背景    1

1.2设计目标    1

2. 设计方案    2

2.1 电机驱动方案    2

2.2遥控控制方案    2

2.3主控芯片的选择    7

3. 系统硬件构成    8

3.1 设计原理    8

3.2 系统电源电路    9

3.3单片机最小系统电路    9

3.3.1复位电路    10

3.3.2震荡电路    10

3.4系统显示电路    11

3.5外围传感器电路    11

3.6 按键电路设计与实现    12

4. 系统软件设计    13

4.1 主程序控制流程    13

4.2 无线遥控控制实现    14

4.3 智能避障、智能循迹的实现    14

4.4 测速功能实现    15

5. 系统组装调试    15

5.1硬件组装调试    16

5.2 软件设计与调试    16

5.3 系统组装实物    16

6. 结 论    17

致 谢    19

附录 1 遥控子系统电路原理图    20

附录 2 车载子系统电路原理图    21

1. 引  言

1.1 选题背景 

智能机器人是能够在道路和野外连续地实时自主运动的机器人,是当今科技研究领域的热点,体现了信息科学与人工智能技术的最新成果。现代机器人己经不仅仅在工业制造方面,而且在军事、民用、科学研究等许多方面得到了广泛的应用。全国电子大赛和省内电子大赛几乎每次都有智能小车、机器人这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师和设计者都已经有充分的准备。

1.2设计目标

本设计是在不影响系统功能实现的前提下以经济实用的角度出发,采用MCS-51系列中的STCC51单片机,以STCC51为控制核心,结合PT2262和PT2272无线数据传输模块,L298N电机驱动模块以及其他传感器模块而设计出的智能小车控制系统。

该系统由硬件部分与软件部分组成。其中硬件部分由电源输入模块、直流电机动力模块、电机驱动模块、单片机控制系统模块、显示系统模块、以及两个障碍检测传感器、两个循迹传感器、两个测速传感器组成。软件部分由遥控部分和车载部分组成,遥控部分主要为车载部分发送数据命令,车载部分接收遥控命令做出相应的动作,同时根据不同命令分别实现自动避障、循迹、测速,状态显示功能。系统从控制角度分为半自动和全自动。

全自动控制和半自动控制功能由遥控器功能键切换,所有动作将由状态显示LCD1602显示。

全自动控制:车载部分根据无线数据传输模块传输的数据进入遥控模式、避障模式或者循迹模式,各种模式下LCD1602显示系统会显示当前状态以及当前智能小车行驶速度。系统如果进入避障模式或者循迹模式便进入了全自动控制模式,系统会根据现实中遇到的情形与系统预设的情形对应,情形匹配后自动做出对应的动作。

半自动控制:遥控系统由按键动作对应发出无线数据,车载系统接收数据,根据数据以及约定好的数据对应命令实现智能车的前进、后退、原地左转、原地右转动作,这样便实现了半自动控制功能。半自动控制功能能够增强系统的适应性,并且能够处理紧急危险情况。

本设计结构简单,较容易实现,但具有高度的智能化、人性化,在一定程度体现了智能。

2. 设计方案

2.1 电机驱动方案

方案一:三极管控制直流电机

采用传统的功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,成本低,加速能力强,但功率损耗大,特别是低速大转距运行时,通过电阻R的电流大,发热厉害,损耗大。

方案二:继电器控制直流电机

采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整。此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。

方案三:采用专用芯片L298N作为电机驱动芯片。

恒压恒流桥式2A驱动芯片L298N,L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。

L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。

L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7 V电压。4脚VS接电源电压,VS电压范围VIH为+2.5~46 V。输出电流可达2.5 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,EnA,EnB接控制使能端,控制电机的停转。

综述,方案三的调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转,根据需要此次设计采用此方案。

2.2遥控控制方案

方案一:红外遥控方案

通常要根据编码方案来进行软件解码,红外遥控器将遥控信号(二进制脉冲码)调制在38KHz的载波上,经缓冲放大后送至红外发光二极管,转化为红外信号发射出去。二进制脉冲码的形式有多种,其中最为常用的是PWM码(脉冲宽度调制码)。前者以宽脉冲表示1,窄脉冲表示0。后者脉冲宽度一样,但是码位的宽度不一样,码位宽的代表1,码位窄的代表0。以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”如图2-1所示。

图2-1 指令脉冲图

遥控编码脉冲信号由引导码、系统码、系统反码、功能码、功能反码等信号组成。引导码也叫起始码,由宽度为9ms的低电平和宽度为4.5ms的高电平组成(不同的红外家用设备在高低电平的宽度上有一定区别),用来标志遥控编码脉冲信号的开始。如图2-2所示。

图2-2 信号引导码图

系统码也叫识别码,它用来指示遥控系统的种类,以区别其它遥控系统,防止各遥控系统的误动作功能码也叫指令码,它代表了相应的控制功能,接收机中的可根据功能码的数值完成各种功能操作。系统反码与功能反码分别是系统码与功能码的反码反码的加入是为了能在接收端校对传输过程中数据是否产生差错。脉冲位置表示的“0”和“1”组成的32位二进制码前16位控制指令,控制不同的红外遥控设备。而不同的红外家用电器又有不同的脉冲方式,后16位分别是8位的功能码和8位的功能反码。串行数据码时序图如2-3所示。

图2-3串行数据码时序图

将要发送的指令脉冲编码信号调制在38KHz的载波上,可以增加信号的抗干扰能力,提高信号传输效率。信号调制时序如2-4所示。

图2-4 信号调制图

红外解码就与编码反操作,由红外遥控接收头检测到红外信号到来时,进行延时等待引导码9ms的高电平通过,并同时判断在9ms中是否有低电平出现,如果有则退出解码程序认为这可能不是要接收的编码。9ms如果正常通过则再等待4.5ms的低电平,并同时判断在4.5ms中是否有高电平出现,如果有则退出解码程序认为这可能不是要接收的编码。紧接着将根据以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”和以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”的编码规则来接收系统码、系统反码,当系统码、系统反码接收完成后将其进行或操作,如果为0xff则认为是正确接收,否则退出解码程序,如果正确则与遥控器的系统码进行比较,如果相同则表示正确接收到指定遥控器信号,否则认为接收到的可能是别的遥控器信号。最后接收功能码、功能反码,接收完成后将其进行或操作,如果为0xff则认为是正确接收,否则退出解码程序,如果正确则执行遥控器的中断处理程序,判断进行何种后续指令操作。

使用此方案编写遥控器解码程序,并通过实验板的数码管对功能码进行显示,获得遥控器的各按键对应的键值,在本设计中遥控处理程序通过可以比较是

否接收到相应键值进行判断执行遥控指令。

方案二:无线数据传输

本系统无线数据传输采用PT2262和PT2272收发模块实现。PT2262/2272芯片说明如下:

PT2262/2272是一种COMS工艺制造的低功耗低价位通用编解码电路,PT2261/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址吗,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。

编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也是输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHZ的高频发射电路不工作,当有按键按下时,PT2262得电工作,其17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低电频期间315MHz的高频发射电路停止震荡,所以高频发射电路完全受控于PT2262的17

脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。PT2262/2272引脚图如图2-5 图2-6所示:

   图2-5 PT2262引脚图                图2-6 PT2272引脚图

PT2262/2272引脚说明表2-1 和表2-2所示:

表2-1 PT2262引脚说明

名称引脚说明
A0-A111-8  10-13地址管脚
D0-D57-8  10-13数据输出端
TE14编码启动端
OSC116振荡电路输入端
Dout17编码输出端
VCC18电源正极
VSS9电源负极
表2-2 PT2272引脚说明

名称引脚说明
A0-A111-8  10-13地址管脚
D0-D57-8  10-13数据或地址管脚
DIN14数据信号输入端
OSC215振荡电阻振荡器输出端
OSC116振荡电路输入端
VT17编码有效确认
VCC18电源正端
VSS9电源负端
PT2272解码芯片有不同的后缀,表示不同的功能,有L4/M4/L6/M6之分,其中L表示锁存输出,数据只要成功接收就能一直保持对应的电平状态,直到下次遥控数据发生变化时改变。M表示非锁存输出,数据脚输出的电平是瞬间时的而且和发射端是否发射相对应,可以用于类似电动的控制。后缀的6和4表示有几路并行的控制通道,当采用4路并行数据时(PT2272-M4),对应的地址编码应该是8位,如果采用6路的并行数据时(PT2272-M6),对应的地址编码应该是6位。

PT2262/2272无线数据收发组合理论上讲可以达到531441种组合,但是16种数据组合就可以满足本系统需求,所以我们采用市场上常见的T1000BSI无线发射模块和R03DS无线接收模块。该模块可配合收发16种任意组合4位二进制数据,无线发射和无线接收模块经典电路如图2-7和图2-8所示:

图 2-7 T1000BSI无线发射模块经典电路

图 2-8 无线接收模块经典电路

红外无线数据传输的优点是成本低,38KHZ载波容易实现调试,硬件设计简单,但是有发射端和接收端之间不能有障碍物相隔,遥控距离短等缺点。而无线数据传输距理论上在300米左右,发射接收频率固定在315MHZ,在隔墙的情况下也可以正常收发数据,但是315MHZ发射接收频率载波不容易调试实现,但是市场上315MHZ无线收发模块早已成熟,成本低廉。所以综合方案一方案二我们选择无线收发模块作为实现本系统的数据传输功能。

2.3主控芯片的选择

STCC51系列单片机是从引脚到内核都完全兼容标准8051的单片机。STCC系列单片机是高速/低功耗的新一代8051单片机,最高工作频率可分别达到25MHz~50MHz。STCC系列单片机有较宽的工作电压,5V型号的可工作于3.4V~6.0V。此外,STCC系列单片机在完全兼容8052芯片(在标准8051基础上增加了T2定时器和128字节内部RAM)的基础上,新增了许多实用功能。

STCC51可以代替ATC51,功能更强,速度更快,寿命更长,价格更低。外型:40个引脚,双列直插DIP-40。STCC51可以完成ISP在线编程功能,而ATC51则不能。将ATC51中的程序直接烧录到STCC51中后,STCC51就可以代替ATC51直接工作(一般都不需要做任何改动即可正常工作)。STC推出的系列51单片机芯片是全面兼容其它51单片机的,而且51单片机是主流大军,每一个高等院校、普通学校、网站、业余单片机培训都是以51单片机为入门教材的,所以,教材最多,例子最多。STCC51内部有EEPROM,可以在程序中修改,断电不丢失。还增加了两级中断优先级等等。

综述选择STCC51作为主控芯片。

3. 系统硬件构成

3.1 设计原理

    本设计由遥控和车载两部分组成,遥控部分和车载部分都是以STCC51作为主控芯片。由PT2262/2272无线数据传输模块和外围传感器来实现半智能和全智能小车数据命令收集系统。

    遥控主要实现对智能小车的远距离控制目的,用LCD1602显示系统作为人机交换,显示当前智能小车的状态。车载部分由单片机控制核心、电机驱动模块、红外避障传感器、循迹传感器、测速传感器、减速电机动力输出装置组成和LCD1602显示系统组成,达到遥控控制、全智能控制以及人机交换目的。

    由PT2262和PT2272调制解调数据,使遥控部分和车载部分进行数据命令传输,遥控可以发送模式选择遥控模式、避障模式、循迹模式的模式切换命令,在遥控模式下可以发送前、后、左转、右转命令,车载控制核心根据接到的数据进行简单协议逻辑分析后发送命令使智能小车做出相应动作。

    避障传感器和循迹传感器都是利用红外对管发射红外线经过反射之后检测接收发射光来实现检测障碍物和路线轨迹,而测速传感器是根据红外对射思想实现的,即红外发射管和接收管在同一直线上。根据硬件电路设计,避障传感器可以通过调节电位器来调节检测距离,避障传感器发射红外线功率比较大,发射条件要求不高,发射距离远,检测距离在5cm到150cm之间;循迹传感器发射功率相对较小,检测距离只有1-3cm之间,循迹传感器根据不同颜色发射光线不同的原理来检测障路线的轨迹;测速传感器根据对射管之间有没有空洞可以让红外线穿过,同时在单位时间内累计出现空洞数量来计算智能车行驶速度。

    本系统分为遥控子系统和车载子系统两部分,对应的设计框架图分别如图3-1,图3-2所示:

图 3-1遥控系统框架图

图 3-2车载子系统硬件框架图

3.2 系统电源电路

    稳定的系统电源在整个系统中有着举足轻重的作用。本系统采用两种电源供电方式,一种是5-6V直流电源直接供电,另一种是7-9V直流电供电方式。两种供电方式提高系统的环境的适应性能。电源电路原理如图3-3所示:

图3-3 系统电源电路原理图 

3.3单片机最小系统电路

    STCC51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。用STCC51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,最小应用系统是单片机能够正常工作的最小电路单元。其应用特点是它有可供用户使用的大量I/O口线但内部存储器容量有限,应用系统开发具有特殊性。

3.3.1复位电路

    单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC=0000H,使单片机从第—个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1-P3口输出高电平;外部程序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图3-4所示的复位电路。

图3-4 复位电路原理图

该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C1上的电压很小,复位下拉电阻上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容C1通过R5放电。当电容C1放电结束后,RST端的电位由R5与R6分压比决定。由于R5<3.3.2震荡电路

    ATC52引脚XTAL1和XTAL2与晶体振荡器及电容C2、C1按图3-5所示方式连接。晶振、电容C1/C2及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C1、C2的容量有关,但主要由晶振频率决定,范围在0~33MHz之间,电容C1、C2取值范围在5~30pF之间。根据本系统需求,这里中采用11.0592MHZ做系统的外部晶振。电容为20pF的独石电容。

图3-5 震荡电路原理图

3.4系统显示电路

为了在遥控和车体上都能更直观的观察系统当前运行状态以及系统当前行驶速度,系统采用了两块市场上技术非常成熟的LCD1602液晶显示屏分别安装在遥控和车体上,该液晶显示屏成本低廉,功耗低,控制简单,显示效果佳。LCD1602液晶显示屏一屏能够显示2行16列共32个字符,能够满足系统需求。LCD1602与51单片机电路连接图如图3-6所示:

图3-6 LCD1602电路原理图

3.5外围传感器电路

    外围传感器可以从两方面来分类。从电路根据原理可以分为两大类,避障传感器检测距离可调,而循迹传感器和测速传感器是检测距离不可调传感器;从检测原理和效果来说都相同,都是根据红外线发射管发射红外线之后接收管能否接收到红外来判断是否检测到相应的情形,检测到对应的情形之后都会在对应的引脚输出低电平,对于主控制芯片来说只需要检测对应引脚时候出现低电平来做出对用的动作。

    测速传感器和循迹传感器硬件实现原理相同,这里以循迹传感器为例阐述其硬件实现。测速传感器主要由红外对管和74HC14反相器组成。模块工作时由红外发射管连续发射红外线,如果在设置范围内遇到物体红外线就会按原路反射回来,这时接收端电路就会与地导通,经过74HC14方向器后就会把对应的引脚输出高电平。74HC14是一款高速CMOS器件,可将缓慢变化的输入信号转换成清晰、无抖动的输出信号,主要用应在波形、脉冲的整形。电路原理图如图3-7所示:

图3-7循迹传感器电路原理图

3.6 按键电路设计与实现

    根据需求,按键电路只在遥控子系统上加以实现。遥控子系统中定义了八个用户按键和一个复位按键,复位按键是纯硬件实现,不需要编程控制。八个用户按键框图如图3-8所示,按键由圆形表示,按键编号用长方形表示。

图3-8 按键布局框图

4. 系统软件设计

    在进行系统设计时,除了系统硬件设计外,大量的工作就是如何根据实际需要设计应用程序。在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块或过程。所谓“模块化”,实质上就是把完成一个完整功能,相对的程序段封装在一个函数或者文件内,模块化编程风格风格提高了程序的可维护性和可阅读性。

4.1 主程序控制流程

    由于本系统由遥控子系统和车载子系统两部分组成,所以我们的控制程序也有两部分组成。遥控子系统根据用户按下的按键发出对应的数据,并把当前的状态通过LCD1602显示给用户。车载子系统根据发来的数据进入不同的模式,执行对应的动作,并通过LCD1602显示当前的状态以及行驶速度。

遥控子系统主控流程图和车载子系统主控流程图如图4-1,图4-2所示:

图4-1 遥控子系统主控流程图

图4-2车载子系统主控流程图

4.2 无线遥控控制实现

    本系统软件设计分为遥控部分和车体部分,这两个在硬件上完全的子系统在通过无线模块就行数据通信时就要遵循一定的协议,比如遥控子系统发送二进制数据0000时,车载子系统如果处在模式一时控制程序应该知道是停止一切动作,而车载子系统处在模式二是不采取任何操作。表4-1,表4-2分别给出了遥控子系统发出不同数据时整个系统应该切入的模式,以及在不同模式下遥控子系统发送不同数据时所对应的功能。

表4-1 发送数据与模式对应关系

按键发送数据系统切入模式系统状态切换至
KEY10001模式一遥控状态
KEY20010模式二避障状态
KEY30011模式三循迹状态
KEY61000空闲模式空闲状态
表4-2 在不同模式下发送数据系统对应动作

按键发送数据系统对应动作
系统所处状态遥控模式避障模式循迹模式
0000停止一切动作
KEY40100前行
KEY50101后退
KEY70110左转
KEY80111右转
KEY61000停止一切动作停止一切动作停止一切动作
4.3 智能避障、智能循迹的实现

    车载子系统安装两个避障传感器和两个循迹传感器。两个避障传感器分别安装在智能车头部底盘两侧,发射红外线方向水平向前,检测不同方向的障碍物。两个循迹传感器都安装在智能车底盘头部,红外线发射方向垂直向下,两只传感器之间距离3厘米,能够循迹宽度1到2.5厘米宽的深颜色轨道。

智能避障模式下,两个避障传感器会遇到四种不同情况。分别是左右两边都没有障碍物,左边有障碍右边没有障碍物,左边没有障碍物右边有,左右两边都有障碍物。这四种情况对应的动作如表4-3所示,表4-3中动作部分1代表检测到障碍物,0代表没有检测到障碍物:

表4-3 避障算法

情形智能车对应动作
00前行
10向右转弯,直到左边没有障碍物之后继续前行
01向左转弯,直到右边没有障碍物之后继续前行
11向右到0.6秒,向右转弯0.6秒,如果没有障碍物继续前行

智能循迹模式下也会遇到四种不同的情形。分别是左边右边都没有检测到黑色预定轨迹,左边检测到黑色轨迹右边没有检测到,左边没有检测到黑色轨迹左边检测到,左右两边都检测到黑色轨迹。这四种情况对应动作如表4-4所示,表4-4中1代表检测到黑色轨迹,0代表没有检测到黑色轨迹:

表4-4 循迹算法

情形智能车对应动作
00前行
10向右转弯,直到左边检测不到黑色轨迹之后继续前行
01向左转弯,直到右边检测不到黑色轨迹之后继续前行
11向右到0.6秒,向右转弯0.6秒,如果没有检测到黑色障碍物继续前行

4.4 测速功能实现

    速度测量显示是现实生活中很常见的,传统的速度测量是机械式的。本系统采用数字测速思想实现更为精确实时的测速系统。系统在电机输出主轴上固定有圆形镂空圆盘,镂空圆盘上有20个圆形过孔均匀分布在半径一定的圆周上,车轮的周长是20cm,所以单位时间内检测到的过孔数量既是智能车行驶速度,单位是cm/s。

    测速传感器没有检测到过孔时会输出低电平,为了系统测速精确我们采用外部中断方式来计数检测到过孔数量,外部中断0触发方式设置为下降沿触发方式。

5. 系统组装调试

    一个简单的项目开发流程大概可以分为四大步骤。第一步是需求分析,第二步是根据需求分析设计系统硬件电路,第三步是软件的设计与开发,第四步是系统的软硬件统筹调试。

    在现实开发过程中系统开发流程尤为重要,如果需求分析没有做好等项目到交付时可能就会造成全盘否认的情况,造成的人力、财力和时间损失往往是很严重的。有时在硬件设计阶段也需要考虑到软件实现的难易程度,根据软件控制的难易程度来适当调整电路设计。

    本系统硬件设计用protel 99 se硬件电路设计开发平台来实现,keil 4作为软件开发平台,电路板制作用传统的热转印和氨水的腐刻工艺实现。

5.1硬件组装调试

    硬件调试时往往要借助测试程序来实现。本系统中遥控子系统和车载子系统硬件调试方法大致相同,我们以遥控子系统为例说明调试方法。

    因为我们要用LCD1602液晶显示屏作为测试中人机交换媒介,所以我们第一步应该做LCD1602的显示测试。我们首先根据硬件电路写出一个简单的测试程序使LCD1602显示一行字符,如果显示正常我们可以测试按键部分,如果定义的按键按下,1602显示对应的按键已经按下。无线收发模块我们我可用测试程序把对应的单片机控制引脚置为不同数据,用万用表分别检测。

5.2 软件设计与调试

    软件调试工程中也会遇到很多细节问题。比如说一开始遥控按键扫描函数放在了主程序的while(1)循环体中,但是由于循迹避障算法的特殊性造成按键在这两种模式下不能及时响应,后来把模式切换按键扫描放在了中断中解决了这个问题。

    软件调试是一个很繁琐的过程,期间会遇到各种各样的问题,但是只要掌握了一定的调试技巧就会事半功倍,达到预期效果。

5.3 系统组装实物

系统整体实现实物图如图5-1所示:

     

图5-1 系统实物图

6. 结 论

本设计过程中,我们边查资料,边在实验室焊接小车的线路板。在焊接过程中,感觉到即使是一个简单的电路,要想焊好,也不是很容易的事情。有时虚焊,有时选错器件。

这个过程使我们深深感受到理论与实际间的差距。通过这样的设计和从无到有的过程提高了我们的动手能力。而且每天在实验室除了焊接线路板,还可以上机编程,使我们的软件调试能力也有所提高。经过多次修改和整理,该智能车系统可以满足设计的基本要求。由软件软件控制发射数据并传送至车载系统,由该处理程序判断将执行模式切换,前进,后退,左转,右转功能。但因为时间和水平有限,此系统还不完整。计划将增加声控功能,远程摄像功能,机器人手臂功能,使其更加智能化。

参考文献

[1] 周剑,胡锦,郑子明,阮正坤.基于ATS51单片机的防撞智能车设计[ J ],硅谷2009,19:11-12

[2] 朱向庆,陈志雄.一种语音控制的自主寻迹与避障智能小车设计[ J ],计算机测量与控制,2011,19(7):1674-1677.

[3] 刘瑞新,赵建军.单片机原理及应用教程[M] 北京 机械工业出版社,2004.

[4] 宏晶科技. STCC51RC /RD +系列单片机器件手册[M ]. 深圳 宏晶科技,2003.

[5] 李玉晓,赖阳明,刘少华.基于SPCE061A的多功能智能小车的设计[ J ],江西理工大学学报,2011年05期.

[6] 陈素华,方旭,司洪昌.基于ARM和FPGA的智能小车监控系统[ J ],现代电子技术,2010年16期.

[7] 王晶,翁显耀,梁业宗.自动寻迹小车的传感器模块设计[ J ],现代电子技术,2008年22期.

[8] 张兢,王猛,李成勇,李雪梅,徐伟.基于红外光电传感器和语音识别技术的智能循迹小车设计[ J ],重庆理工大学学报(自然科学),2012年07期.

[9] 王建平,袁申,韩俊博,孟,刘军萍,郭新朋.红外遥控小汽车设计,机电技术,2011,3:-91.

[10] 郭天祥.51单片机c语言教程[M].电子工业出版社,2009.

致 谢

本设计已经告一段落。经过杨老师的耐心指导和我们不断的搜索努力本设计已经完全完成。在这段时间里,杨老师严谨的治学态度和热忱的工作作风令我们十分钦佩,他的指导使我受益匪浅。在此对老师表示真诚的感谢。

通过这次本设计,使我们深刻地认识到学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学四年以及研究生阶段的学习成果。虽然在这次设计中对于知识的运用和衔接还不够熟练。但是我们将在以后的工作和学习中继续努力、不断完善。本设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。

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

附录 1 遥控子系统电路原理图

附录 2 车载子系统电路原理图

文档

基于51单片机的智能车设计与实现

目录摘要IAbstractII1.引言11.1选题背景11.2设计目标12.设计方案22.1电机驱动方案22.2遥控控制方案22.3主控芯片的选择73.系统硬件构成83.1设计原理83.2系统电源电路93.3单片机最小系统电路93.3.1复位电路103.3.2震荡电路103.4系统显示电路113.5外围传感器电路113.6按键电路设计与实现124.系统软件设计134.1主程序控制流程134.2无线遥控控制实现144.3智能避障、智能循迹的实现144.4测速功能实现155.系统组装调试155.1
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top