资源描述
I摘要汽车仪表是指示车辆信息的重要窗口,对汽车的行驶安全具有重要的作用。本课题所研制的步进电机指针式仪表主要是针对城市公交车。本文分析了城市公交车组合仪表系统的主要功能,并根据这些功能制定了组合仪表的总体设计方案。在硬件设计中,使用两片 Freescale 公司的 MC9S12HZ256 微控制器作为控制核心。仪表中使用了 7 个步进电机来指示车辆的信息;同时使用液晶显示模块来显示城市公交车运行中的里程数;仪表接入整车 CAN 网络,使车辆的数据实时显示在仪表中。在控制软件设计中,使用了 MC9S12HZ256 的步进电机失步检测模块对步进电机进行归零操作,使步进电机更快的回到零刻度点;系统对脉冲量和模拟量采样采用了数字滤波法,使获得的采样信息更为准确可靠。在仪表系统调试方面,使用组合仪表与硬件在环仿真系统和整车控制器组成 CAN 网络对组合仪表 CAN 总线功能进行调试,调试结果表明步进电机指针式指示准确,CAN 网络工作正常。本课题研制的城市公交车组合仪表具有很好的兼容性,通过适当的修改就可作为其它类型客车的仪表使用。关键词关键词:汽车仪表;步进电机;CAN 总线 IIAbstractAutomotive instrument is an important interface to display the information of the vehicle, which is of great importance to the safe driving. In this paper the stepper motor pointers instrument that is developed is a new instrument developed mainly for city bus.The paper analyzes the main function of city the hybrid bus instrument system, which that the overall design of the instrument is made is based on. In the hardware design, two Freescale MC9S12HZ256 micro-controllers are used as the control core. Seven stepper motors are used to display the information of the vehicle. An LCD module is used to display the ?. the vehicle is linked into the CAN bus,which makes that the instrument can communicate with the vehicle control information available. In the software design, Stepper Stall Detector module of MC9S12HZ256 is used to make the stepper motor return to zero faster, more accurately. The digital filtering method is used in pulse sampling and analog sampling, so that the information obtained by sampling is more accurate and reliable. In the instrument system debugging, the instrument, the hardware-in-loop simulation system and the Vehicle Control Unit are composed of the CAN bus network by which the CAN function of the instrument is debugged . The debugging results show that the stepper motor pointers indicate accurately and the CAN network works well.The instrument that is developed in the subject has a good compatibility,which means that it can be used in other buses by amending some hardware and software of the system.Key word: Automotive instrument; Stepper motor; CAN bus III目录城市公交车组合仪表.I摘要.IAbstract.II1 绪论.11.1 汽车仪表的历史.11.2 汽车仪表的现状.21.3 课题的研究背景和意义.31.4 课题来源及研究的主要内容.42 系统总体方案设计.52.1 系统主要功能.52.2 系统总体方案.52.3 系统关键技术.63 系统硬件设计.73.1 系统主要器件选择.73.1.1 主控制器(MCU)选型.73.1.2 步进电机选型.103.1.3 液晶显示模块选择.123.2 系统硬件电路设计.123.2.1 系统电源电路.133.2.2 单片机最小系统.153.2.3 SCI 串行通讯接口电路.173.2.4 液晶模块接口电路.183.2.5 步进电机接口电路.203.2.6 CAN 模块电路.213.2.7 系统采样电路.22 IV4 系统软件设计.264.1 主程序模块.264.2 步进电机控制模块.284.2.1 步进电机驱动控制.284.2.2 步进电机归零控制.314.3 液晶显示模块.344.4 CAN 模块.344.5 采样模块.365 系统调试.395.1 仪表刻度盘的标定.395.2 组合仪表 CAN 总线调试.405.3 CAN 总线调试结果.426 结束语.46致谢.47参考文献.48 11 绪论汽车仪表是指示车辆信息的重要窗口,对汽车的行驶安全具有重要的作用1。1.1 汽车仪表的历史自 1886 年汽车诞生以来,汽车走过了 100 多年的发展历程。汽车的出现和发展,使汽车仪表也在不断开发和发展之中。随着光学、电子技术的迅速发展,特别是计算机技术在汽车仪表中的广泛应用,汽车仪表正向数字化和智能化方向发展。汽车仪表的发展趋势,从一个侧面反映出汽车电子化水平的快速提高。根据仪表的工作原理、内部结构和显示方式,汽车仪表的历史发展过程可以分为以下四个阶段2:(1)传统仪表阶段(第 1 代) 。这一阶段是从 20 世纪初到 20 世纪 30 年代,在此阶段中汽车开始安装各种仪表,如车速里程表、水温表、燃油表、机油压力表、电流表(电压表)和发动机转速表等,这些确定了现代汽车仪表板的基本结构。这一阶段汽车上的传感器和仪表基本上都是机械式电磁机械式的,是基于机械作用力而工作的机械式仪表,所以也称机械机芯表。这种汽车仪表功能单一,仅仅显示传感器的信息以向驾驶员提供自身的状态参数,更多的是为安全性着想,信息量少,整个仪表系统的精度低,可靠性较差,体积较大,视认性不好,容易使驾驶员疲劳。(2)电气式仪表阶段(第2代) 。这一阶段从40年代到50年代,仪表功能实现不再仅仅依靠机械作用力,而是基于电测原理,即通过各类传感器将被测的非电量变换成电信号加以测量,称之为电气式仪表。电气式仪表中常用的是磁电式仪表,其作用原理是永久磁铁在气隙中产生的磁场和可动线圈通入电流后,相互作用而产生的旋转力矩。磁电式仪表多用于测量电流和电压,加上变换器可以进行多种非电量的测量,如温度、压力等。磁电式仪表的性能稳定,读数精确,量限多,使用方便,适应于直流电路的精密测量和实验室中的标准测量仪表。但是其存在的最大缺陷就是随着环境温度的改变,测量误差变大。 2(3)现代电子仪表阶段,也称模拟电路电子式仪表(第 3 代) 。其工作原理与电气式仪表基本相同,只不过是用电子器件取代原来的电气器件。其出现的时间大致在20 世纪 50-60 年代。随着集成电路技术突飞猛进的发展,这种仪表现在均采用汽车仪表专用集成电路,是国内汽车仪表目前主流产品,目前国内大多数汽车还是采用这种结构的仪表。经过多年的发展,其结构形式经历了动圈式机心和动磁式机心阶段,围绕着提高指示精度和指针平稳性,动磁式代替了动圈式。(4)步进电机式全数字汽车仪表(第 4 代) 。全数字式汽车仪表在国外从 80 年代末就己经开始研究,在国内直到最近才开始对其重视。从其应用技术手段上看,还是电子技术范畴,也属于电子式仪表,但是信号传输方式已经从模拟信号变成数字信号,并朝着数字化、智能化、网络化、虚拟化方向发展。与传统的模拟仪表相比较具有:使用寿命长、精度高、可靠性好、抗干扰性强等特点。1.2 汽车仪表的现状汽车仪表正在经历由第 3 代向第 4 代转型时期。严格地说,第 4 代全数字式汽车仪表从其应用的技术手段上看,还是电子技术范畴,也属于电子式仪表,但信号处理方式已从模拟变成数字。仅凭信号处理方式的改变还不足以将全数字式汽车仪表划分成一个新阶段,其最显著的特征是工作原理与第 3 代汽车仪表完全不同。汽车仪表电子化的时代在 20 世纪 70 年代到来,随着半导体技术及显示设备技术不断进步和成本的下降,汽车电子显示仪表问世。但是这种电子式仪表只是“数字显示”形式的汽车仪表,虽然该种仪表的工作方式是全数字式,并且技术水平和仪表的性能也远远超过了第 3 代汽车仪表,但其致命的缺点是只能显示一组孤立的数字,没有动感,在被测物理量(如车速、发动机转速)发生变化时,只有数字翻动,而没有指示上升、下降的直观感,再加上读数时间比较长,容易分散驾驶员的注意力等,并没有大量的在各类汽车中普及使用3。本文所研制的步进电机式汽车仪表由ECU完成各种被测物理量的采集,经过换算后直接控制步进电动机,再由步进电动机驱动指针,在刻度盘上指示被测物理量,同时辅以被测物理量LCD数字显示。其主要优势体现在如下几个方面:(1)指示精度高 48。城市公交车组合仪表采用步进电机作为指针驱动设备,有 3良好的线性度,可在准确的指示车速传感器采样的车速值。(2)分度均匀,重复性好。步进电机式汽车仪表完全可以实现在整个指示范围内分度均匀一致。城市公交车组合仪表采用步进电机驱动仪表指针 3,步进电机是一种数字器件,其转动的角度与控制器发出的脉冲数成正比,有良好的线性度,因此可以均匀分度仪表盘。 (3)适用范围广,可满足多种不同车型的需要。城市公交车组合仪表机芯是一种基本上能满足所有车型的通用机芯,只要在软件中针对不同车型做适当的修改,便能满足其要求,能最大限度地缩短产品开发的时间和费用,避免可能出现的技术风险9 。(4)连接入整车 CAN 网络,显示信息更为丰富。城市公交车组合仪表配备了 CAN控制器和 CAN 收发器,根据仪表软件设置,可接收到汽车上其它的电子设备的信息,作为车辆信息显示和故障指示的综合平台。步进电动机式汽车仪表在欧、美、日本等汽车工业发达国家应用已相当普及,其仪表的发展向全液晶显示式的仪表发展,乘用车的仪表板也向着多媒体综合娱乐中心的方向发展。目前,国内部分中、高档轿车,如一汽红旗世纪星,上汽帕萨特、赛欧、奇瑞,长安世纪星等均配套使用步进电动机式汽车仪表。其它型号的轿车急需配套该类型的仪表,如捷达、富康等。供应国内轿车步进电动机式汽车仪表主要是德国 VDO公司和美国德科公司。我们有充足的理由相信,步进电动式汽车仪表将是未来一段时间内汽车仪表的主导产品,具有不可估量的发展前景。1.3 课题的研究背景和意义至今汽车走过了100多年的发展历程,作为现代汽车关键零部件之一,现代汽车仪表将广泛采用电子与计算机技术,使之成为现代汽车的信息和控制中心。它主要集中反映汽车行驶速度、里程累计、电系状况、制动、发动机转速、压力、冷却液温度与存量、然油量、指示灯状态,以及车辆行驶过程外部环境条件、位置、行驶路线和导航信息,是一个集感觉、识别、情况分析、信息库、自适应和自控制六大功能与一体的显示汽车行驶时各种参数、保证安全驾驶的智能化辅助系统。由于现代汽车仪表所要显示的内容和信息种类越来越多,精度越来越高,传统电气 4式仪表难以满足更高层次要求,因而汽车仪表的电子化和数字化将成为必然趋势。90年代,国外制造商为了克服电气式仪表的原理误差和工艺误差,纷纷推广采用电子式仪表,首先将传感器的模拟信号数字化,如将驱动车速里程表的软轴或电机变换成霍尔传感器,将机械传动或电量转动变成数字电信号传输。其次是将磁感应指示模块变成数字显示形式,里程累计由蜗杆传动变成由步迸电机驱动或直接数字化显示。随着信息技术的高度发展,汽车仪表已从单个仪表电子化迈向集成化和系统化10。步进电机数字汽车仪表比较传统的模拟仪表有着无可比拟的优势。步进电机数字汽车仪表采用 CAN 总线技术完成汽车仪表与汽车各电子设备之间的通讯,可以掌握大量的有关车辆状况的信息,其所显示的信息量是传统仪表无法完成的。步进电机数字汽车仪表采用步进电机驱动指针,其在响应速度、均匀分度、可靠性方面都有很好的提高,同时也减少了指针的抖动。步进电机数字汽车仪表使用液晶显示,使显示的信息内容更加丰富,给驾驶员一个很好的了解车辆状况的窗口。因此对步进电机数字汽车仪表的开发和研制对汽车信息化发展有着重要意义。1.4 课题来源及研究的主要内容随着汽车技术的飞速发展,对仪表的智能化程度提出了较高的要求,如城市公交车的仪表总成中,需要根据接收到的数字化信息或采集到的传感器信号,采用传统的汽车仪表方案远远不能达到应用要求,且根据城市公交车的总体控制需求,各单元模块全部实现了电子化和智能化控制,如整车控制器、电机控制单元等,相互间构建了CAN 总线网络信息平台,实现了大流量的数据信息交互,开发具备标准 CAN 总线接口的城市公交车仪表总成,可彻底改善传统汽车仪表中因大量线束造成的信号传输线路多、电磁干扰大、系统接口复杂等缺点,并具备可靠性高、兼容性好、系统扩展能力强等特点。本课题仪表的主要结构应包含步进电机驱动的指针仪表盘,CAN 网络通讯端口,里程表等。本课题研制的城市公交车组合仪表系统采用两片美国 Freescale 公司的 16 位微控制器 MC9S12HZ256 为主控芯片,主要研究内容包括:(1) 车速表、燃油量表、机油压力表、水温表等 7 个步进电机指针仪表的控制。(2) 车速、油压等脉冲量、模拟量的采样,并实现采样值和仪表刻度值之间的转 5换和指针指示;LED 背光、指示灯灯光等一些开关量的检测和控制。(3) CAN 网络通讯。 62 系统总体方案设计2.1 系统主要功能本课题所要研制的组合仪表主要应用于城市公交车上,因此其主要功能也为满足城市公交车辆状态参数的显示。组合仪表系统的主要功能包括:(1)实现传统的指针式仪表的基本功能,实现车速表、水温表、机油压力表、蓄电池电压表、燃油量表等 7 个指针式仪表的准确指示。(2)完成 CAN 总线通讯功能,车辆上的其它电子控制设备通讯,采集车辆信息。(3)实现车辆里程计算,采用数字 LCD 进行里程显示。本课题所要研制的城市公交车组合仪表的大部分数据是通过 CAN 总线与整车控制器和其它的城市公交车电控单元进行数据交换,获得这些数据。为了使该款仪表能适应不同类型城市公交车的要求具有更为广泛的适应性,该款组合仪表还要具有直接从传感器获得其它的一些信息的能力。2.2 系统总体方案根据组合仪表系统所要完成的主要功能和兼容其它类型城市公交车仪表的需要等方面的考虑进行仪表系统总体方案的设计。仪表系统总体结构框图如图 2.1 所示。组合仪表系统需要控制对 7 个步进电机进行控制,分别用于指示车速、水温、燃油量、蓄电池电压、油压等信息。采用一片 Freescale 公司的 MC9S12HZ256 单片机无法满足应用要求,因此采用两片单片机为主控单元,对传感器信号进行采集。主控制器对所采集到的信号进行处理通过步进电机实现传统的指针式仪表的驱动,通过液晶显示模块信息输出,增强信息显示效果。 7图 2.1 仪表系统总体结构框图 2.3 系统关键技术城市公交车组合仪表研制中需要解决的关键技术问题主要有以下几个方面:(1)组合仪表中用于指针控制的步进电机驱动技术:两片单片机对 7 个步进电机的实时控制。断电指针归零;通电指针归零检测;步进电机驱动过程中进行调速,使步进电机达到较为理想的运行模式。(2)液晶屏显示控制及车辆实时工况的分析和状态指示:对微控制器采集到的数据进行数字化显示。(3)数据采样和仪表盘标度:对脉冲量、模拟量、开关量进行准确的采样并把采样数据根据仪表盘刻度转换为步进电机步距值。(4)组合仪表的 CAN 总线通讯:使组合仪表能与城市公交车的各个电子模块进行通讯,准确反映车辆的信息。 83 系统硬件设计组合仪表硬件是实现组合仪表功能和软件设计的基础,优良的系统硬件设计可以大大的减化系统软件的代码,使组合仪表工作的更有效率。在系统硬件设计中,主要为系统主要器件的选择和各个主要电路接口的设计,而对组合仪表系统中主要器件的选择决定了各主要电路和接口的设计。3.1 系统主要器件选择本课题所研制的城市公交车组合仪表系统中的主要器件包括:微控制器、步进电机、液晶显示等。微控制器作为主控单元控制仪表的数据采集、步进电机驱动、液晶模块控制、CAN 网络通讯;步进电机是仪表的指针驱动设备,用来驱动车速表等仪表指针。3.1.1 主控制器(MCU)选型系统MCU的选型在整个方案设计中至关重要,是主要功能实现的关键元件,并直接关系到外围元器件的配置要求和整体方案的可实现性。系统性能的稳定性、功能需求的可靠性以及市场定位要求和合理的经济性都是在MCU方案选择中必须考虑的。选择的MCU过于昂贵,即使性能良好也会因为价格的原因而失去市场;系统方案满足实验室台架试验,其价格也比较合理,但却不能满足汽车电气设备基本技术条件(QCT413-2002)中的振动、高低温、耐酸等试验,这同样会使你的开发方案失去价值。所以在进行开发方案系统设计时,选择适合本系统的MCU是开发方案成功的重要一步11。针对本系统要完成的各种功能,要在众多的汽车仪表专用单片机中选择一款,就需要考虑到该款汽车仪表用单片机的经济性和实用性,既能完整的实现要汽车仪表系统要实现的各种功能又要考虑到系统的开发成本和开发的方便性。美国飞思卡尔(Freescale)公司的 16 位 MC9S12HZ 系列单片机性能强大,而且价格适中,根据MC9S12HZ 系列的片内资源选择了 MC9S12HZ256 单片机作为系统的主控制器1215。MC9S12HZ256 单片机具有以下特点: 9(1) 低功率消耗只对输入时钟进行2分频,避开了功耗更大的高频电路,总线速率为8MHz时,只需使用16MHz晶体。此外,还具有WAIT和STOP模式进一步降低功耗。它还可以使用低频率晶体(例如32K)的节能方式,通过PLL倍频后供MCU使用。程序可控制PLL在满足要求的前提下尽量降低时钟速率,自动平衡性能与功耗之间的关系。(2) 兼容性CPU12完全兼容HC11的源程序,多数指令汇编后生成相同的目标代码它的程序设计模型与中断相应的堆栈操作顺序与HC11完全相同。此外CPU12增加了不少新的指令。(3) 提高速度CPU12是16位的处理器,ALU在某些运算中为20位。MC9S12内部所有数据总线为16位,外部总线可扩展为16位工作方式,也可以扩展为8位工作方式,这样可用8位的存储器件构成低成本的应用系统。即使选择了这种8位的工作方式,CPU12仍然按16位方式操作,智能总线接口自动将其分成两次8位操作,期间暂时冻结CPU。其次,CPU12具有一个类似流水线的指令队列,用于缓冲指令代码。CPU开始执行任何一条指令时,除了8位操作码以外,至少另外两个字节的目标代码对CPU可见。这意味着对于多数指令来讲,开始执行时,所需代码已经进入CPU,可在单个周期内完成,而无需等待取指令操作。取指令操作固定按照16位进行,与指令代码长度无关,因此不要求代码长度是偶数字节,从而提高了代码效率。CPU12的指令队列逻辑和微代码使对齐的和非对齐的指令执行时间完全相同。(4) 片内集成32KB的闪速存储器(FLASH)和2KB RAM近年来,随着闪速存储器在微控制器片内的应用走向成熟,微控制器的开发、应用又迎来了一次新的飞跃。FLASH是一种非易失性存储介质,读取它的内容同RAM的读取一样方便,而对它的写操作却比EPROM还要快。同时在系统掉电后,FLASH中的内容仍能可靠保持不变。FLASH的主要优点是结构简单、集成密度大、成本低。由于FLASH可以局部擦除,且写入、擦除次数可达数万次以上,从而使开发微控制器不再需要昂贵的仿真器。2KB的RAM使得CPU能够适应大多数中高级系统的需求。(5) 应用锁相技术提高了系统的电磁兼容性在以往不使用锁相环的微控制器应用系统中,晶振电路由于其工作频率比较高 10(通常从几兆赫兹至几十兆赫兹)而成为一个很大的干扰源,这一问题给系统设计、线路板布局带来了很多不便。MC9S12的时钟发生系统中巧妙地使用了锁相技术,因而可在外接几十千赫的外部晶振情况下,通过软件编程产生几兆的系统时钟,从而降低了对外辐射干扰,提高了系统的稳定性。(6) 背景开发模式简单的背景开发模式(BDM)使得开发成本进一步降低也使得现场开发和系统升级变得比较方便。(7) 硬件断点如果程序位于ROM中,调试过程需要使用硬件断点逻辑。HCS12可以提供两个普通断点,或者一个包括16位地址、16位数据及读写信号R/W的条件断点。断点处理方案包括在匹配地址前停止CPU或者产生软件中断SWI。双地址断点模式下,通过SWI可以为ROM中的程序作两个软件补丁。例如在初始化阶段对断点逻辑进行设置,使它在遇到错误地址时产生SWI,SWI服务历程可以调用安排在EEPROM中的补丁程序,替代受损的指令序列最后跳转到错误指令序列后面继续运行。(8)集成丰富的外围资源除集成FLASH和内部RAM以外,该芯片还集成多种功能模块:定时器子系统:由16位自由计数器、中断逻辑等组成,具有8通道的控制输入端输出和6通道的控制输出端。脉冲累加器:可用于外部事件计数或者引脚脉冲宽度测量。A/D转换器:10位8通道,最小转换时间在8s以下,精度1个LSB,采用全电容电荷再分配技术,无需采样保持。串行接口:包括同步串行设备接口(SPI)和异步串行通信接口(SCI)SPI的从机最高位速率为2.1Mb/s,主机最高位传送速率为1.05Mb/sSCI波特率及帧格式可软件设定,可产生11038400之间的所有标准波特率,可选8/9位UART及硬件奇偶校验。运行监视电路:即时钟监视器和看门狗电路(COP) ,若内部时钟低于10KHz,时钟监视电路自动将复位端拉低,强制MCU复位。若因为干扰等原因,CPU运行过程中没有按时复位看门狗电路,CPU的复位端也被拉低,强制复位,使MCU自动重新启动。两种监视措施均可通过软件禁止或启用。综上所述本课题选择 MC9S12HZ256 单片机为佳。图 3.1 是 MC9S12HZ256 的功能 11模块框图22。图 3.1 MC9S12HZ256 功能模块框图 3.1.2 步进电机选型步进电机是纯粹的数字控制电动机2325。它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个固定的角度(即一个步距角) 。脉冲输入越多,电机转子转过的角度就越多;输入脉冲的频率越高,电机的转速就越快17。因此可以通过控制脉冲个数来控制步进电机的转动角度,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制步进电机转动的速度,从而达到调速的目的。步进电机有以下特点1618: 12(1) 位置及速度控制简便:步进电机在输入脉冲信号时,可以依输入的脉冲数量做固定角度的旋转而得到灵活的角度控制(位置控制)。因为速度和输入脉冲的频率成正比,运转速度可在相当宽范围内平滑调节。(2) 可以直接进行开环控制:因为步距误差不长期累积,可以不需要速度传感器以及位置传感器,就能以输入的脉冲数量和频率构成具有一定精度的开环控制系统。(3) 高可靠性:不使用电刷,电机的寿命长,仅取决于轴承的寿命。(4) 具有定位保持力矩:永磁式、混合式步进电机在停止状态下(无脉冲信号输入时),仍具有励磁保持力矩,故即使不靠机械式的刹车,也能做到停止位置的保持。(5) 中低速时具备高转矩:步进电机在中低速时具有较大的转矩,能够较同级伺服电机提供更大的扭力输出。比较常用的步进电机包括以下 3 大类:(1) 反应式步进电动机。反应式步进电机(Variable Reluctance,VR) ,其转子是由软磁材料制成的,转子中没有绕组。它的结构简单,成本低,步进角可以做得很小,但是动态性能较差。(2) 永磁式步进电动机。永磁式步进电动机(Permanent Magnet,PM) ,其转子是用永磁材料制成的,转子本身就是一个磁源。它的输出转矩大,动态性能好。转子的极数与定子的极数相同,所以步进角一般比较大。(3) 混合式步进电动机。混合式步进电动机(Hybrid,HB)综合了反应式和永磁式两者的有点,它的输出转矩大,动态性能好,步距角小,但结构复杂。汽车仪表中指针的指示范围较大并且指针应有较快的响应,同时在选用步进电机时步进电机应有较小的步进角,这样可以提高指针指示的精度,混合式步进电机是一个很好的选择,因此在本系统设计中选择二相混合式步进电机为仪表指针驱动设备。针对仪表要求采用扁平的汽车仪表用步进电机,这样可使仪表变的更薄26。本系统采用瑞士 SONCEBOZ 公司生产的 6405r201 型步进电机作为仪表指针驱动设备。瑞士 SONCEBOZ 公司是一家专业的电机制造企业,其生产的 6405rxxx 系列步进电机专业用于各类工业仪表尤其是汽车、摩托车仪表盘。该步进电机为二相混合式步进电机,具有相应灵敏、动态特性好、输出转矩大的特点。3.1.3 液晶显示模块选择LCM1010为10位8段式(8.8.8.8.8.8.8.8.8.8.)液晶显示模块, 3-4 线串行接口,可与 13任何单片机、接口IC接口,低功耗特性:显示状态50A(典型值),省电模式1A,工作电压2.7-5.2V ,视角对比度可调,显示清晰,稳定可靠,使用编程简单。表 3.1 LCM1010 参数 注:以上参数条件为:T=25,VDD=3V/5V下,WDT/定时器, ()内为典型值。图 3.2 模块尺寸单位 mm 3.2 系统硬件电路设计组合仪表系统通过单片机对传感器信号和 CAN 总线信息进行采集,经过对采集信号和信息的处理,将采集到的信息通过步进电机指针和液晶显示模块显示出来。仪表系统的主要电路包括:系统电源电路、单片机最小系统、SCI 串行通讯接口电路、液晶模块接口电路、步进电机接口电路、CAN 总线接口电路、信号采集电路组成。3.2.1 系统电源电路电源在仪表系统中起着关键的作用,不仅仅为仪表系统提供相应的供电电压,而 14且也是防止干扰使仪表系统工作稳定的重要前提。仪表系统中存在多种不同电压需求的器件,需要将蓄电池电压进行降压转化,以适应不同的电气元件的供电电压要求,因此在本仪表系统中有着多路由 24V 向不同电压值转换的电源转换电路。3.2.1.1 传感器电源电路汽车上不同的传感器有着不同的供电电压,例如车速传感器的供电电压为 12V,水温、燃油量等传感器的工作电压为 5V,因此传感器电源电路需要将蓄电池的 24V 电压转换为 12V 的电压为车速传感器供电,同时也要有 5V 电压输出的电路为其它传感器供电。仪表系统的传感器电源电路如图 3.3、3.4 所示。图 3.3 电源 24V12V 稳压电压转换电路 图 3.4 12V5V 转换电路 3.2.1.2 单片机和系统背光照明电源电路LED显示屏作为一项高科技产品引起了人们的高度重视,采用计算机控制,将光、电融为一体的大屏幕智能显示屏已经应用到很多领域。LED显示屏的像素点采用LED发光二极管(将许多发光二极管以点阵方式排列起来构成LED,阵列,进而构成LED屏幕。 通过不同的LED 驱动方式,可得到不同效果的图像。 因此驱动芯片的优劣,对LED显示屏的显示质量起着重要的作用。LED 驱动芯片可分为通用芯片和专用芯片。 通用芯片一般用于LED显示屏的低端产品,如户内的单、双色屏等。由于LED是电流特性器件,即在饱和导通的前提下,其亮度随着电流大小的变化而变化,不是随着其两端电压的变化而变化。因此,专用 15芯片的一个最大特点是提供恒流源,恒流源可保证LED的稳定驱动,消除LED的闪烁现象。LED专用驱动芯片的主要参数如下:(1) 最大输出电流目前主流的恒流源芯片最大输出电流多定义为单路最大输出电流,一般90mA左右。 电流恒定是专用芯片的基本特性,也是得到高画质的基础。而每个通道同时输出恒定电流的最大值(即最大恒定输出电流)对显示屏更有意义,因为在白平衡状态下,要求每一路都同时输出恒流电流。 一般最大恒流输出电流小于允许的最大输出电流。(2) 恒流输出通道恒流源输出路数有8位(8 路恒源)和16 位(16 路恒源)两种规格,现在16位源占主流,其主要优势在于减少了芯片尺寸,便于LED驱动板(PCB)布线, 特别是对于点间距较小的LED 驱动板更有利。(3)电流输出误差电流输出误差分为两种,一种是位间电流误差,即同一个芯片每路输出之间的误差;另一种是片间电流误差,即不同芯片之间输出电流的误差。 电流输出误差是个很关键的参数,对显示屏的均匀性影响很大。误差越大,显示屏的均匀性越差,很难使屏体达到白平衡。目前主流恒流源芯片的位间电流误差(bit to bit)一般在6%以内,(chip to chip)片间电流误差在15%以内。(4) 数据移位时钟数据移位时钟决定了显示数据的传输速度, 是影响显示屏的更新速率的关键指标。,作为大尺寸显示器件,显示刷新率应该在85Hz 以上,才能保证稳定的画面(无扫描闪烁感) 。较高的数据移位时钟是显示屏获取高刷新率画面的基础。 目前主流恒流源驱动芯片移位时钟频率一般都在15MHz以上。单片机和组合仪表系统的背光电压均为 5V。对组合仪表系统而言,单片机需要稳定的电压来保证其工作的稳定性,而组合仪表系统背光照明所消耗的电源功率较高,若采用单片机与组合仪表背光照明系统采用同一电源供电,则可能导致单片机工作不稳定,因此单片机电源和背光照明电源分别单独供给,以保证系统工作的稳定性。单片机电源和系统照明电源分别从蓄电池接入,采用 LM2576 直接将 24V 的蓄电池电压降至 5V,供两个系统单独使用。图 3.5、3.6 是两个系统的电源电路。 16图 3.5 单片机电源电路 图 3.6 系统背光照明电源电路 3.2.2 单片机最小系统单片机最小系统是指可使内部程序运行所必须的外围电路2022。MC9S12HZ256单片机的最小系统包括电源电路、复位电路、晶振电路、PPL 电路、BDM 调试接口电路。本小节为单片机的复位电路、晶振电路等电路的设计。3.2.2.1 复位电路图 3.7 MC9S12HZ256 复位电路 MC9S12HZ256 单片机在响应各种外部或侦测到的内部系统故障时可以进行系统复位。MC9S12HZ256 单片机有 4 种事件可以触发复位:外部复位、加电复位、看门狗复位、时钟监控复位。图 3.7 是 MC9S12HZ256 外部复位电路。 17MC9S12HZ256 单片机的引脚为低电平有效复位引脚,当这个引脚电压为RESET低时,触发复位。按键 JA03 未按下时引脚为高电平,当按键 JA03 按下RESET引脚为低电平触发复位。MC34064 为一个集成欠压检测电路芯片23,当电源RESET电压下降时引脚输出低电平,使单片机复位。RESET3.2.2.2 晶振电路图 3.8 MC9S12HZ256 晶振电路 MC9S12HZ256 单片机的 EXTAL 和 XTAL 是连接外部晶振的两个引脚,EXTAL是外部时钟输入,XTAL 是晶体振荡器放大器的输出。所有单片机内部系统时钟是来自在 EXTAL 输入频率。图 3.8 是 MC9S12HZ256 晶振电路,电路输出的晶振频率为8MHz。3.2.2.3 PPL 电路图 3.9 MC9S12HZ256 的 PPL 电路 MC9S12HZ256 单片机片内的 PPL 电路兼有频率放大和信号提纯的功能, 因此可以以较低的外部时钟信号获得较高的工作频率,以降低高速开关时钟所造成的高频噪声。如图 3.9 的 PPL 电路中,VDDPLL 引脚由单片机提供 2.5V 电压;CA09、CA10、RA14 的值由数据手册得出。 183.2.2.4 BDM 调试接口电路图 3.10 MC9S12HZ256 的 BDM 调试接口电路 背景调试模式 BMD(Background Debug Mode)是 Freescale 半导体公司自定义片上调试规范。BDM 调试方式为开发人员提供了底层的调试手段。图 3.10 是MC9S12HZ256 的 BDM 调试接口电路。3.2.3 SCI 串行通讯接口电路SCI 串行通讯是单片机与上位机通讯的接口。组合仪表系统采用串行通讯的方式进行系统软件程序的写入,与上位机软件进行通讯方便系统软件的调试。MC9S12HZ256 的 SCI 串行通讯电路如图 3.11 所示。图 3.11 MC9S12HZ256 的 SCI 串行通讯接口电路 MC9S12HZ256 集成有 SCI 串行通讯模块,通过串行通讯电平转换芯片MAX232,实现由单片 机发出的 TTL 电平向 RS232 电平的转换24。MC9S12HZ256的 SCI 接口由发送引脚(TxD)和接收引脚(RxD) ,发送和接收 TTL 电平。在串行通讯中发送时将发送引脚的 TTL 电平转换为 RS232 电平,接收时将 RS232 电平转换为 19TTL 电平。电平的转换通过 RS232 电平转换芯片 MAX232 完成。3.2.4 液晶模块接口电路由于LCM1010内部有上拉电阻,为保证低功耗,每次送数之后,/CS /RD /WR DATA必须接高电平或悬浮。根据采用的MCU不同,采用不同方式接口,不必使用分压电阻。若MCU与LCM1010工作电压相同,可直接相接。图 3.12 接口应用方块图 表 3.2 引脚说明 读/写格式及指令.(1) 读格式: 只读显示RAM 20(2)写命令:表 3.3 代码定义 (3)写数据 21表 3.4 显示 RAM 对应笔划 3.2.5 步进电机接口电路步进电机的驱动通常是由步进电机驱动芯片完成。MC9S12HZ256 单片机片内集成了电机控制模块(MC) ,使用该模块可以通过软件对步进电机进行驱动控制,可以代替步进电机驱动芯片,使仪表系统更具经济性,硬件设计更为简便。MC9S12HZ256 电机控制模块(MC)有 16 通道的 PWM 输出,集成了用于步进电机驱动的 H 桥电路。图 3.13 是电机控制模块所集成的 H 桥电路。 图 3.13 电机控制模块的 H 桥电路 步进电机驱动采用两个 H 桥组成双全桥电路,MC9S12HZ256 电机控制模块(MC)有 16 通道的 PWM 输出,只需将电机控制模块的 PWM 通道 x 与通道 x+1(x为 0、2、4、6)组合起来构成双全桥。图 3.14 是采用双全桥模式驱动步进电机的连接。 22MC9S12HZ256 采用双全桥驱动模式最多可以同时控制 4 个步进电机。图 3.14 双 H 桥驱动步进电机 3.2.6 CAN 模块电路3.2.6.1 CAN 简介控制器局域网CAN(CANController Area Network)为串行通讯协议,属现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络,能有效地支持具有很高安全等级的分布实时控制。CAN的应用范围很广,从高速的网络到低价位的多路接线都可以使用CAN。CAN 具有下列主要特性:多主站依据优先权进行总线访问;无破坏性的基于优先权的仲裁;借助接收滤波的多地址帧传送;远程数据请求;配置灵活性;全系统数据相容性;错误监测和出错信令;发送期间若丢失仲裁或由于出错而遭破坏的帧可自动重发送。由于 CAN 具有以上特性,已经为越来越多的领域采用和推广。CAN 遵守 ISO/OSI 标准模型,按这个标准 CAN 结构可以分为两层:数据链路层和物理链路层。在 CAN 技术规范 2.0A 版本中,数据链路层中的逻辑链路层和媒体访问控制层对应为对象层和传输层2627。3.2.6.2 CAN 收发器接口设计MC9S12HZ256 集成了 MSCAN 模块作为 CAN 控制器,系统采用 PCA82C250 作为 CAN 收发器组成一个 CAN 通讯节点接入 CAN 网络中,实现组合仪表与其它车载电子控制设备之间的通讯。PCA82C250 收发器是 CAN 协议控制器和物理总线的接口。该收发器主要应用于汽车高速 CAN 总线报文的收发。PCA82C250 提供 CAN 总线控制器差动接收的功能,完全符合 ISO11898 标准;支持高速率 CAN 总线,最高速率可达到 1Mb/s;具有汽车瞬变环境下的 CAN 总线线路保护功能;具有斜率控制模式,能够有效的降低射频干扰;差分发送和接收,具有较宽的共模范围,能有效的防止电磁干扰;具有过热保护功能;具有电池正端与地之间的短路保护功能;具有低电流待机模式,能降低功耗;网络中 23的节点掉电不会影响整个网络的正常工作;至少能够接入 110 个网络节点28。PCA82C250 可以提供对总线数据的差动发送能力和对通信总线数据的差动接收能力。本仪表系统 CAN 总线接口电路如图 3.15 所示。图 3.15 CAN 总线通讯接口电路 3.2.7 系统采样电路组合仪表系统的采样信号有脉冲量信号、模拟量信号和开关量信号。脉冲量主要有车速信号和发动机转速信号;模拟量信号主要有水温信号、机油压力信号、蓄电池电压信号、燃油量信号等;开关量信号为车辆上的各种开关产生的信号。针对不同的信号系统采取不同的采样方法:脉冲量信号测量脉冲的频率,根据测得的频率来计算对应的速度;模拟量信号以 A/D 采样,将模拟量转换为单片机识别的数字量进行处理;开关量以 I/O 口检测电平高低的方式采样。3.2.7.1 脉冲量的采样仪表系统所要检测的脉冲量主要为发动机转速和汽车车速,而从发动机转速传感器和从车速传感器中得到的信号有所不同需要不同的信号调理电路对两种信号进行调理,以得到可以用单片机的脉冲累加器进行采样的标准方波。以下是对发动机转速信号和车速信号调理电路的设计。(1)发动机转速信号调理电路发动机转速传感器主要有感应式发动机转速传感器和霍尔式发动机转速传感器。两种传感器输出的信号不同需要不同的调理电路对信号进行调理。针对这两种不同的信号所设计了如图 3.16 所示的发动机转速信号调理电路。 24图 3.16 发动机转速信号调理电路 (2)车速信号调理电路车速传感器主要使用的类型是霍尔式车速传感器。车速传感器的信号调理电路如图 3.17 所示。车速传感器输出是一个方波信号。信号调理电路一端接 12V 通过两个5V 稳压管 DB36、DB37 将调理电路的输出信号为 5V 的方波信号。当车速传感器信号为高电平时,此时稳压管 DB37 两端电压为 5V,此时车速信号调理电路的输出为 5V电压;当车速输入信号为低电平时,此时稳压管没有电流通过,此时稳压管两端的电压为 0V,此时车速信号调理输出电压为 0V。这样经过车速信号调理电路使车速信号转变为幅值为 5V 的方波信号,输入单片机的脉冲累加器引脚。图 3.17 车速信号调理电路 3.2.7.2 模拟量采样电路 模拟量主要是以电压或电阻两种形式输入,因此在模拟信号调理电路中就要分别 25针对电压输入型和电阻输入型进行分别设计。图 3.18 和图 3.19 分别是电压类型和电阻类型模拟量输入电路。由下面原理图的引脚标号上看,两个电路有相同的输入和输出网络标号,在确定所选用的传感器类型后,根据所选择的传感器的输出类型选择一种采样电路。两种类型的采样电路都制作在 PCB 上,可以根据不同类型的传感器选择对应的采样电路进行焊接。图 3.18 电压类型模拟量输入电路 图 3.19 电阻类型模拟量输入电路 电压类型的模拟量输入电路主要针对蓄电池电压等采样。电压信号通过低通滤波电路滤波,滤掉高频信号的干扰,进入单片机的 A/D 采样引脚对电压信号采样。电阻类型模拟量输入电路主要针对机油压力、燃油量等信号进行采样。3.2.7.3 开关量信号采样电路 26汽车中开关量信号主要是各种开关的输出,单片机需要对各种开关的工作状态进行检测,以作出各种工作响应。开关量信号调理和检测电路如图 3.20 和 3.21 所示。图 3.20 开关量信号调理电路 图 3.21 开关量信号检测电路 外部开关量信号输入有两种模式,0V/悬空或者是 24V/悬空。开关量信号调理电路中 RA81 电阻可以根据两种工作模式而选择有无。当开关量信号模式为 0V/悬空时,RA81 电阻不焊接入电路。当输入为 0V 时,二极管导通,输出端为低电平;输入悬空时,二极管截止,输出端为高电平。当开关量信号模式为 24V/悬空时,RA81 接入电路中。当输入为 24V 时,二极管截止,输出高电平;当输入为悬空时,二极管导通,输出为低电平。由于汽车中的开关较多,单片机上的 I/O 口有限,因此选用 I/O 扩展芯片 4051,选用 3 个 I/O 控制通道选择,1 个 I/O 作为输出,可以扩展出 8 个 I/O 输入。 274 系统软件设计软件是整个城市公交车组合仪表系统能正常运行的核心部分,仪表系统的各个功能的实现是仪表系统软件为支撑的。在系统软件编程过程中采用模块化的编程的方式,分别对不同的模块进行程序编写和调试,然后对各个模块进行综合,形成系统。系统软件的模块主要有主程序模块、步进电机控制模块、液晶显示模块、CAN 总线控制模块、数据采集模块等。4.1 主程序模块系统软件是由一个主程序和若干子程序构成,主程序的主要功能是设定程序执行过程中用到的相关变量,对系统进行初始化,然后按照要求在适当的条件下调用相应的子程序,来对系统进行处理。城市公交车组合仪表系统主程序流程图如图 4.1 所示。 28图 4.1 主程序流程图 系统初始化主要是对步进电机控制模块、液晶显示模块、CAN 总线控制模块、A/D 模块和定时器模块进行初始状态的设定,对各个模块的中断使能进行设定等。液晶显示模块和系统采样模块在主程序中完成,步进电机控制和 CAN 总线控制则在定时器中断和 CAN 总线控制模块中断服务中完成。钥匙电监测是对系统通电状态进行检测监控的子程序,其主要功能是检测钥匙电的开关,并对开关的状态做出相应的操作。钥匙电状态检测子程序流程图如 4.2 所示。 29图 4.2 钥匙电状态监测流程图 4.2 步进电机控制模块MC9S12HZ256 单片机针对步进电机控制集成了电机控制模块(MC) ,用于驱动步进电机。步进电机控制模块(MC)用来进行步进电机的换相控制和细分控制,配合定时器模块产生的定时中断进行步进电机的转速控制。步进电机归零控制则采用 30MC9S12HZ256 单片机的步进电机失步检测模块(SSD) 。步进电机失步检测模块(SSD)有 4 个中断源用于控制 4 个步进电机的归零操作,使用该模块对步进电机进行归零操作可以使步进电机快速准确地归零。4.2.1 步进电机驱动控制MC9S12HZ256 电机控制模块(MC)有 16 通道的 PWM 输出,集成了用于步进电机驱动的 H 桥电路。电机控制模块的 PWM 输出可以工作在高分辨率模式(11 位分辨率)或快速模式(7 位分辨率) ,工作在高分辨率模式下时可使用抖动功能,在不改变当前分辨率的条件下,降低 PWM 的工作周期;PWM 波形输出有左对齐、右对齐和中心对齐 3 中模式。电机控制模块功能框图如图 4.3 所示。图 4.3 电机控制模块功能框图 对步进电机的转速控制就要求要以较慢的转速启动和较慢的速度停止,在中间过程要要加速、速度保持和减速的一个过程。为了满足加、减速要求,步进电机运行经常按照加、减速曲线进行。步进电机驱动的关键步骤就是步进电机的细分驱动和步进电机的调速控制,步进电机驱动控制的具体流程如图 4.4 所示。 31图 4.4 步进电机驱动控制流程 324.2.2 步进电机归零控制城市公交车组合仪表系统步进电机的控制采用的是没有位置反馈的开环控制的方法,因此步进电机的初始位置准确与否将直接影响到步进电机运行中定位的精确度。要获得较高的定位精确度就要求步进电机在初始状态下的位置必须准确为初始“0”点。MC9S12HZ256 集成了失步检测模块(SSD) ,利用这个模块可以检测电机初始位置是否为“0” ,若不为“0”则可驱动步进电机使初始位置归零。步进电机失步检测模块(SSD)提供了检测步进电机以整步驱动方式驱动仪表指针进行归零操作时在没有通电线圈中产生的感生电流的电路29。在指针归零过程中,步进电机以整步驱动的方式顺时针转动或者是逆时针转动,在任意时刻只有一组线圈通电。非通电线圈产生的感生电动势在经过一段消隐时间后被积分采样,采样结果存储在一个 16 位的累加器中。16 位的模数计数器用来控制消隐时间和采样时间。16 位累加器中的值表示了所连接的线圈的感生电动势的波动,它可以用来和一个存储的阈值比较。当这个值大于阈值时表明电机仍在转动,在这种情况下电机将会进行下一个整步转动,采样就会继续。当这个值小于阈值时表明电机发生了失步,此时电机已经归零。失步检测模块(SSD)与电机控制模块(MC)公用引脚,在 SSD 模块工作时必须关闭电机控制模块释放引脚。图 4.5 为失步检测模块(SSD)的模块功能框图。 33图 4.5 失步检测模块(SSD)功能框图 对单个步进电机进行归零操作可以采用查询的方式,但要对多个步进电机同时进行归零的操作就要采用 SSD 模块中断的方式进行。MC9S12HZ256 的步进电机失步检测模块(SSD)可以产生四个中断源,分别对应 4 个采用双全桥模式进行驱动的步进电机19。采用中断方式进行步进电机的归零操作时,两次 SSD 中断对应步进电机进行一个步距的转动。第一次中断是在消隐时间结束时产生,中断服务中要把积分采样的时间写入寄存器中,- 转换电路通电,积分采样使能;第二次中断在积分采样时间结束后产生,在中断服务中对积分采样值与阈值进行比较,判断是否归零,归零则操作结束,未归零则应向寄存器写入下次消隐时间并修改 STEP 值。具体流程如图 4.6 所示。 34图 4.6 SSD 归零检测流程 354.3 液晶显示模块对液晶显示模块的控制首先要了解液晶显示模块控制器操作时序。液晶控制模块控制器内部控制寄存器的读、写与液晶显示数据寄存器的读、写的操作时序不同,如果读、写的时序不正确则无法对液晶显示模块进行数据的写入。LCM1010 的控制时序如图 4.7、4.8、4.9 所示。图 4.7 读数据 RAM 时序图 4.8 写命令/数据时序 图 4.9 连续写数据时序 4.4 CAN 模块MC9S12HZ256 单片机集成了 MSCAN12 模块作为 CAN 总线控制器。MSCAN12 36模块符合 CAN 2.0A/B 协议标准;数据长度为 08 个字节;最大可编程位速率为1Mb/s;拥具有灵活的标识符验收模式。可以配置成 2 个 32 位过滤码、4 个 16 位过滤码和 8 个 8 位过滤码;具有隔离和中断所有 CAN 发送和接收器错误状态的能力;可编程 MSCAN 时钟源,可以选择总线时钟或者晶振时钟;内置时钟模块,用于设
展开阅读全文