潘晓东, 龚俊星, 刘祥环,2
(1.株洲齿轮有限责任公司, 湖南 株洲 412000;2.中南大学机电工程学院, 长沙 410083)
基于Simulink的MIL自动化测试
潘晓东1, 龚俊星1, 刘祥环1,2
(1.株洲齿轮有限责任公司, 湖南 株洲 412000;2.中南大学机电工程学院, 长沙 410083)
介绍了某TCU产品软件的MIL测试平台搭建、测试案例的建立以及自动化测试的实现过程;自动化测试方法的应用能保证测试的可重复性,显著提高MIL测试的效率。
MIL测试;软件;自动化测试
基于模型的嵌入式软件设计方法已成为汽车电控软件开发的主流方式,相比于传统的手动代码编程,其优势在于图形化的设计语言易于理解与交流,以及软件前期充分的仿真测试能保证软件的质量[1];MIL测试作为验证软件模型单元和系统功能逻辑的重要手段是该开发流程中至关重要的一个环节;MATLAB/Simulink提供了一个动态系统建模、仿真和综合分析的集成环境,其图形化的建模工具能快速建立复杂的整车动力、传动系统部件模型以及整车动力学模型,同时Simulink也是主流的基于模型的汽车嵌入式软件设计工具,因此基于Simulink的MIL(Model in Loop)自动化测试方法的能在统一的设计平台进行软件功能逻辑的前期验证,非常具有实用性。
1.1 测试对象与MIL架构概述
本文所建立的MIL测试平台是应用于某电动车两挡AMT变速箱控制器TCU软件模型的测试,其动力总成结构如图1所示。
图1 两挡AMT电动车动力总成结构
TCU软件的主要控制对象为两挡AMT变速器,接收的驾驶员信号包含加速踏板信号AccPedal、刹车踏板信号BrakePedal、换挡旋钮信号DriveMode和钥匙上电信号Ready等,TCU根据驾驶员信号和车速信号决策换挡时机,通过直流电机和换挡位置传感器实现AMT变速器换挡拨叉的位置闭环控制;通过变速箱的车速传感器获取输出轴转的速信号,同时请求MCU进行电机调速实现换挡过程的同步控制。
综上所述,MIL测试平台的架构如图2所示,首先建立整车部件的物理模型、相关控制器模型以产生符合实车物理特性与控制逻辑的信号变化,其次通过信号处理模型建立与TCU底层软件输入、输出类型和范围一致的信号,最后通过建立驾驶员模型和环境模型用来丰富MIL测试的工况,其中物理模型中还需要建立各部件的机械结构故障、传感器故障等失效模式,以充分验证TCU上层软件模型的功能逻辑与故障处理能力。测试案例的建立也需要考虑故障模式的测试,以及利用Stateflow建立自动测试的步骤控制,利用Model Reference和m脚本实现测试案例的自动切换、数据存储与报告自动生成。自动测试案例将会在后面章节进行介绍。
1.2 MIL建模分析
MIL测试的目的在于验证控制软件模型的功能逻辑,可分为单元测试与集成测试,前者大多为开环测试后者为闭环测试[2],本文讨论的MIL测试为集成测试,TCU上层软件功能模块已经全部集成在被测模型中,为了建立闭环测试的环境,需要根据图2的MIL架构建立整车的部件模型、动力学模型和相关控制器模型等,下面选取部分模型进行建模过程的介绍。
图2中,物理模型主要包括整车部件和动力传动系统的建模,纯电动汽车动力源为驱动电机,电机输出扭矩Torq1,经过两挡AMT变速箱传递的半轴再到车轮扭矩Torq2,根据变速箱不同挡位的传动比电机扭矩相应的比例放大,根据轮胎的滚动半径可以将作用在车轮的扭矩转换为整车的驱动力F,根据整车的质量以及滚动阻力、风阻和坡道阻力等可以计算得到整车的加速度,通过积分计算即可得到整车的车速VS;通过车速又可以反推得到车轮转速和变速箱输出轴转速,当变速箱挡位不处于空挡时可以通过传动比计算得到电机转速,当挡位处于空挡时,根据电机输出扭矩和电机的转动惯量可计算出电机当前的转速[3]。此外,根据驱动电机当前的转速、扭矩和效率可计算出动力电池的输出功率,从而得到动力电池电流、电压和SOC等关键参数的变化关系。
图2 两挡AMT电动车动力总成架构
1.2.1 驱动电机模型
驱动电机为永磁同步电机。本文介绍的驱动电机模型只是一个稳态模型,如图3所示。MIL测试中主要关注的是扭矩输出、转速特性等,并没有建立反电动势、相电流等电磁转换的细节;根据电机的外特性曲线建立电机稳态下的转速与扭矩关系模型,在当前转速下查表得到当前的扭矩容量,然后根据 MCU 输入的需求电机负荷百分比和当前电池电压求取当前电机扭矩,根据当前扭矩和转速可以得到电机的实时功率,电机的驱动效率和发电效率已知,得到电池的放电功率或者充电功率。
当变速箱挡位不处于空挡时可以通过车速和对应传动比关系计算得到电机转速,当挡位处于空挡时,根据电机输出扭矩和电机的转动惯量计算出电机当前的转速。
图3 驱动电机模型
1.2.2 AMT变速器模型
该AMT变速器用于纯电动乘用车,两挡AMT执行机构如图4。换挡执行动作由一个直流电机带动丝杆螺母完成,螺母的直线位移控制换挡拨叉进行挡位切换,换挡拨叉连接着一个位置传感器,从而反馈当前的拨叉位置给TCU,以实现拨叉位置进行位置闭环的控制。
图4 两挡AMT执行机构
两挡AMT的换挡过程可以分为以下几个阶段:降扭、摘挡、同步、挂挡、扭矩恢复;降扭阶段TCU会请求MCU清除变速箱内部扭矩,让摘挡能顺利完成;摘挡阶段TCU会驱动直流电机使拨叉运动到N挡位置;同步阶段TCU会根据输出轴转速大小请求MCU转速到达目标挡位所匹配的同步转速;挂挡阶段TCU会驱动直流电机使拨叉往目标挡位运动,当运动到同步区间后会产生同步力以完全消除同步速差。扭矩恢复阶段TCU会请求MCU将驱动电机扭矩恢复到驾驶员请求扭矩。
综上所述AMT变速器模型需要建立直流电机的模型,以及根据换挡臂的杠杆比、丝杆螺母传动比建立拨叉的位移模型和传感器的角度变化模型,该变速器模型的输入信号为TCU模型输入的PWM占空比大小及方向、驱动电机模型的扭矩和电机转速;输出信号为直流电机电流、传感器位置、变速箱输出轴扭矩与转速。
直流电机模型可根据数学模型和电机参数建立,如图5所示,输入为占空比的大小和外部负载的大小,输出为转速、扭矩、电流;转速积分后根据传动比可以得到传感器的角度位移与换挡拨叉的位移,通过扭矩可以计算出同步时的同步力大小,电流需要反馈到TCU模型,TCU软件会对直流电机的电流做实时监控以判断换挡的状态是否正常。
图5 直流电机模型
拨叉的位移区间定义如图6。在接合状态时驱动电机的扭矩才会输出到车轮,同步状态时直流电机模型输出的扭矩会产生同步力矩,具体大小需要根据同步环尺寸建立数学关系的模型,直到同步速差完全消除才允许拨叉往接合方向运动;空挡状态不会产生同步力也不会有驱动电机扭矩输出。
图6 挂挡区间定义
根据挂挡动作的状态建立如图7所示的状态逻辑图,Neutral:空挡,进入该状态的条件是当前拨叉位置位于空挡区间,将同步力、在挡位标志、同步标志置0。ToSync:挂挡,进入该状态的条件是当前拨叉位置位于将要同步的区间;Syncing:同步中,进入该状态的条件是当前拨叉位置位于同步区间,将同步扭矩变量赋值,同步标志置1。GearEngage:接合,进入该状态的条件是拨叉位置位于接合区间。此时同步力矩、同步标志置0,进入挡位标志置1。此时按当前挡位传动比计算扭矩和转速。GearOut:摘挡,进入该状态的条件是挂挡未在接合区间且挂挡力与当前挡方向反向。
图7 挂挡状态逻辑图
在MIL模型中可以加入各种机械结构、电气元件的失效模式,以模拟各种故障工况,从而更全面的验证软件模型的控制逻辑与故障处理能力,其位置传感器失效模型如图8所示,通过标志位触发位置传感器的开路、短路和信号干扰的故障,通过Switch模块将正常信号通道切换为想要触发的故障信号通道即可,这样可以在自动测试案例中设置触发的时间点,方便设计各种测试工况。
图8 位置传感器失效模型
1.3 集成测试
MIL模型全部建立完成后即可进行集成测试模型如图9所示,主要分为驾驶员模型、MIL模型、TCU模型和数据保存几大块,驾驶员模型包含测试案例和手动操作的驾驶信号输入,MIL模型为整车部件、相关控制器模型,TCU软件模型为产品软件的上层逻辑模型;1→2升挡测试1升两挡结果如图10所示。
图9 MIL集成测试模型
图10 MIL测试1升两挡
基于Stateflow建立测试案例如图11。测试案例的输入主要是来源于软件的功能需求分析和故障诊断等软件功能设计,首先应根据软件需求和功能建立MIL的测试大纲,包括模拟驾驶员的正常操作、异常操作、极限工况及故障模拟等。主要的逻辑过程是模拟驾驶员的一个操作时序,用Stateflow模块可以很方便的建立这种时序的逻辑过程。
图11 基于Stateflow建立测试案例
3.1 方法介绍
随着软件功能测试的完善,测试案例会不断积累,数量可达几百个上甚至上千个,如果每个都手动切换来运行,效率会非常低,所以很有必要实现自动化测试,采用MATLAB的脚本文件实现自动调用测试案例运行及结果保存。自动测试建立方法框图如图12。为了实现测试案例的自动切换所有测试案例采用统一的输入输出接口,每个测试案例建立成单独的模型文件,在MIL测试模型中采用Model Variants模块进行模型引用,每个测试案例都连接一个STOP模块,当所有步骤运行完成后将STOP标志置1;m脚本文件建立for循环语句,通过sim()函数使MIL集成测试模型自动运行,当前测试案例运行到STOP步骤后,保存工作空间中数据,并且画图保存到Word文档,然后将Model Variants的Condition参数赋值成下一个测试案例,进入下一个循环,运行到sim()函数使就会自动调用下一个测试案例,这样就实现了测试案例的自动切换。直到所有测试案例运行完成结束For循环,同时,所有测试数据与图片也得到了保存。
图12 自动化测试方法框图
3.2 应用举例
如前所述,建立两挡AMT的MIL自动化测试平台,将每个测试案例按测试大纲建立独立的模型文件,通过Model Variants模块进行引用,用m脚本文件控制整个仿真过程,将所有测试案例按顺序进行切换并自动保存每个测试案例仿真后的数据与曲线。测试案例模型与测试结果如图13所示,左边为建立的测试案例;右边为自动运行后保存的图片。可以将所有关注的图片、数据进行保存以便进行更详细的分析。
图14为升降挡测试案例的运行结果,模拟驾驶员不同加速踏板开度下的加速工况,以及不同刹车踏板开度下的减速工况;通过数据处理可以得到不同踏板开度下的1升两挡的换挡点,以及刹车时的降挡策略;其中曲线Gear1为1挡时的驱动电机同步转速,Gear2为两挡时的电机同步转速,MotSpd_RPM为驱动电机转速,ReqMotSpd_RPM为TCU请求MCU的目标转速,VehSpd_kmph*10为车速曲线,SftPos12_AD为挂挡传感器位置,CurrentGr*1000为当前挡位,SftMot12_PWMDC为换挡电机驱动的占空比数;通过该测试案例可验证TCU的换挡过程逻辑是否正确,以及换挡点的设计是否符合预期的设置。
图15为模拟1挡升两挡过程挂挡卡死的测试数据,该测试案例中触发了挂两挡卡死的故障,当拨叉位置运动到挂两挡位置区间时卡死,不能继续动作;如图15中横坐标14 s左右所示,TCU马上加大了换挡电机的驱动占空比试图以更大的换挡力挂进两挡,但换挡传感器显示的位置未发送变化,随后TCU进入了故障模式,车辆开始滑行;通过该测试案例可以验证TCU处理挂两挡卡死故障的控制逻辑,为前期验证软件故障处理逻辑提供了非常有效的测试手段。
图13 测试案例模型与测试结果
图14 升降挡测试案例运行结果
作者实现了MIL平台的搭建与测试案例的自动化测试;在设计测试案例时通过仿真过程获得数据评判测试结果;在测试案例中设计结果评判逻辑,可最大限度的发挥自动化测试的优势。
[1] MATHWORKS CT.2007-01-0777 best practices for establishing a model-based design culture[J].Sae Paper,2007,44(1):881-884.
[2] 王思哲, 赵小羽, 陈长健.电动汽车整车控制软件测试用例设计方法及应用[J].机电产品开发与创新,2014,27(5):91-93.
[3] 鲁蒋立.车辆动力学模型嵌入式仿真平台开发[D].长春:吉林大学,2014.
(责任编辑唐定国)
ResearchandApplicationofMILAutomatedTestMethodBasedonSimulink
PAN Xiaodong1, GONG Junxing1, LIU Xianghuan1,2
(1.Zhuzhou Gear Co., Ltd., Zhuzhou 412000, China; 2.College of Mechanical and Electrical Engineering,Central South University, Changsha 410083, China)
The approach based on model has become a common software development in automotive area. MIL(Model in Loop) test as a crucial part in V-model for the Software development process, is a sufficient approach for functional verification in early development stage. Based on Matlab/Simulink, and focused on setting-up MIL testing platform and researched on test methods in some software, which is developed on Simulink and applied in some 2-gear AMT vehicle. This article introduced the setup of test platform and test case, and the realization of automatic test. Automatic test can guarantee the repeatability of this test, and has a remarkable increase in the efficiency of the MIL test.
MIL test; software development; test case; automatic test
2017-08-10;
2017-08-30
潘晓东(1967—),男,重庆理工大学客座教授,工程师,主要从事汽车NVH性能研究。
刘祥环(1982—),男,博士研究生,高级工程师,主要从事汽车NVH性能研究,E-mail:0512655@163.com。
机械制造与检测技术
10.11809/scbgxb2017.11.036
本文引用格式:潘晓东,龚俊星,刘祥环.基于Simulink的MIL自动化测试[J].兵器装备工程学报,2017(11):163-168.
formatPAN Xiaodong, GONG Junxing, LIU Xianghuan.Research and Application of MIL Automated Test Method Based on Simulink[J].Journal of Ordnance Equipment Engineering,2017(11):163-168.
TH-39
A
2096-2304(2017)11-0163-06