基于CAN总线汽车组合仪表的设计与研究
扫描二维码
随时随地手机看文章
步进电机(Step motor)是将电脉冲信号转变为角位移e(或线位移S)的开环控制元件,是数字控制系统的一种执行元件。工作原理是建立在被励磁的定子电磁铁吸引可选转的衔铁产生转矩而旋转,即靠磁铁引力作用把电磁能转换成机械角位移。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。脉冲的个数决定了转角的大小,而脉冲的频率决定了电机的转速。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。一般步进电机可分为二相、三相、四相和六相。
本系统步进电机选用深圳伟力驱动有限公司的VID29系列二相汽车仪表步进电机。 vID29-XX/VID29~xXp仪表步进电机是一种精密的步进电机,内置减速比180/1的齿轮系,主要应用于车辆的仪表指示盘,也可以用于其他仪器仪表装置中,将数字信号直接准确地转为模拟的显示输出。VID29步进电机需要两路逻辑脉冲信号驱动,其特点如下:
可以工作于3.5V一10V的脉冲下;
输出轴的步距角最小可以达到1/120,最大角速度6000/s,输出转角转动范围为3150。可用分步模式或微步模式驱动。
选用进口优质特种材料和汽车级特殊工程塑料,同时兼顾防火等安全性能;
采用具有最低噪声和超低摩擦效果的特殊齿形,保证了马达的长期运转寿命和性能。
步进电机的分步驱动控制模式:VID29步进电机是经三级齿轮减速转动输出的,驱动要求是用标准的SV逻辑电路电压,可以以分步驱动模式直接驱动马达,电流需求为20mA。在分步模式下,每个脉冲可以驱动马达转子转动600(即输出轴转动1/3度)。电机转动的方向取决于施加在电机左右线圈上的周期性脉冲序列的相位差。如下图所示,左线圈电压UL相位超前于右线圈电压UR时(相位差为/3),VID29一XX系列的电机输出轴将顺时针旋转,VID29一XXP系列的电机输出轴将逆时针旋转。
分步驱动模式脉冲序列如图4一14所示:
微步驱动模式(细分驱动)脉冲序列如图4-15所示:
它的转速n(或线速度v)与脉冲频率f成正比。步距角越小,指针转动角度越小,仪表显示的精度越高。步距角与脉冲频率的关系可用以下关系式来计算:
φ=180*f/(I*S)
式中φ:步进电机的步距角
f:脉冲频率
I:电机齿轮减速比
S:驱动模式分布数(分步/微步)
步进电机的位置和速度由导电次数(脉冲数)和频率成一一对应关系,而方向由导电顺序决定。
由于H128内部集成了6个步进电机驱动模块,所以无需扩展电路即可实现步进电机与H128硬件接口电路的连接。通过分布驱动模式,每个脉冲可驱动步进电机转动1/3度,满足汽车仪表的精度要求(如需更高精度,可通过扩展微步驱动芯片,使步进电机每个步为1八2度)。步进电机与H128的硬件连接如图4一16:
图中PUO一PU7,PVO一PV7,PWO一PW7直接与H128的输出引脚连接。由于各步进电机直接由H128驱动,所以可以通过修改程序数据输出接口办法改变步进电机布置。
4.8 复位电路及E2PROM设计
单片机系统通常是在一个特定的客观环境下为完成或实现某种功能而设计的,因此系统处于工作状态时,势必会受到各种外界干扰因素的影响。这种外界干扰因素会导致系统内部数据出错,甚至会严重影响程序的运行,使单片机受到干扰失控导致导致程序跑飞或陷入死循环,通过采取一定的软硬件措施使程序脱离死循环或重新运行。
本系统采取了外扩芯片实现的硬件方式,选取xlc0R公司的x5045[sll。集成了看门狗定时器、EZPROM数据存储器、和电源监测为一体,采用SPI的方式与MCU相连,用于低电压复位信号的单片机(H128为低电压复位)。因其体积小、占用UO口少等优点已被广泛应用于工业控制、仪器仪表等领域 。
CS:芯片选择输入端,当CS为低电平时芯片处于工作状态
50:串行数据输出端,在串行时钟的下降沿,数据通过50端移位输出
Sl:串行数据输入端,数据在串行时钟的上升沿锁存
SCK:串行时钟,,为数据读/写提供串行总线定时
WP:写保护输入端,当WP为低电平时,向X5045的写操作被禁止,但器件的其他功能正常。
RESET:复位信号输出端。
x5045除了wTD(看门狗)功能外,另一个重要的基本功能就是作为EZPROM数据存储器使用,内部包含 512xs的串行EZPROM,以保证系统在掉电后仍可维持重要数据不变。x5045与H128采用SPI总线接口连接方式,程序,获得准确的脉冲累计计数,并将此值传送给X5045存储。X5045是理想的自动贮存非易失性SRAM,内部含有EEPROM,存储容量256bit,能够在失去vCc的时候自动执行存储操作 (SRAM—EEPRoM),非常适合对里程的累计记录。芯片内部包含一个指令移位寄存器,该寄存器可以通过SPI来访问。X5045与H128连接的电路如图4一18所示:
其中PKO一PK3、RESET分别与H128上相应的管脚相连。
4.9 其他外围器件电路设计
4.9.1 晶振电路
本系统所用的晶振为SMHZ,分别对应接到H128单片机的引脚XTAL和EXTAL上,然后利用其内部压控振荡器和锁相环(PLL)把这个频率提高到25MHZ,作为单片机工作的内部总线时钟。
4.9.2 仪表背光调节电路
仪表背光在汽车启动后常亮,驾驶员可根据各环境下外部光线的明暗度对汽车仪表的背光进行调节,以达到最合适的感官效果。仪表背光电路通过调节电位器改变电阻值,从而改变电流的大小,MCU根据接受到的信号的值来改变PWM脉宽占空比的输出,从而改变背光的明暗度1401.调节电路图如图4一19:
其中开关SWI为一可调电阻,通过改变电阻的大小控制电流,输出到H128的A/D转换接口RAD07,MCU根据周D转换后的数据调整PWMI的输出占空比,输出接口CONV得到的模拟量和占空比有关,如占空比为1:1,则得到的电压值就为Vmax的1/2,即2.5v.占空比的改变使得输出电压变化,从而使仪表背光显示的亮度改变131].输出背光调节电路如图4一20:
其程序流程图比较简单,直接在此进行了分析,如图4一21所示:
4.9.3 状态指示灯电路在汽车仪表的电路
设计中,一般根据外围电子元件的布置采用正控(开关控制正极电路)和负控(开关控制负极电路)相结合的方式来控制各种状态指示灯,同样在本仪表也采用了这种设计方法。功能指示灯都采普亮的发光二极管,而仪表照明则采用的高亮度发光二极管,分有红、黄、绿三种颜色,对应不同的显示和警告信息。发光二极管及其对应的限流电阻,我们都采用了贴片封装的元件。
同时,发动机出现故障后,如发动机水温过高,由MCU控制对应的故障灯会闪烁。发动机出现故障,其指示一般显示为红色,并伴随有蜂鸣器报警。
4.9.4 语音报警电路
设计本仪表系统有蜂鸣器报警模块,主要是为了提醒驾驶员注意相关的危险信息,如:水温过高,水位过低,机油压力过低、变速箱故障等等。MCU将采样得到的数据与存储在EZPRoM单元中的允许数值变化范围比较,如果超过额定范围,则发出信息到输出端口,蜂鸣器报警,同时对应的报警指示灯闪烁。在下次的采样过程中,如果采集的数据在额定范围之间,则蜂鸣器解除报警,状态指示灯熄灭。
本系统选用的蜂鸣器为频繁短促鸣叫,频率为2.6KHz,音量大小为75db.由于系统UO端口资源非常丰富,可以共用一个端口,也可以单独占用一个端口,单独占用端口,有利于故障维修检查,本系统在H128上预留BPO一BP3为报警电路输出端口。
4.9.5 时钟发生器
电路RTC模块(实时时钟电路)有巧个内存映射寄存器,通过秒、分钟、小时计数器提供的时间;通过星期、日、月份、年提供日历功能。以上计数器每次加1时都可以产生中断,并分别对相应的中断标志置位,如果相应的中断被允许则可以产生CPU中断请求。
用于驱动时间和日历的IHZ时钟使内嵌的补偿单元能够补偿晶振的误差,这样通过频率补偿机制能够使IHZ时钟获得用于驱动整个模块的晶振更高的精度。
补偿值可以在模块的校准操作时通过应用软件设置或自动获取澎].计时功能是通过一个时钟频率为128Hz(CGMXCLK/256)的计数器来实现的。
这个计数器可以在任何时候开始、。停止和清除。这个计数器的值被换算到looHZ对应的值,并存储到计时数据寄存器中(chronographdatarcgister)。因此,数据寄存器中的值为O一99,每增加1代表1/1005(loms)。数据寄存器的值满足以下关系式:S=「(128HzeountervalueX25)+16]/32计时计数器的精度是士sms.
4.10 PCB板的设计
在以往仪表电路设计过程中,仪表的电路通常是在仪表背后附上一层软性塑料(挠性塑料),在塑料上覆铜进行电路连接,这种接法通常适用于比较简单的电路。由于电子技术的发展,软性塑料已不能满足仪表功能繁多的要求,并逐渐为
硬质板取代。也就是印制板,通常所说的PcB板 。
电路板设计与电路图设计不同之处在于,电路板属于比较实体化的东西,而电路图属于比较抽象的东西。所以,在设计电路图时,比较着重于电路的电气性质。而在设计电路板时,比较着重于电路的实际尺寸与空间配置(立体)。下面就电路板的设计分为以下几步;
第一步,先设计电路图,确定元件的排序和元件的封装(Footprint),然后通过程序所提供的ERC检查。
第二步,电路图设计完成后,利用CreateNetlist功能产生网络表。
第三步,进入PCB编辑器,首先定义板框,即板子的大小、板层数与形状。
第四步,加载网络表,如果网络表(或电路图)有错误,或接口上的问题,将会在此阶段中出现。可以根据产生的错误,重新会到电路图进行修改。
第五步,布置元件,这项工作是电路板设计中最基础、最麻烦也是影响最大的工作。
第六步,定义设计规则,进行手工布线或自动布线。
第七步,完成布线后,进行设计验证检查。如果没有发现错误,即可存盘输出。
印制板通常有纸质覆铜板、环氧树脂板、玻纤板等,在这里考虑到价格的因素以及性能的要求,我们选取环氧树脂板,其价格适中,也能满足汽车运行的工作环境,PCB采用双面布线,并在部分信号电路增加焊盘测点,以利于仪表电路功能的检测,减少故障返修率。