A vehicle-side OTA parallel flashing control method and system

Through the control method and system of parallel brushing of the car end OTA, the problem of low efficiency of remote update of the car end software has been solved, and efficient software brushing has been achieved, and the vehicle experience is improved.

CN114968302BActive Publication Date: 2025-01-28BEIJING ELECTRIC VEHICLE
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210586176.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-26
Publication Date
2025-01-28
Estimated Expiration
2042-05-26

AI Technical Summary

Technical Problem

The existing technology of the mid-car software has low efficiency in remote updates, and the software is time-consuming to brush and write, which affects the normal use of the vehicle by the car owner and reduces the vehicle experience.

Method used

Provide a car end OTA parallel writing control method and system, to receive the upgrade request of the car end through the OTA platform, generate a list of software waiting to be upgraded, match ECU and obtain basic data. The line upgrade list and send it to the end of the car for upgrade.

Benefits of technology

The efficiency of remote update of the automotive end software has been improved, the software brush time is shortened, the interference of the normally used vehicles of the owner's use of the vehicle has been reduced, and the vehicle experience is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114968302B_ABST
    Figure CN114968302B_ABST
Patent Text Reader

Abstract

The present invention provides a vehicle-side OTA parallel flashing control method and system, which relates to the field of computer technology, wherein the method includes: the OTA platform side sequentially obtains the basic data of each software ECU to be upgraded in the software list to be upgraded; based on the preset parallel conditions, the ECU is classified into two upgrade types, parallel and serial, according to the basic data; according to the basic data of multiple parallel upgraded ECUs, the number of parallel groups is obtained as a preset parallel threshold; the vehicle side performs parallel upgrades and serial upgrades to complete the upgrade of the vehicle-side software according to the upgrade type provided by the OTA platform side and the preset parallel threshold. The technical problems of low efficiency of remote update of vehicle-side software and long time of software flashing in the prior art are solved. The technical effects of high efficiency of remote update of vehicle-side software, short time of software flashing, and reduced interference with the normal use of the vehicle by the owner are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a vehicle-side OTA parallel flashing control method and system. Background Art

[0002] As the level of vehicle intelligence continues to improve and Internet of Vehicles technology matures, vehicle manufacturers are constantly optimizing and adding new vehicle functions in the vehicle-side software to improve the experience of vehicle buyers. Correspondingly, vehicle buyers need to synchronize and optimize the program software through continuous iteration and updating of the vehicle-side software.

[0003] At present, common vehicle-side software update methods include remote flashing of the vehicle through vehicle-side OTA (Over the Air Technology) and vehicle-side software update by the owner at the car sales company (4S store). At present, vehicle-side OTA remote update gradually replaces 4S stores and becomes the mainstream vehicle-side software update method.

[0004] Due to the diversity and complexity of the data of the vehicle-side software carrier ECU (Electronic Control Unit), the existing technology has technical problems such as low efficiency of remote updating of vehicle-side software and long software flashing time, which in turn affects the normal use of the vehicle by the owner and reduces the vehicle usage experience. Summary of the invention

[0005] The present application provides a vehicle-side OTA parallel flashing control method and system, which is used to solve the technical problems in the prior art of low efficiency of remote updating of vehicle-side software and long software flashing time, which in turn affects the normal use of the vehicle by the owner and reduces the vehicle usage experience.

[0006] In view of the above problems, the present application provides a vehicle-side OTA parallel flashing control method and system.

[0007] In a first aspect of the present application, a vehicle-side OTA parallel flashing control method is provided, which is applied to an OTA platform side, and the method includes: when a first upgrade request sent by the vehicle side is received, a first list of software to be upgraded is generated according to the first upgrade request, wherein the first list of software to be upgraded includes multiple software to be upgraded; the ECU of each software to be upgraded in the multiple software to be upgraded is matched in sequence to form multiple ECUs, and the basic data of each ECU in the multiple ECUs is obtained in sequence to form multiple basic data, wherein the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other one by one; based on a preset parallel condition, the multiple basic data are analyzed and judged to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list; a first parallel group number is calculated according to the multiple basic data, and the first parallel group number is used as a preset parallel threshold; the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold are sent to the vehicle side, so that the vehicle side is upgraded according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold.

[0008] The second aspect of the present application provides a vehicle-side OTA parallel flashing control method, which is applied to the vehicle side, and the method includes: sending a first upgrade request to the OTA platform side; receiving a first parallel upgrade list, a first serial upgrade list and a preset parallel threshold obtained by the OTA platform side based on the first upgrade request; and upgrading according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0009] According to a third aspect of the present application, a control device is provided, which is applied to an OTA platform end, and the control device includes: a receiving and generating device, which is used to generate a first list of software to be upgraded according to the first upgrade request when receiving a first upgrade request sent by a vehicle end, wherein the first list of software to be upgraded includes multiple software to be upgraded; a matching and obtaining device, which is used to sequentially match the ECUs of each software to be upgraded in the multiple software to be upgraded to form multiple ECUs, and sequentially obtain basic data of each ECU in the multiple ECUs to form multiple basic data, wherein the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other one by one; a judgment and obtaining device, which is used to analyze and judge the multiple basic data based on a preset parallel condition to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list; a calculation and obtaining device, which is used to calculate and obtain a first parallel group number according to the multiple basic data, and use the first parallel group number as a preset parallel threshold; a sending and executing device, which is used to send the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold to the vehicle end, so that the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold.

[0010] The fourth aspect of the present application provides a control device, which is applied to the vehicle side, and the control device includes: a sending request device, which is used to send a first upgrade request to the OTA platform side; a receiving and obtaining device, which is used to receive the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold obtained by the OTA platform side based on the first upgrade request; an upgrade execution device, which is used to upgrade according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0011] The fifth aspect of the present application provides a vehicle-side OTA parallel flash control system, including: an OTA platform side and a vehicle side, the vehicle side being communicatively connected with the OTA platform side; wherein the OTA platform side includes the control device described in the third aspect, and the vehicle side includes the control device described in the fourth aspect.

[0012] The sixth aspect of the present application provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method described in the first aspect are implemented, or the steps of any one of the methods described in the second aspect are implemented.

[0013] One or more technical solutions provided in this application have at least the following technical effects or advantages:

[0014] The method provided in the present application generates a first list of software to be upgraded by obtaining a first upgrade request initiated by the vehicle end based on the OTA platform, wherein the first list of software to be upgraded includes multiple software to be upgraded; the ECUs of each software to be upgraded in the multiple software to be upgraded are matched in sequence to form multiple ECUs, and the basic data of each ECU in the multiple ECUs are obtained in sequence to form multiple basic data, wherein the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other. It provides a reference information basis for the subsequent classification of ECU upgrade types, and the ECUs are upgraded according to types, thereby shortening the time consumption of the upgrade. Based on the preset parallel conditions, multiple ECUs are classified according to the basic data and included in the first parallel upgrade list and the first serial upgrade list; according to the multiple basic data, the first parallel group number is calculated, and the first parallel group number is used as the preset parallel threshold. It ensures that the subsequent parallel upgrade and serial upgrade of multiple different types of ECUs are carried out in an orderly and efficient manner. The first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold are sent to the vehicle end, and the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold. The technical effects of high efficiency in remote updating of vehicle-side software, short time for software flashing and low interference with the normal use of the vehicle by the owner have been achieved. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] Figure 1 A flowchart of a vehicle-side OTA parallel flashing control method provided in this application;

[0016] Figure 2 A schematic diagram of a process for determining and comparing bus identifiers in a vehicle-side OTA parallel flashing control method provided in this application;

