带LCD显示功能的避障小车的设计毕业论文.docx
- 文档编号:3979011
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:55
- 大小:1.53MB
带LCD显示功能的避障小车的设计毕业论文.docx
《带LCD显示功能的避障小车的设计毕业论文.docx》由会员分享,可在线阅读,更多相关《带LCD显示功能的避障小车的设计毕业论文.docx(55页珍藏版)》请在冰豆网上搜索。
带LCD显示功能的避障小车的设计毕业论文
带LCD显示功能的避障小车的设计毕业论文
摘要I
AbstractI
第一章绪论1
1.1选题背景1
1.2课题主要研究的容2
1.3本课题的章节安排2
第二章硬件系统设计方案3
2.1总体结构方案3
2.2单片机控制模块方案3
2.3单片机引脚功能3
2.4光电传感器模块方案6
2.5摇头舵机模块方案6
2.6超声波测距模块方案7
2.7电机驱动方案8
2.8电源设计方案11
2.9显示模块方案11
第三章基于1602LCD液晶显示器的显示模块13
3.11602LCD液晶显示器的简介13
3.2字符型1602LCD液晶显示器的工作原理14
3.2.1字符型1602LCD液晶显示器的引脚图与功能14
3.2.2字符型1602LCD液晶显示器的部结构17
3.2.3字符型LCD控制指令19
第四章1602驱动程序的设计24
4.1判断液晶忙碌状态程序24
4.2指令与显示地址写入液晶模块程序24
4.3数据(字符的标准ASCII码)写入液晶模块程序25
4.4LCD的显示模式进行初始化程序26
第五章智能避障小车软件设计28
5.151小车的避障功能28
5.2主程序设计28
5.3子程序定时器初始化设计29
5.4子程序定时器1中断函数设计(舵机PWM脉冲产生程序)29
5.5子程序舵机测试设计30
5.6子程序外部中断0服务函数设计31
5.7子程序超声波测距及显示设计31
5.8子程序超声波测距并动作设计32
第六章功能调试34
6.1LCD1602液晶显示器的仿真调试34
6.2LCD1602液晶显示器的实物调试35
6.3整机调试36
第七章结论37
致谢38
参考资料39
附录一40
附录二50
第一章绪论
1.1选题背景
智能小车,也就是轮式机器人,最适合在那些人类无法工作的环境中工作,该技术可以应用于无人驾驶机动车,无人生产线,仓库,服务机器人等领域。
智能小车要想走向实用,必需拥有能胜任的运动系统、可靠的导航系统、精确的感知能力和具有既安全而又友好地与人一起工作的能力。
智能小车的智能指标为自主性、适应性和交互性。
适应性是指小车具有适应复杂工作环境的能力(主要通过学习),不但能识别和测量周围的物体,还有理解周围环境和所要执行任务的能力,并做出正确的判断及操作和移动等能力。
自主性是指小车能根据工作任务和周围环境情况,自己确定工作步骤和工作方式;交互性是智能产生的基础,交互包括小车与环境、小车与人及小车之间三种,主要涉及信息的获取、处理和理解。
智能作为现代社会的新产物,是以后的发展方向,他可以按照预先设定的模式在一个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或是更高的目标。
本设计主要体现多功能小车的智能模式,设计中的理论方案、分析方法及特色与创新点等可以为自动运输机器人、采矿勘探机器人、家用自动清洁机器人等自动半自动机器人的设计与普及有一定的参考意义。
同时小车可以作为玩具的发展对象,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值。
超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。
我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。
本智能小车系统最诱人的前景就是可用于未来的智能汽车上了,当驾驶员因疏忽或打瞌睡时这样的智能汽车的设计就能体现出它的作用。
如果汽车偏离车道或距障碍物小于安全距离时,汽车就会发出警报,提醒驾驶员注意,如果驾驶员没有及时作出反应,汽车就会自动减速或停靠于路边。
这样的小车还可以用于月球探测等的无人探月车,帮助我们传达月球上更多的信息,让我们更加的了解月球,为将来登月做好充分准备。
这样的小车在科学考察探测车上也有广阔的应用前景,在科学考察中,有很多危险且人们无法涉足的地方,这时,智能科学考察车就能够派上用场,在它上面装上摄像机,代替人们进行许多无法进行的工作。
因此为了使智能小车工作在最佳状态,进一步研究及完善其速度和方向及显示的控制是非常有必要的。
1.2课题主要研究的容
本设计题目为智能避障小车设计,主要研究小车的智能避障功能,当小车遇到障碍物时,并且距离小于等于15cm时,小车会自动做出一系列相应的避障措施,并将其距离随时间自动变化地显示在1602LCD液晶显示屏上,让人们能正确判断小车的动作是否准确无误。
本课题还介绍了智能避障小车的发展与意义,1602LCD液晶显示器的仿真部分,软件部分的编程(包括主程序和1602LCD头文件程序),主程序和1602LCD头文件程序流程图的绘制,智能避障硬件总原理图Protues99的测绘和智能避障功能的总调试。
1.3本课题的章节安排
第1章主要介绍了智能避障小车的发展与意义
第2章介绍了智能避障小车的硬件系统设计方案
第3章基于1602LCD液晶显示器的显示模块
第4章1602LCD驱动程序的设计
第5章智能避障小车的软件设计部分
第6章智能避障功能的调试
第7章对本设计课题的结论
第二章硬件系统设计方案
2.1总体结构方案
本设计主要是进行距离的测量和报警,设计中涉及到的容较多,主要是将超声波测距模块、红外光电传感器模块、摇头舵机模块、单片机控制模块、电源模块、电机驱动模块、1602LCD显示模块这几个模块结合起来。
而本设计的核心是超声波测距模块,其他相关模块都是在测距的基础上拓展起来的,测距模块是利用超声波传感器,之后选择合适单片机芯片,以下就是从相关方面来论述的。
简要硬件系统框图如图2-1:
图2-1硬件系统框图
2.2单片机控制模块方案
一般在系统的设计当中,能否完成设计任务最重要的就在于系统的核心器件是否选择合适,而单片机更是是系统控制的核心,所以对单片机的选择更是异常重要。
如果选择了一个合适的单片机不仅可以最大地简化系统的操作,而且其功能可能是最好的,可靠性也比较高,对整个系统来说更方便。
目前,市面上的单片机的种类繁多,并且他们在功能方面也是各自有各自的特点。
51系列单片机它在指令系统、硬件结构和片资源等方面与标准的52系列的单片机可以完全的兼容。
52系列的单片机执行速率快,功耗低,在系统、在应用可编程,不占用用户的资源。
根据本系统设计的实际要求,选择STC89C52RC单片机做为本设计的单片机使用,它是由STC公司生产的高性能、低功耗的CMOS8位单片机。
STC89C52RC单片机具有以下几个性能特点:
4k字节的闪存片程序存储器,128字节的数据存储器,32个外部输入和输出口,2个全双工串行通信口,看门狗电路,5个中断源,2个16位可编程定时计数器,片震荡和时钟电路且全静态工作并由低功耗的闲置和掉电模式。
2.3单片机引脚功能
单片机的引脚功能图如图2-2所示。
图2-2单片机引脚图
(1)电源引脚
Vcc(40脚):
正电源的引脚,工作电压是5V。
GND(20脚):
接地端。
(2)时钟电路的引脚XTAL1和XTAL2
为了产生时钟信号,在89C51单片机的芯片部已经设置了一个反相放大器,其中XTAL1端口就是片反相放大器的输入端,XTAL2端则是片振荡器反相放大器的输出端。
单片机使用的工作方式是自激振荡的方式,XTAL1和XTAL2外接的是12MHz的石英晶振,使部振荡器按照石英晶振的频率频率进行振荡,从而就可以产生时钟信号。
时钟信号电路如图2-2所示。
图2-3时钟信号电路
(3)复位RST(9脚)
当振荡器运行时,只要有有两个机器周期即24个振荡周期以上的高电平在这个引脚出现时,那么就将会使单片机复位,如果将这个引脚保持高电平,那么51单片机芯片就会循环不断地进行复位。
复位后的P0口至P3口均置于高电平,这时程序计数器和特殊功能寄存器将全部清零。
本课题设计的单片机复位电路如图2-3所示。
图2-4单片机复位电路图
(4)输入输出口(I/O口)引脚
P0口是一个三态的双向口,既可以作为数据和地址的分时复用口,又可以作为通用输入输出口。
P0口在有外部扩展存储器时将会被作为地址/数据总线口,此时P0口就是一个真正的双向口;而在没有外部扩展存储器时,P0口也可以作为通用的I/O接口使用,但此时只是一个准双向口;另外,P0口的输出级具有驱动8个LSTTL负载的能力即输出电流不小于800uA。
P1口是一个带部上拉电阻的8位双向I/O口,而P1口只有通用I/O接口一种功能,而且P1口能驱动4个LSTTL负载;在使用时通常不需要外接上拉电阻就能够直接驱动发光二极管;在端口置1时,其部上拉电阻将端口拉到高电平,作输入端口用。
对于输出功能,在单片机工作的时候,可以通过用程序指令控制单片机引脚输出高电平或低电平。
例如:
指令CLR是清零的意思,CLRP1.0的意思就是让单片机的P1.0端口输出低电平;而指令SETB是置1的意思,SETBP1.0的意思就是让单片机P1.0端口输出高电平。
P2口是一个带部上拉电阻的8位双向I/O口,而且P2口具有驱动4个LSTTL负载的能力。
P2端口置1时,部上拉电阻将端口的电位拉到高电平,作为输入口使用;在对部的Flash程序存储器编程时,P2口接收高8位地址和控制信息,而在访问外部程序和16位外部数据存储器时,P2口就送出高8位地址。
在访问8位地址的外部数据存储器时,P2引脚上的容在此期间不会改变。
P3口也是一个带部上拉电阻的8位双向I/O口,P3口能驱动4个LSTTL负载,这8个引脚还用于专门的第二功能。
P3口作为通用I/O口接口时,第二功能输出线为高电平。
P3口置1时,部上拉电阻将端口电位拉到高电平,作输入口使用;在对部Flash程序存储器编程时,此端接控制信息。
(5)/EA/Vpp(31脚)
/EA为片外程序存储器访选用端。
当该引脚访问片外程序存储器时,应该输入的是低电平,要使89C51只访问片外程序存储器,这时该引脚必须保持低电平;而在对Flash存储器编程时,用于施加Vpp编程电压。
2.4光电传感器模块方案
光电传感器是采用光电元件作为检测元件的传感器。
它首先把被测量的变化转换成光信号的变化,然后借助光电元件进一步将光信号转换成电信号。
光电传感器一般由光源、光学通路和光电元件三部分组成。
光电检测方法具有精度高、反应快、非接触等优点,而且可测参数多,传感器的结构简单,形式灵活多样,因此,光电式传感器在检测和控制中应用非常广泛。
光电传感器是各种光电检测系统中实现光电转换的关键元件,它是把光信号(红外、可见及紫外光辐射)转变成为电信号的器件。
光电传感器的实物图如图2-5所示:
图2-5光电传感器
光电式传感器是以光电器件作为转换元件的传感器。
它可用于检测直接引起光量变化的非电量,如光强、光照度、辐射测温、气体成分分析等;也可用来检测能转换成光量变化的其他非电量,如零件直径、表面粗糙度、应变、位移、振动、速度、加速度,以及物体的形状、工作状态的识别等。
光电式传感器具有非接触、响应快、性能可靠等特点,因此在工业自动化装置和机器人中获得广泛应用。
近年来,新的光电器件不断涌现,特别是CCD图像传感器的诞生,为光电传感器的进一步应用开创了新的一页。
2.5摇头舵机模块方案
标准的舵机有3条导线,分别是:
电源线、地线、PWM控制线。
以辉盛GS90型舵机为例。
辉盛GS90型舵机实物图如图2-6所示:
图2-6辉盛GS90型的舵机实物图
电源线和地线用于提供舵机部的直流电机和控制线路所需的能源.电压通常介于4~6V,一般取5V。
注意,给舵机供电电源应能提供足够的功率。
控制线的输入是一个宽度可调的周期性方波脉冲信号,方波脉冲信号的周期为20ms(即频率为50Hz)。
当方波的脉冲宽度改变时,舵机转轴的角度发生改变,角度变化与脉冲宽度的变化成正比。
辉盛GS90型舵机的输出轴转角与输入信号的脉冲宽度之间的关系可用图2-7来表示。
图2-7舵机的输出轴转角与输入信号的脉冲宽度之间的关系图
2.6超声波测距模块方案
超声波是一种超出人类听觉极限的声波即其振动频率高于20kHz的机械波。
超声波传感器在工作的时候就是将电压和超声波之间的互相转换,当超声波传感器发射超声波时,发射超声波的探头将电压转化的超声波发射出去,当接收超声波时,超声波接收探头将超声波转化的电压回送到单片机控制芯片。
超声波具有振动频率高、波长短、绕射现象小而且方向性好还能够为反射线定向传播等优点,而且超声波传感器的能量消耗缓慢有利于测距。
在中、长距离测量时,超声波传感器的精度和方向性都要大大优于红外线传感器,但价格也稍贵。
从安全性,成本、方向性等方面综合考虑,超声波传感器更适合设计要求。
超声波测距实物图如图2-8所示:
图2-8超声波测距实物图
通过超声波发射装置发出超声波,根据接收器接到超声波时的时间差就可以知道距离了,这与雷达测距原理相似。
超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:
s=340t/2)
2.7电机驱动方案
L293D驱动模块,采用STST公司原装全新的L293D芯片,采用SMT工艺稳定性高,采用高质量铝电解电容,使电路稳定工作。
可以直接驱动4路3-16V直流电机,并提供了5V输出接口(输入最低只要6V),可以给5V单片机电路系统供电(低纹波系数),支持支持3.3VMCUARM控制,可以方便的控制直流电机速度和方向,也可以控制2相步进电机,5线4相步进电机。
是智能小车必备利器利器。
L293D部原理图如图2-9所示:
图2-9L293D部原理图
L293D参数如下:
1.驱动芯片:
L293D双H桥直流电机驱动芯片(两片)
2.驱动部分端子供电围Vs:
+5V~16V;如需要板取电,则供电围Vs:
+6V~+16V
3.驱动部分峰值电流Io:
1A
4.逻辑部分工作电流围:
0~36mA
5.控制信号输入电压围(IN1IN2IN3IN4IN5IN6IN7IN8):
低电平:
-0.3V≤Vin≤1.5V
高电平:
2.3V≤Vin≤Vss
6.使能信号输入电压围(EN1EN2EN3EN4):
低电平:
-0.3≤Vin≤1.5V(控制信号无效)
高电平:
2.3V≤Vin≤Vss(控制信号有效)
7.存储温度:
-25℃~+130℃
本模块可以与51,AVR,PIC,ARM等控制器连接,MCU_GNDMCU_+5V是指可以用驱动输出+5V的电源给控制系统供电。
当然,也可以不用,当不用的时候悬空。
但它们一定要共地。
即MCU_GND要与驱动模块GND相连((这点至关重要)。
IO是指MCU的普通的输入输出接口。
这里特别指出的是EN1EN2这里我们已经用跳线帽直接插到5V了,直接使能,如果有PWM调速可以去掉跳线帽直接从这这里输入PWM信号,调节电机速度.
以下举例:
控制逻辑。
这里一路其它的,其它三路类推
表2-1控制逻辑表
电机
IN1
IN2
EN1
不转
0
0
0
不转
0
1
0
不转
1
0
0
不转
1
1
0
不转
0
0
1
正转
0
1
1
反转
1
0
1
不转
1
1
1
L293D有过电流保护功能,当出现电机卡死时,可以保护电路和电机等。
所以我们选择L293D。
电机驱动原理图如图2-10所示:
图2-10电机驱动原理图
2.8电源设计方案
采用干电池进行供电采用六节1.2V干电池降压至7.2V后给单片机及其他电路模块单元供电,干电池用电池盒封装,体积和重量较小,同时玩具车底座可以安装六节干电池,正好可为单片机及其他单元供电。
在稳压方面,起始时考虑使用7805芯片对7.2V的电池电压进行降压稳压。
但考虑到这样使得7805芯片消耗大量能量,降低电池寿命;我们将7.2V电池电压接一个二极管降压后直接给单片机及其他逻辑单元供电。
但电机电源必须做稳压处理。
考虑到电池在使用过程中电压会下降,我们将设计简单的RC缓冲电路对急需供电的情况进行补压。
电源原理图如图2-11所示:
图2-11电源原理图
2.9显示模块方案
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。
1602LCD是指显示的容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
1602LCD的特性是+3.3V电压,对比度可调,含复位电路,提供各种控制命令,如:
清屏、字符闪烁、光标闪烁、显示移位等多种功能。
有80字节显示数据存储器DDRAM,建有192个5X7点阵的字型的字符发生器CGROM,8个可由用户自定义的5X7的字符发生器CGRAM。
低压微功耗,外观小巧精致,厚度只有6.5~8mm,被动显示型(无眩光,不刺激人眼,不会引起眼睛疲劳),显示信息量大(因为像素可以做得很小),易于彩色化(在色谱上可以非常准确的复现),无电磁辐射(对人体安全,利于信息),长寿命(这种器件几乎没有什么劣化问题,因此寿命极长,但是液晶背光寿命有限,不过背光部分可以更换)。
微功耗、体积小、显示容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。
第三章基于1602LCD液晶显示器的显示模块
3.11602LCD液晶显示器的简介
LCD液晶显示器是LiquidCrystalDisplay的简称,LCD的构造是在两片平行的玻璃基板当中放置液晶盒,下基板玻璃上设置TFT(薄膜晶体管),上基板玻璃上设置彩色滤光片,通过TFT上的信号与电压改变来控制液晶分子的转动方向,从而达到控制每个像素点偏振光出射与否而达到显示目的。
现在LCD已经替代CRT成为主流,价格也已经下降了很多,并已充分的普及。
LCD(lifecycledesign)
液晶显示器按照控制方式不同可分为被动矩阵式LCD及主动矩阵式LCD两种。
段码式显示和点阵式显示。
段码是最早最普通的显示方式,比如计算器,电子表这些。
自从有了MP3,就开发了点阵式,如MP3,手机屏,数码相框这些高档消费品。
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。
1602LCD是指显示的容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
液晶显示器各种图形的显示原理
1)线段的显示:
点阵图形式液晶由M×N个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共16×8=128个点组成,屏上64×16个显示单元与显示RAM区1024字节相对应,每一字节的容和显示屏上相应位置的亮暗对应。
例如屏的第一行的亮暗由RAM区的000H——00FH的16字节的容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。
这就是LCD显示的基本原理。
2)字符的显示 :
用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。
这样一来就组成某个字符。
但由于带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
3)汉字的显示:
汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、5……右边为2、4、6……根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节……直到32B显示完就可以LCD上得到一个完整汉字
3.2字符型1602LCD液晶显示器的工作原理
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
下面以太阳人电子的1602字符型液晶显示器为例,介绍其用法。
一般1602字符型液晶显示器实物如图
图3-11602字符型液晶显示器实物如图
3.2.1字符型1602LCD液晶显示器的引脚图与功能
1602引脚图如下:
图3-21602引脚图
表3-1引脚接口说明表
引脚号
引脚号
电平
输入/输出
作用
1
Vss
电源地
2
Scc
电源(+5V)
3
Vee
对比调整电压
4
RS
0/1
输入
0=输入指令
1=输入数据
5
R/W
0/1
输入
0=向LCD输入指令或数据
1=从LCD读取信息
6
E
1,10
输入
使能信号,1时读取信息
10(下降沿)执行指令
7
DB0
0/1
输入/输出
数据总线line0(最低位)
8
DB1
0/1
输入/输出
数据总线line1
9
DB2
0/1
输入/输出
数据总线line2
10
DB3
0/1
输入/输出
数据总线line3
11
DB4
0/1
输入/输出
数据总线line4
12
DB5
0/1
输入/输出
数据总线line5
13
DB6
0/1
输入/输出
数据总线line6
14
DB7
0/1
输入/输出
数据总线line7(最高位)
15
A
Vcc
LCD背光电源正极
16
K
接地
LCD背光电源负极
1602采用标准的16脚接口,其中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LCD 显示 功能 小车 设计 毕业论文