汽车电液助力转向系统ECU的设计与开发
扫描二维码
随时随地手机看文章
系统介绍
电动液压助力转向系统(EHPS)主要由以下几部分组成,它们是助力转向控制单元(ECU)、助力转向传感器、带电动泵的齿轮泵、储油罐、转向传动装置、CAN 总线系统。我们的主要工作是助力转向控制单元(ECU)的软硬件研究与开发。助力转向控制单元根据助力转向传感器传来的信号为主,兼或考虑CAN 总线上的车辆速度来进行电动泵的转速控制,进而控制齿轮泵的泵油量来达到控制助力转向传动装置的目的。这样我们就可以根据车辆方向盘的转向角速度和车辆当前的行驶速度来确定我们当前所需要的转向助力的大小。
1. ECU 设计概要
1.1 ECU 的CPU 的选择
控制器(ECU)的设计关键是选择一种适用于特定控制目标的单片机,对车辆电动液压助力转向系统来说,它对单片机要求有如下几个特点:
① 抗环境干扰,满足汽车级芯片温度范围的要求,即-40~+125℃。
② 有较多的I/O 口,以实现多种控制功能;快速的计算速度,以满足实时控制要求。
③ 采用标准的通讯接口,以便于诊断功能的实现,同时具有与车辆上其它CPU 进行通讯的能力。
④ 有较好的性能价格比,便于批量装车,使之成为一种普及型产品。
基于上述特点采用16 位单片机对电动液压助力转向系统是一种适中的选择。并且国外电动液压助力转向系统产品目前绝大多数都选用这一档次的单片机。Infineon XC164CM 正是这一适中产品,它是Infineon 公司为车辆控制系统设计的16 位单片机。
1.2 ECU 模块设计
500)this.style.width=500;" border="0" />
见图1,所设计的基于Infineon XC164CM 单片机,它包括输入、输出、故障诊断、车辆信息数据传输四个模块。
①输入模块
输入采用XC164CM 的输入捕捉功能CAPCOM 单元,每个输入通道对应一个独立的CAPCOM 通道。CAPCOM 通道可以在每个事件接收后发出中断,它有一个捕捉寄存器CCx,即可以保持1 个事件。由于中断地址是独立的,这样进入中断服务程序就不用再识别是哪个中断源,提高了中断服务处理的效率。在本系统中亦采用CC16 和CC17 作为2 个霍尔器件脉冲的输入信号扑捉通道,采用CC23做为方向盘转角脉冲的输入信号扑捉通道。采用CAPCOM 通道使采集信号的质量大大提高,CPU 占用时间少,CAPCOM 的捕捉事件的分辩率在20MHz 主频下为400 ns。
②输出模块
XC164CM 有47 个I/O 端口,在本系统中采用P1 口作为控制输出口。每个I/O 口都用独立的控制器控制输入/输出。
③诊断模块
EHPS 是一种可靠性要求很高的系统,要求内部程序对系统要随时进行监控,一旦发生故障,能及时记录下来,并把其存贮起来。本系统采用I2C 总线的E2 PROM 作为故障代码存贮器,用XC164CM的同步串行功能实现I2C 总线与E2PROM 通讯,XC164CM 作为主机,E2PROM 作为从机。通过XC164CM的CAN1 口实现外部诊断通讯,与PC 机端是通过USB 数据采集卡连接通讯。
④车辆信息数据传输
单片机XC164CM 带有两个CAN 总线控制器,CAN1 和CAN2。内部有2K 字节的CAN 寄存器空间来实现CAN 通讯,它有32 个信息体,每个信息体有8 个字节的数据可以传送。EHPS 系统所需的车速和发动机转速就是通过2. ECU 软件设计
该程序结构采用C 语言中流行的多模块结构,这种结构比起以往的单模块结构来说有程序结构清晰,便于程序移植和程序维护等特点。
2.1 EHPS ECU 的主程序
EHPS 主循环是一个定时循环调用程序,程序框图见图2。
500)this.style.width=500;" border="0" />[!--empirenews.page--]
它主要是调用各个子程序。定时时间要根据算法的复杂性,当算法比较复杂、费时比较长时,则每个循环的时间可以定义的比较长。如果CPU 功能比较强,而且算法比较简单,可以采用比较短的循环时间。比如5ms 甚至更小的时间。一些耗时比较长的程序,例如诊断程序可以放在EHPS主循环外边调用。每次程序开始执行时要调用初始化程序,首先对硬件外设进行初始化,如串口、定时器等。这些初始化每次上电只定义一次,并且要开放中断,然后要进行软件初始化,设置EHPS控制的门限。这些门限有些在控制过程中变化,有些则是不变的常数。如果是不变的常数则可以采用C 语言中的宏定义的方法进行定义。调用诊断程序是对系统进行一次全面的诊断。这个程序耗时比较长,所以只在EHPS 主循环之外。EHPS 系统完成准备工作后就进入EHPS 循环。EHPS 循环
一般可以定义为4~50ms 之间。在这个时间之间调用各种算法,要保证每个程序运行时间加起来小于EHPS 循环时间,这样才能保证EHPS 的节奏。如果程序执行时间大于EHPS 循环时间,则就会出现程序工作节拍性不强,造成系统运行的不稳定。EHPS 循环时间是可调整的,就是要根据程序的执行时间来调整。
2.2 EHPS ECU 的中断程序
EHPS 主循环的运行不时被中断系统所打断,一旦有中断发生,CPU 要响应中断并退出主循环。中断系统的服务程序主要处理突发和随机事件。如果不用中断就会占用主程序许多查询时间,所以中断系统实际是一种并行的多任务程序。
在EHPS 软件中主要使用了下面几种中断类型:
1)方向盘转角中断:它使用输入捕捉中断将方向盘转角脉冲信号记录到寄存器,用于计算目标转速。
2)电机转速采集中断:它使用输入捕捉中断可以随时将输入转速的脉冲信号记录到寄存器。
3)串行通讯中断:串行通讯主要用于诊断系统,使用接收中断,当接收到上位机信号后就可以中断主循环而进入诊断程序。
4)定时器中断:进行控制系统的延时处理。
3. ECU 硬件电路系统设计
电子控制单元根据转向速率和车速信号确定并控制电动机的转速和驱动电流大小。使其在每一种车速下都可以得到最优化的转向助力扭矩。为了保护功率驱动电路,需要对电机电流进行采样,为了降低采集噪声,对系统电流输入采用一级采样保持电路,差分输入端均经过采样保持器,利用P9 口的CC20、CC21 对采样信号进行电压采样。电机电流差分放大电路原理见图3,为了提高系统抗干扰能力,在输入端加有5mV 偏置电压。为了控制电动机的电流换相时刻,采用两个霍尔转速传感器,对电机的换相进行精确控制。霍尔转速传感器可以采TLE4905。为了控制电动机的转速,采用PWM 斩波控制电机电压。利用XC164CM 的P1 口的P1L0~P1L3 控制电动机的相位,利用P1 口的CC24、CC25 对电压斩波,通过74LS366 进行波形叠加后送给功率MOSFET。
500)this.style.width=500;" border="0" />
4. 试验结果对比
500)this.style.width=500;" border="0" />
我们采用MATLAB/Simulink 控制开发与测试平台对我们的EHPS 系统进行了仿真测试,图4,图5 为自行研制的ECU 与进口原车上的ECU 控制效果的对比,从图中曲线可以看出,两种控制器的控制效果是相吻合的。同时我们进行了由不同驾驶员进行驾车体验,在事先不告知何种控制器的情况下,驾驶员已分辨不出来是原车上的ECU 还是自行开发ECU 在起作用。
结语
在将近两年的研究过程中,我们主要采用了在实车上进行控制程序的在线调试,并与国外同类产品进行反复性能对比。这样保证了产品在实车应用可行性。依据国外同类产品电机控制曲线,我们EHPS ECU 从性能上已基本达到国外同类产品水平。但是可靠性要随着产品的不断装车要进一步进行验证。