Vehicle software upgrading method and device, computer equipment and storage medium

By prioritizing vehicles and classifying software package types, the partition upgrade is achieved, and the problem of low efficiency of vehicle software upgrade in the existing technology is solved, the upgrade efficiency is improved and the risk of failure is reduced.

CN120104157APending Publication Date: 2025-06-06ZHEJIANG GEELY HLDG GRP CO LTD +1
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510132662.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-06
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

The existing vehicle software upgrade method is likely to cause congestion due to the large number of vehicles to be upgraded, and the upgrade efficiency needs to be improved.

Method used

By sorting the vehicle priority and dividing the installation areas in the vehicle according to the type of software package to be upgraded, we can achieve sub-region upgrades. The specific method includes obtaining the priority and upgrade configuration information of the vehicle to be upgraded, obtaining the software package to be upgraded according to the priority order, and configuring the corresponding software upgrade task according to the software package type to instruct the software upgrade module to install the software package to the corresponding target area.

Benefits of technology

By prioritizing high-priority vehicles, ensure that critical vehicles or emergency upgrade needs are prioritized, reduce congestion caused by excessive number of vehicles that need to be upgraded at the same time, reduce high concurrency peaks for servers, thereby improving overall upgrade efficiency. At the same time, the sub-region upgrade reduces the risk of failure of a vehicle system due to the failure of a software update.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120104157A_ABST
    Figure CN120104157A_ABST
Patent Text Reader

Abstract

The invention discloses a vehicle software upgrading method and device, computer equipment and a storage medium. The method comprises the steps that respective priorities and upgrading configuration information of multiple to-be-upgraded vehicles are acquired; according to the priority sequence and the respective upgrading configuration information of the plurality of to-be-upgraded vehicles, respectively obtaining respective to-be-upgraded software packages of the plurality of to-be-upgraded vehicles; downloading the to-be-upgraded software packages of the current to-be-upgraded vehicle to a storage area of the current to-be-upgraded vehicle according to the priority sequence, and configuring software upgrading tasks corresponding to the to-be-upgraded software packages according to the types of the to-be-upgraded software packages of the current to-be-upgraded vehicle. Therefore, the vehicle software upgrading efficiency is effectively improved through priority ranking and software classification and regional upgrading.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of vehicle electronic technology, and in particular to a vehicle software upgrading method, device, computer equipment and storage medium. Background Art

[0002] With the growing demand for intelligent and networked vehicles, vehicle software updates and upgrades have become an important link that cannot be ignored.

[0003] In the related art, the vehicle-side computer usually directly connects to the cloud server via the T-box (Telematics Box, telematics processor) to download the software update package to achieve continuous optimization of vehicle functions and performance improvement. However, the vehicle software upgrade method in the related art is prone to congestion due to the large number of vehicles to be upgraded, and the upgrade efficiency needs to be improved. Summary of the invention

[0004] The present invention aims to solve at least one of the technical problems in the related art to a certain extent. To this end, the present invention proposes a vehicle software upgrade method, device, computer equipment and storage medium, which can realize regional upgrade by sorting vehicle priorities and dividing the installation area in the vehicle according to the type of software package to be upgraded, thereby effectively improving the efficiency of vehicle software upgrade.

[0005] To achieve the above-mentioned purpose, a first aspect of the present invention proposes a vehicle software upgrade method, which is applied to the cloud, and the method includes: obtaining the priority and upgrade configuration information of each of multiple vehicles to be upgraded; according to the priority order and the upgrade configuration information of each of the multiple vehicles to be upgraded, respectively obtaining the software packages to be upgraded of each of the multiple vehicles to be upgraded; downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order, and configuring the software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area in the current vehicle to be upgraded; wherein different types correspond to different target areas.

[0006] According to one embodiment of the present invention, configuring the software upgrade task corresponding to the software package to be upgraded according to the type of each software package to be upgraded of the current vehicle to be upgraded includes: if the software package to be upgraded is of a general upgrade type, configuring the software upgrade task as a first upgrade task; wherein the first upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a first area of ​​the current vehicle to be upgraded; if the software package to be upgraded is of a non-general upgrade type, configuring the software upgrade task as a second upgrade task; wherein the second upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a second area of ​​the current vehicle to be upgraded.

[0007] According to one embodiment of the present invention, obtaining the respective priorities of the multiple vehicles to be upgraded includes: obtaining the respective scheduled upgrade time periods corresponding to the multiple vehicles to be upgraded; and determining the respective priorities of the multiple vehicles to be upgraded based on the end time of the respective scheduled upgrade time periods of the multiple vehicles to be upgraded.

[0008] According to one embodiment of the present invention, the priority of each of the multiple vehicles to be upgraded is determined based on the end time of each of the scheduled upgrade periods of the multiple vehicles to be upgraded, including: calculating the difference between the end time and the start time of the scheduled upgrade period of any vehicle to be upgraded to obtain the first time difference data of the corresponding vehicle to be upgraded; and determining the priority of each of the multiple vehicles to be upgraded based on the comparison result between the first time difference data of each of the multiple vehicles to be upgraded.

[0009] According to an embodiment of the present invention, obtaining respective priorities of a plurality of vehicles to be upgraded includes: obtaining vehicle information corresponding to any vehicle to be upgraded; and determining the priority of the corresponding vehicle to be upgraded based on the vehicle information corresponding to any vehicle to be upgraded.

[0010] According to an embodiment of the present invention, before downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order, the method further includes: storing the software packages to be upgraded of the current vehicle to be upgraded in a software package queue according to the priority order to obtain a software package queue to be downloaded; downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order includes: downloading the software packages to be upgraded in the software package queue to be downloaded to the storage areas of the multiple vehicles to be upgraded respectively according to the priority order.

[0011] According to an embodiment of the present invention, storing the software packages to be upgraded of the current vehicle to be upgraded into the software package queue according to the priority order includes: storing the corresponding software packages to be upgraded into the target queue according to the types of the software packages to be upgraded of the current vehicle to be upgraded; wherein different types correspond to different target queues.

[0012] According to one embodiment of the present invention, non-upgraded software corresponding to the corresponding software package to be upgraded is installed in the target area; the software upgrade task is also used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a location in the target area that is different from the installation location of the non-upgraded software, and instruct the software upgrade module to delete the non-upgraded software when the corresponding software package to be upgraded is successfully installed.

[0013] To achieve the above-mentioned purpose, a second embodiment of the present invention proposes a vehicle software upgrade device, which includes: a vehicle data acquisition module, used to obtain the priority and upgrade configuration information of each of a plurality of vehicles to be upgraded; a software package acquisition module, used to obtain the software packages to be upgraded of each of the plurality of vehicles to be upgraded according to the priority order and the upgrade configuration information of each of the plurality of vehicles to be upgraded; an upgrade task configuration module, used to download the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order, and configure the software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area in the current vehicle to be upgraded; wherein different types correspond to different target areas.

[0014] To achieve the above-mentioned purpose, a third aspect of the present invention proposes a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the vehicle software upgrade method described in any one of the aforementioned embodiments when executing the computer program.

[0015] To achieve the above objectives, a fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the vehicle software upgrade method described in any one of the aforementioned embodiments.

