本发明涉及电子控制单元升级的数据处理,尤其涉及一种电子控制单元的升级方法及相关装置。
背景技术:
1、汽车厂家针对不同的电子控制单元(electronic control unit,ecu)开发不同版本的升级包,通过升级包版本的迭代不断优化ecu问题。在现有技术中,通常采用在线升级的方法对ecu的驱动程序进行升级,主机厂将最新的ecu的升级包上传云端服务器,诊断设备根据ecu的信息从云端服务器获取该ecu对应的最新的升级包,诊断设备通过该ecu对应的最新的升级包对车辆ecu进行升级。
2、由于现有的在线升级的升级方法需要在联网的环境下进行,因此在离线场景下由于无法从服务器云端获取升级包,导致在离线场景下无法对车辆ecu进行驱动程序的升级。
技术实现思路
1、针对上述问题,本技术实例提供了一种电子控制单元的升级方法及相关装置,采用本技术的方案有利于解决在离线场景下无法对车辆ecu进行驱动程序升级的问题。
2、第一方面,本技术实施例提供了一种电子控制单元的升级方法,应用于诊断仪,该方法包括:获取第一车辆中的第一电子控制单元的第一零件号,第一电子控制单元为需要进行程序升级的电子控制单元;根据第一零件号从第二车辆中获取电子控制单元的升级包;根据升级包对第一电子控制单元的驱动程序进行升级。
3、可以看出,在本技术实施例中,在诊断仪无法从云端服务器获取电子控制单元的升级包时,通过从第二车辆中获取电子控制单元的升级包,再利用该升级包对第一电子控制单元的驱动程序进行升级,解决了在离线场景下无法对车辆ecu进行驱动程序升级的问题。
4、结合第一方面,在一种可能的实施例中,根据第一零件号从第二车辆中获取电子控制单元的升级包,包括:获取第二车辆发送的第二电子控制单元的第二零件号,判断第二零件号与第一零件号是否一致;若第一零件号与第二零件号一致,则获取第二车辆发送的升级包存储地址;根据升级包存储地址从第二车辆中下载电子控制单元的升级包。
5、可以看出,在本技术实施例中,通过判断第一零件号和第二零件号是否一致,能够确定第二车辆中是否存在能够对第一电子控制单元进行驱动程序升级的升级包,在确定第一零件号和第二零件号一致时,表示第二车辆中存在对第一电子控制单元进行程序升级的升级包,从第二车辆获取升级包,再利用该升级包对第一电子控制单元的驱动程序进行升级,解决了在离线场景下无法对车辆ecu进行驱动程序升级的问题。
6、结合第一方面,在一种可能的实施例中,获取第二车辆中的第二电子控制单元的第二零件号,包括:获取第一电子控制单元的类型标识;将第一电子控制单元的类型标识发送至第二车辆,以使第二车辆根据类型标识读取第二电子控制单元的第二零件号;第一电子控制单元的类型标识与第二电子控制单元的类型标识相同;接收第二车辆发送的第二电子控制单元的第二零件号。
7、可以看出,在本技术实施例中,通过第一电子控制单元的类型标识,从第二车辆中获取与第一电子控制单元相同类型的第二电子控制单元的第二零件号,进而在根据第二零件号确定第二车辆中是否存在能够对第一电子控制单元进行驱动程序升级的升级包,在第一零件号和第二零件号一致时,表示第二车辆中存在对第一电子控制单元进行程序升级的升级包,从第二车辆获取升级包,并利用该升级包对第一电子控制单元的驱动程序进行升级,解决了在离线场景下无法对车辆ecu进行驱动程序升级的问题。
8、结合第一方面,在一种可能的实施例中,获取第二车辆发送的第一版本号,第一版本号为第二车辆中的电子控制单元的升级包的版本号;将第一版本号写入第一车辆的第一电子控制单元。
9、可以看出在本技术实施例中,通过第一版本号写入第一车辆的第一电子控制单元,更新第一电子控制单元的版本号,第一车辆能够获知第一电子控制单元在升级后的正确版本号,提高了第一电子控制单元运行的稳定性。
10、结合第一方面,在一种可能的实施例中,若第一零件号和第二零件号不一致,获取第三车辆发送的第三电子控制单元的第三零件号;其中,第三电子控制单元与第一控制单元为相同类型的电子控制单元;若第一零件号与第三零件号一致,则将第三车辆作为新的第二车辆,并执行获取第二车辆发送的升级包存储地址及后续步骤。
11、可以看出,在本技术实施例中,在第一零件号与第二零件号不一致的情况下,确定第二车辆中不存在能够对第一电子控制单元进行程序升级的升级包,此时通过第一零件号和第三零件号确定存在能够对第一电子控制单元进行程序升级的升级包的第三车辆,进而从第三车辆中获取升级包,并利用该升级包对第一电子控制单元的驱动程序进行升级,解决了在离线场景下无法对车辆ecu进行驱动程序升级的问题。
12、结合第一方面,在一种可能的实施例中,若诊断仪与第二车辆无法进行通信,方法还包括:获取多个其他车辆发送的多个第四零件号;其中,第一车辆、第二车辆和多个其他车辆均与目标网络设备连接,第四零件号为其他车辆的与第一电子控制单元的类型相同的电子控制单元的零件号;根据多个第四零件号从多个其他车辆中确定第四车辆;从第四车辆中获取电子控制单元的升级包。
13、可以看出,在诊断仪无法与第二车辆通信时,通过第一零件号从多个其他车辆中确定存在能够对第一电子控制单元进行程序升级的升级包的其他车辆,进而从存在能够对第一电子控制单元进行程序升级的升级包的其他车辆中确定第四车辆,从第四车辆中获取电子控制单元的升级包,并利用该升级包对第一电子控制单元的驱动程序进行升级,解决了在离线场景下无法对车辆ecu进行驱动程序升级的问题。
14、结合第一方面,在一种可能的实施例中,根据多个第四零件号从多个其他车辆中确定第四车辆,包括:将多个其他车辆中第四零件号与第一零件号一致的其他车辆确定为第五车辆;获取第五车辆的信号强度,其中信号强度为其他车辆与目标网络设备的连接的信号强度;将与信号强度最高的第五车辆确定为第四车辆。
15、可以看出,在本技术实施例中,通过将信号强度最高的第五车辆确定为第四车辆,提高了诊断仪从第四车辆中获取电子控制单元的升级包时的稳定性和获取速率。
16、第二方面,本技术实施例提供了一种诊断仪,用于执行电子控制单元的升级方法,该诊断仪包括:
17、获取单元,用于第一车辆中的第一电子控制单元的第一零件号,第一电子控制单元为需要进行程序升级的电子控制单元;
18、下载单元,用于根据第一零件号从第二车辆中获取电子控制单元的升级包;
19、升级单元,用于根据所述升级包对所述第一电子控制单元的驱动程序进行升级。
20、第三方面,本技术实施例提供了一种电子设备,包括处理器、存储器、通信接口,以及一个或多个程序,一个或多个程序被存储在存储器中,并且被配置由处理器执行,一条或多条指令适于由处理器加载并执行如第一方面的方法的部分或者全部。
21、第四方面,本技术实施例提供了一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,计算机程序使得计算机执行如第一方面的方法的部分或者全部。
22、第五方面,本技术提供一种计算机程序产品,当计算机读取并执行该计算机程序产品时,使得计算机执行上述第一方面至第二方面的任一种可能的设计中的方法。
23、能够理解地,第二方面至第五方面所述的实施例的有益效果可参考第一方面至第二方面所述的方法中的有益效果,此处不再赘述。