文章正文

诗词 散文 小说 杂文 校园 文苑 历史 人物 人生 生活 幽默 美文 资源中心小说阅读归一云思

汽车智能里程表设计

时间:2023/11/9 作者: 新生代 热度: 14939
刘鼎 李刚 康晟祥

  廊坊某预备役保障旅 河北廊坊 065000

  在世界进入数字化时代生活的今天,车用仪表数显技术将是新世纪汽车发展的必然趋势。新概念的车速里程表最直观的变化就是用大屏幕的液晶取代指针式表盘,直接用数字显示时速、里程。

一、智能里程表的开发方案

汽车仪表不仅要向高精度、高可靠性方向发展, 而且更需向多功能方向发展。在以单片机为核心的汽车仪表中,出现了各种附加功能的里程表。在时速部分,采用显示屏代替了表盘;里程部分,不仅可以显示累计里程、本次里程,还可以显示某一时间段内的历程;另外,还可以加入计价器部分,显示计费金额、单价、时间等。

  经过谨慎考虑,本系统解决方案如下:处理器选用80C51单片机,硬件电路包括电源部分、霍尔传感器速度测量和里程测量部分、数据显示部分、时钟部分、超速报警部分、票据打印部分和数据存储部分等组成,根据目前的硬件资源和对每个设计环节的考虑,主要涉及以下几项技术:以霍尔传感器为核心的信号采集电路、电源电路、时钟电路、数据存储电路、显示电路的制作与实现。

二、系统总体结构