[0016] According to the multiple implementations provided by the present invention, by giving priority to vehicles with high priority, it is ensured that key vehicles or urgent upgrade needs are given priority, reducing congestion caused by too many vehicles that need to be upgraded at the same time, and reducing the peak value of high concurrency of the server, thereby improving the overall upgrade efficiency. According to the type of software package to be upgraded, the corresponding software upgrade task is configured to install the software package to be upgraded into the target area corresponding to the corresponding software package type in the vehicle to be upgraded, so as to achieve regional upgrade, further improve the software upgrade efficiency, and reduce the risk of failure of the entire vehicle system due to the failure of a certain software update.

[0017] Additional aspects and advantages of the present invention will be given in part in the following description and in part will be obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 The present invention is a flowchart of a vehicle software upgrade method provided according to one embodiment of the present specification.

[0019] Figure 2 The present invention is a schematic diagram of a priority acquisition process according to one embodiment of the present invention.

[0020] Figure 3 The present invention is a schematic diagram of a priority acquisition process according to another embodiment of the present specification.

[0021] Figure 4 A schematic diagram of a priority acquisition process according to another embodiment of the present specification.

[0022] Figure 5 The present invention is a structural block diagram of a vehicle software upgrade device provided according to one embodiment of the present specification.

[0023] Figure 6 The present invention is a structural block diagram of a computer device provided according to one embodiment of the present invention. DETAILED DESCRIPTION

[0024] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present invention, and should not be construed as limiting the present invention.

[0025] In the context of the rapid development of the current new energy vehicle industry, new energy companies have an increasing demand for intelligent and networked vehicles, which has prompted vehicle software updates and upgrades to become an important link that cannot be ignored. In related technologies, most new energy companies have adopted a method of connecting the vehicle-side car machine directly to the cloud server via the T-box (Telematics Box, telematics processor) to download software update packages. In this mode, the vehicle can receive the latest software version from the cloud to achieve continuous optimization of vehicle functions and performance improvement.

[0026] However, the upgrade methods in related technologies generally have some limitations. First, all vehicles receive the same upgrade package, which cannot be customized to meet the actual needs of users in specific models, configurations or regions. Although this universal upgrade strategy is easy to manage and implement, it fails to fully consider the differences between different user groups or vehicle configurations.

[0027] Secondly, the upgrade method in the relevant technology often involves downloading the entire software package, even if it is only a small update for some functions or modules. Due to the large size of these data packages, when the network conditions are poor, such as weak signal or network congestion, the download speed will be slow or even interrupted, affecting the success rate of the upgrade. In addition, large-scale data transmission will also put pressure on the vehicle network and affect the normal operation of other online services.

[0028] Furthermore, the upgrade strategy in related technologies is usually automatically performed when the vehicle is in a silent state (such as at night or when it has not been used for a long time), which lacks flexibility. Users cannot choose the most appropriate upgrade time according to their own schedule or network conditions, nor can they monitor or intervene in the upgrade process in real time. In addition, the upgrade operation often covers the entire software package and does not support regional or modular downloads and upgrades, which further prolongs the upgrade cycle and reduces efficiency.

[0029] Finally, in the case of upgrade failure, the processing mechanism in related technologies is relatively cumbersome. Users often need to contact customer service, provide vehicle information, fault description, etc., and wait for the technical support team to perform remote diagnosis or arrange offline repairs. This process is time-consuming and laborious, and can easily cause great inconvenience to users and even safety hazards.

[0030] In order to reduce the adverse effects of the vehicle software upgrade process on the vehicle and the user and improve the efficiency of the vehicle software upgrade, it is necessary to propose a vehicle software upgrade method, device, computer equipment and storage medium. The vehicle software upgrade method provided in this specification determines the software packages to be upgraded required by each of the multiple vehicles to be upgraded according to the types and versions of the software packages to be upgraded, and obtains the software packages to be upgraded of each vehicle to be upgraded in sequence according to the priority order between the vehicles to be upgraded. Then, these software packages to be upgraded are downloaded to the storage area of ​​the corresponding vehicle to be upgraded in sequence according to the priority order. For any software package to be upgraded of the current vehicle to be upgraded, its software upgrade task in the current vehicle to be upgraded can be configured according to its type. Among them, in the current vehicle to be upgraded, different types of software packages to be upgraded each correspond to different target areas, and the software upgrade task corresponding to any software package to be upgraded is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to the target area corresponding to the type in the current vehicle to be upgraded according to the type of the corresponding software package to be upgraded.

[0031] Therefore, by giving priority to vehicles with high priority, key vehicles or urgent upgrade needs are given priority, reducing congestion caused by too many vehicles that need to be upgraded at the same time, and reducing the peak of high concurrency of the server, thereby improving the overall upgrade efficiency. According to the type of software package to be upgraded, the corresponding software upgrade task is configured to install the software package to be upgraded in the target area corresponding to the corresponding software package type in the vehicle to be upgraded, realizing regional upgrades and reducing the risk of failure of the entire vehicle system due to the failure of a certain software update.

[0032] This specification provides a vehicle software upgrade method for use in the cloud. Figure 1 As shown, the vehicle software upgrade method may include the following steps.

[0033] S110: Obtain respective priorities and upgrade configuration information of a plurality of vehicles to be upgraded.

[0034] S120: Obtain the software packages to be upgraded of the multiple vehicles to be upgraded respectively according to the priority order and the upgrade configuration information of the multiple vehicles to be upgraded.

[0035] S130, downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority, and configuring the software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area of ​​the current vehicle to be upgraded; wherein different types correspond to different target areas.

[0036] The upgrade configuration information may include information such as the name, type, and version of the software package to be upgraded, which is used to determine the software package to be upgraded for the vehicle to be upgraded.

[0037] The current vehicle to be upgraded is a vehicle to be upgraded corresponding to the current priority in the priority order, and the current priority is the highest priority among the priorities of the vehicles that have not completed the software upgrade.

[0038] The software package to be upgraded corresponds to the new version software or the target version software.

[0039] A software upgrade task is a series of predefined operations and steps that the system or related modules of the vehicle to be upgraded need to complete when performing a software update or installing a new version of the software.

[0040] The type of the software package to be upgraded may be a software package type that has been marked or classified in advance. After the software package to be upgraded is acquired, the type of the software package to be upgraded may be determined accordingly.

[0041] The software upgrade module is responsible for managing and executing the update process of the vehicle software, and can usually be a software program or hardware circuit integrated in the vehicle control unit (ECU, Electronic Control Unit) or a specific vehicle computer.

[0042] Specifically, the cloud can first collect software upgrade related information of multiple vehicles to be upgraded, including priority and upgrade configuration information, and determine the software packages to be upgraded of the multiple vehicles to be upgraded according to the upgrade configuration information of the multiple vehicles to be upgraded. Then, the cloud can sort the vehicles to be upgraded according to their priorities to obtain the priority order, and obtain the software packages to be upgraded of the vehicles to be upgraded from the software package storage area in order from high to low priority, and determine the type of each software package to be upgraded.

[0043] According to the priority order, the vehicle corresponding to the current highest priority is taken as the current vehicle to be upgraded, and each software package to be upgraded of the current vehicle to be upgraded is downloaded to the storage area of ​​the vehicle, and the software upgrade tasks corresponding to each software package to be upgraded in the current vehicle to be upgraded can be configured accordingly according to the type of each software package to be upgraded of the current vehicle to be upgraded. In the current vehicle to be upgraded, different types of software packages to be upgraded correspond to different target areas. For any software package to be upgraded of the current vehicle to be upgraded, according to the type of the software package to be upgraded, the software upgrade task corresponding to the software package to be upgraded is used to indicate the software upgrade module of the current vehicle to be upgraded, and install the upgrade software package into the target area corresponding to the corresponding type in the vehicle. In this way, different types of software packages to be upgraded of the same vehicle can be installed in different target areas of the vehicle respectively to achieve regional upgrade.