[0017] Figure 3 A schematic diagram of a flow chart for determining a preset parallel threshold in a vehicle-side OTA parallel flashing control method provided in the present application;

[0018] Figure 4 Another flow chart of a vehicle-side OTA parallel flashing control method is provided for this application;

[0019] Figure 5 This is a schematic diagram of the structure of the control device of this application;

[0020] Figure 6 This is a schematic diagram of the structure of an exemplary electronic device of the present application.

[0021] [Description of Reference Numerals]

[0022] Receiving generation device M10, matching acquisition device M20, judging acquisition device M30, calculating acquisition device M40, sending execution device M50, sending request device M100, receiving acquisition device M200, upgrading execution device M300, electronic device 400, processor 401, memory 402, program 403. DETAILED DESCRIPTION

[0023] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below.

[0024] The present application provides a vehicle-side OTA parallel flashing control method and system, which is used to solve the technical problems in the prior art that the remote update of vehicle-side software is inefficient and the software flashing takes a long time, thereby affecting the normal use of the vehicle by the owner and reducing the vehicle usage experience.

[0025] In response to the above technical problems, the overall idea of ​​the technical solution provided by this application is as follows:

[0026] The OTA platform obtains the basic data of each ECU to be upgraded in the list of software to be upgraded in turn; based on the preset parallel conditions, the ECU is classified into two upgrade types: parallel upgrade and serial upgrade according to the basic data; based on the basic data of multiple parallel upgrade ECUs, the number of parallel groups is obtained as the preset parallel threshold; the vehicle side performs parallel upgrades and serial upgrades on the vehicle side software in sequence according to the upgrade type provided by the OTA platform and the preset parallel threshold, thereby quickly completing the upgrade of the vehicle side software. The technical effect of high efficiency of remote update of vehicle side software, short software flashing time, and reduced interference with the normal use of the vehicle by the owner is achieved.

[0027] Various non-limiting embodiments of the present invention will be described in detail below in conjunction with the accompanying drawings.

[0028] Embodiment 1

[0029] like Figure 1 As shown, the present invention provides a vehicle-side OTA parallel flash control method, which is applied to the OTA platform side, including:

[0030] Step S100: when a first upgrade request sent by the vehicle end is received, a first list of software to be upgraded is generated according to the first upgrade request, wherein the first list of software to be upgraded includes a plurality of software to be upgraded;

[0031] Specifically, the OTA is Over-the-Air Technology. The OTA platform is an aerial platform responsible for storing vehicle information, formulating upgrade tasks, issuing upgrade strategies, and other functions in parallel upgrades. The vehicle end is an object that initiates new version software detection requests to the OTA platform from time to time, and receives the upgrade strategy issued by the OTA platform to execute the upgrade flashing process when the OTA platform is configured with an upgrade strategy by the vehicle manufacturer. The first upgrade request is a new version software detection request initiated by the vehicle end to the OTA platform.

[0032] The first list of software to be upgraded is the software upgrade strategy configured by the vehicle manufacturer on the OTA platform. After receiving the first upgrade request initiated by the vehicle, the OTA platform performs task matching to determine whether there is a new version of OTA. If there is a new version of OTA, the first list of software to be upgraded is generated. The first list of software to be upgraded contains the specific software for the vehicle to be upgraded this time, which can be one or more software to be upgraded.

[0033] Step S200: sequentially matching the ECUs of the respective software to be upgraded in the plurality of software to be upgraded to form a plurality of ECUs, and sequentially obtaining the basic data of the respective ECUs in the plurality of ECUs to form a plurality of basic data, wherein the plurality of software to be upgraded, the plurality of ECUs, and the plurality of basic data correspond to each other one by one;

[0034] Specifically, in this embodiment, ECU is an electronic control unit, which is composed of large-scale integrated circuits and is the main control computer of the vehicle, including the main control ECU and the multi-level ECU controlled by the main control ECU, and is the object of data flashing. The parallel flashing is to flash multiple ECUs at the same time, while the serial flashing is to flash only one ECU at the same time.

[0035] The basic data of the ECU include ECU diagnostic ID (DID), ECU bus identifier (Bus), diagnostic ID of the ECU parent node (Father DID), ECU parallel capability (Parallel), ECU upgrade order (Order) and ECU upgrade scenario (UpgradeMode), etc. Based on the basic data of the ECU, it can be determined whether the current multiple ECUs can be upgraded in parallel. The ECU is an object that loads the flash of the software to be upgraded into the vehicle end, and each software to be upgraded corresponds to an ECU. In this embodiment, the ECUs of each software to be upgraded in the multiple software to be upgraded are matched in sequence to form multiple ECUs. The basic data of each ECU in the multiple ECUs is obtained in sequence to form multiple basic data. The multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other one by one and have a mapping relationship.

[0036] This embodiment obtains basic data information of the vehicle-side ECU and the specific ECU that have a one-to-one correspondence with the software to be upgraded, thereby providing a data basis and a reference comparison basis for the subsequent determination of whether parallel upgrade of ECUs can be achieved.

[0037] Step S300: Analyze and judge the plurality of basic data based on a preset parallel condition to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list;

[0038] Specifically, the preset parallel conditions are the specific conditions that need to be met between the three data of ECU bus identification, ECU parent node, and ECU parallel capability of any two ECUs before parallel upgrading can be performed. Exemplarily, if the bus identifications of any two ECUs are consistent, parallel upgrading is not possible; if the bus identifications of any two ECUs are inconsistent and the parent nodes are consistent, the corresponding two ECUs can be upgraded in parallel when the consistent parent nodes have parallel capabilities. If the bus identifications and parent nodes of any two ECUs are inconsistent, and there is no parent-child node relationship between the two ECUs, the two ECUs can be upgraded in parallel.

[0039] The first parallel upgrade list is a set of ECUs that can be upgraded in parallel, and the first serial upgrade list is a set of several ECUs that need to be upgraded serially in sequence to complete the ECU upgrade. Based on the preset parallel condition, the existing multiple ECUs are analyzed and judged to obtain a first judgment result, wherein the first judgment result includes the first parallel upgrade list and the first serial upgrade list.

[0040] Step S400: Calculating and obtaining a first number of parallel groups according to the plurality of basic data, and using the first number of parallel groups as a preset parallel threshold;

[0041] Specifically, the first number of parallel groups is the number of ECUs that can be upgraded in parallel at the same time if constraints such as the upgraded ECU type and the upgrade scenario allow. The preset parallel threshold is the number of ECUs and specific ECUs that are upgraded in parallel at a time. Based on the ECU basic data containing a variety of information, multiple ECUs to be upgraded are traversed and grouped to obtain multiple ECU groups that can be upgraded in parallel. The specific number of parallel upgraded ECU groups is the first number of parallel groups obtained by the calculation. The first number of parallel groups is used as the preset parallel threshold.

[0042] Step S500: sending the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold to the vehicle end, so that the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0043] Specifically, the OTA platform sends the first upgrade list, the first serial upgrade list and the preset parallel threshold for controlling the ECU upgrade order to the vehicle end, and the vehicle end receives the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold sent by the OTA platform end, and remotely updates the vehicle-end software according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0044] The method provided in the present application generates a first list of software to be upgraded by obtaining a first upgrade request initiated by the vehicle end based on the OTA platform, wherein the first list of software to be upgraded includes multiple software to be upgraded; the ECUs of each software to be upgraded in the multiple software to be upgraded are matched in sequence to form multiple ECUs, and the basic data of each ECU in the multiple ECUs are obtained in sequence to form multiple basic data, wherein the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other. It provides a reference information basis for the subsequent classification of ECU upgrade types, and the ECUs are upgraded according to types, thereby shortening the time consumption of the upgrade. Based on the preset parallel conditions, multiple ECUs are classified according to the basic data and included in the first parallel upgrade list and the first serial upgrade list; according to the multiple basic data, the first parallel group number is calculated, and the first parallel group number is used as the preset parallel threshold. It ensures that the subsequent parallel upgrade and serial upgrade of multiple different types of ECUs are carried out in an orderly and efficient manner. The first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold are sent to the vehicle end, and the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold. The technical effects of high efficiency in remote updating of vehicle-side software, short time for software flashing and low interference with the normal use of the vehicle by the owner have been achieved.

