电控空气悬架电流闭环控制系统开发

2022-05-23 04:52董传平李军伟周英超张广世李凯岳涵单坤山
内燃机与动力装置 2022年2期
关键词:闭环控制寄存器电磁阀

董传平,李军伟*,周英超,张广世,李凯,岳涵,单坤山

1.山东理工大学交通与车辆工程学院,山东淄博 255049;2.天润智能控制系统集成有限公司,山东文登 264413; 3.潍柴雷沃重工股份有限公司,山东潍坊 261206

0 引言

悬架是连接车身与车桥之间的重要部件,能够很大程度缓解来自路面的振动。相比于传统的钢板弹簧,空气悬架具有振动低、刚度和阻尼可调、使用寿命长等诸多优点[1]。21世纪以来,随着汽车电子技术的不断发展,电控空气悬架系统(electrically controlled air suspension,ECAS)能够实现刚度、阻尼等自动调节,具有良好的自适应性和主动性[2-5],满足人们对舒适性和行驶平顺性的要求,已经成为未来新型主动悬架的发展方向[6]。

传统的空气悬架使用开环控制系统,无法根据外部激励实时调整电磁阀的驱动电流,本文中设计一种基于增量式比例积分微分(proportion integral differential,PID)的电流闭环控制系统,通过调节空气悬架内比例电磁阀电流,实现对空气悬架阻尼的精准调节。

1 系统硬件电路设计

1.1 MC9S12XEP100单片机最小系统硬件设计

空气悬架工作环境恶劣,需要在不同温度、湿度等复杂的环境因素下工作,其控制系统应采用能够适应恶劣工作环境、具有可靠性能的控制器。为了增加可靠性、降低生产成本,主控芯片应具有高性能、低成本和低功耗等优势,还应集成脉宽调制(pulse width modulation,PWM)模块、高精度的模数 (analog to digital,A/D) 转换模块以及串行通信(serial peripheral interface,SPI)端口等功能模块。因此,选择16位微控制器MC9S12XEP100作为主控芯片。MC9S12XEP100具有16位微控制器的优势,同时又具有堪比32位微控制器的高性能,8通道PWM满足使用需求,2个16通道、12位A/D转换器可以保证A/D采集的准确性。

最小系统是单片机维持内部运行所要求的最简单电路。采用频率为4 MHz的晶振输出稳定的时钟信号提供给主控芯片,写入器接口电路可以在程序开发过程中擦除和下载微控制器内的程序、在线调试、观测变量的变化等,复位电路中RESET引脚常接VCC,当RESET引脚被拉低时可以使单片机强制复位。

1.2 电源模块设计

由于车载蓄电池的输出电压为12 V,应通过降压芯片将12 V电压转换为5 V,供主控芯片及各子模块使用。电源供电电路原理如图1所示,其中U1为TPS5430模块,为降压稳压器,内部包含过流限制、过压保护和热关断保护功能[7-10],该芯片运行的外部环境温度为-40~125 ℃,能够将5.5~36.0 V的输入电压稳定地输出为5 V;比例电磁阀需要12 V电压驱动,图中Q2为P沟道MOS管,Q1为三极管,MOS管的源极VBAT连接车载蓄电池,栅极通过电阻连接到三极管的集电极,BoradPwrON连接到控制器主控芯片的输入输出(input output,IO)口,只有当BoradPwrON端口接收到来自主控芯片的高电平时,MOS管的漏极VBAT_PO才输出12 V电压。

图1 电源供电电路原理图

1.3 A3942四通道高边栅极驱动器电路设计

A3942四通道高边栅极驱动器是一款高度集成的栅极驱动器,串行外设接口SPI的相容性可以使该装置轻松地集成到现有的硬件电路中。A3942外围电路原理如图2所示,图中U4为A3942模块, SDO、SDI、CSZ和SCLK为SPI端口,可以进行输出控制以及故障诊断,FAULT引脚用来指示故障,通过电阻R16上拉到VCC,当内部出现故障时FAULT引脚输出低电平,将A3942_FAULT引脚拉低,当控制器检测到A3942_FAULT引脚为低电平时则表示A3942内部发生故障;ENB引脚控制使能输出;IN1~IN4为输入引脚,G1~G4为输出引脚。以第一路通道为例介绍A3942模块的连接情况,IN1连接主控芯片PWM输出,G1连接MOS管的栅极,S1连接MOS管的源极,D1连接MOS管的漏极,U2为AD8211模块。

图2 A3942外围电路原理图

