自行车里程测速仪设计本科毕业论文.doc
编号:201234140123 本科毕业论文基于单片机的自行车里程测速仪设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解XX大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 摘 要随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车测速仪能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程、时间等物理量。本文介绍了一种基于单片机控制的简易自动自行车速度以及里程计算系统,包括自行车里程表的硬件构成,软件逻辑以及程序代码。该里程测速系统以AT89C51作为系统控制核心,采用霍尔传感器来检测信号,通过一定时间间隔内对信号的采集,结合自行车本身车轮参数,经过单片机对采集信号进行分析计算,最终在LCD上显示车辆行驶里程、平均速度和瞬时速度,并且具有超速报警功能。该系统硬件电路简单,子程序具有通用性,完全符合设计要求。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。正文中首先简单描述系统硬件工作原理,且附以系统硬件设计框图,论述了本次毕业设计所应用的各硬件接口技术和各个接口模块的功能及工作过程, 并具体描述了AT89C51接口的软、硬件调试;其次阐述了程序的流程和实现过程。仿真实验表明所设计的硬件电路及软件程序是正确的,满足设计要求。关键词:里程/速度;霍尔元件;单片机;LCDAbstractWith the development of peoples life, the bicycle is not only the universal tool of transportation and substitute for walking, but becomes the first choice of entertainment and exercising. The bicycle speedometer can fulfill the basic need of peoples life, so that they can learn the speed, the mileage, time of the bicycle. This article describes a simple microcontroller-based control automatically bike speed and mileage calculation system, including bicycle odometer hardware structure, software logic, and program code. Velocity system of the mileage uses AT89C51 as the control core, uses the hall sensors to detect the signal within a certain time interval the signal acquisition, combined with a bicycle wheel parameters after a single-chip signal acquisition, analysis and calculation, the mileage, average speed and instantaneous speed will finally display on the LCD, and the system has speed alarm function. The system hardware circuit is simple, the subroutine is versatile, which fully meets the design requirements.For the sake of easy to expand with the design adoption mold a logic for turning construction, making procedure designing relation that change, software more shorter and more easier to understand. Make hardware control in software descended to moderate the operation. The text inside describes the system hardware work principle in brief first, and attach with the system hardware design frame diagram, discuss this graduate design a function for applied each hardware connecting a people the technique connects with each one a mold piece and work processes, combine to describe in a specific way the AT89C51 electric circuit connects oscular and soft, the hardware adjusts to try. Expatiated the process of the procedure the next in order with realizes process. The simulation results have proved that the hardware circuits design and software program is correct, and the system can meet the designing requirement completely.Keywords: Mileage / speed; Hall element; MCU; LCD目 录1 绪论11.1 课题研究的目的和意义11.2 国内外的发展现状分析11.3 研究的主要内容22 系统总体设计32.1 系统总体设计思路32.2 结构框图32.3 速度测量原理42.4 传感器的选择42.5 显示模块的选择42.6 操作说明52.7 工作原理53 硬件电路设计63.1 系统总电路图63.2 AT89C51单片机简介73.3 1602LCD液晶显示模块93.4 霍尔元件113.4.1 霍尔元件简介113.4.2 霍尔传感器测量原理123.4.3 转速测量方法133.5 晶振复位电路133.6 报警电路144 软件程序设计154.1 测量算法概述154.2 主程序设计154.3 中断子程序设计175 调试与仿真185.1 Proteus及Keil软件简介185.1.1 Proteus软件185.1.2 Keil软件185.2 应用Keil软件进行程序调试195.3 Proteus软件仿真195.4 仿真结果196 结论23参考文献24致谢25附录261 绪论1.1 课题研究的目的和意义中国人口众多,还是发展中国家,经济不发达制约了大多数人的消费水平,人们使用的交通工具主要还是自行车,它轻巧便捷,使用简单,很受人们的喜爱,同时也可以作为休闲运动工具,是人们锻炼身体的好工具。但随着时间的推移,人们追求的是具有更多功能的自行车,它能显示当前车子行驶的速度、里程、行车时间、最高行驶速度,甚至还有GPS全球定位系统。本文就是以这个作为出发点,尝试设计一款低成本多功能的测速仪,旨在让自行车驾驶者在驾驶时能够准确的知道车子的行驶状态,根据周围环境,做出正确的判断和操作,提高了驾驶的安全性。另外自行车运动需一款测速装置,以了解运动情况,特别是对于运动员,他们需要一种能对实时运动情况进行测量并记录的仪器,通过记录的数据,运动员可以分析自己的训练成绩及训练过程,根据分析结果,可以调整自己的训练步骤。测速装置是对运动中各种参数进行测定。现测速表的设计已很多,多数由机械式或模拟数字电路来实现的,都存在体积大、精度低、不直观、功耗大、功能少等缺点。本文所述测速系统是以单片机为核心实现的,具有功能多、功耗小、直观准确以及可显示时间、总里程、速度等优点。1.2 国内外的发展现状分析随着微型计算机可靠性提高和价格的下降,用单片机测量转速已日趋普遍。我们知道,欲提高测量精度,必须先测出准确的转速,而原先在可控硅调速电路中采用的测速发电机方式已不能满足要求,必须采用数字测速的方法。转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。本文采用频率法,检测的是输入脉冲数,这种方式又称频率法,它测出一定时间内输入的脉冲的个数,在控制系统中占有非常重要的地位。对测速装置的要求是分辨能力强、高精度和尽可能短的检测时间。所设计的基于霍尔元件的脉冲发生器要求成本低,构造简单,性能好。在电气控制系统中存在着较为恶劣的电磁环境,因此要求产品本身要具有较强的抗干扰能力。由于需要采用霍尔传感器的应用领域,如汽车、电机、手机和电脑都已经采用了该器件,而且这些市场在未来几年的增长较为稳定,而其他一些新的应用市场又不足以与上述几个市场相比,因此霍尔传感器在全球总的市场容量是较为稳定的,每年的增长率保持在5%到10%之间。因为各种应用电机的部件、节气门位置的检测、各种阀体位置的检测都会用到霍尔传感器。而且,在中国市场中,国外厂商为了降低成本,陆续将零部件拿到中国进行设计和生产,这也进一步提升了中国市场霍尔传感器的应用量。随着它在消费电子市场上的应用越来越广,如何控制功耗和成本将是厂商面临的挑战,而且,它还面临生产测试技术方面的挑战。国内外现在都有生产销售类似的自行车测速仪里程表,有些简单的产品就是单单只有测速或里程的功能,比较复杂的产品除了测速和里程功能外,还加入了GPS全球定位、单次行车里程、平均速度、时钟、行车时间、车轮转数。未来的发展趋势可能还加入MP3和短信收发功能,使得自行车测速仪更加的人性化,相信会受到更多人的青睐。1.3 研究的主要内容本课题主要任务是利用单片机等部件设计的一个可用LCD显示时间、行驶里程及平均速度,七段数码管显示瞬时速度的自行车测速仪。本文主要介绍了自行车测速仪的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分和软件部分设计。本文首先简要的对该课题的自行车测速仪设计进行总体的介绍;继而具体介绍了自行车测速仪的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计、传输电路的设计等;然后阐述了该自行车测速仪的软件设计,包括主程序设计和子程序的设计;最后对本次设计进行了系统的仿真和总结。本设计要求对自行车进行实时速度的测量,显示出速度值、行车里程、行车时间以及行车的平均速度。2 系统总体设计2.1 系统总体设计思路电源模块信号输入模块控制器模块显示模块本系统实现自行车运行过程中对行驶里程、当前瞬时速度、平均速度进行测量和显示。总体设计思路如图2-1所示。系统包括控制器模块、信号检测采集模块、显示模块、电源模块四部分。图2-1总体设计思路系统工作时,采用9V的电池供电,进行稳压处理,将9V稳降到5V以供单片机以及各芯片使用,传感器采集到信号(用按键代表脉冲或者用频率输入代表信号输入)传输给单片机,单片机计数器统计脉冲个数,定时器记录相应时间长度,经过运算,将行驶里程、平均速度送给LCD显示,当前(瞬时)速度送给7段数码管显示,根据设定的报警值决定报警灯的点亮情况。2.2 结构框图系统总体设计的结构框图如图2-2所示。复位清零LCD显示LED警报电池供电89C51单片机传感器数码管显示频率计模拟按钮模拟图2-2 系统结构框图系统由霍尔元件传感器、显示模块、LED报警模块、供电模块和单片机小系统构成。2.3 速度测量原理测量自行车的速度的原理有两种:测量一定时间间隔t里自行车车轮转过的圈数q,假设车轮周长为c,则速度V=c*q/t;测量自行车车轮转过一圈的时间t,则速度V=c/t。本里程表是根据第一个原理计算速度的。2.4 传感器的选择红外光电传感器。把红外对管分别安装在自行车车轮的两侧,当车轮转动时,辐条会阻挡红外对管的光路,接收管输出低电平,单片机根据此信号可计算里程、速度等。红外对管的优点是测量精度高,缺点是安装比较复杂和容易受外来光线、灰尘等的影响。开关型霍尔传感器。霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。把开关型霍尔传感器安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,传感器输出一个无抖动的低电平,单片机根据此信号可计算里程、速度等。霍尔传感器的优点是稳定和安装简易,缺点是成本较高。干簧管。干簧管是一种磁敏的有触点无源电子开关元件,应用在里程表上的原理与开关型霍尔传感器类似,把干簧管安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,干簧管闭合,单片机根据此信号可计算里程、速度等。干簧管的优点是成本低廉和安装简易,缺点是比较脆弱和不够稳定。本里程表选用开关型霍尔传感器。2.5 显示模块的选择动态扫描LED数码管显示。里程表的显示内容以数字为主,利用LED数码管可基本满足使用要求,且成本较低。但是用动态扫描的方式驱动数码管,亮度太低,在阳光下几乎看不见显示内容,失去使用价值。串行静态LED数码管显示。把单片机的串行口设置为方式0(同步移位寄存器),输出显示信息,可实现LED数码管的静态显示,其亮度令人满意。但由于要使用74HC164/74LS164串并转换芯片驱动LED数码管,因此会带来体积大、成本高、功耗高等的缺点。LCD液晶显示模块。液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件了。本里程表使用1602 LCD作为显示模块。外加四个七段管LED用来显示5秒内的当前速度(近似瞬时速度)。2.6 操作说明本例子所采用的是27#比赛公路自行车,换算成公制,外径700mm,半径为350mm,探测器安装在距离轴心200mm处,探测到一次,车轮转动2.15m,轮胎具体规格700*28C,28是指车胎的横断面的宽度为28mm,则周长2150mm。而在实际运用中则可以根据具体的情况来通过程序来设定具体的参数,以达到对各参数更精确的测量与显示。2.7 工作原理里程、速度等都是由霍尔元器件测量。通过频率计或者按钮输出脉冲,代表车轮转动圈数,已知自行车轮胎的周长为2.15m,轮子每转动一圈,安装在车轮辐条上的磁钢接近霍尔传感器一次,传感器送一个脉冲信号给单片机的外部中断计数器T1,产生一次中断,圈数加一。圈数*2.15即为车前进距离,而通过单片机T0定时器记录时间,间隔5秒,5秒内的前进距离除以时间5秒,得到5秒内的当前速度。而总里程L除以总时间t得到平均速度。系统处理速度数据时同时刷新平均速度、当前速度及运行里程。若速度大于25.2km/h(7m/s)则P3.7输出低电平,LED警示灯亮,提示速度过大。单片机定时器0定时时间为50ms,每20次刷新系统时钟及计算累计行驶时间。3 硬件电路设计自行车的速度里程表的硬件电路设计是基础部分,它包括信号的捕获、放大、整形,单片机的计算处理,数码管的实时显示和单片机外围基本电路的设计,两大主要器件就是传感器和单片机。传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。磁传感器是一种将磁学量信号转变为电信号的器件或装置。随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作。单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能。3.1 系统总电路图系统设计的总电路图如图3-1所示,包括信号输入、显示、控制和复位等模块。图3-1 系统总电路图3.2 AT89C51单片机简介AT89C51是一种低功耗、高性能CMOS 8位微控制器,具有2K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89C51具有以下标准功能:4K字节Flash,128字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,2个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C51 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89C51系列单片机的系统有5个中断源,2个优先级,可实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各优中断源的优先级;同一优先级内各终端同时提出中断请求时,由内部的查询逻辑确定其响应次序。下面按引脚功能分为4个部分叙述个引脚的功能,其引脚图如图3-2所示。 *(1)电源引脚VCC和VSS VCC(40脚):接+5V电源正端; VSS(20脚):接+5V电源正端。 (2)外接晶振引脚XTAL1和XTAL2 图3-2 89C51引脚图 XTAL1(18脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端。用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。 XTAL2(19脚):接外部晶体的另一端。在单片机内部,接至片内振荡反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。(3)控制信号或与其它电源复用引脚控制信号或与其它电源复用引脚有RES/VPD、ALE、PSEN和VPP等4种形式。 RES/VPD(9脚):RES即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。 ALE(30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低8位地址。 PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。 VPP(31脚):该端为访问外部程序储器控制信号,低电平有效。当该端保持高电平时,单片机访问片内程序存储器4KB(MS-52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当该端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源VPP。(4)输入/输出(I/O)引脚P0口、P1口、P2口及P3口 P0口(39脚-22脚):P0.0-P0.7统称为P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。它分时提供8位双向数据总线。对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。 P1口(1脚-8脚):P1.0-P1.7统称为P1口,可作为准双向I/O接口使用。对于MCS52子系列单片机,P1.0和P1.1还有第2功能:P1.0口用作定时器/计数器2的计数脉冲输入端T2;P1.1用作定时器/计数器2的外部控制端T2EX。对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。 P2口(21脚-28脚):P2.0-P2.7统称为P2口,一般可作为准双向I/O接口。当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。 P3口(10脚-17脚):P3.0-P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。P3口的第2功能见表3-1。表3-1 P3管脚含义引脚第2功能P3.0RXD(串行口输入端)P3.1TXD(串行口输出端)P3.2(中断0请求输入端,低电平有效)P3.3(中断1请求输入端,低电平有效)P3.4T0(时器/计数器0计数脉冲端)P3.5T1(时器/计数器1计数脉冲端)P3.6(部数据存储器写选通信号输出端,低电平有效)P3.7(部数据存储器读选通信号输出端,低电平有效)综上所述,该系列单片机的引脚作用可归纳为以下两点:(1)单片机功能多,引脚数少,因而许多引脚具有第2功能。(2)单片机对外呈3总线形式,由P2、P0口组成16位地址总线;由P0口分时复用作为数据总线。3.3 1602LCD液晶显示模块本里程表使用常见的1602字符型LCD模块。1602可以显示2行16个字符,有8位数据总线D0-D7,和RS、R/W、E三个控制端口,工作电压为5V,并且带有字符对比度调节。1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,本设计采用14脚LCD,引脚图如图3-3所示,各引脚接口说明如表3-2所示: 图3-3 LCD1602引脚图表3-2 引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地8D1数据2VDD电源正极9D2数据3VL液晶显示偏压10D3数据4RS数据/命令选择11D4数据5R/W读/写选择12D5数据6E使能信号13D6数据7D0数据14D7数据第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。1602 LCD相应的控制命令如表3-3所示:表3-3 控制命令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令 1:清显示。指令码01H,光标复位到地址00H位置。指令 2:光标复位。光标返回到地址00H。指令3:光标和显示模式设置。I/D:光标移动方向,高电平右移,低电平左移;S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示;C:控制光标的开与关,高电平表示有光标,低电平表示无光标;B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位。S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令。DL:高电平时为4位总线,低电平时为8位总线;N:低电平时为单行显示,高电平时双行显示;F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址。BF:忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。该液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件了。3.4 霍尔元件霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。把开关型霍尔传感器安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,传感器输出一个无抖动的低电平,单片机根据此信号可计算里程、速度等。霍尔传感器的优点是稳定和安装简易,缺点是成本较高。3.4.1 霍尔元件简介根据霍尔效应,人们用半导体材料制成的元件叫霍尔元件。它具有对磁场敏感、结构简单、体积小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自动化、计算机和信息技术等领域得到广泛的应用。霍尔传感器A3144是宽温、开关型霍尔效应传感器,其工作温度范围可达-40150。它由电压调整电路、反相电源保护电路、霍尔元件、温度补偿电路、微信号放大器、施密特触发器和OC门输出极构成,通过使用上拉电阻可以将其输出接入CMOS逻辑电路。该芯片具有尺寸小、稳定性好、灵敏度高等特点。A3144E系列单极高温霍尔效应集成传感器是由稳压电源,霍尔电压发生器,差分放大器,施密特触发器和输出放大器组成的磁敏传感电路,其输入为磁感应强度,输出是一个数字电压讯号。它是一种单磁极工作的磁敏电路,适用于矩形或者柱形磁体下工作。霍尔传感器的外形图和与引脚图如图3-4所示。磁场由磁钢提供,所以霍尔传感器和磁钢需要配对使用。 霍尔元件和磁钢 管脚图图3-4 霍尔传感器的外形图该霍尔传感器的接线图如图3-5所示。图3-5 霍尔传感器的接线图3.4.2 霍尔传感器测量原理测量转速的第一步就是要将车轮的转速表示为单片机可以识别的脉冲信号,从而进行脉冲计数。霍尔器件作为一种转速测量系统的传感器,它有结构牢固、体积小、重量轻、寿命长、安装方便等优点,因此选用霍尔传感器检测脉冲信号,其基本的测量原理如图3-6所示,当车轮转动时,带动传感器运动,产生对应频率的脉冲信号,经过信号处理后输出到计数器或其他的脉冲计数装置,进行转速的测量。霍尔传感器磁钢图3-6 霍尔传感器测量原理3.4.3 转速测量方法 转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。由于转速是以单位时间内转数来衡量,在变换过程中多数是有规律的重复运动。根据霍尔效应原理,将一块永久磁钢固定在电机转轴上的转盘边沿,转盘随侧轴旋转,磁钢也将跟着同步旋转,在转盘下方安装一个霍尔器件,转盘随轴旋转时,受磁钢所产生的磁场的影响,霍尔器件输出脉冲信号,其频率和转速成正比。脉冲信号的周期与电机的转速有以下关系:n= 式中:n为电机转速;P为电机转一圈的脉冲数;T为输出方波信号周期。根据上式即可计算出直流电机的转速。霍尔器件是由半导体材料制成的一种薄片,在垂直于平面方向上施加外磁场B,在沿平面方向两端加外电场,则使电子在磁场中运动,结果在器件的两个侧面之间产生霍尔电势。其大小和外磁场及电流大小成比例。霍尔开关传感器由于其体积小,无触点,动态特性好,使用寿命长等特点,故在测量转动物体旋转速度领域得到了广泛应用。在本设计的仿真中,因缺少霍尔元件,所以用按键代表脉冲或者用频率输入代表信号输入,以达到系统的仿真。3.5 晶振复位电路晶振电路为单片机89C51工作提供时钟信号,芯片中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。电路中的外接石英晶体及电容C11、C12接在放大器的反馈回路中构成并联振荡电路,系统的晶振电路如图3-7所示。由于外接电容C11、C12的容量大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性,如果使用石英晶体,电容的容量大小范围为10pF-30pF;如果使用陶瓷谐振,则电容容量范围大小为10pF-40pF。本设计中使用石英晶体,电容的容值设定为30pF。复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分合过程中引起的抖动而影响复位。单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89C51的复位信号是从RES引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RES引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位,本设计采用的是手动按钮复位。手动按钮复位需要人为在复位输入端RES上加入高电平,采用的办法是在REST端和正电源VCC之间接一个按钮。当人为按下按钮时,则VCC的+5V电平就会直接加到RES端,系统复位。由于人的动作再快也会使按钮保持接通达数十毫秒,所以,设计完全能够满足复位的时间要求。复位电路中开关为手动复位开关,电容C9可避免高频谐波对电路的干扰。89C51的复位电路如图3-7所示。图3-7 晶振复位电路3.6 报警电路本次报警电路采用LED报警灯报警,当即时速度超过预定值是灯亮报警,指示灯亮,提示应该减速。报警电路图如图3-8所示。 图3-8 报警电路4 软件程序设计4.1 测量算法概述速度测量是工控系统中最基本的需求之一,最常用的是用数字脉冲测量某根轴的转速,再根据机械比、直径换算成线速度。脉冲测速最典型的方法有测频率(M法)和测周期(T法)。M法是测量单位时间内的脉数换算成频率,因存在测量时间内首尾的半个脉冲问题,可能会有2个脉的误差。速度较低时,因测量时间内的脉冲数变少,误差所占的比例会变大,所以M法宜测量高速。如要降低测量的速度下限,可以提高编码器线数或加大测量的单位时间,使用一次采集的脉冲数尽可能多。T法是测量两个脉冲之间的时间换算成周期,从而得到频率。因存在半个时间单位的问题,可能会有1个时间单位的误差。速度较高时,测得的周期较小,误差所占的比例变大,所以T法宜测量低速。如要增加速度测量的上限,可以减小编码器的脉冲数,或使用更小更精确的计时单位,使一次测量的时间值尽可能大。设计中综合考虑测速精度和系统反应时间,本设计用测量脉冲频率来计算历程,因而具有较高的测距精度。在计算里程时取了自行车的理想状态。实际中,误差控制在几米之内,相对于整个里程来说不是很大。另外,还应尽量保证其他子模块在编程时的通用性和高效性。4.2 主程序设计在硬件设计完毕之后就是设计中最核心和最为主要的软件部分设计。所谓软件设计就是把软件需求变换成软件的具体设计方案(即模块结构)的过程。模块化结构设计即是根据要求和硬件设计的结构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程。这样的设计方法使得系统的整个功能和各部分的功能趋于明朗化。当系统出现问题就可以根据功能设置找出问题的根源,从而更快地解决问题。所以在整个设计过程中软件设计必须与硬件设计结合在一起。 在主程序模块中,需要完成对各接口芯片的初始化、自行车里程和速度的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器、速度寄存器,并对