[0045] Further, as attached Figure 2 As shown, before obtaining the first judgment result, the method step S300 provided by the present application further includes:

[0046] Step S310: extracting first basic data and second basic data from the plurality of basic data;

[0047] Step S320: reversely matching the ECUs of the first basic data and the second basic data in sequence to obtain a first ECU and a second ECU respectively;

[0048] Step S330: obtaining a first bus identifier, a first parent node, and a first parallel capability of the first basic data, and obtaining a second bus identifier, a second parent node, and a second parallel capability of the second basic data;

[0049] Step S340: determining whether the first bus identifier is consistent with the second bus identifier;

[0050] Step S350: If the first bus identifier is consistent with the second bus identifier, a first adding instruction is obtained, wherein the first adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list.

[0051] Specifically, the first basic data and the second basic data are basic data sets containing multiple basic data of any two ECUs. According to step S300, the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond one to one and have a mapping relationship. Based on the one-to-one correspondence between ECUs and basic data, the ECUs of the first basic data and the second basic data are reversely matched in turn to obtain the specific first ECU and the second ECU respectively.

[0052] It should be understood that the three data of ECU bus identifier, ECU parent node, and ECU parallel capability can be used to determine whether any two ECUs can be upgraded in parallel. The first bus identifier, first parent node, and first parallel capability of the first basic data are obtained, and the second bus identifier, second parent node, and second parallel capability of the second basic data are obtained; it is determined whether the first bus identifier is consistent with the second bus identifier; if the first bus identifier is consistent with the second bus identifier, a first adding instruction is obtained, wherein the first adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list.

[0053] This embodiment is based on the one-to-one correspondence between multiple software to be upgraded, the multiple ECUs, and the multiple basic data. On the basis of obtaining the ECU basic data, reverse matching is performed to determine the specific ECU, and based on the basic data of the ECU bus identifier, it is determined whether two ECUs can be upgraded in parallel. The technical effect of quickly determining whether any two ECUs can be upgraded in parallel, classifying the upgrade types, and improving the efficiency of vehicle-side software upgrade flashing is achieved.

[0054] Furthermore, the step S340 of determining whether the first bus identifier is consistent with the second bus identifier may further include:

[0055] Step S341: if the first bus identifier is inconsistent with the second bus identifier, obtaining a first judgment instruction;

[0056] Step S342: according to the first judgment instruction, performing consistency judgment on the first parent node and the second parent node;

[0057] Step S343: if the first parent node is consistent with the second parent node, obtain a second judgment instruction;

[0058] Step S344: judging the parallel capability of the parent node according to the second judgment instruction;

[0059] Step S345: if the parent node does not have parallel capability, obtain a second adding instruction, wherein the second adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list;

[0060] Step S346: If the parent node has parallel capability, obtain a third adding instruction, wherein the third adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

[0061] Specifically, it should be understood that the three data of ECU bus identification, ECU parent node, and ECU parallel capability can be used to determine whether any two ECUs can be upgraded in parallel. Specifically, the ECU bus identification is one of the important bases for the OTA platform and TBOX to determine whether two ECUs can be upgraded in parallel. The two ECUs having different bus identifications is a prerequisite for parallel upgrades.

[0062] If the system detects that the first bus identifier of the first ECU is inconsistent with the second bus identifier of the second ECU, the system automatically generates the first judgment instruction, and performs consistency judgment on the first parent node and the second parent node according to the first judgment instruction; if the first parent node is consistent with the second parent node, the system automatically generates the second judgment instruction, and judges the parallel capability of the parent node according to the second judgment instruction; if the parent node does not have parallel capability, the system automatically generates the second adding instruction, and adds the first ECU and the second ECU to the first serial upgrade list; if the parent node has parallel capability, the system automatically generates the third adding instruction, and adds the first ECU and the second ECU to the first parallel upgrade list.

[0063] This embodiment is based on the judgment rule that can judge whether any two ECUs can be upgraded in parallel based on the three data of ECU bus identification, ECU parent node, and ECU parallel capability. Specifically, on the basis of determining that the two ECU bus identifications are inconsistent and the parent nodes are consistent, it is determined whether the two ECUs are upgraded in parallel based on whether the two ECU parent nodes have parallel capabilities. By determining whether the two ECUs are upgraded in parallel or not by judging step by step, the technical effect of quickly judging whether any two ECUs can be upgraded in parallel and improving the efficiency of vehicle-side software upgrade and flashing is achieved.

[0064] Furthermore, the consistency judgment of the first parent node and the second parent node, step S342 of the method provided by the present application further includes:

[0065] Step S342-1: if the first parent node is inconsistent with the second parent node, obtain a third judgment instruction;

[0066] Step S342-2: judging the node relationship between the first ECU and the second ECU according to the third judgment instruction;

[0067] Step S342-3: If the first ECU and the second ECU meet the parent-child node relationship, obtain a fourth adding instruction, wherein the fourth adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list;

[0068] Step S342-4: If the first ECU and the second ECU do not conform to the parent-child node relationship, obtain a fifth adding instruction, wherein the fifth adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

[0069] Specifically, it should be understood that the three data of ECU bus identification, ECU parent node, and ECU parallel capability can be used to determine whether any two ECUs can be upgraded in parallel. Specifically, the ECU parent node is the upper-level ECU of the ECU, and the parent node of the master ECU, gateway, and HU is empty by default. For example, the parent node of ICM is HU, the parent node of BDC is GW, and so on. ECU parallel capability is one of the important bases for the OTA platform and TBOX to determine whether two ECUs can be upgraded in parallel. If the two ECUs are on different buses and have the same parent node, the basis for determining whether the two ECUs can be upgraded in parallel is whether the parent node has parallel capability. If the parent node has parallel capability, the two ECUs can be upgraded in parallel.

[0070] If it is detected that the first parent node of the first ECU is inconsistent with the second parent node of the second ECU, the system automatically generates the third judgment instruction, and judges the node relationship between the first ECU and the second ECU according to the third judgment instruction, and the judgment result includes whether the first ECU and the second ECU meet the parent-child node relationship or do not meet the parent-child node relationship. If the judgment result is that the first ECU and the second ECU meet the parent-child node relationship, the system automatically generates the fourth adding instruction to add the first ECU and the second ECU to the first serial upgrade list; if the judgment result is that the first ECU and the second ECU do not meet the parent-child node relationship, the system automatically generates the fifth adding instruction to add the first ECU and the second ECU to the first parallel upgrade list.

