基于单片机的自行车里程表设计Word文档下载推荐.docx
《基于单片机的自行车里程表设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于单片机的自行车里程表设计Word文档下载推荐.docx(29页珍藏版)》请在冰豆网上搜索。
在20世纪,自行车在中国获得了前所未有的普及和发展。
从某种意义上来说,中国是一个自行车的王国。
每天清晨和落日时分,滚滚车流在中国的城市中碾动,这是最为壮观的一道风景,这是一条现代中国流动的长城。
因此,人们希望自行车的功用更强大,能给人们带来更多的方便。
自行车里程表作为自行车的一大辅助工具也正是随着这个要求而迅速发展的,其功能也逐渐从单一的里程显示发展到速度、时间显示,甚至有的还具有测量骑车人的心跳、显示骑车人热量消耗等功能。
本设计采用了MCS-51系列单片机设计一种体积小、操作简单的便携式自行车里程表,它能自动地显示当前自行车行走的距离及运行的速度。
单片微型计算机自1976年问世以来发展非常迅速,现在已成为微型计算机一个很重要的分支,在现实生活中应用越来越广泛,已经对人类产生了巨大的影响,尤其是美国Intel公司的MCS—51系列单片机,由于其集成度高、处理功能强、性能价格比高、可靠性高、系统结构简单,可以灵活的与其他芯片组成众多的测量电路用于速度、温度、深度、高度、湿度、光强等方面的测量和研究等特点,在我国现代化生活、生产中已经得到了广泛的应用,如在工业检测控制、仪器仪表、电子工业、机电一体化等众多领域取得了令人瞩目的成果。
本设计利用MCS—51系列单片机扩展方便、可靠性能高、处理功能强、速度高等特点,实现对自行车里程和速度的测量。
1.2课题的主要任务及内容
本课题主要任务是利用霍尔元件、单片机等部件设计一个可用LED数码管实时显示里程和速度的自行车的速度里程表。
本文主要介绍了自行车里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。
本文首先扼要对该课题的任务进行方案论证,包括硬件方案和软件方案的设计;
继而具体介绍了自行车的速度里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;
然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;
最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行了系统的总结。
具体的硬件电路包括AT89C52单片机的外围电路以及LED显示电路等。
软件设计包括:
芯片的初始化程序、定时中断采样子程序、显示子程序等,软件采用汇编语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。
第2章自行车里程表总体方案设计
2.1任务分析与实现
本次毕业设计的题目是:
自行车里程表设计
其设计的任务是:
以通用MCS-51单片机为处理核心,用传感器将车轮的转数转换为电脉冲,进行处理后送入单片机。
里程及速度的测量,是经过MCS-51的定时/计数器测出总的脉冲数和每转一圈的时间,再经过一系列的计算得出的,其结果通过显示器显示出来。
本系统总体思路如下:
里程及速度传感器采用霍尔元件,用一个霍尔芯片、一个小磁铁,霍尔芯片紧贴齿轮,磁铁放在芯片后面。
齿轮转动一周霍尔元件与小磁铁靠近一次,这样可以改变通过霍尔芯片的磁通量,霍尔芯片可以输出类似正弦的波形,用运放放大波形,后面接一级比较器,把正弦波转换为方波,方波的频率和齿轮的转速成正比。
自行车里程的测量是通过霍尔元件输出端的电压发生变化产生脉冲,通过计数器,根据脉冲数计算里程。
自行车速度的测量是通过定时器测出车轮转一周所用的时间t,车轮周长L除以时间t就是自行车的速度。
要求达到的各项指标及实现方法如下:
1.利用霍尔传感器产生里程数的脉冲信号。
2.对脉冲信号进行计数。
实现:
利用单片机自带的计数器T0对霍尔传感器脉冲信号进行计数。
3.对数据进行处理,要求用LED显示里程总数和即时速度。
利用软件编程,对数据进行处理得到需要的数值。
最终实现目标:
自行车里程表具有里程、速度测试与显示功能,采用单片机作控制,可根据车圈的不同设置常用的四种尺寸,显示电路可显示里程及速度,当开关S打开时,LED切换显示当前里程;
当开关S闭合时,LED切换显示当前速度v;
若自行车超速,系统发出报警提示。
整个设计过程包括硬件电路的搭建,软件的编程,系统的调试,调试通过后,固化程序,脱离开发系统运行。
2.2自行车里程表硬件方案设计
自从1971年微型计算机问世以来,随着大规模集成电路技术的不断进步,微型机主要向两个方向发展:
一个向高速度,高性能的高档微型计算机方向发展。
一个向稳定可靠,小而廉价的单片机方向发展。
所谓的单片机,就是把中央处理器CPU、只读存储器ROM、定时/计数器以及I/O接口电路等集成在一块集成电路芯片上的微型计算机。
从组成和功能上看,它具有微型计算机的含义。
单片机由于将CPU、内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点:
1.体积小、重量轻;
2.电源单一、功耗低;
3.功能强、价格低;
4.全部集成在一块芯片上,布线短、合理;
5.数据大部分在单片机内传送,运行速度快、抗干扰能力强、可靠性高。
目前,单片机被广泛的应用于测控系统、工业自动化、智能仪表、集成智能传感器、机电一体化产品、家用电器领域、办公自动化领域、汽车电子与航空航天器电子系统以及单片机的多机系统等领域。
2.2.1里程/速度测量传感器的设计
1.速度传感器的设计
测速是工农业生产中经常遇到的问题,学会使用单片机技术设计测速仪表具有很重要的意义。
要测速,首先要解决是采样的问题。
在使用模拟技术制作测速表时,常用测速发电机的方法,即将测速发电机的转轴与待测轴相连,测速发电机的电压高低反映了转速的高低。
使用单片机进行测速,可以使用简单的脉冲计数法。
只要转轴每旋转一周,产生一个或固定的多个脉冲,将脉冲送入单片机中进行计算,即可获得转速的信息。
(1)霍尔传感器
霍尔传感器是对磁敏感的传感元件,常用于信号采集的有A44E、CS3020、CS3040等,这类传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,通常是集电极开路(OC门)输出,工作电压范围宽,使用非常方便。
A44e的外形如图2.1所示。
将有字面对准自己,三根引脚从左向右分别是电源、地、输出。
1-Vcc2-GND3-OUT
图2.1A44e外形图
使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的齿轮盘上粘上一粒磁钢,霍尔元件固定在前叉上,当车子转动时霍尔元件靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。
如果在齿轮盘上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。
在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。
这种传感器不怕灰尘、油污,在工业现场应用广泛。
(2)光电传感器
光电传感器是应用非常广泛的一种器件,有各种各样的形式,如透射式、反射式等,基本的原理就是当发射管光照射到接收管时,接收管导通,反之关断。
以透射式为例,如图2.2所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则导通。
为此,可以制作一个遮光叶片,如图2.3所示,安装在转轴上,当扇叶经过时,产生脉冲信号。
当叶片数较多时,旋转一周可以获得多个脉冲信号。
图2.2光电传感器的原理图
图2.3遮光叶片
(3)光电编码器
光电编码器的工作原理与光电传感器一样,不过它已将光电传感器、电子电路、码盘等做成一个整体,只要用连轴器将光电传感器的轴与转轴相连,就能获得多种输出信号。
它广泛应用于数控机床、回转台、伺服传动、机器人、雷达、军事目标测定等需要检测角度的装置和设备中。
某光电编码器的外形如图2.4所示。
图2.4成品光电编码器
2.里程测量传感器的设计
里程测量传感器的选择也有以下几种方案:
使用光敏电阻对里程进行测量、利用编码器对车轮的圈数进行测量、利用霍尔传感器对里程进行测量、利用干簧管型传感器测量里程。
这几种方案都是通过自行车车轮转动产生脉冲数,然后根据脉冲数计算里程。
2.2.2方案的确定
光敏电阻对光特别敏感,当白天行驶时,外界光源将导致光敏电阻发出错误信号;
光敏电阻对环境的要求相当高,如果光敏或发光二极管被泥沙或灰尘所覆盖,光敏电阻就不能再进行准确测量;
而编码器必须安装在车轴上,安装较为复杂;
霍尔元件或干簧管不但不受天气的影响,即使被泥沙或灰尘覆盖也不会有影响,而且安装方便。
所以本设计采用霍尔元件对里程与速度进行测量,既简单易行,又经济适用。
本系统的硬件系统框图如图2.5所示
图2.5系统的原理框图
2.3自行车里程表软件方案设计
硬件是基础,软件是灵魂。
通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性。
程序遵循模块化设计的原则,采用自顶向下的设计方法。
即先考虑整体目标,明确整体任务,然后把整体任务分成一个个子任务,子任务再分成子子任务,这样逐层细分,同时分析层次间的关系与同一层次各任务间的关系,最后拟订出各任务的细节。
模块化设计使程序的可读性好、修改及完善方便。
软件设计包括主程序、行车过程中里程和速度计算子程序、延时子程序、T0、T1中断服务子程序、显示子程序等等。
中断子程序是将传感器产生的信号接入计数器的T0口,然后计数器开始计数,当计数到一定数目后,计数器就产生溢出中断。
数据处理子程序是将进入单片机的脉冲信号与实际要显示值之间有一定的对应关系,经过软件编程显示所需要的值。
显示子程序是将数据处理的结果送显示器显示。
本系统软件总体流程图如图2.6所示。
图2.6软件总体流程图
第3章自行车里程表硬件电路设计
3.1概述
传感器在人们研究自然现象、规律以及生产实践活动中,起着非常重要的作用。
特别是在当今,科学技术的发展使人类进入了一个信息时代,在利用信息的过程中,首先要解决的就是获取准确可靠的信息。
传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。
磁传感器是一种将磁学量信号转变为电信号的器件或装置。
随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。
作为输入信号,这就给磁传感器的快速发展提供了机遇,形成了磁传感器的产业。
自从磁传感器作为一种独立产品进入应用领域,从10-14T的人体磁场到高达25T以上的强磁场,都可以找到相应的磁传感器进行检测。
而这巨大的应用前景也使微机电系统技术在磁传感器中大有可为。
其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作,它的特性是霍尔传感器输出的脉冲信号的个数比较直接反映所测量转数的数目。
3.2传感器及其测量系统
霍尔器件是一种磁传感器。
用它们可以检测磁场及其变化,可在各种与磁场有关的场合中使用。
霍尔器件以霍尔效应为其工作基础。
霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1MHz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。
霍尔线性器件的精度高、线性度好;
霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回跳、位置重复精度高(可达μm级)。
取用了各种补偿和保护措施的霍尔器件工作温度范围宽,可达-55℃~150℃。
按照霍尔器件的功能可将它们分为:
霍尔线性器件和霍尔开关器件,前者输出模拟量,后者输出数字量。
按被检测对象的性质可将它们的应用分为:
直接应用和间接应用。
前者是直接检测出受检测对象本身的磁场或磁特性,后者是检测受检对象上人为设置的磁场,用这个磁场来作被检测的信息的载体。
通过它,将许多非电、非磁的物理量例如力、力矩、压力、应力、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。
3.2.1霍尔传感器的测量原理
霍尔传感器是利用霍尔效应制成的一种磁敏传感器。
在置于磁场中的导体或半导体通入电流I,若电流垂直磁场B,则在与磁场和电流都垂直的方向上会出现一个电势差Uh,这种现象称为霍尔效应。
利用霍尔效应制成的元件称为霍尔元件。
因为它具有结构简单、频率响应宽、灵敏度高、测量线性范围大、抗干扰能力强以及体积小、使用寿命长等一系列特点,因此被广泛应用于测量、自动控制及信息处理等领域。
霍尔效应原理图如图3.1所示。
图3.1霍尔效应原理图
3.2.2集成开关型霍尔传感器
A44E集成霍尔开关由稳压器A、霍尔电势发生器(即硅霍尔片)B、差分放大器C、施密特触发器D和OC门输出E五个基本部分组成,如图3.2(a)所示。
(1)、
(2)、(3)代表集成霍尔开关的三个引出端点。
在电源端加电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。
当施加的磁场达到工作点时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,通常称这种状态为开。
当施加的磁场达到释放点时,触发器输出低电压,三极管截止,使OC门输出高电压,这种状态为关。
这样两次电压变换,使霍尔开关完成了一次开关动作。
工作点与释放点的差值一定,此差值称为磁滞,在此差值内,V0保持不变,因而使开关输出稳定可靠,这也就是集电成霍尔开关传感器优良特性之一。
传感器主要特性是它的输出特性,即输入磁感应强
图3.2集成开关型霍尔传感器
a)组成b)输出特性
度B与输出电压V0之间的关系。
A44E集成霍尔开关是单稳态型,由测量数据作出的输出特性曲线如图3.2(b)所示。
测量时在1、2两端加+12V直流电压,在输出端3与1之间接一个2kΩ的负载电阻,如图3.3所示。
图3.3集成霍尔开关接线图
3.3芯片简介
3.3.1单片机的选择
单片微型计算机是指集成在一个芯片上的微型计算机,也就是把组成微型计算机的各种功能部件,包括CPU(CentralProcessingUnit)、随机存取存储器RAM(RandomAccessMemory)、只读存储器ROM(Read-onlyMemory)、基本输入/输出(1nput/Output)接口电路。
定时器/计数器等部件都制作在一块集成芯片上,构成一个完整的微型计算机从而实现微型计算机的基本功能。
单片机内部结构示意图如图3.4所示。
单片机实质上是一个芯片。
在实际应用中,通常很少将单片机直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。
图3.4单片机内部结构示意图
1.AT89C52引脚功能
AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(EPROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大,AT89C52单片机适合于许多较为复杂控制场合应用。
主要性能参数:
与MCS-51产品指令和引脚完全兼容
8k字节可重擦写Flash闪速存储器
1000次擦写周期
全静态操作:
0Hz-24MHz
三级加密程序存储器
256×
8字节内部RAM
32个可编程I/O口线
3个16位定时/计数器
8个中断源
可编程串行UART通道
低功耗空闲和掉电模式
图3.589C52引脚图
AT89C52提供以下标准功能:
8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两极中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
89C52管脚图如图3.5所示。
89C52的主要管脚功能如下:
P0.0~P0.7:
P0口是一组8位漏极开路型双向I/O口,也是地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
P1.0~P1.7:
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲极可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
P2.0~P2.7:
P2是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲极可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
P3.0~P3.7:
P3是一个带内部上拉电阻的8位双向I/O口,P3的输出缓冲极可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P3写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
ALE:
地址锁存控制信号。
在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。
此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。
:
外部程序存储器读选通信号。
在读外部ROM时,
有效(低电平),以实现外部ROM单元的读操作。
访问程序存储控制信号。
当
信号为低电平时,对ROM的读操作限定在外部程序存储器;
信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。
RST:
复位信号。
当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。
XTALl和XTAL2:
外接晶体引线端。
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;
当使用外部时钟时,用于接外部时钟脉冲信号。
VSS:
地线。
VCC:
+5V电源。
以上是MCS-51单片机芯片40条引脚的定义及简单功能说明。
由于工艺及标准化等原因,芯片的引脚数目是有限制的。
例如,MCS-51系列把芯片引脚数目限定为40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾。
如何解决这个矛盾?
“兼职”是唯一可行的办法,即给一些信号引脚赋以双重功能。
如果把前述的信号定义为引脚第一功能的话,则根据需要再定义的信号就是它的第二功能。
下面介绍一些信号引脚的第二功能。
(1)P3口线的第二功能。
P3的8条口线都定义有第二功能,如表3.1所示
表3.1P3口引脚与第二功能
引脚
第二功能
信号名称
P3.0
RXD
串行数据接收
P3.1
TXD
串行数据发送
P3.2
外部中断0申请
P3.3
外部中断1申请
P3.4
T0
定时/计数器0的外部输入
P3.5
T1
定时/计数器1的外部输入
P3.6
外部RAM写选通
P3.7
外部RAM读选通
(2)EPROM存储器程序固化所需要的信号。
有内部EPROM的单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚以第二功能的形式提供的,即:
编