[0044] In some embodiments, the upgrade configuration information of the vehicle can be obtained according to the upload order corresponding to the vehicle. The priority of the corresponding vehicle can be determined according to at least one factor of the scheduled upgrade time corresponding to the vehicle, the vehicle type, the urgency of the vehicle upgrade, etc. The types of software packages to be upgraded can be divided according to the functions corresponding to the software packages to be upgraded, the importance level, whether it is free, whether it can be used for all types of vehicles, etc.

[0045] For example, available upgrade content, such as multimedia player upgrade, navigation upgrade, adaptive cruise upgrade, smart seat upgrade, firewall upgrade, etc., can be pushed to consumers (car owners) in the form of order push through mobile phone APP (Application), car machine push, etc., and consumers can choose whether to upgrade to form a corresponding upgrade order and upload it to the cloud. The cloud can obtain the name, type, version and other information of the software package that needs to be upgraded for the corresponding vehicle based on the uploaded order, thereby obtaining the upgrade configuration information of the vehicle.

[0046] For any vehicle to be upgraded, the priority of the vehicle can be determined based on the vehicle purchase area, vehicle model, vehicle purchase time, whether the vehicle is within the maintenance window, the software upgrade time selected or scheduled by the owner, etc. According to the upgrade configuration information of multiple vehicles, the software packages to be upgraded for each of the multiple vehicles can be determined. According to the priorities of the multiple vehicles from high to low, the software packages to be upgraded for each of the multiple vehicles are downloaded to the storage area of ​​the corresponding vehicle.

[0047] For the current vehicle to be upgraded corresponding to the current priority, each software package to be upgraded of the vehicle is downloaded to the storage area of ​​the vehicle, and the software upgrade tasks corresponding to each software package to be upgraded are configured. Assuming that the types of software packages to be upgraded are divided according to the functions corresponding to the software packages to be upgraded, the types obtained include power system type (for example, engine control software package, transmission control software package, etc.), automatic driving assistance type (for example, adaptive cruise control software package, lane keeping assistance software package, etc.), in-vehicle entertainment type (for example, multimedia system software package, Bluetooth connection software package, etc.), body control system type (for example, lighting control software package, window and door lock control software package, etc.), safety system type (for example, antivirus software package, firewall software package, etc.), etc. In the current vehicle to be upgraded, the above different types each correspond to different target areas.

[0048] For any software package to be upgraded of the current vehicle to be upgraded, if the software package to be upgraded belongs to the power system type, the software upgrade task corresponding to the software package to be upgraded is configured to instruct the current vehicle to be upgraded (the software upgrade module of the current vehicle to be upgraded) to install the software package to be upgraded into the target area corresponding to the power system type. If the software package to be upgraded belongs to the automatic driving assistance type, the software upgrade task corresponding to the software package to be upgraded is configured to instruct the current vehicle to be upgraded to install the software package to be upgraded into the target area corresponding to the automatic driving assistance type. By analogy, different types of software packages to be upgraded can eventually be installed in the corresponding target areas respectively to achieve regional upgrades.

[0049] For example, the types of software packages to be upgraded can also be divided according to the importance levels of the software packages to be upgraded. For example, the software package for updating the safety system has the highest importance level, the software package for updating the automatic driving assistance has the second highest importance level, the software package for updating the multimedia has the third highest importance level, and so on.

[0050] Exemplarily, the types of software packages to be upgraded can also be divided according to whether the software packages to be upgraded are free of charge. For example, software packages to be upgraded for free can be divided into one type, and software packages to be upgraded for a fee can be divided into another type.

[0051] It should be noted that the specific classification method of the types of software packages to be upgraded can be determined according to actual application scenarios and application requirements, and is not specifically limited in this specification.

[0052] In other embodiments, the vehicle upgrade configuration information may also be obtained based on information such as software upgrade preferences provided by the vehicle owner when purchasing the vehicle.

[0053] Further, downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority may include: downloading the corresponding software packages to be upgraded to the target area in the current vehicle to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded.

[0054] It should be noted that the method for determining the priority of the vehicles to be upgraded can be determined according to actual application requirements, etc., and is not specifically limited in this specification.

[0055] In the above implementation, by sorting the vehicle priorities, the software packages to be upgraded of each vehicle to be upgraded are obtained according to the priority order of each vehicle to be upgraded, and the software of the vehicles to be upgraded is upgraded according to the priority order, and the vehicles with high priority are given priority to ensure that key vehicles or emergency upgrade needs are given priority, reduce congestion caused by too many vehicles that need to be upgraded at the same time, and reduce the peak value of high concurrency of the server, thereby improving the overall upgrade efficiency. The software packages to be upgraded are divided into different types, and the corresponding upgrade tasks are configured according to the type of software package, so that the upgrade process is more flexible and can meet the customized requirements of different vehicles and upgrade needs, and can realize regional upgrades, improve software upgrade efficiency, and reduce the risk of failure of the entire vehicle system due to the failure of a certain software update. By orderly managing and allocating upgrade tasks, it is also possible to effectively avoid waste and conflicts of resources and optimize resource utilization on the cloud and vehicle sides.

[0056] In some embodiments, configuring software upgrade tasks corresponding to corresponding software packages to be upgraded according to the types of each software package to be upgraded of the current vehicle to be upgraded may include: if the software package to be upgraded is of a general upgrade type, configuring the software upgrade task as a first upgrade task; wherein the first upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a first area of ​​the current vehicle to be upgraded; if the software package to be upgraded is of a non-general upgrade type, configuring the software upgrade task as a second upgrade task; wherein the second upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a second area of ​​the current vehicle to be upgraded.

[0057] In this embodiment, the type of the software package to be upgraded includes a general upgrade type and a non-general upgrade type. If the software package to be upgraded belongs to the general upgrade type, the corresponding target area is the first area; if the software package to be upgraded belongs to the non-general upgrade type, the corresponding target area is the second area. The first area and the second area of ​​the same vehicle are different.

[0058] Universal upgrades are software packages that are applicable to all or most vehicles, such as security patches, basic system optimization, etc. Non-universal upgrades are personalized or feature updates for certain specific models or users (owners) or selected by users based on their needs, such as smart cockpit upgrades, smart driving upgrades, etc.

[0059] Specifically, for any software package to be upgraded of the current vehicle to be upgraded, if the type of the software package to be upgraded is a general upgrade type, the software upgrade task corresponding to the software package to be upgraded can be configured as a first upgrade task, which is used to indicate the software upgrade module of the current vehicle to be upgraded, and install the software package to be upgraded into the first area of ​​the current vehicle to be upgraded. If the type of the software package to be upgraded is a non-general upgrade type, the software upgrade task corresponding to the software package to be upgraded can be configured as a second upgrade task, which is used to indicate the software upgrade module of the current vehicle to be upgraded, and install the software package to be upgraded into the second area of ​​the current vehicle to be upgraded, so as to achieve regional upgrade.