[0071] This embodiment is based on the judgment rule that can judge whether any two ECUs can be upgraded in parallel based on the three data of ECU bus identification, ECU parent node, and ECU parallel capability, and specifically judges whether there is a parent-child node relationship between the two ECUs on the basis of determining that the two ECU bus identifications are inconsistent and the parent nodes are inconsistent, and performs parallel upgrades when the judgment result is that the two ECUs are not in a parent-child relationship. Through multi-condition step-by-step judgment, the ECU is divided into a parallel upgrade list and a serial upgrade list according to whether it can be upgraded in parallel as a classification feature, and the ECU is quickly upgraded and classified into parallel upgrades and serial upgrades for upgrades respectively, achieving the technical effect of improving the efficiency of vehicle-side software upgrades and shortening the vehicle-side software upgrade time.

[0072] Further, as attached Figure 3 As shown, the method steps provided by the present application also include:

[0073] Step S610: obtaining a first agreed serial upgrade set, wherein the first agreed serial upgrade set includes a first main control unit ECU, a first display device ECU, and a first gateway ECU;

[0074] Step S620: determining whether the plurality of ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU;

[0075] Step S630: if the multiple ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU, exit the parallel upgrade;

[0076] Step S640: if the multiple ECUs include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, obtain a first elimination instruction;

[0077] Step S650: according to the first elimination instruction, the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU included in the multiple ECUs are eliminated to obtain a first ECU set;

[0078] Step S660: if the plurality of ECUs do not include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, combining the plurality of ECUs to obtain the first ECU set;

[0079] Step S670: Determine the preset parallel threshold according to the first ECU set.

[0080] Specifically, the first agreed serial upgrade set is an ECU type set including the first main control unit ECU, the first display device ECU, and the first gateway ECU. The first main control unit ECU is the main control unit for OTA upgrades on the vehicle side, and the OTA upgrade main control program cannot run normally during the upgrade process; the first display device ECU is the display device in the upgrade process, and human-computer interaction will not be possible during the upgrade process; the first gateway ECU is a data "transfer" ECU, and other ECU upgrade data will not be processed during the upgrade process, resulting in the failure of other ECU upgrades. Therefore, based on the particularity of the first main control unit ECU, the first display device ECU, and the first gateway ECU, the first main control unit ECU, the first display device ECU, and the first gateway ECU do not participate in parallel upgrades. After the upgrade of other ECUs is completed, the first main control unit ECU, the first display device ECU, and the first gateway ECU are upgraded in a serial manner.

[0081] The first ECU set is an ECU set composed of multiple ECUs, excluding the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU.

[0082] Determine whether the multiple ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU; if the multiple ECUs only include any one or two of the first main control unit ECU, the first display device ECU, and the first gateway ECU, and do not include other ECUs, the number of parallel groups is 1, and parallel upgrade is not possible, and the parallel upgrade mode is exited to perform serial upgrade; if it is detected that the multiple ECUs include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, the system automatically generates the first elimination instruction; according to the first elimination instruction, the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU included in the multiple ECUs are eliminated to obtain a first ECU set; if it is detected that the multiple ECUs do not include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, the multiple ECUs are combined to obtain the first ECU set; according to the first ECU set, the preset parallel threshold is determined.

[0083] This embodiment achieves the technical effect of avoiding mixing of default serial ECUs with ECUs to be serial-parallel classified, and avoiding reducing the classification efficiency of ECUs to be serial-parallel classified, by detecting and eliminating ECUs of the ECU type in the first agreed serial upgrade set in the ECU set.

[0084] Furthermore, the method step S670 of determining the preset parallel threshold in the present application further includes:

[0085] Step S671: According to the one-to-one correspondence between the plurality of ECUs and the plurality of basic data, traverse the basic data of each ECU in the first ECU set to form a first basic data set, wherein each basic data in the first basic data set corresponds one-to-one to each ECU in the first ECU set;

[0086] Step S672: According to the one-to-one correspondence between each basic data in the first basic data set and each ECU in the first ECU set, an upgrade scenario of each ECU in the first ECU set is obtained to form a first upgrade scenario set;

[0087] Step S673: determining whether the upgrade scenarios in the first upgrade scenario set are consistent;

[0088] Step S674: if the upgrade scenarios in the first upgrade scenario set are consistent, arranging the ECUs in the first ECU set in ascending order to obtain a first ascending ECU list;

[0089] Step S675: extracting the first ECU in the first ascending ECU list, and adding the first ECU to the first parallel thread set;

[0090] Step S676: extracting the second ECU in the first ascending ECU list, and determining whether the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set;

[0091] Step S677: If the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set, add the second ECU to the first parallel thread set;

[0092] Step S678: Similarly, extract the nth ECU from the first ascending ECU list, and if the nth ECU can be upgraded in parallel with all ECUs in the first parallel thread set, add the nth ECU to the first parallel thread set;

[0093] Step S679: Calculate the number of ECUs in the first parallel thread set, and use the calculation result as the preset parallel threshold.

[0094] Specifically, the upgrade scenario is the state of the vehicle required for the ECU to be upgraded. For most ECUs, they can be upgraded as long as the vehicle is powered on, and the upgrade scenario of such ECUs is the normal scenario. The prerequisite for some ECU upgrades is that the vehicle must meet a special state, for example, such as the high voltage state of the vehicle. During the process of executing the ECU upgrade on the vehicle side, if two ECUs with inconsistent upgrade scenarios are upgraded in parallel, the upgrade will fail. For example, the upgrade scenario of ECU-A is the normal scenario, and the upgrade scenario of ECU-B is high voltage. The parallel upgrade of ECU-A and ECU-B will inevitably lead to the failure of the upgrade condition of a certain ECU to be met, resulting in the failure of the upgrade.

[0095] The preset parallel threshold is the number of ECUs and specific ECUs that are upgraded in parallel at a time. The ascending order is the order of ECUs in the vehicle upgrade, which is determined based on the ECU upgrade order in the ECU basic data. The first parallel thread set is a set of ECUs that are upgraded in parallel in the same batch, and each ECU in the first parallel thread set is upgraded in parallel at the same time.

[0096] In order to improve the upgrade efficiency, this embodiment selects ECU parallel upgrade. Furthermore, in order to reduce the number of parallel upgrades, the number of ECUs in a single parallel upgrade batch is expanded. According to the one-to-one correspondence between the multiple ECUs and the multiple basic data, the basic data of each ECU in the first ECU set is traversed to form a first basic data set, and each basic data in the first basic data set corresponds to each ECU in the first ECU set one by one; according to the one-to-one correspondence between each basic data in the first basic data set and each ECU in the first ECU set, the upgrade scenario of each ECU in the first ECU set is obtained to form a first upgrade scenario set; it is determined whether each upgrade scenario in the first upgrade scenario set is consistent; if each upgrade scenario in the first upgrade scenario set is consistent, each ECU in the first ECU set is arranged in ascending order to obtain a first ascending ECU list; the first ECU in the first ascending ECU list is extracted, and the first ECU is added to the first parallel thread set; the second ECU in the first ascending ECU list is extracted, and it is determined whether the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set; if the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set, the second ECU is added to the first parallel thread set. Similarly, extract the nth ECU from the first ascending ECU list. If the nth ECU can be upgraded in parallel with all ECUs in the first parallel thread set, add the nth ECU to the first parallel thread set. Calculate the number of ECUs in the first parallel thread set, and use the calculation result as the preset parallel threshold.

[0097] This embodiment initially classifies the ECUs in the first ECU set according to the upgrade scenario, arranges multiple ECUs of the same upgrade scenario in ascending order, and determines whether they can be upgraded in parallel with all ECUs in the first parallel thread set one by one in ascending order, and the traversal is completed to obtain the first parallel thread set of multiple ECUs. The number of ECUs that are upgraded in parallel at the same time is expanded, thereby reducing the number of parallel upgrades, and achieving the technical effect of shortening the time consumed by parallel upgrades.

[0098] Embodiment 2

