基于单片机的自行车测速系统的设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

郑州大学自学助考本科毕业设计论文答辩随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车的速度里程表能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程等物理量。因此爱好自行车运动的人十分需要一款能测速的装置,以知道自己的运动情况,并根据外界条件,如温度,风速等进行适当的调节,以达到最佳运动的效果。本论文主要阐述一种基于霍尔元件的自行车速度里程表的设计。以AT89C52单片机为核心,A44E霍尔传感器测转数,实现对自行车里程/速度的测量统计,采用24C02实现在系统掉电的时候保存里程信息,并能将自行车的里程数及速度用LED实时显示。文章详细介绍了自行车的速度里程表的硬件电路和软件设计。硬件部分利用霍尔元件将自行车每转一圈的脉冲数传入单片机系统,然后单片机系统将信号经过处理送入显示。软件部分用汇编语言进行编程,采用模块化设计思想。该系统硬件电路简单,子程序具有通用性,更符合设计要求。自行车的速度里程表的硬件电路设计是基础部分,它包括信号的捕获、放大、整形,单片机的计算处理,数码管的实时显示和单片机外围基本电路的设计,两大主要器件就是传感器和单片机。本次设计的系统的原理框图如图3.1所示。本设计的思路是:以通用MCS-52单片机为处理核心,用传感器将车轮的转数转换为电脉冲,用过霍尔传感器进行处理后送入单片机。里程及速度的测量,是经过MCS-52的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出速度和里程的数据,通过LED显示器显示出来。假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n和周长L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。当里程键按下时,里程指示灯亮,LED切换显示当前里程;当速度键按下时,速度指示灯亮,LED切换显示当前速度。本次设计包括主程序、行车过程中里程和速度计算子程序、延时子程序、中断服务子程序、显示子程序等等。中断子程序是将传感器产生的信号接入外部中断0,将经过74LS74分频后的信号接入外部中断1,利用中断和定时器分别对里程进行累加,每转一周的时间进行测量。数据处理子程序是将进入单片机的脉冲信号与实际要显示值之间有一定的对应关系,经过软件编程显示所需要的值。显示子程序是将数据处理的结果送显示器显示。系统软件总体流程图如下图所示。在主程序模块中,需要完成对各接口芯片的初始化、自行车里程和速度的初始化、中断向量的设计以及开中断、循环等待等工作。P1.0和P1.1口分别用于显示里程状态和速度状态。P1.2、P1.3、P1.6和P1.7口分别用于设置轮圈的大小,低电平有效。P3.0是用于里程和速度切换的,低电平为显示速度,高电平为显示里程。中断0是对轮子圈数的计数输入,轮子每转一圈,霍尔传感器输出一个低电平脉冲。将根据里程寄存器中的内容计算和判断出行驶里程数。中断1用于控制定时器T1的启/停,当输入为0时关闭定时器。此控制信号是将轮子圈数的计数经二分频后形成。这样,每次定时器T1的开启时间刚好为转一圈的时间,根据轮子的周长就可以计算出自行车的速度。其程序流程如图所示。传感器的定义是:“能感受规定的被测量并按照一定的规律转换成可用信号的器件或装置,通常由敏感原件和转换元件组成”。本次设计信号的捕获采用的是霍尔传感器。霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1MHz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回跳、位置重复精度高。取用各种补偿和保护措施的霍尔器件工作温度范围宽,可达-55℃~150℃。霍尔传感器是利用霍尔效应制成的一种磁场传感器。在置于磁场中的导体或半导体通入电流I,若电流垂直磁场B,则在与磁场和电流都垂直的方向上会出现一个电势差Uh,这种现象称为霍尔效应。利用霍尔效应制成的元件称为霍尔元件。因为它具有结构简单、频率响应宽、灵敏度高、测量线性范围大、抗干扰能力强以及体积小、使用寿命长等一系列特点,因此被广泛应用于测量、自动控制及信息处理等领域。这也是本次设计选择霍尔传感器的原因。单片机就是在一块半导体硅片上集成了微处理器(CPU),存储器(RAM,ROM,EPROM)和各种输入、输出接口(定时器/计数器,并行I/O口,串行口,A/D转换器以及脉宽调制器PWM等),这样一块集成电路芯片具有一台计算机的属性,因而被称为单片微型计算机,简称单片机。单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能。在设计中选用的是AT89C52单片机。单片机的各个引脚功能及中断系统和定时器/计数器功能再次不多作介绍。本次设计采用的24C02是为了防止掉电时里程数据的丢失,由于24C02的数据线和地址线是复用的,采用串口的方式传输数据,所以只用两根线SCL和SDA与单片机传输数据。在软件编程时采用程序包来控制24C02发送或接受数据。24C02管脚图74LS74是D触发器的一种,它是一个具有记忆功能的二进制信息存储器件,是构成多种时序电路的最基本逻辑单元。触发器具有两个稳定状态,即“0”和“1”,在一定的外界信号作用下,可以从一个稳定状态翻转到另一个稳定状态。由于其状态的更新发生在CP脉冲的边沿,故又称之为上升沿触发的边沿触发器,D触发器的状态只取决于时钟到来前D端的状态。引脚图如图所示。本题目中74LS74芯片起分频的作用。当车轮每转一圈,霍尔传感器输出一个低电平脉冲,通过74LS74进行二分频后,定时器T1的开启时间为车轮转1圈的时间,这样就可以算出自行车的速度。分频前后对比图如图所示。由图可见,二分频后的波形的高或低电平的时间正好是霍尔传感器开关的一个周期,霍尔传感器输出脉冲到,即P3.2口接收到对圈数计数的脉冲。经74LS74二分频后的信号输入到,内部定时计数器测得每转一圈所用的时间,通过计算即可得里程值和即时速度。本次设计采用的驱动数码管芯片为74LS244,74LS244为三态输出的八位缓冲器和线驱动器,若单片机输出口直接接显示部分电路,则电流太小,会导致显示部分不能正常工作。所以在单片机输出口先接入驱动芯片74LS244,增大电流,使LED能够正常工作。它由2组组成,每组由四路输入、输出构成。每组有一个控制端高或低电平决定该组数据被接通还是断开。本设计中采用LED数码管显示。LED显示器有两种不同的形式:一种是发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是发光二极管的阴极都连在一起的,称之为共阴极LED显示器。本次设计采用共阴极接法。P2.0、P2.1、P2.2、P2.3信号一起组成位选通的位选信号,P0.0~P0.6信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通另一个LED,逐步完成四个LED的显示。本设计采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的7个笔划段a-g同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。P2.0、P2.1、P2.2、P2.3信号一起组成位选通的位选信号,P0.0~P0.6信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通另一个LED,逐步完成四个LED的显示。程序流程图如图所示。定时中断是为满足定时或计数的需要而设置的。在单片机内部有两个定时/计数器,以对其中的计数结构进行计数的方法,来实现定时或计数功能。定时/计数器控制寄存器TCON是8位寄存器,地址为88H,可以位寻址。其高4位用于定时/计数器中断控制,低4位借给外部中断,用做中断标志和触发方式选择位。本设计采用定时中断,对自行车的里程和速度进行计数。中断子程序流程图如图所示。外部中断0服务程序用于对单片机P3.2口输入的圈数脉冲进行计数,为十六进制计数器。60H为低位,62H为高位。每次计数一次后,对里程数据进行一次存储操作。当车轮每转一圈,通过霍尔元件将脉冲数输入单片机内,通过计数器计出脉冲数,再用乘法子程序算出里程数。里程处理子程序流程图如图所示。外中断1服务程序用于处理轮子转动一圈后的计时数据。当标志位(00H)为1时,计数溢出,放入最大时间值(为#0FFH);当标志位为0时,将计数单元(TL1、TH1、6CH、6DH)的值放入68H—6BH单元。定时器计出每转一圈所用的时间,用自行车车轮的周长除以时间就得出自行车的速度。如图所示。请各位老师多多批评指正谢谢

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功