基于MATLAB GUI的AMT插电式系统数据分析软件设计*
2015-07-25李勇华郭淑英宋超湖南工业大学电气与信息工程学院湖南株洲4000南车株洲电力机车研究所有限公司湖南株洲4007湖南南车时代电动股份有限公司湖南株洲4000
李勇华,郭淑英,宋超(.湖南工业大学 电气与信息工程学院,湖南 株洲 4000;.南车株洲电力机车研究所有限公司,湖南 株洲 4007;.湖南南车时代电动股份有限公司,湖南 株洲 4000)
基于MATLAB GUI的AMT插电式系统数据分析软件设计*
李勇华1,郭淑英2,宋超3
(1.湖南工业大学 电气与信息工程学院,湖南 株洲 412000;2.南车株洲电力机车研究所有限公司,湖南 株洲 412007;3.湖南南车时代电动股份有限公司,湖南 株洲 412000)
AMT插电式汽车经济性、动力性和换挡平顺性对其整车性能有着重要影响。通过分析AMT插电式系统结构,设计了集数据采集与数据分析的上位机软件,此上位机软件采用MATLAB与C语言混合编程的方法,同时利用MATLAB强大数据处理和数据分析功能,实现了对工况数据采集和存储,完成数据的解析和图形的绘制。重点阐述AMT插电式系统分析软件设计方法。对用户开发MATLAB GUI应用程序和数据分析等相关问题具有借鉴意义。
MATLAB;GUI;AMT;插电式
0 引言
环保与节能成为当今世界主题,改善传统汽车高污染、高耗能的状况成为当前世界各国重点研究方向,因此高效、节能的新能源汽车成为汽车行业发展的必然趋势[1]。插电式混合动力汽车作为当前主要的新能源汽车,其中AMT(Automated Mechanical Transmission)插电式混合动力汽车具有功率传递能力强、成本低[2-4]等特点,已被广泛应用。
AMT插电式系统具有复杂的动力系统结构,对其动力性、经济性和换挡平顺性进行评价时,需要处理大量工况数据。当前上位机软件主要在VC和Java界面开发平台下使用,但是在数据处理时需要编写大量程序代码,但MATLAB可以用少量且简单的函数语句实现数据处理功能[5]。MATLAB强大的矩阵运算功能,能在短时间内完成数据整理和重建,同时MATLAB具有强大绘图功能,利用简单的绘图指令就能实现图形绘制,MATLAB还拥有GUI(Graphical User Interface)图形界面工具箱,能实现MATLAB在科学计算领域分析和结果可视化。因此采用MATLAB/GUI开发了AMT插电式系统数据分析软件有巨大优势。
1 AMT插电式系统
1.1系统结构
AMT插电式系统具有纯电动起步,可以外接电源充电,并且能自动变速等特点,其动力系统由发动机、离合器、驱动电机、电池、AMT变速箱和机械传动装置组成,结构图如1所示。发动机与电机通过电控离合器同轴连接,电控离合器适时地连接和中断发动机与电机之间联系;电机通过AMT变速器档位变换并通过机械传动装置将动力传递给车轮,驱动汽车行驶;动力电池为储能装置。
图1 ATM插电式动力系统结构Fig.1 ATM plug-in power system architecture
1.2网络架构
CAN(Controller Area Network,CAN) 是ISO国际标准化通信协议,AMT插电式系统是基于多条CAN总线构建的整车网络。由图2可知,AMT插电式系统中CAN通信设备包括整车控制器、电机控制器、发动机控制器ECU、AMT控制器、电池管理系统,仪表等。整车控制器、电机控制器、AMT控制器的通信任务影响车辆运行状态与驾驶安全、实时性要求最高,因此将其分布在实时性要求高的CANA网络上;电池管理系统对储能系统运行状态进行维护,实时性要求一般,信息量大,仪表主要进行数据接收,将它们接到实时性要求不高的CANB网络;由于发动机ECU消息遵循SAE J1939协议,将其挂在CANC网络[6]。
1.3工作模式
AMT插电式电动汽车工作模式复杂,根据其系统结构特点,车辆行驶时,可以分为以下几种工作模式。
1)纯电动模式:车辆起步和低速行驶时,AMT变速器自动分离离合器,利用电机低速大扭矩的特性,电池将电能传递给电机,由电机单独驱动车辆起步行驶。同时发动机一直处于关闭状态,避开发动机效率工作低的区间。
2)混合驱动模式:当车辆需要大功率时,比如爬坡和急加速时,AMT变速器会控制离合器结合与档位变换,使发动机和电机共同驱动汽车行驶。
图2 AMT插电式系统网络结构Fig.2 AMT plug-in system network architecture
3)发动机驱动和电机发电模式:电池荷电状态(SOC)低于限定值时,驱动电机由驱动模式变为发电模式,发动机一部分能量用于驱动车辆行驶,另一部分通过电机给电池冲电。
4)制动能量回收模式:当驾驶员踩制动踏板使汽车车速降低时,电机此时变为发电机,回收能量给电池充电。
5)停车充电模式:汽车停车,发动机熄火,AMT变速器控制离合器分离,若此时电池SOC较低,则外接电网实行充电。
由上可知,整车控制器负责电机、发动机的动力分配;AMT控制器在车辆运行时完成档位切换和离合控制。由于部件的复杂性和工作模式的多变性,在评价整车性能时,需进行大量工况数据分析,基于此需求设计了集数据采集与数据分析上位机软件—AMT插电式系统数据分析软件。
2 设计思想
AMT插电式系统数据分析软件,利用MATLAB与C语言混合编程,MATLAB做上层调用,利用M语言进行开发,C语言做底层驱动,调用C语言编写好的函数库,以MATLAB的GUIDE工具箱进行辅助,设计该软件人机交互界面。
图3 AMT插电式混合动力系统软件结构Fig.3 AMT plug-in hybrid system software architecture
2.1软件结构
AMT插电式系统数据分析软件应具有采集和分析工况数据功能,并将分析结果以图形和报表的形式直观反映出来,为了实现此要求,需要满足以下几个条件:
1)实现CAN通信,可以采集数据并存储到寄存器中。
2)将采集到的数据进行解析,并且进行数据分析。
3)完成数据分析后,提供数据绘图和数据报表。
4)具有完整的系统接口,方便数据导入与导出。
在详细的设计分析基础上,构建基于MATALAB GUI的AMT插电式系统数据分析软件,如图3所示,先执行通信模块中的程序,完成对工况数据采集和存储,然后将存储到数据通过数据解析模块,实现数据解析,完成解析后该软件会将数据解析结果存储在MATLAB工作空间,完成数据分析后,数据将以绘图和报表形式显示分析后的结果。
2.2通信模块
MATLAB提供了动态链接库DLL接口,可以在MATLAB中调用动态链接库所导出的函数。完成MATLAB对动态链接库函数调用步骤:首先打开动态链接库,再调用函数准备的数据,然后调用动态链接库中导出的函数,最后关闭动态链接库。其中要用到的MATLAB函数有:loadlibrary,calllib,libfunctions,libpointer,libstruct,unloadlibrary[7-8]。
AMT插电式系统数据分析软件开始通信时,首先调用C语言编译好的动态链接库,导出其中函数,实现CAN驱动,然后实现对上位机软件初始化、接收与发送CAN网络信号,完成对动力系统部件数据采集工作,具体流程如图4所示。由于CAN网络中的数据是持续不断发送的,所以在MATLAB中加入了定时器函数,周期性调用DLL中的接收函数,并采集工况数据;在CAN网络中有些报文数据非广播帧,需要请求帧报文进行激活,所以通过发送函数激活此报文发送[9]。
在进行数据采集同时,该软件将采集到的数据保存在寄存器中,同时为了保存数据的可靠性和稳定性,在调用C语言函数库中,定义了CAN滤波器的范围结构体,通过数字滤波算法[10]确保数据可靠性,同样也在C语言中编译对缓冲区数据的接收和清除的函数,并采用缓存算法[11],防止数据出现丢包现象。
2.3数据解析
在CAN协议中,所有数据消息都是按照固定格式发送报文。CAN有两类消息帧:标准帧和扩展帧。其中扩展帧具有29位标识符(ID),前11位与标准帧一样,后18位专用标记CAN2.0B的消息帧。CAN的消息帧中数据帧用于数据的传送与接收,数据帧中数据段由发送数据组成,可包括0~8字节。
AMT插电式系统数据分析软件对报文进行解析时,首先通过C语言汇编赋值,将每个控制变量赋值给不同ID数据段,数据段中每个字节分别对应变量不同状态。数据格式定义:数据类型、比例因子、范围、偏移量和字节数,为了增加网络的容错性,关键的控制变量增加了偏移量。公式如下:
式中T为解析后数据值,A为实际值,D为偏移量,R为比例因子。其中偏移量相加还是相减,由数据处于发送端还是接收端进行决定。
如总线电压,如果控制器测到总线电压是384.5V,则该数据的值应是3845,但是如果要通过网络将该值发送出去,则实际应发送(3845-(-10000))=13845,也就是说,其他结点收到这个值是13845,应该这样计算:(13845+(-10000))*0.1=384.5V。显然,如果网络上传来一个表示总线电压的数据其值在0到10000之间的话,那么肯定该值是网络传输过程中受到了干扰,应该滤掉该数据,因为该值减去10000后小于0,超出了该数据的范围。
图4 数据采集流程图Fig.4 Data Acquisition flowchart
2.4数据分析
由AMT插电式系统结构可知,整车性能与发动机、电机、AMT和电池等部件相关,同时司机的驾驶行为也影响着整车性能。因此在对工况数据进行分析时需主要关注以下变量。
1)发动机需关注参数:水温、转速和油门。水温正常,说明发动机工作时散热正常;通过发动机转速与油门,将其转换成发动机效率分布图,可了解发动机的工作状态和其经济性。
2)电机具有驱动和制动的功能,通过电机的转速和扭矩,了解电机工作情况,同时通过描点可得电机效率分布图,得到制动和驱动时电机效率利用情况,分析电机对整车动力性的影响。
3)AMT变速器换挡策略影响着整车平顺性,如果换挡控制时间过长,会使车辆出来强烈的扥挫感,并对换挡机构造成严重机械损伤,所以AMT变速器数据,有助于优化换挡策略。
4)电池承担着能量存储和供给,在纯电动模式和混动模式下,如果电池的电压、电流,SOC和充放电电流设置不合理,BMS会对电池限功保护,甚至禁止电流输出,直接影响整车动力性。
5)不同的驾驶员驾驶习惯存在差异,驾驶行为对整车经济性有直接影响,对驾驶行为的分析有助于提高整车的经济性,驾驶行为可以通过制动踏板与加速踏板被踩频繁次数与行程深度分析得出。
2.4.1发动机分析
以发动机效率分布图为例,结合发动机万有特性图,观察发动机效率利用情况。发动机万有特性曲线由等燃油率消耗曲线、发动机外特性曲线和等功率曲线组成,利用最小二乘法[12]和插值法,结合公式Pe=Tq*n/9550,其中Pe为功率,Tq为扭矩,n为转速,绘制发动机万有特性图,将绘制好的发动机万有特性图作为发动机效率分配图的背景图。将发动机工作点描绘在万有特性图上,观察点的分布情况,得到发动机效率区间。发动机工作点是由转速与扭矩关系所得,但发动机扭矩不能直接通过采集数据得到,而发动机负荷率可以得到,利用发动机负荷率与外特性的关系,采用插值法就能得到此负荷率的扭矩。
2.4.2整车信息
为了对AMT插电式动力汽车整车工况进行整体分析,AMT插电式系统分析软件将整车信息以报表方式显示出来。整车信息包括:百公里油耗、运行时间、百公里怠速油耗、平均车速、行驶里程、工作模式和工作状态。通过整车信息可以直观的得到整车的经济性和能量利用情况;其中通过工作模式和工作状态,可以了解到纯电动模式、混合动力模式、行车发电等状态时能量输入与输出,效率利用和发动机油耗等情况。
3 试验结果
本论文以某型号AMT插电式汽车为实验对象,使用AMT插电式系统数据分析软件对某段公交线路进行数据采集和数据分析,对其进行验证。通过此数据分析软件数据分析后,得到如下的分析数据图。由图5可知,由左图电机效率分布图可知,在纯电动起步时,电机主要工作在较低转速高扭矩区间。当转速过低且扭矩越大时,效率越低。当纯电动起步时,由于加速度大,扭矩需求大,如果为了满足高效率而限制扭矩,会导致车辆动力性不足。因此纯电损耗的改进与电机自身效率特性相关,选择低转速的电机或增加减速比,可提高电机工作效率,降低纯电起步阶段的能量损耗。由右图发动机效率分布图可知,发动机主要工作在怠速模式和驱动模式下。由图可知发动机怠速模式过长,这样会导致怠速油耗过高,会对车辆的经济性产生影响,需要对整车控制策略进行优化,增加停机时间,减少怠速时间。
通过图6可知,其中紫色为电机转速,红色为电流,灰色为档位,AMT插电式汽车2档起步,电机工作,发动机处于怠速状态,当进行4档后,发动机进入直驱,电池在此变换过程中,出现了充放电情况,进行了能量的循环,并使SOC一直处于动态稳定状态,实现了动力电池的电池保护和充分运用的平衡,说明控制策略合理,提高整车的经济性和动力性。
4 总结
通过对MATLAB和C语言混合编程使用,同时结合MATLAB/GUI工具,开发了AMT插电式系统数据分析软件。该软件对工况数据处理后,将结果以图形和表格的方式,清晰、形象的显示出来,清晰准确的对AMT插电式汽车整车性能进行评价。同时它还能可通过分析采集到的工况数据,发现系统中潜在的问题,完成控制策略优化,从而提高整车性能。通过大量事例和测试,AMT插电式系统数据分析软件能方便有效的对AMT插电式汽车整车性能进行评价。
图5 发动机与电机效率特性图Fig.5 Engine and the motor efficiency characteristic diagram
图6 AMT电池信息图Fig.6 AMT battery information map
[1] 陈长同. 并联混合动力客车AMT换挡策略的研究[M]. 吉林大学,2011:1-3.
CHEN Chang-tong. Study on the AMT shift strategy for Parallel Hybrid Electric Bus[M]. Jilin University,2011: 1-3.
[2] 王锋,冒晓建,卓斌,等. AMT混合动力系统驱动模式能量优化控制[J]. 吉林大学学报,2009:15-17.
WANG Feng,MAO Xiao-yan,ZHUO Bin,et al. Power management for hybrid electric system during driving[J]. Journal of Jilin University (Engineering and Technology Edition),2009: 15-17.
[3] 姜建伟,易吉良,贺正芸,等. 纯电动汽车制动分配策略的建模与仿真[J]. 新型工业化,2015,2(2):19-26.
JIANG Jian-wei,YI Ji-liang,HE Zheng-yun,et al. Modeling and Simulation of pure electric cars brake distribution strategy[J]. The Journal of New Industrialization,2015,2 (2): 19-26.
[4] DENG Y,GONG J,YANG J,et al. An investigation on energy optimisation of the CFA6470 parallel hybrid electric vehicle[J]. International Journal of Electric and Hybrid Vehicles,2008,1(2): 166-187.
[5] 邱金蕙,王矞辉,李振全. 基于Matlab/GUI的新界面开发方式[J]. 河北工业科技,2008:233-236.
QIU Jin-hui,WANG Yu-hui,LI Zheng-quan. Interface developed new way Based on Matlab / GUI [J]. Hebei Journal of Industrial Science and Technology,2008: 233-236.
[6] 宋超,席立克,罗锐. 基于AMT并联混合动力系统的CAN通信设计[J]. 微型机与应用,2015:59-60.
SONG Chao,Xi Li-ke,Luo Rui. The CAN communication design based on AMT parallel hybrid system [J]. Microcomputer&Its Applications,2015: 59-60.
[7] 罗华飞. MATLAB GUI设计学习笔记[M]. 北京:北京航空航天大学出版社,2009:346-420.
LUO Hua-fei. MATLAB GUI design study notes [M]. Beijing:Beijing University of Aeronautics and Astronautics Press,2009: 346-420.
[8] 陈杰. MATLAB宝典[M]. 北京:电机工业出版社,2007.
Chen Jie. MATLAB Collection [M]. Beijing: Motor Industry Press,2007.
[9] 潘大夫,汪渤,周志强. Matlab与C/C++混合编程技术研究[J]. 计算机工程与设计,200930(2):465- 468.
Pan Dai-fu,Wang Bo,ZHOU Zhi-qiang. Research on mixed programming technology of Matlab and C/C++ [J]. Computer Engineering and Design,2009,30 (2): 465-468.
[10] 任克强,刘晖. 微机控制系统的数字滤波算法[J]. 现代电子技术,2004,3(3):15-18.
Ren Ke-qiang,Liu Hui. Digital filtering algorithm microcomputer control system[J]. Modern electronic technology,2004,3 (3): 15-18. [11] Jtraining. 缓存、缓存算法和缓存框架简介[OL]. 2013-3-13,http://blog.jobbole.com/30940/ Jtraining caching. Caching algorithms and caching frameworks Profile [OL]. 2013-3-13,http: //blog.jobbole.com/30940/
[12] 朱宗明,姜占才. 小波递归最小二乘语音自适应增强[J]. 新型工业化,2015,7(1):18-23.
ZHU Zong-ming,JIANG Zhan-cai. Recursive Least Squares adaptive wavelet speech enhancement [J]. The Journal of New Industrialization,2015,7 (1): 18-23.
The Software Design of AMT Plug-in System Data Based on the MATLAB GUI
LI Yong-hua1, GUO Shu-ying2, SONG Chao3
(1.College of Electrical and Information Engineering, Hunan University of Technology, Zhuzhou Hunan 412000, China; 2.The CSR zhuzhou electric locomotive research institute co., LTD., Zhuzhou Hunan 412007, China; 3.Hunan CSR times electric co., LTD., Zhuzhou Hunan 412000, China)
AMT plug-in cars economy, power and smooth shifting of its vehicle performance has an important impact. By analyzing the AMT plug-in system structure, design a set of data collection and data analysis upper computer software, the upper computer software using C language and MATLAB mixed programming method, while using MATLAB powerful data processing and data analysis functions, the realization of data acquisition and storage conditions, complete analytical drawing and graphic data. AMT focuses on plug-in system analysis software design methods. With a reference to the related problems of user MATLAB GUI application development and data analysis.
MATLAB; GUI; AMT; Plug-in
10.3969/j.issn.2095-6649.2015.10.006
LI Yong-hua, GUO Shu-ying, SONG Chao. The Software Design of AMT Plug-in System Data Based on the MATLAB GUI[J]. The Journal of New Industrialization,2015,5(10): 32-37.
插电式混合动力客车产业技术攻关(国家863计划)(2011AA11A209)
李勇华(1989-),男,在读研究生,主要从事复杂系统建模与仿真;郭淑英(1957-),女,教授,主要从电动汽车研究;宋超(1987-),男,工程师,主要从事电动汽车整车系统研究
本文引用格式:李勇华,郭淑英,宋超.基于MATLAB GUI的AMT插电式系统数据分析软件设计[J]. 新型工业化,2015,5(10):32-37.