[0099] like Figure 4 As shown, an embodiment of the present invention provides a vehicle-side OTA parallel flash control method, which is applied to the vehicle-side, including:

[0100] Step S1000: Sending a first upgrade request to the OTA platform;

[0101] Specifically, it should be understood that as the functions of the vehicle side are added, the vehicle side software needs to be iteratively updated accordingly. The OTA is Over-the-Air Technology. The OTA platform is an aerial platform responsible for storing vehicle information, formulating upgrade tasks, issuing upgrade strategies and other functions in parallel upgrades. The vehicle side initiates new version software detection requests to the OTA platform from time to time, and when the OTA platform is configured with an upgrade strategy by the vehicle manufacturer, it receives the upgrade strategy issued by the OTA platform to execute the upgrade flashing process. In this embodiment, the first upgrade request is a new version software detection request initiated by the vehicle side to the OTA platform.

[0102] Step S2000: receiving a first parallel upgrade list, a first serial upgrade list, and a preset parallel threshold obtained by the OTA platform based on the first upgrade request;

[0103] Step S3000: performing an upgrade according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold.

[0104] Specifically, in this embodiment, the vehicle side receives the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold obtained by the OTA platform side based on the first upgrade request, and performs the upgrade according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold. Assume that the upgrade order issued by the upgrade strategy is ECU-A, ECU-F, ECU-B, body domain controller, power domain controller, ECU-D, ECU-E, ECU-C, HUD, ICM, HU, GW, T-Box; Assume that the body domain controller supports parallel upgrades, and the power domain controller and GW are connected by CAN bus, so the power domain controller does not support parallel upgrades; According to the agreement, T-Box (master ECU), GW, and HU devices can only be upgraded after the upgrade of other ECUs is completed, and the three can only be upgraded serially; Main thread traversal principle: traverse all ECUs and find the ECUs with the initial state in the upgrade order.

[0105] The specific parallel upgrade process is described as follows:

[0106] Number of parallel groups: The number of parallel groups issued by the OTA platform is 5. TBOX creates 5 threads, namely Thread-1, Thread-2, Thread-3, Thread-4, and Thread-5. The main thread specifies the ECU to be upgraded for Thread-1. The main thread traverses to ECU-A in the upgrade list, and Thread-1 executes the upgrade of ECU-A. The ECUs currently being upgraded are {ECU-A(Thread-1)}. The main thread is the ECU to be upgraded designated by Thread-2. The main thread traverses to ECU-F in the upgrade list. ECU-F and {ECU-A} can be upgraded in parallel. Thread-2 upgrades ECU-F. The ECUs currently being upgraded are {ECU-A(Thread-1), ECU-F(Thread-2)}; the main thread is the ECU to be upgraded designated by Thread-3. The main thread traverses to ECU-B in the upgrade list. ECU-B and {ECU-A, ECU-F} can be upgraded in parallel. Thread-3 executes the upgrade of ECU-B. The ECUs currently being upgraded are {ECU-A(Thread-1), ECU-F(Thread-2), ECU-B(Thread-3)}; the main thread is the ECU to be upgraded designated by Thread-4. The main thread traverses to the body domain controller in the upgrade list. The body domain controller and ECU-A / ECU-B cannot be upgraded in parallel, so the body domain controller is skipped.

[0107] The main thread traverses to the power domain controller in the upgrade list. The power domain controller and {ECU-A, ECU-F, ECU-B} can be upgraded in parallel. Thread-4 upgrades the power domain controller. The ECUs currently being upgraded are {ECU-A (Thread-1), ECU-F (Thread-2), ECU-B (Thread-3), power domain controller (Thread-4)}; the main thread specifies the ECU to be upgraded for Thread-5. The main thread traverses to ECU-D in the upgrade list. ECU-D and the power domain controller cannot be upgraded in parallel, so ECU-D is skipped; the main thread traverses to ECU-E in the upgrade list. ECU-E and the power domain controller cannot be upgraded in parallel, so ECU-E is skipped; the main thread traverses to ECU-C in the upgrade list. ECU-C and the power domain controller cannot be upgraded in parallel, so ECU-C is skipped; the main thread traverses to HUD in the upgrade list. HUD and {ECU-A, ECU-F, ECU-B, power domain controller} can be upgraded in parallel. Thread-5 upgrades HUD. The ECUs currently being upgraded are {ECU-A (Thread-1), ECU-F (Thread-2), ECU-B (Thread-3), power domain controller (Thread-4), HUD (Thread-5)}.

[0108] Assume that the upgrade of ECU-A in Thread-1 is completed, and the ECUs currently being upgraded are {ECU-F (Thread-2), ECU-B (Thread-3), power domain controller (Thread-4), HUD (Thread-5)}, the main thread specifies the next ECU for Thread-1; the main thread traverses to the body domain controller in the upgrade list, the body domain controller and ECU-B cannot be upgraded in parallel, so the body domain controller is skipped; the main thread traverses to ECU-D in the upgrade list, ECU-D and the power domain controller cannot be upgraded in parallel, so ECU-D is skipped; the main thread traverses to ECU-E in the upgrade list , ECU-E and the power domain controller cannot be upgraded in parallel, so ECU-E is skipped; the main thread traverses to ECU-C in the upgrade list, ECU-C and the power domain controller cannot be upgraded in parallel, so ECU-C is skipped; the main thread traverses to ICM in the upgrade list, ICM and {ECU-F, ECU-B, power domain controller, HUD} can be upgraded in parallel, Thread-1 upgrades ICM, and the ECUs currently being upgraded are {ECU-F (Thread-2), ECU-B (Thread-3), power domain controller (Thread-4), HUD (Thread-5), ICM (Thread-1)}.

[0109] Assume that the upgrade of ECU-B in Thread-3 is completed, and the ECUs currently being upgraded are {ECU-F (Thread-2), power domain controller (Thread-4), HUD (Thread-5), ICM (Thread-1)}, the main thread specifies the next ECU for Thread-3: the main thread traverses to the body domain controller in the upgrade list, the body domain controller and {ECU-F, power domain controller, HUD, ICM} can be upgraded in parallel, Thread-3 upgrades the body domain controller, and the ECUs currently being upgraded are {ECU-F (Thread-2), power domain controller (Thread-4), HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3)};

[0110] Assuming that the upgrade of ECU-F in Thread-2 is completed, the ECUs currently being upgraded are {power domain controller (Thread-4), HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3)}, and the main thread specifies the next ECU for Thread-2: the main thread traverses to ECU-D in the upgrade list. ECU-D and the power domain controller cannot be upgraded in parallel, so ECU-D is skipped; the main thread traverses to ECU-E in the upgrade list. ECU-E and the power domain controller cannot be upgraded in parallel, so ECU-E is skipped; the main thread traverses to ECU-C in the upgrade list. ECU-C and the power domain controller cannot be upgraded in parallel, so ECU-C is skipped; the upgrade list traversal ends, no qualified ECU is found, and Thread-2 exits.

