电子式里程表.docx
《电子式里程表.docx》由会员分享,可在线阅读,更多相关《电子式里程表.docx(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、电子式里程表摘要里程表广泛应用于各类机车,传统的机械式里程表虽然稳定可靠,但功能单一、易 受磨损。随着电子技术的迅猛发展,电子式里程表得以广泛应用,现在很多轿车仪表已 经使用电子车速里程表,本设计介绍一种基于单片机的智能电子里程表。该电子式里程 表是一种数字式仪表,主要由车速表和里程表两部分组成,其传感器采用无接触测量的 光电传感器。它不仅可显示车辆行驶的总里程,也可显示一段时间的阶段里程,还可显 示车速,以及实现超速报警等功能,并具有较强的再开发能力。它的实现方式是,通过 安装在汽车转轴上的测量盘,用光电式转速传感器检测转速的脉冲信息,在脉冲状态下, 将转速的变化转换成光通量的变化,再通过光
2、电转换元件将光通量的变化转换成电量的 变化,接着通过频率测量电路将脉冲信号输入到单片机中,然后依据电量与转速的函数 关系实现转速测量,再通过计算,从而得出里程、车速的信息,并由LED显示器显示出 来。并且该电子式里程表累积的里程数字存储在非易失性的EEPROM存储器内,在无电 状态下数据也能保存。关键词:AT89s51单片机;里程表;光电传感器;LED显示器;存储器2. 3. 3存储器部分本系统采用的是串行EEPROM芯片24cl6, 24cl6的1一3脚分别为器件编址端AO、Al、 A2 (用于与系统中的同类器件编码),4脚为电源地,5脚为12c总线的数据线SDA, 6脚 为12c总线的时钟
3、SCL, 7脚为测试输入端,在系统中接地,8脚为电源。当时钟线SCL 为高电平时,数据线SDA由高电平跳变为低电平定义为“开始”信号;当SCL线为高电 平时,SDA线发生低电平到高电平的跳变为“结束”信号。程序中多处调用了DELAY子程序(仅两条NOP指令),这是为了满足12c总线上数据 传送速率的要求,只有当SDA数据线上的数据稳定下来之后才能进行读写(即SCL线发出 正脉冲)。另外,在读最后一个数据字节时,置应答信号为“1”,表示读操作即将完成。3. 3. 4超速报警部分本单元采用一个蜂鸣器和一个红色发光二极管与单片机的PLO 相接的报警实现 方式,光电传感器检测汽车转轴的脉冲信号,并经过
4、频率测量电路,输入到单片机的T1 口,通过单片机的T1 口记数,由单片机进行数据处理,转换成车速值。这实时的车速值 与单片机设定的最大车速值相比较,当车速值大于最大车速值时,通过单片机的软件中 断请求,以1秒钟为周期,实现蜂鸣器的嘀嘀声及发光二极管的闪烁显示。当车速值回 落到最大车速值以下时,则通过单片机控制,关闭超速报警功能。4. 3. 5显示部分本单元采用一个6位共阳极LED显示器中实现系统总里程和单班里程的显示,而车速 则通过另一个4位的共阳极LED显示器实时显示。其中LED显示器的段选码都由单片机的 P0口连接控制,4位LED显示器的位选码由单片机的P2. 6和P2. 7口通过译码器7
5、4LS139控 制,译码器74LS139对单片机的P2. 6和P2. 7口分时选通,这样任何一个时刻,都只有一 位LED在点亮,也即动态扫描显示方式。74LS139是一个2-4译码器,它将单片机输出的 地址信号译码后动态驱动相应的LED。但74LS139电流驱动能力较小,为此,我使用了未 级驱动PNP三极管C9015作为地址驱动。而6位LED显示器的位选码,则由单片机的P2.0至 P2. 5 控制。经过翻阅大量的技术资料,对具体要求实现的功能进行完整的系统分析,我认为我 的电子式里程表的系统设计基本符合实际情况,可以完成设计任务所要求实现的基本功 能。3硬件单元电路设计传感器的设计汽车开动后,
6、监测传感器对汽车转轴的转动进行采样,将脉冲采样信号输入到单片 机管脚,单片机的定时计数器T1工作于计数器方式,累计脉冲个数,根据一段时间内 的脉冲个数和车轮的大小,就可以由单片机计算出运行的速度和公里数,并驱动显示器 进行显示。4.1.1 传感器的选择转速是指每分钟内旋转轴转动的圈数。机械式转速仪和电模拟式测速仪已经无法满 足自动化程序日益提高的需要,它们只能测量精度不高的转速,而且输出不能直接供计 算机使用,因此,非接触式的光电数字转速仪表就越来越广泛地得到应用。光电传感器是采用光电元件作为检测元件的传感器。它首先把被测量的变化转换成 光信号的变化,然后借助光电元件进一步将光信号转换成电信号
7、。光电传感器一般由光 源、光学通路和光电元件三部分组成。光电检测方法具有精度高、反应快、非接触等优 点,而且可测参数多,传感器的结构简单,形式灵活多样,因此在检测和控制领域内得 到广泛应用。由于采用光电传感器,可以实现非接触测量。光电式转速测量仪表比较容易作为高 频脉冲频率传感器。例如,可在每转中发出几万脉冲,因此分辨率高,可测极低的转速, 测量范围几乎可从零转开始。其次这种测量方法一般对转轴的附加载荷都很小,不会影 响被测对象的正常旋转,光电式转速传感器工作在脉冲状态下,它是将转轴的转速变换 成相应频率的脉冲,然后测出脉冲频率就可以测得转速值。这种测速方法具有传感器结 构简单、可靠、测量精度
8、高等优点。光电转速传感器的性能可归纳如下:(1)传感器采用无接触测量,不增加被测物旋转力矩,测量小里矩的旋转物能获得很 高的精度。(2)光电传感器是利用光波作为媒介来实现转速测量的,抗电磁干扰能力强,如果采 用调制光源或调制型发光器件,传感器还可具有抗外界杂光干扰能力。(3)传感器利用光电效应方便地将转速换成电量信号。故此类传感器测量范围宽、非 接触检测距离远,随着激光技术的发展,使光电检测技术获得了新发展,能达到超远距 离的测量。(4)光电传感器易受环境雾尘,粉尘、油尘、水雾及杂光的影响。经过比较,由于光电传感器的结构简单、可靠、测量精度高等优点,因而本设计中 选用了光电传感器。5. 1.2
9、光电传感器的选择光电传感器的类型按照光电传感器中光电元件输出电信号的形式可以将光电传感 器分为模拟式和脉冲式两大类。(1)模拟式光电传感器这种传感器中光电元件接受的光通量随被测量连续变化,因此,输出的光电流也是 连续变化的,并与被测量呈确定的函数关系。脉冲式光电传感器在这种传感器中,光电元件接受的光信号是断续变化的,因此光电元件处于开关工 作状态,它输出的光电流通常是只有两种稳定状态的脉冲形式的信号,多用于光电计数 和光电式转速测量等场合。通过两种形式的光电传感器比较,我选用了脉冲式光电传感器,因其多用于光电计 数和光电式转速测量等场合。脉冲式光电转速传感器从光路系统看,有透射式和反射式两种。
10、(1)透射式光电传感器这种仪表的测量盘装在被测转轴上,在它旁边装有不动的读数盘。测量盘沿外缘圆 周刻有等距径向透明光缝,在读数盘上刻有同样间距的透光缝隙,当测量盘随被测轴一 起转动时,每转过一个缝隙,由光源射来的光线就将照射到光敏元件上一次,这个光脉 冲将引起光敏元件的输出电脉冲,在孔数一定时,该列电脉冲数就和转速成正比。电脉 冲经测量电路整形放大后再送入频率计计数和显示,经核算或标定后,就可以得到一个 便于测量计数的信号,此时被测转速为n= f/N式中f测得的脉冲频率;N每转脉冲数,它等于圆周上之缝数。若在调制盘上开60个小孔,则可在1秒的记数值上直接读出转速大小。它可以测 量lr/min的
11、车速。如果开600个孔,则它的测量精度为0. lr/mino(2)反射式光电传感器在转轴上不便于安装测量转盘时,还可以采用在测量转轴上加反射镜的方法。在可 能时,为了提高分辨率,可以在转轴圆周方向等距贴数块反射镜。只有光线入射时,转 轴每转一周就有数次光反射作用。再用简单光学系统将反射光投到光敏元件上,就可以 输出相应的电脉冲。其它部分与透射式一样,通过测脉冲频率就可以求出转速。反射式转速表使用方便,它不给转轴带来附加载荷,可以在距被测物数十毫米外非 接触地测量其转速,但要求转轴不能太细,便于贴反射镜,它适于测量的转速范围为 30-4. 8X 105r/mino通过比较,可知透射式光电传感器比
12、反射式光电传感器的测量精度高,因而本设计 中我采用了透射式光电传感器,并且采用了 60条缝隙的测量盘。如图3.1所示,为透 射式光电转速传感器的结构原理图。光源缝隙光敏元件整形 放大测量盘 旋转轴图3.1透射式光电转速传感器的结构原理测量盘上具有相同间距的缝隙,当测量盘转动时,转过一条缝隙,光线便产生一次 明暗变化,使光敏元件感光一次,用这种结构可以大大增加转盘上的缝隙数,因此使每 转的脉冲数相应地增加。3. 1.3光电传感器的脉冲整形电路施密特触发器在脉冲的产生和整形电路中应用很广。施密特触发器是一种能够把输 入波形整形成为适合于数字电路需要的矩形脉冲的电路。而且由于具有滞回特性,所以 抗干
13、扰能力也很强。它可用于波形变换、脉冲整形以及脉冲幅度鉴别。下图3. 2为其应 用:图3.2施密特触发器的应用根据以上施密特触发器的应用特性,因而用施密特触发器作为本系统的主要脉冲整 形元件。图3. 3是本系统所采用的透射式光电测速脉冲整形电路图。每当旋转圆盘上的 长方孔与光电开关上的透光孔重合,则光敏三极管受光而通过电流,使三极管饱和导通, 故施密特触发器CD4093输出高电平,当圆盘转至透光孔被遮时,CD4093输出低电平。 随着圆盘不停地转动,CD4093便输出脉冲序列。测出输出脉冲个数,结合圆盘每一周 的孔数,使可算出旋转的转速及转角。图中的CD4093用于脉冲整形。图3. 3透射式光电
14、测速脉冲整形电路图单片机与光电传感器的接口设计单片机测量频率有两种方法:测频法和测周期法。测量频率就是在单位定时时间里 对被测信号脉冲进行计数;测量周期是在被测信号周期时间里对其一基准时钟脉冲进行 计数。测周期法常用于脉冲频率较低的场合,所以在本系统中我采用了测频法。测量频率最简单的方法是将被测信号整形为脉冲,然后连接到单片机的定时器/记 数器(T/C)的外部脉冲输入端,本系统中将被测信号脉冲AT89S51的T1端。可将 AT89s51的一个T/CO用作定时器,另一个T/C1用作计数器。在T/CO定时时间里,由 T/C1对频率脉冲进行计数。T/C1的计数值是单位定时时间里的脉冲个数。但应注意如
15、 下问题:(1)由于AT895S51对输入T/C的外部脉冲计数,是通过在每个机器周期的第 10个时钟周期对输入端T1采样,故需要两个机器周期(等于24个时钟周期)识别一 个脉冲的负跳变,每识别到一个脉冲的负跳变将计数器加1。因此被测脉冲的最高频 率必须小于= 此外,还要求被测频率脉冲的宽度应大于一个机器周期T。 本系统所采用的时钟频率强,为12 MHz,则被测脉冲的最高频率不应超过 Fmax = 12MHz /24=500kHz ;其宽度必须大于 7 = 12/人C =1外。(2)在定时记数时会出现如图3. 4所示的丢失脉冲的情况。第一个脉冲的丢失, 是由于开始检测时脉冲宽度已小于机器周期T;
16、第二个脉冲丢失是由于脉冲的负跳变在定 时之处出现。定时时间里出现脉冲丢失,将引起测量精度降低。脉冲频率越低,这种误 差越大。定时丢失丢失丢失图3. 4频率测量法的脉冲丢失为解决图3.4中第一个脉冲的丢失,可用门电路实现记数开始与脉冲上升沿的同步 控制。图3. 5是用AT80S51的T/CO作定时器,T/C1作计数器,对频率测量的接口电 路。图3. 5带同步控制的频率测量接口控制时,首先由PL6发一个清0负脉冲,使UI、U2两个D触发器复位,其输出 封锁与门G1和G2o接着由P1.5发一个启动正脉冲,其有效上升沿使Ql=l,门G1被开 放,使被测脉冲得以通过门G1,使Q2置为1,从而将门G2打开
17、。之后,被测脉冲上 升沿通过G2送T1计数;同时Q2输出的高电平使INTO=1,定时器0的门控GATE有 效,启动T/CO开始定时。直到定时结束时,从P1.6发出一个负脉冲,将U2清零,从 而封锁G2,使T/C1停止计数,至此一次频率采样过程结束。在本系统中亦,为汽车转 轴上安装的测量盘缝隙对应的频率,测量T/C定时时间为1S,这样长时间的定时,先 由T/CO定时100ms,之后软件循环10次来完成(10X100ms=ls)。T/C作频率脉冲的 计数器,若单片机工作在计数方式1,最大计数值为65536。若100ms计数65536次, 则脉冲的频率为655.36kHz,这已经超过了 AT89s5
18、1的计数器的最高频率500 kHz,能 够发挥出T/C的最大计数能力。T/C0定时100ms的计数初值设为3CB0H,并设定时器 /计数器方式字TMOD=59h。计数器1采用计数值满后自然清零再计数的方法。将T/C0设为高优先级,允许计数过程中定时中断,即定时时间到就中止计数。5.1 单片机与外部存储器的接口设计本系统采用的是串行EEPROM芯片24cl6, 24cl6的1-3脚分别为器件编址端AO、Al、 A2 (用于与系统中的同类器件编码),4脚为电源地,5脚为12c总线的数据线SDA,在系 统中与单片机的P1.3口相接,6脚为12c总线的时钟SCL,在系统中与单片机的PL4口相 接,7脚
19、为测试输入端,在系统中接地,8脚为电源。当时钟线SCL为高电平时,数据线 SDA由高电平跳变为低电平定义为“开始”信号;当SCL线为高电平时,SDA线发生低 电平到高电平的跳变为“结束”信号。在5脚SDA, 6脚SCL上分别接两个10K的上拉电阻,并外接了一个瓷介电容,当电 源正常供电时给电容器充电,电源掉电时,利用电容器电流将单片机中的数据写入 EEPROM 中。5.2 单片机与超速报警电路的接口设计本部分采用一个蜂鸣器和一个红色发光二极管与单片机的P1.0 口相接的报警实现 方式,。若实时的车速值与单片机设定的最大车速值相比较,当车速值大于最大车速值 时,通过单片机的软件中断请求,以1秒钟
20、为周期,从而实现PLO口高低电平的通断。当P1.0口为高电平时,输出正5V的电压,使红色发光二极管得以导通。而且电流由 另一条通路使NPN三极管导通,射极输出电流驱动蜂鸣器工作。当PLO为低电平时,则 不能使红色发光二极管和NPN三极管导通,因而不能工作。正因为PLO口高低电平的通 断作用,实现蜂鸣器的嘀嘀声及发光二极管的闪烁显示,从而实现了系统超速报警的功 能。其电路图如下图3. 6所示:图3. 6超速报警电路图单片机与键盘和7段显示器的接口设计本系统的键盘输入部分,采用2个功能键,用这2个键,既可以选择显示是单班里 程还是总里程。本系统采用的是常见的按钮开关。开关的接入方法是先将按钮开关的
21、状 态转变为逻辑电平,然后可直接接到单片机的某一条I/O线。但由于机械开关在状态转换时有信号的抖动,故在接入开关的同时一,必须考虑防抖动的问题。其图3. 7如下所示:+5V+5V图3. 7键盘输入电路图而七段LED显示器一般都是同时使用几个LED显示器,它有两种连用方法:一是每一 位都用各自的8位输出口控制,在显示某一字符时,相应的段恒定发光或不发光,这种 显示方法属于静态显示,它占用较多的I/O口线。二是动态显示,即将多个7段LED的段 选端复接在一起,只用一个8位输出控制段选,段选同时加到各个7段LED显示器上,通 过控制各个显示器公共阳极/阴极轮流接电/接地的方法,逐一轮流地启动各个LE
22、D。这 种方法中,只要恰当地选择点亮时间和时间间隔,就会给人以为是各位LED同时显示的 假象。这里使用了一个6位和一个4位动态显示的共阳极数码管显示器。其中LED显示器的段选码都由单片机的P0 口连接控制,4位LED显示器的位选码由单 片机的P2. 6和P2. 7口通过译码器74LS139控制,译码器74LS139对单片机的P2. 6和P2. 7口 分时选通,这样任何一个时刻,都只有一位LED在点亮,也即动态扫描显示方式。74LS139 是一个2-4译码器,它将单片机输出的地址信号译码后动态驱动相应的LED。但74LS139 的电流驱动能力较小,为此,使用了未级驱动PNP三极管C9015作为地
23、址驱动。而6位LED 显示器的位选码,则由单片机的P2.0至P2.5口控制。再通过软件编程,从而控制各自的 7节LED是否被点亮(由于本模块电路较大,就没有在这里列出,但可以参考本作品的完 整电路原理图)。4软件设计系统的主程序流程如图4. 1所示。图4. 1系统主程序流程图本系统的控制、运算和管理功能都要通过软件设计来完成,本系统采用模块式设计 技术来进行软件设计,整个软件在功能上可分为初始化模块,键输入和键处理模块,脉 冲计数处理模块,显示模块,段码表子程序块,存储模块。AT89s51单片机硬件中断人口地址为0013H,并且在这里按键输入、显示子程序和脉 冲计数均用到了T/C(计时/计数器
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 里程表
限制150内