[0060] For example, special upgrade content (non-general upgrade content), such as smart cockpit upgrade, smart driving upgrade, etc., can be pushed to consumers (car owners) in the form of order push through mobile phone APP (Application), car machine push, etc., and consumers can choose whether to upgrade and pay the corresponding amount to form an order for special upgrade content and upload it to the cloud. Similarly, ordinary upgrade content (general upgrade content) can also be pushed to consumers in the form of order push, and an order for ordinary upgrade content can be formed and uploaded to the cloud. The cloud can obtain the name, type, version and other information of the software package that needs to be upgraded for the corresponding vehicle based on the uploaded order, thereby obtaining the upgrade configuration information of the vehicle.

[0061] For the current vehicle to be upgraded corresponding to the current priority, each software package to be upgraded of the vehicle is downloaded to the storage area of ​​the vehicle, and the software upgrade tasks corresponding to each software package to be upgraded are configured. Among them, each software package to be upgraded corresponds to a general upgrade type or a non-general upgrade type. For any software package to be upgraded of the current vehicle to be upgraded, if the type of the software package to be upgraded is a general upgrade type, the software upgrade task corresponding to the software package to be upgraded is configured as the first upgrade task, so that the current vehicle to be upgraded (the software upgrade module of the current vehicle to be upgraded) installs the software package to be upgraded to the first area; if the type of the software package to be upgraded is a non-general upgrade type, the software upgrade task corresponding to the software package to be upgraded is configured as the second upgrade task, so that the current vehicle to be upgraded installs the software package to be upgraded to the second area.

[0062] It should be noted that for common upgrade content, the name, type, version and other information of the general type software package that all vehicles to be upgraded need to upgrade can also be configured by default in the cloud or backend to form the upgrade configuration information of the vehicle.

[0063] If any software package to be upgraded of the current vehicle to be upgraded belongs to the general upgrade type, the corresponding software package to be upgraded is downloaded to the first area of ​​the current vehicle to be upgraded; if any software package to be upgraded of the current vehicle to be upgraded belongs to the non-general upgrade type, the corresponding software package to be upgraded is downloaded to the second area of ​​the current vehicle to be upgraded. Thus, by implementing regional upgrade of general upgrade type software and non-general upgrade type software through regional download and regional installation, a download and upgrade channel for general upgrade type software and a download and upgrade channel for non-general upgrade type software can be implemented, and parallel download and upgrade can be implemented through two channels, which can further improve the efficiency of vehicle software upgrade.

[0064] Further, in some embodiments, downloading the software package to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority may include: if any software package to be upgraded of the current vehicle to be upgraded belongs to the general upgrade type, downloading the first data packet of the corresponding software package to be upgraded to the first area of ​​the current vehicle to be upgraded, and downloading the second data packet of the corresponding software package to be upgraded to the third area of ​​the current vehicle to be upgraded; if any software package to be upgraded of the current vehicle to be upgraded belongs to the non-general upgrade type, downloading the first data packet to the second area of ​​the current vehicle to be upgraded, and downloading the second data packet to the fourth area of ​​the current vehicle to be upgraded. Thus, in the case where the software package to be upgraded is large, in order to improve the efficiency of software package downloading and reduce network congestion, the data packets obtained by dividing the software package to be upgraded can be downloaded in parallel by region, and assembled after downloading to be installed in the same area to achieve efficient upgrade. It should be noted that if any software package to be upgraded of the current vehicle to be upgraded belongs to the general upgrade type, and the second area of ​​the current vehicle to be upgraded is idle, then the third area may be the second area. Likewise, if any software package to be upgraded of the vehicle to be upgraded currently belongs to a non-universal upgrade type, and the first area of ​​the vehicle to be upgraded currently is idle, then the fourth area may be the first area.

[0065] In this specification, the general upgrade type may also be referred to as the common upgrade type, and the non-general upgrade type may also be referred to as the special upgrade type.

[0066] In the above implementation, the software packages to be upgraded are divided into general upgrade types and non-general upgrade types. The software packages of the general upgrade type are installed in the first area, and the software packages of the non-general upgrade type are installed in the second area. Thus, a general upgrade channel and a non-general upgrade channel are formed through area division, which can effectively improve the software upgrade efficiency.

[0067] In some embodiments, reference Figure 2 As shown, obtaining the respective priorities of multiple vehicles to be upgraded may include the following steps.

[0068] S210: Obtain the scheduled upgrade time periods corresponding to the multiple vehicles to be upgraded.

[0069] S220: Determine the priority of each of the multiple vehicles to be upgraded based on the end time of the scheduled upgrade period of each of the multiple vehicles to be upgraded.

[0070] Among them, for any vehicle to be upgraded, the scheduled upgrade period corresponding to the vehicle can be the expected upgrade time window set or submitted in advance by the vehicle owner according to usage requirements.

[0071] Specifically, the cloud can obtain the scheduled upgrade time periods of the multiple vehicles to be upgraded according to the expected upgrade time periods set or submitted by the respective owners of the multiple vehicles to be upgraded. The priority of the multiple vehicles to be upgraded is sorted according to the end time of the scheduled upgrade time period of each vehicle to be upgraded. The earlier the end time, the higher the urgency of the upgrade of the vehicle, and thus the higher the priority, and so on. This ensures that the vehicles that have reserved an earlier time period can complete the upgrade on time, and will not miss the scheduled time period due to waiting in line.

[0072] For example, it is assumed that the vehicles to be upgraded include vehicle A, vehicle B, and vehicle C, wherein the scheduled upgrade period of vehicle A is from 18:00 to 19:00, the scheduled upgrade period of vehicle B is from 19:30 to 21:30, and the scheduled upgrade period of vehicle C is from 20:00 to 21:00. Therefore, it can be determined that the end time of the scheduled upgrade period of vehicle A is 19:00, the end time of the scheduled upgrade period of vehicle B is 21:30, and the end time of the scheduled upgrade period of vehicle C is 21:00.

[0073] Sorting the above three end times, the end time of the scheduled upgrade period of vehicle A is the earliest, the end time of the scheduled upgrade period of vehicle C is the second, and the end time of the scheduled upgrade period of vehicle B is the latest. Therefore, vehicle A can be given the highest priority, vehicle C can be given the second highest priority, and vehicle B can be given the lowest priority.

[0074] In some embodiments, if the end time of the scheduled upgrade period of any two vehicles to be upgraded is the same, the two vehicles to be upgraded can be given the same priority. The priorities of the two vehicles to be upgraded can also be determined based on the comparison result of the start time of the scheduled upgrade period of the two vehicles to be upgraded, or based on the comparison result of the length of the scheduled upgrade period of the two vehicles to be upgraded.

[0075] In some other embodiments, a preset reference time can be set, and the priorities of the multiple vehicles to be upgraded are determined based on the end time of the respective scheduled upgrade periods of the multiple vehicles to be upgraded, which can include: calculating the difference between the end time of the scheduled upgrade period of any vehicle to be upgraded and the preset reference time to obtain second time difference data corresponding to the corresponding vehicle to be upgraded; and determining the priorities of the multiple vehicles to be upgraded based on the comparison results between the respective second time difference data of the multiple vehicles to be upgraded.