电控空气悬架电流闭环控制系统主要通过电子控制单元(electronic control unit,ECU)为比例电磁阀驱动电路输出不同占空比的PWM信号,不同电流下比例电磁阀开度不同,从而控制油液的流动,实现电控空气悬架的阻尼调节。车载速度传感器与加速度传感器采集当前车身的速度和加速度,ECU根据当前车身速度与加速度计算出当前状态下空气悬架的期望阻尼,根据比例电磁阀的特性,通过阻尼与电流之间的对应关系求解出期望的阻尼所对应的电流。AD8211将连接电磁阀电路检测电阻的2个引脚(#Solenoid_CH1_P、#Solenoid_CH1_N)之间的压差放大20倍,通过#Solenoid_CH1_CRT引脚输出电压信号给主控芯片,主控芯片通过A/D采集结果计算出当前驱动电路中的实际电流作为反馈值,该反馈值与电流的期望值进行比较得出电流偏差,通过PID进行调节,实现比例电磁阀电流的闭环控制。

2 软件设计

2.1 SPI模块配置

主控芯片通过SPI与A3942模块通信来控制输出以及诊断故障。A3942模块SPI通信的时钟频率最高为8 MHz,要求时钟极性和时钟相位相应的寄存器值均设置为0。

对SPI模块进行初始化配置时,首先通过读取状态寄存器和数据寄存器将接收标志位清0,然后通过配置波特率寄存器的分频因子设置SPI波特率,通过SPI控制寄存器设置时钟极性、时钟相位、主机模式和高位先发等配置。

2.2 A/D模块配置

主控芯片采集车身速度传感器和加速度传感器信号,计算当前空气悬架的期望阻尼;采集AD8211模块信号,计算当前电磁阀电路中电流作为PID的反馈;因此电流采集模块的精确性直接影响电流闭环控制系统控制效果。

MC9S12XEP100提供16通道、12位的高精度A/D模块,初始化A/D模块时,通过控制寄存器设置采用的时间和频率,配置采用精度。对电磁阀驱动电路电流进行A/D信号采集时,先进行中值滤波再进行均值滤波,降低干扰信号对控制系统的影响。

2.3 PWM模块配置

主控芯片产生不同占空比的PWM信号驱动电磁阀,MC9S12XEP100拥有8个独立的可编程周期和占空比的PWM通道。2个8位的PWM通道可编程实现联结为16位分辨率,带有可编程的中心对齐输出模式和左对齐输出模式,拥有4个可供选择的时钟源,可以实现宽范围的时钟频率配置。

初始化PWM模块时,首先应通过寄存器设置时钟频率,选择时钟源,设置输出对齐方式以及PWM的脉冲极性。

2.4 增量式PID控制算法

PID及其衍生算法是目前国际上应用最广泛的控制算法之一,相对其他控制算法简单,参数易于调整,广泛应用于工业控制领域。PID控制器包括3部分:比例环节、积分环节和微分环节[11]。比例环节能够快速的降低误差,但是在稳态后容易产生稳态误差;积分环节通过对误差进行累计,使稳态误差逐步缩小;微分环节对误差的变化趋势进行预测,避免超调[12-13]。本系统PID的控制原理如图3所示,其中执行机构由A3942模块及外围MOS管等电路组成,测量元件由AD8211模块及主控芯片的A/D采集模块组成。

图3 控制原理图

PID控制算法的表达式为:

(1)

式中:u(t)为控制器输出的控制量,为PWM的占空比;e(t)为电流偏差,等于期望电流与实际电流的差,A;Kp为比例环节权重;Ki为积分时间常数;Kd为微分时间常数;t为时间,s。

电控空气悬架系统属于离散系统,所以采用离散化PID控制,其表达式为:

(2)

根据式(2)可以得出增量式PID表达式为:

Δ(u(t))=Kp[e(t)-e(t-1)]+Kie(t)+Kd[e(t)-2e(t-1)+e(t-2)] 。

(3)

增量式PID没有误差累计,Δ(u(t))只与最近3次的电流偏差有关,当系统出现问题时不会严重影响系统工作,容易获得较好的控制效果。

PID控制程序需要周期执行,理论上执行周期时间越短控制效果越好。经实际测试,PID控制程序执行时间约为0.25 ms,在实际应用中,控制器还需要对其他信息进行处理,综合考虑控制器负载情况,将PID控制程序执行周期设为2 ms,既可以获得较好的控制效果,又使得控制器的负载率不至于过高,PID的控制流程如图4所示。

图4 PID控制流程图

3 电流闭环控制系统功能测试

为了验证所设计的电流闭环控制系统的准确性与可靠性,对所设计的电流闭环控制系统进行了功能完整性测试。在实验室搭建功能测试硬件平台,在比例电磁阀驱动电路中串联高精度的电流表,实时观测当前电路中的电流,方便与设定电流进行比较;并在试验台架搭建了功能测试平台, 主要对所设计的电流闭环控制系统能否准确控制产生期望的电流进行测试。

在确保线路正确连接的情况下接通电源,采用试凑法对PID参数进行整定,3组不同的PID参数下稳态电流的变化情况如图5所示。

图5 不同参数下电流对比

由图5可知:第一组参数下的实际电流最为稳定,其电流全部落在了允许的误差范围之内,其余2组参数的实际电流均超出误差允许范围,选择第一组参数作为PID的控制参数。

PID的动态特性在实际应用中至关重要,为了观测PID的动态特性,设置期望电流为500 mA,记录电流变化情况如图6所示。

图6 电流动态特性

由图6可知,经过40 ms系统趋于稳定,实际电流维持在497~503 mA,满足调节时间为60 ms和误差为±3 mA的要求。

为了验证该组参数的性能,在同一组PID控制参数下对300~1200 mA电流进行调节,将测试电流与设定的期望电流进行比较,部分测试数据和期望电流比较如表1所示。

由表1可知:通过该组PID控制参数调节的电流闭环控制系统能够将比例电磁阀驱动电路的电流误差维持在±3 mA以内,从而实现对空气悬架阻尼的精准调节。

表1 部分测试数据与期望电流 mA

4 故障检测系统设计

4.1 故障寄存器

A3942四通道高边栅极驱动器具有丰富的故障检测功能,输出故障寄存器为8位数据寄存器,通过SPI将内部故障寄存器中的数据发送出来。

故障寄存器的D0是短接至地(short-to-ground,STG)故障位,每路MOS管的漏极到源极的电压都会受到监控。在测试STG故障时,将MOS管的源极接地,读取A3942模块SPI端口发送的数据,若D0为1,表示检测到STG故障。

故障寄存器的D1为短接至电源(short-to-battery,STB)故障位,首先配置引脚或者通过SPI将A3942模块栅极驱动输出关闭,如果Sx引脚的电压超过阈值电压,则会锁存STB故障。当某个通道的STB故障被锁存时,该通道的栅极驱动输出被禁止,直至故障位被清除(通过输入寄存器D3)或者状态故障诊断被屏蔽(通过输入寄存器D4)。在测试STB故障时,将MOS管的源极接12 V电源,读取A3942模块SPI端口发送的数据,若D1为1,表示检测到STB故障。

故障寄存器的D2为负载开路(open load,OL)故障位,一个小的偏置电流从通道的Sx引脚流出,如果负载开路,Sx引脚的电压将上升到 OL 故障检测阈值以上,模块锁存OL故障。当某通道的OL故障被锁存时,该通道的栅极驱动输出被禁止,直至故障位被清除(通过输入寄存器D3)或者状态故障诊断被屏蔽(通过输入寄存器D4)。测试OL故障时,将比例电磁阀电路断开,读取A3942模块SPI端口发送的数据,若D2为1,表示检测到OL故障。

故障寄存器的D3为热警告故障位,A3942 芯片上集成了一个管芯温度监视器。如果芯片温度接近最大允许水平,将触发热警告信号。在测试热警告故障时,使用热风枪持续加热A3942模块一段时间,读取A3942模块SPI端口发送的数据,若D3为1,表示检测到热警告故障。

故障寄存器的D4为电荷泵欠压故障位,电荷泵必须保持一个高于 VBB 的电压保护带,以便在需要打开MOS管时为栅极充电。如果在电荷泵上检测到欠压条件,所有输出将被禁用。测试时将A3942的供电电压降低,读取A3942模块SPI端口发送的数据,若D4为1,表示检测到电荷泵欠压故障,在实际测试中,当A3942芯片的供电低于4 V时,则锁存电荷泵欠压故障。

4.2 软件设计

为了方便对系统进行故障诊断,通过Python设计了一款故障诊断系统上位机软件,通过控制器局域网络(controller area network, CAN)总线与控制器通信,并将故障数据进行解析。电流闭环控制故障诊断软件连接测试界面如图7所示。将控制器通过CAN卡与上位机连接,选择合适的波特率之后点击“打开CAN卡”按钮即可初始化CAN卡配置,点击“连接测试”按钮即可测试当前通信的连接状态。当需要对某个通道进行诊断时,下拉菜单选择想要诊断的通道,点击“读取故障”按钮,“诊断状态栏”显示目前通道的故障状态,并附带维修建议,当对当前通道存在的故障做出维修后,点击“清除故障”按钮,即可清除当前通道的故障,以通道1短接至电源为例,读取与清除故障运行结果如图8所示。

图7 连接测试界面 图8 通道1读取故障与清除故障

5 结语

基于增量式PID的电控空气悬架电流闭环控制系统,设计了电控空气悬架控制器的硬件电路,实现了增量式PID对比例电磁阀驱动电流的准确调节,电流误差维持在±3 mA之内;开发了故障诊断系统,实时显示当前故障状态及维修建议。该系统可以精准调节电控空气悬架的阻尼。

猜你喜欢
闭环控制寄存器电磁阀
高速电磁阀驱动电路故障诊断与补偿系统研究
基于ANSYS Maxwell的比例电磁阀隔磁环仿真分析与优化
低速机电控喷油器电磁阀换热特性计算
基于LMI的过渡态主控回路闭环控制律优化设计
火力发电厂常用电磁阀浅谈
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
数字电路环境下汽车控制电路信号设计
基于STM32的无位置传感器BLDCM控制系统设计
基于STC单片机的闭环反馈控制智能鞋柜系统设计