基于模型的燃料电池物流车能量管理策略开发
2023-11-22肖兴伟杨继斌邓鹏毅黄瑞珂
肖兴伟,杨继斌,邓鹏毅,黄瑞珂
(1.四川工业科技学院,四川 德阳 618500;2.西华大学汽车与交通学院,四川 成都 610039)
目前,由于化石燃料消耗过大、排放污染物造成环境污染严重等问题突出,各国都致力于寻找可再生、更加清洁的能源作为汽车能量源。氢燃料电池以其清洁、高效、无污染等优点成为当下发展热点[1]。经济发展和城市化进程加快,对货物运输车辆的节能减排性能提出了更高的要求:一是从高污染、高排放车辆向低污染、低排放清洁运输车辆发展;二是从高燃耗、低效率车辆向低燃耗、高效率运输车辆发展[2]。因此,氢燃料电池物流车成为当前国内外解决这一问题的有效方案。
燃料电池物流车一般采用燃料电池与动力电池或超级电容等组成混合动力源,通过调节动力源的能量输出,可满足汽车行驶动力需求,并且提升燃料电池效率;因此,燃料电池混合动力汽车能量管理策略对于提升燃料电池经济性和耐久性至关重要。燃料电池混合动力汽车能量管理策略主要有基于规则[3]、基于优化[4]和基于学习的[5]方法。基于规则的能量管理策略适合在线应用,可以在嵌入式处理器高效运行。基于优化的能量管理策略可以达到最优的控制结果,但是计算量大,在线应用比较困难。基于学习的能量管理策略可以基于实时和历史信息的大数据集,实现自主学习最优控制策略和自适应能力[6]。为加快燃料电池混合动力物流车能量管理策略的开发与验证,基于模型的控制策略开发[7-8]和硬件在环测试[9-10]是非常有效的方法。
本文在Matlab/Simulink 中建立基于规则式的燃料电池物流车能量管理策略,联合STM32-MAT与STM32CubeMX 完成STM32 控制器底层配置,自动生成在控制器运行的C 代码,结合dSPACE实时仿真系统完成硬件在环闭环控制测试。
1 燃料电池物流车建模
本文搭建燃料电池物流车正向的仿真模型,包括工况模型、驾驶员模型、控制器模型、燃料电池加动力电池的混合动力源模型、电机模型、传动系统模型、车轮模型、纵向动力学模型[11]。整车仿真模型顶层框图如图1 所示。
图1 整车仿真模型顶层框图Fig.1 Top level block diagram of vehicle simulation model
1) 工况模型。
工况模型主要用于输出需求车速。基于时间-速度模型,通过查表得出当前时刻需求车速,如式(1) 所示。
式中:fv为一维查表函数;vdem为工况需求车速。本文测试工况选择的是中国货车行驶工况(CHTC_HT),如图2 所示。
图2 中国货车行驶工况(CHTC_HT)Fig.2 China heavy-duty commercial vehicle test cycle-truck
2) 驾驶员模型。
驾驶员模型采用抗积分饱和的PID 模型方法,用于根据需求车速与实际车速的误差,调节加速踏板和刹车踏板的开度大小,以模拟驾驶员的操作,如式(2)所示。
式中:uPID∈[-1,1],uPID<0表示驾驶员踩下制动踏板,uPID>0表示驾驶员踩下加速踏板,uPID=0表示踏板处于放松状态;Kp、Ki、Kd分别为比例、积分、微分系数,取值为1.2、0、0.1;vdem为工况需求车速;vact为实际车速。
3) 控制器模型。
控制器模型根据驾驶员模型输入的踏板信号、车辆的车速信号及车辆各模块状态,按照能量分配策略,实时计算燃料电池和动力电池需求功率,完成控制量输出。
4) 燃料电池模型。
燃料电池输出电压表示为
式中:Eoc表示燃料电池稳态开路电压,V;Va表示阴极和阳极的活化过电压,V;Vc表示浓度过电压,V;Vohm表示欧姆过电压,V。
5) 动力电池模型。
动力电池模型使用Shepherd 方程[12]描述动力电池端电压与时间之间的定量关系。
式中:E为动力电池端电压;ES为空载时候的电池电压;i为放电电流;K、N、A、B为模型参数;Q为电池容量。
使用安时积分法计算电池荷电状态。
式中:SOC(t)为当前时刻动力电池SOC 值;SOC(t0)为初始时刻动力电池SOC 值;i为放电电流;Q为电池容量。
6) 车辆其他部件模型。
电机模型采用基于电机效率MAP 的静态模型,通过试验数据得到电机效率MAP 图,根据电机功率和电机转速,计算电机实际输出转矩。
根据传动系统的效率及传动比建立传动系统模型,模型通过驱动电机输出转速和转矩,计算出传动系统输出的转矩与转速。
车轮模型主要根据传动系统传出的实际转矩和转速,在驱动时得到汽车驱动力,在制动时得到汽车制动力合力。
在整车纵向动力学模型中,根据车轮受力情况,计算汽车的加速度,并积分得到汽车车速,如式(6)所示。
式中:Ft为车轮驱动力;Ff为滚动阻力;Fw为空气阻力;Fi为坡道阻力;V为汽车车速;a为汽车加速度;m为整车质量;δ为车辆旋转质量转换系数。
物流车参数如表1 所示。
表1 车辆参数Tab.1 Vehicle parameters table
2 基于规则的能量管理策略
本文开发基于规则式的能量管理策略,便于在控制器中高效运行。该能量管理策略优先输出燃料电池功率,燃料电池在动力电池电量低时可为动力电池充电,动力电池提供峰值功率,并且在制动时回收制动能量。
设物流车行驶所需的功率为P_n,燃料电池最大输出功率为P_fc_max,燃料电池最小输出功率为P_fc_min,动力电池最大放电功率为P_bat_dischrg_max,动力电池最大充电功率为P_bat_chrg_max,燃料电池功率输出为P_fc_bus,动力电池功率输出为P_bat_bus,汽车行驶速度为v_spd,电池SOC 值为Bat_soc。为保护动力电池,防止出现过充和过放,延长动力电池使用寿命[13],所设计的能量管理策略尽量维持动力电池SOC 值在40~85 之间。
具体能量管理策略如下。
当动力电池SOC <20时,动力电池为防止出现过放不再进行功率输出;当SOC <40时,燃料电池可对动力电池充电;当动力电池SOC ≥85,动力电池为防止过充不再回收制动能量。
1) 当0 ≤P_n ≤P_fc_max时,优先燃料电池输出。
当动力电池SOC <40,燃料电池可为动力电池充电,此时存在以下两种情况。
①燃料电池最大功率P_fc_max与需求功率P_n之差未超过动力电池最大充电功率P_bat_chrg_max,此时燃料电池以最大功率P_fc_max输出,动力电池充电功率大小为燃料电池最大输出功率与需求功率之差。
② 若燃料电池最大功率P_fc_max与需求功率P_n之差超过了动力电池最大充电功率P_bat_chrg_max,此时动力电池以最大充电功率P_bat_chrg_max充电,燃料电池输出功率满足车辆需求与动力电池充电。
当动力电池SOC >40,燃料电池不再为动力电池充电,此时燃料电池输出功率满足车辆行驶需求,动力电池不输出功率。
2) 当P_fc_max <P_n ≤P_bat_dischrg_max+P_fc_max时,燃料电池以最大输出功率P_fc_max输 出,剩余功率需求由动力电池输出。
3) 当P_n >P_fc_max+P_bat_dischrg_max时,燃料电池和动力电池都以最大输出功率输出。
4) 当汽车需求功率P_n <0时,表明汽车处于制动状态,此时燃料电池以最小输出功率P_fc_min输出,动力电池根据车速、SOC 等信息决定是否回收制动能量。
当车速v_spd <5 km/h时,动力电池不回收制动能量。当车速v_spd ≥5 km/h,此时存在以下两种情况。
①若制动功率大于等于动力电池最大充电功率P_bat_chrg_max,则动力电池以最大充电功率回收制动能量。
② 若制动功率小于动力电池最大充电功率P_bat_chrg_max,则动力电池能量回收功率大小为P_n的绝对值。
具体的能量分配流程如图3 所示。
图3 能量分配流程图Fig.3 Energy distribution flowchart
3 控制器开发
本文设计的控制器需采集动力电池SOC 值、汽车车速、燃料电池输出电压、燃料电池健康状态等信息,并且计算汽车行驶的需求功率,通过图3所示的能量管理策略实时管理燃料电池与动力电池功率输出。
3.1 控制器硬件
控制器采用STM32F103ZET6 单片机,基于高性能的ARM CortexTM-M3 32 位内核,工作频率最高可达到72 MHz,内置512 K 字节的闪存,满足程序存储要求,拥有丰富的外设,3 个12 位ADC 模块,2 个DAC 转换器,8 个定时器,以及丰富的通信接口(CAN、USART、SPI、I2C 等)。硬件包含最小系统的电源稳压模块、晶振电路、复位电路、I/O接口等,并采用基于TJA1050 芯片的CAN 收发器与外界控制器进行CAN 通信。
3.2 基于模型的控制器软件开发
控制器软件采用基于模型开发方式,应用Matlab/Simulink/Stateflow 可视化、图形化的模块快速建立控制策略模型[14-15]。而在Simulink 中集成STM32-MAT/TARGET 嵌入式目标工具箱。该工具箱提供管理STM32 外设数据的Simulink 模块库,可将相应外设模块拖放到Simulink 模型中,完成外设参数配置,建立控制器外设与控制策略模型之间的联系,最后使用Simulink 的Embedded Coder 生成相应控制策略模型嵌入式C 代码,经编译后可直接下载到控制器中运行。
基于STM32-MAT 联合Matlab/Simulink 软件开发步骤如下。
1) 使用图形化配置软件STM32CubeMX 对控制器的引脚、时钟、功能外设等进行配置,最终生成.ioc 文件。CAN 参数配置如图4 所示。
图4 CAN 参数配置界面Fig.4 CAN parameters configuration interface
2) 建立Simulink 模型,将STM32-MAT 工具箱中的MCU CONFIG 添加到模型中,关联之前建立的.ioc 文件。
3) 添加相应外设模块到控制策略模型,并配置相应参数。
4) 使用Embedded Coder 生成C 代码。
4 基于dSPACE 的硬件在环仿真测试
4.1 仿真测试概述
硬件在环测试是使用仿真模型替代物理被控对象,运行在实时仿真系统中,并通过I/O 接口及通信接口与实际控制器连接形成闭环,从而对控制器进行系统测试。
dSPACE 是基于Matlab/Simulink 开发的半实物实时仿真系统,可作为快速开发原型,充当控制器作用,也可以连接实际控制器,充当被控对象,实现在硬件上快速验证控制算法,以及对控制器或被控对象进行测试[16]。
燃料电池、动力电池、电机、传动系统、车轮、整车动力学、驾驶员、工况等模型同时运行在dSPACE 中,得到车辆实时运行数据。dSPACE 将电池SOC 值、实际车速值等整车部件运行相关信息通过CAN 总线发送给控制器,以便控制器完成计算控制输出。
本文通过Simulink Coder 将整车能量管理策略模型生成嵌入式C 代码,编译后下载到真实控制器。将整车模型编译后加载到dSPACE 中,控制器通过CAN 总线与dSPACE 连接进行信息通信交互,并通过ControlDesk 软件图形化、可视化地管理测试变量,进行在线测试管理。测试实物如图5所示。
图5 测试实物图Fig.5 Picture of test object
4.2 测试结果及分析
本文主要对基于模型开发的控制器进行测试,验证整车控制器硬件功能,包括通信功能,测试基于代码生成的软件逻辑功能的正确性。
1) 物流车速度测试结果。
测试燃料电池混合动力物流车在中国货车行驶工况(CHTC_HT)下速度响应跟随情况,验证在控制器能量分配下车辆运行情况。速度测试结果如图6 所示。
图6 车速测试结果Fig.6 Test results of vehicle speed
由图6(a)可知,离线仿真车速与硬件在环测试车速重合度非常高,图6(b)显示车速绝对差值最大仅为0.860 5 km/h,未超过1 km/h,说明控制器硬件与软件功能运行正常,控制策略实时性好。
2) 燃料电池与动力电池能量分配。
车辆需求功率、燃料电池及动力电池输出功率、动力电池SOC 值离线仿真与硬件在环测试结果如图7 所示。
图7 功率及SOC 测试结果Fig.7 Test results of power and SOC
由图7 可以看出:离线仿真数据与硬件在环测试数据吻合度高,车辆需求功率(a)、燃料电池输出功率(b)、动力电池输出功率(c)及SOC 值(d)标准差误差分别为0.505%、0.2%、0.866%、3.475%,说明控制器能够准确实时地根据能量管理策略进行动力输出分配,满足整车能量管理需求。
5 结论
为快速地对燃料电池物流车能量管理策略进行开发与在线验证,本文建立燃料电池物流车整车模型,并借助STM32-MAT 工具箱与STM32CubeMX,快速建立起控制策略模型与控制器外设之间的联系,自动生成目标C 代码,可直接编译下载到真实控制器中运行,控制器连接dSPACE 实时仿真系统进行闭环测试。从测试结果可以看出硬件在环测试结果与离线仿真结果差异较小,可以得到以下结论。
1) 通过图形化简单操作配置控制器外设参数,将控制器外设与控制策略模型直接连接,自动生成控制器运行C 代码,无须开发人员进行复杂的单片机开发工作,降低了嵌入式开发难度,提升了开发效率。
2) 形成整车闭环测试系统,满足燃料电池汽车能量管理策略前期在线验证需求,检验控制策略在线运行效率,为控制策略后续的实车应用铺平道路。
当前工作主要是对提出的基于模型开发与硬件在环测试方法进行验证,仅开发了规则式的能量管理策略,未来可以深入研究基于优化及基于学习的能量管理策略在线验证及应用,达到最优控制结果。