[0076] The preset reference time may be a unified start time set in advance by the cloud or backend management personnel for allowing vehicles to perform software upgrades, and the owners of each vehicle to be upgraded are allowed to reserve a desired upgrade period after the preset reference time. For any vehicle to be upgraded, if the second time difference data between the end time of the scheduled upgrade period of the vehicle to be upgraded and the preset reference time is smaller, it indicates that the vehicle to be upgraded needs to complete the software upgrade sooner, and the upgrade urgency of the vehicle to be upgraded is higher, and thus the priority is higher, and so on.

[0077] It should be noted that the scheduled upgrade period can be selected by the car owner through the car computer or mobile phone APP and sent to the cloud.

[0078] In some embodiments, reference Figure 3 As shown, determining the priority of each of the multiple vehicles to be upgraded based on the end time of the respective scheduled upgrade periods of the multiple vehicles to be upgraded may include the following steps.

[0079] S310: Calculate the difference between the end time and the start time of the scheduled upgrade period of any vehicle to be upgraded to obtain first time difference data of the corresponding vehicle to be upgraded.

[0080] S320: Determine the priority of each of the multiple vehicles to be upgraded according to the comparison result between the respective first time difference data of the multiple vehicles to be upgraded.

[0081] The size of the first time difference data may be used to indicate the size of the upgrade window of the corresponding vehicle to be upgraded. The smaller the first time difference data is, the smaller the upgrade window of the corresponding vehicle to be upgraded is, and generally the higher the priority is.

[0082] Specifically, for any vehicle to be upgraded, the time difference between the start time and the end time of the scheduled upgrade period can be calculated according to its scheduled upgrade period as the first time difference data of the vehicle to be upgraded. Thus, the first time difference data of each of the multiple vehicles to be upgraded can be obtained.

[0083] The first time difference data of multiple vehicles to be upgraded are compared. The smaller the first time difference data, the smaller the upgrade window of the vehicle to be upgraded, and the faster the upgrade needs to be completed, and the higher the priority of the corresponding vehicle to be upgraded. The first time difference data of all vehicles to be upgraded can be sorted, and the vehicle to be upgraded with the smallest first time difference will be given the highest priority, and so on. This ensures that those vehicles to be upgraded with shorter upgrade windows can complete the upgrade on time, and will not miss the scheduled time period due to waiting in line.

[0084] It can be understood that, for any vehicle to be upgraded, the first time difference data corresponding to the vehicle to be upgraded is the length of the scheduled upgrade period of the vehicle to be upgraded.

[0085] For example, assuming that the vehicles to be upgraded include vehicle A, vehicle B, vehicle C and vehicle D, the scheduled upgrade period for vehicle A is from 18:00 to 18:30, the scheduled upgrade period for vehicle B is from 19:00 to 20:15, the scheduled upgrade period for vehicle C is from 20:30 to 21:40, and the scheduled upgrade period for vehicle D is from 21:00 to 22:00.

[0086] Calculate the first time difference data of each vehicle to be upgraded respectively, then the first time difference data of vehicle A is 30 minutes (0.5 hours / 1800000 milliseconds), the first time difference data of vehicle B is 75 minutes (1.25 hours / 4500000 milliseconds), the first time difference data of vehicle C is 70 minutes (1.17 hours / 4200000 milliseconds), and the first time difference data of vehicle D is 60 minutes (1 hour / 3600000 milliseconds).

[0087] By comparing the first time difference data of each vehicle to be upgraded, the first time difference data of vehicle A is the smallest, the first time difference data of vehicle D is the second smallest, the first time difference data of vehicle C is the third smallest, and the first time difference data of vehicle B is the largest. Therefore, vehicle A can be given the highest priority, vehicle D the second highest priority, vehicle C the third highest priority, and vehicle B the lowest priority.

[0088] Further, in some embodiments, obtaining the respective priorities of the multiple vehicles to be upgraded may include: obtaining the respective scheduled upgrade periods corresponding to the multiple vehicles to be upgraded; and determining the respective priorities of the multiple vehicles to be upgraded based on the end time of the respective scheduled upgrade periods of the multiple vehicles to be upgraded.

[0089] Further, determining the respective priorities of the multiple vehicles to be upgraded based on the end time of their respective scheduled upgrade periods may include: if the end time of the scheduled upgrade period of a first vehicle to be upgraded and a second vehicle to be upgraded among the multiple vehicles to be upgraded are different, determining the respective priorities of the first vehicle to be upgraded and the second vehicle to be upgraded based on a comparison result of the end time of their respective scheduled upgrade periods; if the end time of the scheduled upgrade period of the first vehicle to be upgraded is the same as the end time of the scheduled upgrade period of the second vehicle to be upgraded, determining the respective priorities of the first vehicle to be upgraded and the second vehicle to be upgraded based on a comparison result of the length of the scheduled upgrade period of the first vehicle to be upgraded and the length of the scheduled upgrade period of the second vehicle to be upgraded.

[0090] Furthermore, in some other embodiments, if among multiple vehicles to be upgraded, there are at least two vehicles to be upgraded whose scheduled upgrade periods are exactly the same, that is, the end time of the scheduled upgrade period and the length of the scheduled upgrade period of the at least two vehicles to be upgraded are the same, then the priority of these vehicles to be upgraded can also be determined based on factors such as the vehicle type or purpose of the at least two vehicles to be upgraded, the number of successful vehicle upgrades, the vehicle's geographical location, the vehicle purchase time, whether the vehicle is in a maintenance window, etc.

[0091] In some embodiments, reference Figure 4 As shown, obtaining the respective priorities of multiple vehicles to be upgraded may include the following steps.

[0092] S410: Obtain vehicle information corresponding to any vehicle to be upgraded.

[0093] S420: Determine the priority of a corresponding vehicle to be upgraded based on the vehicle information corresponding to any vehicle to be upgraded.

[0094] The vehicle information may include attributes, parameters, etc. related to the vehicle to be upgraded.

[0095] Specifically, for any vehicle to be upgraded, the vehicle information of the vehicle can be obtained, which may include but is not limited to the vehicle model, vehicle status, geographic location, battery power, etc. A comprehensive evaluation is performed based on the vehicle information of the vehicle to be upgraded to determine the priority of the vehicle to be upgraded. Thus, the priority of each vehicle to be upgraded can be determined separately.

[0096] For example, the vehicle information may include at least one of the region where the vehicle is located, the vehicle model, the purchase time, etc. For any vehicle to be upgraded, the priority of the vehicle is determined by obtaining the vehicle information and performing a comprehensive evaluation. Among them, the region where the vehicle is located, the vehicle model, the purchase time, etc., may be given a certain weight respectively, and the priority of the corresponding vehicle to be upgraded may be calculated in a weighted manner.

[0097] Exemplarily, the vehicle information may also include at least one of the vehicle model, vehicle status (whether the vehicle is currently in driving status, charging status, parking status, maintenance status, etc.), and the vehicle's geographical location. The vehicle information may also include at least one of whether the vehicle is in a maintenance window, the number of successful upgrades in the history of the vehicle, etc. The description of determining the priority of the corresponding vehicle to be upgraded based on the vehicle information is similar to the above description, and will not be repeated here.

[0098] It should be noted that the vehicle information of the vehicle to be upgraded may include basic vehicle information stored in the cloud in advance, and may also include vehicle operation data, vehicle status data, etc. uploaded to the cloud through the vehicle's onboard terminal, etc.

