多类型控制器同步刷写方法
2022-11-23周升辉王春生吴光耀
周升辉,王春生,吴光耀,李 伟
多类型控制器同步刷写方法
周升辉,王春生,吴光耀*,李 伟
(比亚迪汽车工业有限公司 产品规划及汽车新技术研究院,广东 深圳 518118)
新能源车辆有控制器多、程序更新速度快的特点,为了解决整车厂下线车辆的控制器及时更新程序的问题,文章阐述了一种基于C++开发上位机的方法,通过增加上位机通道选择窗口的方法,使用同一上位机打开不同的窗口和选择不同通道的设置,可同步刷写多类型的控制器,而且可实现更换硬件后自动识别再次自动刷写、监控刷写数据、自动复位控制器重新刷写等功能,大大降低了整车厂为下线车辆升级控制器的时间成本和人力成本。
控制器,同步刷写;上位机;新能源汽车;C++
近年来,随着新能源车辆的市场占有率逐步升高,互联网技术和无人驾驶技术的浪潮风起云涌,在一定程度上促进了汽车电子技术的发展[1]。同时,人们对于汽车的各种高端功能、驾驶安全性以及舒适性的要求也越来越高,为了适应这种需求,车辆上的控制器呈现递增的趋势[2]。对于整车厂而言,与配置和功能密切相关的控制器程序的更新也需要提高刷写效率来适应新能源车辆下线井喷式的增长。软件的升级在新能源车辆开发及量产过程当中是不可避免的,通过软件升级可快速满足配置、功能的升级或问题的修复,此方法是最有效最快速的适应方法。
对于整车厂而言,在车辆下线生产环节,升级即将生产安装控制器的软件版本来适配下线车辆成为整车厂工作中的一个重要环节。文章提出了一种基于C++ 刷写上位机开发的方法,通过增加上位机通道选择窗口的方法,使用同一上位机打开不同的窗口和选择不同通道的设置,不但可以同步刷写多套控制器,而且还可实现多类型控制器的同步刷写;同时可实现更换硬件后自动识别,然后再次自动刷写、监控刷写数据、如刷写失败后自动复位控制器重新刷写等功能,大大降低了整车厂为下线车辆升级控制器的时间成本和人力成本。
1 多类型控制器同步刷写开发方法
车辆上的控制器刷写途径多种多样,包括使用INCA刷写、VDCI刷写、VDS刷写等多种途径。但是找到一种操作简单、成本低廉、多类型控制器同步刷写,自动化监测刷写异常,自动化重新刷写,并且能够实现快速刷写的途径,是本文介绍的重点[3-5]。
本上位机是基于C++语言开发的,首先增加通道窗口选择项的设置,打开不同的上位机刷写窗口,通道设置为不同的编号,每个通道编号又对应不同的刷写控制器,在上位机中加载控制器相对应的刷写文件则可以实现对多类型控制器的同步刷写。
控制器局域网(Controller Area Network, CAN)总线是目前汽车上最为常见的通信方式,是一种有效支持分布式控制盒实时控制的串行通信网络。其采用多主工作方式,网络上的每个节点都能参与收发数据,具有突出的可靠性、实时性和灵活性[6-7]。
统一诊断服务(Unified Diagnostic Services, UDS)是国际标准化组织为实现车辆电子系统故障诊断服务制定的统一的国际标准。
BootLoader为引导加载程序,是在系统运行之前执行的一段程序。通过这段程序可以初始化硬件设备,建立内存空间的映射表,从而建立适当的系统软硬件环境,为最终调用操作系统内核做好准备。
如图1所示,在刷写过程中,上位机先读取控制器的可刷写S19文件,放入缓存中,调用刷写设备的USBCANFD设备的驱动接口,实现对S19内容数据的发送[8];同时可以使用驱动接口,实现CAN数据的接收和发送,按照企业标准和行业标准的CAN刷写规范,与控制器中BootLoader程序进行交互,可实现对Flash的擦除和重新刷写[9-11]。
图1 多控制器同步刷写实现原理图
2 上位机实现的功能
(1)驱动接口的调用,实现标准CAN数据的接收和发送;
(2)USBCANFD设备类型的默认设置;默认设置为USBCANFD-200U类型,用户不必再做选择,即插即用;
(3)S19文件的加载;文件版本信息、生成日期、数据区代码区开始地址和结束地址读取等;
(4)USBCANFD设备的自动初始化和打开,在点击读取信息按钮后,上位机自动对设备进行初始化打开,用户不需要再单独设置;如果设备打开失败,失败的提示信息会在对话框内显示;如若成功,则继续进行下一步操作[12];
(5)UDS协议的交互;包括对汽车整车控制器(Vehicle Control Unit, VCU)的安全访问、数据的擦除刷写、数据校验等流程;每一步流程的执行结果都会在信息提示框进行显示;
(6)刷写的百分比进度提示[13];
(7)刷写完成后自动识别新硬件控制器的数据,与刷写数据对比确定是否要重新刷写,如需重新刷写,则无需再次加载程序文件,自动再次刷写,大大提高刷写效率;
(8)每个上位机单独通过控制一个刷写设备,可实现多类型硬件控制器的同步刷写[14];
(9)刷写过程中,自动检测刷写数据,发现本控制器的刷写数据异常或者刷写失败时,自动复位本控制器,从而实现再次继续刷写[15];
(10)上位机支持多个刷写界面同时打开,支持多种控制器的同步刷写,在生产线紧张的工程中,可大大节省人力,提高刷写效率,提高供货速度[16-17]。
3 实现方案
在设备连接方面,如图2所示,所有的控制器都有一个稳压电源进行集中供电。由于连接的控制器较多,在选择稳压电源时,一定要选择功率较大的稳压电源,否则在同步刷写时容易造成电压拉低,导致刷写失败,从而造成刷写效率的降低。各控制器与刷写设备的连接是通过CAN线连接,CAN线一定要选择防干扰功能的双绞线;刷写设备与电脑的连接采用USB线连接。在打开的刷写上位机通道设置窗口中,一定要选择与刷写的控制器相对应的窗口,这样该刷写上位机就可实现对该控制器刷写的单独控制。
图2 多类型控制器同步刷写装置连接示意图
图3为上位机实现多类型控制器同步刷写的具体方案。
图3 多类型控制器同步刷写实现步骤
(1)在PC端安装USB驱动程序;
(2)上位机加载刷写设备的二次开发库;
(3)上位机调用刷写设备的二次开发库的二次开发接口;
(4)通过驱动接口,上位机实现对标准CAN数据的正常接收和发送;
(5)上位机根据行业标准要求,实现对控制器的安全访问、通讯控制、握手服务、数据的擦除和刷写等流程的控制;
(6)S19文件刷写完成之后,上位机按照CRC32_IEEE802.3校验算法对数据进行校验,校验通过即完成刷写流程。
4 实现效益
4.1 各种刷写方法优劣对比
目前传统的控制器刷写方案有INCA刷写以及VDCI刷写,如表1所示,与本方案开发的上位机对比,本方案不但体现出开发简单,开发周期短的特点,而且相比于商业刷写设备,成本大幅度降低;同时本方案的刷写设备便于携带,安装简单,体积小,大大提高了便携性。
4.2 刷写速度对比
如表2所示,用传统刷写工具与多路刷写上位机工具对比,多路刷写上位机对比之前的传统刷写方式速度平均单个VCU刷写速度提升7.14倍左右。
表1 各刷写方案对比
USBCANFD设备方案(本案)INCA刷写方案VDCI刷写方案 开发难度开发简单,开发周期短开发难度一般;开发周期短开发难度简单;开发周期一般 成本低高中 便捷性和刷写效率安装简单,傻瓜式安装;操作简便;多控制器同步刷写总耗时3 min左右安装复杂,且需要授权文件;刷写流程复杂,需要流程培训才能上手,刷写总耗时3 min左右安装复杂度一般,但是设备体积有点大,调试人员在携带时不方便;刷写总耗时4 min左右
表2 各刷写方案对比
传统刷写方式多路上位机的刷写方式 单VCU的时间180 s左右22.5 s左右(8个平均时间) 其他环境准备和切换时间对比每次刷写都需重复点击加载,单个平均耗时20 s左右s19加载:只用第一次加载一次即可,接插件插拔时间:单个平均耗时5 s左右(接插件插入3 s,拔出2 s) 综合平均单个刷写耗时200 s左右28 s左右
4.3 人力资源投入对比
假如以当天的刷写任务在4 000 PCS(最大刷写量)为例,对比计算所需人力如图4所示。
图4 人力资源投入对比
按照每日刷写4 000个控制器计算,传统刷写方案需要222.2 h,多路刷写上位机所需工时为31 h;传统刷写方案所需人力为27.8人,而多路刷写上位机仅需4人。
5 结论
基于C++对USBCANFD设备开发的多路同步刷写上位机,设备稳定,设备价格比较低廉。不但可以同步刷写多路控制器,而且可使通过上位机的配置,实现多类型控制器不同软件的同步刷写。在更换完成硬件后,无需再次添加刷写文件,可自动读取控制器从而实现自动再次刷写。上位机可自动检测刷写数据,当由于某种原因导致刷写失败后,上位机可复位控制器然后自动再次刷写。
对于整车厂而言,多路刷写上位机的开发使用,在新能源满负荷生产的今天,可大大降低支持产线工人的劳动强度。以同步刷写8个控制器为例,提高刷写效率7倍以上,所需人力只是原来的七分之一,而且大大降低了工人的劳动强度,提升了工人工作的舒适度,同时释放了大部分工程师的人力,可以在芯片保供、策略开发等环节中投入更大的精力,极大地缓解了人力资源压力。
[1] 李娇娇,张宏伟,陈金干.基于LabVIEW的新能源汽车控制器刷写软件设计[J].软件工程:2020,23(2):16- 17.
[2] 张宏,李阳春,李洪雷.基于控制器刷写效率的软件开发方法[J].汽车实用技术,2016,26(5):125-126.
[3] 钱亚容,申广俊,武姗,等.多控制器刷写方法、装置、设备及可读存储介质:CN202110988315.1[P].2021- 12-07.
[4] 方维才,刘会凯,沈忱.一种车辆多控制器刷写设备:CN202011594232.6[P].2021-04-23.
[5] 陈强,囤金军,梁满志,等.新能源客车多控制器程序自动批量刷写系统及方法:CN201811339826.5[P]. 2019-03-15.
[6] 陈程杰.基于CAN总线的ECU在线刷新和远程服务系统的开发[D].天津:天津大学,2017.
[7] 冯海明,王波,张健,等.基于CAN总线的车载VCU在线程序升级设计[J].客车技术与研究,2019,41(1):26- 28.
[8] 喻尚,杨艳.基于车联网的控制器远程诊断与刷写[J].汽车实用技术,2016,43(9):183-185.
[9] 吴进军,方继根,王西峰,等.基于CAN总线的新能源汽车 ECU控制器程序刷写系统设计[J].机电产品开发与创新,2018,31(2):1-3,7.
[10] 张海涛.CAN总线在新能源汽车电机控制器程序升级中的应用[J].上海汽车,2018,13(6):38-42.
[11] 张宁.基于LabVIEW的LED光电热测试系统的设计与实现[D].济南:山东大学,2018.
[12] 丁群燕,曾鑫,郑振.基于RCP平台的新能源汽车整车控制器软件开发及应用[J].机电工程技术,2019,48 (5):117-119.
[13] 逯玉兰.基于LabVIEW的电能质量分析与监测系统[J].计算机应用与软件,2019,36(7):55-58.
[14] 王咏宁,李自清.基于LabVIEW的超声波测速系统[J].软件工程,2017,20(6):35-37.
[15] 王琦.基于CAN总线的Bootloader研究与实现[D].南京:南京邮电大学,2016.
[16] 杨胜兵,薛冰,万宏伟,等.基于LabVIEW的车辆ECU在线编程系统设计[J].自动化与仪表,2017,32(5):62-65.
[17] 陈春明.纯电动汽车整车控制器软件系统设计[D].天津:天津大学,2017.
[18] 聂幸福,孟晨兴.基于UDS的BootLoader上位机实现[J].汽车工业研究,2018,31(7):26-29.
Synchronous Flash Multi-type Controller Method
ZHOU Shenghui, WANG Chunsheng, WU Guangyao*, LI Wei
( Product Planning and New Technology Research Institute, BYD Auto Stry Company Limited,Shenzhen 518118, China )
New energy vehicles have the characteristics of many controllers and fast program update speed. In order to solve the problem of timely updating the program of the controller of the off-line vehicle of the vehicle manufacturer, this paper expounded a method of developing host computers based on C++. By the method of increasing channel selection window of the host computer, using the same host computer to open different windows and select different channel settings, multi-type controllers can be flashed synchronously, and the functions of automatic recognition and automatic flashing again, monitoring and flashing data, and automatic reset controller re-flashing can be realized after replacing the hardware, which greatly reduced the time cost and labor cost of the vehicle manufacturer to upgrade the controller for the off-line vehicle.
Controller; Synchronous flash; Host computer;New energy vehicles;C++
U467
A
1671-7988(2022)21-59-05
U467
A
1671-7988(2022)21-59-05
10.16638/j.cnki.1671-7988.2022.021.011
周升辉(1982—),男,硕士,工程师,研究方向为新能源整车控制器软件开发、标定匹配及软件集成测试,E-mail:zhou.shenghui@byd.com。
吴光耀(1984—),男,硕士,工程师,研究方向为新能源整车控制器软件开发、标定匹配及软件集成测试,E-mail:guangyao610@126.com。