时间:2024-07-28
杨兴山,汪激,刘寅
汽车仪表是汽车的重要组成部分。汽车仪表的作用是帮助驾驶员随时掌握汽车主要部分的工作情况,及时发现和排除可能出现的故障和不安全因素,以保证良好的行驶状态。在汽车驾驶室的仪表板上装有各种指示仪表及各种报警装置(1)。
目前,汽车仪表从最初的基于机械作用力而工作的机械式仪表、基于电测原理的电气式仪表发展到以动磁式机心或动圈式机心为主的模拟电路电子式仪表,到最新的步进电机式全数字汽车仪表,汽车仪表正向数字化和智能化方向发展(2)。 本文顺应上述趋势, 以NEC公司的uPD78F0433为主控制器,设计了一款基于嵌入式的智能化汽车组合仪表。
汽车仪表主要有车速、转速、水温、燃油和里程等 5个指示,另外还包括一些如低油量、高水温、安全带未系等报警指示灯,报警指示灯的数量根据汽车的档次来决定,高档汽车会有更多的报警指示灯。本仪表的电气原理图如图(1)所示,在该设计中,车速、转速、水温和油量采用步进电机驱动指针显示,总里程和里程小计采用字段式LCD显示,并具有重要数据掉电保护功能,能实现高水温和低油量的报警。
本仪表选用的是日本NEC公司的uPD78F0433芯片,该芯片是一款8位微控制器,内置32K单电源Flash存储器和1KB数据存储器,具有片上调试功能,内置看门狗定时器,内置LCD控制器/驱动器(可驱动20*8的字段式液晶模块),2通道UART,6通道10位逐次逼近类型A/D转换器,1通道16位定时器和6通道8位定时器,是一款性价比较高的8位微控制器。
图1 仪表的电气原理图
仪表电源原理图如图(2)。本仪表的工作电源由蓄电池(VBAT)和点火信号(IGN)提供,其操作电压在 9V到16V之间,通过电源电路的转换给uPD78F0433提供5V工作电压。
图2 仪表电源原理图
仪表电源模块选用的是TI公司的TLE4275-Q1,该芯片最大可以驱动450mA,精度是2%,输入的最大耐压为42V,芯片前加一个103电容,可以降低浪涌对芯片的冲击。同时,该芯片还有一个复位端口,当输入的电压小于 5V,复位端口将发出一个信号给仪表主控芯片。在芯片的输入端口有一个470uF的电容,根据规范可知,当电源掉电后,约为10ms的延时时间,使得EEPROM拥有充分时间可以本分仪表的相关信息[3]。
当点火信号灭时,由蓄电池给仪表供电,此时仪表的主芯片进入低功耗模式(HALT模式),LCD不显示,四个步进电机指示回零。
进入仪表的车速信号和转速信号是不同频率的脉冲信号(数字信号),通过检测脉冲信号的频率来确定汽车的车速和转速。车速和转速信号调理电路如图(3)所示。
图中 SPEED是车速信号,TAC是转速信号,SPEED_TEST是经过调理电路后的车速测试信号,TAC_TEST是经过调理电路后的转速测试信号,IGN是点火信号。
图3 车速和转速信号调理电路
进入仪表的油量和水温是不同阻值的电阻信号(模拟信号),通过电路检测不同的电压值来确定汽车的油量和水温。油量和水温信号调理电路如图(4)所示。
图4 油量和水温信号调理电路
图中FUEL是油量电阻信号,TEMP是水温电阻信号,FUEL_TEST是经过调理电路后的油量测试信号,TEMP_TEST是经过调理电路后的水温测试信号,IGN是点火信号。
本仪表采用步进电机驱动芯片STI6606驱动4个步进电机,如图(5)。该芯片是一款专为驱动微型步进电机而设计的CMOS集成电路,每个驱动芯片可同时驱动四路电机,驱动电路把脉冲列转换成一个电流等级序列送到电机的线圈。序列用来产生电机微步运动[4]。
在驱动芯片的频率控制端输入脉冲序列F(scx),输出端可以控制步进电机的输出轴以微步转动,每个脉冲对应电机输出轴转动1/12°,最大角速度可达600°/s。
该芯片适用于相位差为60°的两相永磁仪表步进电机,如伟力公司的VID29系列仪表电机等。
本仪表有车速、转速、水温和油量四个指示是通过步进电机驱动指针显示,所以只需要一个电机驱动芯片STI6606即可。
图5 步进电机连接方式
仪表中有一些数据是非常重要的,如一些软件滤波参数,车速、转速、温度和燃油的标定值,以及累计里程的数据,这些数据是不能丢失的,所以需要将他们存储在EEPROM中,以防掉电后丢失。
EEPROM是指电可擦写可编程只读存储器,是一种掉电数据不丢失的存储芯片,其可通过高于普通电压的作用来擦除和重编程。本仪表选用的EEPROM是ATMEL公司的24C04芯片,可以存储512个8位字节共4K的数据。EEPROM和单片机之间的具体接线方式如图(6)所示,EEPROM的时钟信号SCL0和数据信号SDA0与uPD78F0433的I/O口相连,通过单片机的I/O口来模拟IIC总线的时钟线和数据线,达到读写EEPROM的目的。
图6 保存数据电路原理图
本仪表中的主芯片uPD78F0433内置LCD控制器/驱动器,该驱动器有如下特点:(1)LCD驱动器的参考电压发生器可转换外部电阻分压和内部电阻分压。(2)基于自动读取存储器显示数据,自动输出segment和common信号。(3)有6种不同的显示模式。(4)每种显示模式都有6中不同的帧频率5。
本仪表的软件采用C语言,多文件模块化编程方式。模块之间通过参数传递信息。如图(7)是汽车组合仪表的整体软件流程图。系统初始化之后仪表判断是否热启动,如果是热启动,则判断点火开关是否打开,点火打开后仪表进入正常工作状态,会进行写EEPROM、AD转换、车速计算、转速计算、温度计算、燃油量计算和报警条件等标志位的判断,从而进入相应的子程序,完成相应的功能模块。
本仪表具有待机功能,如果仪表不工作,仪表主芯片将进入低功耗模式(HALT模式),在HALT模式中,主芯片的操作时钟停止,可以减少系统的工作电流,从而节省对蓄电池的消耗。当外界有中断服务请求时,主芯片可以立即重启操作,达到正常工作的状态。
图7 汽车组合仪表软件流程图
本文介绍了一种性价比较高的步进电机式汽车组合仪表设计方案,用字段式LCD显示里程,步进电机驱动指针显示车速、转速、水温和燃油量,具有低油量和高水温报警,对重要数据具有掉电保护功能。经过测试,本仪表达到了国家要求的显示和指示精度要求。
[1] 李延亮,高秀华,成凯.汽车电子技术[M] .北京:化学工业出版社.2005.
[2] 蒋志雄,黄河.基于H8/3802的步进电机式汽车仪表的开发[J] .微计算机应用,2006(1).
[3] 周木金.基于MC9S12HZ256的汽车组合仪表设计[J] .自动化与仪表,2009(3).
[4] 张俊.匠人手记—一个单片机工作者的实践与思考[M] .北京:北京航空航天大学出版社,2008.
[5] 佟国香.基于单片机的嵌入式系统开发[M] .北京:经济管理出版社,2007.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!