微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 汽车电子 > 基于MC9S12DP256B的客车ABS控制器设计

基于MC9S12DP256B的客车ABS控制器设计

时间:10-16 来源: 点击:

汽车防抱死制动系统简称ABS(Anti-Lock Brake System),是在汽车制动过程中,防止车轮完全抱死,提高汽车在制动过程中的方向稳定性和转向操纵能力,缩短制动距离。针对汽车防抱死制动系统(ABS), 国际上流行的控制方法有逻辑门限值控制、PID控制、滑模变结构控制、最优控制、模糊控制和神经网络控制等控制方法。国内开发ABS采用的控制方法主要是最基本的逻辑门限值控制方法。目前,国内研究ABS理论的科研单位有很多,比较有代表性的有:以郭孔辉院士为代表的吉林大学汽车动态模拟国家重点实验室、清华大学汽车安全与节能国家重点实验室、华南理工交通学院汽车系、济南程军电子科技公司等。国内生产ABS的公司不少, 但大多数公司是和国外著名ABS公司合作生产, 其产品并非自主研制开发出来的。完全自主开发ABS的国内比较有代表性的公司有重庆聚能汽车技术有限责任公司和西安博华机电股份有限公司等[1]。

汽车在制动过程中,车轮可能相对于路面发生滑移,滑移成分在车轮纵向运动中所占的比例可由滑移率来表征。定义滑移率为s:
  
式中: v为车身速度,ω为车轮角速度,r为车轮半径。在不同的滑移率时,附着力系数也不同。试验表明,纵向和侧向附着力系数与滑移率关系如图1所示。


防抱死制动系统的工作原理就是将车轮的滑移率控制在最佳滑移率sc附近,以获得较高的纵向和侧向附着系数从而减小制动距离以及保证汽车制动时的方向稳定性。

1 ABS硬件设计

1.1 MC9S12DP256B单片机[2]

MC9S12DP256B是Motorola 16位单片机HCS12家族中的一员,其处理单元采用16位的STAR12CPU。片内资源包括256KB的Flash ROM、12KB的RAM、4KB的EEPROM、一个8通道的脉冲宽度调制模块(PWM)、一个8通道的增强型捕捉定时器模块(ECT)、两个8通道的A/D转换模块(ATD)、两个串行通讯接口(SCI)、三个串行设备接口(SPI)等。在Codewarrior集成开发环境中,可以对单片机进行程序编辑、编译、下载和在线调试,使其开发十分便利。

ECT模块具有八个输入捕捉/输出比较(IC/OC)通道,四个8位或两个16位的脉冲累加器(PAI)通道。当该模块运行时,16位的自由定时器按照设定的时钟频率在$0000~$FFFF之间循环计数。若某个通道设置为I/O功能,当被测信号的设定边沿到来时,输入捕捉逻辑立即将自由定时器的内容捕捉到16位的IC/OC寄存器中,其分辨能力高达1μs甚至更高,并设置中断请求标志,随后程序进行中断处理。若某个通道设置为OC功能,输出比较逻辑自动将IC/OC寄存器的内容与自由定时器的内容进行比较,一旦相符立即操作对应的引脚,同时设置相应的中断标志,随后程序进行中断处理,引脚输出波形的时间分辨能力也可以达到1μs甚至更高。脉冲计数器则只对输入脉冲的个数或者边沿进行计数,不产生中断。在轮速采集算法中使用了该功能。

IC/OC与通用I/O口PORTT共享八个引脚。四个8位的PAI通道0~3与前四个IC通道IC0~3共享引脚PORTT0~3。本控制器中,PORTT0~3使用脉冲累加器功能,注录四个轮速传感器的脉冲个数。当产生实时中断(RTI)后,中断程序读取脉冲累加器的值,计算车轮的速度,同时脉冲累加器清零,重新开始计数。PORTT4~7使用输出比较功能,当IC/OC寄存器的值与自由计数器的值相等之后,产生中断,四个中断程序分别处理各自轮子的ABS控制策略。

1.2 电子控制单元ECU硬件结构

ABS的核心部件是电子控制单元ECU(Electronic Control Unit)。ECU电路主要包括四个模块:电源模块、轮速信号处理模块、运算模块、电磁阀驱动电路,其基本功能是要实现轮速的采集、ABS的故障检测、按照控制规律对电磁阀发控制信号。其结构框图如图2所示。


2 ABS控制算法

ABS控制算法采用逻辑门限值控制。它的基本原理是以车轮的加减速度作为主要控制门限,以车轮的滑移率作为辅助控制门限,在减速度达到下门限值时发出减压控制信号,在加速度达到第一上门限值时发出增压控制信号。如此反复循环,直到轮速降至一个较低的数值,退出ABS控制。

不同的路面附着系数使用不同的控制策略,所以算法的第一步就是识别路面。路面识别的方法是:首先给车轮发出保压信号,保压一段时间后,根据此时的轮减速度来识别路面。如果此时的轮减速度超过了第二上门限值,则说明是高附着路面;如果轮减速度在第一上门限值和第二上门限值之间,说明是一般附着路面;如果轮减速度小于第一上门限值,则说明是低附着路面。这样做的结果是每个轮子的保压等待时间占据一个循环周期的大部分时间,如果采用四个轮子的循环顺序来执行则需要很长时间,不能满足时效性要求。但如果引入多任务实时操作系统势必使得算法过于复杂。因此,提出了引入四个中断处理的方法,即每个轮子都有独立的计时时钟,ABS控制完全按照各自设定的中断时间执行,实现了四个轮子的并行控制。中断时间的设定是保证一秒钟ABS控制循环执行十几到几十次。

2.1 ABS详细控制策略

Step 1:轮减速度刚达到下门限值时,系统开始保压,同时计算滑移率,直到判断出车轮进入不稳定区域,置阶段标志位Flag=2,减压。
Step 2:判断减速度,直到减速度小于下门限值,置Flag=3,保压。
Step 3:保压一定时间,判断此时加速度的大小:(1)如果加速度小于第一上门限值,判断为低附着路面,置Flag=41,减压。(2)如果加速度在第一上门限值和第二上门限值之间,判断为一般路面,置Flag=42,保压。(3)如果加速度大于第二上门限值,判断为高附着路面,置Flag=43,增压。
Step 4:根据Step3得出的Flag值执行不同的控制方案。
Step 5:一个阶段完毕,置Flag=1,准备进入下一个循环。
这样程序每次进入中断后都将根据阶段标志位的值执行不同的控制阶段,直到完成整个ABS控制。

2.2 轮速处理算法[4]

轮速是ABS 程序中计算车轮加减速度的基础。对轮速的处理必须满足:(1)实时性好。ABS 的防抱死控制一秒钟要进行多次循环,因此对轮速处理的及时性要求很高,要求轮速处理程序不能过于复杂。(2)精度高。ABS 轮速的精度对其以后的轮加减速度和参考车速的计算精度影响很大。

轮速采集的方法通常有周期法和脉冲计数法,这里采用脉冲计数法。脉冲计数法是利用一定时间内轮速传感器采集进来的齿圈个数即脉冲数来计算轮速。其计算公式为:
ω=2(πr/N)×(n/△t)           (2)
式中,ω为车轮角速度;r为车轮半径;N为齿圈齿数;n为记录的脉冲个数;△t为测量时间间隔。由式(2)可以看出,计算误差主要由后半部分引起。单片机的计时很精确,因此△t的误差可以忽略不计,但脉冲个数n易造成±1齿的测量误差。误差产生示意图如图3所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top