本系统以80C51单片机为核心,霍尔传感器采集信号并传输给单片机,MAX7219驱动LED进行显示。本系统所能实现的功能有七个,分别是:时速的测量和显示、累计里程的测量和显示、本次里程的测量和显示、计费金额的计算和显示、实时钟显示、打印发票和超速报警功能。

  2.1 系统硬件组成框图

  

  图1 系统总体结构图

  系统总体结构图如图1所示,80C51单片机为本系统的核心部分,霍尔传感器实现信号的采集并传输给单片机,然后进行显示;另外又设置了实时钟电路和存储电路。电源部分采用+5V电源供电,有专门的电源电路。但在实际调试过程中,由于设备条件和环境的限制,我们用两节5号电池代替了电源电路。

  2.2 程序设计流程图

  图2为系统流程结构图,汽车启动后,也就是系统上电复位后,单片机对各芯片进行初始化,同时传感器采集信号传输给单片机,单片机经过计算驱动显示芯片进行显示。本设计用C语言编程,各部分子程序在以后的章节中都有介绍。

  软件设计可以分为以下几个模块:主程序模块,主要包括对个接口芯片的初始化、汽车起步价和单价的初始化、各中断的初始化等。另外,还需要设置启动清除标志寄存器、里程寄存器、速度寄存器、价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程、计速、计价等不同操作。主程序流程图如下所示。

  

  图2 系统流程结构图

  3.霍尔速度传感器技术

  随着电子技术和数字化技术的发展,转速传感器的形式也多种多样,目前常用的转速传感器主要有以下几种:磁电式转速传感器、光电式转速传感器、光断继器式转速传感器、离心式转速传感器、霍尔转速传感器等。霍尔速度传感器为轴速度测量提供了坚固的、低成本解决方案,它以检测磁场的原理工作,具有防尘、防油和防其它会造成光学传感器严重故障的污染。此外,由于强磁场(超过100高斯)通常很少在自然界中存在,磁场速率传感器不受偶然触发和其它形式的干扰,所以一直被广泛应用于车辆的自动控制系统中。

  4.单片机选择原则

  单片机的选择要应遵循下列原则:优先选择熟悉的机型(CPU),同时兼顾跟上单片机发展的新技术;优先选择能满足所要开发的系统在功能和性能上对单片机的要求;优先选用编程方便且有较好开发环境的单片机;优先选用参考资料丰富、货源充足、购置方便、供应商售后服务好、价格廉的单片机。由于ATMEL公司的80C51单片机基本具备以上所述性能,且根据应用系统本身控制功能和性能要求以及自身的一些实际情况,本系统选则80C51单片机。

  5.软件编程设计

  单片机软件编程主要涉及到计价器部分、中断、定时等子程序。

  计价器部分主要实现的功能有显示本次里程、金额、时钟,超过时速60公里时具有报警功能,乘客下车时具有打印发票的功能。基本要求是在三公里内起步价为5元,超过三公里后每公里按1.6元计算。当出租车停下等待时,时间超过10秒后开始计费,为0.5元,以后累加,当等待结束后,就正常计费。以下为各部分的编程思想。

  5.1 本次里程的编程思想

  当乘客下车时,司机抬起空车灯,系统用P2.1脚外接点触式开关来清零本次里程。当又有乘客上车时,司机按下空车灯,系统开始记录脉冲个数,并从零开始记录里程,以后的编程与累计里程相同。在本设计中,用一个按键来控制是显示本次里程还是累计里程。P2.2引脚接入了一个按键开关,当P2.2引脚为高电平时,说明显示本次里程;当为低电平时,说明显示累计里程。本次里程流程图如下所示。

  

  图3 本次里程流程图

  5.2 计费金额的编程思想

  当没有乘客时,系统显示时间;当乘客上车后,空车灯按下,系统自动显示起步价的计费金额,以后将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将当前累计价格送显示电路显示出来。在等待时,计数器处于计数状态,若超过等待时间,则按等待时间的计费标准累加。当到达目的地的时候,由于霍尔开关没有送来脉冲信号,就停止计价,显示当前所应该付的金额到下次启动计价时,系统自动对显示清零,并重新进行初始化过程。乘客下车时,打印机将打印发票给乘客;另外,当司机超速时,系统程序中通过软件检测行驶速度,就以红色LED显示,乘客观察后可以提醒司机不要超速行驶,以避免交通事故发生。流程图如下所示。

  

  图4 计费金额流程图

  5.3 几个关键子程序的设计思想

  a) 里程计数中断服务程序

  每当霍尔传感器输出一个低电平信号就使单片机中断一次,当计数器T1对脉冲计满4992次时,就有程序使微机进入里程计数中断服务程序中,将当前总额、累计里程、本次里程累加计算并存入RAM单元中,并调用显示子程序,刷新LED数码管进行显示。

  b)定时中断服务程序

  在定时中断服务程序中,定时器T0每50ms产生一次中断,再循环20次即可得到1s的定时,就有程序使微机进入时速中断服务程序,计算当前时速并存入RAM单元中,调用显示子程序,刷新LED数码管进行显示。

  当出租车在等待时,T1处于计数状态,这时定时器T0开始计时,当计满10s时,就对当前金额加上中途等待的价钱,然后调用显示子程序,刷新LED数码管进行显示。以后每10s钟都自动加上中途等待的价钱,当等待结束后,也就自动切换到正常的计价。

  c)键盘服务程序

  本设计在P2.1脚接入一个点触式开关,用于本次里程的清零;在P2.2脚接入一个按键开关,用于选择是本次里程还是累计里程。键盘采用查询的方式,当没有按键按下的时候,单片机循环主程序,一旦按键按下,便转向相应的子程序处理,处理结束再返回。

结论

在整个系统的硬件和软件结构中,除了对80C51的应用外还涉及到了霍尔传感器的应用,也就是霍尔传感器的组成原理;对于显示模块的控制,主要是MAX7219的应用。系统除了一般的显示时速、累计里程、计费外,还具有超速报警和打印功能。经过系统调试、电路实验验证以及整机脱机测试,证明其是可行的。另外稍加扩展,该智能里程表系统还可与其它汽车仪表系统相连接,具有一定的推广价值。
赞(0)


猜你喜欢

推荐阅读

参与评论

0 条评论
×

欢迎登录归一原创文学网站

最新评论