电子式里程表.docx
- 文档编号:16561057
- 上传时间:2023-07-14
- 格式:DOCX
- 页数:64
- 大小:318.73KB
电子式里程表.docx
《电子式里程表.docx》由会员分享,可在线阅读,更多相关《电子式里程表.docx(64页珍藏版)》请在冰点文库上搜索。
电子式里程表
电子式里程表
摘要
里程表广泛应用于各类机车,传统的机械式里程表虽然稳定可靠,但功能单一、易受磨损。
随着电子技术的迅猛发展,电子式里程表得以广泛应用,现在很多轿车仪表已经使用电子车速里程表,本设计介绍一种基于单片机的智能电子里程表。
该电子式里程表是一种数字式仪表,主要由车速表和里程表两部分组成,其传感器采用无接触测量的光电传感器。
它不仅可显示车辆行驶的总里程,也可显示一段时间的阶段里程,还可显示车速,以及实现超速报警等功能,并具有较强的再开发能力。
它的实现方式是,通过安装在汽车转轴上的测量盘,用光电式转速传感器检测转速的脉冲信息,在脉冲状态下,将转速的变化转换成光通量的变化,再通过光电转换元件将光通量的变化转换成电量的变化,接着通过频率测量电路将脉冲信号输入到单片机中,然后依据电量与转速的函数关系实现转速测量,再通过计算,从而得出里程、车速的信息,并由LED显示器显示出来。
并且该电子式里程表累积的里程数字存储在非易失性的EEPROM存储器内,在无电状态下数据也能保存。
关键词:
AT89S51单片机;里程表;光电传感器;LED显示器;存储器
Abstract
Vehicleodometerisappliedineachkindofmotorcycleextensively,althoughthetraditionalmachinetypeodometerstableandcredible,butthefunctionofitissingleandbeeasilywornaway.Alongwiththetechnicalfastfiercelydevelopinelectronics,theelectronicvehiclecanbeappliedextensively.Recently,alotofcarappearanceshavealreadyusedtheelectronicvehicleodometer,thisgraduationthesisintroduceakindofintelligenceelectronicvehicleodometer,whichisbasedonaSingle-ChipMicrocomputersystem.Theelectronics'typevehicleodometerisakindofnumericaltypeappearance,whichmainlyconstitutewithtwoparts,thatisvehiclespeedmeterandodometer,itadoptsthelightsensorthatthesensorhasnocontactmeasure.Itnotonlycanshowthetotalmileagethatvehicledrive,butalsocanshowthestagemileageofaperiodoftime.Moreover,It’scanshowthecarspeed,andtherealizationexceedthespeedlimittoreportandsoon.Italsohastheabilityofstrongerlydevelopagain.Thewayofthisvehicleodometercarryoutisasfollows:
throughtheinstalledmeasureplateintheautomobileshaft,usethelightsensortomeasuretherotationalspeedinformation.Underthepulseappearance,itmakethevarietyrotationalspeedchangetothevarietyofthelightflux,afterthatthevarietyofthelightfluxconverttoelectricityquantity.Thenthroughthelightelectricityconvertcomponent,wecanmakethepulsesignalinputtotheSingle-ChipMicrocomputerbythefrequencymeasurecircuit.Thenintermsofthefunctionrelationshipofelectricityquantityandrotationalspeed,wecanrealizethemeasureofrotationalspeed,aftercalculatebytheSingle-ChipMicrocompute,wecanobtaintheinformationofmileageandvehiclespeed.Moreover,ThismileageandvehiclespeedinformationcanbedisplayedbytheLEDmonitor.Andthemileagenumeraloftheelectronics'vehicleodometeraccumulationissavinginEEPROM,whichisnoteasilylost,thedataalsocankeepunderthenoelectricappearance.
Keyword:
AT89S51Single-ChipMicrocomputer;Odometer;Lightsensor;LED;Memory
引言………………………………………………………………………1
1总体设计……………………………………………………………………2
2系统设计可行性分析…………………………………………………2
2.1总体设计分析……………………………………………………………………2
2.2硬件模块…………………………………………………………………………3
2.3软件模块…………………………………………………………………………6
3硬件单元电路设计……………………………………………………………………7
3.1传感器的设计……………………………………………………………………7
3.2单片机与光电传感器的接口设计………………………………………………11
3.3单片机与外部存储器的接口设计………………………………………………13
3.4单片机与超速报警电路的接口设计……………………………………………13
3.5单片机与键盘和7段显示器的接口设计………………………………………13
4软件设计……………………………………………………………………14
4.1脉冲测量部分……………………………………………………………………16
4.2键盘输入部分……………………………………………………………………17
4.3数据处理部分……………………………………………………………………18
4.4存储器部分………………………………………………………………………21
4.5超速报警部分……………………………………………………………………24
4.6显示部分…………………………………………………………………………25
5系统调试……………………………………………………………………27
5.1硬件单元电路调试………………………………………………………………27
5.2软件程序调试……………………………………………………………………29
5.3整体调试…………………………………………………………………………32
6系统使用说明……………………………………………………………………32
7系统功能的扩展……………………………………………………………………33
8结论…………………………………………………………………………………33
谢辞…………………………………………………………………………………35
参考文献…………………………………………………………………………………36
附录…………………………………………………………………………………………37
引言
我国汽车工业走过了五十年的历程,与国际发达国家汽车工业相比,电子技术水平相对比较落后,提高国产汽车的电子技术水平,增加汽车电子装备的数量,促进汽车电子化是夺取未来汽车市场的关键,提高我国的汽车电子技术已势在必行。
随着中国的复关,国外汽车零部件厂商也大举进入中国参与竞争。
电子式仪表及新型传感器是各类车型汽车的首选配套产品,通用性好,市场前景广阔。
目前国外汽车车速里程表已广泛采用电子式机芯结构,而国内汽车仪表一直是机械式车速里程表的天下,少数采用动圈式电子仪表, 通过大量市场调研,我们清楚地看到进入20世纪以来汽车工业迅速发展,而电子产品则是汽车提高技术含量的晴雨表。
国外电子产品占整车成本的30%,然而我国汽车行业起步较晚,技术十分落后,电子产品仅占整车成本的5%。
例如国外汽车早已装配电子式仪表,而我国汽车仍在应用传统的机械仪表,可靠性很差。
目前汽车仪表控制电子化是一种发展趋势,由先进的传感器与显示装置构成的电子仪表已开始全面取代传统的机电式仪表,成为现代汽车的明显标志。
一般汽车的常规仪表有车速里程表、转速表、机油压力表、水温表、燃油表、充电表等。
仪表板中最常用的是车速里程表,目前很多轿车仪表已经使用电子车速表,它通过变速器上的速度传感器获取信号,通过脉冲频率的变化使指针偏转或者显示数字。
随着汽车电子半导体技术的发展,多功能、高精度、高灵敏度、读数直观的电子数字显示及图像显示的仪表已不断应用于汽车。
汽车仪表的功能已不仅仅是单纯的显示,而是通过对汽车各部件参数的监测和计算机处理相配套,从而达到控制汽车各种运行工况的目的。
因而电子式里程表的广泛应用将会很大的提高中国的汽车电子技术水平。
本作品正是顺应了汽车电子发展的趋势,利用安装在汽车转轴上的测量盘,由光电传感器输出采样脉冲,采取单片机控制,用一个六位LED数码管和一个四位LED数码管作为显示设备,从而得出里程、车速的信息。
在里程信息的存储功能上,采用了新型轿车中广泛使用的串行EEPROM芯片24C16。
当电源正常供电时给电容器充电,电源掉电时,利用电容器电流将单片机中的数据写入EEPROM中。
本作品廉价且功能较强,使用方便,实用价值较高,极容易得到推广。
本作品经过实验,完全能达到设计要求,显示的车速、里程和原车机械里程表的显示值误差小于1%,报警值非常准确。
由于采用的芯片都是广泛使用的通用芯片,成本较低,制作元器件和印刷电路板成本不过七八十元,如果批量生产,成本更低。
而且该电子式里程表体积小,功耗低,功能多,稳定可靠,性价比高,在很多领域都能得到广泛的应用,具有较高的经济价值。
1总体设计
该电子式里程表以AT89S51单片机为核心,由系统输入、单片机部分和系统输出组成。
其主要模块有报警装置、键盘输入、光电传感器、显示、单片机以及EEPROM存储器。
其系统组成框图如图1.1所示。
图1.1系统组成框图
单片机控制模块是该作品的重要组成部分。
为了提高单片机的使用效率,以及可以实现在线编程,而采用了AT89C51单片机的升级产品AT89S51单片机。
为保证数据的安全可靠保存并减少作品的成本,以及使系统的结构简单,在里程信息的存储功能上,没有采用常用的并行EEPROM存储器,而采用了新型轿车中广泛使用的串行EEPROM芯片24C16。
当电源正常供电时给电容器充电,电源掉电时,利用电容器电流将单片机中的数据写入EEPROM中。
超速报警部分本作品采用了简单的软件设计,由程序产生,铃声是为了达到提示的目的,因此,选用了一个简单的蜂鸣器,通过软件定时产生的嘀嘀声作为提示音,并且接一个红色的发光二极管,使报警效果更加理想。
在车速里程显示方面,本作品采用了常用的6位共阳极LED显示器,通过按键的转换以及对单片机的软件编程,可在一个6位共阳极LED显示器中实现系统总里程和单班里程的显示,而车速则通过另一个4位的共阳极LED显示器实时显示。
而本系统的车速脉冲采样部分,采用了非接触式的高灵敏度光电传感器,它有利于提高脉冲测量的精度,并提高了系统的可靠性,应用时将测量盘固定在车辆的转轴上,再通过光电传感器来测量。
2系统设计可行性分析
2.1总体设计分析
根据电子式里程表的具体设计要求:
(1)显示车辆行驶的总里程,用6位LED显示;
(2)显示一段时间的阶段里程,用6位LED显示;
(3)显示车速,用4位LED显示;
(4)实现超速报警;
本作品设计的电子式里程表拥有以下单元功能模块:
(1)光电传感器的脉冲信号检测与转换;
(2)超速报警功能;
(3)里程信息存储功能;
(4)车速和里程的LED显示功能;
根据电子式里程表的一些基本要求,从而结合实际情况对具体的单元功能模块作软件或硬件上的不同分工,具体如下:
在车辆转轴上安装的光电传感器的脉冲检测单元必须使用具体硬件电路来实现。
键输入和键处理、脉冲记数处理等功能模块使用软件编程方式要比硬件电路简单得多,实现也很容易。
超速报警、里程信息存储、车速和里程的LED显示都采用硬件电路和软件编程相结合的方式。
其中超速报警采用一个蜂鸣器和一个红色发光二极管的报警方式,通过单片机的软件中断请求,实现蜂鸣器的嘀嘀声及发光二极管的闪烁显示。
里程信息的存储采用单片机对存储器的读写方式,实现了数据信息的保存。
车速和里程的LED显示通过单片机P0口和P2口,编程恰当地选择各个7段LED显示器的点亮时间和间隔时间,实现LED的动态实现。
综上所述,本作品由以上所述的硬件电路和软件编程来完成。
下面就硬件以及软件实现的单元电路分别进行具体分析。
2.2硬件模块
2.2.1光电传感器模块
经过比较,本系统采用了透射式光电测速脉冲整形电路。
每当安装在汽车转轴上的旋转测量盘上的长方孔与光电传感器上的透光孔重合,则光敏三极管受光而通过电流,使三极管饱和导通,故用于脉冲整形的施密特触发器CD4093输出高电平,当圆盘转至透光孔被遮时,CD4093输出低电平。
随着圆盘不停地转动,CD4093便输出脉冲序列。
测出输出脉冲个数,结合圆盘每一周的孔数,使可算出转轴旋转的转速,进而可算出车辆的行驶速度。
2.2.2单片机控制模块
本系统使用了单片机AT89S51,它是AT89C51的升级产品,能实现在线编程。
单片机AT89S51是由ATMEL公司生产的51单片机。
简单介绍如下:
AT89S51单片机是一个低电压,高性能CMOS8位单片机,该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
其片内含有4kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89S51为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89S51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)
端口,同时内含2个外部中断口,2个16位可编程定时计数器,2个全双工串行通信口,
AT89S51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash
存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
其主要特性如下:
·与MCS-51兼容
·4K字节可编程FLASH存储器
·1000次擦写周期
·数据保留时间:
10年
·全静态工作:
0Hz-24Hz
·三级程序存储器锁定
·支持在系统编程ISP
·128*8位内部RAM
·32个可编程I/O口
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路
·具有双工UART串行通道
此单片机主要用于本系统的控制,包括响应中断、延时、定时、记数、判断、扫描键盘、超速报警、LED数码管显示等等。
2.2.3键盘模块
单片机系统所用的键盘有编码键盘和编码键盘两种。
编码键盘是只要按下它的某一个键,就能产生这个键的代码,与此同时还产生一个脉冲信号,以通知CPU接收键码。
编码键盘使用方便,也不用编写太复杂的程序。
但硬件电路复杂,比非编码简易键盘成本要高。
非编码键盘也称简易键盘,它的按键是排列成行、列矩阵形式的。
按键的作用只是简单地实现接点的接通或断开,因此必须有一套相应的程序与之配合,才能产生相应的
键码,它基本上不需要附加什么硬件电路。
但需要通过软件来解决按的识别、防抖动以
及如何产生键码的问题。
本系统的键盘输入部分,采用了2个功能键,用这2个键既可以选择6位LED显示器显示是单班里程还是总里程。
为了节约成本,本作品选用简易键盘即两个按键开关来实现车速与里程的转换显示。
2.2.4显示模块
单片机所用的显示有LED和LCD两种,从设计的难度和成本造价来说LCD都要高于LED。
液晶显示器LCD的最大优点是电源电压低和功耗低,但液晶为非发光型物质,它是利用外界光源的被动式显示器件,环境越明亮显示越清晰,不能用于暗处。
白天靠日光显示,夜间必须使用照明光源。
而且它的工作温度范围不宽,低温条件下灵敏度较低,有时甚至不能正常工作。
寿命与使用条件有关,强光下使用寿命会减小。
此外,它的响应速度较低(在10~200ms范围),这就限制了它在快速系统中的应用。
LED数码管是目前最常用的数字显示器,一个LED数码管可用来显示一位0~9十进制数和一个小数点,在小型专用微机系统和单板机等场合,它是主要的显示器件,在通用微机系统中,也常用来作为状态等显示。
对于共阳极显示器,要点亮的显示段引脚需接低电平“0”。
本作品要显示的是总里程、单班里程以及车速,为数字显示。
基于液晶显示器的成本以及在实际应用中的需要,因此,本作品选用了由LED组成的共阳极7段发光显示器,它有简单、经济、易于与单片机接口等优点。
2.2.5存储模块
此部分是整个系统的关键部分之一,它的工作情况直接决定了系统数据安全保存的可靠性。
EEPROM是电可擦除可编程只读存储器。
在平常情况下,EEPROM与EPROM一样是只读的,需要写入时,在指定的引脚加上一个高电压即可写入或擦除,而且其擦除的速度极快!
通常EEPROM芯片又分为串行EEPROM和并行EEPROM两种,串行EEPROM在读写时数据的输入/输出是通过2线、3线、4线或SPI总线等接口方式进行的,而并行EEPROM的数据输入/输出则是通过并行总线进行的。
在汽车上串行EEPROM用得最多,防盗汽车音响解码,液晶里程表,安全气囊电脑等等单元模块都大量采用这种芯片。
并行EEPROM用的相对少些。
经过翻阅大量的文献资料,发现使用串行EEPROM芯片作为本系统的外部存储器,是比较常用的一种方法,而且在做电路板时布线简单,单片机编程时也稳定可靠,当失电时数据能得以安全的保存,因而采用了串行EEPROM芯片24C16。
本系统所用的24C16是美国ATMEL公司的低功耗CMOS串行EEPROM,它是内含2K×8位存储空间,具有工作电压宽(2.5~5.5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。
24C16的1、2、3脚是三条地址线,用于确定芯片的硬件地址。
在AT89S51试验开发
板上它们都接地,第8脚和第4脚分别为正、负电源。
第5脚SDA为串行数据输入/输出,数据通过这条双向I2C总线串行传送,在AT89S51试验开发板上和单片机的P1.4连接。
第6脚SCL为串行时钟输入线,在AT89C51试验开发板上和单片机的P1.3连接。
SDA和SCL都需要和正电源间各接一个10K的电阻上拉。
第7脚需要接地。
24C02中带有片内地址寄存器。
每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。
所有字节均以单一操作方式读取。
为降低总的写入时间,一次操作可写入多达8个字节的数据。
2.3软件模块
通过上面分析,设计中决定选用S51系列单片机作为控制器,那么它的软件编写就要按照单片机语言:
C语言或汇编语言来编写,这里我选用执行效率高的汇编语言编写。
开发工具为keilc51,它的功能强大,支持c语言和汇编语言的编写与调试,其软件模拟I/O口将会给软件调试带来极大的方便。
2.3.1脉冲测量部分
本单元需要两个I/O口,我选用了单片机的P1.5和P1.6。
由于脉冲测量过程中,开始检测时脉冲宽度已小于机器周期T,因而会导致脉冲的丢失。
为了避免脉冲的丢失,可用门电路实现记数开始与脉冲上升沿的同步控制。
所以在控制时,首先由P1.6发一个清0负脉冲,其输出封锁与门G1和G2。
接着由P1.5发一个启动正脉冲,从而将门G2打开。
之后,被测脉冲上升沿通过G2送T1计数;同时Q2输出的高电平使INT0=1,定时器0的门控GATE有效,启动T/C0开始定时。
直到定时结束时,从P1.6发出一个负脉冲,将U2清零,从而封锁G2,使T/C1停止计数,至此一次频率采样过程结束。
计数器1采用计数值满后自然清零再计数的方法。
将T/C0设为高优先级,允许计数过程中定时中断。
2.3.2键盘输入部分
本单元采用了单片机的P1.1和P1.2口,通过外接两个按键开关,从而控制一个6位LED显示器的总里程和单班里程的显示。
由于机械开关在状态转换时有信号的抖动,故在接入开关的同时,必须考虑防抖动的问题。
防抖动的方法之一是软件延时去抖动。
既在开关状态改变时,执行一个延时程序,待电平稳定后再读入开关状态信息。
而采用的键盘分析程序应包括:
是否有键按下以及识别哪个键按下。
一旦找到某键,是否按下此键,即可将程序转到该键的功能程序段。
2.3.3存储器部分
本系统采用的是串行EEPROM芯片24C16,24C16的1-3脚分别为器件编址端A0、A1、A2(用于与系统中的同类器件编码),4脚为电源地,5脚为I2C总线的数据线SDA,6脚为I2C总线的时钟SCL,7脚为测试输入端,在系统中接地,8脚为电源。
当时钟线SCL为高电平时,数据线SDA由高电平跳变为低电平定义为“开始”信号;当SCL线为高电平时,SDA线发生低电平到高电平的跳变为“结束”信号。
程序中多处调用了DELAY子程序(仅两条NOP指令),这是为了满足I2C总线上数据传送速率的要求,只有当SDA数据线上的数据稳定下来之后才能进行读写(即SCL线发出正脉冲)。
另外,在读最后一个数据字节时,置应答信号为“1”,表示读操作即将完成。
2.3.4超速报警部分
本单元采用一个蜂鸣器和一个红色发光二极管与单片机的P1.0口相接的报警实现方式,光电传感器检测汽车转轴的脉冲信号,并经过频率测量电路,输入到单片机的T1口,通过单片机的T1口记数,由单片机进行数据处理,转换成车速值。
这实时的车速
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 里程表