[0111] Assuming that the power domain controller upgrade in Thread-4 is completed, the ECUs currently being upgraded are {HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3)}, and the main thread specifies the next ECU for Thread-4: the main thread traverses to ECU-D in the upgrade list, ECU-D and {HUD, ICM, body domain controller} can be upgraded in parallel, Thread-4 executes ECU-D upgrade, and the ECUs currently being upgraded are {HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3), ECU-D (Thread-4)}; Assuming that the ECU-D upgrade in Thread-4 is completed, the ECUs currently being upgraded are {HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3)}, and the main thread is Thr ead-4 specifies the next ECU: the main thread traverses to ECU-E in the upgrade list. ECU-E and {HUD, ICM, body domain controller} can be upgraded in parallel. Thread-4 executes ECU-E upgrade. The ECUs currently being upgraded are {HUD (Thread-5), ICM (Thread-1), body domain controller (Thread-3), ECU-E (Thread-4)}; assuming that the upgrade of the body domain controller in Thread-3 is completed, the ECUs currently being upgraded are {HUD (Thread-5), ICM (Thread-1), ECU-E (Thread-4)}, the main thread specifies the next ECU for Thread-3: the main thread traverses to ECU-C in the upgrade list. ECU-C and the power domain controller cannot be upgraded in parallel, so ECU-C is skipped; the upgrade list traversal is completed, no qualified ECU is found, and Thread-3 exits.

[0112] Assuming that the ICM upgrade in Thread-1 is completed, the ECUs currently being upgraded are {HUD (Thread-5), ECU-E (Thread-4)}, and the main thread specifies the next ECU for Thread-1: the main thread traverses to ECU-C in the upgrade list, ECU-C and ECU-E cannot be upgraded in parallel, so ECU-C is skipped; the upgrade list traversal is completed, no qualified ECU is found, and Thread-1 exits; Assuming that the HUD upgrade in Thread-5 is completed, the ECUs currently being upgraded are {ECU-E (Thread-4)}, and the main thread specifies the next ECU for Thread-5: the main thread traverses to ECU-C in the upgrade list, ECU-C and ECU-E cannot be upgraded in parallel, so ECU-C is skipped; the upgrade list traversal is completed, no qualified ECU is found, and Thread-5 exits.

[0113] Assume that the upgrade of ECU-E in Thread-4 is completed, there is no ECU being upgraded, and only Thread-4 thread is left. The main thread specifies the next ECU for Thread-4: the main thread traverses to ECU-C in the upgrade list, Thread-4 executes the upgrade of ECU-C, and the ECUs currently being upgraded are {ECU-C(Thread-4)}; Assume that Thread-4 completes the upgrade of ECU-C, there is no ECU being upgraded, and only Thread-4 thread is left. The main thread specifies the next ECU for Thread-4: only HU, GW and T-Box are left in the upgrade list, and Thread-4 upgrades HU, GW and T-Box respectively; T-Box upgrade is completed, all ECUs are upgraded, Thread-4 exits, and the upgrade process is completed.

[0114] The method provided in the present application sends a first upgrade request to the OTA platform side through the vehicle side; receives the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold obtained by the OTA platform side based on the first upgrade request; the vehicle side implements the subsequent orderly and efficient parallel upgrade and serial upgrade of multiple different types of ECUs according to the preset parallel threshold. According to the preset parallel threshold, the first parallel upgrade list is upgraded in parallel; when the parallel upgrade is completed, the first serial upgrade instruction is obtained, and the first serial upgrade list is serially upgraded according to the first serial upgrade instruction until the ECU upgrade is completed, and the upgrade of the vehicle software is completed. The technical effect of high efficiency of remote update of vehicle-side software, short time for software flashing, and low interference with the normal use of the vehicle by the owner is achieved.

[0115] Furthermore, the method step S3000 provided in the present application further includes: performing the upgrade according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold.

[0116] Step S3100: obtaining a first suppression instruction, and performing vehicle-side network suppression according to the first suppression instruction;

[0117] Step S3200: after the vehicle-side network is suppressed, the first parallel upgrade list is upgraded in parallel based on the preset parallel threshold;

[0118] Step S3300: when the parallel upgrade is finished, obtaining a first serial upgrade instruction, and performing a serial upgrade on the first serial upgrade list according to the first serial upgrade instruction;

[0119] Step S3400: During the parallel upgrade and the serial upgrade, the vehicle-side ECU state is set to be in the process of upgrading;

[0120] Step S3500: When the serial upgrade is completed, the vehicle-side ECU status is set to upgrade completed.

[0121] Specifically, the first inhibition instruction is a program instruction sent by TBOX through functional addressing before entering the ECU upgrade process, which is used to prohibit the sending and receiving of non-diagnostic messages and turn off the DTC detection and storage of the ECU. The first serial upgrade instruction is a program instruction issued by TBOX to start serial upgrades for ECUs that cannot be upgraded in parallel.

[0122] The vehicle side obtains the first suppression instruction sent by TBOX, and suppresses the vehicle side network according to the first suppression instruction. After the vehicle side network is suppressed, the first parallel upgrade list is upgraded in parallel based on the preset parallel threshold; when the system detects that the parallel upgrade is completed, TBOX automatically issues the first serial upgrade instruction, and the system receives the first serial upgrade instruction and performs a serial upgrade according to the first serial upgrade list; the upgrade process is set to the vehicle side ECU status as being upgraded; when the serial upgrade is completed, the vehicle side ECU status is set to be upgraded completed. After all ECU upgrades are completed, TBOX sends instructions through functional addressing, resumes non-diagnostic message sending and receiving, and turns on DTC detection and storage of ECUs.

[0123] This embodiment suppresses the vehicle-side network based on the suppression instruction after completing the parallel upgrade and serial upgrade classification of the ECU, and then performs a serial upgrade after the parallel upgrade is completed. This achieves the technical effect of quickly completing the upgrade and update of the vehicle-side software by coordinating and connecting multiple upgrade methods.

[0124] Embodiment 3

[0125] like Figure 5 As shown, based on the vehicle-side OTA parallel flashing control method in the aforementioned embodiment 1, and the same inventive concept, the present invention further provides a control device, which is applied to the OTA platform side, including:

[0126] The receiving and generating device M10 is used to generate a first list of software to be upgraded according to the first upgrade request when receiving the first upgrade request sent by the vehicle end, wherein the first list of software to be upgraded includes a plurality of software to be upgraded;

[0127] The matching and obtaining device M20 is used to sequentially match the ECUs of the respective software to be upgraded in the plurality of software to be upgraded to form a plurality of ECUs, and sequentially obtain the basic data of the respective ECUs in the plurality of ECUs to form a plurality of basic data, wherein the plurality of software to be upgraded, the plurality of ECUs, and the plurality of basic data correspond to each other one by one;

[0128] The judgment obtaining device M30 is used to analyze and judge the plurality of basic data based on a preset parallel condition to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list;

[0129] The calculation and obtaining device M40 is used to calculate and obtain the first number of parallel groups according to the plurality of basic data, and use the first number of parallel groups as a preset parallel threshold;

[0130] The sending execution device M50 is used to send the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold to the vehicle end, so that the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0131] Furthermore, the control device also includes:

[0132] A data extraction unit, configured to extract first basic data and second basic data from the plurality of basic data;

[0133] A data matching unit, used for reversely matching the ECUs of the first basic data and the second basic data in sequence to obtain a first ECU and a second ECU respectively;

[0134] A feature extraction unit, configured to obtain a first bus identifier, a first parent node, and a first parallel capability of the first basic data, and obtain a second bus identifier, a second parent node, and a second parallel capability of the second basic data;

[0135] an identification property determination unit, configured to determine whether the first bus identification is consistent with the second bus identification;

[0136] A result consistency execution unit is used to obtain a first adding instruction if the first bus identifier is consistent with the second bus identifier, wherein the first adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list.

[0137] Furthermore, the control device also includes:

[0138] A result inconsistent execution unit, configured to obtain a first judgment instruction if the first bus identifier is inconsistent with the second bus identifier;

[0139] a node property judgment unit, configured to judge the consistency of the first parent node and the second parent node according to the first judgment instruction;

