摘要
随着汽车工业的迅猛发展,倒车系统成为人们日常行车安全的一个重要组成部分。基于单片机的智能倒车系统就其功能实用、体积小、价格便宜适合大规模批量生产等优点被很多汽车辅助设备生产厂家所青睐。在本设计中首先介绍智能倒车系统的基本原理,并对几种测距方法进行分析,选择了更具性价比、更简单实用的红外测距法,然后对重点模块进行了详细描述,而整个系统最重要的测距模块的调试在本文最后进行了阐述。
关键词:智能倒车系统;红外测距法;单片机
Microcontroller Based Smart Parking System
Abstract
With the rapid development of automobile industry , reversing the system has become an important part of people's daily driving safety . Microcontroller - based smart parking system functional , small , cheap and suitable for mass production , etc. favored many automotive auxiliary equipment manufacturer . In this design, first introduced the basic principles of smart parking system , and several ranging methods of analysis, selected a more cost-effective , more simple and practical infrared distance method , then a detailed description of the key module , and the entire system debugging of the most important distance measuring module at the end of this article are described.
Key Words: smart parking system ; Infrared distance method ; Microcontroller
目录
前言...........................................................................................................................................4
1.1设计思路.....................................................................................................................5 1.2器材和方案的选取.....................................................................................................5
1.2.1 电机驱动电路选取.........................................................................................5 1.2.2 显示模块选取.................................................................................................6 1.2.3主控芯片选取..................................................................................................6 1.2.4障碍物检测方案选取......................................................................................7
2.主要芯片介绍........................................................................................................................7
2.1 STC89C52RC ................................................................................................................7 3.系统总体框架设计..............................................................................................................10
3.1系统框图介绍...........................................................................................................10 3.2系统功能介绍...........................................................................................................10 4.系统硬件电路设计..............................................................................................................11
4.1单片机最小系统.......................................................................................................11 4.2显示模块...................................................................................................................11 4.3输入模块...................................................................................................................12 4.4驱动模块...................................................................................................................12 4.5红外检测模块...........................................................................................................13 5.系统程序设计......................................................................................................................15 6.系统整体调试......................................................................................................................16 7.结束语..................................................................................................................................17 参考文献.................................................................................................................................18
前言
上世纪90年代,电子产品开始应用于汽车生产领域,汽车电子产品出现在汽车发展的历史舞台。所谓汽车电子产品生产是指电子信息产业与汽车制造业融合后的新兴产业。目前国际汽车领域70%的技术革新来自汽车电子产品,电子信息技术的发展对于汽车领域的影响可见一斑。伴着人们对日常行车操纵舒适感和娱乐的要求不断提升的同时,行车安全也被人们渐渐重视起来。进入21世纪,随着经济的迅猛增长和交通路况的不断完善,私家车的数量不断增加,随之而来的交通事故也日益频繁。据调查统计,15%的交通事故是因为汽车倒车系统不良引发。因此,增强汽车倒车系统的智能性,对于提高行车安全是十分重要的。
与此同时随着我国汽车工业的飞速发展,智能倒车作为一种安全类汽车电子产品已广泛应用于各种类型、各种档次的汽车,形成了我国的一个新兴行业。经过多年来的发展,我国智能倒车系统已经过了多次的技术改良,最先进是基于单片机的智能倒车系统。根据汽车倒车系统的发展及国内汽车市场的实际情况,把单片机硬件及软件编程技术应用于倒车系统的设计原理中,从而设计出一种基于单片机的低成本、高性能适用于我国普通汽车的智能倒车系统。
测距系统是倒车系统最重要的一个组成部分,传统的测距方法有激光测距、超声波测距、红外线测距等。虽然激光测距探测距离相对较大,但其受天气因素的影响较严重,超声波测距和红外线测距原理相似,但超声波系统结构相对较为复杂,不适合大规模生产应用,特别是红外线测距系统可在夜间准确测距且不易被仪器探测发现。综上所诉,又基于本设计低成本、结构相对简单适合大规模生产及应用的目的,最后采用红外线测距系统。
本设计是以单片机为主控芯片。倒车时通过红外模块检测障碍物并把信号传送到单片机,单片机控制驱动模块驱动蜂鸣器达到报警的目的,同时驱动模块驱动电机停止转动。在此过程中显示模块一直在向驾驶者显示倒车系统的电机转动、停止状态,以达到智能倒车的目的。
1.方案设计与器材选取
1.1设计思路
本设计最终要实现倒车系统的智能控制,经分析要想达到最终要求需实现以下三点:
1) 单片机控制电机转动和停止; 2) 利用显示模块显示转动和停止状态; 3) 检测车后障碍物并报警。
1.2器材和方案的选取
1.2.1 电机驱动电路选取
随着电子行业的发展,出现了具有各种功能的器件,这些器件往往是为了完成某项特定功能而制作的。由于电气参数往往比较特殊,这就给器件之间连接带来了麻烦,为了解决这一问题,出现了接口技术这门学科用来研究器件间的接口电路。本设计同样遇到了这样的问题,主控芯片不能够直接与电机相连来控制电机,所以需要一个电机驱动电路来作为主控芯片控制电机的桥梁。常用的电机驱动电路有:分立元件构成的电机驱动电路和集成电机驱动电路。
(1)分立元件构成的电机驱动电路
众所周知,分立元件构成的电路使用起来十分灵活,几乎可适应各种场合。但其电路通常复杂、不易调试,所以分立元件电路及其应用通常与设计者的能力密切相关。但对于应用于本设计而言,使用分立元件搭建电路相对比较非常简单。
(2)集成电机驱动电路
集成电机驱动电路主要芯片是集成电机驱动器即DRV8x 器件。目前市面上常用的集成电机驱动器有L298,其使用方便可驱动两个电机正反转,但L298价格昂贵。
由于L298价格昂贵,因此本设计选取分立元件组成的电机驱动电路驱动电机。
1.2.2 显示模块选取
目前市面上出现了各种各样的显示模块,常用的有数码管和液晶显示器,数码管通常用来显示数字,液晶显示器通常用来显示字符,随着技术的发展液晶显示器的价格越来越低且显示效果良好,在今后的发展中必将成为主流的显示设备,根据本设计的要求,必须选择能够显示字符的液晶显示器。
如今液晶显示技术已经十分成熟,具有以下几个特点: 1) 使用方便; 2) 显示效果良好; 3) 功率低; 4) 价格便宜; 5) 接口电路简单; 6) 使用寿命长。
综合考虑本设计选取常用的LCD1602作为显示设备。
1.2.3主控芯片选取
随着集成电路的发展,控制芯片迅速发展,自从第一个单片机制作成功,随后的几十年单片机发展迅速,几乎成为了控制芯片的代名词,但随着大型应用的崛起,出现了专用处理器,从此单片机专注于低端应用,专用处理器专注于高端应用,单片机与专用处理器的发展虽然分道扬镳了,但是它们并不能互相替代,在复杂的应用中反而需要互相协作。
单片机属于集成电路芯片,它采用超大规模集成电路技术把CPU、 RAM、ROM、多种I/O口与中断系统、定时计时器等集成在一块硅片上,构成了一个小而完整的计算机系统。最早的单片机是4位单片机和8位单片机。随着应用的需求出现了16位的单片机,但是却未得到广泛的应用,不久便出现了32位单片机,目前市场上仍以8为单片机为主流,32位单片机大都应用于高端设备。
单片机具有以下特点: 1) 单片机的集成度比较高;
2) 系统结构简单易懂,使用起来非常方便,能实现模块化; 3) 单片机可靠性高,可工作到10~10小时无故障; 4) 处理系统功能较强,速度也非常快;
5) 电压要求较低,功耗也较小,是一种利于大规模生产和便于携带的产品;
6
7
6) 控制功能强。
单片机广泛应用于各种工业、航天、医疗、金融等行业的智能化控制领域,本设计同样使用单片机来作为主控芯片,考虑到本设计的应用需求性及易用性,最终选用STC89C52RC单片机作为主控芯片。
1.2.4障碍物的检测方案选取
现今应用最广泛的测距方法有: 1) 超声波测距 2) 激光测距 3) 摄像头测距 4) 电磁测距 5) 红外测距
其中超声波测距、激光测距和摄像头测距效果都很不错,但其成本都偏高,电路也偏复杂。电磁测距需在障碍物上铺设辅助电路否则不能检测,显然不符合本设计要求。红外测距效果不错,成本低,电路相对简单,各项均满足本设计,因此选取红外测距作为本设计的障碍物检测方案。
2.主要芯片介绍
2.1 STC89C52RC
(1)STC89C52RC单片机简介
STC89C52RC是一种功耗低、性能强的CMOS8位微型控制器,其内部具有8K的系统可编程Flash存储器。在单芯片方面,具有灵巧的8 位CPU 和能在系统上编程的Flash,最高运作频率35Mhz,6T/12T可选。这些特点都使得STC89C52RC单片机为众多嵌入式控制应用系统提供了高灵活度、超级有效的解决问题的方案。
(2) STC89C52RC单片机优点
STC89系列单片机大都拥有在系统可编程特性,系统可编程的好处是:免去了购买通用编程器的麻烦,STC89系列单片机在用户系统上即可实现下载/ 烧录用户目标程序,而无须将单片机从完整的产品上单独的分离下来,再用通用编程
器将目标程序代码烧录到单片机内部。由于可以将目标程序直接下载进单片机直接查看运行结果,故也可以不使用仿真器。
STC89C52RC单片机是台湾宏晶公司生产的51系列单片机,性价比极高,与所有的51系列单片机指令兼容,代码无缝移植,给开发带来便利。
(3) STC89C52RC单片机管脚介绍
图1 STC89C52RC单片机管脚图
管脚图如图1所示: ① 主电源引脚(2根)
VCC(Pin40):电源的输入,接+5V电源 GND(Pin20):接地线 ②外接晶振引脚(2根)
XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内振荡电路的输出端 ③控制引脚(4根)
RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号 PSEN(Pin29):外部存储器读选通信号
EA/VPP(Pin31):程序存储器的内外部选通,接低电平后从外部程序存储器上读指令,如果接的是高电平,就从内部程序存储器上读指令。
④可编程输入/输出引脚(32根)
STC89C52RC单片机有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 (4) STC89C52RC单片机功能介绍 1) 8K可反复擦写Flash ROM 2) 32个双向I/O口 3) 256x8bit内部RAM
4) 3个16位可编程的定时/计数器中断 5) 时钟频率0-24MHz 6) 2个串行中断
7) 可编程的UART串行通道 8) 2个外部中断源 9) 共6个中断源
10) 较小功耗空闲模式和断电模式 11) 软件设置睡眠和唤醒功能
3.系统总体框架设计
3.1系统框图介绍
电源一 电源二 红外检测模块 显示模块 输入设备 单片机 电机驱动电路 蜂鸣器驱动电路 电机 蜂鸣器 图2 系统框图
1.选用独立的物理按键作为输入设备,传送转动、停止的命令;
2.把输入的命令信号传给STC89C52RC单片机通过程序控制电机驱动模块,进而控制电机的转动、停止,同时控制蜂鸣器鸣叫;
3.用STC89C52RC控制LCD1602,LCD1602显示电机转动和停止状态。 4.红外检测模块检测障碍物,遇到障碍物时发送信号给单片机。
3.2系统功能介绍
本系统功能如下:
1) 按下倒车按键,单片机控制驱动电路驱动电机工作,同时控制液晶LCD1602
显示RUN提示电机转动;
2) 按下停止按键,单片机控制驱动电路不驱动电机工作,同时控制液晶LCD1602
显示显示STOP提示停止;
3) 在1)倒车过程中,当红外模块检测到障碍物时发送低电平信号给单片机,单
片机接收到此信号后控制驱动电路不驱动电机工作并驱动蜂鸣器报警,同时控制液晶LCD1602显示WARNING提示停止,此时需再次按下停止键才能解除报警。
4.系统硬件电路设计
4.1单片机的最小系统
单片机最小系统是本模块最核心的控制部分,晶振频率取11.0592MHz,电容取22pF,该系统由单片机、时钟电路和复位电路组成。如图3所示。
图3 单片机最小系统
4.2显示模块
该模块使用LCD1602作为显示设备,其接口使用TTL电平,与STC89C52RC一致可直接相连进行数据传输。其连接电路如图4所示。
图4 LCD1602连接电路
其中D0到D7口是数据口,可以与单片机P口直接相连且能并行传输数据,E是使能端,RW是读写控制端,RS是指令/数据选择端,电位器的作用是可调节
显示的对比度。
4.3输入模块
本模块是系统的输入部分,电路结构简单如图5所示,按键一端接地,另外一端与单片机P口相连,按键未按下时单片机P口默认为高电平,当按键按下时P口直接与地相连被拉为低电平,单片机接收到低电平信号时作出响应。
图5 按键电路
但是,在实际应用中,物理按键按下和弹起均存在抖动现象如图6所示,往往会造成误判,为此需要进行消抖,常用的消抖方法有:硬件消抖法和软件消抖
法。
图6 按键按下和弹起瞬间波形图
硬件消抖需使用专门的器件和电路来辅助按键工作,电路稍显复杂,因此本设计使用软件消抖方式,软件消抖是利用抖动的短暂性来消除误判的,当按键按下时程序检测到信号,此时程序操作并不立即响应,而是延时一段很小的时间后再次检测,如果按键按下的信号依然存在则立即执行响应操作,如果按键按下的信号不存在说明是干扰信号则放弃响应。
4.4驱动模块
本模块是整个系统的驱动部分,其主要作用是解决单片机与外围器件接口电平不一致带来的问题,详细电路如图7所示:
图7分立元件构成的电机驱动电路
图中电阻R1起限流作用,二极管D1用来消耗继电器断电瞬间产生的反向电动势,防止击穿三极管Q1。
其中PIN端连接控制信号,电路工作原理如下:
1) 当PIN端输入高电平时,Q1截止,继电器不工作,此时导线1与导线3
相连,电机未通电不转动;
2) 当PIN端输入低电平时,Q1导通,继电器正常工作,此时导线1与导线
2相连,电机通电转动。
4.5红外检测模块
红外发射电路 红外 红外接收电路 图8 红外检测模块框图
该模块作为系统的红外检测电路由两部分组成:红外发射电路和红外接收电路。如图8所示。本模块利用红外遇到障碍物会反射的原理实现障碍物的检测。
1. 红外发射电路
图9 红外发射电路
该电路(如图9所示)是一个简单的串联电路,R2起限流作用,红外发射头D2正常工作发出红外光。
2. 红外接收电路
图10 红外接收电路
上图所示电路是一个以电压比较器LM339为核心的典型的电压比较电路,LM339同相输入端输入基准比较电压Uf,基准电压Uf大小可以通过调节RV1改变,LM339反相输入端输入电压等于红外接收头D1两端电压,R1起到限流的作用,整个电路工作原理如下:
1) 当没有接收到障碍物反射回来的红外光时,红外接头D1几乎不导通,
两端电压接近电源电压,其电压大于LM339同相输入端输入基准比较电压Uf,LM339输出低电平;
2) 当接收到障碍物反射回来的红外光时,红外接头D1导通,两端电压会
很低,其电压值小于LM339同相输入端输入基准比较电压Uf,LM339输出高电平。
另外,值得注意的是实际应用中障碍物一般并非突然出现,障碍物离红外检测模块之间的距离总有一个渐近的过程,随着距离的靠近红外接收头两端的电压必然越来越小,因此可以通过调节基准比较电压来控制检测距离。
5.系统程序设计
图11系统主程序流程框图
如上图所示,系统插上电源通电后,单片机对显示器LCD1602进行初始化,LCD1602显示NULL。按下开始按键,电机开始转动、红外检测系统开始检测障碍物,LCD1602显示RUN,这时按下停止按键,电机停止转动、红外检测系统停止检测,LCD1602显示STOP。当红外检测系统检测到障碍物时蜂鸣器开始鸣叫、电机停止转动,LCD1602显示WARNING。当按下停止按键,红外检测系统停止检测,并且蜂鸣器停止鸣叫。
6.系统整体调试
首先,检查各个元器件,具体大致有电源线的接口、各线路(包括地线)是否连接正确、电路板整体设计是否合理以及焊接是否牢固安全等等。然后检查系统的原理是否正确合理和程序是否正确。最后,将所有软硬件组织起来进行系统调试。
通过对系统局部及整体的调试,最后确定的一些元器件的具体数据如下:电源为直流+5V,单片机时钟电路晶振频率为11.0592MHZ,起振电容为22PF,复位电路的保护电阻为200Ω。在整个调试过程中,最重要的要数红外检测模块的调试。根据红外光检测的稳定情况来最终确定LM339同相输入端输入基准比较电压Uf为1.03V,红外可检测距离为0.5m。另外,由于红外光的波长特性易被黑色障碍物吸收,所以如果障碍物是纯黑的,红外检测系统失效。
7.结束语
在本毕业设计的制作过程中,我学到了很多关于单片机的基础知识,从中受益良多。我了解到红外测距系统的原理,也学会了单片机设计电路中程序的编写和下载以及对一块电路板的设计、布线焊接、调试、改进等整个过程。当然,在此过程中也遇到了不少问题。比如在电路整体调试时,电机与显示器共用一个电源,由于电机电阻较小分得的电流就比较大,导致显示器显示模糊。在找到原因之后,我用了两个电源解决问题。诚然由于经验和知识的不足这种解决方法不够高明,这也激发我更好好的学习科学知识和进行科学实践。
参考文献
[1]邱关源.电路[M].高等教育出版社,1999(4):5-256.
[2]康华光.电子技术基础数字部分[M].高等教育出版社,2006(5):5-187. [3]康华光.电子技术基础模拟部分[M].高等教育出版社,2006(5):5-206. [4]张毅刚.新编MCS-51单片机应用设计[M].哈尔滨工业大学出版社,2003(1):3-98.
[5]张迎新.单片机(微控制器)原理及其应用[M].高等教育出版社,2009(1):1-65.
[6]郭天祥.新概念51单片机C语言教程[M].电子工业出版社,2009(1):1-55. [7]谭浩强.C程序设计[M].清华大学出版社,2005(3):4-139.
[8]金湘亮.红外线测距系统的建立及其在汽车防撞系统中的应用[N].红外技术,2001:1-3.
[9]姜威.实用电子系统设计基础[M].北京理工大学出版社,2002(1):5-48. [10]张庆双.报警器、警示器应用电路集萃[M].机械工业出版社.2005(5):6-11.
因篇幅问题不能全部显示,请点此查看更多更全内容