[0099] In some embodiments, before downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in the order of priority, the vehicle software upgrade method may further include: storing the software packages to be upgraded of the current vehicle to be upgraded in the order of priority to obtain a software package queue to be downloaded. Accordingly, downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in the order of priority may include: downloading the software packages to be upgraded in the software package queue to the respective storage areas of the plurality of vehicles to be upgraded in the order of priority.

[0100] The software package queue is a first-in-first-out queue.

[0101] The software packages to be downloaded are stored in the queue according to the priority order.

[0102] Specifically, after obtaining the software packages to be upgraded of the respective multiple vehicles to be upgraded, for the current vehicle to be upgraded corresponding to the current priority in the priority order, the software package to be upgraded of the current vehicle to be upgraded is stored in the current tail position of the software package queue. After the software packages to be upgraded of the respective multiple vehicles to be upgraded are stored in the software package queue in sequence according to the priority order, a software package queue to be downloaded can be obtained.

[0103] When downloading software, the software package to be upgraded of the current vehicle to be upgraded is taken out from the current head position of the software package queue to be downloaded according to the priority order, and the software package to be upgraded is stored in the storage area of ​​the corresponding vehicle to be upgraded according to the information of the corresponding vehicle to be upgraded to complete the software download. In this way, the software packages to be upgraded of each vehicle to be upgraded can be taken out in turn according to the priority order and downloaded to the corresponding vehicle to be upgraded respectively.

[0104] In some embodiments, the software package queue may include one queue, that is, the software packages to be upgraded of multiple vehicles to be upgraded are respectively stored in the same software package queue according to the priority order.

[0105] In other embodiments, the software package queue may also include multiple queues.

[0106] Exemplarily, the software package queue includes two queues, and the software packages to be upgraded of the general upgrade type may be stored in one queue according to the priority order, and the software packages to be upgraded of the non-general upgrade type may be stored in another queue.

[0107] For example, the software package queue includes three queues. If the number of software packages to be upgraded of any vehicle to be upgraded is large, the software packages to be upgraded of the vehicle to be upgraded can be stored in the three queues respectively. The software packages to be upgraded of other vehicles to be upgraded are also stored in the three queues respectively in this way. The software packages to be upgraded of different vehicles to be upgraded in any queue are stored in order of priority.

[0108] Exemplarily, the software package queue includes multiple queues. If there are several vehicles to be upgraded with the same priority for a certain priority, the software packages to be upgraded of the several vehicles to be upgraded under the priority can be stored in multiple queues respectively, and the software packages to be upgraded of vehicles to be upgraded under other priorities are also processed in this way. The software packages to be upgraded of different vehicles to be upgraded in any queue are stored in the order of priority.

[0109] It is understandable that the software packages to be upgraded of the current vehicle to be upgraded can be obtained in priority order and stored in the software package queue. For the current vehicle to be upgraded, the download storage path of the software package to be upgraded of the vehicle (including vehicle information and download partition information, etc.) can be stored in the software package queue together with the software package to be upgraded of the vehicle.

[0110] In some implementations, storing the software packages to be upgraded of the current vehicle to be upgraded into the software package queue according to the priority order may include: storing the corresponding software packages to be upgraded into the target queue according to the types of the software packages to be upgraded of the current vehicle to be upgraded; wherein different types correspond to different target queues.

[0111] The target queue is a first-in-first-out queue.

[0112] Specifically, for different types of software packages to be upgraded, target queues corresponding to different types can be constructed respectively. For the current vehicle to be upgraded corresponding to the current priority in the priority order, according to the type of any software package to be upgraded of the vehicle, the software package to be upgraded is stored in the target queue corresponding to the corresponding type.

[0113] Therefore, when downloading the software package, the software packages to be upgraded in each target queue can be downloaded to the corresponding vehicles to be upgraded respectively in order of priority, thereby realizing multiple download channels, improving the software package download efficiency, and thus improving the overall vehicle upgrade efficiency.

[0114] In some embodiments, the types of the software packages to be upgraded include universal upgrade types and non-universal upgrade types. According to the types of the software packages to be upgraded of the current vehicle to be upgraded, storing the corresponding software packages to be upgraded in the target queue may include: if any software package to be upgraded of the current vehicle to be upgraded belongs to the universal upgrade type, storing the corresponding software package to be upgraded to the current tail position of the first queue; if any software package to be upgraded of the current vehicle to be upgraded belongs to the non-universal upgrade type, storing the corresponding software package to be upgraded to the current tail position of the second queue.

[0115] Among them, if any software package to be upgraded of the current vehicle to be upgraded belongs to the general upgrade type, the target queue is the first queue; if any software package to be upgraded of the current vehicle to be upgraded belongs to the non-general upgrade type, the target queue is the second queue. In some achievable methods, both the first queue and the second queue (target queue / software package queue) can be rediszset queues.

[0116] Furthermore, in some embodiments, downloading the software packages to be upgraded in the software package queues to the storage areas of the multiple vehicles to be upgraded in order of priority may include: downloading the software packages to be upgraded in the first queue to the first areas of the corresponding vehicles to be upgraded in order of first priority, and downloading the software packages to be upgraded in the second queue to the second areas of the corresponding vehicles to be upgraded in order of second priority. Thus, a download channel may be formed between the first queue and the first area, and another download channel may be formed between the second queue and the second area.

[0117] It should be noted that the first queue and the second queue (target queue / software package queue) may also adopt other queues, which are not specifically limited in this specification.

[0118] In some embodiments, non-upgraded software corresponding to the corresponding software package to be upgraded is installed in the target area. The software upgrade task is also used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a location in the target area that is different from the installation location of the non-upgraded software, and to instruct the software upgrade module to delete the non-upgraded software when the corresponding software package to be upgraded is successfully installed.

[0119] For any software package to be upgraded of the current vehicle to be upgraded, the non-upgraded software is the original version software before upgrading corresponding to the software package to be upgraded in the target area corresponding to the type of the software package in the current vehicle to be upgraded.

[0120] Specifically, for any software package to be upgraded of the current vehicle to be upgraded, the original version of the non-upgraded software corresponding to the software package is installed in the target area corresponding to the type of the software package to be upgraded in the vehicle. The cloud downloads the software package to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority, and configures the software upgrade task corresponding to the software package to be upgraded. In order to avoid directly overwriting the original non-upgraded software in the target area, the cloud can configure the software upgrade task to instruct the software upgrade module of the current vehicle to be upgraded to select an idle position in the target area that is different from the installation position of the non-upgraded software, and install the software package to be upgraded to the position. At the same time, the software upgrade task is also used to further instruct the software upgrade module of the current vehicle to be upgraded, and when the software package to be upgraded is successfully installed in the target area, the non-upgraded software is deleted, and the vehicle-mounted terminal or main control system can replace the original version of the software with the new version of the software by updating the relevant configuration files.

[0121] Further, the types of the software package to be upgraded include a general upgrade type and a non-general upgrade type. The target area has non-upgraded software corresponding to the corresponding software package to be upgraded installed, which may include: if the software package to be upgraded belongs to the general upgrade type, the first upgrade software corresponding to the corresponding software package to be upgraded is installed in the first area; if the software package to be upgraded belongs to the non-general upgrade type, the second non-upgraded software corresponding to the corresponding software package to be upgraded is installed in the second area.