[0140] a consistency result execution unit, configured to obtain a second judgment instruction if the first parent node is consistent with the second parent node;

[0141] A parallel capability judgment unit, configured to judge the parallel capability of the parent node according to the second judgment instruction;

[0142] an upgrade attribute determination unit, configured to obtain a second adding instruction if the parent node does not have parallel capability, wherein the second adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list;

[0143] The upgrade attribute execution unit is used to obtain a third adding instruction if the parent node has parallel capability, wherein the third adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

[0144] Furthermore, the control device also includes:

[0145] an inconsistent result execution unit, configured to obtain a third judgment instruction if the first parent node is inconsistent with the second parent node;

[0146] a node relationship determination unit, configured to determine the node relationship between the first ECU and the second ECU according to the third determination instruction;

[0147] a parent-child node execution unit, configured to obtain a fourth adding instruction if the first ECU and the second ECU meet the parent-child node relationship, wherein the fourth adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list;

[0148] The non-parent-child node execution unit is used to obtain a fifth adding instruction if the first ECU and the second ECU do not conform to the parent-child node relationship, wherein the fifth adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

[0149] Furthermore, the device also includes:

[0150] A serial upgrade obtaining unit, configured to obtain a first agreed serial upgrade set, wherein the first agreed serial upgrade set includes a first main control unit ECU, a first display device ECU, and a first gateway ECU;

[0151] a collection type analysis unit, used to determine whether the multiple ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU;

[0152] an analysis result execution unit, configured to exit parallel upgrade if the multiple ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU;

[0153] a rejection instruction generating unit, configured to obtain a first rejection instruction if the plurality of ECUs include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU;

[0154] a elimination result generating unit, configured to eliminate the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU included in the plurality of ECUs according to the first elimination instruction, so as to obtain a first ECU set;

[0155] a parallel set determining unit, configured to combine the plurality of ECUs to obtain the first ECU set if the plurality of ECUs do not include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU;

[0156] The parallel set conversion unit is used to determine the preset parallel threshold according to the first ECU set.

[0157] Furthermore, the control device also includes:

[0158] a data acquisition unit, configured to traverse the basic data of each ECU in the first ECU set according to a one-to-one correspondence between the plurality of ECUs and the plurality of basic data, to form a first basic data set, wherein each basic data in the first basic data set corresponds one-to-one to each ECU in the first ECU set;

[0159] an upgrade scenario obtaining unit, configured to obtain an upgrade scenario for each ECU in the first ECU set according to a one-to-one correspondence between each basic data in the first basic data set and each ECU in the first ECU set, so as to form a first upgrade scenario set;

[0160] a scenario type determination unit, configured to determine whether the upgrade scenarios in the first upgrade scenario set are consistent;

[0161] an ascending order execution unit, configured to, if all upgrade scenarios in the first upgrade scenario set are consistent, arrange the ECUs in the first ECU set in ascending order to obtain a first ascending order ECU list;

[0162] An information extraction and collection unit, used for extracting the first ECU of the first ascending ECU list, and adding the first ECU to the first parallel thread set;

[0163] a parallel capability comparison unit, configured to extract a second ECU from the first ascending ECU list, and determine whether the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set;

[0164] A parallel expansion comparison unit, configured to add the second ECU to the first parallel thread set if the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set;

[0165] A parallel expansion execution unit is used to extract the nth ECU from the first ascending ECU list by analogy, and if the nth ECU can be upgraded in parallel with all ECUs in the first parallel thread set, add the nth ECU to the first parallel thread set;

[0166] The numerical measurement unit is used to calculate the number of ECUs in the first parallel thread set and use the calculation result as the preset parallel threshold.

[0167] Embodiment 4

[0168] like Figure 4 As shown, one embodiment of the present invention provides a control device, which is applied to a vehicle end, comprising:

[0169] The request sending device M100 is used to send a first upgrade request to the OTA platform end;

[0170] The receiving and obtaining device M200 is used to receive the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold obtained by the OTA platform based on the first upgrade request;

[0171] The upgrade execution device M300 is used to perform the upgrade according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold.

[0172] Furthermore, the control device also includes:

[0173] A suppression instruction obtaining unit, used to obtain a first suppression instruction and perform vehicle-side network suppression according to the first suppression instruction;

[0174] A parallel upgrade execution unit, configured to perform parallel upgrade of the first parallel upgrade list based on the preset parallel threshold after the vehicle-side network is suppressed;

[0175] a serial upgrade execution unit, configured to obtain a first serial upgrade instruction when the parallel upgrade is completed, and perform a serial upgrade on the first serial upgrade list according to the first serial upgrade instruction;

[0176] An upgrade status setting unit, used to set the vehicle-side ECU status to being upgraded during the parallel upgrade and the serial upgrade;

[0177] The upgrade status changing unit is used to set the vehicle-side ECU status to upgrade completed when the serial upgrade is completed.

[0178] Embodiment 5

[0179] like Figure 5 As shown, the present invention also provides a vehicle-side OTA parallel flash control system, including: an OTA platform side and a vehicle side, the vehicle side being communicatively connected with the OTA platform side; wherein the OTA platform side includes the control device in Example 3, and the vehicle side includes the control device in Example 4.

[0180] Embodiment 6

[0181] like Figure 6 As shown, one embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method described in Example 1 are implemented, or the steps of any one of the methods described in Example 2 are implemented.

[0182] The above is a preferred implementation of the embodiment of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles described in the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A vehicle-side OTA parallel flash control method, applied to the OTA platform side, characterized in that: include: When receiving a first upgrade request sent by the vehicle end, generating a first list of software to be upgraded according to the first upgrade request, wherein the first list of software to be upgraded includes a plurality of software to be upgraded; Matching the ECUs of the respective software to be upgraded in the plurality of software to be upgraded in sequence to form a plurality of ECUs, and obtaining the basic data of the respective ECUs in the plurality of ECUs in sequence to form a plurality of basic data, wherein the plurality of software to be upgraded, the plurality of ECUs, and the plurality of basic data correspond to each other one by one; Based on the preset parallel conditions, the plurality of basic data are analyzed and judged to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list; Calculate a first number of parallel groups according to the plurality of basic data, and use the first number of parallel groups as a preset parallel threshold; Sending the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold to the vehicle end, so that the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold; Before obtaining the first judgment result, the method further includes: Extracting first basic data and second basic data from the plurality of basic data; Reversely match the ECUs of the first basic data and the second basic data in sequence to obtain a first ECU and a second ECU respectively; Obtain a first bus identifier, a first parent node, and a first parallel capability of the first basic data, and obtain a second bus identifier, a second parent node, and a second parallel capability of the second basic data; Determining whether the first bus identifier is consistent with the second bus identifier; If the first bus identifier is consistent with the second bus identifier, obtaining a first adding instruction, wherein the first adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list; The determining whether the first bus identifier is consistent with the second bus identifier further includes: If the first bus identifier is inconsistent with the second bus identifier, obtaining a first determination instruction; According to the first judgment instruction, performing consistency judgment on the first parent node and the second parent node; If the first parent node is consistent with the second parent node, obtaining a second judgment instruction; According to the second judgment instruction, the parallel capability of the parent node is judged; If the parent node does not have parallel capability, obtaining a second adding instruction, wherein the second adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list; If the parent node has parallel capability, a third adding instruction is obtained, wherein the third adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

2. The vehicle-side OTA parallel flashing control method according to claim 1, characterized in that: The performing consistency determination on the first parent node and the second parent node further includes: If the first parent node is inconsistent with the second parent node, obtaining a third judgment instruction; According to the third judgment instruction, judging the node relationship between the first ECU and the second ECU; If the first ECU and the second ECU meet the parent-child node relationship, obtain a fourth adding instruction, wherein the fourth adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list; If the first ECU and the second ECU do not conform to the parent-child node relationship, a fifth adding instruction is obtained, wherein the fifth adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

3. The vehicle-side OTA parallel flash control method according to claim 1, characterized in that: include: Obtaining a first agreed serial upgrade set, wherein the first agreed serial upgrade set includes a first main control unit ECU, a first display device ECU, and a first gateway ECU; Determining whether the plurality of ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU; If the multiple ECUs only include the first main control unit ECU, the first display device ECU, and the first gateway ECU, exit the parallel upgrade; If the multiple ECUs include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, obtaining a first elimination instruction; Eliminate the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU included in the multiple ECUs according to the first elimination instruction to obtain a first ECU set; If the multiple ECUs do not include the first main control unit ECU and / or the first display device ECU and / or the first gateway ECU, combining the multiple ECUs to obtain the first ECU set; The preset parallel threshold is determined according to the first ECU set.

4. The vehicle-side OTA parallel flashing control method as claimed in claim 3, characterized in that: The determining the preset parallel threshold comprises: According to the one-to-one correspondence between the plurality of ECUs and the plurality of basic data, traverse the basic data of each ECU in the first ECU set to form a first basic data set, wherein each basic data in the first basic data set corresponds one-to-one to each ECU in the first ECU set; According to the one-to-one correspondence between each basic data in the first basic data set and each ECU in the first ECU set, an upgrade scenario of each ECU in the first ECU set is obtained to form a first upgrade scenario set; Determining whether the upgrade scenarios in the first upgrade scenario set are consistent; If the upgrade scenarios in the first upgrade scenario set are consistent, arranging the ECUs in the first ECU set in ascending order to obtain a first ascending ECU list; Extracting the first ECU in the first ascending ECU list, and adding the first ECU to the first parallel thread set; Extracting the second ECU in the first ascending ECU list, and determining whether the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set; If the second ECU can be upgraded in parallel with all ECUs in the first parallel thread set, adding the second ECU to the first parallel thread set; Similarly, extract the nth ECU in the first ascending ECU list, and if the nth ECU can be upgraded in parallel with all ECUs in the first parallel thread set, add the nth ECU to the first parallel thread set; The number of ECUs in the first parallel thread set is calculated, and the calculation result is used as the preset parallel threshold.

5. A vehicle-side OTA parallel flashing control method, applied to the vehicle-side, characterized in that: include: Sending a first upgrade request to the OTA platform; Receiving a first parallel upgrade list, a first serial upgrade list, and a preset parallel threshold obtained by the OTA platform based on the first upgrade request; Performing an upgrade according to the first parallel upgrade list, the first serial upgrade list, and the preset parallel threshold; The upgrading according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold includes: Obtaining a first suppression instruction, and performing vehicle-side network suppression according to the first suppression instruction; After the vehicle-side network is suppressed, the first parallel upgrade list is upgraded in parallel based on the preset parallel threshold; When the parallel upgrade is finished, obtaining a first serial upgrade instruction, and performing a serial upgrade on the first serial upgrade list according to the first serial upgrade instruction; Wherein, during the parallel upgrade and the serial upgrade, the vehicle-side ECU state is set to be in the process of upgrading; When the serial upgrade is completed, the vehicle-side ECU status is set to upgrade completed.

6. A control device, applied to an OTA platform, characterized in that: include: A receiving and generating device, configured to generate a first list of software to be upgraded according to the first upgrade request when receiving a first upgrade request sent by the vehicle end, wherein the first list of software to be upgraded includes a plurality of software to be upgraded; A matching and obtaining device, used for sequentially matching the ECU of each of the multiple software to be upgraded to form multiple ECUs, and sequentially obtaining basic data of each of the multiple ECUs to form multiple basic data, wherein the multiple software to be upgraded, the multiple ECUs, and the multiple basic data correspond to each other one by one; A judgment obtaining device, configured to analyze and judge the plurality of basic data based on a preset parallel condition to obtain a first judgment result, wherein the first judgment result includes a first parallel upgrade list and a first serial upgrade list; A calculation and obtaining device, used for calculating and obtaining a first number of parallel groups according to the plurality of basic data, and using the first number of parallel groups as a preset parallel threshold; A sending execution device, used for sending the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold to the vehicle end, so that the vehicle end is upgraded according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold; A data extraction unit, configured to extract first basic data and second basic data from the plurality of basic data; A data matching unit, used for reversely matching the ECUs of the first basic data and the second basic data in sequence to obtain a first ECU and a second ECU respectively; A feature extraction unit, configured to obtain a first bus identifier, a first parent node, and a first parallel capability of the first basic data, and obtain a second bus identifier, a second parent node, and a second parallel capability of the second basic data; an identification property determination unit, configured to determine whether the first bus identification is consistent with the second bus identification; A result consistency execution unit, configured to obtain a first adding instruction if the first bus identifier is consistent with the second bus identifier, wherein the first adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list; A result inconsistent execution unit, configured to obtain a first judgment instruction if the first bus identifier is inconsistent with the second bus identifier; a node property judgment unit, configured to judge the consistency of the first parent node and the second parent node according to the first judgment instruction; a consistency result execution unit, configured to obtain a second judgment instruction if the first parent node is consistent with the second parent node; A parallel capability judgment unit, configured to judge the parallel capability of the parent node according to the second judgment instruction; an upgrade attribute determination unit, configured to obtain a second adding instruction if the parent node does not have parallel capability, wherein the second adding instruction is used to add the first ECU and the second ECU to the first serial upgrade list; The upgrade attribute execution unit is used to obtain a third adding instruction if the parent node has parallel capability, wherein the third adding instruction is used to add the first ECU and the second ECU to the first parallel upgrade list.

7. A control device, applied to a vehicle end, characterized in that: include: A request sending device, used for sending a first upgrade request to the OTA platform end; A receiving and obtaining device, configured to receive a first parallel upgrade list, a first serial upgrade list, and a preset parallel threshold value obtained by the OTA platform based on the first upgrade request; An upgrade execution device, configured to perform an upgrade according to the first parallel upgrade list, the first serial upgrade list and the preset parallel threshold; A suppression instruction obtaining unit, used to obtain a first suppression instruction and perform vehicle-side network suppression according to the first suppression instruction; A parallel upgrade execution unit, configured to perform parallel upgrade of the first parallel upgrade list based on the preset parallel threshold after the vehicle-side network is suppressed; a serial upgrade execution unit, configured to obtain a first serial upgrade instruction when the parallel upgrade is completed, and perform a serial upgrade on the first serial upgrade list according to the first serial upgrade instruction; An upgrade status setting unit, used to set the vehicle-side ECU status to being upgraded during the parallel upgrade and the serial upgrade; The upgrade status changing unit is used to set the vehicle-side ECU status to upgrade completed when the serial upgrade is completed.

8. A vehicle-side OTA parallel flash control system, characterized in that: include: An OTA platform end and a vehicle end, wherein the vehicle end is communicatively connected with the OTA platform end; Among them, the OTA platform end includes the control device as described in claim 6, and the vehicle end includes the control device as described in claim 7.

9. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 4 are implemented, or the steps of the method described in claim 5 are implemented.

Citation Information

Patent Citations

  • OTA upgrading and upgrading management method, equipment, network and storage medium

    CN112751699A

  • Vehicle control unit software upgrading method and system

    CN113590164A