[0122] If the software package to be upgraded is of a general upgrade type, the software upgrade task includes a first upgrade task; wherein the first upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a location in the first area that is different from the installation location of the first non-upgraded software, and when the corresponding software package to be upgraded is successfully installed, instruct the software upgrade module to delete the first non-upgraded software.

[0123] If the software package to be upgraded is a non-universal upgrade type, the software upgrade task includes a second upgrade task; wherein the second upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded to a location in the second area that is different from the installation location of the second non-upgraded software, and when the corresponding software package to be upgraded is successfully installed, instruct the software upgrade module to delete the second non-upgraded software.

[0124] Specifically, for any software package to be upgraded of the current vehicle to be upgraded, if any software package to be upgraded of the current vehicle to be upgraded belongs to the general upgrade type, then the first non-upgraded software of the original version corresponding to the software package is installed in the first area of ​​the vehicle. The cloud downloads the software package to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority, and configures the first upgrade task of the software package to be upgraded to instruct the software upgrade module of the current vehicle to be upgraded to install the software package to be upgraded to an idle position in the second area that is different from the installation position of the first non-upgraded software. At the same time, the software upgrade module of the current vehicle to be upgraded can also be instructed to delete the first non-upgraded software if the software package to be upgraded is successfully installed in the first area. The description that any software package to be upgraded of the current vehicle to be upgraded belongs to the non-general upgrade type is similar to the above description and will not be repeated in detail.

[0125] Exemplarily, the vehicle software upgrade method provided in this specification can be applied to a vehicle software upgrade system in the cloud. The vehicle software upgrade system divides software upgrades into ordinary upgrades (corresponding to the general upgrade type in this specification) and special upgrades (corresponding to the non-general upgrade type in this specification), among which ordinary upgrades are mainly routine upgrade tasks, usually content that all vehicles need to upgrade. Special upgrades are mainly aimed at order service content, that is, they are mainly pushed to consumers (car owners) through mobile phone APP and car machine push in the form of order push. Consumers choose whether to upgrade and the upgrade content and pay the corresponding amount. After the order is formed, it is uploaded to the cloud, mainly involving special services such as smart cockpit and smart driving. By adopting the order method, car owners can self-screen special upgrade services to achieve personalized optional upgrades.

[0126] Similarly, the vehicle storage part is divided into two parts on the vehicle side according to the common upgrade content and the special upgrade content, which are respectively recorded as area 1 (corresponding to the first area in this specification) and area 2 (corresponding to the second area in this specification). Area 1 is used for common upgrades, and area 2 is used for special upgrades.

[0127] The vehicle software upgrade system can mainly include statistical services, authority services, approval management, software management, upgrade management, order management, etc. Among them, the statistical service is mainly used to count the data of successful and failed upgrades (mainly including the number of vehicles that have successfully upgraded and failed to upgrade, the details of vehicles that have successfully upgraded and failed to upgrade, etc. The upgrade content includes ordinary upgrade content and special upgrade content, and the vehicle details mainly include the time and location of the upgrade, etc.). If the vehicle upgrade fails, it can also display the latest location of the vehicle and prompt the management personnel whether to notify the relevant service station to assist in the upgrade. Through the configuration of options, after the management personnel chooses to click the corresponding assistance option, the system can notify the nearest service station to communicate and handle the matter by sending emails and / or text messages.

[0128] Permission services mainly involve human permissions and vehicle permissions. Human permissions mainly include management permissions, file upload permissions, upgrade operation permissions, result viewing and processing permissions, order upload (upload which special upgrade content orders for consumers to purchase) and order processing (control when purchases can be made, etc.) permissions, etc. Vehicle permissions mainly involve vehicle priority, etc., and vehicle priority can be classified according to region, model, or purchase time, etc.

[0129] Approval management mainly involves relevant authorized personnel configuring relevant configuration upgrade packages (corresponding to the software packages to be upgraded in this manual), and the approval management module performing approval for subsequent gradual upgrades.

[0130] Order management mainly includes processing uploaded orders and checking the final order status.

[0131] Software management mainly includes uploading and downloading related software packages. It should be noted that when uploading software packages, they will be encrypted and saved in a cloud storage bucket, and will be decrypted during the download process to ensure data security.

[0132] Upgrade management mainly includes processing software upgrades, etc.

[0133] In the software management module, for the vehicle side, the owner can choose whether to upgrade on the vehicle side. The upgrade content and messages are mainly pushed through the vehicle computer and mobile phone APP, and the owner can choose the time of the upgrade (corresponding to the scheduled upgrade period in this manual). In the software management module, the number of milliseconds can be obtained by subtracting the start time from the latest time of the upgrade period selected by the owner as the number of time for construction, which is used to measure the priority of the corresponding vehicle. Alternatively, the number of milliseconds can be obtained by subtracting the unified start time (corresponding to the preset reference time in this manual) selected by the approval personnel from the latest time of the upgrade period selected by the owner as the number of time for construction. According to the time number (priority), the relevant upgrade control instructions (including software download instructions and software upgrade instructions, the software download instructions include the software package to be downloaded and the corresponding vehicle information, and the software upgrade instructions correspond to the software upgrade tasks in this manual) are written into the redis zset for the subsequent execution of the upgrade instructions and the execution of the software download instructions, and the earliest upgrade is ranked first. If the owner does not choose the upgrade time, the relevant upgrade control instructions can be written into the redis zset according to the vehicle priority determined in the above-mentioned permission service.

[0134] For software download, it can usually be downloaded half a day in advance. By building two redis zset queues, one is used to store the upgrade control instructions for common upgrades (including the corresponding vehicle information and the corresponding software package to be upgraded), and the other is used to store the upgrade control instructions for special upgrades. When downloading software, take out the corresponding vehicle and the corresponding software package from the two queues and download them to the corresponding partition of the corresponding vehicle. If a software package fails to download, there will be a follow-up download service to download it again after listening.

[0135] After the download is complete, the upgrade command will read the information in the redis zset and call the download-related data information. If the software fails after multiple downloads, it will not be upgraded. Otherwise, it will be upgraded and the upgrade results will be received and written to Kafka. The upgrade results will also be written to the result table for subsequent statistical services and re-downloads.

[0136] When the software is upgraded, the area where the original version of the software is located in the vehicle-side storage area will also be divided into two areas, that is, one area will be divided into two areas, respectively recorded as the application area (corresponding to the installation location of the first non-upgraded software in this manual) and the pre-application area (corresponding to a location different from the installation location of the first non-upgraded software in this manual). The division method of the two areas is the same as above, and the details will not be repeated. Among them, the application area is the area that is normally used at this stage (before the software upgrade is completed), and the pre-application area is the upgrade area (the area where the upgraded version of the software needs to be installed). The status of these two areas can be switched with each other.

[0137] During the software upgrade process, the corresponding data information can be read based on the built redis zset to determine whether the corresponding software package has been downloaded completely, and after the download is complete, the area of ​​the corresponding vehicle that currently needs to be upgraded (the pre-application area in zone 1 or zone 2) is read. The downloaded software package is installed in the corresponding area. If the upgrade is successful, the area is switched to the application area, and the application area where the original version of the software is located is switched to the pre-application area. In this way, even if the flash fails, it will not affect the use of the vehicle. The upgrade results and the current application partition status will be written to Kafka and will also be written to the relevant data table. If the flash fails, the current partition will not be switched. You can choose whether to upgrade again according to the operation of the relevant personnel. If you choose to upgrade again, you can also choose to upgrade immediately or make an appointment for the upgrade. Ordinary upgrades and feature upgrades will be carried out step by step according to the order (priority order) in their respective queues. Both upgrades are successful.

[0138] It should be noted that the pre-application area may be allocated during the upgrade process according to the free area in the area (area one / area two) where the corresponding original version software is located.

[0139] In the above implementation, by installing the software package to be upgraded to a location different from the installation location of the original version of the software, and deleting the original version of the software after confirming that the installation is successful, it is possible to avoid directly overwriting the original software and reduce the risk of system crash or data loss due to upgrade failure. Even if the installation of the new version of the software fails, the original version of the software can still run normally to ensure the normal use of the vehicle and improve the stability and reliability of the vehicle system. At the same time, if there is a problem with the upgraded version of the software, the system can quickly roll back to the original version of the software without the need for complex recovery operations, which can greatly simplify the troubleshooting process and reduce user waiting time and the workload of technical support. Completing the upgrade without affecting the user's normal use of the vehicle can reduce the inconvenience caused by interruptions during the upgrade process or other problems.

[0140] This specification provides a vehicle software upgrade device for use in the cloud. Figure 5 As shown, the vehicle software upgrade device 500 may include: a vehicle data acquisition module 510 , a software package acquisition module 520 , and an upgrade task configuration module 530 .

[0141] The vehicle data acquisition module 510 is used to obtain the priority and upgrade configuration information of each of the multiple vehicles to be upgraded.

[0142] The software package acquisition module 520 is used to respectively acquire the software packages to be upgraded of the multiple vehicles to be upgraded according to the priority order and the upgrade configuration information of the multiple vehicles to be upgraded.

[0143] The upgrade task configuration module 530 is used to download the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded in order of priority, and configure the software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area in the current vehicle to be upgraded; wherein different types correspond to different target areas.

[0144] The specific definition of the vehicle software upgrade device can be found in the definition of the vehicle software upgrade method above, which will not be repeated here. Each module in the above-mentioned vehicle software upgrade device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0145] The present specification also provides a computer device, referring to Figure 6 As shown, the computer device 600 may include a memory 610, a processor 620, and a computer program 630 stored in the memory 610 and executable on the processor 620. When the processor 620 executes the computer program 630, the vehicle software upgrade method in any of the aforementioned embodiments is implemented.

[0146] The embodiments of the present specification also provide a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the vehicle software upgrade method in any of the aforementioned embodiments is implemented.

[0147] It should be noted that the logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be specifically implemented in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection portion with one or more wirings (electronic device), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.

[0148] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, a plurality of steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0149] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.

[0150] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In the description of the present invention, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0151] In the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", "connected", "fixed" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements, unless otherwise clearly defined. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0152] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present invention.

Claims

1. A vehicle software upgrade method, characterized in that: Applied to the cloud, the method includes: Obtain the priority and upgrade configuration information of multiple vehicles to be upgraded; According to the priority order and the upgrade configuration information of each of the plurality of vehicles to be upgraded, respectively obtain the software packages to be upgraded of each of the plurality of vehicles to be upgraded; The software packages to be upgraded of the current vehicle to be upgraded are downloaded to the storage area of ​​the current vehicle to be upgraded according to the priority order, and the software upgrade tasks corresponding to the software packages to be upgraded are configured according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area of ​​the current vehicle to be upgraded; wherein different types correspond to different target areas.

2. The method according to claim 1, characterized in that The configuring of software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded includes: If the software package to be upgraded belongs to a general upgrade type, configuring the software upgrade task as a first upgrade task; wherein the first upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded into the first area of ​​the current vehicle to be upgraded; If the software package to be upgraded is of a non-universal upgrade type, the software upgrade task is configured as a second upgrade task; wherein the second upgrade task is used to instruct the software upgrade module of the current vehicle to be upgraded to install the corresponding software package to be upgraded into the second area of ​​the current vehicle to be upgraded.

3. The method according to claim 1, characterized in that The obtaining of respective priorities of a plurality of vehicles to be upgraded comprises: Obtaining the scheduled upgrade time periods corresponding to the multiple vehicles to be upgraded; The priority of each of the plurality of vehicles to be upgraded is determined based on the end time of the scheduled upgrade period of each of the plurality of vehicles to be upgraded.

4. The method according to claim 3, characterized in that The determining the priority of each of the plurality of vehicles to be upgraded based on the end time of the respective scheduled upgrade periods of the plurality of vehicles to be upgraded comprises: Calculate the difference between the end time and the start time of the scheduled upgrade period of any vehicle to be upgraded to obtain the first time difference data of the corresponding vehicle to be upgraded; The priority of each of the plurality of vehicles to be upgraded is determined according to the comparison result between the respective first time difference data of the plurality of vehicles to be upgraded.

5. The method according to claim 1, characterized in that The obtaining of respective priorities of a plurality of vehicles to be upgraded comprises: Get the vehicle information corresponding to any vehicle to be upgraded; Based on the vehicle information corresponding to any one of the vehicles to be upgraded, the priority of the corresponding vehicle to be upgraded is determined.

6. The method according to claim 1, characterized in that Before downloading the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order, the method further includes: storing the software packages to be upgraded of the current vehicle to be upgraded into a software package queue according to the priority order, to obtain a software package queue to be downloaded; The downloading of the software package to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order includes: The software packages to be upgraded in the software package to be downloaded queue are downloaded to the respective storage areas of the plurality of vehicles to be upgraded according to the priority order.

7. The method according to claim 6, characterized in that The step of storing the software packages to be upgraded of the current vehicle to be upgraded into the software package queue according to the priority order includes: According to the types of the software packages to be upgraded of the current vehicle to be upgraded, the corresponding software packages to be upgraded are stored in the target queue; wherein different types correspond to different target queues.

8. The method according to any one of claims 1 to 7, characterized in that: The target area has non-upgraded software corresponding to the corresponding software package to be upgraded installed; The software upgrade task is also used to instruct the software upgrade module of the vehicle to be upgraded to install the corresponding software package to be upgraded to a location in the target area that is different from the installation location of the non-upgraded software, and to instruct the software upgrade module to delete the non-upgraded software when the corresponding software package to be upgraded is successfully installed.

9. A vehicle software upgrade device, characterized in that: Applied to the cloud, the device comprises: A vehicle data acquisition module is used to obtain the priority and upgrade configuration information of each of a plurality of vehicles to be upgraded; A software package acquisition module, used for respectively acquiring the software packages to be upgraded of the plurality of vehicles to be upgraded according to the priority order and the upgrade configuration information of the plurality of vehicles to be upgraded; An upgrade task configuration module is used to download the software packages to be upgraded of the current vehicle to be upgraded to the storage area of ​​the current vehicle to be upgraded according to the priority order, and configure the software upgrade tasks corresponding to the software packages to be upgraded according to the types of the software packages to be upgraded of the current vehicle to be upgraded, so as to instruct the software upgrade module of the current vehicle to be upgraded to install the software packages to be upgraded to the target area in the current vehicle to be upgraded; wherein different types correspond to different target areas.

10. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.

Citation Information

Cited By

  • OTA grading upgrading method and system based on network resource optimization and medium

    CN120498998A

  • Air conditioning equipment and firmware upgrading method thereof

    CN121655086A